@echo "openbsd-x86-32"
@echo "openbsd-x86-64"
@echo "macosx-x86-32"
+ @echo "macosx-x86-64"
@echo "macosx-ppc"
@echo "solaris-x86-32"
@echo "solaris-x86-64"
@echo "windows-ce-arm"
@echo "windows-nt-x86-32"
- @echo "windows-nt-x86-64"
@echo ""
@echo "Additional modifiers:"
@echo ""
macosx-x86-32: macosx-freetype
$(MAKE) $(EXECUTABLE) macosx.app CONFIG=vm/Config.macosx.x86.32
+macosx-x86-64: macosx-freetype
+ $(MAKE) $(EXECUTABLE) macosx.app CONFIG=vm/Config.macosx.x86.64
+
linux-x86-32:
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.linux.x86.32
windows-nt-x86-32:
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.32
-windows-nt-x86-64:
- $(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.64
-
windows-ce-arm:
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.ce.arm
rm -f vm/*.o
vm/resources.o:
- $(WINDRES) vm/factor.rs vm/resources.o
+ windres vm/factor.rs vm/resources.o
.c.o:
$(CC) -c $(CFLAGS) -o $@ $<
./factor -i=boot.<cpu>.image
+Or this command for Mac OS X systems:
+
+./Factor.app/Contents/MacOS/factor -i=boot.<cpu>.image
+
Bootstrap can take a while, depending on your system. When the process
completes, a 'factor.image' file will be generated. Note that this image
is both CPU and OS-specific, so in general cannot be shared between
{ [ t ] [ \ ALIEN: [ alien-address pprint* ] pprint-prefix ] }
} cond ;
-M: dll pprint* dll-path dup "DLL\" " pprint-string ;
+M: dll pprint* dll-path dup "DLL\" " "\"" pprint-string ;
[ H{ { 1 2 } { 3 4 } } ]
[ "hi" 5 H{ { 1 2 } { 3 4 } } clone [ rename-at ] keep ]
unit-test
+
+[
+ H{ { 1.0 1.0 } { 2.0 2.0 } }
+] [
+ F{ 1.0 2.0 } [ dup ] H{ } map>assoc
+] unit-test
[ 0 or + ] change-at ;
: map>assoc ( seq quot exemplar -- assoc )
- >r [ 2array ] compose map r> assoc-like ; inline
+ >r [ 2array ] compose { } map-as r> assoc-like ; inline
M: assoc >alist [ 2array ] { } assoc>map ;
ABOUT: "bootstrap.image"
HELP: make-image
-{ $values { "architecture" "a string" } }
+{ $values { "arch" "a string" } }
{ $description "Creates a bootstrap image from sources, where " { $snippet "architecture" } " is one of the following:"
{ $code "x86.32" "x86.64" "ppc" "arm" }
"The new image file is written to the " { $link resource-path } " and is named " { $snippet "boot." { $emphasis "architecture" } ".image" } "." } ;
[
boot
do-init-hooks
- [ parse-command-line ] try
- [ run-user-init ] try
- [ "run" get run ] try
- stdio get [ stream-flush ] when*
+ [
+ parse-command-line
+ run-user-init
+ "run" get run
+ stdio get [ stream-flush ] when*
+ ] [ print-error 1 exit ] recover
] set-boot-quot
: count-words all-words swap subset length pprint ;
IN: classes
ARTICLE: "builtin-classes" "Built-in classes"
-"Every object is an instance of to exactly one canonical " { $emphasis "built-in class" } " which defines its layout in memory and basic behavior."
+"Every object is an instance of exactly one canonical " { $emphasis "built-in class" } " which defines its layout in memory and basic behavior."
$nl
"Corresponding to every built-in class is a built-in type number. An object can be asked for its built-in type number:"
{ $subsection type }
{ $values { "word" word } { "members" "a sequence of class words" } { "superclass" class } { "metaclass" class } }
{ $description "Sets a property indicating this word is a class word, thus making it an instance of " { $link class } ", and registers it with " { $link typemap } " and " { $link class<map } "." }
$low-level-note ;
-
-: $predicate ( element -- )
- { { "object" object } { "?" "a boolean" } } $values
- [
- "Tests if the object is an instance of the " ,
- first "predicating" word-prop \ $link swap 2array ,
- " class." ,
- ] { } make $description ;
-
-M: predicate word-help* drop \ $predicate ;
-
-HELP: $predicate
-{ $values { "element" "a markup element of the form " { $snippet "{ word }" } } }
-{ $description "Prints the boilerplate description of a class membership predicate word such as " { $link array? } " or " { $link integer? } "." } ;
dup empty? [
drop
] [
- hash-case-table hash-dispatch-quot
- [ dup hashcode >fixnum ] swap append
+ dup length 4 <= [
+ case>quot
+ ] [
+ hash-case-table hash-dispatch-quot
+ [ dup hashcode >fixnum ] swap append
+ ] if
] if ;
: begin-batch ( seq -- )
batch-mode on
- [
- "Compiling " % length # " words..." %
- ] "" make print flush
+ "quiet" get [ drop ] [
+ [ "Compiling " % length # " words..." % ] "" make
+ print flush
+ ] if
V{ } clone compile-errors set-global ;
: compile-error. ( pair -- )
global keys =
] unit-test
-[ 3 ] [ 1 2 [ curry [ 3 ] [ 4 ] if ] compile-1 ] unit-test
+[ 3 ] [ 1 [ 2 ] [ curry [ 3 ] [ 4 ] if ] compile-1 ] unit-test
[ 3 ] [ t [ 3 [ ] curry 4 [ ] curry if ] compile-1 ] unit-test
\ recursive compile
[ ] [ t recursive ] unit-test
+
+! Make sure error reporting works
+
+[ [ dup ] compile-1 ] unit-test-fails
+[ [ drop ] compile-1 ] unit-test-fails
{ $description "Reifies the current continuation from the point immediately after which the caller returns." } ;
HELP: >continuation<
-{ $values { "continuation" continuation } { "data" vector } { "retain" vector } { "call" vector } { "name" vector } { "catch" vector } { "c" array } }
+{ $values { "continuation" continuation } { "data" vector } { "retain" vector } { "call" vector } { "name" vector } { "catch" vector } }
{ $description "Takes a continuation apart into its constituents." } ;
HELP: ifcc
{ $var-description "Holds a vector of literal objects referenced from the currently compiling word. If " { $link compiled-stack-traces? } " is on, " { $link init-generator } " ensures that the first entry is the word being compiled." } ;
HELP: init-generator
-{ $values { "word" word } }
{ $description "Prepares to generate machine code for a word." } ;
HELP: generate-1
-{ $values { "label" word } { "node" "a dataflow node" } { "quot" "a quotation with stack effect " { $snippet "( node -- )" } } }
+{ $values { "word" word } { "label" word } { "node" "a dataflow node" } { "quot" "a quotation with stack effect " { $snippet "( node -- )" } } }
{ $description "Generates machine code for " { $snippet "label" } " by applying the quotation to the dataflow node." } ;
HELP: generate-node
HELP: math-upgrade
{ $values { "class1" "a class word" } { "class2" "a class word" } { "quot" "a quotation with stack effect " { $snippet "( n n -- n n )" } } }
{ $description "Outputs a quotation for upgrading numberical types. It takes two numbers on the stack, an instance of " { $snippet "class1" } ", and an instance of " { $snippet "class2" } ", and converts the one with the lower priority to the higher priority type." }
-{ $examples { $example "USE: generic.math" "fixnum bignum math-upgrade ." "[ >r >bignum r> ]" } } ;
+{ $examples { $example "USE: generic.math" "fixnum bignum math-upgrade ." "[ [ >bignum ] dip ]" } } ;
HELP: no-math-method
{ $values { "left" "an object" } { "right" "an object" } { "generic" "a generic word" } }
HELP: math-method
{ $values { "word" "a generic word" } { "class1" "a class word" } { "class2" "a class word" } { "quot" "a quotation" } }
{ $description "Generates a definition for " { $snippet "word" } " when the two inputs are instances of " { $snippet "class1" } " and " { $snippet "class2" } ", respectively." }
-{ $examples { $example "USE: generic.math" "\\ + fixnum float math-method ." "[ >r >float r> float+ ]" } } ;
+{ $examples { $example "USE: generic.math" "\\ + fixnum float math-method ." "[ [ >float ] dip float+ ]" } } ;
HELP: math-class
{ $class-description "The class of subtypes of " { $link number } " which are not " { $link null } "." } ;
{ $side-effects "hash" } ;
HELP: (set-hash)
-{ $values { "value" "a value" } { "key" "a key to add" } { "hash" hashtable } }
+{ $values { "value" "a value" } { "key" "a key to add" } { "hash" hashtable } { "new?" "a boolean" } }
{ $description "Stores the key/value pair into the hashtable. This word does not grow the hashtable if it exceeds capacity, therefore a hang can result. User code should use " { $link set-at } " instead, which grows the hashtable if necessary." }
{ $side-effects "hash" } ;
HELP: parent-directory
{ $values { "path" "a pathname string" } { "parent" "a pathname string" } }
{ $description "Strips the last component off a pathname." }
-{ $examples { $example "USE: io.files" "\"/etc/passwd\" parent-directory print" "/etc" } } ;
+{ $examples { $example "USE: io.files" "\"/etc/passwd\" parent-directory print" "/etc/" } } ;
HELP: file-name
{ $values { "path" "a pathname string" } { "string" string } }
! See http://factorcode.org/license.txt for BSD license.
IN: io.files
USING: io.backend io.files.private io hashtables kernel math
-memory namespaces sequences strings arrays definitions system
-combinators splitting ;
+memory namespaces sequences strings assocs arrays definitions
+system combinators splitting ;
HOOK: <file-reader> io-backend ( path -- stream )
C: <pathname> pathname
M: pathname <=> [ pathname-string ] compare ;
+
+HOOK: library-roots io-backend ( -- seq )
+HOOK: binary-roots io-backend ( -- seq )
+
+: find-file ( seq str -- path/f )
+ [
+ [ path+ exists? ] curry find nip
+ ] keep over [ path+ ] [ drop ] if ;
+
+: find-library ( str -- path/f )
+ library-roots swap find-file ;
+
+: find-binary ( str -- path/f )
+ binary-roots swap find-file ;
+
+<PRIVATE
+: append-path ( path files -- paths )
+ [ path+ ] curry* map ;
+
+: get-paths ( dir -- paths )
+ dup directory keys append-path ;
+
+: (walk-dir) ( path -- )
+ dup directory? [
+ get-paths dup % [ (walk-dir) ] each
+ ] [
+ drop
+ ] if ;
+PRIVATE>
+
+: walk-dir ( path -- seq ) [ (walk-dir) ] { } make ;
$io-error ;
HELP: make-block-stream
-{ $values { "quot" "a quotation" } { "style" "a hashtable" } { "stream" "an output stream" } }
-{ $contract "Calls the quotation in a new dynamic scope with the " { $link stdio } " stream rebound to a nested paragraph stream, with formatting information applied."
+{ $values { "style" "a hashtable" } { "stream" "an output stream" } { "stream'" "an output stream" } }
+{ $contract "Creates an output stream which wraps " { $snippet "stream" } " and adds " { $snippet "style" } " on calls to " { $link stream-write } " and " { $link stream-format } "."
$nl
"Unlike " { $link make-span-stream } ", this creates a new paragraph block in the output."
$nl
"The " { $snippet "style" } " hashtable holds paragraph style information. See " { $link "paragraph-styles" } "." }
+{ $notes "Instead of calling this word directly, use " { $link with-nesting } "." }
$io-error ;
HELP: stream-write-table
$io-error ;
HELP: make-cell-stream
-{ $values { "quot" quotation } { "style" hashtable } { "stream" "an output stream" } { "table-cell" object } }
-{ $contract "Creates a table cell by calling the quotation in a new scope with a rebound " { $link stdio } " stream. Callers should not make any assumptions about the type of this word's output value; it should be treated like an opaque handle passed to " { $link stream-write-table } "." }
+{ $values { "style" hashtable } { "stream" "an output stream" } { "stream'" object } }
+{ $contract "Creates an output stream which writes to a table cell object." }
{ $notes "Instead of calling this word directly, use " { $link tabular-output } "." }
$io-error ;
HELP: make-span-stream
-{ $values { "style" "a hashtable" } { "quot" "a quotation" } { "stream" "an output stream" } }
-{ $contract "Calls the quotation in a new dynamic scope where calls to " { $link write } ", " { $link format } " and other stream output words automatically inherit style settings from " { $snippet "style" } "."
+{ $values { "style" "a hashtable" } { "stream" "an output stream" } { "stream'" "an output stream" } }
+{ $contract "Creates an output stream which wraps " { $snippet "stream" } " and adds " { $snippet "style" } " on calls to " { $link stream-write } " and " { $link stream-format } "."
$nl
-"Unlike " { $link make-block-stream } ", the quotation's output is inline, and not nested in a paragraph block." }
+"Unlike " { $link make-block-stream } ", the stream output is inline, and not nested in a paragraph block." }
+{ $notes "Instead of calling this word directly, use " { $link with-style } "." }
$io-error ;
HELP: stream-print
{ $subsection >r }
{ $subsection r> }
"The top of the data stack is ``hidden'' between " { $link >r } " and " { $link r> } ":"
-{ $example "1 2 3 >r .s r>" "2\n1" }
+{ $example "1 2 3 >r .s r>" "1\n2" }
"Words must not leave objects on the retain stack, nor expect values to be there on entry. The retain stack is for local storage within a word only, and occurrences of " { $link >r } " and " { $link r> } " must be balanced inside a single quotation. One exception is the following trick involving " { $link if } "; values may be pushed on the retain stack before the condition value is computed, as long as both branches of the " { $link if } " pop the values off the retain stack before returning:"
{ $code
": foo ( m ? n -- m+n/n )"
} ;
HELP: while
-{ $values { "pred" "a quotation with stack effect " { $snippet "( -- ? )" } } { "quot" "a quotation" } { "tail" "a quotation" } }
+{ $values { "pred" "a quotation with stack effect " { $snippet "( -- ? )" } } { "body" "a quotation" } { "tail" "a quotation" } }
{ $description "Repeatedly calls " { $snippet "pred" } ". If it yields " { $link f } ", iteration stops, otherwise " { $snippet "quot" } " is called. After iteration stops, " { $snippet "tail" } " is called." }
{ $notes "In most cases, tail recursion should be used, because it is simpler both in terms of implementation and conceptually. However in some cases this combinator expresses intent better and should be used."
$nl
USING: kernel.private ;
IN: kernel
-: version ( -- str ) "0.91" ; foldable
+: version ( -- str ) "0.92" ; foldable
! Stack stuff
: roll ( x y z t -- y z t x ) >r rot r> swap ; inline
{ $warning "As per the BSD C library documentation, the behavior is undefined if the source and destination overlap." } ;
HELP: check-ptr
-{ $values { "c-ptr" "an alien address, byte array, or " { $link f } } { "checked" "an alien address or byte array with non-zero address" } }
+{ $values { "c-ptr" "an alien address, byte array, or " { $link f } } }
{ $description "Throws an error if the input is " { $link f } ". Otherwise the object remains on the data stack." } ;
HELP: free
HELP: bit?
{ $values { "x" integer } { "n" integer } { "?" "a boolean" } }
{ $description "Tests if the " { $snippet "n" } "th bit of " { $snippet "x" } " is set." }
-{ $examples { $example "BIN: 101 3 bit? ." "t" } } ;
+{ $examples { $example "BIN: 101 2 bit? ." "t" } } ;
HELP: log2
-{ $values { "n" "a positive integer" } { "b" integer } }
-{ $description "Outputs the largest integer " { $snippet "b" } " such that " { $snippet "2^b" } " is less than " { $snippet "n" } "." }
-{ $errors "Throws an error if " { $snippet "n" } " is zero or negative." } ;
+{ $values { "x" "a positive integer" } { "n" integer } }
+{ $description "Outputs the largest integer " { $snippet "n" } " such that " { $snippet "2^n" } " is less than " { $snippet "x" } "." }
+{ $errors "Throws an error if " { $snippet "x" } " is zero or negative." } ;
HELP: 1+
{ $values { "x" number } { "y" number } }
{ $notes "This word is used to implement " { $link each } "." } ;
HELP: all-integers?
-{ $values { "n" integer } { "quot" "a quotation with stack effect " { $snippet "( i -- ? )" } } { "i" "an integer or " { $link f } } }
+{ $values { "n" integer } { "quot" "a quotation with stack effect " { $snippet "( i -- ? )" } } { "?" "a boolean" } }
{ $description "Applies the quotation to each integer from 0 up to " { $snippet "n" } ", excluding " { $snippet "n" } ". Iterationi stops when the quotation outputs " { $link f } " or the end is reached. If the quotation yields a false value for some integer, this word outputs " { $link f } ". Otherwise, this word outputs " { $link t } "." }
{ $notes "This word is used to implement " { $link all? } "." } ;
io.streams.string layouts splitting math.intervals
math.floats.private tuples tuples.private classes
optimizer.def-use optimizer.backend optimizer.pattern-match
-float-arrays combinators.private ;
+float-arrays combinators.private combinators ;
! the output of <tuple> and <tuple-boa> has the class which is
! its second-to-last input
{ [ dup disjoint-eq? ] [ [ f ] inline-literals ] }
} define-optimizers
+: literal-member? ( #call -- ? )
+ node-in-d peek dup value?
+ [ value-literal sequence? ] [ drop f ] if ;
+
+: member-quot ( seq -- newquot )
+ [ [ t ] ] { } map>assoc [ drop f ] add [ nip case ] curry ;
+
+: expand-member ( #call -- )
+ dup node-in-d peek value-literal member-quot splice-quot ;
+
+\ member? {
+ { [ dup literal-member? ] [ expand-member ] }
+} define-optimizers
+
! if the result of eq? is t and the second input is a literal,
! the first input is equal to the second
\ eq? [
: post-process ( class interval node -- classes intervals )
dupd won't-overflow?
- [ >r dup { f integer } memq? [ drop fixnum ] when r> ] when
+ [ >r dup { f integer } member? [ drop fixnum ] when r> ] when
[ dup [ 1array ] when ] 2apply ;
: math-output-interval-1 ( node word -- interval )
{ $description "If " { $link string-limit } " is on, trims the string such that it does not exceed the margin, appending \"...\" if trimming took place." } ;
HELP: pprint-string
-{ $values { "obj" object } { "str" string } { "prefix" "a prefix string" } }
+{ $values { "obj" object } { "str" string } { "prefix" string } { "suffix" string } }
{ $description "Outputs a text section consisting of the prefix, the string, and a final quote (\")." }
$prettyprinting-note ;
{ 0.3 0.3 0.3 1.0 } foreground set
] H{ } make-assoc ;
-: unparse-string ( str prefix -- str )
- [
- % do-string-limit [ unparse-ch ] each CHAR: " ,
- ] "" make ;
+: unparse-string ( str prefix suffix -- str )
+ [ >r % do-string-limit [ unparse-ch ] each r> % ] "" make ;
-: pprint-string ( obj str prefix -- )
+: pprint-string ( obj str prefix suffix -- )
unparse-string swap string-style styled-text ;
-M: string pprint* dup "\"" pprint-string ;
+M: string pprint*
+ dup "\"" "\"" pprint-string ;
-M: sbuf pprint* dup "SBUF\" " pprint-string ;
+M: sbuf pprint*
+ dup "SBUF\" " "\"" pprint-string ;
-M: pathname pprint* dup pathname-string "P\" " pprint-string ;
+M: pathname pprint*
+ dup pathname-string "P\" " "\"" pprint-string ;
! Sequences
: nesting-limit? ( -- ? )
C: <column> column
M: column virtual-seq column-seq ;
-M: column virtual@ dup column-col -rot column-seq nth ;
+M: column virtual@
+ dup column-col -rot column-seq nth bounds-check ;
M: column length column-seq length ;
INSTANCE: column virtual-sequence
: all-eq? ( seq -- ? ) [ eq? ] monotonic? ;
-: flip ( matrix -- newmatrix )
- dup empty? [
- dup first length [ <column> dup like ] curry* map
- ] unless ;
-
: exchange ( m n seq -- )
pick over bounds-check 2drop 2dup bounds-check 2drop
exchange-unsafe ;
: infimum ( seq -- n ) dup first [ min ] reduce ;
: supremum ( seq -- n ) dup first [ max ] reduce ;
+: flip ( matrix -- newmatrix )
+ dup empty? [
+ dup [ length ] map infimum
+ [ <column> dup like ] curry* map
+ ] unless ;
+
+: sequence-hashcode-step ( oldhash newpart -- newhash )
+ swap [
+ dup -2 fixnum-shift >fixnum swap 5 fixnum-shift >fixnum
+ fixnum+fast fixnum+fast
+ ] keep bitxor ; inline
+
: sequence-hashcode ( n seq -- x )
0 -rot [
- hashcode* >fixnum swap 31 fixnum*fast fixnum+fast
+ hashcode* >fixnum sequence-hashcode-step
] curry* each ; inline
$nl
{ $link "tuples" } " are composed entirely of slots, and instances of " { $link "builtin-classes" } " consist of slots together with intrinsic data."
$nl
-"The "
"The " { $snippet "\"slots\"" } " word property of built-in and tuple classes holds an array of " { $emphasis "slot specifiers" } " describing the slot layout of each instance."
{ $subsection slot-spec }
"Each slot has a reader word; mutable slots have an optional writer word. All tuple slots are mutable, but some slots on built-in classes are not."
--- /dev/null
+Eduardo Cavazos
--- /dev/null
+Bake is similar to make but with additional features
over push
] if ;
+HINTS: do-line vector string ;
+
: (reverse-complement) ( seq -- )
readln [ do-line (reverse-complement) ] [ show-seq ] if* ;
+++ /dev/null
-USING: assocs browser.parser kernel math sequences strings ;
-IN: browser.analyzer
-
-: remove-blank-text ( vector -- vector )
- [
- dup tag-name text = [
- tag-text [ blank? not ] all?
- ] [
- drop t
- ] if
- ] subset ;
-
-: find-by-id ( id vector -- vector )
- [ tag-attributes "id" swap at = ] curry* subset ;
-
-: find-by-class ( id vector -- vector )
- [ tag-attributes "class" swap at = ] curry* subset ;
-
-: find-by-name ( str vector -- vector )
- >r >lower r>
- [ tag-name = ] curry* subset ;
-
-: find-first-name ( str vector -- i/f tag/f )
- >r >lower r>
- [ tag-name = ] curry* find ;
-
-: find-matching-close ( str vector -- i/f tag/f )
- >r >lower r>
- [ [ tag-name = ] keep tag-closing? and ] curry* find ;
-
-: find-by-attribute-key ( key vector -- vector )
- >r >lower r>
- [ tag-attributes at ] curry* subset
- [ ] subset ;
-
-: find-by-attribute-key-value ( value key vector -- vector )
- >r >lower r>
- [ tag-attributes at over = ] curry* subset nip
- [ ] subset ;
-
-: find-first-attribute-key-value ( value key vector -- i/f tag/f )
- >r >lower r>
- [ tag-attributes at over = ] curry* find rot drop ;
-
-: find-between ( i/f tag/f vector -- vector )
- pick integer? [
- rot 1+ tail-slice
- >r tag-name r>
- [ find-matching-close drop ] keep swap head
- ] [
- 3drop V{ } clone
- ] if ;
-
-: find-links ( vector -- vector )
- [ tag-name "a" = ] subset
- [ tag-attributes "href" swap at ] map
- [ ] subset ;
-
-
-
-! : find-last-tag ( name vector -- index tag )
- ! [
- ! dup tag-matched? [ 2drop f ] [ tag-name = ] if
- ! ] curry* find-last ;
-
-! : find-last-tag* ( name n vector -- tag )
- ! 0 -rot <slice> find-last-tag ;
-
-! : find-matching-tag ( tag -- tag )
- ! dup tag-closing? [
- ! find-last-tag
- ! ] [
- ! ] if ;
-
-
-! clear "/Users/erg/web/fark.html" <file-reader> contents parse-html find-links [ "go.pl" swap start ] subset [ "=" split peek ] map
-! clear "http://fark.com" http-get parse-html find-links [ "go.pl" swap start ] subset [ "=" split peek ] map
-
-! clear "/Users/erg/web/hostels.html" <file-reader> contents parse-html "Currency" "name" pick find-first-attribute-key-value
-
-! clear "/Users/erg/web/hostels.html" <file-reader> contents parse-html
-! "Currency" "name" pick find-first-attribute-key-value
-! pick find-between remove-blank-text
+++ /dev/null
-USING: browser.parser kernel tools.test ;
-IN: temporary
-
-[
- V{ T{ tag f "html" H{ } f f f } }
-] [ "<html>" parse-html ] unit-test
-
-[
- V{ T{ tag f "html" H{ } f f t } }
-] [ "</html>" parse-html ] unit-test
-
-[
- V{ T{ tag f "a" H{ { "href" "http://factorcode.org/" } } f f f } }
-] [ "<a href=\"http://factorcode.org/\">" parse-html ] unit-test
-
-[
- V{ T{ tag f "a" H{ { "href" "http://factorcode.org/" } } f f f } }
-] [ "<a href = \"http://factorcode.org/\" >" parse-html ] unit-test
-
-[
-V{
- T{
- tag
- f
- "a"
- H{ { "baz" "\"quux\"" } { "foo" "bar's" } }
- f
- f
- f
- }
-}
-] [ "<a foo=\"bar's\" baz='\"quux\"' >" parse-html ] unit-test
-
-[
-V{
- T{ tag f "a"
- H{
- { "a" "pirsqd" }
- { "foo" "bar" }
- { "href" "http://factorcode.org/" }
- { "baz" "quux" }
- } f f f }
-}
-] [ "<a href = \"http://factorcode.org/\" foo = bar baz='quux'a=pirsqd >" parse-html ] unit-test
-
-[
-V{
- T{ tag f "html" H{ } f f f }
- T{ tag f "head" H{ } f f f }
- T{ tag f "head" H{ } f f t }
- T{ tag f "html" H{ } f f t }
-}
-] [ "<html<head</head</html" parse-html ] unit-test
-
-[
-V{
- T{ tag f "head" H{ } f f f }
- T{ tag f "title" H{ } f f f }
- T{ tag f text f "Spagna" f f }
- T{ tag f "title" H{ } f f t }
- T{ tag f "head" H{ } f f t }
-}
-] [ "<head<title>Spagna</title></head" parse-html ] unit-test
+++ /dev/null
-USING: arrays browser.utils hashtables io kernel namespaces
-prettyprint quotations
-sequences splitting state-parser strings ;
-USE: tools.interpreter
-IN: browser.parser
-
-TUPLE: tag name attributes text matched? closing? ;
-
-SYMBOL: text
-SYMBOL: dtd
-SYMBOL: comment
-SYMBOL: javascript
-SYMBOL: tagstack
-
-: push-tag ( tag -- )
- tagstack get push ;
-
-: closing-tag? ( string -- ? )
- dup empty? [
- drop f
- ] [
- dup first CHAR: / =
- swap peek CHAR: / = or
- ] if ;
-
-: <tag> ( name attributes closing? -- tag )
- { set-tag-name set-tag-attributes set-tag-closing? }
- tag construct ;
-
-: make-tag ( str attribs -- tag )
- >r [ closing-tag? ] keep "/" trim1 r> rot <tag> ;
-
-: make-text-tag ( str -- tag )
- T{ tag f text } clone [ set-tag-text ] keep ;
-
-: make-comment-tag ( str -- tag )
- T{ tag f comment } clone [ set-tag-text ] keep ;
-
-: make-dtd-tag ( str -- tag )
- T{ tag f dtd } clone [ set-tag-text ] keep ;
-
-: read-whitespace ( -- str )
- [ get-char blank? not ] take-until ;
-
-: read-whitespace* ( -- )
- read-whitespace drop ;
-
-: read-token ( -- str )
- read-whitespace*
- [ get-char blank? ] take-until ;
-
-: read-single-quote ( -- str )
- [ get-char CHAR: ' = ] take-until ;
-
-: read-double-quote ( -- str )
- [ get-char CHAR: " = ] take-until ;
-
-: read-quote ( -- str )
- get-char next* CHAR: ' = [
- read-single-quote
- ] [
- read-double-quote
- ] if next* ;
-
-: read-key ( -- str )
- read-whitespace*
- [ get-char CHAR: = = get-char blank? or ] take-until ;
-
-: read-= ( -- )
- read-whitespace*
- [ get-char CHAR: = = ] take-until drop next* ;
-
-: read-value ( -- str )
- read-whitespace*
- get-char quote? [
- read-quote
- ] [
- read-token
- ] if ;
-
-: read-comment ( -- )
- "-->" take-string* make-comment-tag push-tag ;
-
-: read-dtd ( -- )
- ">" take-string* make-dtd-tag push-tag ;
-
-: read-bang ( -- )
- next* get-char CHAR: - = get-next CHAR: - = and [
- next* next*
- read-comment
- ] [
- read-dtd
- ] if ;
-
-: read-tag ( -- )
- [ get-char CHAR: > = get-char CHAR: < = or ] take-until
- get-char CHAR: < = [ next* ] unless ;
-
-: read-< ( -- str )
- next* get-char CHAR: ! = [
- read-bang f
- ] [
- read-tag
- ] if ;
-
-: read-until-< ( -- str )
- [ get-char CHAR: < = ] take-until ;
-
-: parse-text ( -- )
- read-until-< dup empty? [
- drop
- ] [
- make-text-tag push-tag
- ] if ;
-
-: (parse-attributes) ( -- )
- read-whitespace*
- string-parse-end? [
- read-key >lower read-= read-value
- 2array , (parse-attributes)
- ] unless ;
-
-: parse-attributes ( -- hashtable )
- [ (parse-attributes) ] { } make >hashtable ;
-
-: (parse-tag)
- [
- read-token >lower
- parse-attributes
- ] string-parse ;
-
-: parse-tag ( -- )
- read-< dup empty? [
- drop
- ] [
- (parse-tag) make-tag push-tag
- ] if ;
-
-: (parse-html) ( tag -- )
- get-next [
- parse-text
- parse-tag
- (parse-html)
- ] when ;
-
-: tag-parse ( quot -- vector )
- [
- V{ } clone tagstack set
- string-parse
- ] with-scope ;
-
-: parse-html ( string -- vector )
- [
- (parse-html)
- tagstack get
- ] tag-parse ;
+++ /dev/null
-USING: assocs browser.parser browser.utils combinators
-continuations hashtables
-hashtables.private io kernel math
-namespaces prettyprint quotations sequences splitting
-state-parser strings ;
-IN: browser.printer
-
-SYMBOL: no-section
-SYMBOL: html
-SYMBOL: head
-SYMBOL: body
-TUPLE: state section ;
-
-! TUPLE: text bold? underline? strikethrough? ;
-
-TUPLE: text-printer ;
-TUPLE: ui-printer ;
-TUPLE: src-printer ;
-UNION: printer text-printer ui-printer src-printer ;
-HOOK: print-tag printer ( tag -- )
-HOOK: print-text-tag printer ( tag -- )
-HOOK: print-comment-tag printer ( tag -- )
-HOOK: print-dtd-tag printer ( tag -- )
-HOOK: print-opening-named-tag printer ( tag -- )
-HOOK: print-closing-named-tag printer ( tag -- )
-
-: print-tags ( vector -- )
- [ print-tag ] each ;
-
-: html-text. ( vector -- )
- [
- T{ text-printer } printer set
- print-tags
- ] with-scope ;
-
-: html-src. ( vector -- )
- [
- T{ src-printer } printer set
- print-tags
- ] with-scope ;
-
-M: printer print-text-tag ( tag -- )
- tag-text write ;
-
-M: printer print-comment-tag ( tag -- )
- "<!--" write
- tag-text write
- "-->" write ;
-
-M: printer print-dtd-tag
- "<!" write
- tag-text write
- ">" write ;
-
-M: printer print-opening-named-tag ( tag -- )
- dup tag-name {
- { "html" [ drop ] }
- { "head" [ drop ] }
- { "body" [ drop ] }
- { "title" [ "Title: " write tag-text print ] }
- } case ;
-
-M: printer print-closing-named-tag ( tag -- )
- drop ;
-
-: print-attributes ( hashtable -- )
- [
- swap bl write "=" write ?quote write
- ] assoc-each ;
-
-
-M: src-printer print-opening-named-tag ( tag -- )
- "<" write
- dup tag-name write
- tag-attributes dup assoc-empty? [ drop ] [ print-attributes ] if
- ">" write ;
-
-M: src-printer print-closing-named-tag ( tag -- )
- "</" write
- tag-name write
- ">" write ;
-
-TUPLE: unknown-tag-error tag ;
-
-C: <unknown-tag-error> unknown-tag-error
-
-M: printer print-tag ( tag -- )
- {
- { [ dup tag-name text = ] [ print-text-tag ] }
- { [ dup tag-name comment = ] [ print-comment-tag ] }
- { [ dup tag-name dtd = ] [ print-dtd-tag ] }
- { [ dup tag-name string? over tag-closing? and ]
- [ print-closing-named-tag ] }
- { [ dup tag-name string? ]
- [ print-opening-named-tag ] }
- { [ t ] [ <unknown-tag-error> throw ] }
- } cond ;
-
-SYMBOL: tablestack
-
-: with-html-printer
- [
- V{ } clone tablestack set
- ] with-scope ;
-
-! { { 1 2 } { 3 4 } }
-! H{ { table-gap { 10 10 } } } [
- ! [ [ [ [ . ] with-cell ] each ] with-row ] each
-! ] tabular-output
+++ /dev/null
-USING: assocs combinators continuations hashtables
-hashtables.private io kernel math
-namespaces prettyprint quotations sequences splitting
-state-parser strings tools.test ;
-USING: browser.utils ;
-IN: temporary
-
-[ "'Rome'" ] [ "Rome" single-quote ] unit-test
-[ "\"Roma\"" ] [ "Roma" double-quote ] unit-test
-[ "'Firenze'" ] [ "Firenze" quote ] unit-test
-[ "\"Caesar's\"" ] [ "Caesar's" quote ] unit-test
-[ f ] [ "" quoted? ] unit-test
-[ t ] [ "''" quoted? ] unit-test
-[ t ] [ "\"\"" quoted? ] unit-test
-[ t ] [ "\"Circus Maximus\"" quoted? ] unit-test
-[ t ] [ "'Circus Maximus'" quoted? ] unit-test
-[ f ] [ "Circus Maximus" quoted? ] unit-test
-[ "'Italy'" ] [ "Italy" ?quote ] unit-test
-[ "'Italy'" ] [ "'Italy'" ?quote ] unit-test
-[ "\"Italy\"" ] [ "\"Italy\"" ?quote ] unit-test
-[ "Italy" ] [ "Italy" unquote ] unit-test
-[ "Italy" ] [ "'Italy'" unquote ] unit-test
-[ "Italy" ] [ "\"Italy\"" unquote ] unit-test
-
+++ /dev/null
-USING: assocs circular combinators continuations hashtables
-hashtables.private io kernel math
-namespaces prettyprint quotations sequences splitting
-state-parser strings ;
-USING: browser.parser ;
-IN: browser.utils
-
-: string-parse-end?
- get-next not ;
-
-: take-string* ( match -- string )
- dup length <circular-string>
- [ 2dup string-matches? ] take-until nip
- dup length rot length 1- - head next* ;
-
-: trim1 ( seq ch -- newseq )
- [ ?head drop ] keep ?tail drop ;
-
-: single-quote ( str -- newstr )
- >r "'" r> "'" 3append ;
-
-: double-quote ( str -- newstr )
- >r "\"" r> "\"" 3append ;
-
-: quote ( str -- newstr )
- CHAR: ' over member?
- [ double-quote ] [ single-quote ] if ;
-
-: quoted? ( str -- ? )
- dup length 1 > [
- [ first ] keep peek [ = ] keep "'\"" member? and
- ] [
- drop f
- ] if ;
-
-: ?quote ( str -- newstr )
- dup quoted? [ quote ] unless ;
-
-: unquote ( str -- newstr )
- dup quoted? [ 1 head-slice* 1 tail-slice >string ] when ;
-
-: quote? ( ch -- ? ) "'\"" member? ;
-
--- /dev/null
+Eduardo Cavazos
--- /dev/null
+Minimalist chat server
--- /dev/null
+Matthew Willis
+Eduardo Cavazos
--- /dev/null
+Connects to a cabal server
! See http://factorcode.org/license.txt for BSD license.
USING: arrays hashtables io io.streams.string kernel math
-math.vectors math.functions math.parser
-namespaces sequences strings tuples system ;
+math.vectors math.functions math.parser namespaces sequences
+strings tuples system debugger ;
IN: calendar
TUPLE: timestamp year month day hour minute second gmt-offset ;
: timestamp>rfc3339 ( timestamp -- str )
>gmt [
(timestamp>rfc3339)
- ] string-out ;
+ ] string-out ;
+
+: expect read1 assert= ;
+
+: (rfc3339>timestamp) ( -- timestamp )
+ 4 read string>number ! year
+ CHAR: - expect
+ 2 read string>number ! month
+ CHAR: - expect
+ 2 read string>number ! day
+ CHAR: T expect
+ 2 read string>number ! hour
+ CHAR: : expect
+ 2 read string>number ! minute
+ CHAR: : expect
+ 2 read string>number ! second
+ 0 <timestamp> ;
+
+: rfc3339>timestamp ( str -- timestamp )
+ [
+ (rfc3339>timestamp)
+ ] string-in ;
: file-time-string ( timestamp -- string )
[
--- /dev/null
+Implementation of: http://contextfreeart.org
"returned by " { $link publish }
}
{ $examples
- { $example "\"localhost\" 9000 <node> \"ID123456\" <remote-channel> \"foo\" over to" }
+ { $code "\"localhost\" 9000 <node> \"ID123456\" <remote-channel> \"foo\" over to" }
}
{ $see-also publish unpublish } ;
"accessible by remote nodes."
}
{ $examples
- { $example "<channel> publish unpublish" }
+ { $code "<channel> publish unpublish" }
}
{ $see-also <remote-channel> publish } ;
{ $link to } " and " { $link from } " to access the channel."
}
{ $examples
- { $example "<channel> publish" }
+ { $code "<channel> publish" }
}
{ $see-also <remote-channel> unpublish } ;
-USING: help.syntax help.markup kernel prettyprint sequences ;
+USING: help.syntax help.markup kernel prettyprint sequences
+quotations math ;
IN: combinators.lib
HELP: generate
-{ $values { "generator" "a quotation" } { "predicate" "a quotation" } { "obj" "an object" } }
+{ $values { "generator" quotation } { "predicate" quotation } { "obj" object } }
{ $description "Loop until the generator quotation generates an object that satisfies predicate quotation." }
{ $unchecked-example
"! Generate a random 20-bit prime number congruent to 3 (mod 4)"
} ;
HELP: ndip
-{ $values { "quot" "a quotation" } { "n" "a number" } }
+{ $values { "quot" quotation } { "n" number } }
{ $description "A generalisation of " { $link dip } " that can work "
"for any stack depth. The quotation will be called with a stack that "
"has 'n' items removed first. The 'n' items are then put back on the "
{ $see-also dip dipd } ;
HELP: nslip
-{ $values { "n" "a number" } }
+{ $values { "n" number } }
{ $description "A generalisation of " { $link slip } " that can work "
"for any stack depth. The first " { $snippet "n" } " items after the quotation will be "
"removed from the stack, the quotation called, and the items restored."
{ $see-also slip nkeep } ;
HELP: nkeep
-{ $values { "quot" "a quotation" } { "n" "a number" } }
+{ $values { "quot" quotation } { "n" number } }
{ $description "A generalisation of " { $link keep } " that can work "
"for any stack depth. The first " { $snippet "n" } " items after the quotation will be "
"saved, the quotation called, and the items restored."
{ $see-also keep nslip } ;
HELP: map-withn
-{ $values { "seq" "a sequence" } { "quot" "a quotation" } { "n" "a number" } { "newseq" "a sequence" } }
+{ $values { "seq" sequence } { "quot" quotation } { "n" number } { "newseq" sequence } }
{ $description "A generalisation of " { $link map } ". The first " { $snippet "n" } " items after the quotation will be "
"passed to the quotation given to map-withn for each element in the sequence."
}
{ $see-also each-withn } ;
HELP: each-withn
-{ $values { "seq" "a sequence" } { "quot" "a quotation" } { "n" "a number" } }
+{ $values { "seq" sequence } { "quot" quotation } { "n" number } }
{ $description "A generalisation of " { $link each } ". The first " { $snippet "n" } " items after the quotation will be "
"passed to the quotation given to each-withn for each element in the sequence."
}
{ $see-also map-withn } ;
HELP: sigma
-{ $values { "seq" "a sequence" } { "quot" "a quotation" } }
+{ $values { "seq" sequence } { "quot" quotation } { "n" number } }
{ $description "Like map sum, but without creating an intermediate sequence." }
{ $example
"! Find the sum of the squares [0,99]"
- "USE: math.ranges"
- "100 [1,b] [ sq ] sigma"
+ "USING: math.ranges combinators.lib ;"
+ "100 [1,b] [ sq ] sigma ."
"338350"
} ;
HELP: count
-{ $values { "seq" "a sequence" } { "quot" "a quotation" } }
+{ $values { "seq" sequence } { "quot" quotation } { "n" integer } }
{ $description "Efficiently returns the number of elements that the predicate quotation matches." }
{ $example
- "USE: math.ranges"
+ "USING: math.ranges combinators.lib ;"
"100 [1,b] [ even? ] count ."
"50"
} ;
HELP: all-unique?
-{ $values { "seq" "a sequence" } { "?" "a boolean" } }
+{ $values { "seq" sequence } { "?" "a boolean" } }
{ $description "Tests whether a sequence contains any repeated elements." }
{ $example
+ "USE: combinators.lib"
"{ 0 1 1 2 3 5 } all-unique? ."
"f"
} ;
HELP: &&
-{ $values { "quots" "a sequence of quotations with stack effect " { $snippet "( ... -- ... ? )" } } }
+{ $values { "quots" "a sequence of quotations with stack effect " { $snippet "( ... -- ... ? )" } } { "?" "a boolean" } }
{ $description "Calls each quotation in turn; outputs " { $link f } " if one of the quotations output " { $link f } ", otherwise outputs " { $link t } ". As soon as a quotation outputs " { $link f } ", evaluation stops and subsequent quotations are not called." } ;
HELP: ||
-{ $values { "quots" "a sequence of quotations with stack effect " { $snippet "( ... -- ... ? )" } } }
+{ $values { "quots" "a sequence of quotations with stack effect " { $snippet "( ... -- ... ? )" } } { "?" "a boolean" } }
{ $description "Calls each quotation in turn; outputs " { $link t } " if one of the quotations output " { $link t } ", otherwise outputs " { $link f } ". As soon as a quotation outputs " { $link t } ", evaluation stops and subsequent quotations are not called." } ;
[ dup array? ] [ dup vector? ] [ dup float? ]
} || nip
] unit-test
+
+[ 1 2 3 4 ] [ { 1 2 3 4 } 4 nfirst ] unit-test
: map-with2 ( obj obj list quot -- newseq ) 2 map-withn ; inline
+MACRO: nfirst ( n -- )
+ [ [ swap nth ] curry [ keep ] curry ] map concat [ drop ] compose ;
+
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
: sigma ( seq quot -- n ) [ rot slip + ] curry 0 swap reduce ;
HELP: (mailbox-block-unless-pred)
{ $values { "pred" "a quotation with stack effect " { $snippet "( X -- bool )" } }
- { "mailbox" "a mailbox object" }
- { "pred2" "same object as 'pred'" }
- { "mailbox2" "same object as 'mailbox'" }
+ { "mailbox" "a mailbox object" }
+ { "timeout" "a timeout in milliseconds" }
}
{ $description "Block the thread if there are no items in the mailbox that return true when the predicate is called with the item on the stack. The predicate must have stack effect " { $snippet "( X -- bool )" } "." }
{ $see-also make-mailbox mailbox-empty? mailbox-put mailbox-get mailbox-get-all while-mailbox-empty mailbox-get? } ;
HELP: (mailbox-block-if-empty)
{ $values { "mailbox" "a mailbox object" }
{ "mailbox2" "same object as 'mailbox'" }
+ { "timeout" "a timeout in milliseconds" }
}
{ $description "Block the thread if the mailbox is empty." }
{ $see-also make-mailbox mailbox-empty? mailbox-put mailbox-get mailbox-get-all while-mailbox-empty mailbox-get? } ;
{ $values { "x" "an integer (input)" } { "s" "an integer (shift)" } { "w" "an integer (wrap)" } { "y" "an integer" } }
{ $description "Roll n by s bits to the left, wrapping around after w bits." }
{ $examples
- { $example "1 -1 32 bitroll .b" "10000000000000000000000000000000" }
- { $example "HEX: ffff0000 8 32 bitroll .h" "ff0000ff" }
+ { $example "USE: crypto.common" "1 -1 32 bitroll .b" "10000000000000000000000000000000" }
+ { $example "USE: crypto.common" "HEX: ffff0000 8 32 bitroll .h" "ff0000ff" }
} ;
{ $values { "seq" "a sequence" } { "str" "a string" } }
{ $description "Converts a sequence of values from 0-255 to a string of hex numbers from 0-ff." }
{ $examples
- { $example "B{ 1 2 3 4 } hex-string print" "01020304" }
+ { $example "USE: crypto.common" "B{ 1 2 3 4 } hex-string print" "01020304" }
}
{ $notes "Numbers are zero-padded on the left." } ;
: define-mimic ( group mimicker mimicked -- )
>r >r group-words r> r> [
- pick "methods" word-prop at
- [ method-def <method> spin define-method ] [ 3drop ] if*
+ pick "methods" word-prop at dup
+ [ method-def <method> spin define-method ] [ 3drop ] if
] 2curry each ;
: MIMIC:
M: one-word-elt prev-elt
drop
- [ [ f -rot >r 1- r> (prev-word) ] (word-elt) ] (prev-char) ;
+ [ f -rot >r 1- r> (prev-word) ] (word-elt) ;
M: one-word-elt next-elt
drop
- [ [ f -rot (next-word) ] (word-elt) ] (next-char) ;
+ [ f -rot (next-word) ] (word-elt) ;
TUPLE: word-elt ;
USING: definitions kernel parser words sequences math.parser
-namespaces editors io.launcher ;
+namespaces editors io.launcher windows.shell32 io.files
+io.paths strings ;
IN: editors.editpadpro
+: editpadpro-path
+ \ editpadpro-path get-global [
+ program-files "JGsoft" path+ walk-dir
+ [ >lower "editpadpro.exe" tail? ] find nip
+ ] unless* ;
+
: editpadpro ( file line -- )
- [ "editpadpro.exe /l" % # " \"" % % "\"" % ] "" make run-process ;
+ [ editpadpro-path % " /l" % # " \"" % % "\"" % ] "" make run-detached ;
[ editpadpro ] edit-hook set-global
--- /dev/null
+Aaron Schaefer
--- /dev/null
+USING: editors io.files io.launcher kernel math.parser
+namespaces sequences windows.shell32 ;
+IN: editors.editplus
+
+: editplus-path ( -- path )
+ \ editplus-path get-global [
+ program-files "\\EditPlus 2\\editplus.exe" append
+ ] unless* ;
+
+: editplus ( file line -- )
+ [
+ editplus-path % " -cursor " % # " " % %
+ ] "" make run-detached ;
+
+[ editplus ] edit-hook set-global
--- /dev/null
+EditPlus editor integration
--- /dev/null
+Doug Coleman
--- /dev/null
+USING: editors hardware-info.windows io.files io.launcher
+kernel math.parser namespaces sequences windows.shell32 ;
+IN: editors.emeditor
+
+: emeditor-path ( -- path )
+ \ emeditor-path get-global [
+ program-files "\\EmEditor\\EmEditor.exe" path+
+ ] unless* ;
+
+: emeditor ( file line -- )
+ [
+ emeditor-path % " /l " % #
+ " " % "\"" % % "\"" %
+ ] "" make run-detached ;
+
+[ emeditor ] edit-hook set-global
--- /dev/null
+EmEditor integration
-USING: kernel math math.parser namespaces editors.vim ;
+USING: io.backend io.files kernel math math.parser
+namespaces editors.vim sequences system ;
IN: editors.gvim
TUPLE: gvim ;
+HOOK: gvim-path io-backend ( -- path )
+
+
M: gvim vim-command ( file line -- string )
- [ "\"" % vim-path get % "\" \"" % swap % "\" +" % # ] "" make ;
+ [ "\"" % gvim-path % "\" \"" % swap % "\" +" % # ] "" make ;
+
+t vim-detach set-global ! don't block the ui
T{ gvim } vim-editor set-global
-"gvim" vim-path set-global
+
+USE-IF: unix? editors.gvim.unix
+USE-IF: windows? editors.gvim.windows
--- /dev/null
+USING: editors.gvim io.unix.backend kernel namespaces ;
+IN: editors.gvim.unix
+
+M: unix-io gvim-path
+ \ gvim-path get-global [
+ "gvim"
+ ] unless* ;
--- /dev/null
+USING: editors.gvim io.files io.windows kernel namespaces
+sequences windows.shell32 ;
+IN: editors.gvim.windows
+
+M: windows-io gvim-path
+ \ gvim-path get-global [
+ program-files walk-dir [ "gvim.exe" tail? ] find nip
+ ] unless* ;
-USING: editors io.launcher math.parser namespaces ;
+USING: editors io.files io.launcher kernel math.parser
+namespaces windows.shell32 ;
IN: editors.notepadpp
+: notepadpp-path
+ \ notepadpp-path get-global [
+ program-files "notepad++\\notepad++.exe" path+
+ ] unless* ;
+
: notepadpp ( file line -- )
[
- \ notepadpp get-global % " -n" % # " " % %
+ notepadpp-path % " -n" % # " " % %
] "" make run-detached ;
-! Put in your .factor-boot-rc
-! "c:\\Program Files\\notepad++\\notepad++.exe" \ notepadpp set-global
-! "k:\\Program Files (x86)\\notepad++\\notepad++.exe" \ notepadpp set-global
-
[ notepadpp ] edit-hook set-global
--- /dev/null
+Doug Coleman
--- /dev/null
+TED Notepad integration
--- /dev/null
+USING: editors io.files io.launcher kernel math.parser
+namespaces sequences windows.shell32 ;
+IN: editors.ted-notepad
+
+: ted-notepad-path
+ \ ted-notepad-path get-global [
+ program-files "\\TED Notepad\\TedNPad.exe" path+
+ ] unless* ;
+
+: ted-notepad ( file line -- )
+ [
+ ted-notepad-path % " /l" % #
+ " " % %
+ ] "" make run-detached ;
+
+[ ted-notepad ] edit-hook set-global
--- /dev/null
+Doug Coleman
--- /dev/null
+UltraEdit editor integration
--- /dev/null
+USING: editors io.files io.launcher kernel math.parser
+namespaces sequences windows.shell32 ;
+IN: editors.ultraedit
+
+: ultraedit-path ( -- path )
+ \ ultraedit-path get-global [
+ program-files
+ "\\IDM Computer Solutions\\UltraEdit-32\\uedit32.exe" path+
+ ] unless* ;
+
+: ultraedit ( file line -- )
+ [
+ ultraedit-path % " " % swap % "/" % # "/1" %
+ ] "" make run-detached ;
+
+
+[ ultraedit ] edit-hook set-global
--- /dev/null
+Doug Coleman
--- /dev/null
+Wordpad editor integration
--- /dev/null
+USING: editors hardware-info.windows io.launcher kernel
+math.parser namespaces sequences windows.shell32 ;
+IN: editors.wordpad
+
+: wordpad-path ( -- path )
+ \ wordpad-path get [
+ program-files "\\Windows NT\\Accessories\\wordpad.exe" append
+ ] unless* ;
+
+: wordpad ( file line -- )
+ [
+ wordpad-path % drop " " % "\"" % % "\"" %
+ ] "" make run-detached ;
+
+[ wordpad ] edit-hook set-global
--- /dev/null
+! Copyright (C) 2007 Daniel Ehrenberg
+! See http://factorcode.org/license.txt for BSD license.
+USING: xml kernel sequences xml.utilities combinators.lib
+math xml.data arrays assocs xml.generator xml.writer namespaces
+math.parser io ;
+IN: faq
+
+: find-after ( seq quot -- elem after )
+ over >r find r> rot 1+ tail ; inline
+
+: tag-named*? ( tag name -- ? )
+ assure-name swap tag-named? ;
+
+! Questions
+TUPLE: q/a question answer ;
+C: <q/a> q/a
+
+: li>q/a ( li -- q/a )
+ [ "br" tag-named*? not ] subset
+ [ "strong" tag-named*? ] find-after
+ >r tag-children r> <q/a> ;
+
+: q/a>li ( q/a -- li )
+ [ q/a-question "strong" build-tag* f "br" build-tag* 2array ] keep
+ q/a-answer append "li" build-tag* ;
+
+: xml>q/a ( xml -- q/a )
+ [ "question" tag-named tag-children ] keep
+ "answer" tag-named tag-children <q/a> ;
+
+: q/a>xml ( q/a -- xml )
+ [ q/a-question "question" build-tag* ] keep
+ q/a-answer "answer" build-tag*
+ "\n" swap 3array "qa" build-tag* ;
+
+! Lists of questions
+TUPLE: question-list title seq ;
+C: <question-list> question-list
+
+: xml>question-list ( list -- question-list )
+ [ "title" swap at ] keep
+ tag-children [ tag? ] subset [ xml>q/a ] map
+ <question-list> ;
+
+: question-list>xml ( question-list -- list )
+ [ question-list-seq [ q/a>xml "\n" swap 2array ]
+ map concat "list" build-tag* ] keep
+ question-list-title [ "title" pick set-at ] when* ;
+
+: html>question-list ( h3 ol -- question-list )
+ >r [ children>string ] [ f ] if* r>
+ children-tags [ li>q/a ] map <question-list> ;
+
+: question-list>h3 ( id question-list -- h3 )
+ question-list-title [
+ "h3" build-tag
+ swap number>string "id" pick set-at
+ ] [ drop f ] if* ;
+
+: question-list>html ( question-list start id -- h3/f ol )
+ -rot >r [ question-list>h3 ] keep
+ question-list-seq [ q/a>li ] map "ol" build-tag* r>
+ number>string "start" pick set-at
+ "margin-left: 5em" "style" pick set-at ;
+
+! Overall everything
+TUPLE: faq header lists ;
+C: <faq> faq
+
+: html>faq ( div -- faq )
+ unclip swap { "h3" "ol" } [ tags-named ] curry* map
+ first2 >r f add* r> [ html>question-list ] 2map <faq> ;
+
+: header, ( faq -- )
+ dup faq-header ,
+ faq-lists first 1 -1 question-list>html nip , ;
+
+: br, ( -- )
+ "br" contained, nl, ;
+
+: toc-link, ( question-list number -- )
+ number>string "#" swap append "href" swap 2array 1array
+ "a" swap [ question-list-title , ] tag*, br, ;
+
+: toc, ( faq -- )
+ "div" { { "style" "background-color: #eee; margin-left: 30%; margin-right: 30%; width: auto; padding: 5px; margin-top: 1em; margin-bottom: 1em" } } [
+ "strong" [ "The big questions" , ] tag, br,
+ faq-lists 1 tail dup length [ toc-link, ] 2each
+ ] tag*, ;
+
+: faq-sections, ( question-lists -- )
+ unclip question-list-seq length 1+ dupd
+ [ question-list-seq length + ] accumulate nip
+ 0 -rot [ pick question-list>html [ , nl, ] 2apply 1+ ] 2each drop ;
+
+: faq>html ( faq -- div )
+ "div" [
+ dup header,
+ dup toc,
+ faq-lists faq-sections,
+ ] make-xml ;
+
+: xml>faq ( xml -- faq )
+ [ "header" tag-named children>string ] keep
+ "list" tags-named [ xml>question-list ] map <faq> ;
+
+: faq>xml ( faq -- xml )
+ "faq" [
+ "header" [ dup faq-header , ] tag,
+ faq-lists [ question-list>xml , nl, ] each
+ ] make-xml ;
+
+: read-write-faq ( xml-stream -- )
+ read-xml xml>faq faq>html write-xml ;
--- /dev/null
+Slava Pestov
+Doug Coleman
[
H{
{ "bar" "hello" }
- } \ foo query>quot
+ } \ foo query>seq
] with-scope
] unit-test
-! Copyright (C) 2006 Slava Pestov
+! Copyright (C) 2006 Slava Pestov, Doug Coleman
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel vectors io assocs quotations splitting strings
- words sequences namespaces arrays hashtables debugger
- continuations tuples classes io.files
- http http.server.templating http.basic-authentication
- webapps.callback html html.elements
- http.server.responders furnace.validator ;
+USING: arrays assocs debugger furnace.sessions furnace.validator
+hashtables html.elements http http.server.responders
+http.server.templating
+io.files kernel namespaces quotations sequences splitting words
+strings vectors webapps.callback ;
+USING: continuations io prettyprint ;
IN: furnace
-SYMBOL: default-action
+: code>quotation ( word/quot -- quot )
+ dup word? [ 1quotation ] when ;
+SYMBOL: default-action
SYMBOL: template-path
-: define-authenticated-action ( word params realm -- )
- pick swap "action-realm" set-word-prop
+: render-template ( template -- )
+ template-path get swap path+
+ ".furnace" append resource-path
+ run-template-file ;
+
+: define-action ( word hash -- )
over t "action" set-word-prop
"action-params" set-word-prop ;
-: define-action ( word params -- )
- f define-authenticated-action ;
-
-: define-redirect ( word quot -- )
- "action-redirect" set-word-prop ;
-
-: responder-vocab ( name -- vocab )
- "webapps." swap append ;
-
-: lookup-action ( name webapp -- word )
- responder-vocab lookup dup [
- dup "action" word-prop [ drop f ] unless
- ] when ;
+: define-form ( word1 word2 hash -- )
+ dupd define-action
+ swap code>quotation "form-failed" set-word-prop ;
-: truncate-url ( url -- action-name )
- CHAR: / over index [ head ] when* ;
+: default-values ( word hash -- )
+ "default-values" set-word-prop ;
-: current-action ( url -- word/f )
- dup empty? [ drop default-action get ] when
- truncate-url "responder" get lookup-action ;
-
-PREDICATE: word action "action" word-prop ;
-
-: quot>query ( seq action -- hash )
- >r >array r> "action-params" word-prop
- [ first swap 2array ] 2map >hashtable ;
+SYMBOL: request-params
+SYMBOL: current-action
+SYMBOL: validators-errored
+SYMBOL: validation-errors
: action-link ( query action -- url )
[
word-name %
] "" make swap build-url ;
+: action-param ( hash paramsepc -- obj error/f )
+ unclip rot at swap >quotation apply-validators ;
+
+: query>seq ( hash word -- seq )
+ "action-params" word-prop [
+ dup first -rot
+ action-param [
+ t validators-errored >session
+ rot validation-errors session> set-at
+ ] [
+ nip
+ ] if*
+ ] curry* map ;
+
+: lookup-session ( hash -- session )
+ "furnace-session-id" over at* [
+ sessions get-global at
+ [ nip ] [ "furnace-session-id" over delete-at lookup-session ] if*
+ ] [
+ drop new-session rot "furnace-session-id" swap set-at
+ ] if ;
+
+: quot>query ( seq action -- hash )
+ >r >array r> "action-params" word-prop
+ [ first swap 2array ] 2map >hashtable ;
+
+PREDICATE: word action "action" word-prop ;
+
: action-call? ( quot -- ? )
>vector dup pop action? >r [ word? not ] all? r> and ;
t register-html-callback
] if ;
-: render-link ( quot name -- )
- <a swap quot-link =href a> write </a> ;
+: replace-variables ( quot -- quot )
+ [ dup string? [ request-params session> at ] when ] map ;
-: action-param ( params paramspec -- obj error/f )
- unclip rot at swap >quotation apply-validators ;
+: furnace-session-id ( -- hash )
+ "furnace-session-id" request-params session> at
+ "furnace-session-id" associate ;
-: query>quot ( params action -- seq )
- "action-params" word-prop [ action-param drop ] curry* map ;
+: redirect-to-action ( -- )
+ current-action session>
+ "form-failed" word-prop replace-variables
+ quot-link furnace-session-id build-url permanent-redirect ;
-SYMBOL: request-params
+: if-form-page ( if then -- )
+ current-action session> "form-failed" word-prop -rot if ;
+
+: do-action
+ current-action session> [ query>seq ] keep add >quotation call ;
-: perform-redirect ( action -- )
- "action-redirect" word-prop
- [ dup string? [ request-params get at ] when ] map
- [ quot-link permanent-redirect ] when* ;
+: process-form ( -- )
+ H{ } clone validation-errors >session
+ request-params session> current-action session> query>seq
+ validators-errored session> [
+ drop redirect-to-action
+ ] [
+ current-action session> add >quotation call
+ ] if ;
-: (call-action) ( params action -- )
- over request-params set
- [ query>quot ] keep [ add >quotation call ] keep
- perform-redirect ;
+: page-submitted ( -- )
+ [ process-form ] [ request-params session> do-action ] if-form-page ;
-: call-action ( params action -- )
- dup "action-realm" word-prop [
- [ (call-action) ] with-basic-authentication
- ] [ (call-action) ] if* ;
+: action-first-time ( -- )
+ request-params session> current-action session>
+ [ "default-values" word-prop swap union request-params >session ] keep
+ request-params session> do-action ;
-: service-request ( params url -- )
- current-action [
+: page-not-submitted ( -- )
+ [ redirect-to-action ] [ action-first-time ] if-form-page ;
+
+: setup-call-action ( hash word -- )
+ over lookup-session session set
+ current-action >session
+ request-params session> swap union
+ request-params >session
+ f validators-errored >session ;
+
+: call-action ( hash word -- )
+ setup-call-action
+ "furnace-form-submitted" request-params session> at
+ [ page-submitted ] [ page-not-submitted ] if ;
+
+: responder-vocab ( str -- newstr )
+ "webapps." swap append ;
+
+: lookup-action ( str webapp -- word )
+ responder-vocab lookup dup [
+ dup "action" word-prop [ drop f ] unless
+ ] when ;
+
+: truncate-url ( str -- newstr )
+ CHAR: / over index [ head ] when* ;
+
+: parse-action ( str -- word/f )
+ dup empty? [ drop default-action get ] when
+ truncate-url "responder" get lookup-action ;
+
+: service-request ( hash str -- )
+ parse-action [
[ call-action ] [ <pre> print-error </pre> ] recover
] [
"404 no such action: " "argument" get append httpd-error
] if* ;
-: service-get ( url -- ) "query" get swap service-request ;
+: service-get
+ "query" get swap service-request ;
+
+: service-post
+ "response" get swap service-request ;
-: service-post ( url -- ) "response" get swap service-request ;
+: web-app ( name defaul path -- )
+ [
+ template-path set
+ default-action set
+ "responder" set
+ [ service-get ] "get" set
+ [ service-post ] "post" set
+ ] make-responder ;
+USING: classes html tuples vocabs ;
: explode-tuple ( tuple -- )
dup tuple-slots swap class "slot-names" word-prop
[ set ] 2each ;
SYMBOL: model
-: call-template ( model template -- )
+: with-slots ( model quot -- )
[
- >r [ dup model set explode-tuple ] when* r>
- ".furnace" append resource-path run-template-file
+ >r [ dup model set explode-tuple ] when* r> call
] with-scope ;
-: render-template ( model template -- )
- template-path get swap path+ call-template ;
+: render-component ( model template -- )
+ swap [ render-template ] with-slots ;
-: render-page* ( model body-template head-template -- )
- [
- [ render-template ] [ f rot render-template ] html-document
- ] serve-html ;
+: browse-webapp-source ( vocab -- )
+ <a f >vocab-link browser-link-href =href a>
+ "Browse source" write
+ </a> ;
-: render-titled-page* ( model body-template head-template title -- )
- [
- [ render-template ] swap [ <title> write </title> f rot render-template ] curry html-document
- ] serve-html ;
+: send-resource ( name -- )
+ template-path get swap path+ resource-path <file-reader>
+ stdio get stream-copy ;
+: render-link ( quot name -- )
+ <a swap quot-link =href a> write </a> ;
-: render-page ( model template title -- )
- [
- [ render-template ] simple-html-document
- ] serve-html ;
+: session-var ( str -- newstr )
+ request-params session> at ;
+
+: render ( str -- )
+ request-params session> at [ write ] when* ;
+
+: render-error ( str error-str -- )
+ swap validation-errors session> at validation-error? [
+ write
+ ] [
+ drop
+ ] if ;
-: web-app ( name default path -- )
- [
- template-path set
- default-action set
- "responder" set
- [ service-get ] "get" set
- [ service-post ] "post" set
- ! [ service-head ] "head" set
- ] make-responder ;
+++ /dev/null
-<% USING: namespaces io kernel furnace words prettyprint
-generic sequences parser ; %>
-
-<% "model" get %>
-
-<form action="<% dup class dup word-vocabulary use+ unparse write %>-update" method="post">
-
-<% dup crud-index [ %>
-
-<input type="hidden" name="crud-index" value="<% write %>"/>
-
-<% ] when* %>
-
-<table>
-
-<% dup tuple-slots swap class "slot-names" word-prop [ %> <tr><td><% dup write %>:</td>
- <td><input type="text" name="<% write %>" value="<% write %>"/></td></tr><% ] 2each %>
-
-</table>
-<input type="submit" name="submit" value="submit"/>
-</form>
\ No newline at end of file
+++ /dev/null
-<% USING: namespaces kernel io sequences generic words
-prettyprint furnace parser ; %>
-
-<% "model" get dup sequence? not [ unparse %>
-<p><a href="<% write %>-new">New</a></p><% ] [ %>
-
-<p><a href="<% first class unparse write %>-new">New</a></p>
-
-<table>
-<% "model" get dup first class dup
- word-vocabulary use+ "slot-names" word-prop %>
-<tr><% [ %><th><% write %></th><% ] each %></tr>
-
-<% [ %>
-
-<tr><% dup tuple-slots [ %><td><% write %></td><% ] each %>
-
- <% dup crud-index swap class dup "crud-index" word-prop swap unparse %>
- <td><a href="<% 3dup write %>-show?<% write %>=<% write %>">Show</a></td>
- <td><a href="<% 3dup write %>-edit?<% write %>=<% write %>">Edit</a></td>
- <td><a href="<% write %>-delete?<% write %>=<% write %>">Delete</a></td></tr>
-
-<% ] each %>
-
-</table>
-
-<% ] if %>
\ No newline at end of file
+++ /dev/null
-<% USING: namespaces io kernel words generic sequences
-prettyprint furnace parser ; %>
-
-<% "model" get [ %>
-
-<% dup tuple-slots over class dup
- word-vocabulary use+ "slot-names" word-prop %>
-
-<table>
-
-<% [ %><tr><td><% write %>:</td><td><% write %></td></tr><% ] 2each %>
-
-</table>
-
-<% dup crud-index swap class dup "crud-index" word-prop swap unparse %>
-<p><a href="<% 3dup write %>-edit?<% write %>=<% write %>">Edit</a> |
- <a href="<% [ write %>-delete?<% write %>=<% write ] keep %>">Delete</a> |
- <a href="<% dup write %>-new">New</a> | <a href="<% write %>-list">List</a></p>
-
-<% ] [ %><p>No such tuple</p><% ] if* %>
\ No newline at end of file
+++ /dev/null
-USING: http.server help.markup help.syntax kernel prettyprint
-sequences parser namespaces words classes math tuples.private
-quotations arrays strings ;
-
-IN: furnace
-
-TUPLE: furnace-model model ;
-C: <furnace-model> furnace-model
-
-HELP: furnace-model "This definition exists to circumvent a limitation in furnace with regard to sending arbitrary objects as models to .furnace templates." ;
-
-: crud-create ( class string -- word )
- swap unparse "-" rot 3append in get create ;
-
-HELP: crud-create
-{ $values { "class" class } { "string" string } { "word" word } }
-{ $description "A CRUD utility function - creates a new action word for a given class and suffix string" } ;
-
-: crud-word ( class string -- word )
- swap unparse "-" rot 3append parse first ;
-HELP: crud-word
-{ $values { "class" class } { "string" string } { "word" word } }
-{ $description "A CRUD utility function - looks up a word that has been crud-created" } ;
-
-: crud-index ( tuple -- )
- dup class dup "crud-index" word-prop crud-word execute ;
-
-: crud-lookup ( string class -- obj )
- get-global [ crud-index = ] curry* subset
- dup empty? [ drop f ] [ first ] if ;
-HELP: crud-lookup
-{ $values { "string" string } { "class" class } { "obj" object } }
-{ $description "A CRUD utility function - looks up an object in the store by the pre-designated index." } ;
-
-: crud-lookup* ( string class -- tuple )
- tuck crud-lookup
- [ ] [ dup "slot-names" word-prop length 2 + <tuple> ] ?if ;
-
-HELP: crud-lookup*
-{ $values { "string" string } { "class" class } { "tuple" tuple } }
-"A CRUD utility function - same as crud-lookup, but always returns a tuple of the given class. When the lookup fails, returns a tuple of the given class with all slots set to f." ;
-
-: crud-page ( model template title -- )
- [ "libs/furnace/crud-templates" template-path set render-page ]
- with-scope ;
-
-: define-list ( class -- word )
- dup "list" crud-create swap
- [ dup get-global dup empty? -rot ? <furnace-model> "list" "List" crud-page ]
- curry dupd define-compound ;
-
-: define-show ( class -- word )
- dup "show" crud-create swap
- [ crud-lookup <furnace-model> "show" "Show" crud-page ]
- curry dupd define-compound ;
-
-: define-edit ( class -- word )
- dup "edit" crud-create swap
- [ crud-lookup* <furnace-model> "edit" "Edit" crud-page ]
- curry dupd define-compound ;
-
-: define-new ( class -- word )
- dup "new" crud-create swap "edit" crud-word
- [ f swap execute ]
- curry dupd define-compound ;
-
-: define-update ( class -- word )
- dup "update" crud-create swap
- [
- tuck crud-lookup [ over get-global remove over set-global ] when*
- dup >r "constructor" word-prop execute
- r> 2dup get-global swap add over set-global swap
- crud-index swap "show" crud-word execute
- ] curry dupd define-compound ;
-
-: define-delete ( class -- word )
- dup "delete" crud-create swap
- [
- tuck crud-lookup [ over get-global remove over set-global ] when*
- "list" crud-word execute
- ] curry dupd define-compound ;
-
-: define-lookup ( class -- )
- dup "crud-index" word-prop ">" pick unparse 3append in get create
- swap [ crud-lookup ] curry define-compound ;
-
-: define-lookup* ( class -- )
- dup "crud-index" word-prop ">" pick unparse "*" append 3append
- in get create swap [ crud-lookup* ] curry define-compound ;
-
-: scaffold-params ( class -- array )
- "crud-index" word-prop 1array 1array ;
-
-: scaffold ( class index realm -- )
- -rot dupd "crud-index" set-word-prop
- [ define-lookup ] keep [ define-lookup* ] keep
- [ get-global [ { } over set-global ] unless ] keep
- [ define-list { } rot define-authenticated-action ] 2keep
- [ dup define-show swap scaffold-params rot
- define-authenticated-action ] 2keep
- [ dup define-edit swap scaffold-params rot
- define-authenticated-action ] 2keep
- [ define-new { } rot define-authenticated-action ] 2keep
- [ dup define-update swap "slot-names" word-prop
- "crud-index" add [ 1array ] map rot
- define-authenticated-action ] 2keep
- dup define-delete swap scaffold-params rot
- define-authenticated-action ;
-
-HELP: scaffold
-{ $values { "class" class } { "index" "an index" } { "realm" "a realm" } }
-"If realm is not f, then realm is used as the basic authentication realm for the scaffolding actions." ;
-
-ARTICLE: { "furnace" "crud" } "CRUD Scaffolding"
-{ $code
- "\"libs/furnace\" require"
- "USING: furnace httpd threads ;"
- "IN: furnace:crud-example"
- "TUPLE: foo bar baz ;"
- "\"crud-example\" \"foo-list\" f web-app"
- "foo \"bar\" f scaffold"
- "[ 8888 httpd ] in-thread"
-} ;
\ No newline at end of file
--- /dev/null
+USING: assocs calendar init kernel math.parser namespaces random ;
+IN: furnace.sessions
+
+SYMBOL: sessions
+
+[ H{ } clone sessions set-global ] "furnace.sessions" add-init-hook
+
+: new-session-id ( -- str )
+ 1 big-random number>string ;
+
+TUPLE: session created last-seen user-agent namespace ;
+
+: <session> ( -- obj )
+ now dup H{ } clone
+ [ set-session-created set-session-last-seen set-session-namespace ]
+ \ session construct ;
+
+: new-session ( -- obj id )
+ <session> new-session-id [ sessions get-global set-at ] 2keep ;
+
+: get-session ( id -- obj/f )
+ sessions get-global at* [ "no session found 1" throw ] unless ;
+
+: destroy-session ( id -- )
+ sessions get-global delete-at ;
+
+: session> ( str -- obj )
+ session get session-namespace at ;
+
+: >session ( value key -- )
+ session get session-namespace set-at ;
! Copyright (C) 2007 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: parser-combinators regexp lazy-lists sequences kernel
-promises ;
+promises strings ;
IN: globs
<PRIVATE
-: 'char'
- [ ",*?" member? not ] satisfy ;
+: 'char' [ ",*?" member? not ] satisfy ;
-: 'string'
- 'char' <+> [ token ] <@ ;
+: 'string' 'char' <+> [ >lower token ] <@ ;
-: 'escaped-char'
- "\\" token any-char-parser &> [ 1token ] <@ ;
+: 'escaped-char' "\\" token any-char-parser &> [ 1token ] <@ ;
-: 'escaped-string'
- 'string' 'escaped-char' <|> ;
+: 'escaped-string' 'string' 'escaped-char' <|> ;
DEFER: 'term'
: <glob> 'glob' just parse-1 just ;
: glob-matches? ( input glob -- ? )
- <glob> parse nil? not ;
+ >r >lower r> <glob> parse nil? not ;
-USING: alien.c-types hardware-info kernel math namespaces windows windows.kernel32 ;
+USING: alien.c-types hardware-info hardware-info.windows
+kernel math namespaces windows windows.kernel32 ;
IN: hardware-info.windows.ce
-TUPLE: wince ;
T{ wince } os set-global
: memory-status ( -- MEMORYSTATUS )
-USING: alien alien.c-types hardware-info kernel libc math namespaces
+USING: alien alien.c-types hardware-info hardware-info.windows
+kernel libc math namespaces
windows windows.advapi32 windows.kernel32 ;
IN: hardware-info.windows.nt
-TUPLE: winnt ;
T{ winnt } os set-global
: memory-status ( -- MEMORYSTATUSEX )
USING: alien alien.c-types kernel libc math namespaces
-windows windows.kernel32 windows.advapi32 hardware-info ;
+windows windows.kernel32 windows.advapi32 hardware-info
+words ;
IN: hardware-info.windows
TUPLE: wince ;
: sse3? ( -- ? )
PF_SSE3_INSTRUCTIONS_AVAILABLE feature-present? ;
+: <u16-string-object> ( n -- obj )
+ "ushort" <c-array> ;
+
+: get-directory ( word -- str )
+ >r MAX_UNICODE_PATH [ <u16-string-object> ] keep dupd r>
+ execute win32-error=0/f alien>u16-string ; inline
+
+: windows-directory ( -- str )
+ \ GetWindowsDirectory get-directory ;
+
+: system-directory ( -- str )
+ \ GetSystemDirectory get-directory ;
+
+: system-windows-directory ( -- str )
+ \ GetSystemWindowsDirectory get-directory ;
+
USE-IF: wince? hardware-info.windows.ce
USE-IF: winnt? hardware-info.windows.nt
+++ /dev/null
-{ $subheading "Performance" }
-{ $list
- { "Continuations are now supported by the static stack effect system. This means that the " { $link infer } " word and the optimizing compiler now both support code which uses continuations." }
- { "Many words which previously ran in the interpreter, such as error handling and I/O, are now compiled to optimized machine code." }
- { "A non-optimizing, just-in-time compiler replaces the interpreter with no loss in functionality or introspective ability." }
- { "The non-optimizing compiler compiles quotations the first time they are called, generating a series of stack pushes and subroutine calls." }
- { "The optimizing compiler now performs some more representation inference. Alien pointers are unboxed where possible. This improves performance of the " { $vocab-link "ogg.player" } " Ogg Theora video player considerably." }
- { "The queue of sleeping tasks is now a sorted priority queue. This improves performance considerably when there is a large number of sleeping threads (Doug Coleman)" }
- { "Improved hash code algorithm for sequences" }
- { "New, efficient implementations of " { $link bit? } " and " { $link log2 } " runs in constant time for large bignums" }
- { "New " { $link big-random } " word for generating large random numbers quickly" }
- { "Improved profiler no longer has to be explicitly enabled and disabled with a recompile step; instead, the " { $link profile } " word can be used at any time, and it dynamically patches all words in the code heap to increment call counts. There is no overhead when the profiler is not in use." }
-}
-{ $subheading "IO" }
-{ $list
- { "The " { $link "stream-protocol" } " has changed" }
- { "New " { $link os-envs } " word to get the current set of environment variables" }
- { "Redesigned " { $vocab-link "io.launcher" } " supports passing environment variables to the child process" }
- { { $link <process-stream> } " implemented on Windows (Doug Coleman)" }
- { "More robust Windows CE native I/O" }
- { "Updated " { $vocab-link "io.mmap" } " for new module system, now supports Windows CE (Doug Coleman)" }
- { { $vocab-link "io.sniffer" } " - packet sniffer library (Doug Coleman, Elie Chaftari)" }
- { { $vocab-link "io.server" } " - improved logging support, logs to a file by default" }
- { { $vocab-link "io.files" } " - several new file system manipulation words added" }
- { { $vocab-link "tar" } " - tar file extraction in pure Factor (Doug Coleman)" }
- { { $vocab-link "unix.linux" } ", " { $vocab-link "raptor" } " - ``Raptor Linux'', a set of alien bindings to low-level Linux features, such as network interface configuration, file system mounting/unmounting, etc, together with experimental boot scripts intended to entirely replace " { $snippet "/sbin/init" } ", " { $vocab-link "/etc/inittab" } " and " { $snippet "/etc/init.d/" } "." }
-}
-{ $subheading "Tools" }
-{ $list
- { "Graphical deploy tool added - see " { $link "ui.tools.deploy" } }
- { "The deploy tool now supports Windows" }
- { { $vocab-link "network-clipboard" } " - clipboard synchronization with a simple TCP/IP protocol" }
-}
-{ $subheading "UI" }
-{ $list
- { { $vocab-link "cairo" } " - updated for new module system, new features (Sampo Vuori)" }
- { { $vocab-link "springies" } " - physics simulation UI demo (Eduardo Cavazos)" }
- { { $vocab-link "ui.gadgets.buttons" } " - added check box and radio button gadgets" }
- { "Double- and triple-click-drag now supported in the editor gadget to select words or lines at a time" }
- { "Windows can be closed on request now using " { $link close-window } }
- { "New icons (Elie Chaftari)" }
-}
-{ $subheading "Other" }
-{ $list
- { "The " { $snippet "queues" } " vocabulary has been removed because its functionality is a subset of " { $vocab-link "dlists" } }
- { "The " { $vocab-link "http.server.responder.cgi" } " vocabulary implements CGI support for the Factor HTTP server." }
- { "The optimizing compiler no longer depends on the number tower and it is possible to bootstrap a minimal image by just passing " { $snippet "-include=compiler" } " to stage 2 bootstrap." }
- { { $vocab-link "benchmarks.knucleotide" } " - new benchmark (Eric Mertens)" }
- { { $vocab-link "channels" } " - concurrent message passing over message channels" }
- { { $vocab-link "destructors" } " - deterministic scope-based resource deallocation (Doug Coleman)" }
- { { $vocab-link "dlists" } " - various updates (Doug Coleman)" }
- { { $vocab-link "editors.notepadpp" } " - Notepad++ integration (Doug Coleman)" }
- { { $vocab-link "heaps" } " - updated for new module system and cleaned up (Doug Coleman)" }
- { { $vocab-link "peg" } " - Parser Expression Grammars, a new appoach to parser construction, similar to parser combinators (Chris Double)" }
- { { $vocab-link "regexp" } " - revived from " { $snippet "unmaintained/" } " and completely redesigned (Doug Coleman)" }
- { { $vocab-link "tuple.lib" } " - some utility words for working with tuples (Doug Coleman)" }
-}
{ "New, efficient implementations of " { $link bit? } " and " { $link log2 } " runs in constant time for large bignums" }
{ "New " { $link big-random } " word for generating large random numbers quickly" }
{ "Improved profiler no longer has to be explicitly enabled and disabled with a full recompile; instead, the " { $link profile } " word can be used at any time, and it dynamically patches words to increment call counts. There is no overhead when the profiler is not in use." }
+ { "Calls to " { $link member? } " with a literal sequence are now open-coded. If there are four or fewer elements, a series of conditionals are generated; if there are more than four elements, there is a hash dispatch followed by conditionals in each branch." }
}
{ $subheading "IO" }
{ $list
{ { $vocab-link "io.server" } " - improved logging support, logs to a file by default" }
{ { $vocab-link "io.files" } " - several new file system manipulation words added" }
{ { $vocab-link "tar" } " - tar file extraction in pure Factor (Doug Coleman)" }
- { { $vocab-link "unix.linux" } ", " { $vocab-link "raptor" } " - ``Raptor Linux'', a set of alien bindings to low-level Linux features, such as network interface configuration, file system mounting/unmounting, etc, together with experimental boot scripts intended to entirely replace " { $snippet "/sbin/init" } ", " { $vocab-link "/etc/inittab" } " and " { $snippet "/etc/init.d/" } " (Eduardo Cavazos)." }
+ { { $vocab-link "unix.linux" } ", " { $vocab-link "raptor" } " - ``Raptor Linux'', a set of alien bindings to low-level Linux features, such as network interface configuration, file system mounting/unmounting, etc, together with experimental boot scripts intended to entirely replace " { $snippet "/sbin/init" } ", " { $snippet "/etc/inittab" } " and " { $snippet "/etc/init.d/" } " (Eduardo Cavazos)." }
}
{ $subheading "Tools" }
{ $list
{ "Windows can be closed on request now using " { $link close-window } }
{ "New icons (Elie Chaftari)" }
}
-{ $subheading "Other" }
+{ $subheading "Libraries" }
{ $list
{ "The " { $snippet "queues" } " vocabulary has been removed because its functionality is a subset of " { $vocab-link "dlists" } }
{ "The " { $vocab-link "webapps.cgi" } " vocabulary implements CGI support for the Factor HTTP server." }
{ { $vocab-link "channels" } " - concurrent message passing over message channels" }
{ { $vocab-link "destructors" } " - deterministic scope-based resource deallocation (Doug Coleman)" }
{ { $vocab-link "dlists" } " - various updates (Doug Coleman)" }
+ { { $vocab-link "editors.emeditor" } " - EmEditor integration (Doug Coleman)" }
+ { { $vocab-link "editors.editplus" } " - EditPlus integration (Aaron Schaefer)" }
{ { $vocab-link "editors.notepadpp" } " - Notepad++ integration (Doug Coleman)" }
+ { { $vocab-link "editors.ted-notepad" } " - TED Notepad integration (Doug Coleman)" }
+ { { $vocab-link "editors.ultraedit" } " - UltraEdit integration (Doug Coleman)" }
+ { { $vocab-link "globs" } " - simple Unix shell-style glob patterns" }
{ { $vocab-link "heaps" } " - updated for new module system and cleaned up (Doug Coleman)" }
{ { $vocab-link "peg" } " - Parser Expression Grammars, a new appoach to parser construction, similar to parser combinators (Chris Double)" }
{ { $vocab-link "regexp" } " - revived from " { $snippet "unmaintained/" } " and completely redesigned (Doug Coleman)" }
- { { $vocab-link "tuple.lib" } " - some utility words for working with tuples (Doug Coleman)" }
+ { { $vocab-link "rss" } " - add Atom feed generation (Daniel Ehrenberg)" }
+ { { $vocab-link "tuples.lib" } " - some utility words for working with tuples (Doug Coleman)" }
+ { { $vocab-link "webapps.pastebin" } " - improved appearance, add Atom feed generation, add syntax highlighting using " { $vocab-link "xmode" } }
+ { { $vocab-link "webapps.planet" } " - add Atom feed generation" }
}
{ $heading "Factor 0.90" }
{ $subheading "Core" }
USING: help.markup help.crossref help.topics help.syntax
-definitions io prettyprint inspector ;
+definitions io prettyprint inspector help.lint arrays math ;
IN: help
ARTICLE: "printing-elements" "Printing markup elements"
}
{ $subsection "element-types" }
"Related words can be cross-referenced:"
-{ $subsection related-words } ;
+{ $subsection related-words }
+{ $see-also "help.lint" } ;
ARTICLE: "help-impl" "Help system implementation"
"Help topic protocol:"
"The help system maintains documentation written in a simple markup language, along with cross-referencing and search. Documentation can either exist as free-standing " { $emphasis "articles" } " or be associated with words."
{ $subsection "browsing-help" }
{ $subsection "writing-help" }
+{ $subsection "help.lint" }
{ $subsection "help-impl" } ;
ABOUT: "help"
{ $description "Calls the quotation to generate a sequence of help topics, and outputs a " { $link $subsection } " for each one." } ;
HELP: ($index)
-{ $values { "seq" "a sequence of help article names and words" } { "quot" "a quotation with stack effect " { $snippet "( topic -- )" } } }
+{ $values { "articles" "a sequence of help articles" } }
{ $description "Writes a list of " { $link $subsection } " elements to the " { $link stdio } " stream." } ;
HELP: xref-help
{ $description "Sorts a sequence of help topics." } ;
{ article-children article-parent xref-help } related-words
+
+HELP: $predicate
+{ $values { "element" "a markup element of the form " { $snippet "{ word }" } } }
+{ $description "Prints the boilerplate description of a class membership predicate word such as " { $link array? } " or " { $link integer? } "." } ;
words assocs definitions generic quotations effects
slots continuations tuples debugger combinators
vocabs help.stylesheet help.topics help.crossref help.markup
-sorting ;
+sorting classes ;
IN: help
GENERIC: word-help* ( word -- content )
[ swap 2array 1array ] [ 2drop f ] if
] ?if ;
+: $predicate ( element -- )
+ { { "object" object } { "?" "a boolean" } } $values
+ [
+ "Tests if the object is an instance of the " ,
+ first "predicating" word-prop \ $link swap 2array ,
+ " class." ,
+ ] { } make $description ;
+
M: word word-help* drop f ;
M: slot-reader word-help* drop \ $slot-reader ;
M: slot-writer word-help* drop \ $slot-writer ;
+M: predicate word-help* drop \ $predicate ;
+
: all-articles ( -- seq )
articles get keys
all-words [ word-help ] subset append ;
USING: help.markup help.syntax ;
IN: help.lint
+HELP: check-help
+{ $description "Checks all word and article help." } ;
+
+HELP: check-vocab-help
+{ $values { "vocab" "a vocabulary specifier" } }
+{ $description "Checks all word help in the given vocabulary." } ;
+
ARTICLE: "help.lint" "Help lint tool"
-"A quick and dirty tool to check documentation in an automated fashion."
+"The " { $vocab-link "help.lint" } " vocabulary implements a tool to check documentation in an automated fashion. You should use this tool to check any documentation that you write."
+$nl
+"To run help lint, use one of the following two words:"
+{ $subsection check-help }
+{ $subsection check-vocab-help }
+"Help lint performs the following checks:"
{ $list
"ensures examples run and produce stated output"
{ "ensures " { $link $see-also } " elements don't contain duplicate entries" }
words strings classes tools.browser namespaces io
io.streams.string prettyprint definitions arrays vectors
combinators splitting debugger hashtables sorting effects vocabs
-vocabs.loader assocs editors continuations classes.predicate ;
+vocabs.loader assocs editors continuations classes.predicate
+macros combinators.lib ;
IN: help.lint
: check-example ( element -- )
stack-effect dup effect-in swap effect-out
append [ string? ] subset prune natural-sort ;
-: check-values ( word element -- )
+: contains-funky-elements? ( element -- ? )
{
$shuffle
$values-x/y
$predicate
$class-description
$error-description
- }
- over [ elements empty? ] curry all?
- pick "declared-effect" word-prop and
- [ extract-values >array >r effect-values >array r> assert= ]
- [ 2drop ] if ;
+ } swap [ elements f like ] curry contains? ;
+
+: check-values ( word element -- )
+ {
+ [ over "declared-effect" word-prop ]
+ [ dup contains-funky-elements? not ]
+ [ over macro? not ]
+ [
+ 2dup extract-values >array
+ >r effect-values >array
+ r> assert=
+ t
+ ]
+ } && 3drop ;
: check-see-also ( word element -- )
nip \ $see-also swap elements [
: check-rendering ( word element -- )
[ help ] string-out drop ;
-: all-word-help ( -- seq )
- all-words [ word-help ] subset ;
+: all-word-help ( words -- seq )
+ [ word-help ] subset ;
TUPLE: help-error topic ;
: <help-error> ( topic delegate -- error )
{ set-help-error-topic set-delegate } help-error construct ;
-: fix-help ( error -- )
- dup delegate error.
- help-error-topic >link edit
- "Press ENTER when done." print flush readln drop
- refresh-all ;
+M: help-error error.
+ "In " write dup help-error-topic ($link) nl
+ delegate error. ;
+
+: check-something ( obj quot -- )
+ over . flush [ <help-error> , ] recover ; inline
: check-word ( word -- )
- dup . flush
- [
- dup word-help [
- 2dup check-examples
- 2dup check-values
- 2dup check-see-also
- 2dup check-modules
- 2dup drop check-rendering
- ] assert-depth 2drop
- ] [
- dupd <help-error> fix-help check-word
- ] recover ;
-
-: check-words ( -- )
- [
- all-vocabs-seq [ vocab-name ] map
- "all-vocabs" set
- all-word-help [ check-word ] each
- ] with-scope ;
+ dup word-help [
+ [
+ dup word-help [
+ 2dup check-examples
+ 2dup check-values
+ 2dup check-see-also
+ 2dup check-modules
+ 2dup drop check-rendering
+ ] assert-depth 2drop
+ ] check-something
+ ] [ drop ] if ;
+
+: check-words ( words -- ) [ check-word ] each ;
: check-article ( article -- )
- dup . flush
[
[ dup check-rendering ] assert-depth drop
- ] [
- dupd <help-error> fix-help check-article
- ] recover ;
+ ] check-something ;
: check-articles ( -- )
articles get keys [ check-article ] each ;
-: check-help ( -- ) check-words check-articles ;
+: with-help-lint ( quot -- )
+ [
+ all-vocabs-seq [ vocab-name ] map "all-vocabs" set
+ call
+ ] { } make [ nl error. ] each ; inline
+
+: check-help ( -- )
+ [ all-words check-words check-articles ] with-help-lint ;
+
+: check-vocab-help ( vocab -- )
+ [
+ child-vocabs [ words check-words ] each
+ ] with-help-lint ;
-: unlinked-words ( -- seq )
+: unlinked-words ( words -- seq )
all-word-help [ article-parent not ] subset ;
: linked-undocumented-words ( -- seq )
--- /dev/null
+USING: assocs html.parser kernel math sequences strings ;
+IN: html.parser.analyzer
+
+: remove-blank-text ( vector -- vector' )
+ [
+ dup tag-name text = [
+ tag-text [ blank? ] all? not
+ ] [
+ drop t
+ ] if
+ ] subset ;
+
+: trim-text ( vector -- vector' )
+ [
+ dup tag-name text = [
+ [ tag-text [ blank? ] trim ] keep
+ [ set-tag-text ] keep
+ ] when
+ ] map ;
+
+: find-by-id ( id vector -- vector )
+ [ tag-attributes "id" swap at = ] curry* subset ;
+
+: find-by-class ( id vector -- vector )
+ [ tag-attributes "class" swap at = ] curry* subset ;
+
+: find-by-name ( str vector -- vector )
+ >r >lower r>
+ [ tag-name = ] curry* subset ;
+
+: find-first-name ( str vector -- i/f tag/f )
+ >r >lower r>
+ [ tag-name = ] curry* find ;
+
+: find-matching-close ( str vector -- i/f tag/f )
+ >r >lower r>
+ [ [ tag-name = ] keep tag-closing? and ] curry* find ;
+
+: find-by-attribute-key ( key vector -- vector )
+ >r >lower r>
+ [ tag-attributes at ] curry* subset
+ [ ] subset ;
+
+: find-by-attribute-key-value ( value key vector -- vector )
+ >r >lower r>
+ [ tag-attributes at over = ] curry* subset nip
+ [ ] subset ;
+
+: find-first-attribute-key-value ( value key vector -- i/f tag/f )
+ >r >lower r>
+ [ tag-attributes at over = ] curry* find rot drop ;
+
+: find-between ( i/f tag/f vector -- vector )
+ pick integer? [
+ rot 1+ tail-slice
+ >r tag-name r>
+ [ find-matching-close drop ] keep swap head
+ ] [
+ 3drop V{ } clone
+ ] if ;
+
+: find-links ( vector -- vector )
+ [ tag-name "a" = ] subset
+ [ tag-attributes "href" swap at ] map
+ [ ] subset ;
+
+
+
+! : find-last-tag ( name vector -- index tag )
+ ! [
+ ! dup tag-matched? [ 2drop f ] [ tag-name = ] if
+ ! ] curry* find-last ;
+
+! : find-last-tag* ( name n vector -- tag )
+ ! 0 -rot <slice> find-last-tag ;
+
+! : find-matching-tag ( tag -- tag )
+ ! dup tag-closing? [
+ ! find-last-tag
+ ! ] [
+ ! ] if ;
+
+
+! clear "/Users/erg/web/fark.html" <file-reader> contents parse-html find-links [ "go.pl" swap start ] subset [ "=" split peek ] map
+! clear "http://fark.com" http-get parse-html find-links [ "go.pl" swap start ] subset [ "=" split peek ] map
+
+! clear "/Users/erg/web/hostels.html" <file-reader> contents parse-html "Currency" "name" pick find-first-attribute-key-value
+
+! clear "/Users/erg/web/hostels.html" <file-reader> contents parse-html
+! "Currency" "name" pick find-first-attribute-key-value
+! pick find-between remove-blank-text
--- /dev/null
+USING: html.parser kernel tools.test ;
+IN: temporary
+
+[
+ V{ T{ tag f "html" H{ } f f f } }
+] [ "<html>" parse-html ] unit-test
+
+[
+ V{ T{ tag f "html" H{ } f f t } }
+] [ "</html>" parse-html ] unit-test
+
+[
+ V{ T{ tag f "a" H{ { "href" "http://factorcode.org/" } } f f f } }
+] [ "<a href=\"http://factorcode.org/\">" parse-html ] unit-test
+
+[
+ V{ T{ tag f "a" H{ { "href" "http://factorcode.org/" } } f f f } }
+] [ "<a href = \"http://factorcode.org/\" >" parse-html ] unit-test
+
+[
+V{
+ T{
+ tag
+ f
+ "a"
+ H{ { "baz" "\"quux\"" } { "foo" "bar's" } }
+ f
+ f
+ f
+ }
+}
+] [ "<a foo=\"bar's\" baz='\"quux\"' >" parse-html ] unit-test
+
+[
+V{
+ T{ tag f "a"
+ H{
+ { "a" "pirsqd" }
+ { "foo" "bar" }
+ { "href" "http://factorcode.org/" }
+ { "baz" "quux" }
+ } f f f }
+}
+] [ "<a href = \"http://factorcode.org/\" foo = bar baz='quux'a=pirsqd >" parse-html ] unit-test
+
+[
+V{
+ T{ tag f "html" H{ } f f f }
+ T{ tag f "head" H{ } f f f }
+ T{ tag f "head" H{ } f f t }
+ T{ tag f "html" H{ } f f t }
+}
+] [ "<html<head</head</html" parse-html ] unit-test
+
+[
+V{
+ T{ tag f "head" H{ } f f f }
+ T{ tag f "title" H{ } f f f }
+ T{ tag f text f "Spagna" f f }
+ T{ tag f "title" H{ } f f t }
+ T{ tag f "head" H{ } f f t }
+}
+] [ "<head<title>Spagna</title></head" parse-html ] unit-test
--- /dev/null
+USING: arrays html.parser.utils hashtables io kernel
+namespaces prettyprint quotations
+sequences splitting state-parser strings ;
+IN: html.parser
+
+TUPLE: tag name attributes text matched? closing? ;
+
+SYMBOL: text
+SYMBOL: dtd
+SYMBOL: comment
+SYMBOL: javascript
+SYMBOL: tagstack
+
+: push-tag ( tag -- )
+ tagstack get push ;
+
+: closing-tag? ( string -- ? )
+ dup empty? [
+ drop f
+ ] [
+ dup first CHAR: / =
+ swap peek CHAR: / = or
+ ] if ;
+
+: <tag> ( name attributes closing? -- tag )
+ { set-tag-name set-tag-attributes set-tag-closing? }
+ tag construct ;
+
+: make-tag ( str attribs -- tag )
+ >r [ closing-tag? ] keep "/" trim1 r> rot <tag> ;
+
+: make-text-tag ( str -- tag )
+ T{ tag f text } clone [ set-tag-text ] keep ;
+
+: make-comment-tag ( str -- tag )
+ T{ tag f comment } clone [ set-tag-text ] keep ;
+
+: make-dtd-tag ( str -- tag )
+ T{ tag f dtd } clone [ set-tag-text ] keep ;
+
+: read-whitespace ( -- str )
+ [ get-char blank? not ] take-until ;
+
+: read-whitespace* ( -- )
+ read-whitespace drop ;
+
+: read-token ( -- str )
+ read-whitespace*
+ [ get-char blank? ] take-until ;
+
+: read-single-quote ( -- str )
+ [ get-char CHAR: ' = ] take-until ;
+
+: read-double-quote ( -- str )
+ [ get-char CHAR: " = ] take-until ;
+
+: read-quote ( -- str )
+ get-char next* CHAR: ' = [
+ read-single-quote
+ ] [
+ read-double-quote
+ ] if next* ;
+
+: read-key ( -- str )
+ read-whitespace*
+ [ get-char CHAR: = = get-char blank? or ] take-until ;
+
+: read-= ( -- )
+ read-whitespace*
+ [ get-char CHAR: = = ] take-until drop next* ;
+
+: read-value ( -- str )
+ read-whitespace*
+ get-char quote? [
+ read-quote
+ ] [
+ read-token
+ ] if ;
+
+: read-comment ( -- )
+ "-->" take-string* make-comment-tag push-tag ;
+
+: read-dtd ( -- )
+ ">" take-string* make-dtd-tag push-tag ;
+
+: read-bang ( -- )
+ next* get-char CHAR: - = get-next CHAR: - = and [
+ next* next*
+ read-comment
+ ] [
+ read-dtd
+ ] if ;
+
+: read-tag ( -- )
+ [ get-char CHAR: > = get-char CHAR: < = or ] take-until
+ get-char CHAR: < = [ next* ] unless ;
+
+: read-< ( -- str )
+ next* get-char CHAR: ! = [
+ read-bang f
+ ] [
+ read-tag
+ ] if ;
+
+: read-until-< ( -- str )
+ [ get-char CHAR: < = ] take-until ;
+
+: parse-text ( -- )
+ read-until-< dup empty? [
+ drop
+ ] [
+ make-text-tag push-tag
+ ] if ;
+
+: (parse-attributes) ( -- )
+ read-whitespace*
+ string-parse-end? [
+ read-key >lower read-= read-value
+ 2array , (parse-attributes)
+ ] unless ;
+
+: parse-attributes ( -- hashtable )
+ [ (parse-attributes) ] { } make >hashtable ;
+
+: (parse-tag)
+ [
+ read-token >lower
+ parse-attributes
+ ] string-parse ;
+
+: parse-tag ( -- )
+ read-< dup empty? [
+ drop
+ ] [
+ (parse-tag) make-tag push-tag
+ ] if ;
+
+: (parse-html) ( tag -- )
+ get-next [
+ parse-text
+ parse-tag
+ (parse-html)
+ ] when ;
+
+: tag-parse ( quot -- vector )
+ [
+ V{ } clone tagstack set
+ string-parse
+ ] with-scope ;
+
+: parse-html ( string -- vector )
+ [
+ (parse-html)
+ tagstack get
+ ] tag-parse ;
--- /dev/null
+USING: assocs html.parser html.parser.utils combinators
+continuations hashtables
+hashtables.private io kernel math
+namespaces prettyprint quotations sequences splitting
+state-parser strings ;
+IN: html.parser.printer
+
+SYMBOL: no-section
+SYMBOL: html
+SYMBOL: head
+SYMBOL: body
+TUPLE: state section ;
+
+! TUPLE: text bold? underline? strikethrough? ;
+
+TUPLE: text-printer ;
+TUPLE: ui-printer ;
+TUPLE: src-printer ;
+UNION: printer text-printer ui-printer src-printer ;
+HOOK: print-tag printer ( tag -- )
+HOOK: print-text-tag printer ( tag -- )
+HOOK: print-comment-tag printer ( tag -- )
+HOOK: print-dtd-tag printer ( tag -- )
+HOOK: print-opening-named-tag printer ( tag -- )
+HOOK: print-closing-named-tag printer ( tag -- )
+
+: print-tags ( vector -- )
+ [ print-tag ] each ;
+
+: html-text. ( vector -- )
+ [
+ T{ text-printer } printer set
+ print-tags
+ ] with-scope ;
+
+: html-src. ( vector -- )
+ [
+ T{ src-printer } printer set
+ print-tags
+ ] with-scope ;
+
+M: printer print-text-tag ( tag -- )
+ tag-text write ;
+
+M: printer print-comment-tag ( tag -- )
+ "<!--" write
+ tag-text write
+ "-->" write ;
+
+M: printer print-dtd-tag
+ "<!" write
+ tag-text write
+ ">" write ;
+
+M: printer print-opening-named-tag ( tag -- )
+ dup tag-name {
+ { "html" [ drop ] }
+ { "head" [ drop ] }
+ { "body" [ drop ] }
+ { "title" [ "Title: " write tag-text print ] }
+ } case ;
+
+M: printer print-closing-named-tag ( tag -- )
+ drop ;
+
+: print-attributes ( hashtable -- )
+ [
+ swap bl write "=" write ?quote write
+ ] assoc-each ;
+
+M: src-printer print-opening-named-tag ( tag -- )
+ "<" write
+ dup tag-name write
+ tag-attributes dup assoc-empty? [ drop ] [ print-attributes ] if
+ ">" write ;
+
+M: src-printer print-closing-named-tag ( tag -- )
+ "</" write
+ tag-name write
+ ">" write ;
+
+TUPLE: unknown-tag-error tag ;
+
+C: <unknown-tag-error> unknown-tag-error
+
+M: printer print-tag ( tag -- )
+ {
+ { [ dup tag-name text = ] [ print-text-tag ] }
+ { [ dup tag-name comment = ] [ print-comment-tag ] }
+ { [ dup tag-name dtd = ] [ print-dtd-tag ] }
+ { [ dup tag-name string? over tag-closing? and ]
+ [ print-closing-named-tag ] }
+ { [ dup tag-name string? ]
+ [ print-opening-named-tag ] }
+ { [ t ] [ <unknown-tag-error> throw ] }
+ } cond ;
+
+SYMBOL: tablestack
+
+: with-html-printer
+ [
+ V{ } clone tablestack set
+ ] with-scope ;
+
+! { { 1 2 } { 3 4 } }
+! H{ { table-gap { 10 10 } } } [
+ ! [ [ [ [ . ] with-cell ] each ] with-row ] each
+! ] tabular-output
--- /dev/null
+USING: assocs combinators continuations hashtables
+hashtables.private io kernel math
+namespaces prettyprint quotations sequences splitting
+state-parser strings tools.test ;
+USING: html.parser.utils ;
+IN: temporary
+
+[ "'Rome'" ] [ "Rome" single-quote ] unit-test
+[ "\"Roma\"" ] [ "Roma" double-quote ] unit-test
+[ "'Firenze'" ] [ "Firenze" quote ] unit-test
+[ "\"Caesar's\"" ] [ "Caesar's" quote ] unit-test
+[ f ] [ "" quoted? ] unit-test
+[ t ] [ "''" quoted? ] unit-test
+[ t ] [ "\"\"" quoted? ] unit-test
+[ t ] [ "\"Circus Maximus\"" quoted? ] unit-test
+[ t ] [ "'Circus Maximus'" quoted? ] unit-test
+[ f ] [ "Circus Maximus" quoted? ] unit-test
+[ "'Italy'" ] [ "Italy" ?quote ] unit-test
+[ "'Italy'" ] [ "'Italy'" ?quote ] unit-test
+[ "\"Italy\"" ] [ "\"Italy\"" ?quote ] unit-test
+[ "Italy" ] [ "Italy" unquote ] unit-test
+[ "Italy" ] [ "'Italy'" unquote ] unit-test
+[ "Italy" ] [ "\"Italy\"" unquote ] unit-test
+
--- /dev/null
+USING: assocs circular combinators continuations hashtables
+hashtables.private io kernel math
+namespaces prettyprint quotations sequences splitting
+state-parser strings ;
+USING: html.parser ;
+IN: html.parser.utils
+
+: string-parse-end?
+ get-next not ;
+
+: take-string* ( match -- string )
+ dup length <circular-string>
+ [ 2dup string-matches? ] take-until nip
+ dup length rot length 1- - head next* ;
+
+: trim1 ( seq ch -- newseq )
+ [ ?head drop ] keep ?tail drop ;
+
+: single-quote ( str -- newstr )
+ >r "'" r> "'" 3append ;
+
+: double-quote ( str -- newstr )
+ >r "\"" r> "\"" 3append ;
+
+: quote ( str -- newstr )
+ CHAR: ' over member?
+ [ double-quote ] [ single-quote ] if ;
+
+: quoted? ( str -- ? )
+ dup length 1 > [
+ [ first ] keep peek [ = ] keep "'\"" member? and
+ ] [
+ drop f
+ ] if ;
+
+: ?quote ( str -- newstr )
+ dup quoted? [ quote ] unless ;
+
+: unquote ( str -- newstr )
+ dup quoted? [ 1 head-slice* 1 tail-slice >string ] when ;
+
+: quote? ( ch -- ? ) "'\"" member? ;
+
dup letter?
over LETTER? or
over digit? or
- swap "/_?." member? or ; foldable
+ swap "/_-?." member? or ; foldable
: url-encode ( str -- str )
[
: url-decode ( str -- str )
[ 0 swap url-decode-iter ] "" make ;
-: build-url ( path query-params -- str )
+: hash>query ( hash -- str )
+ [ [ url-encode ] 2apply "=" swap 3append ] { } assoc>map
+ "&" join ;
+
+: build-url ( str query-params -- newstr )
[
- swap % dup assoc-empty? [
- "?" % dup
- [ [ url-encode ] 2apply "=" swap 3append ] { } assoc>map
- "&" join %
- ] unless drop
+ over %
+ dup assoc-empty? [
+ 2drop
+ ] [
+ CHAR: ? rot member? "&" "?" ? %
+ hash>query %
+ ] if
] "" make ;
+
! See http://factorcode.org/license.txt for BSD license.
!
-USING: arrays combinators io io.binary io.files io.utf16 kernel math math.parser namespaces sequences splitting strings assocs ;
+USING: arrays combinators io io.binary io.files io.paths
+io.utf16 kernel math math.parser namespaces sequences
+splitting strings assocs ;
IN: id3
: id3v2 ( filename -- tag/f )
<file-reader> [ read-tag ] with-stream ;
-: append-path ( path files -- paths )
- [ path+ ] curry* map ;
-
-: get-paths ( dir -- paths )
- dup directory keys append-path ;
-
-: (walk-dir) ( path -- )
- dup directory? [ get-paths dup % [ (walk-dir) ] each ] [ drop ] if ;
-
-: walk-dir ( path -- seq )
- [ (walk-dir) ] { } make ;
-
: file? ( path -- ? )
stat 3drop not ;
--- /dev/null
+USING: assocs io.files kernel namespaces sequences ;
+IN: io.paths
+
+: find-file ( seq str -- path/f )
+ [
+ [ path+ exists? ] curry find nip
+ ] keep over [ path+ ] [ drop ] if ;
+
+<PRIVATE
+: append-path ( path files -- paths )
+ [ path+ ] curry* map ;
+
+: get-paths ( dir -- paths )
+ dup directory keys append-path ;
+
+: (walk-dir) ( path -- )
+ dup directory? [
+ get-paths dup % [ (walk-dir) ] each
+ ] [
+ drop
+ ] if ;
+PRIVATE>
+
+: walk-dir ( path -- seq ) [ (walk-dir) ] { } make ;
! M: windows-ce-io normalize-pathname ( string -- string )
! dup 1 tail* CHAR: \\ = [ "*" append ] [ "\\*" append ] if ;
-M: windows-ce-io CreateFile-flags ( -- DWORD ) FILE_ATTRIBUTE_NORMAL ;
+M: windows-ce-io CreateFile-flags ( DWORD -- DWORD )
+ FILE_ATTRIBUTE_NORMAL bitor ;
M: windows-ce-io FileArgs-overlapped ( port -- f ) drop f ;
: finish-read ( port status bytes-ret -- )
pass-environment? [
[
get-environment
- [ swap % "=" % % "\0" % ] assoc-each
+ [ "=" swap 3append string>u16-alien % ] assoc-each
"\0" %
- ] "" make >c-ushort-array
+ ] { } make >c-ushort-array
over set-CreateProcess-args-lpEnvironment
] when ;
: mmap-open ( path access-mode create-mode flProtect access -- handle handle address )
{ "SeCreateGlobalPrivilege" "SeLockMemoryPrivilege" } [
- >r >r open-file dup f r> 0 0 f
+ >r >r 0 open-file dup f r> 0 0 f
CreateFileMapping [ win32-error=0/f ] keep
dup close-later
dup
{ [ dup ".\\" head? ] [
>r unicode-prefix cwd r> 1 tail 3append
] }
- ! c:\\
+ ! c:\\foo
{ [ dup 1 tail ":" head? ] [ >r unicode-prefix r> append ] }
! \\\\?\\c:\\foo
{ [ dup unicode-prefix head? ] [ ] }
dup first CHAR: \\ = [ CHAR: \\ , ] unless %
] "" make
] }
- } cond [ "/\\." member? ] right-trim ;
+ } cond [ "/\\." member? ] right-trim
+ dup peek CHAR: : = [ "\\" append ] when ;
SYMBOL: io-hash
threads windows windows.kernel32 ;
IN: io.windows.nt.files
-M: windows-nt-io CreateFile-flags ( -- DWORD )
- FILE_FLAG_OVERLAPPED ;
+M: windows-nt-io CreateFile-flags ( DWORD -- DWORD )
+ FILE_FLAG_OVERLAPPED bitor ;
M: windows-nt-io FileArgs-overlapped ( port -- overlapped )
make-overlapped ;
io.buffers io.files io.nonblocking io.sockets io.binary
io.sockets.impl windows.errors strings io.streams.duplex kernel
math namespaces sequences windows windows.kernel32
-windows.winsock splitting ;
+windows.shell32 windows.winsock splitting ;
IN: io.windows
TUPLE: windows-nt-io ;
: <win32-duplex-stream> ( in out -- stream )
>r f <win32-file> r> f <win32-file> handle>duplex-stream ;
-HOOK: CreateFile-flags io-backend ( -- DWORD )
+HOOK: CreateFile-flags io-backend ( DWORD -- DWORD )
HOOK: FileArgs-overlapped io-backend ( port -- overlapped/f )
HOOK: add-completion io-backend ( port -- )
"\\" ?tail drop "\\*" append ;
: share-mode ( -- fixnum )
- FILE_SHARE_READ FILE_SHARE_WRITE bitor ; inline
+ FILE_SHARE_READ FILE_SHARE_WRITE bitor
+ FILE_SHARE_DELETE bitor ; foldable
M: win32-file init-handle ( handle -- )
drop ;
win32-file-handle CloseHandle drop ;
! Clean up resources (open handle) if add-completion fails
-: open-file ( path access-mode create-mode -- handle )
+: open-file ( path access-mode create-mode flags -- handle )
[
- >r share-mode f r> CreateFile-flags f CreateFile
+ >r >r >r normalize-pathname r>
+ share-mode f r> r> CreateFile-flags f CreateFile
dup invalid-handle? dup close-later
dup add-completion
] with-destructors ;
: open-pipe-r/w ( path -- handle )
- GENERIC_READ GENERIC_WRITE bitor OPEN_EXISTING open-file ;
+ GENERIC_READ GENERIC_WRITE bitor OPEN_EXISTING 0 open-file ;
: open-read ( path -- handle length )
- normalize-pathname GENERIC_READ OPEN_EXISTING open-file 0 ;
+ GENERIC_READ OPEN_EXISTING 0 open-file 0 ;
: open-write ( path -- handle length )
- normalize-pathname GENERIC_WRITE CREATE_ALWAYS open-file 0 ;
+ GENERIC_WRITE CREATE_ALWAYS 0 open-file 0 ;
: (open-append) ( path -- handle )
- normalize-pathname GENERIC_WRITE OPEN_ALWAYS open-file ;
+ GENERIC_WRITE OPEN_ALWAYS 0 open-file ;
: set-file-pointer ( handle length -- )
dupd d>w/w <uint> FILE_BEGIN SetFilePointer
{ $values { "list1" "a list" } { "list2" "a list" } { "result" "lazy list merging list1 and list2" } }
{ $description "Return the result of merging the two lists in a lazy manner." }
{ $examples
- { $example "{ 1 2 3 } >list { 4 5 6 } >list lmerge list>array ." "{ 1 4 2 5 3 6 }" }
+ { $example "USE: lazy-lists" "{ 1 2 3 } >list { 4 5 6 } >list lmerge list>array ." "{ 1 4 2 5 3 6 }" }
}
{ $see-also leach lmap lmap-with lconcat ltake lsubset lfrom-by lcartesian-product lcomp } ;
<PRIVATE
: $with-locals-note
- {
+ drop {
"This form must appear either in a word defined by " { $link POSTPONE: :: } " or " { $link POSTPONE: MACRO:: } ", or alternatively, " { $link with-locals } " must be called on the top-level form of the word to perform closure conversion."
} $notes ;
{ $description "Introduces a set of lexical bindings and evaluates the body. The values are evaluated in parallel, and may not refer to other bindings within the same " { $link POSTPONE: [let } " form; for Lisp programmers, this means that Factor's " { $link POSTPONE: [let } " is equivalent to the Lisp " { $snippet "let" } ", not " { $snippet "let*" } "." }
{ $examples
{ $example
- "USE: locals"
+ "USING: locals math.functions ;"
":: frobnicate | n seq |"
" [let | n' [ n 6 * ] |"
- " seq [ n' gcd ] map ] ;"
+ " seq [ n' gcd nip ] map ] ;"
"6 { 36 14 } frobnicate ."
"{ 36 2 }"
}
{ $description "Outputs an integer " { $snippet "y" } " such that " { $snippet "xy = 1 (mod n)" } "." }
{ $errors "Throws an error if " { $snippet "n" } " is not invertible modulo " { $snippet "n" } "." }
{ $examples
- { $example "173 1119 mod-inv ." "815" }
- { $example "173 815 * 1119 mod ." "1" }
+ { $example "USE: math.functions" "173 1119 mod-inv ." "815" }
+ { $example "USE: math.functions" "173 815 * 1119 mod ." "1" }
} ;
HELP: each-bit
{ $values { "n" integer } { "quot" "a quotation with stack effect " { $snippet "( ? -- )" } } }
{ $description "Applies the quotation to each bit of the integer, starting from the least significant bit, and stopping at the last bit from which point on all bits are either clear (if the integer is positive) or all bits are set (if the integer is negataive)." }
{ $examples
- { $example "[ BIN: 1101 [ , ] each-bit ] { } make ." "{ t f t t }" }
- { $example "[ -3 [ , ] each-bit ] { } make ." "{ f t }" }
+ { $example "USE: math.functions" "[ BIN: 1101 [ , ] each-bit ] { } make ." "{ t f t t }" }
+ { $example "USE: math.functions" "[ -3 [ , ] each-bit ] { } make ." "{ t f }" }
} ;
HELP: ~
-{ $values { "x" real } { "y" real } { "epsilon" real } }
+{ $values { "x" real } { "y" real } { "epsilon" real } { "?" "a boolean" } }
{ $description "Tests if " { $snippet "x" } " and " { $snippet "y" } " are approximately equal to each other. There are three possible comparison tests, chosen based on the sign of " { $snippet "epsilon" } ":"
{ $list
{ { $snippet "epsilon" } " is zero: exact comparison." }
{ $warning "Calls to " { $link activate-model } " and " { $link deactivate-model } " should be balanced to keep the reference counting consistent, otherwise " { $link model-changed } " might be called at the wrong time or not at all." } ;
HELP: model-changed
-{ $values { "observer" object } }
+{ $values { "model" model } { "observer" object } }
{ $contract "Called to notify observers of a model that the model value has changed as a result of a call to " { $link set-model } ". Observers can be registered with " { $link add-connection } "." } ;
{ add-connection remove-connection model-changed } related-words
--- /dev/null
+Daniel Ehrenberg
--- /dev/null
+USING: help.markup help.syntax multiline ;
+
+HELP: STRING:
+{ $syntax "STRING: name\nfoo\n;" }
+{ $description "Forms a multiline string literal, or 'here document' stored in the word called name. A semicolon is used to signify the end, and that semicolon must be on a line by itself, not preceeded or followed by any whitespace. The string will have newlines in between lines but not at the end, unless there is a blank line before the semicolon." } ;
+
+HELP: <"
+{ $syntax "<\" text \">" }
+{ $description "This forms a multiline string literal ending in \">. Unlike the " { $link POSTPONE: STRING: } " form, you can end it in the middle of a line. This construct is non-nesting. In the example above, the string would be parsed as \"text\"." } ;
+
+{ POSTPONE: <" POSTPONE: STRING: } related-words
+
+HELP: parse-here
+{ $values { "str" "a string" } }
+{ $description "Parses a multiline string literal, as used by " { $link POSTPONE: STRING: } "." } ;
+
+HELP: parse-multiline-string
+{ $values { "end-text" "a string delineating the end" } { "str" "the parsed string" } }
+{ $description "Parses a multiline string literal, as used by " { $link POSTPONE: <" } ". The end-text is the delimiter for the end." } ;
+
+{ parse-here parse-multiline-string } related-words
--- /dev/null
+USING: multiline tools.test ;
+
+STRING: test-it
+foo
+bar
+
+;
+
+[ "foo\nbar\n" ] [ test-it ] unit-test
+[ "foo\nbar\n" ] [ <" foo
+bar
+ "> ] unit-test
--- /dev/null
+! Copyright (C) 2007 Daniel Ehrenberg
+! See http://factorcode.org/license.txt for BSD license.
+USING: namespaces parser kernel sequences words quotations math ;
+IN: multiline
+
+: next-line-text ( -- str )
+ lexer get dup next-line line-text ;
+
+: (parse-here) ( -- )
+ next-line-text dup ";" =
+ [ drop lexer get next-line ] [ % "\n" % (parse-here) ] if ;
+
+: parse-here ( -- str )
+ [ (parse-here) ] "" make 1 head*
+ lexer get next-line ;
+
+: STRING:
+ CREATE dup reset-generic
+ parse-here 1quotation define-compound ; parsing
+
+: (parse-multiline-string) ( start-index end-text -- end-index )
+ lexer get line-text 2dup start
+ [ rot dupd >r >r swap subseq % r> r> length + ] [
+ rot tail % "\n" % 0
+ lexer get next-line swap (parse-multiline-string)
+ ] if* ;
+
+: parse-multiline-string ( end-text -- str )
+ [
+ lexer get lexer-column swap (parse-multiline-string)
+ lexer get set-lexer-column
+ ] "" make 1 tail 1 head* ;
+
+: <"
+ "\">" parse-multiline-string parsed ; parsing
--- /dev/null
+Multiline string literals
glLoadIdentity
-1.5 0.0 -6.0 glTranslatef
dup nehe4-gadget-rtri 0.0 1.0 0.0 glRotatef
-
+
GL_TRIANGLES [
1.0 0.0 0.0 glColor3f
0.0 1.0 0.0 glVertex3f
1.0 1.0 0.0 glVertex3f
1.0 -1.0 0.0 glVertex3f
-1.0 -1.0 0.0 glVertex3f
- ] do-state
+ ] do-state
dup nehe4-gadget-rtri 0.2 + over set-nehe4-gadget-rtri
dup nehe4-gadget-rquad 0.15 - swap set-nehe4-gadget-rquad ;
-
-: nehe4-update-thread ( gadget -- )
- dup nehe4-gadget-quit? [
- redraw-interval sleep
- dup relayout-1
- nehe4-update-thread
- ] unless ;
+
+: nehe4-update-thread ( gadget -- )
+ dup nehe4-gadget-quit? [ drop ] [
+ redraw-interval sleep
+ dup relayout-1
+ nehe4-update-thread
+ ] if ;
M: nehe4-gadget graft* ( gadget -- )
- [ f swap set-nehe4-gadget-quit? ] keep
- [ nehe4-update-thread ] in-thread drop ;
+ [ f swap set-nehe4-gadget-quit? ] keep
+ [ nehe4-update-thread ] in-thread drop ;
M: nehe4-gadget ungraft* ( gadget -- )
- t swap set-nehe4-gadget-quit? ;
+ t swap set-nehe4-gadget-quit? ;
: run4 ( -- )
<nehe4-gadget> "NeHe Tutorial 4" open-window ;
{ { } } [
"234" "1" token <+> parse list>array
] unit-test
-
-
! Copyright (C) 2004 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
USING: lazy-lists promises kernel sequences strings math
-arrays splitting ;
+arrays splitting quotations combinators namespaces ;
IN: parser-combinators
! Parser combinator protocol
C: <parse-result> parse-result
-TUPLE: token-parser string ;
+: <parse-results> ( parsed unparsed -- list )
+ <parse-result> 1list ;
-C: token token-parser ( string -- parser )
+: parse-result-parsed-slice ( parse-result -- slice )
+ dup parse-result-parsed empty? [
+ parse-result-unparsed 0 0 rot <slice>
+ ] [
+ dup parse-result-unparsed
+ dup slice-from [ rot parse-result-parsed length - ] keep
+ rot slice-seq <slice>
+ ] if ;
-M: token-parser parse ( input parser -- list )
- token-parser-string swap over ?head-slice [
- <parse-result> 1list
+: string= ( str1 str2 ignore-case -- ? )
+ [ [ >upper ] 2apply ] when sequence= ;
+
+: string-head? ( str head ignore-case -- ? )
+ pick pick shorter? [
+ 3drop f
] [
- 2drop nil
+ >r [ length head-slice ] keep r> string=
] if ;
+: ?string-head ( str head ignore-case -- newstr ? )
+ >r 2dup r> string-head?
+ [ length tail-slice t ] [ drop f ] if ;
+
+TUPLE: token-parser string ignore-case? ;
+
+C: <token-parser> token-parser
+
+: token ( string -- parser ) f <token-parser> ;
+
+: case-insensitive-token ( string -- parser ) t <token-parser> ;
+
+M: token-parser parse ( input parser -- list )
+ dup token-parser-string swap token-parser-ignore-case?
+ >r tuck r> ?string-head
+ [ <parse-results> ] [ 2drop nil ] if ;
+
: 1token ( n -- parser ) 1string token ;
TUPLE: satisfy-parser quot ;
over empty? [
2drop nil
] [
- satisfy-parser-quot >r unclip-slice dup r> call [
- swap <parse-result> 1list
- ] [
- 2drop nil
- ] if
+ satisfy-parser-quot >r unclip-slice dup r> call
+ [ swap <parse-results> ] [ 2drop nil ] if
] if ;
LAZY: any-char-parser ( -- parser )
#! does not consume any input and always returns
#! an empty list as the parse tree with the
#! unmodified input.
- drop "" swap <parse-result> 1list ;
+ drop "" swap <parse-results> ;
TUPLE: succeed-parser result ;
M: succeed-parser parse ( input parser -- list )
#! A parser that always returns 'result' as a
#! successful parse with no input consumed.
- succeed-parser-result swap <parse-result> 1list ;
+ succeed-parser-result swap <parse-results> ;
TUPLE: fail-parser ;
#! an empty list of successes.
2drop nil ;
+TUPLE: ensure-parser test ;
+
+: ensure ( parser -- ensure )
+ ensure-parser construct-boa ;
+
+M: ensure-parser parse ( input parser -- list )
+ 2dup ensure-parser-test parse nil?
+ [ 2drop nil ] [ drop t swap <parse-results> ] if ;
+
+TUPLE: ensure-not-parser test ;
+
+: ensure-not ( parser -- ensure )
+ ensure-not-parser construct-boa ;
+
+M: ensure-not-parser parse ( input parser -- list )
+ 2dup ensure-not-parser-test parse nil?
+ [ drop t swap <parse-results> ] [ 2drop nil ] if ;
+
TUPLE: and-parser parsers ;
: <&> ( parser1 parser2 -- parser )
C: <@ apply-parser ( parser quot -- parser )
M: apply-parser parse ( input parser -- result )
- #! Calls the parser on the input. For each successfull
+ #! Calls the parser on the input. For each successful
#! parse the quot is call with the parse result on the stack.
#! The result of that quotation then becomes the new parse result.
#! This allows modification of parse tree results (like
LAZY: <?> ( parser -- parser )
#! Return a parser that optionally uses the parser
- #! if that parser would be successfull.
+ #! if that parser would be successful.
[ 1array ] <@ f succeed <|> ;
TUPLE: only-first-parser p1 ;
#! required.
<?> only-first ;
+LAZY: <(?)> ( parser -- parser )
+ #! Like <?> but take shortest match first.
+ f succeed swap [ 1array ] <@ <|> ;
+
LAZY: <(*)> ( parser -- parser )
#! Like <*> but take shortest match first.
#! Implementation by Matthew Willis.
LAZY: surrounded-by ( parser start end -- parser' )
[ token ] 2apply swapd pack ;
+
+: flatten* ( obj -- )
+ dup array? [ [ flatten* ] each ] [ , ] if ;
+
+: flatten [ flatten* ] { } make ;
+
+: exactly-n ( parser n -- parser' )
+ swap <repetition> <and-parser> [ flatten ] <@ ;
+
+: at-most-n ( parser n -- parser' )
+ dup zero? [
+ 2drop epsilon
+ ] [
+ 2dup exactly-n
+ -rot 1- at-most-n <|>
+ ] if ;
+
+: at-least-n ( parser n -- parser' )
+ dupd exactly-n swap <*> <&> ;
+
+: from-m-to-n ( parser m n -- parser' )
+ >r [ exactly-n ] 2keep r> swap - at-most-n <:&:> ;
"Write the object to the standard output stream, unless "
"it is an array, in which case recurse through the array "
"writing each object to the stream." }
-{ $example "[ { 65 \"bc\" { 68 \"ef\" } } tree-write ] string-out ." "\"AbcDef\"" } ;
+{ $example "USE: parser-combinators" "{ 65 \"bc\" { 68 \"ef\" } } tree-write" "AbcDef" } ;
HELP: search
{ $values
"parser."
}
-{ $example "\"one 123 two 456\" 'integer' search ." "{ 123 456 }" }
-{ $example "\"one 123 \\\"hello\\\" two 456\" 'integer' 'string' <|> search ." "{ 123 \"hello\" 456 }" }
+{ $example "USE: parser-combinators" "\"one 123 two 456\" 'integer' search ." "{ 123 456 }" }
+{ $example "USE: parser-combinators" "\"one 123 \\\"hello\\\" two 456\" 'integer' 'string' <|> search ." "{ 123 \"hello\" 456 }" }
{ $see-also search* replace replace* } ;
HELP: search*
"parsers in the 'parsers' sequence."
}
-{ $example "\"one 123 \\\"hello\\\" two 456\" 'integer' 'string' 2array search* ." "{ 123 \"hello\" 456 }" }
+{ $example "USE: parser-combinators" "\"one 123 \\\"hello\\\" two 456\" 'integer' 'string' 2array search* ." "{ 123 \"hello\" 456 }" }
{ $see-also search replace replace* } ;
HELP: replace
"successfully parse with the given parser replaced with "
"the result of that parser."
}
-{ $example "\"one 123 two 456\" 'integer' [ 2 * number>string ] <@ replace ." "\"one 246 two 912\"" }
-{ $example "\"hello *world* from *factor*\" 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@ replace ." "\"hello <strong>world</strong> from <strong>factor</strong>\"" }
-{ $example "\"hello *world* from _factor_\"\n 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@\n 'italic' [ \"<emphasis>\" swap \"</emphasis>\" 3append ] <@ <|>\n replace ." "\"hello <strong>world</strong> from <emphasis>factor</emphasis>\"" }
+{ $example "USING: parser-combinators math.parser ;" "\"one 123 two 456\" 'integer' [ 2 * number>string ] <@ replace ." "\"one 246 two 912\"" }
+{ $example "USE: parser-combinators" "\"hello *world* from *factor*\" 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@ replace ." "\"hello <strong>world</strong> from <strong>factor</strong>\"" }
+{ $example "USE: parser-combinators" "\"hello *world* from _factor_\"\n 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@\n 'italic' [ \"<emphasis>\" swap \"</emphasis>\" 3append ] <@ <|>\n replace ." "\"hello <strong>world</strong> from <emphasis>factor</emphasis>\"" }
{ $see-also search search* replace* } ;
HELP: replace*
"the result of that parser. Each parser is done in sequence so that "
"the parse results of the first parser can be replaced by later parsers."
}
-{ $example "\"*hello _world_*\"\n 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@\n 'italic' [ \"<emphasis>\" swap \"</emphasis>\" 3append ] <@ 2array\n replace* ." "\"<strong>hello <emphasis>world</emphasis></strong>\"" }
+{ $example "USE: parser-combinators" "\"*hello _world_*\"\n 'bold' [ \"<strong>\" swap \"</strong>\" 3append ] <@\n 'italic' [ \"<emphasis>\" swap \"</emphasis>\" 3append ] <@ 2array\n replace* ." "\"<strong>hello <emphasis>world</emphasis></strong>\"" }
{ $see-also search search* replace* } ;
"'element' should be a parser that can parse the elements. The "
"result of the parser is a sequence of the parsed elements." }
{ $examples
-{ $example "USING: lazy-lits parser-combinators ;" "\"1,2,3,4\" 'integer' comma-list parse-1 ." "{ 1 2 3 4 }" } } ;
+{ $example "USING: lazy-lists parser-combinators ;" "\"1,2,3,4\" 'integer' comma-list parse-1 ." "{ 1 2 3 4 }" } } ;
{ $see-also 'digit' 'integer' 'string' 'bold' 'italic' comma-list } related-words
] unit-test
{ T{ ebnf-terminal f "55" } } [
- "\"55\"" 'terminal' parse parse-result-ast
+ "'55'" 'terminal' parse parse-result-ast
] unit-test
{
T{ ebnf-rule f
- "digit"
- T{ ebnf-choice f
- V{ T{ ebnf-terminal f "1" } T{ ebnf-terminal f "2" } }
+ "digit"
+ V{
+ T{ ebnf-choice f
+ V{ T{ ebnf-terminal f "1" } T{ ebnf-terminal f "2" } }
+ }
+ f
}
}
} [
- "digit = \"1\" | \"2\"" 'rule' parse parse-result-ast
+ "digit = '1' | '2'" 'rule' parse parse-result-ast
] unit-test
{
T{ ebnf-rule f
"digit"
- T{ ebnf-sequence f
- V{ T{ ebnf-terminal f "1" } T{ ebnf-terminal f "2" } }
+ V{
+ T{ ebnf-sequence f
+ V{ T{ ebnf-terminal f "1" } T{ ebnf-terminal f "2" } }
+ }
+ f
+ }
+ }
+} [
+ "digit = '1' '2'" 'rule' parse parse-result-ast
+] unit-test
+
+{
+ T{ ebnf-choice f
+ V{
+ T{ ebnf-sequence f
+ V{ T{ ebnf-non-terminal f "one" } T{ ebnf-non-terminal f "two" } }
+ }
+ T{ ebnf-non-terminal f "three" }
}
}
} [
- "digit = \"1\" \"2\"" 'rule' parse parse-result-ast
-] unit-test
\ No newline at end of file
+ "one two | three" 'choice' parse parse-result-ast
+] unit-test
+
+{
+ T{ ebnf-sequence f
+ V{
+ T{ ebnf-non-terminal f "one" }
+ T{ ebnf-choice f
+ V{ T{ ebnf-non-terminal f "two" } T{ ebnf-non-terminal f "three" } }
+ }
+ }
+ }
+} [
+ "one (two | three)" 'choice' parse parse-result-ast
+] unit-test
+
+{
+ T{ ebnf-sequence f
+ V{
+ T{ ebnf-non-terminal f "one" }
+ T{ ebnf-repeat0 f
+ T{ ebnf-sequence f
+ V{
+ T{ ebnf-choice f
+ V{ T{ ebnf-non-terminal f "two" } T{ ebnf-non-terminal f "three" } }
+ }
+ T{ ebnf-non-terminal f "four" }
+ }
+ }
+ }
+ }
+ }
+} [
+ "one {(two | three) four}" 'choice' parse parse-result-ast
+] unit-test
+
+{
+ T{ ebnf-sequence f
+ V{
+ T{ ebnf-non-terminal f "one" }
+ T{ ebnf-optional f T{ ebnf-non-terminal f "two" } }
+ T{ ebnf-non-terminal f "three" }
+ }
+ }
+} [
+ "one [ two ] three" 'choice' parse parse-result-ast
+] unit-test
! Copyright (C) 2007 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel parser words arrays strings math.parser sequences namespaces peg ;
+USING: kernel parser words arrays strings math.parser sequences
+ quotations vectors namespaces math assocs continuations peg ;
IN: peg.ebnf
TUPLE: ebnf-non-terminal symbol ;
TUPLE: ebnf-choice options ;
TUPLE: ebnf-sequence elements ;
TUPLE: ebnf-repeat0 group ;
+TUPLE: ebnf-optional elements ;
TUPLE: ebnf-rule symbol elements ;
+TUPLE: ebnf-action word ;
TUPLE: ebnf rules ;
C: <ebnf-non-terminal> ebnf-non-terminal
C: <ebnf-choice> ebnf-choice
C: <ebnf-sequence> ebnf-sequence
C: <ebnf-repeat0> ebnf-repeat0
+C: <ebnf-optional> ebnf-optional
C: <ebnf-rule> ebnf-rule
+C: <ebnf-action> ebnf-action
C: <ebnf> ebnf
-GENERIC: ebnf-compile ( ast -- quot )
+SYMBOL: parsers
+SYMBOL: non-terminals
+SYMBOL: last-parser
-M: ebnf-terminal ebnf-compile ( ast -- quot )
- [
- ebnf-terminal-symbol , \ token ,
- ] [ ] make ;
+: reset-parser-generation ( -- )
+ V{ } clone parsers set
+ H{ } clone non-terminals set
+ f last-parser set ;
-M: ebnf-non-terminal ebnf-compile ( ast -- quot )
- [
- ebnf-non-terminal-symbol , \ in , \ get , \ lookup , \ execute ,
- ] [ ] make ;
+: store-parser ( parser -- number )
+ parsers get [ push ] keep length 1- ;
-M: ebnf-choice ebnf-compile ( ast -- quot )
- [
- [
- ebnf-choice-options [
- ebnf-compile ,
- ] each
- ] { } make ,
- [ call ] , \ map , \ choice ,
- ] [ ] make ;
-
-M: ebnf-sequence ebnf-compile ( ast -- quot )
- [
- [
- ebnf-sequence-elements [
- ebnf-compile ,
- ] each
- ] { } make ,
- [ call ] , \ map , \ seq ,
- ] [ ] make ;
-
-M: ebnf-repeat0 ebnf-compile ( ast -- quot )
- [
- ebnf-repeat0-group ebnf-compile % \ repeat0 ,
- ] [ ] make ;
+: get-parser ( index -- parser )
+ parsers get nth ;
+
+: non-terminal-index ( name -- number )
+ dup non-terminals get at [
+ nip
+ ] [
+ f store-parser [ swap non-terminals get set-at ] keep
+ ] if* ;
-M: ebnf-rule ebnf-compile ( ast -- quot )
- [
- dup ebnf-rule-symbol , \ in , \ get , \ create ,
- ebnf-rule-elements ebnf-compile , \ define-compound ,
- ] [ ] make ;
+GENERIC: (generate-parser) ( ast -- id )
-M: ebnf ebnf-compile ( ast -- quot )
+: generate-parser ( ast -- id )
+ (generate-parser) dup last-parser set ;
+
+M: ebnf-terminal (generate-parser) ( ast -- id )
+ ebnf-terminal-symbol token sp store-parser ;
+
+M: ebnf-non-terminal (generate-parser) ( ast -- id )
[
- ebnf-rules [
- ebnf-compile %
- ] each
- ] [ ] make ;
+ ebnf-non-terminal-symbol dup non-terminal-index ,
+ parsers get , \ nth , [ search ] [ 2drop f ] recover , \ or ,
+ ] [ ] make delay sp store-parser ;
+
+M: ebnf-choice (generate-parser) ( ast -- id )
+ ebnf-choice-options [
+ generate-parser get-parser
+ ] map choice store-parser ;
+
+M: ebnf-sequence (generate-parser) ( ast -- id )
+ ebnf-sequence-elements [
+ generate-parser get-parser
+ ] map seq store-parser ;
+
+M: ebnf-repeat0 (generate-parser) ( ast -- id )
+ ebnf-repeat0-group generate-parser get-parser repeat0 store-parser ;
+
+M: ebnf-optional (generate-parser) ( ast -- id )
+ ebnf-optional-elements generate-parser get-parser optional store-parser ;
+
+M: ebnf-rule (generate-parser) ( ast -- id )
+ dup ebnf-rule-symbol non-terminal-index swap
+ ebnf-rule-elements generate-parser get-parser ! nt-id body
+ swap [ parsers get set-nth ] keep ;
+
+M: ebnf-action (generate-parser) ( ast -- id )
+ ebnf-action-word search 1quotation
+ last-parser get get-parser swap action store-parser ;
+
+M: vector (generate-parser) ( ast -- id )
+ [ generate-parser ] map peek ;
+
+M: f (generate-parser) ( ast -- id )
+ drop last-parser get ;
+
+M: ebnf (generate-parser) ( ast -- id )
+ ebnf-rules [
+ generate-parser
+ ] map peek ;
DEFER: 'rhs'
CHAR: a CHAR: z range repeat1 [ >string <ebnf-non-terminal> ] action ;
: 'terminal' ( -- parser )
- "\"" token hide [ CHAR: " = not ] satisfy repeat1 "\"" token hide 3array seq [ first >string <ebnf-terminal> ] action ;
+ "'" token hide [ CHAR: ' = not ] satisfy repeat1 "'" token hide 3array seq [ first >string <ebnf-terminal> ] action ;
: 'element' ( -- parser )
'non-terminal' 'terminal' 2array choice ;
-: 'sequence' ( -- parser )
- 'element' sp
- "|" token sp ensure-not 2array seq [ first ] action
- repeat1 [ <ebnf-sequence> ] action ;
-
-: 'choice' ( -- parser )
- 'element' sp "|" token sp list-of [ <ebnf-choice> ] action ;
+DEFER: 'choice'
+
+: 'group' ( -- parser )
+ "(" token sp hide
+ [ 'choice' sp ] delay
+ ")" token sp hide
+ 3array seq [ first ] action ;
: 'repeat0' ( -- parser )
"{" token sp hide
- [ 'rhs' sp ] delay
+ [ 'choice' sp ] delay
"}" token sp hide
3array seq [ first <ebnf-repeat0> ] action ;
-: 'rhs' ( -- parser )
- 'repeat0'
- 'sequence'
- 'choice'
- 'element'
- 4array choice ;
+: 'optional' ( -- parser )
+ "[" token sp hide
+ [ 'choice' sp ] delay
+ "]" token sp hide
+ 3array seq [ first <ebnf-optional> ] action ;
+
+: 'sequence' ( -- parser )
+ [
+ 'element' sp ,
+ 'group' sp ,
+ 'repeat0' sp ,
+ 'optional' sp ,
+ ] { } make choice
+ repeat1 [
+ dup length 1 = [ first ] [ <ebnf-sequence> ] if
+ ] action ;
+
+: 'choice' ( -- parser )
+ 'sequence' sp "|" token sp list-of [
+ dup length 1 = [ first ] [ <ebnf-choice> ] if
+ ] action ;
+
+: 'action' ( -- parser )
+ "=>" token hide
+ [ blank? ] satisfy ensure-not [ drop t ] satisfy 2array seq [ first ] action repeat1 [ >string ] action sp
+ 2array seq [ first <ebnf-action> ] action ;
+: 'rhs' ( -- parser )
+ 'choice' 'action' sp optional 2array seq ;
+
: 'rule' ( -- parser )
'non-terminal' [ ebnf-non-terminal-symbol ] action
"=" token sp hide
: ebnf>quot ( string -- quot )
'ebnf' parse [
- parse-result-ast ebnf-compile
+ parse-result-ast [
+ reset-parser-generation
+ generate-parser drop
+ [
+ non-terminals get
+ [
+ get-parser [
+ swap , \ in , \ get , \ create ,
+ 1quotation , \ define-compound ,
+ ] [
+ drop
+ ] if*
+ ] assoc-each
+ ] [ ] make
+ ] with-scope
] [
f
] if* ;
-: <EBNF "EBNF>" parse-tokens "" join ebnf>quot call ; parsing
\ No newline at end of file
+: <EBNF "EBNF>" parse-tokens " " join ebnf>quot call ; parsing
\ No newline at end of file
HELP: parse
{ $values
- { "string" "a string" }
- { "parse" "a parser" }
- { "result" "a <parse-result> or f" }
+ { "input" "a string" }
+ { "parser" "a parser" }
+ { "result" "a parse-result or f" }
}
{ $description
"Given the input string, parse it using the given parser. The result is a <parse-result> object if "
}
{ $description
"Returns a parser that matches a single character that lies within the range of characters given, inclusive." }
-{ $example ": digit ( -- parser ) CHAR: 0 CHAR: 9 range ;" } ;
+{ $examples { $code ": digit ( -- parser ) CHAR: 0 CHAR: 9 range ;" } } ;
HELP: seq
{ $values
HELP: repeat0
{ $values
- { "p1" "a parser" }
- { "p2" "a parser" }
+ { "parser" "a parser" }
}
{ $description
"Returns a parser that parses 0 or more instances of the 'p1' parser. The AST produced is "
HELP: repeat1
{ $values
- { "p1" "a parser" }
- { "p2" "a parser" }
+ { "parser" "a parser" }
}
{ $description
"Returns a parser that parses 1 or more instances of the 'p1' parser. The AST produced is "
HELP: optional
{ $values
- { "p1" "a parser" }
- { "p2" "a parser" }
+ { "parser" "a parser" }
}
{ $description
"Returns a parser that parses 0 or 1 instances of the 'p1' parser. The AST produced is "
HELP: ensure
{ $values
- { "p1" "a parser" }
- { "p2" "a parser" }
+ { "parser" "a parser" }
}
{ $description
"Returns a parser that succeeds if the 'p1' parser succeeds but does not add anything to the "
"AST and does not move the location in the input string. This can be used for lookahead and "
"disambiguation, along with the " { $link ensure-not } " word." }
-{ $example "\"0\" token ensure octal-parser" } ;
+{ $examples { $code "\"0\" token ensure octal-parser" } } ;
HELP: ensure-not
{ $values
- { "p1" "a parser" }
- { "p2" "a parser" }
+ { "parser" "a parser" }
}
{ $description
"Returns a parser that succeeds if the 'p1' parser fails but does not add anything to the "
"AST and does not move the location in the input string. This can be used for lookahead and "
"disambiguation, along with the " { $link ensure } " word." }
-{ $example "\"+\" token \"=\" token ensure-not \"+=\" token 3array seq" } ;
+{ $code "\"+\" token \"=\" token ensure-not \"+=\" token 3array seq" } ;
HELP: action
{ $values
- { "p1" "a parser" }
+ { "parser" "a parser" }
{ "quot" "a quotation with stack effect ( ast -- ast )" }
}
{ $description
"from that parse. The result of the quotation is then used as the final AST. This can be used "
"for manipulating the parse tree to produce a AST better suited for the task at hand rather than "
"the default AST." }
-{ $example "CHAR: 0 CHAR: 9 range [ to-digit ] action" } ;
+{ $code "CHAR: 0 CHAR: 9 range [ to-digit ] action" } ;
HELP: sp
{ $values
- { "p1" "a parser" }
{ "parser" "a parser" }
}
{ $description
HELP: hide
{ $values
- { "p1" "a parser" }
{ "parser" "a parser" }
}
{ $description
"Returns a parser that succeeds if the original parser succeeds, but does not "
"put any result in the AST. Useful for ignoring 'syntax' in the AST." }
-{ $example "\"[\" token hide number \"]\" token hide 3array seq" } ;
+{ $code "\"[\" token hide number \"]\" token hide 3array seq" } ;
HELP: delay
{ $values
- { "quot" "a quotation with stack effect ( -- parser )" }
{ "parser" "a parser" }
}
{ $description
! Copyright (C) 2007 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel sequences strings namespaces math assocs shuffle vectors combinators.lib ;
+USING: kernel sequences strings namespaces math assocs shuffle
+ vectors arrays combinators.lib memoize ;
IN: peg
TUPLE: parse-result remaining ast ;
-GENERIC: parse ( state parser -- result )
+GENERIC: (parse) ( state parser -- result )
<PRIVATE
+SYMBOL: packrat-cache
SYMBOL: ignore
+SYMBOL: not-in-cache
+
+: not-in-cache? ( result -- ? )
+ not-in-cache = ;
: <parse-result> ( remaining ast -- parse-result )
parse-result construct-boa ;
: init-parser ( parser -- parser )
get-next-id parser construct-boa over set-delegate ;
+: from ( slice-or-string -- index )
+ dup slice? [ slice-from ] [ drop 0 ] if ;
+
+: get-cached ( input parser -- result )
+ [ from ] dip parser-id packrat-cache get at at* [
+ drop not-in-cache
+ ] unless ;
+
+: put-cached ( result input parser -- )
+ parser-id dup packrat-cache get at [
+ nip
+ ] [
+ H{ } clone dup >r swap packrat-cache get set-at r>
+ ] if*
+ [ from ] dip set-at ;
+
+PRIVATE>
+
+: parse ( input parser -- result )
+ packrat-cache get [
+ 2dup get-cached dup not-in-cache? [
+! "cache missed: " write over parser-id number>string write " - " write nl ! pick .
+ drop
+ #! Protect against left recursion blowing the callstack
+ #! by storing a failed parse in the cache.
+ [ f ] dipd [ put-cached ] 2keep
+ [ (parse) dup ] 2keep put-cached
+ ] [
+! "cache hit: " write over parser-id number>string write " - " write nl ! pick .
+ 2nip
+ ] if
+ ] [
+ (parse)
+ ] if ;
+
+: packrat-parse ( input parser -- result )
+ H{ } clone packrat-cache [ parse ] with-variable ;
+
+<PRIVATE
+
TUPLE: token-parser symbol ;
-M: token-parser parse ( state parser -- result )
+M: token-parser (parse) ( input parser -- result )
token-parser-symbol 2dup head? [
dup >r length tail-slice r> <parse-result>
] [
2drop f
] if ;
-
+
TUPLE: satisfy-parser quot ;
-M: satisfy-parser parse ( state parser -- result )
+M: satisfy-parser (parse) ( state parser -- result )
over empty? [
2drop f
] [
TUPLE: range-parser min max ;
-M: range-parser parse ( state parser -- result )
+M: range-parser (parse) ( state parser -- result )
over empty? [
2drop f
] [
drop
] if ;
-M: seq-parser parse ( state parser -- result )
+M: seq-parser (parse) ( state parser -- result )
seq-parser-parsers [ V{ } clone <parse-result> ] dip (seq-parser) ;
TUPLE: choice-parser parsers ;
] if*
] if ;
-M: choice-parser parse ( state parser -- result )
+M: choice-parser (parse) ( state parser -- result )
choice-parser-parsers (choice-parser) ;
TUPLE: repeat0-parser p1 ;
{ parse-result-remaining parse-result-ast }
get-slots 1vector <parse-result> ;
-M: repeat0-parser parse ( state parser -- result )
+M: repeat0-parser (parse) ( state parser -- result )
repeat0-parser-p1 2dup parse [
nipd clone-result (repeat-parser)
] [
TUPLE: repeat1-parser p1 ;
-M: repeat1-parser parse ( state parser -- result )
+M: repeat1-parser (parse) ( state parser -- result )
repeat1-parser-p1 tuck parse dup [ clone-result (repeat-parser) ] [ nip ] if ;
TUPLE: optional-parser p1 ;
-M: optional-parser parse ( state parser -- result )
+M: optional-parser (parse) ( state parser -- result )
dupd optional-parser-p1 parse swap f <parse-result> or ;
TUPLE: ensure-parser p1 ;
-M: ensure-parser parse ( state parser -- result )
+M: ensure-parser (parse) ( state parser -- result )
dupd ensure-parser-p1 parse [
ignore <parse-result>
] [
TUPLE: ensure-not-parser p1 ;
-M: ensure-not-parser parse ( state parser -- result )
+M: ensure-not-parser (parse) ( state parser -- result )
dupd ensure-not-parser-p1 parse [
drop f
] [
TUPLE: action-parser p1 quot ;
-M: action-parser parse ( state parser -- result )
+M: action-parser (parse) ( state parser -- result )
tuck action-parser-p1 parse dup [
dup parse-result-ast rot action-parser-quot call
swap [ set-parse-result-ast ] keep
TUPLE: sp-parser p1 ;
-M: sp-parser parse ( state parser -- result )
+M: sp-parser (parse) ( state parser -- result )
[ left-trim-slice ] dip sp-parser-p1 parse ;
TUPLE: delay-parser quot ;
-M: delay-parser parse ( state parser -- result )
+M: delay-parser (parse) ( state parser -- result )
delay-parser-quot call parse ;
PRIVATE>
-: token ( string -- parser )
+MEMO: token ( string -- parser )
token-parser construct-boa init-parser ;
: satisfy ( quot -- parser )
satisfy-parser construct-boa init-parser ;
-: range ( min max -- parser )
+MEMO: range ( min max -- parser )
range-parser construct-boa init-parser ;
: seq ( seq -- parser )
: choice ( seq -- parser )
choice-parser construct-boa init-parser ;
-: repeat0 ( parser -- parser )
+MEMO: repeat0 ( parser -- parser )
repeat0-parser construct-boa init-parser ;
-: repeat1 ( parser -- parser )
+MEMO: repeat1 ( parser -- parser )
repeat1-parser construct-boa init-parser ;
-: optional ( parser -- parser )
+MEMO: optional ( parser -- parser )
optional-parser construct-boa init-parser ;
-: ensure ( parser -- parser )
+MEMO: ensure ( parser -- parser )
ensure-parser construct-boa init-parser ;
-: ensure-not ( parser -- parser )
+MEMO: ensure-not ( parser -- parser )
ensure-not-parser construct-boa init-parser ;
: action ( parser quot -- parser )
action-parser construct-boa init-parser ;
-: sp ( parser -- parser )
+MEMO: sp ( parser -- parser )
sp-parser construct-boa init-parser ;
-: hide ( parser -- parser )
+MEMO: hide ( parser -- parser )
[ drop ignore ] action ;
-: delay ( parser -- parser )
+MEMO: delay ( parser -- parser )
delay-parser construct-boa init-parser ;
-: list-of ( items separator -- parser )
+MEMO: list-of ( items separator -- parser )
hide over 2array seq repeat0 [ concat ] action 2array seq [ unclip 1vector swap first append ] action ;
IN: temporary
{ "abc" } [
- "abc" 'ident' parse parse-result-ast
+ "abc" ident parse parse-result-ast
] unit-test
{ 55 } [
- "55abc" 'number' parse parse-result-ast
+ "55abc" number parse parse-result-ast
] unit-test
! Copyright (C) 2007 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel arrays strings math.parser sequences peg ;
+USING: kernel arrays strings math.parser sequences peg peg.ebnf memoize ;
IN: peg.pl0
#! Grammar for PL/0 based on http://en.wikipedia.org/wiki/PL/0
-
-: 'ident' ( -- parser )
+MEMO: ident ( -- parser )
CHAR: a CHAR: z range
CHAR: A CHAR: Z range 2array choice repeat1
[ >string ] action ;
-: 'number' ( -- parser )
+MEMO: number ( -- parser )
CHAR: 0 CHAR: 9 range repeat1 [ string>number ] action ;
-DEFER: 'factor'
-
-: 'term' ( -- parser )
- 'factor' "*" token "/" token 2array choice sp 'factor' sp 2array seq repeat0 2array seq ;
-
-: 'expression' ( -- parser )
- [ "+" token "-" token 2array choice sp optional 'term' sp 2dup 2array seq repeat0 3array seq ] delay ;
-
-: 'factor' ( -- parser )
- 'ident' 'number' "(" token hide 'expression' sp ")" token sp hide 3array seq 3array choice ;
-
-: 'condition' ( -- parser )
- "odd" token 'expression' sp 2array seq
- 'expression' { "=" "#" "<=" "<" ">=" ">" } [ token ] map choice sp 'expression' sp 3array seq
- 2array choice ;
-
-: 'statement' ( -- parser )
- [
- 'ident' ":=" token sp 'expression' sp 3array seq
- "call" token 'ident' sp 2array seq
- "begin" token 'statement' sp ";" token sp 'statement' sp 2array seq repeat0 "end" token sp 4array seq
- "if" token 'condition' sp "then" token sp 'statement' sp 4array seq
- 4array choice
- "while" token 'condition' sp "do" token sp 'statement' sp 4array seq
- 2array choice optional
- ] delay ;
-
-: 'block' ( -- parser )
- [
- "const" token 'ident' sp "=" token sp 'number' sp 4array seq
- "," token sp 'ident' sp "=" token sp 'number' sp 4array seq repeat0
- ";" token sp 3array seq optional
-
- "var" token 'ident' sp "," token sp 'ident' sp 2array seq repeat0
- ";" token sp 4array seq optional
-
- "procedure" token 'ident' sp ";" token sp 'block' sp 4array seq ";" token sp 2array seq repeat0 'statement' sp 2array seq
-
- 3array seq
- ] delay ;
-
-: 'program' ( -- parser )
- 'block' "." token sp 2array seq ;
+<EBNF
+program = block '.' .
+block = [ 'const' ident '=' number { ',' ident '=' number } ';' ]
+ [ 'var' ident { ',' ident } ';' ]
+ { 'procedure' ident ';' [ block ';' ] } statement .
+statement = [ ident ':=' expression | 'call' ident |
+ 'begin' statement {';' statement } 'end' |
+ 'if' condition 'then' statement |
+ 'while' condition 'do' statement ] .
+condition = 'odd' expression |
+ expression ('=' | '#' | '<=' | '<' | '>=' | '>') expression .
+expression = ['+' | '-'] term {('+' | '-') term } .
+term = factor {('*' | '/') factor } .
+factor = ident | number | '(' expression ')'
+EBNF>
--- /dev/null
+Gavin Harrison
--- /dev/null
+! Copyright (C) 2007 Gavin Harrison
+! See http://factorcode.org/license.txt for BSD license.
+
+USING: kernel sequences arrays vectors namespaces math strings
+ combinators continuations quotations io assocs ;
+
+IN: prolog
+
+SYMBOL: pldb
+SYMBOL: plchoice
+
+: init-pl ( -- ) V{ } clone pldb set V{ } clone plchoice set ;
+
+: reset-choice ( -- ) V{ } clone plchoice set ;
+: remove-choice ( -- ) plchoice get pop drop ;
+: add-choice ( continuation -- )
+ dup continuation? [ plchoice get push ] [ drop ] if ;
+: last-choice ( -- ) plchoice get pop continue ;
+
+: rules ( -- vector ) pldb get ;
+: rule ( n -- rule ) dup rules length >= [ drop "No." ] [ rules nth ] if ;
+
+: var? ( pl-obj -- ? )
+ dup string? [ 0 swap nth LETTER? ] [ drop f ] if ;
+: const? ( pl-obj -- ? ) var? not ;
+
+: check-arity ( pat fact -- pattern fact ? ) 2dup [ length ] 2apply = ;
+: check-elements ( pat fact -- ? ) [ over var? [ 2drop t ] [ = ] if ] 2all? ;
+: (double-bound) ( key value assoc -- ? )
+ pick over at* [ pick = >r 3drop r> ] [ drop swapd set-at t ] if ;
+: single-bound? ( pat-d pat-f -- ? )
+ H{ } clone [ (double-bound) ] curry 2all? ;
+: match-pattern ( pat fact -- ? )
+ check-arity [ 2dup check-elements -rot single-bound? and ] [ 2drop f ] if ;
+: good-result? ( pat fact -- pat fact ? )
+ 2dup dup "No." = [ 2drop t ] [ match-pattern ] if ;
+
+: add-rule ( name pat body -- ) 3array rules dup length swap set-nth ;
+
+: (lookup-rule) ( name num -- pat-f rules )
+ dup rule dup "No." = >r 0 swap nth swapd dupd = swapd r> or
+ [ dup rule [ ] callcc0 add-choice ] when
+ dup number? [ 1+ (lookup-rule) ] [ 2nip ] if ;
+
+: add-bindings ( pat-d pat-f binds -- binds )
+ clone
+ [ over var? over const? or
+ [ 2drop ] [ rot dup >r set-at r> ] if
+ ] 2reduce ;
+: init-binds ( pat-d pat-f -- binds ) V{ } clone add-bindings >alist ;
+
+: replace-if-bound ( binds elt -- binds elt' )
+ over 2dup key? [ at ] [ drop ] if ;
+: deep-replace ( binds seq -- binds seq' )
+ [ dup var? [ replace-if-bound ]
+ [ dup array? [ dupd deep-replace nip ] when ] if
+ ] map ;
+
+: backtrace? ( result -- )
+ dup "No." = [ remove-choice last-choice ]
+ [ [ last-choice ] unless ] if ;
+
+: resolve-rule ( pat-d pat-f rule-body -- binds )
+ >r 2dup init-binds r> [ deep-replace >quotation call dup backtrace?
+ dup t = [ drop ] when ] each ;
+
+: rule>pattern ( rule -- pattern ) 1 swap nth ;
+: rule>body ( rule -- body ) 2 swap nth ;
+
+: binds>fact ( pat-d pat-f binds -- fact )
+ [ 2dup key? [ at ] [ drop ] if ] curry map good-result?
+ [ nip ] [ last-choice ] if ;
+
+: lookup-rule ( name pat -- fact )
+ swap 0 (lookup-rule) dup "No." =
+ [ nip ]
+ [ dup rule>pattern swapd check-arity
+ [ rot rule>body resolve-rule dup -roll binds>fact nip ] [ last-choice ] if
+ ] if ;
+
+: binding-resolve ( binds name pat -- binds )
+ tuck lookup-rule dup backtrace? swap rot add-bindings ;
+
+: is ( binds val var -- binds ) rot [ set-at ] keep ;
--- /dev/null
+Implementation of an embedded prolog for factor
{ $values { "word" "a new word to define" } { "definition" "a word definition" } }
{ $description "Creates a lazy word in the current vocabulary. When executed the word will return a " { $link promise } " that when forced, executes the word definition. Any values on the stack that are required by the word definition are captured along with the promise." }
{ $examples
- { $example "LAZY: my-add ( a b -- c ) + ;\n1 2 my-add force ." "3" }
+ { $example "IN: promises LAZY: my-add ( a b -- c ) + ;\n1 2 my-add force ." "3" }
}
{ $see-also force promise-with promise-with2 } ;
--- /dev/null
+USING: kernel math.constants ;
+IN: random-tester.databank
+
+: databank ( -- array )
+ {
+ ! V{ } H{ } V{ 3 } { 3 } { } "" "asdf"
+ pi 1/0. -1/0. 0/0. [ ]
+ f t "" 0 0.0 3.14 2 -3 -7 20 3/4 -3/4 1.2/3 3.5
+ C{ 2 2 } C{ 1/0. 1/0. }
+ } ;
+
--- /dev/null
+USING: compiler continuations io kernel math namespaces
+prettyprint quotations random sequences vectors ;
+USING: random-tester.databank random-tester.safe-words ;
+IN: random-tester
+
+SYMBOL: errored
+SYMBOL: before
+SYMBOL: after
+SYMBOL: quot
+TUPLE: random-tester-error ;
+
+: setup-test ( #data #code -- data... quot )
+ #! Variable stack effect
+ >r [ databank random ] times r>
+ [ drop \ safe-words get random ] map >quotation ;
+
+: test-compiler ! ( data... quot -- ... )
+ errored off
+ dup quot set
+ datastack clone >vector dup pop* before set
+ [ call ] catch drop
+ datastack clone after set
+ clear
+ before get [ ] each
+ quot get [ compile-1 ] [ errored on ] recover ;
+
+: do-test ! ( data... quot -- )
+ .s flush test-compiler
+ errored get [
+ datastack after get 2dup = [
+ 2drop
+ ] [
+ [ . ] each
+ "--" print
+ [ . ] each
+ quot get .
+ random-tester-error construct-empty throw
+ ] if
+ ] unless clear ;
+
+: random-test1 ( #data #code -- )
+ setup-test do-test ;
+
+: random-test2 ( -- )
+ 3 2 setup-test do-test ;
--- /dev/null
+USING: kernel math sequences namespaces hashtables words
+arrays parser compiler syntax io prettyprint optimizer
+random math.constants math.functions layouts random-tester.utils ;
+IN: random-tester
+
+! Tweak me
+: max-length 15 ; inline
+: max-value 1000000000 ; inline
+
+! varying bit-length random number
+: random-bits ( n -- int )
+ random 2 swap ^ random ;
+
+: random-seq ( -- seq )
+ { [ ] { } V{ } "" } random
+ [ max-length random [ max-value random , ] times ] swap make ;
+
+: random-string
+ [ max-length random [ max-value random , ] times ] "" make ;
+
+: special-integers ( -- seq ) \ special-integers get ;
+[ { -1 0 1 } % most-negative-fixnum , most-positive-fixnum , first-bignum , ]
+{ } make \ special-integers set-global
+: special-floats ( -- seq ) \ special-floats get ;
+[ { 0.0 -0.0 } % e , pi , 1./0. , -1./0. , 0./0. , epsilon , epsilon neg , ]
+{ } make \ special-floats set-global
+: special-complexes ( -- seq ) \ special-complexes get ;
+[
+ { -1 0 1 C{ 0 1 } C{ 0 -1 } } %
+ e , e neg , pi , pi neg ,
+ 0 pi rect> , 0 pi neg rect> , pi neg 0 rect> , pi pi rect> ,
+ pi pi neg rect> , pi neg pi rect> , pi neg pi neg rect> ,
+ e neg e neg rect> , e e rect> ,
+] { } make \ special-complexes set-global
+
+: random-fixnum ( -- fixnum )
+ most-positive-fixnum random 1+ 50% [ neg 1- ] when >fixnum ;
+
+: random-bignum ( -- bignum )
+ 400 random-bits first-bignum + 50% [ neg ] when ;
+
+: random-integer ( -- n )
+ 50% [
+ random-fixnum
+ ] [
+ 50% [ random-bignum ] [ special-integers get random ] if
+ ] if ;
+
+: random-positive-integer ( -- int )
+ random-integer dup 0 < [
+ neg
+ ] [
+ dup 0 = [ 1 + ] when
+ ] if ;
+
+: random-ratio ( -- ratio )
+ 1000000000 dup [ random ] 2apply 1+ / 50% [ neg ] when dup [ drop random-ratio ] unless 10% [ drop 0 ] when ;
+
+: random-float ( -- float )
+ 50% [ random-ratio ] [ special-floats get random ] if
+ 50%
+ [ .0000000000000000001 /f ] [ 50% [ .00000000000000001 * ] when ] if
+ >float ;
+
+: random-number ( -- number )
+ {
+ [ random-integer ]
+ [ random-ratio ]
+ [ random-float ]
+ } do-one ;
+
+: random-complex ( -- C )
+ random-number random-number rect> ;
+
--- /dev/null
+USING: kernel namespaces sequences sorting vocabs ;
+USING: arrays assocs generic hashtables math math.intervals math.parser math.functions refs shuffle vectors words ;
+IN: random-tester.safe-words
+
+: ?-words
+ {
+ delegate
+
+ /f
+
+ bits>float bits>double
+ float>bits double>bits
+
+ >bignum >boolean >fixnum >float
+
+ array? integer? complex? value-ref? ref? key-ref?
+ interval? number?
+ wrapper? tuple?
+ [-1,1]? between? bignum? both? either? eq? equal? even? fixnum? float? fp-nan? hashtable? interval-contains? interval-subset? interval? key-ref? key? number? odd? pair? power-of-2? ratio? rational? real? subassoc? valid-digits? zero? assoc? curry? vector? callstack? ! clear 3.14 [ <vector> assoc? ] compile-1
+ 2^ not
+ ! arrays
+ resize-array <array>
+ ! assocs
+ (assoc-stack)
+ new-assoc
+ assoc-like
+ <hashtable>
+ all-integers? (all-integers?) ! hangs?
+ assoc-push-if
+
+ (clone) assoc-clone-like ! SYMBOL: foo foo dup (clone) =
+ } ;
+
+: bignum-words
+ {
+ next-power-of-2 (next-power-of-2)
+ times
+ hashcode hashcode*
+ } ;
+
+: initialization-words
+ {
+ init-namespaces
+ } ;
+
+: stack-words
+ {
+ dup
+ drop 2drop 3drop
+ roll -roll 2swap
+
+ >r r>
+ } ;
+
+: method-words
+ {
+ method-def
+ forget-word
+ } ;
+
+: stateful-words
+ {
+ counter
+ gensym
+ } ;
+
+: foo-words
+ {
+ set-retainstack
+ retainstack callstack
+ datastack
+ callstack>array
+ } ;
+
+: exit-words
+ {
+ call-clear die
+ } ;
+
+: bad-words ( -- array )
+ [
+ ?-words %
+ bignum-words %
+ initialization-words %
+ stack-words %
+ method-words %
+ stateful-words %
+ exit-words %
+ foo-words %
+ ] { } make ;
+
+: safe-words ( -- array )
+ bad-words {
+ "alists" "arrays" "assocs" ! "bit-arrays" "byte-arrays"
+ ! "classes" "combinators" "compiler" "continuations"
+ ! "core-foundation" "definitions" "documents"
+ ! "float-arrays" "generic" "graphs" "growable"
+ "hashtables" ! io.*
+ "kernel" "math"
+ "math.bitfields" "math.complex" "math.constants" "math.floats"
+ "math.functions" "math.integers" "math.intervals" "math.libm"
+ "math.parser" "math.ratios" "math.vectors"
+ ! "namespaces" "quotations" "sbufs"
+ ! "queues" "strings" "sequences"
+ "vectors"
+ ! "words"
+ } [ words ] map concat seq-diff natural-sort ;
+
+safe-words \ safe-words set-global
+
+! foo dup (clone) = .
+! foo dup clone = .
+! f [ byte-array>bignum assoc-clone-like ] compile-1
+! 2 3.14 [ construct-empty number= ] compile-1
+! 3.14 [ <vector> assoc? ] compile-1
+! -3 [ ] 2 [ byte-array>bignum denominator ] compile-1
+
--- /dev/null
+USING: arrays assocs combinators.lib continuations kernel
+math math.functions memoize namespaces quotations random sequences
+sequences.private shuffle ;
+IN: random-tester.utils
+
+: %chance ( n -- ? )
+ 100 random > ;
+
+: 10% ( -- ? ) 10 %chance ;
+: 20% ( -- ? ) 20 %chance ;
+: 30% ( -- ? ) 30 %chance ;
+: 40% ( -- ? ) 40 %chance ;
+: 50% ( -- ? ) 50 %chance ;
+: 60% ( -- ? ) 60 %chance ;
+: 70% ( -- ? ) 70 %chance ;
+: 80% ( -- ? ) 80 %chance ;
+: 90% ( -- ? ) 90 %chance ;
+
+: call-if ( quot ? -- ) swap when ; inline
+
+: with-10% ( quot -- ) 10% call-if ; inline
+: with-20% ( quot -- ) 20% call-if ; inline
+: with-30% ( quot -- ) 30% call-if ; inline
+: with-40% ( quot -- ) 40% call-if ; inline
+: with-50% ( quot -- ) 50% call-if ; inline
+: with-60% ( quot -- ) 60% call-if ; inline
+: with-70% ( quot -- ) 70% call-if ; inline
+: with-80% ( quot -- ) 80% call-if ; inline
+: with-90% ( quot -- ) 90% call-if ; inline
+
+: random-key keys random ;
+: random-value [ random-key ] keep at ;
+
+: do-one ( seq -- ) random call ; inline
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-: run-script ( path -- ) 1array [ fork-exec-args-wait ] curry in-thread ;
-
-! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
[
- "/etc/cron.daily/apt" run-script
- "/etc/cron.daily/aptitude" run-script
- "/etc/cron.daily/bsdmainutils" run-script
- "/etc/cron.daily/find.notslocate" run-script
- "/etc/cron.daily/logrotate" run-script
- "/etc/cron.daily/man-db" run-script
- "/etc/cron.daily/ntp-server" run-script
- "/etc/cron.daily/slocate" run-script
- "/etc/cron.daily/standard" run-script
- "/etc/cron.daily/sysklogd" run-script
- "/etc/cron.daily/tetex-bin" run-script
+ "/etc/cron.daily/apt" fork-exec-arg
+ "/etc/cron.daily/aptitude" fork-exec-arg
+ "/etc/cron.daily/bsdmainutils" fork-exec-arg
+ "/etc/cron.daily/find.notslocate" fork-exec-arg
+ "/etc/cron.daily/logrotate" fork-exec-arg
+ "/etc/cron.daily/man-db" fork-exec-arg
+ "/etc/cron.daily/ntp-server" fork-exec-arg
+ "/etc/cron.daily/slocate" fork-exec-arg
+ "/etc/cron.daily/standard" fork-exec-arg
+ "/etc/cron.daily/sysklogd" fork-exec-arg
+ "/etc/cron.daily/tetex-bin" fork-exec-arg
] cron-jobs-daily set-global
[
- "/etc/cron.weekly/cvs" run-script
- "/etc/cron.weekly/man-db" run-script
- "/etc/cron.weekly/ntp-server" run-script
- "/etc/cron.weekly/popularity-contest" run-script
- "/etc/cron.weekly/sysklogd" run-script
+ "/etc/cron.weekly/cvs" fork-exec-arg
+ "/etc/cron.weekly/man-db" fork-exec-arg
+ "/etc/cron.weekly/ntp-server" fork-exec-arg
+ "/etc/cron.weekly/popularity-contest" fork-exec-arg
+ "/etc/cron.weekly/sysklogd" fork-exec-arg
] cron-jobs-weekly set-global
[
- "/etc/cron.monthly/scrollkeeper" run-script
- "/etc/cron.monthly/standard" run-script
+ "/etc/cron.monthly/scrollkeeper" fork-exec-arg
+ "/etc/cron.monthly/standard" fork-exec-arg
] cron-jobs-monthly set-global
\ No newline at end of file
-USING: kernel parser namespaces threads sequences unix unix.process
+USING: kernel parser namespaces threads arrays sequences unix unix.process
combinators.cleave bake ;
IN: raptor
: fork-exec-args-wait ( args -- ) [ first ] [ ] bi fork-exec-wait ;
+: fork-exec-arg ( arg -- ) 1array [ fork-exec-args-wait ] curry in-thread ;
+
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
: forever ( quot -- ) [ call ] [ forever ] bi ;
--- /dev/null
+
+Raptor Linux
+
+*** Introduction ***
+
+Raptor Linux is a mod of Ubuntu 6.06 (Dapper Drake)
+
+This is unlikely to work on another version of Ubuntu, much less
+another Linux distribution.
+
+*** Features ***
+
+ * /sbin/init is replaced with Factor
+ * Virtual terminals managed by Factor
+ * Listeners run on virtual terminals
+ * Native support for static ip networking
+ * Crontab replacement
+
+*** Install ***
+
+ # mkdir -v /etc/raptor
+
+ # cp -v /scratch/factor/extra/raptor/{config,cronjobs}.factor /etc/raptor
+
+ ( scratchpad ) USE: raptor
+ ( scratchpad ) reload-raptor-config
+ ( scratchpad ) save
+
+ # mv -v /sbin/{init,init.orig}
+
+ # cp -v /scratch/factor/factor /sbin/init
+
+ # cp -v /scratch/factor/factor.image /sbin/init.image
+
+*** Filesystems ***
+
+ # emacs /etc/raptor/config.factor
+
+Edit the root-device and swap-devices variables.
+
+*** Static IP networking ***
+
+If you use a static IP in your network then Factor can take care of
+networking.
+
+ # emacs /etc/raptor/config.factor
+
+ (change the settings accordingly)
+
+The udev system has a hook to bring up ethernet interfaces when they
+are detected. Let's remove this hook since we'll be bringing up the
+interface. Actually, we'll move it, not delete it.
+
+ # mv -v /etc/udev/rules.d/85-ifupdown.rules /root
+
+*** DHCP networking ***
+
+If you're using dhcp then we'll fall back on what Ubuntu offers. In
+your config.factor change the line :
+
+ start-networking
+
+to
+
+ "loopback" start-service
+ "networking" start-service
+
+Add these to your reboot-hook and shutdown-hook :
+
+ "loopback" stop-service
+ "networking" stop-service
+
+*** Editing the hooks ***
+
+The items in boot-hook correspond to the things in '/etc/rcS.d' and
+'/etc/rc2.d'. Feel free to add and remove items from that hook. For
+example, I removed the printer services. I also removed other things
+that I didn't feel were necessary on my system.
+
+Look for the line with the call to 'set-hostname' and edit it appropriately.
+
+*** Grub ***
+
+Edit your '/boot/grub/menu.lst'. Basically, copy and paste your
+current good entry. My default entry is this:
+
+title Ubuntu, kernel 2.6.15-28-686
+root (hd0,0)
+kernel /boot/vmlinuz-2.6.15-28-686 root=/dev/hda1 ro quiet splash
+initrd /boot/initrd.img-2.6.15-28-686
+savedefault
+boot
+
+I pasted a copy above it and edited it to look like this:
+
+title Raptor, kernel 2.6.15-28-686
+root (hd0,0)
+kernel /boot/vmlinuz-2.6.15-28-686 root=/dev/hda1 ro quiet -run=ubuntu.dapper.boot
+initrd /boot/initrd.img-2.6.15-28-686
+savedefault
+boot
+
+* Note that I removed the 'splash' kernel option
+
+* Note the '-run=ubuntu.dapper.boot' option. Unfortunately, this isn't
+ working yet...
+
+*** Boot ***
+
+Reboot or turn on your computer. Eventually, hopefully, you'll be at a
+Factor prompt. Boot your system:
+
+ ( scratchpad ) boot
+
+You'll probably be prompted to select a vocab. Select 'raptor'.
+
+*** Now what ***
+
+The virtual consoles are allocated like so:
+
+ 1 - Main listener console
+ 2 - listener
+ 3 - listener
+ 4 - listener
+ 5 - getty
+ 6 - getty
+
+So you're next step might be to alt-f5, login, and run startx.
+
+*** Join the fun ***
+
+Take a loot at what happens during run levels S and 2. Implement a
+Factor version of something. Let me know about it.
+
+++ /dev/null
-
-Raptor Linux
-
-*** Introduction ***
-
-Raptor Linux is a mod of Ubuntu 6.06 (Dapper Drake)
-
-This is unlikely to work on another version of Ubuntu, much less
-another Linux distribution.
-
-*** Features ***
-
- * /sbin/init is replaced with Factor
- * Virtual terminals managed by Factor
- * Listeners run on virtual terminals
- * Native support for static ip networking
- * Crontab replacement
-
-*** Install ***
-
- # mkdir -v /etc/raptor
-
- # cp -v /scratch/factor/extra/raptor/{config,cronjobs}.factor /etc/raptor
-
- ( scratchpad ) USE: raptor
- ( scratchpad ) reload-raptor-config
- ( scratchpad ) save
-
- # mv -v /sbin/{init,init.orig}
-
- # cp -v /scratch/factor/factor /sbin/init
-
- # cp -v /scratch/factor/factor.image /sbin/init.image
-
-*** Static IP networking ***
-
-If you use a static IP in your network then Factor can take care of
-networking.
-
- # emacs /etc/raptor/config.factor
-
- (change the settings accordingly)
-
-The udev system has a hook to bring up ethernet interfaces when they
-are detected. Let's remove this hook since we'll be bringing up the
-interface. Actually, we'll move it, not delete it.
-
- # mv -v /etc/udev/rules.d/85-ifupdown.rules /root
-
-*** DHCP networking ***
-
-If you're using dhcp then we'll fall back on what Ubuntu offers. In
-your config.factor change the line :
-
- start-networking
-
-to
-
- "loopback" start-service
- "networking" start-service
-
-Add these to your reboot-hook and shutdown-hook :
-
- "loopback" stop-service
- "networking" stop-service
-
-*** Editing the hooks ***
-
-The items in boot-hook correspond to the things in '/etc/rcS.d' and
-'/etc/rc2.d'. Feel free to add and remove items from that hook. For
-example, I removed the printer services. I also removed other things
-that I didn't feel were necessary on my system.
-
-*** Grub ***
-
-Edit your '/boot/grub/menu.lst'. Basically, copy and paste your
-current good entry. My default entry is this:
-
-title Ubuntu, kernel 2.6.15-28-686
-root (hd0,0)
-kernel /boot/vmlinuz-2.6.15-28-686 root=/dev/hda1 ro quiet splash
-initrd /boot/initrd.img-2.6.15-28-686
-savedefault
-boot
-
-I pasted a copy above it and edited it to look like this:
-
-title Raptor, kernel 2.6.15-28-686
-root (hd0,0)
-kernel /boot/vmlinuz-2.6.15-28-686 root=/dev/hda1 ro quiet -run=ubuntu.dapper.boot
-initrd /boot/initrd.img-2.6.15-28-686
-savedefault
-boot
-
-* Note that I removed the 'splash' kernel option
-
-* Note the '-run=ubuntu.dapper.boot' option. Unfortunately, this isn't
- working yet...
-
-*** Boot ***
-
-Reboot or turn on your computer. Eventually, hopefully, you'll be at a
-Factor prompt. Boot your system:
-
- ( scratchpad ) boot
-
-You'll probably be prompted to select a vocab. Select 'raptor'.
-
-*** Now what ***
-
-The virtual consoles are allocated like so:
-
- 1 - Main listener console
- 2 - listener
- 3 - listener
- 4 - listener
- 5 - getty
- 6 - getty
-
-So you're next step might be to alt-f5, login, and run startx.
-
-*** Join the fun ***
-
-Take a loot at what happens during run levels S and 2. Implement a
-Factor version of something. Let me know about it.
-
-USING: regexp tools.test ;
+USING: regexp tools.test kernel ;
IN: regexp-tests
-[ f ] [ "b" "a*" matches? ] unit-test
-[ t ] [ "" "a*" matches? ] unit-test
-[ t ] [ "a" "a*" matches? ] unit-test
-[ t ] [ "aaaaaaa" "a*" matches? ] unit-test
-[ f ] [ "ab" "a*" matches? ] unit-test
-
-[ t ] [ "abc" "abc" matches? ] unit-test
-[ t ] [ "a" "a|b|c" matches? ] unit-test
-[ t ] [ "b" "a|b|c" matches? ] unit-test
-[ t ] [ "c" "a|b|c" matches? ] unit-test
-[ f ] [ "c" "d|e|f" matches? ] unit-test
-
-[ f ] [ "aa" "a|b|c" matches? ] unit-test
-[ f ] [ "bb" "a|b|c" matches? ] unit-test
-[ f ] [ "cc" "a|b|c" matches? ] unit-test
-[ f ] [ "cc" "d|e|f" matches? ] unit-test
-
-[ f ] [ "" "a+" matches? ] unit-test
-[ t ] [ "a" "a+" matches? ] unit-test
-[ t ] [ "aa" "a+" matches? ] unit-test
-
-[ t ] [ "" "a?" matches? ] unit-test
-[ t ] [ "a" "a?" matches? ] unit-test
-[ f ] [ "aa" "a?" matches? ] unit-test
-
-[ f ] [ "" "." matches? ] unit-test
-[ t ] [ "a" "." matches? ] unit-test
-[ t ] [ "." "." matches? ] unit-test
-[ f ] [ "\n" "." matches? ] unit-test
-
-[ f ] [ "" ".+" matches? ] unit-test
-[ t ] [ "a" ".+" matches? ] unit-test
-[ t ] [ "ab" ".+" matches? ] unit-test
-
-[ t ] [ "" "a|b*|c+|d?" matches? ] unit-test
-[ t ] [ "a" "a|b*|c+|d?" matches? ] unit-test
-[ t ] [ "c" "a|b*|c+|d?" matches? ] unit-test
-[ t ] [ "cc" "a|b*|c+|d?" matches? ] unit-test
-[ f ] [ "ccd" "a|b*|c+|d?" matches? ] unit-test
-[ t ] [ "d" "a|b*|c+|d?" matches? ] unit-test
-
-[ t ] [ "foo" "foo|bar" matches? ] unit-test
-[ t ] [ "bar" "foo|bar" matches? ] unit-test
-[ f ] [ "foobar" "foo|bar" matches? ] unit-test
-
-[ f ] [ "" "(a)" matches? ] unit-test
-[ t ] [ "a" "(a)" matches? ] unit-test
-[ f ] [ "aa" "(a)" matches? ] unit-test
-[ t ] [ "aa" "(a*)" matches? ] unit-test
-
-[ f ] [ "aababaaabbac" "(a|b)+" matches? ] unit-test
-[ t ] [ "ababaaabba" "(a|b)+" matches? ] unit-test
-
-[ f ] [ "" "a{1}" matches? ] unit-test
-[ t ] [ "a" "a{1}" matches? ] unit-test
-[ f ] [ "aa" "a{1}" matches? ] unit-test
-
-[ f ] [ "a" "a{2,}" matches? ] unit-test
-[ t ] [ "aaa" "a{2,}" matches? ] unit-test
-[ t ] [ "aaaa" "a{2,}" matches? ] unit-test
-[ t ] [ "aaaaa" "a{2,}" matches? ] unit-test
-
-[ t ] [ "" "a{,2}" matches? ] unit-test
-[ t ] [ "a" "a{,2}" matches? ] unit-test
-[ t ] [ "aa" "a{,2}" matches? ] unit-test
-[ f ] [ "aaa" "a{,2}" matches? ] unit-test
-[ f ] [ "aaaa" "a{,2}" matches? ] unit-test
-[ f ] [ "aaaaa" "a{,2}" matches? ] unit-test
-
-[ f ] [ "" "a{1,3}" matches? ] unit-test
-[ t ] [ "a" "a{1,3}" matches? ] unit-test
-[ t ] [ "aa" "a{1,3}" matches? ] unit-test
-[ t ] [ "aaa" "a{1,3}" matches? ] unit-test
-[ f ] [ "aaaa" "a{1,3}" matches? ] unit-test
-
-[ f ] [ "" "[a]" matches? ] unit-test
-[ t ] [ "a" "[a]" matches? ] unit-test
-[ t ] [ "a" "[abc]" matches? ] unit-test
-[ f ] [ "b" "[a]" matches? ] unit-test
-[ f ] [ "d" "[abc]" matches? ] unit-test
-[ t ] [ "ab" "[abc]{1,2}" matches? ] unit-test
-[ f ] [ "abc" "[abc]{1,2}" matches? ] unit-test
-
-[ f ] [ "" "[^a]" matches? ] unit-test
-[ f ] [ "a" "[^a]" matches? ] unit-test
-[ f ] [ "a" "[^abc]" matches? ] unit-test
-[ t ] [ "b" "[^a]" matches? ] unit-test
-[ t ] [ "d" "[^abc]" matches? ] unit-test
-[ f ] [ "ab" "[^abc]{1,2}" matches? ] unit-test
-[ f ] [ "abc" "[^abc]{1,2}" matches? ] unit-test
-
-[ t ] [ "]" "[]]" matches? ] unit-test
-[ f ] [ "]" "[^]]" matches? ] unit-test
-
-[ "^" "[^]" matches? ] unit-test-fails
-[ t ] [ "^" "[]^]" matches? ] unit-test
-[ t ] [ "]" "[]^]" matches? ] unit-test
-
-[ t ] [ "[" "[[]" matches? ] unit-test
-[ f ] [ "^" "[^^]" matches? ] unit-test
-[ t ] [ "a" "[^^]" matches? ] unit-test
-
-[ t ] [ "-" "[-]" matches? ] unit-test
-[ f ] [ "a" "[-]" matches? ] unit-test
-[ f ] [ "-" "[^-]" matches? ] unit-test
-[ t ] [ "a" "[^-]" matches? ] unit-test
-
-[ t ] [ "-" "[-a]" matches? ] unit-test
-[ t ] [ "a" "[-a]" matches? ] unit-test
-[ t ] [ "-" "[a-]" matches? ] unit-test
-[ t ] [ "a" "[a-]" matches? ] unit-test
-[ f ] [ "b" "[a-]" matches? ] unit-test
-[ f ] [ "-" "[^-]" matches? ] unit-test
-[ t ] [ "a" "[^-]" matches? ] unit-test
-
-[ f ] [ "-" "[a-c]" matches? ] unit-test
-[ t ] [ "-" "[^a-c]" matches? ] unit-test
-[ t ] [ "b" "[a-c]" matches? ] unit-test
-[ f ] [ "b" "[^a-c]" matches? ] unit-test
-
-[ t ] [ "-" "[a-c-]" matches? ] unit-test
-[ f ] [ "-" "[^a-c-]" matches? ] unit-test
-
-[ t ] [ "\\" "[\\\\]" matches? ] unit-test
-[ f ] [ "a" "[\\\\]" matches? ] unit-test
-[ f ] [ "\\" "[^\\\\]" matches? ] unit-test
-[ t ] [ "a" "[^\\\\]" matches? ] unit-test
-
-[ t ] [ "0" "[\\d]" matches? ] unit-test
-[ f ] [ "a" "[\\d]" matches? ] unit-test
-[ f ] [ "0" "[^\\d]" matches? ] unit-test
-[ t ] [ "a" "[^\\d]" matches? ] unit-test
-
-[ t ] [ "a" "[a-z]{1,}|[A-Z]{2,4}|b*|c|(f|g)*" matches? ] unit-test
-[ t ] [ "a" "[a-z]{1,2}|[A-Z]{3,3}|b*|c|(f|g)*" matches? ] unit-test
-[ t ] [ "a" "[a-z]{1,2}|[A-Z]{3,3}" matches? ] unit-test
-
-[ t ] [ "1000" "\\d{4,6}" matches? ] unit-test
-! [ t ] [ "1000" "[0-9]{4,6}" matches? ] unit-test
-
+[ f ] [ "b" "a*" f <regexp> matches? ] unit-test
+[ t ] [ "" "a*" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a*" f <regexp> matches? ] unit-test
+[ t ] [ "aaaaaaa" "a*" f <regexp> matches? ] unit-test
+[ f ] [ "ab" "a*" f <regexp> matches? ] unit-test
+
+[ t ] [ "abc" "abc" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a|b|c" f <regexp> matches? ] unit-test
+[ t ] [ "b" "a|b|c" f <regexp> matches? ] unit-test
+[ t ] [ "c" "a|b|c" f <regexp> matches? ] unit-test
+[ f ] [ "c" "d|e|f" f <regexp> matches? ] unit-test
+
+[ f ] [ "aa" "a|b|c" f <regexp> matches? ] unit-test
+[ f ] [ "bb" "a|b|c" f <regexp> matches? ] unit-test
+[ f ] [ "cc" "a|b|c" f <regexp> matches? ] unit-test
+[ f ] [ "cc" "d|e|f" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "a+" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a+" f <regexp> matches? ] unit-test
+[ t ] [ "aa" "a+" f <regexp> matches? ] unit-test
+
+[ t ] [ "" "a?" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a?" f <regexp> matches? ] unit-test
+[ f ] [ "aa" "a?" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "." f <regexp> matches? ] unit-test
+[ t ] [ "a" "." f <regexp> matches? ] unit-test
+[ t ] [ "." "." f <regexp> matches? ] unit-test
+! [ f ] [ "\n" "." f <regexp> matches? ] unit-test
+
+[ f ] [ "" ".+" f <regexp> matches? ] unit-test
+[ t ] [ "a" ".+" f <regexp> matches? ] unit-test
+[ t ] [ "ab" ".+" f <regexp> matches? ] unit-test
+
+[ t ] [ "" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+[ t ] [ "c" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+[ t ] [ "cc" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+[ f ] [ "ccd" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+[ t ] [ "d" "a|b*|c+|d?" f <regexp> matches? ] unit-test
+
+[ t ] [ "foo" "foo|bar" f <regexp> matches? ] unit-test
+[ t ] [ "bar" "foo|bar" f <regexp> matches? ] unit-test
+[ f ] [ "foobar" "foo|bar" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "(a)" f <regexp> matches? ] unit-test
+[ t ] [ "a" "(a)" f <regexp> matches? ] unit-test
+[ f ] [ "aa" "(a)" f <regexp> matches? ] unit-test
+[ t ] [ "aa" "(a*)" f <regexp> matches? ] unit-test
+
+[ f ] [ "aababaaabbac" "(a|b)+" f <regexp> matches? ] unit-test
+[ t ] [ "ababaaabba" "(a|b)+" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "a{1}" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a{1}" f <regexp> matches? ] unit-test
+[ f ] [ "aa" "a{1}" f <regexp> matches? ] unit-test
+
+[ f ] [ "a" "a{2,}" f <regexp> matches? ] unit-test
+[ t ] [ "aaa" "a{2,}" f <regexp> matches? ] unit-test
+[ t ] [ "aaaa" "a{2,}" f <regexp> matches? ] unit-test
+[ t ] [ "aaaaa" "a{2,}" f <regexp> matches? ] unit-test
+
+[ t ] [ "" "a{,2}" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a{,2}" f <regexp> matches? ] unit-test
+[ t ] [ "aa" "a{,2}" f <regexp> matches? ] unit-test
+[ f ] [ "aaa" "a{,2}" f <regexp> matches? ] unit-test
+[ f ] [ "aaaa" "a{,2}" f <regexp> matches? ] unit-test
+[ f ] [ "aaaaa" "a{,2}" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "a{1,3}" f <regexp> matches? ] unit-test
+[ t ] [ "a" "a{1,3}" f <regexp> matches? ] unit-test
+[ t ] [ "aa" "a{1,3}" f <regexp> matches? ] unit-test
+[ t ] [ "aaa" "a{1,3}" f <regexp> matches? ] unit-test
+[ f ] [ "aaaa" "a{1,3}" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "[a]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[a]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[abc]" f <regexp> matches? ] unit-test
+[ f ] [ "b" "[a]" f <regexp> matches? ] unit-test
+[ f ] [ "d" "[abc]" f <regexp> matches? ] unit-test
+[ t ] [ "ab" "[abc]{1,2}" f <regexp> matches? ] unit-test
+[ f ] [ "abc" "[abc]{1,2}" f <regexp> matches? ] unit-test
+
+[ f ] [ "" "[^a]" f <regexp> matches? ] unit-test
+[ f ] [ "a" "[^a]" f <regexp> matches? ] unit-test
+[ f ] [ "a" "[^abc]" f <regexp> matches? ] unit-test
+[ t ] [ "b" "[^a]" f <regexp> matches? ] unit-test
+[ t ] [ "d" "[^abc]" f <regexp> matches? ] unit-test
+[ f ] [ "ab" "[^abc]{1,2}" f <regexp> matches? ] unit-test
+[ f ] [ "abc" "[^abc]{1,2}" f <regexp> matches? ] unit-test
+
+[ t ] [ "]" "[]]" f <regexp> matches? ] unit-test
+[ f ] [ "]" "[^]]" f <regexp> matches? ] unit-test
+
+! [ "^" "[^]" f <regexp> matches? ] unit-test-fails
+[ t ] [ "^" "[]^]" f <regexp> matches? ] unit-test
+[ t ] [ "]" "[]^]" f <regexp> matches? ] unit-test
+
+[ t ] [ "[" "[[]" f <regexp> matches? ] unit-test
+[ f ] [ "^" "[^^]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[^^]" f <regexp> matches? ] unit-test
+
+[ t ] [ "-" "[-]" f <regexp> matches? ] unit-test
+[ f ] [ "a" "[-]" f <regexp> matches? ] unit-test
+[ f ] [ "-" "[^-]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[^-]" f <regexp> matches? ] unit-test
+
+[ t ] [ "-" "[-a]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[-a]" f <regexp> matches? ] unit-test
+[ t ] [ "-" "[a-]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[a-]" f <regexp> matches? ] unit-test
+[ f ] [ "b" "[a-]" f <regexp> matches? ] unit-test
+[ f ] [ "-" "[^-]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[^-]" f <regexp> matches? ] unit-test
+
+[ f ] [ "-" "[a-c]" f <regexp> matches? ] unit-test
+[ t ] [ "-" "[^a-c]" f <regexp> matches? ] unit-test
+[ t ] [ "b" "[a-c]" f <regexp> matches? ] unit-test
+[ f ] [ "b" "[^a-c]" f <regexp> matches? ] unit-test
+
+[ t ] [ "-" "[a-c-]" f <regexp> matches? ] unit-test
+[ f ] [ "-" "[^a-c-]" f <regexp> matches? ] unit-test
+
+[ t ] [ "\\" "[\\\\]" f <regexp> matches? ] unit-test
+[ f ] [ "a" "[\\\\]" f <regexp> matches? ] unit-test
+[ f ] [ "\\" "[^\\\\]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[^\\\\]" f <regexp> matches? ] unit-test
+
+[ t ] [ "0" "[\\d]" f <regexp> matches? ] unit-test
+[ f ] [ "a" "[\\d]" f <regexp> matches? ] unit-test
+[ f ] [ "0" "[^\\d]" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[^\\d]" f <regexp> matches? ] unit-test
+
+[ t ] [ "a" "[a-z]{1,}|[A-Z]{2,4}|b*|c|(f|g)*" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[a-z]{1,2}|[A-Z]{3,3}|b*|c|(f|g)*" f <regexp> matches? ] unit-test
+[ t ] [ "a" "[a-z]{1,2}|[A-Z]{3,3}" f <regexp> matches? ] unit-test
+
+[ t ] [ "1000" "\\d{4,6}" f <regexp> matches? ] unit-test
+[ t ] [ "1000" "[0-9]{4,6}" f <regexp> matches? ] unit-test
+
+[ t ] [ "abc" "\\p{Lower}{3}" f <regexp> matches? ] unit-test
+[ f ] [ "ABC" "\\p{Lower}{3}" f <regexp> matches? ] unit-test
+[ t ] [ "ABC" "\\p{Upper}{3}" f <regexp> matches? ] unit-test
+[ f ] [ "abc" "\\p{Upper}{3}" f <regexp> matches? ] unit-test
+
+[ f ] [ "abc" "[\\p{Upper}]{3}" f <regexp> matches? ] unit-test
+[ t ] [ "ABC" "[\\p{Upper}]{3}" f <regexp> matches? ] unit-test
+
+[ t ] [ "" "\\Q\\E" f <regexp> matches? ] unit-test
+[ f ] [ "a" "\\Q\\E" f <regexp> matches? ] unit-test
+[ t ] [ "|*+" "\\Q|*+\\E" f <regexp> matches? ] unit-test
+[ f ] [ "abc" "\\Q|*+\\E" f <regexp> matches? ] unit-test
+
+[ t ] [ "S" "\\0123" f <regexp> matches? ] unit-test
+[ t ] [ "SXY" "\\0123XY" f <regexp> matches? ] unit-test
+[ t ] [ "x" "\\x78" f <regexp> matches? ] unit-test
+[ f ] [ "y" "\\x78" f <regexp> matches? ] unit-test
+[ t ] [ "x" "\\u0078" f <regexp> matches? ] unit-test
+[ f ] [ "y" "\\u0078" f <regexp> matches? ] unit-test
+
+[ t ] [ "ab" "a+b" f <regexp> matches? ] unit-test
+[ f ] [ "b" "a+b" f <regexp> matches? ] unit-test
+[ t ] [ "aab" "a+b" f <regexp> matches? ] unit-test
+[ f ] [ "abb" "a+b" f <regexp> matches? ] unit-test
+
+[ t ] [ "abbbb" "ab*" f <regexp> matches? ] unit-test
+[ t ] [ "a" "ab*" f <regexp> matches? ] unit-test
+[ f ] [ "abab" "ab*" f <regexp> matches? ] unit-test
+
+[ f ] [ "x" "\\." f <regexp> matches? ] unit-test
+[ t ] [ "." "\\." f <regexp> matches? ] unit-test
+
+[ t ] [ "aaaab" "a+ab" f <regexp> matches? ] unit-test
+[ f ] [ "aaaxb" "a+ab" f <regexp> matches? ] unit-test
+[ t ] [ "aaacb" "a+cb" f <regexp> matches? ] unit-test
+[ f ] [ "aaaab" "a++ab" f <regexp> matches? ] unit-test
+[ t ] [ "aaacb" "a++cb" f <regexp> matches? ] unit-test
+
+[ 3 ] [ "aaacb" "a*" f <regexp> match-head ] unit-test
+[ 1 ] [ "aaacb" "a+?" f <regexp> match-head ] unit-test
+[ 2 ] [ "aaacb" "aa?" f <regexp> match-head ] unit-test
+[ 1 ] [ "aaacb" "aa??" f <regexp> match-head ] unit-test
+[ 3 ] [ "aacb" "aa?c" f <regexp> match-head ] unit-test
+[ 3 ] [ "aacb" "aa??c" f <regexp> match-head ] unit-test
+
+[ t ] [ "aaa" "AAA" t <regexp> matches? ] unit-test
+[ f ] [ "aax" "AAA" t <regexp> matches? ] unit-test
+[ t ] [ "aaa" "A*" t <regexp> matches? ] unit-test
+[ f ] [ "aaba" "A*" t <regexp> matches? ] unit-test
+[ t ] [ "b" "[AB]" t <regexp> matches? ] unit-test
+[ f ] [ "c" "[AB]" t <regexp> matches? ] unit-test
+[ t ] [ "c" "[A-Z]" t <regexp> matches? ] unit-test
+[ f ] [ "3" "[A-Z]" t <regexp> matches? ] unit-test
+
+[ ] [
+ "(0[lL]?|[1-9]\\d{0,9}(\\d{0,9}[lL])?|0[xX]\\p{XDigit}{1,8}(\\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\\.[0-9]*|\\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))"
+ f <regexp> drop
+] unit-test
+
+[ t ] [ "fxxbar" "(?!foo).{3}bar" f <regexp> matches? ] unit-test
+[ f ] [ "foobar" "(?!foo).{3}bar" f <regexp> matches? ] unit-test
+
+[ 3 ] [ "foobar" "foo(?=bar)" f <regexp> match-head ] unit-test
+[ f ] [ "foobxr" "foo(?=bar)" f <regexp> match-head ] unit-test
+
+[ f ] [ "foobxr" "foo\\z" f <regexp> match-head ] unit-test
+[ 3 ] [ "foo" "foo\\z" f <regexp> match-head ] unit-test
+
+[ 3 ] [ "foo bar" "foo\\b" f <regexp> match-head ] unit-test
+[ f ] [ "fooxbar" "foo\\b" f <regexp> matches? ] unit-test
+[ t ] [ "foo" "foo\\b" f <regexp> matches? ] unit-test
+[ t ] [ "foo bar" "foo\\b bar" f <regexp> matches? ] unit-test
+[ f ] [ "fooxbar" "foo\\bxbar" f <regexp> matches? ] unit-test
+[ f ] [ "foo" "foo\\bbar" f <regexp> matches? ] unit-test
+
+[ f ] [ "foo bar" "foo\\B" f <regexp> matches? ] unit-test
+[ 3 ] [ "fooxbar" "foo\\B" f <regexp> match-head ] unit-test
+[ t ] [ "foo" "foo\\B" f <regexp> matches? ] unit-test
+[ f ] [ "foo bar" "foo\\B bar" f <regexp> matches? ] unit-test
+[ t ] [ "fooxbar" "foo\\Bxbar" f <regexp> matches? ] unit-test
+[ f ] [ "foo" "foo\\Bbar" f <regexp> matches? ] unit-test
USING: arrays combinators kernel lazy-lists math math.parser
namespaces parser parser-combinators parser-combinators.simple
-promises quotations sequences sequences.lib strings ;
-USING: continuations io prettyprint ;
+promises quotations sequences combinators.lib strings
+assocs prettyprint.backend memoize ;
+USE: io
IN: regexp
-: 'any-char'
- "." token [ drop any-char-parser ] <@ ;
+<PRIVATE
+
+SYMBOL: ignore-case?
+
+: char=-quot ( ch -- quot )
+ ignore-case? get
+ [ ch>upper [ swap ch>upper = ] ] [ [ = ] ] if
+ curry ;
+
+: char-between?-quot ( ch1 ch2 -- quot )
+ ignore-case? get
+ [ [ ch>upper ] 2apply [ >r >r ch>upper r> r> between? ] ]
+ [ [ between? ] ]
+ if 2curry ;
+
+: or-predicates ( quots -- quot )
+ [ \ dup add* ] map [ [ t ] ] f short-circuit \ nip add ;
+
+: <@literal [ nip ] curry <@ ;
+
+: <@delay [ curry ] curry <@ ;
+
+PRIVATE>
-: escaped-char
+: ascii? ( n -- ? )
+ 0 HEX: 7f between? ;
+
+: octal-digit? ( n -- ? )
+ CHAR: 0 CHAR: 7 between? ;
+
+: decimal-digit? ( n -- ? )
+ CHAR: 0 CHAR: 9 between? ;
+
+: hex-digit? ( n -- ? )
+ dup decimal-digit?
+ over CHAR: a CHAR: f between? or
+ swap CHAR: A CHAR: F between? or ;
+
+: control-char? ( n -- ? )
+ dup 0 HEX: 1f between?
+ swap HEX: 7f = or ;
+
+: punct? ( n -- ? )
+ "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~" member? ;
+
+: c-identifier-char? ( ch -- ? )
+ dup alpha? swap CHAR: _ = or ;
+
+: java-blank? ( n -- ? )
{
- { CHAR: d [ [ digit? ] ] }
- { CHAR: D [ [ digit? not ] ] }
- { CHAR: s [ [ blank? ] ] }
- { CHAR: S [ [ blank? not ] ] }
- { CHAR: \\ [ [ CHAR: \\ = ] ] }
- [ "bad \\, use \\\\ to match a literal \\" throw ]
- } case ;
+ CHAR: \s
+ CHAR: \t CHAR: \n CHAR: \r
+ HEX: c HEX: 7 HEX: 1b
+ } member? ;
-: 'escaped-char'
- "\\" token any-char-parser &> [ escaped-char ] <@ ;
+: java-printable? ( n -- ? )
+ dup alpha? swap punct? or ;
-! Must escape to use as literals
-! : meta-chars "[\\^$.|?*+()" ;
+: 'ordinary-char' ( -- parser )
+ [ "\\^*+?|(){}[$" member? not ] satisfy
+ [ char=-quot ] <@ ;
-: 'ordinary-char'
- [ "\\^*+?|(){}[" member? not ] satisfy ;
+: 'octal-digit' ( -- parser ) [ octal-digit? ] satisfy ;
-: 'char' 'escaped-char' 'ordinary-char' <|> ;
+: 'octal' ( -- parser )
+ "0" token 'octal-digit' 1 3 from-m-to-n &>
+ [ oct> ] <@ ;
-: 'string'
- 'char' <+> [
- [ dup quotation? [ satisfy ] [ 1token ] if ] [ <&> ] map-reduce
- ] <@ ;
+: 'hex-digit' ( -- parser ) [ hex-digit? ] satisfy ;
-: exactly-n ( parser n -- parser' )
- swap <repetition> and-parser construct-boa ;
+: 'hex' ( -- parser )
+ "x" token 'hex-digit' 2 exactly-n &>
+ "u" token 'hex-digit' 4 exactly-n &> <|>
+ [ hex> ] <@ ;
-: at-most-n ( parser n -- parser' )
- dup zero? [
- 2drop epsilon
- ] [
- 2dup exactly-n
- -rot 1- at-most-n <|>
- ] if ;
+: satisfy-tokens ( assoc -- parser )
+ [ >r token r> <@literal ] { } assoc>map <or-parser> ;
-: at-least-n ( parser n -- parser' )
- dupd exactly-n swap <*> <&> ;
+: 'simple-escape-char' ( -- parser )
+ {
+ { "\\" CHAR: \\ }
+ { "t" CHAR: \t }
+ { "n" CHAR: \n }
+ { "r" CHAR: \r }
+ { "f" HEX: c }
+ { "a" HEX: 7 }
+ { "e" HEX: 1b }
+ } [ char=-quot ] assoc-map satisfy-tokens ;
+
+: 'predefined-char-class' ( -- parser )
+ {
+ { "d" [ digit? ] }
+ { "D" [ digit? not ] }
+ { "s" [ java-blank? ] }
+ { "S" [ java-blank? not ] }
+ { "w" [ c-identifier-char? ] }
+ { "W" [ c-identifier-char? not ] }
+ } satisfy-tokens ;
+
+: 'posix-character-class' ( -- parser )
+ {
+ { "Lower" [ letter? ] }
+ { "Upper" [ LETTER? ] }
+ { "ASCII" [ ascii? ] }
+ { "Alpha" [ Letter? ] }
+ { "Digit" [ digit? ] }
+ { "Alnum" [ alpha? ] }
+ { "Punct" [ punct? ] }
+ { "Graph" [ java-printable? ] }
+ { "Print" [ java-printable? ] }
+ { "Blank" [ " \t" member? ] }
+ { "Cntrl" [ control-char? ] }
+ { "XDigit" [ hex-digit? ] }
+ { "Space" [ java-blank? ] }
+ } satisfy-tokens "p{" "}" surrounded-by ;
+
+: 'simple-escape' ( -- parser )
+ 'octal'
+ 'hex' <|>
+ "c" token [ LETTER? ] satisfy &> <|>
+ any-char-parser <|>
+ [ char=-quot ] <@ ;
-: from-m-to-n ( parser m n -- parser' )
- >r [ exactly-n ] 2keep r> swap - at-most-n <&> ;
+: 'escape' ( -- parser )
+ "\\" token
+ 'simple-escape-char'
+ 'predefined-char-class' <|>
+ 'posix-character-class' <|>
+ 'simple-escape' <|> &> ;
+
+: 'any-char'
+ "." token [ drop t ] <@literal ;
+
+: 'char'
+ 'any-char' 'escape' 'ordinary-char' <|> <|> [ satisfy ] <@ ;
DEFER: 'regexp'
C: <group-result> group-result
-: 'grouping'
- "(" token
- 'regexp' [ [ <group-result> ] <@ ] <@
- ")" token <& &> ;
-
-! Special cases: ]\\^-
-: predicates>cond ( seq -- quot )
- #! Takes an array of quotation predicates/objects and makes a cond
- #! Makes a predicate of each obj like so: [ dup obj = ]
- #! Leaves quotations alone
- #! The cond returns a boolean, t if one of the predicates matches
- [
- dup callable? [ [ = ] curry ] unless
- [ dup ] swap compose [ drop t ] 2array
- ] map { [ t ] [ drop f ] } add [ cond ] curry ;
+: 'non-capturing-group' ( -- parser )
+ "?:" token 'regexp' &> ;
+
+: 'positive-lookahead-group' ( -- parser )
+ "?=" token 'regexp' &> [ ensure ] <@ ;
+
+: 'negative-lookahead-group' ( -- parser )
+ "?!" token 'regexp' &> [ ensure-not ] <@ ;
-: 'range'
+: 'simple-group' ( -- parser )
+ 'regexp' [ [ <group-result> ] <@ ] <@ ;
+
+: 'group' ( -- parser )
+ 'non-capturing-group'
+ 'positive-lookahead-group'
+ 'negative-lookahead-group'
+ 'simple-group' <|> <|> <|>
+ "(" ")" surrounded-by ;
+
+: 'range' ( -- parser )
any-char-parser "-" token <& any-char-parser <&>
- [ first2 [ between? ] 2curry ] <@ ;
-
-: 'character-class-contents'
- 'escaped-char'
- 'range' <|>
- [ "\\]" member? not ] satisfy <|> ;
-
-: 'character-class'
- "[" token
- "^" token 'character-class-contents' <+> <&:>
- [ predicates>cond [ not ] compose satisfy ] <@
- "]" token [ first ] <@ 'character-class-contents' <*> <&:>
- [ predicates>cond satisfy ] <@ <|>
- 'character-class-contents' <+> [ predicates>cond satisfy ] <@ <|>
- &>
- "]" token <& ;
-
-: 'term'
- 'any-char'
- 'string' <|>
- 'grouping' <|>
+ [ first2 char-between?-quot ] <@ ;
+
+: 'character-class-term' ( -- parser )
+ 'range'
+ 'escape' <|>
+ [ "\\]" member? not ] satisfy [ char=-quot ] <@ <|> ;
+
+: 'positive-character-class' ( -- parser )
+ "]" token [ CHAR: ] = ] <@literal 'character-class-term' <*> <&:>
+ 'character-class-term' <+> <|>
+ [ or-predicates ] <@ ;
+
+: 'negative-character-class' ( -- parser )
+ "^" token 'positive-character-class' &>
+ [ [ not ] append ] <@ ;
+
+: 'character-class' ( -- parser )
+ 'negative-character-class' 'positive-character-class' <|>
+ "[" "]" surrounded-by [ satisfy ] <@ ;
+
+: 'escaped-seq' ( -- parser )
+ any-char-parser <*>
+ [ ignore-case? get <token-parser> ] <@
+ "\\Q" "\\E" surrounded-by ;
+
+: 'break' ( quot -- parser )
+ satisfy ensure epsilon just <|> ;
+
+: 'break-escape' ( -- parser )
+ "$" token [ "\r\n" member? ] 'break' <@literal
+ "\\b" token [ blank? ] 'break' <@literal <|>
+ "\\B" token [ blank? not ] 'break' <@literal <|>
+ "\\z" token epsilon just <@literal <|> ;
+
+: 'simple' ( -- parser )
+ 'escaped-seq'
+ 'break-escape' <|>
+ 'group' <|>
'character-class' <|>
- <+> [
- dup length 1 =
- [ first ] [ and-parser construct-boa ] if
- ] <@ ;
-
-: 'interval'
- 'term' "{" token <& 'integer' <&> "}" token <& [ first2 exactly-n ] <@
- 'term' "{" token <& 'integer' <&> "," token <& "}" token <&
- [ first2 at-least-n ] <@ <|>
- 'term' "{" token <& "," token <& 'integer' <&> "}" token <&
- [ first2 at-most-n ] <@ <|>
- 'term' "{" token <& 'integer' <&> "," token <& 'integer' <:&> "}" token <&
- [ first3 from-m-to-n ] <@ <|> ;
-
-: 'repetition'
- 'term'
- [ "*+?" member? ] satisfy <&> [
- first2 {
- { CHAR: * [ <*> ] }
- { CHAR: + [ <+> ] }
- { CHAR: ? [ <?> ] }
- } case
- ] <@ ;
-
-: 'simple' 'term' 'repetition' <|> 'interval' <|> ;
-
-LAZY: 'union' ( -- parser )
+ 'char' <|> ;
+
+: 'exactly-n' ( -- parser )
+ 'integer' [ exactly-n ] <@delay ;
+
+: 'at-least-n' ( -- parser )
+ 'integer' "," token <& [ at-least-n ] <@delay ;
+
+: 'at-most-n' ( -- parser )
+ "," token 'integer' &> [ at-most-n ] <@delay ;
+
+: 'from-m-to-n' ( -- parser )
+ 'integer' "," token <& 'integer' <&> [ first2 from-m-to-n ] <@delay ;
+
+: 'greedy-interval' ( -- parser )
+ 'exactly-n' 'at-least-n' <|> 'at-most-n' <|> 'from-m-to-n' <|> ;
+
+: 'interval' ( -- parser )
+ 'greedy-interval'
+ 'greedy-interval' "?" token <& [ "reluctant {}" print ] <@ <|>
+ 'greedy-interval' "+" token <& [ "possessive {}" print ] <@ <|>
+ "{" "}" surrounded-by ;
+
+: 'repetition' ( -- parser )
+ ! Posessive
+ "*+" token [ <!*> ] <@literal
+ "++" token [ <!+> ] <@literal <|>
+ "?+" token [ <!?> ] <@literal <|>
+ ! Reluctant
+ "*?" token [ <(*)> ] <@literal <|>
+ "+?" token [ <(+)> ] <@literal <|>
+ "??" token [ <(?)> ] <@literal <|>
+ ! Greedy
+ "*" token [ <*> ] <@literal <|>
+ "+" token [ <+> ] <@literal <|>
+ "?" token [ <?> ] <@literal <|> ;
+
+: 'dummy' ( -- parser )
+ epsilon [ ] <@literal ;
+
+MEMO: 'term' ( -- parser )
'simple'
- 'simple' "|" token 'union' &> <&> [ first2 <|> ] <@
- <|> ;
+ 'repetition' 'interval' 'dummy' <|> <|> <&> [ first2 call ] <@
+ <!+> [ <and-parser> ] <@ ;
LAZY: 'regexp' ( -- parser )
- 'repetition' 'union' <|> ;
+ 'term' "|" token nonempty-list-of [ <or-parser> ] <@ ;
+! "^" token 'term' "|" token nonempty-list-of [ <or-parser> ] <@
+! &> [ "caret" print ] <@ <|>
+! 'term' "|" token nonempty-list-of [ <or-parser> ] <@
+! "$" token <& [ "dollar" print ] <@ <|>
+! "^" token 'term' "|" token nonempty-list-of [ <or-parser> ] <@ &>
+! "$" token [ "caret dollar" print ] <@ <& <|> ;
+
+TUPLE: regexp source parser ignore-case? ;
+
+: <regexp> ( string ignore-case? -- regexp )
+ [
+ ignore-case? [
+ dup 'regexp' just parse-1
+ ] with-variable
+ ] keep regexp construct-boa ;
-: <regexp> 'regexp' just parse-1 ;
+: do-ignore-case ( string regexp -- string regexp )
+ dup regexp-ignore-case? [ >r >upper r> ] when ;
-GENERIC: >regexp ( obj -- parser )
-M: string >regexp 'regexp' just parse-1 ;
-M: object >regexp ;
+: matches? ( string regexp -- ? )
+ do-ignore-case regexp-parser just parse nil? not ;
-: matches? ( string regexp -- ? ) >regexp just parse nil? not ;
+: match-head ( string regexp -- end )
+ do-ignore-case regexp-parser parse dup nil?
+ [ drop f ] [ car parse-result-unparsed slice-from ] if ;
+
+! Literal syntax for regexps
+: parse-options ( string -- ? )
+ #! Lame
+ {
+ { "" [ f ] }
+ { "i" [ t ] }
+ } case ;
: parse-regexp ( accum end -- accum )
lexer get dup skip-blank [
[ index* dup 1+ swap ] 2keep swapd subseq swap
- ] change-column <regexp> parsed ;
+ ] change-column
+ lexer get (parse-token) parse-options <regexp> parsed ;
-: R/ CHAR: / parse-regexp ; parsing
-: R| CHAR: | parse-regexp ; parsing
+: R! CHAR: ! parse-regexp ; parsing
: R" CHAR: " parse-regexp ; parsing
+: R# CHAR: # parse-regexp ; parsing
: R' CHAR: ' parse-regexp ; parsing
+: R( CHAR: ) parse-regexp ; parsing
+: R/ CHAR: / parse-regexp ; parsing
+: R@ CHAR: @ parse-regexp ; parsing
+: R[ CHAR: ] parse-regexp ; parsing
: R` CHAR: ` parse-regexp ; parsing
+: R{ CHAR: } parse-regexp ; parsing
+: R| CHAR: | parse-regexp ; parsing
+
+: find-regexp-syntax ( string -- prefix suffix )
+ {
+ { "R/ " "/" }
+ { "R! " "!" }
+ { "R\" " "\"" }
+ { "R# " "#" }
+ { "R' " "'" }
+ { "R( " ")" }
+ { "R@ " "@" }
+ { "R[ " "]" }
+ { "R` " "`" }
+ { "R{ " "}" }
+ { "R| " "|" }
+ } swap [ subseq? not nip ] curry assoc-find drop ;
+
+M: regexp pprint*
+ [
+ dup regexp-source
+ dup find-regexp-syntax swap % swap % %
+ dup regexp-ignore-case? [ "i" % ] when
+ ] "" make
+ swap present-text ;
+++ /dev/null
-! Copyright (C) 2006 Chris Double.
-! See http://factorcode.org/license.txt for BSD license.
-!
-! Create a test database like follows:
-!
-! sqlite3 history.db
-! > create table rss (url text, title text, link text, primary key (url));
-! > create table entries (url text, link text, title text, description text, pubdate text, primary key(url, link));
-! > [eof]
-!
-IN: rss.reader
-USING: kernel html namespaces sequences io quotations
-assocs sqlite.tuple-db sqlite io.files html.elements
-rss webapps.continuation ;
-
-TUPLE: reader-feed url title link ;
-
-C: <reader-feed> reader-feed
-
-TUPLE: reader-entry url link title description pubdate ;
-
-C: <reader-entry> reader-entry
-
-reader-feed default-mapping set-mapping
-reader-entry default-mapping set-mapping
-
-: init-db ( -- )
- db get-global [ sqlite-close ] when*
- "rss-reader.db" exists? [
- "rss-reader.db" sqlite-open db set-global
- ] [
- "rss-reader.db" sqlite-open dup db set-global
- dup reader-feed create-tuple-table
- reader-entry create-tuple-table
- ] if ;
-
-: add-feed ( url -- )
- "" "" <reader-feed> db get swap insert-tuple ;
-
-: remove-feed ( url -- )
- f f <reader-feed> db get swap find-tuples [ db get swap delete-tuple ] each ;
-
-: all-urls ( -- urls )
- f f f <reader-feed> db get swap find-tuples [ reader-feed-url ] map ;
-
-: ask-for-url ( -- url )
- [
- <html>
- <head> <title> "Enter a Feed URL" write </title> </head>
- <body>
- <form =action "post" =method form>
- "URL: " write
- <input "text" =type "url" =name "100" =size input/>
- <input "submit" =type input/>
- </form>
- </body>
- </html>
- ] show "url" swap at ;
-
-: get-entries ( url -- entries )
- f f f f <reader-entry> db get swap find-tuples ;
-
-: display-entries ( url -- )
- [
- <html>
- <head> <title> "View entries for " write over write </title> </head>
- <body>
- swap get-entries [
- <h2> dup reader-entry-title write </h2>
- <p>
- reader-entry-description write
- </p>
- ] each
- <p> <a =href a> "Back" write </a> </p>
- </body>
- </html>
- ] show 2drop ;
-
-: rss>reader-feed ( url rss -- reader-feed )
- [ feed-title ] keep feed-link <reader-feed> ;
-
-: rss-entry>reader-entry ( url entry -- reader-entry )
- [ entry-link ] keep
- [ entry-title ] keep
- [ entry-description ] keep
- entry-pub-date
- <reader-entry> ;
-
-: update-feed-database ( url -- )
- dup remove-feed
- dup news-get
- 2dup rss>reader-feed db get swap save-tuple
- feed-entries [
- dupd rss-entry>reader-entry
- dup >r reader-entry-link f f f <reader-entry> db get swap find-tuples [ db get swap delete-tuple ] each r>
- db get swap save-tuple
- ] curry* each ;
-
-: update-feeds ( seq -- )
- [ update-feed-database ] each
- [
- <html>
- <head> <title> "Feeds Updated" write </title> </head>
- <body>
- <p> "Feeds Updated." write </p>
- <p> <a =href a> "Back" write </a> </p>
- </body>
- </html>
- ] show drop ;
-
-: maintain-feeds ( -- )
- [
- <html>
- <head> <title> "Maintain Feeds" write </title> </head>
- <body>
- <p>
- <table "1" =border table>
- all-urls [
- <tr>
- <td> dup write </td>
- <td> dup [ remove-feed ] curry "Remove" swap quot-href </td>
- <td> [ display-entries ] curry "Database" swap quot-href </td>
- </tr>
- ] each
- </table>
- </p>
- <p> "Add Feed" [ ask-for-url add-feed ] quot-href </p>
- <p> "Update Feeds" [ all-urls update-feeds ] quot-href </p>
- </body>
- </html>
- ] show-final ;
-
-"maintain-feeds" [ init-db maintain-feeds ] install-cont-responder
: ?children>string ( tag/f -- string/f )
[ children>string ] [ f ] if* ;
+: any-tag-named ( tag names -- tag-inside )
+ f -rot [ tag-named nip dup ] curry* find 2drop ;
+
TUPLE: feed title link entries ;
C: <feed> feed
C: <entry> entry
+: rss1.0-entry ( tag -- entry )
+ [ "title" tag-named children>string ] keep
+ [ "link" tag-named children>string ] keep
+ [ "description" tag-named children>string ] keep
+ f "date" "http://purl.org/dc/elements/1.1/" <name>
+ tag-named ?children>string
+ <entry> ;
+
: rss1.0 ( xml -- feed )
[
"channel" tag-named
[ "title" tag-named children>string ] keep
"link" tag-named children>string
] keep
- "item" tags-named [
- [ "title" tag-named children>string ] keep
- [ "link" tag-named children>string ] keep
- [ "description" tag-named children>string ] keep
- f "date" "http://purl.org/dc/elements/1.1/" <name>
- tag-named ?children>string
- <entry>
- ] map <feed> ;
+ "item" tags-named [ rss1.0-entry ] map <feed> ;
+
+: rss2.0-entry ( tag -- entry )
+ [ "title" tag-named children>string ] keep
+ [ "link" tag-named ] keep
+ [ "guid" tag-named dupd ? children>string ] keep
+ [ "description" tag-named children>string ] keep
+ "pubDate" tag-named children>string <entry> ;
: rss2.0 ( xml -- feed )
"channel" tag-named
[ "title" tag-named children>string ] keep
[ "link" tag-named children>string ] keep
- "item" tags-named [
- [ "title" tag-named children>string ] keep
- [ "link" tag-named ] keep
- [ "guid" tag-named dupd ? children>string ] keep
- [ "description" tag-named children>string ] keep
- "pubDate" tag-named children>string <entry>
- ] map <feed> ;
+ "item" tags-named [ rss2.0-entry ] map <feed> ;
+
+: atom1.0-entry ( tag -- entry )
+ [ "title" tag-named children>string ] keep
+ [ "link" tag-named "href" swap at ] keep
+ [
+ { "content" "summary" } any-tag-named
+ dup tag-children [ string? not ] contains?
+ [ tag-children [ write-chunk ] string-out ]
+ [ children>string ] if
+ ] keep
+ { "published" "updated" "issued" "modified" } any-tag-named
+ children>string <entry> ;
: atom1.0 ( xml -- feed )
[ "title" tag-named children>string ] keep
[ "link" tag-named "href" swap at ] keep
- "entry" tags-named [
- [ "title" tag-named children>string ] keep
- [ "link" tag-named "href" swap at ] keep
- [
- dup "content" tag-named
- [ nip ] [ "summary" tag-named ] if*
- dup tag-children [ tag? ] contains?
- [ tag-children [ write-chunk ] string-out ]
- [ children>string ] if
- ] keep
- dup "published" tag-named
- [ nip ] [ "updated" tag-named ] if*
- children>string <entry>
- ] map <feed> ;
+ "entry" tags-named [ atom1.0-entry ] map <feed> ;
: xml>feed ( xml -- feed )
dup name-tag {
]
XML> ;
-: write-feed ( feed -- xml )
+: write-feed ( feed -- )
feed>xml write-xml ;
USING: arrays kernel sequences sequences.lib math
-math.functions tools.test ;
+math.functions tools.test strings ;
[ 4 ] [ { 1 2 } [ sq ] [ * ] map-reduce ] unit-test
[ 36 ] [ { 2 3 } [ sq ] [ * ] map-reduce ] unit-test
[ 2 ] [ V{ 10 20 30 } [ delete-random drop ] keep length ] unit-test
[ V{ } [ delete-random drop ] keep length ] unit-test-fails
+
+[ { 1 9 25 } ] [ { 1 3 5 6 } [ sq ] [ even? ] map-until ] unit-test
+[ { 2 4 } ] [ { 2 4 1 3 } [ even? ] take-while ] unit-test
+
+[ { { 0 0 } { 1 0 } { 0 1 } { 1 1 } } ] [ 2 2 exact-strings ] unit-test
+[ t ] [ "ab" 4 strings [ >string ] map "abab" swap member? ] unit-test
+[ { { } { 1 } { 2 } { 1 2 } } ] [ { 1 2 } power-set ] unit-test
-USING: combinators.lib kernel sequences math namespaces
-random sequences.private shuffle ;
+USING: combinators.lib kernel sequences math namespaces assocs
+random sequences.private shuffle math.functions mirrors ;
+USING: arrays math.parser sorting strings ;
IN: sequences.lib
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
: split-around ( seq quot -- before elem after )
dupd find over [ "Element not found" throw ] unless
>r cut-slice 1 tail r> swap ; inline
+
+: (map-until) ( quot pred -- quot )
+ [ dup ] swap 3compose
+ [ [ drop t ] [ , f ] if ] compose [ find 2drop ] curry ;
+
+: map-until ( seq quot pred -- newseq )
+ (map-until) { } make ;
+
+: take-while ( seq quot -- newseq )
+ [ not ] compose
+ [ find drop [ head-slice ] when* ] curry
+ [ dup ] swap compose keep like ;
+
+! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+<PRIVATE
+: translate-string ( n alphabet out-len -- seq )
+ [ drop /mod ] curry* map nip ;
+
+: map-alphabet ( alphabet seq[seq] -- seq[seq] )
+ [ [ swap nth ] curry* map ] curry* map ;
+
+: exact-number-strings ( n out-len -- seqs )
+ [ ^ ] 2keep [ translate-string ] 2curry map ;
+
+: number-strings ( n max-length -- seqs )
+ 1+ [ exact-number-strings ] curry* map concat ;
+PRIVATE>
+
+: exact-strings ( alphabet length -- seqs )
+ >r dup length r> exact-number-strings map-alphabet ;
+
+: strings ( alphabet length -- seqs )
+ >r dup length r> number-strings map-alphabet ;
+
+: nths ( nths seq -- subseq )
+ ! nths is a sequence of ones and zeroes
+ >r [ length ] keep [ nth 1 = ] curry subset r>
+ [ nth ] curry { } map-as ;
+
+: power-set ( seq -- subsets )
+ 2 over length exact-number-strings swap [ nths ] curry map ;
+
+: cut-find ( seq pred -- before after )
+ dupd find drop dup [ cut ] when ;
+
+: cut3 ( seq pred -- first mid last )
+ [ cut-find ] keep [ not ] compose cut-find ;
+
+: (cut-all) ( seq pred quot -- )
+ [ >r cut3 r> dip >r >r , r> [ , ] when* r> ] 2keep
+ pick [ (cut-all) ] [ 3drop ] if ;
+
+: cut-all ( seq pred quot -- first mid last )
+ [ (cut-all) ] { } make ;
+
+: human-sort ( seq -- newseq )
+ [ dup [ digit? ] [ string>number ] cut-all ] { } map>assoc
+ sort-values keys ;
}
{ $description "Serializes the object to the current output stream. Object references within the structure being serialized are maintained. It must be called from within the scope of a " { $link with-serialized } " call." }
{ $examples
- { $example "USE: serialize" "[\n [ { 1 2 } dup (serialize) (serialize) ] with-serialized\n] string-out\n\n[\n [ (deserialize) (deserialize) ] with-serialized\n] string-in eq? ." "t" }
+ { $example "USING: serialize io.streams.string ;" "[\n [ { 1 2 } dup (serialize) (serialize) ] with-serialized\n] string-out\n\n[\n [ (deserialize) (deserialize) ] with-serialized\n] string-in eq? ." "t" }
}
{ $see-also deserialize (deserialize) serialize with-serialized } ;
}
{ $description "Deserializes an object by reading from the current input stream. Object references within the structure that was originally serialized are maintained. It must be called from within the scope of a " { $link with-serialized } " call." }
{ $examples
- { $example "USE: serialize" "[\n [ { 1 2 } dup serialize serialize ] with-serialized\n] string-out\n\n[\n [ deserialize deserialize ] with-serialized\n] string-in eq? ." "t" }
+ { $example "USING: serialize io.streams.string ;" "[\n [ { 1 2 } dup (serialize) (serialize) ] with-serialized\n] string-out\n\n[\n [ (deserialize) (deserialize) ] with-serialized\n] string-in eq? ." "t" }
}
{ $see-also (serialize) deserialize serialize with-serialized } ;
}
{ $description "Creates a scope for serialization and deserialization operations. The quotation is called within this scope. The scope is used for maintaining the structure and object references of serialized objects." }
{ $examples
- { $example "USE: serialize" "[\n [ { 1 2 } dup (serialize) (serialize) ] with-serialized\n] string-out\n\n[\n [ (deserialize) (deserialize) ] with-serialized\n] string-in eq? ." "t" }
+ { $example "USING: serialize io.streams.string ;" "[\n [ { 1 2 } dup (serialize) (serialize) ] with-serialized\n] string-out\n\n[\n [ (deserialize) (deserialize) ] with-serialized\n] string-in eq? ." "t" }
}
{ $see-also (serialize) (deserialize) serialize deserialize } ;
}
{ $description "Serializes the object to the current output stream. Object references within the structure being serialized are maintained." }
{ $examples
- { $example "USE: serialize" "[ { 1 2 } serialize ] ] string-out\n\n[ deserialize ] string-in ." "{ 1 2 }" }
+ { $example "USING: serialize io.streams.string ;" "[ { 1 2 } serialize ] string-out\n\n[ deserialize ] string-in ." "{ 1 2 }" }
}
{ $see-also deserialize (deserialize) (serialize) with-serialized } ;
}
{ $description "Deserializes an object by reading from the current input stream. Object references within the structure that was originally serialized are maintained." }
{ $examples
- { $example "USE: serialize" "[ { 1 2 } serialize ] ] string-out\n\n[ deserialize ] string-in ." "{ 1 2 }" }
+ { $example "USING: serialize io.streams.string ;" "[ { 1 2 } serialize ] string-out\n\n[ deserialize ] string-in ." "{ 1 2 }" }
}
{ $see-also (serialize) deserialize (deserialize) with-serialized } ;
: 4dup ( a b c d -- a b c d a b c d ) 4 ndup ; inline
+: 4drop ( a b c d -- ) 3drop drop ; inline
+
: tuckd ( x y z -- z x y z ) 2 ntuck ; inline
USING: kernel sequences words math math.functions arrays
shuffle quotations parser math.parser strings namespaces
-splitting effects ;
+splitting effects sequences.lib ;
IN: shufflers
: shuffle>string ( names shuffle -- string )
swap [ [ nth ] curry map ] curry map
first2 "-" swap 3append >string ;
-: translate ( n alphabet out-len -- seq )
- [ drop /mod ] curry* map nip ;
-
-: (combinations) ( alphabet out-len -- seq[seq] )
- [ ^ ] 2keep [ translate ] 2curry map ;
-
-: combinations ( n max-out -- seq[seq] )
- ! This returns a seq of length O(n^m)
- ! where and m is max-out
- 1+ [ (combinations) ] curry* map concat ;
-
: make-shuffles ( max-out max-in -- shuffles )
- [ 1+ dup rot combinations [ 2array ] curry* map ]
+ [ 1+ dup rot strings [ 2array ] curry* map ]
curry* map concat ;
: shuffle>quot ( shuffle -- quot )
--- /dev/null
+Eduardo Cavazos
--- /dev/null
+USING: tools.deploy.config ;
+H{
+ { deploy-compiler? t }
+ { deploy-word-props? f }
+ { deploy-ui? t }
+ { deploy-reflection 1 }
+ { deploy-name "springies.models.2x2snake" }
+ { deploy-c-types? f }
+ { deploy-word-defs? f }
+ { "stop-after-last-window?" t }
+ { deploy-math? t }
+ { deploy-io 1 }
+}
--- /dev/null
+Mass and spring simulation (inspired by xspringies)
--- /dev/null
+simulation
+physics
+demos
\ No newline at end of file
! Copyright (C) 2006 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
USING: help sqlite help.syntax help.markup ;
+IN: sqlite
HELP: sqlite-open
{ $values { "filename" "path to sqlite database" }
! Copyright (C) 2006 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
USING: help sqlite sqlite.tuple-db help.syntax help.markup ;
+IN: sqlite.tuple-db
ARTICLE: { "sqlite" "tuple-db-loading" } "Loading"
-"The quickest way to get up and running with this library is to load it as a module:"
-{ $code "\"libs/sqlite\" require\nUSE: sqlite\nUSE: tuple-db\n" }
+"The quickest way to get up and running with this library is to use the vocabulary:"
+{ $code "USING: sqlite sqlite.tuple-db ;\n" }
"Some simple tests can be run to check that everything is working ok:"
{ $code "\"libs/sqlite\" test-module" } ;
}
{ $description "Delete this tuple instance from the database. The tuple must have previously been obtained from the database, or inserted into it. It must have a delegate of 'persistent' with the key field set (which is done by the find and insert operations)." }
{ $see-also { "sqlite" "tuple-db" } insert-tuple update-tuple find-tuples delete-tuple save-tuple } ;
+
+ABOUT: { "sqlite" "tuple-db" }
\ No newline at end of file
SYMBOL: store
SYMBOL: foo
-SYMBOL: bar
-
: the-store ( -- path )
"store-test.store" resource-path ;
[ the-store delete-file ] catch drop ;
: load-the-store ( -- )
- the-store load-store store set ;
+ the-store load-store store set-global ;
: save-the-store ( -- )
- store get save-store ;
+ store save-store ;
delete-the-store
-the-store load-store store set
-
-[ f ] [ foo store get store-data at ] unit-test
+load-the-store
-[ ] [ 100 foo store get store-variable ] unit-test
+[ f ] [ foo store get-persistent ] unit-test
-[ ] [ save-the-store ] unit-test
+USE: prettyprint
+store get-global store-data .
-[ 100 ] [ foo store get store-data at ] unit-test
-
-1000 foo set
+[ ] [ 100 foo store set-persistent ] unit-test
[ ] [ save-the-store ] unit-test
-[ ] [ load-the-store ] unit-test
-
-[ 1000 ] [ foo store get store-data at ] unit-test
+[ 100 ] [ foo store get-persistent ] unit-test
delete-the-store
+f store set-global
! Copyright (C) 2006, 2007 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: assocs io io.files kernel namespaces serialize ;
+USING: assocs io io.files kernel namespaces serialize init ;
IN: store
TUPLE: store path data ;
C: <store> store
: save-store ( store -- )
- [ store-data ] keep store-path <file-writer> [
- [
- dup
- [ >r drop [ get ] keep r> set-at ] curry assoc-each
- ] keep serialize
- ] with-stream ;
+ get-global dup store-data swap store-path
+ <file-writer> [ serialize ] with-stream ;
: load-store ( path -- store )
dup exists? [
- dup <file-reader> [
- deserialize
- ] with-stream
+ dup <file-reader> [ deserialize ] with-stream
] [
H{ } clone
] if <store> ;
-: store-variable ( default variable store -- )
- store-data 2dup at* [
- rot set-global 2drop
- ] [
- drop >r 2dup set-global r> set-at
- ] if ;
+: define-store ( path id -- )
+ over >r
+ [ >r resource-path load-store r> set-global ] 2curry
+ r> add-init-hook ;
+
+: get-persistent ( key store -- value )
+ get-global store-data at ;
+
+: set-persistent ( value key store -- )
+ [ get-global store-data set-at ] keep save-store ;
+
+: init-persistent ( value key store -- )
+ 2dup get-persistent [ 3drop ] [ set-persistent ] if ;
USING: help.markup help.syntax io strings ;
IN: tools.browser
+ARTICLE: "vocab-index" "Vocabulary index"
+{ $tags,authors }
+{ $describe-vocab "" } ;
+
ARTICLE: "tools.browser" "Vocabulary browser"
"Getting and setting vocabulary meta-data:"
{ $subsection vocab-summary }
"Authors" $heading
all-authors authors. ;
-ARTICLE: "vocab-index" "Vocabulary index"
-{ $tags,authors }
-{ $describe-vocab "" } ;
-
M: vocab-spec article-title vocab-name " vocabulary" append ;
M: vocab-spec article-name vocab-name ;
HELP: deploy-word-defs?
{ $description "Deploy flag. If set, the deploy tool retains word definition quotations for words compiled with the optimizing compiler. Otherwise, word definitions are stripped from words compiled with the optimizing compiler."
$nl
-"Off by default. During normal execution, the word definition quotation of a word compiled with the optimizing compiler is not used, so disabling this flag can save space. However, some libraries introspect word definitions dynamically (for example, " { $link "inverse" } ") and so programs using these libraries must retain word definition quotations." } ;
+"Off by default. During normal execution, the word definition quotation of a word compiled with the optimizing compiler is not used, so disabling this flag can save space. However, some libraries introspect word definitions dynamically (for example, " { $vocab-link "inverse" } ") and so programs using these libraries must retain word definition quotations." } ;
HELP: deploy-c-types?
{ $description "Deploy flag. If set, the deploy tool retains the " { $link c-types } " table, otherwise this table is stripped out, saving space."
! Copyright (C) 2007 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: io io.files kernel namespaces sequences system
-tools.deploy tools.deploy.config assocs hashtables prettyprint ;
+tools.deploy tools.deploy.config assocs hashtables prettyprint
+windows.shell32 windows.user32 ;
IN: tools.deploy.windows
: copy-vm ( executable bundle-name -- vm )
[ deploy-name get create-exe-dir ] keep
[ deploy-name get image-name ] keep
namespace
+ deploy-name get open-in-explorer
] bind deploy* ;
: (unit-test) ( what quot -- )
swap dup . flush this-test set
[ time ] curry failures get [
- [
- this-test get <failure> failures get push
- ] recover
+ [ this-test get failure ] recover
] [
call
] if ;
{ $values { "class" "a tuple class" } }
{ $description "Explodes the tuple so that tuple slots are on the stack in the order listed in the tuple." }
{ $example
+ "USE: tuples.lib"
"TUPLE: foo a b c ;"
"1 2 3 \\ foo construct-boa \\ foo >tuple< .s"
"1\n2\n3"
{ $values { "class" "a tuple class" } }
{ $description "Explodes the tuple so that tuple slots ending with '*' are on the stack in the order listed in the tuple." }
{ $example
+ "USE: tuples.lib"
"TUPLE: foo a bb* ccc dddd* ;"
"1 2 3 4 \\ foo construct-boa \\ foo >tuple*< .s"
"2\n4"
] with-grafted-gadget
] unit-test
+[ "bar" ] [
+ <editor> "editor" set
+ "editor" get [
+ "bar\nbaz quux" "editor" get set-editor-string
+ { 0 3 } "editor" get editor-caret set-model
+ "editor" get select-word
+ "editor" get gadget-selection
+ ] with-grafted-gadget
+] unit-test
+
{ 0 1 } [ <editor> ] unit-test-effect
"hello" <model> <field> "field" set
: field-theme ( gadget -- )
gray <solid> swap set-gadget-boundary ;
-: construct-editor ( class -- tuple )
- >r <editor> { set-gadget-delegate } r> construct
+: construct-editor ( object class -- tuple )
+ >r { set-gadget-delegate } r> construct
dup dup set-editor-self ; inline
-TUPLE: source-editor ;
-
-: <source-editor> source-editor construct-editor ;
-
: activate-editor-model ( editor model -- )
2dup add-connection
dup activate-model
: end-of-document ( editor -- ) T{ doc-elt } editor-next ;
-: selected-word ( editor -- string )
- dup gadget-selection? [
- dup T{ one-word-elt } select-elt
- ] unless gadget-selection ;
-
: position-caret ( editor -- )
mouse-elt dup T{ one-char-elt } =
[ drop dup extend-selection dup editor-mark click-loc ]
: delete-to-end-of-line T{ one-line-elt } editor-backspace ;
editor "general" f {
- { T{ key-down f f "RET" } insert-newline }
- { T{ key-down f { S+ } "RET" } insert-newline }
- { T{ key-down f f "ENTER" } insert-newline }
{ T{ key-down f f "DELETE" } delete-next-character }
{ T{ key-down f { S+ } "DELETE" } delete-next-character }
{ T{ key-down f f "BACKSPACE" } delete-previous-character }
: select-word T{ one-word-elt } select-elt ;
+: selected-word ( editor -- string )
+ dup gadget-selection?
+ [ dup select-word ] unless
+ gadget-selection ;
+
: select-previous-character T{ char-elt } editor-select-prev ;
: select-next-character T{ char-elt } editor-select-next ;
{ T{ key-down f { S+ C+ } "END" } select-end-of-document }
} define-command-map
+! Multi-line editors
+TUPLE: multiline-editor ;
+
+: <multiline-editor> ( -- editor )
+ <editor> multiline-editor construct-editor ;
+
+multiline-editor "general" f {
+ { T{ key-down f f "RET" } insert-newline }
+ { T{ key-down f { S+ } "RET" } insert-newline }
+ { T{ key-down f f "ENTER" } insert-newline }
+} define-command-map
+
+TUPLE: source-editor ;
+
+: <source-editor> ( -- editor )
+ <multiline-editor> source-editor construct-editor ;
+
! Fields are like editors except they edit an external model
TUPLE: field model editor ;
USING: ui.gadgets help.markup help.syntax opengl kernel strings
-tuples classes quotations ;
+tuples classes quotations models ;
HELP: rect
{ $class-description "A rectangle with the following slots:"
HELP: g->
{ $values { "x" object } { "gadget" gadget } }
{ $description "Duplicates the top of the stack and outputs the gadget being built. Can only be used inside a quotation passed to " { $link build-gadget } "." } ;
+
+HELP: construct-control
+{ $values { "model" model } { "gadget" gadget } { "class" class } { "control" gadget } }
+{ $description "Creates a new control linked to the given model. The gadget parameter becomes the control's delegate. The quotation is called when the model value changes." }
+{ $examples
+ "The following example creates a gadget whose fill color is determined by the value of a model:"
+ { $code
+ "USING: ui.gadgets ui.gadgets.panes models ;"
+ ": set-fill-color >r <solid> r> set-gadget-interior ;"
+ ""
+ "TUPLE: color-gadget ;"
+ ""
+ "M: color-gadget model-changed"
+ " >r model-value r> set-fill-color ;"
+ ""
+ ": <color-gadget> ( model -- gadget )"
+ " <gadget>"
+ " { 100 100 } over set-rect-dim"
+ " color-gadget"
+ " construct-control ;"
+ ""
+ "{ 1.0 0.0 0.5 1.0 } <model> <color-gadget>"
+ "gadget."
+ }
+ "The " { $vocab-link "color-picker" } " module extends this example into a more elaborate color chooser."
+} ;
+
+{ construct-control control-value set-control-value gadget-model } related-words
+
+HELP: control-value
+{ $values { "control" gadget } { "value" object } }
+{ $description "Outputs the value of the control's model." } ;
+
+HELP: set-control-value
+{ $values { "value" object } { "control" gadget } }
+{ $description "Sets the value of the control's model." } ;
+
+ARTICLE: "ui-control-impl" "Implementing controls"
+"A " { $emphasis "control" } " is a gadget which is linked to an underlying " { $link model } " by having its " { $link gadget-model } " slot set to a model instance."
+$nl
+"To implement a new control, simply use this word in your constructor:"
+{ $subsection construct-control }
+"Some utility words useful in control implementations:"
+{ $subsection gadget-model }
+{ $subsection control-value }
+{ $subsection set-control-value }
+{ $see-also "models" } ;
+
+ABOUT: "ui-control-impl"
{ $description "Finds the " { $link world } " containing the gadget, or outputs " { $link f } " if the gadget is not grafted." } ;
HELP: draw-world
-{ $values { "rect" "a clipping rectangle" } { "world" world } }
+{ $values { "world" world } }
{ $description "Redraws a world." }
{ $notes "This word should only be called by the UI backend. To force a gadget to redraw from user code, call " { $link relayout-1 } "." } ;
{ f com-help }
{ f com-revert }
{ f com-save }
- { T{ key-down f f "RETURN" } com-deploy }
+ { T{ key-down f f "RET" } com-deploy }
} define-command-map
: buttons,
: <interactor> ( output -- gadget )
<source-editor>
- { set-interactor-output set-gadget-delegate }
- interactor construct
- dup dup set-editor-self
+ interactor construct-editor
+ tuck set-interactor-output
dup init-interactor-history
dup init-caret-help ;
TUPLE: search-field ;
-: <search-field> ( -- gadget ) search-field construct-editor ;
+: <search-field> ( -- gadget )
+ <editor> search-field construct-editor ;
search-field H{
{ T{ key-down f f "UP" } [ find-search-list select-previous ] }
: com-profiler profiler-gadget select-tool ;
workspace "tool-switching" f {
- { T{ key-down f { C+ } "1" } com-listener }
- { T{ key-down f { C+ } "2" } com-browser }
- { T{ key-down f { C+ } "3" } com-inspector }
- { T{ key-down f { C+ } "4" } com-walker }
- { T{ key-down f { C+ } "5" } com-profiler }
+ { T{ key-down f { A+ } "1" } com-listener }
+ { T{ key-down f { A+ } "2" } com-browser }
+ { T{ key-down f { A+ } "3" } com-inspector }
+ { T{ key-down f { A+ } "4" } com-walker }
+ { T{ key-down f { A+ } "5" } com-profiler }
} define-command-map
\ workspace-window
ui.backend ui.clipboards ui.gadgets.worlds ui.gestures io kernel
math math.vectors namespaces prettyprint sequences strings
vectors words windows.kernel32 windows.gdi32 windows.user32
-windows.opengl32 windows.messages windows.types windows.nt
-windows threads timers libc combinators continuations
+windows.opengl32 windows.messages windows.types
+windows.nt windows threads timers libc combinators continuations
command-line shuffle opengl ui.render ;
IN: ui.windows
hWnd get window-focus send-gesture
drop ;
+: handle-wm-syscommand ( hWnd uMsg wParam lParam -- n )
+ dup alpha? [ 4drop 0 ] [ DefWindowProc ] if ;
+
: cleanup-window ( handle -- )
dup win-title [ free ] when*
dup win-hRC wglDeleteContext win32-error=0/f
: prepare-mouse ( hWnd uMsg wParam lParam -- button coordinate world )
nip >r mouse-event>gesture r> >lo-hi rot window ;
-: mouse-captured? ( -- ? )
- mouse-captured get ;
-
: set-capture ( hwnd -- )
mouse-captured get [
drop
] [
- [ SetCapture drop ] keep mouse-captured set
+ [ SetCapture drop ] keep
+ mouse-captured set
] if ;
: release-capture ( -- )
prepare-mouse send-button-down ;
: handle-wm-buttonup ( hWnd uMsg wParam lParam -- )
- mouse-captured? [ release-capture ] when
+ mouse-captured get [ release-capture ] when
prepare-mouse send-button-up ;
: make-TRACKMOUSEEVENT ( hWnd -- alien )
: handle-wm-cancelmode ( hWnd uMsg wParam lParam -- )
#! message sent if windows needs application to stop dragging
- 3drop drop release-capture ;
+ 4drop release-capture ;
: handle-wm-mouseleave ( hWnd uMsg wParam lParam -- )
#! message sent if mouse leaves main application
- 3drop drop forget-rollover ;
+ 4drop forget-rollover ;
! return 0 if you handle the message, else just let DefWindowProc return its val
: ui-wndproc ( -- object )
"uint" { "void*" "uint" "long" "long" } "stdcall" [
[
- pick
+ pick ! global [ dup windows-message-name . ] bind
{
{ [ dup WM_CLOSE = ] [ drop handle-wm-close 0 ] }
{ [ dup WM_PAINT = ]
{ [ dup WM_KEYUP = over WM_SYSKEYUP = or ]
[ drop 4dup handle-wm-keyup DefWindowProc ] }
+ { [ dup WM_SYSCOMMAND = ] [ drop handle-wm-syscommand ] }
{ [ dup WM_SETFOCUS = ] [ drop handle-wm-set-focus 0 ] }
{ [ dup WM_KILLFOCUS = ] [ drop handle-wm-kill-focus 0 ] }
! Move window to front
M: windows-ui-backend raise-window ( world -- )
world-handle [
- win-hWnd SetFocus drop release-capture
+ win-hWnd SetFocus drop
] when* ;
M: windows-ui-backend set-title ( string world -- )
USING: kernel furnace sqlite.tuple-db webapps.article-manager.database
sequences namespaces math arrays assocs quotations io.files
http.server http.basic-authentication http.server.responders
- webapps.file ;
+ webapps.file html html.elements io ;
IN: webapps.article-manager
: current-site ( -- site )
host get-site* ;
+: render-titled-page* ( model body-template head-template title -- )
+ [
+ [ render-component ] swap [ <title> write </title> f rot render-component ] curry html-document
+ ] serve-html ;
+
TUPLE: template-args arg1 ;
C: <template-args> template-args
<% USING: kernel io http.server namespaces sequences math html.elements random furnace webapps.article-manager webapps.article-manager.database html.elements ; %>
<div id="banner"><h1><% "arg1" get second article-title write %></h1></div>
- <% f "navigation" render-template %>
+ <% "navigation" render-template %>
<div id="article">
<% 100 random 25 > [ "arg1" get first 100 random 50 > [ site-ad2 ] [ site-ad3 ] if write-html ] when %>
<% "arg1" get second article-body write-html %>
<h1>Tags</h1>
- <% "arg1" get second tags-for-article <template-args> "tags" render-template %>
+ <% "arg1" get second tags-for-article <template-args> "tags" render-component %>
</div>
<p class="footer"></p>
<p id="copyright"><% "arg1" get first site-footer write %></p>
</head>
<body>
<div id="banner"><h1><% "title" get write %></h1></div>
- <% f "navigation" render-template %>
+ <% "navigation" render-template %>
<div id="article">
<% "intro" get write-html %>
<h1>Recent Articles</h1>
but in the meantime, Google is likely to provide
reasonable results.
</p>
- <% host all-tags <template-args> "tags" render-template %>
+ <% host all-tags <template-args> "tags" render-component %>
</div>
<p class="footer"></p>
<p id="copyright"><% "footer" get write %></p>
</ul>
<% current-site site-ad1 write-html %>
<h1>Tags</h1>
- <% host all-tags <template-args> "tags" render-template %>
+ <% host all-tags <template-args> "tags" render-component %>
</div>
<% USING: kernel io http.server namespaces sequences math html furnace webapps.article-manager.database webapps.article-manager html.elements ; %>
<div id="banner"><h1><% "arg1" get second tag-title write %></h1></div>
- <% f "navigation" render-template %>
+ <% "navigation" render-component %>
<div id="article">
<h1><% "arg1" get second tag-title write %></h1>
<% "arg1" get second tag-description write-html %>
-! Copyright (C) 2004, 2006 Slava Pestov.
+! Copyright (C) 2004, 2007 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: calendar html io io.files kernel math math.parser
http.server.responders http.server.templating namespaces parser
"304 Not Modified" response
now timestamp>http-string "Date" associate print-header ;
+! You can override how files are served in a custom responder
+SYMBOL: serve-file-hook
+
+[
+ dupd
+ file-response
+ <file-reader> stdio get stream-copy
+] serve-file-hook set-global
+
: serve-static ( filename mime-type -- )
over last-modified-matches? [
2drop not-modified-response
] [
- dupd file-response
"method" get "head" = [
- drop
+ file-response
] [
- <file-reader> stdio get stream-copy
+ serve-file-hook get call
] if
] if ;
: include-page ( filename -- )
"doc-root" get swap path+ run-page ;
+: serve-fhtml ( filename -- )
+ serving-html
+ "method" get "head" = [ drop ] [ run-page ] if ;
+
: serve-file ( filename -- )
dup mime-type dup "application/x-factor-server-page" =
- [ drop serving-html run-page ] [ serve-static ] if ;
+ [ drop serve-fhtml ] [ serve-static ] if ;
: file. ( name dirp -- )
[ "/" append ] when
] if ;
global [
- ! Serve up our own source code
- "resources" [
- [
- "" resource-path "doc-root" set
- file-responder
- ] with-scope
- ] add-simple-responder
-
! Serves files from a directory stored in the "doc-root"
! variable. You can set the variable in the global
! namespace, or inside the responder.
USING: kernel furnace fjsc parser-combinators namespaces
lazy-lists io io.files furnace.validator sequences
http.client http.server http.server.responders
- webapps.file ;
+ webapps.file html ;
IN: webapps.fjsc
: compile ( code -- )
{ "url" v-required }
} define-action
+: render-page* ( model body-template head-template -- )
+ [
+ [ render-component ] [ f rot render-component ] html-document
+ ] serve-html ;
+
: repl ( -- )
#! The main 'repl' page.
f "repl" "head" render-page* ;
arrays io.files ;
IN: webapps.help
+! : string>topic ( string -- topic )
+ ! " " split dup length 1 = [ first ] when ;
+
: show-help ( topic -- )
serving-html
dup article-title [
[ help ] with-html-stream
] simple-html-document ;
-: string>topic ( string -- topic )
- " " split dup length 1 = [ first ] when ;
-
\ show-help {
- { "topic" "handbook" v-default string>topic }
+ { "topic" }
} define-action
+\ show-help { { "topic" "handbook" } } default-values
M: link browser-link-href
link-name
lookup show-help ;
\ show-word {
- { "word" "call" v-default }
- { "vocab" "kernel" v-default }
+ { "word" }
+ { "vocab" }
} define-action
+\ show-word { { "word" "call" } { "vocab" "kernel" } } default-values
M: f browser-link-href
drop \ f browser-link-href ;
f >vocab-link show-help ;
\ show-vocab {
- { "vocab" "kernel" v-default }
+ { "vocab" }
} define-action
+\ show-vocab { { "vocab" "kernel" } } default-values
+
M: vocab-spec browser-link-href
vocab-name [ show-vocab ] curry quot-link ;
M: resource-pathname browser-link-href
pathname-string
"resource:" ?head drop
- "/responder/resources/" swap append ;
+ "/responder/source/" swap append ;
-<% USING: io math math.parser namespaces ; %>
+<% USING: io math math.parser namespaces furnace ; %>
<h1>Annotate</h1>
<table>
-<input type="hidden" name="n" value="<% "n" get number>string write %>" />
+<tr>
+<th align="right">Summary:</th>
+<td><input type="TEXT" name="summary" value="<% "summary" render %>" /></td>
+<td align="left" class="error"><% "summary" "*Required" render-error %></td>
+</tr>
+
+<tr>
+<th align="right">Your name:</th>
+<td><input type="TEXT" name="author" value="<% "author" render %>" /></td>
+<td class="error"><% "author" "*Required" render-error %></td>
+</tr>
<tr>
-<th>Your name:</th>
-<td><input type="TEXT" name="author" value="" /></td>
+<th align="right">File type:</th>
+<td><% "modes" render-template %></td>
</tr>
+<!--
<tr>
-<th>Summary:</th>
-<td><input type="TEXT" name="summary" value="" /></td>
+<th align="right">Channel:</th>
+<td><input type="TEXT" name="channel" value="#concatenative" /></td>
</tr>
+-->
<tr>
-<th valign="top">Contents:</th>
-<td><textarea rows="24" cols="60" name="contents"></textarea></td>
+<td></td>
+<td colspan="2" class="error" align="left"><% "contents" "*Required" render-error %></td>
+</tr>
+
+<tr>
+<th align="right" valign="top">Content:</th>
+<td colspan="2"><textarea rows="24" cols="60" name="contents"><% "contents" render %></textarea></td>
</tr>
</table>
+<input type="hidden" name="n" value="<% "n" get number>string write %>" />
+<input type="hidden" name="furnace-form-submitted" value="annotate-paste"/>
<input type="SUBMIT" value="Annotate" />
</form>
-<% USING: namespaces io ; %>
+<% USING: namespaces io furnace calendar ; %>
<h2>Annotation: <% "summary" get write %></h2>
<table>
-<tr><th>Annotation by:</th><td><% "author" get write %></td></tr>
-<tr><th>Channel:</th><td><% "channel" get write %></td></tr>
-<tr><th>Created:</th><td><% "date" get write %></td></tr>
+<tr><th align="right">Annotation by:</th><td><% "author" get write %></td></tr>
+<tr><th align="right">File type:</th><td><% "mode" get write %></td></tr>
+<tr><th align="right">Created:</th><td><% "date" get timestamp>string write %></td></tr>
</table>
-<pre><% "contents" get write %></pre>
+<% "syntax" render-template %>
--- /dev/null
+</body>
+
+</html>
--- /dev/null
+<% USING: namespaces io furnace sequences xmode.code2html webapps.pastebin ; %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
+
+ <title><% "title" get write %></title>
+ <link rel="stylesheet" href="style.css" type="text/css" media="screen" title="no title" charset="utf-8" />
+ <% default-stylesheet %>
+ <link rel="alternate" type="application/atom+xml" title="Pastebin - Atom" href="feed.xml" />
+</head>
+
+<body id="index">
+
+ <div class="navbar">
+ <% [ paste-list ] "Paste list" render-link %> |
+ <% [ new-paste ] "New paste" render-link %> |
+ <% [ feed.xml ] "Syndicate" render-link %>
+ </div>
+ <h1 class="pastebin-title"><% "title" get write %></h1>
--- /dev/null
+<% USING: furnace xmode.catalog sequences kernel html.elements assocs io sorting continuations ; %>
+
+<select name="mode">
+ <% modes keys natural-sort [
+ <option dup "mode" session-var = [ "true" =selected ] when option> write </option>
+ ] each %>
+</select>
+<% USING: continuations furnace namespaces ; %>
+
+<%
+ "New paste" "title" set
+ "header" render-template
+%>
+
<form method="POST" action="/responder/pastebin/submit-paste">
<table>
<tr>
-<th>Your name:</th>
-<td><input type="TEXT" name="author" value="" /></td>
+<th align="right">Summary:</th>
+<td><input type="TEXT" name="summary" value="<% "summary" render %>" /></td>
+<td align="left" class="error"><% "summary" "*Required" render-error %></td>
+</tr>
+
+<tr>
+<th align="right">Your name:</th>
+<td><input type="TEXT" name="author" value="<% "author" render %>" /></td>
+<td class="error"><% "author" "*Required" render-error %></td>
</tr>
<tr>
-<th>Summary:</th>
-<td><input type="TEXT" name="summary" value="" /></td>
+<th align="right">File type:</th>
+<td><% "modes" render-template %></td>
</tr>
+<!--
<tr>
-<th>Channel:</th>
+<th align="right">Channel:</th>
<td><input type="TEXT" name="channel" value="#concatenative" /></td>
</tr>
+-->
<tr>
-<th valign="top">Contents:</th>
-<td><textarea rows="24" cols="60" name="contents"></textarea></td>
+<td></td>
+<td colspan="2" class="error" align="left"><% "contents" "*Required" render-error %></td>
+</tr>
+
+<tr>
+<th align="right" valign="top">Content:</th>
+<td colspan="2"><textarea rows="24" cols="60" name="contents"><% "contents" render %></textarea></td>
</tr>
</table>
+<input type="hidden" name="furnace-form-submitted" value="new-paste"/>
<input type="SUBMIT" value="Submit paste" />
</form>
+
+<% "footer" render-template %>
<% USING: namespaces furnace sequences ; %>
-<table width="100%">
-<% "new-paste-quot" get "New paste" render-link %>
-<tr align="left"><th> </th><th>Summary:</th><th>Paste by:</th><th>Link</th><th>Date</th></tr>
-<% "pastes" get <reversed> [ "paste-summary" render-template ] each %></table>
+<%
+ "Pastebin" "title" set
+ "header" render-template
+%>
+<table width="100%" cellspacing="10">
+ <tr>
+ <td valign="top">
+ <table width="100%">
+ <tr align="left" class="pastebin-headings">
+ <th width="50%">Summary:</th>
+ <th width="100">Paste by:</th>
+ <th width="200">Date:</th>
+ </tr>
+ <% "pastes" get <reversed> [ "paste-summary" render-component ] each %>
+ </table>
+ </td>
+ <td valign="top" width="25%">
+ <div class="infobox">
+ <p>This pastebin is written in <a href="http://factorcode.org/">Factor</a>. It is inspired by <a href="http://paste.lisp.org">lisppaste</a>.
+ </p>
+ <p>It can be used for collaborative development over IRC. You can post code for review, and annotate other people's code. Syntax highlighting for over a hundred file types is supported.
+ </p>
+ <p>
+ <% "webapps.pastebin" browse-webapp-source %></p>
+ </div>
+ </td>
+ </tr>
+</table>
+
+<% "footer" render-template %>
-<% USING: continuations namespaces io kernel math math.parser furnace ; %>
+<% USING: continuations namespaces io kernel math math.parser
+furnace webapps.pastebin calendar sequences ; %>
<tr>
-<td><% "n" get number>string write %></td>
-<td><% "summary" get write %></td>
-<td><% "author" get write %></td>
-<td><% "n" get number>string "show-paste-quot" get curry "Show" render-link %></td>
-<td><% "date" get print %></td>
+ <td>
+ <a href="<% model get paste-link write %>">
+ <% "summary" get write %>
+ </a>
+ </td>
+ <td><% "author" get write %></td>
+ <td><% "date" get timestamp>string write %></td>
</tr>
-USING: calendar furnace furnace.validator io.files kernel namespaces
-sequences store ;
+USING: calendar furnace furnace.validator io.files kernel
+namespaces sequences store http.server.responders html
+math.parser rss xml.writer ;
IN: webapps.pastebin
TUPLE: pastebin pastes ;
: <pastebin> ( -- pastebin )
V{ } clone pastebin construct-boa ;
-TUPLE: paste n summary article author channel contents date annotations ;
-
-: <paste> ( summary author channel contents -- paste )
- V{ } clone
- {
- set-paste-summary
- set-paste-author
- set-paste-channel
- set-paste-contents
- set-paste-annotations
- } paste construct ;
+! Persistence
+SYMBOL: store
-TUPLE: annotation summary author contents ;
+"pastebin.store" store define-store
+<pastebin> pastebin store init-persistent
-C: <annotation> annotation
+TUPLE: paste
+summary author channel mode contents date
+annotations n ;
+: <paste> ( summary author channel mode contents -- paste )
+ f V{ } clone f paste construct-boa ;
-SYMBOL: store
+TUPLE: annotation summary author mode contents ;
-"pastebin.store" resource-path load-store store set-global
+C: <annotation> annotation
-<pastebin> \ pastebin store get store-variable
+: get-pastebin ( -- pastebin )
+ pastebin store get-persistent ;
: get-paste ( n -- paste )
- pastebin get pastebin-pastes nth ;
+ get-pastebin pastebin-pastes nth ;
: show-paste ( n -- )
- get-paste "show-paste" "Paste" render-page ;
+ serving-html
+ get-paste
+ [ "show-paste" render-component ] with-html-stream ;
\ show-paste { { "n" v-number } } define-action
: new-paste ( -- )
- f "new-paste" "New paste" render-page ;
+ serving-html
+ [ "new-paste" render-template ] with-html-stream ;
\ new-paste { } define-action
: paste-list ( -- )
+ serving-html
[
[ show-paste ] "show-paste-quot" set
[ new-paste ] "new-paste-quot" set
- pastebin get "paste-list" "Pastebin" render-page
- ] with-scope ;
+ get-pastebin "paste-list" render-component
+ ] with-html-stream ;
\ paste-list { } define-action
+: paste-link ( paste -- link )
+ paste-n number>string [ show-paste ] curry quot-link ;
+
+: paste-feed ( -- entries )
+ get-pastebin pastebin-pastes <reversed> [
+ {
+ paste-summary
+ paste-link
+ paste-date
+ } get-slots timestamp>rfc3339 f swap <entry>
+ ] map ;
+: feed.xml ( -- )
+ "text/xml" serving-content
+ "pastebin"
+ "http://pastebin.factorcode.org"
+ paste-feed <feed> feed>xml write-xml ;
-: save-pastebin-store ( -- )
- store get-global save-store ;
+\ feed.xml { } define-action
: add-paste ( paste pastebin -- )
- >r now timestamp>http-string over set-paste-date r>
- pastebin-pastes
- [ length over set-paste-n ] keep push ;
+ >r now over set-paste-date r>
+ pastebin-pastes 2dup length swap set-paste-n push ;
-: submit-paste ( summary author channel contents -- )
- <paste>
- \ pastebin get-global add-paste
- save-pastebin-store ;
+: submit-paste ( summary author channel mode contents -- )
+ <paste> [
+ pastebin store get-persistent add-paste
+ store save-store
+ ] keep paste-link permanent-redirect ;
+\ new-paste
\ submit-paste {
{ "summary" v-required }
{ "author" v-required }
- { "channel" "#concatenative" v-default }
+ { "channel" }
+ { "mode" v-required }
{ "contents" v-required }
-} define-action
+} define-form
-\ submit-paste [ paste-list ] define-redirect
+\ new-paste {
+ { "channel" "#concatenative" }
+ { "mode" "factor" }
+} default-values
-: annotate-paste ( n summary author contents -- )
+: annotate-paste ( n summary author mode contents -- )
<annotation> swap get-paste
- paste-annotations push
- save-pastebin-store ;
+ [ paste-annotations push store save-store ] keep
+ paste-link permanent-redirect ;
+[ "n" show-paste ]
\ annotate-paste {
{ "n" v-required v-number }
{ "summary" v-required }
{ "author" v-required }
+ { "mode" v-required }
{ "contents" v-required }
-} define-action
+} define-form
+
+\ show-paste {
+ { "mode" "factor" }
+} default-values
+
+: style.css ( -- )
+ "text/css" serving-content
+ "style.css" send-resource ;
-\ annotate-paste [ "n" show-paste ] define-redirect
+\ style.css { } define-action
"pastebin" "paste-list" "extra/webapps/pastebin" web-app
-<% USING: namespaces io furnace sequences ; %>
+<% USING: namespaces io furnace sequences xmode.code2html calendar ; %>
-<h1>Paste: <% "summary" get write %></h1>
+<%
+ "Paste: " "summary" get append "title" set
+ "header" render-template
+%>
<table>
<tr><th>Paste by:</th><td><% "author" get write %></td></tr>
-<tr><th>Channel:</th><td><% "channel" get write %></td></tr>
-<tr><th>Created:</th><td><% "date" get write %></td></tr>
+<!-- <tr><th>Channel:</th><td><% "channel" get write %></td></tr> -->
+<tr><th>Created:</th><td><% "date" get timestamp>string write %></td></tr>
+<tr><th>File type:</th><td><% "mode" get write %></td></tr>
</table>
-<pre><% "contents" get write %></pre>
+<% "syntax" render-template %>
-<% "annotations" get [ "annotation" render-template ] each %>
+<% "annotations" get [ "annotation" render-component ] each %>
-<% model get "annotate-paste" render-template %>
+<% model get "annotate-paste" render-component %>
+
+<% "footer" render-template %>
--- /dev/null
+body {
+ font:75%/1.6em "Lucida Grande", "Lucida Sans Unicode", verdana, geneva, sans-serif;
+ color:#888;
+}
+
+h1.pastebin-title {
+ font-size:300%;
+}
+
+a {
+ color:#222;
+ border-bottom:1px dotted #ccc;
+ text-decoration:none;
+}
+
+a:hover {
+ border-bottom:1px solid #ccc;
+}
+
+pre.code {
+ border:1px dashed #ccc;
+ background-color:#f5f5f5;
+ padding:5px;
+ font-size:150%;
+ color:#000000;
+}
+
+.navbar {
+ background-color:#eeeeee;
+ padding:5px;
+ border:1px solid #ccc;
+}
+
+.infobox {
+ border: 1px solid #C1DAD7;
+ padding: 10px;
+}
+
+.error {
+ color: red;
+}
--- /dev/null
+<% USING: xmode.code2html splitting namespaces ; %>
+
+<pre class="code"><% "contents" get string-lines "mode" get htmlize-lines %></pre>
USING: sequences rss arrays concurrency kernel sorting
html.elements io assocs namespaces math threads vocabs html
furnace http.server.templating calendar math.parser splitting
-continuations debugger system http.server.responders ;
+continuations debugger system http.server.responders
+xml.writer ;
IN: webapps.planet
-TUPLE: posting author title date link body ;
-
-: diagnostic write print flush ;
-
-: fetch-feed ( pair -- feed )
- second
- dup "Fetching " diagnostic
- dup news-get feed-entries
- swap "Done fetching " diagnostic ;
-
-: fetch-blogroll ( blogroll -- entries )
- #! entries is an array of { author entries } pairs.
- dup [
- [ fetch-feed ] [ error. drop f ] recover
- ] parallel-map
- [ [ >r first r> 2array ] curry* map ] 2map concat ;
-
-: sort-entries ( entries -- entries' )
- [ [ second entry-pub-date ] compare ] sort <reversed> ;
-
-: <posting> ( pair -- posting )
- #! pair has shape { author entry }
- first2
- { entry-title entry-pub-date entry-link entry-description }
- get-slots posting construct-boa ;
-
: print-posting-summary ( posting -- )
<p "news" =class p>
- <b> dup posting-title write </b> <br/>
- "- " write
- dup posting-author write bl
- <a posting-link =href "more" =class a>
+ <b> dup entry-title write </b> <br/>
+ <a entry-link =href "more" =class a>
"Read More..." write
</a>
</p> ;
</ul> ;
: format-date ( date -- string )
- 10 head "-" split [ string>number ] map
- first3 0 0 0 0 <timestamp>
- [
- dup timestamp-day #
- " " %
- dup timestamp-month month-abbreviations nth %
- ", " %
- timestamp-year #
- ] "" make ;
+ rfc3339>timestamp timestamp>string ;
: print-posting ( posting -- )
<h2 "posting-title" =class h2>
- <a dup posting-link =href a>
- dup posting-title write-html
- " - " write
- dup posting-author write
+ <a dup entry-link =href a>
+ dup entry-title write-html
</a>
</h2>
- <p "posting-body" =class p> dup posting-body write-html </p>
- <p "posting-date" =class p> posting-date format-date write </p> ;
+ <p "posting-body" =class p>
+ dup entry-description write-html
+ </p>
+ <p "posting-date" =class p>
+ entry-pub-date format-date write
+ </p> ;
: print-postings ( postings -- )
[ print-posting ] each ;
-: browse-webapp-source ( vocab -- )
- <a f >vocab-link browser-link-href =href a>
- "Browse source" write
- </a> ;
-
SYMBOL: default-blogroll
SYMBOL: cached-postings
-: update-cached-postings ( -- )
- default-blogroll get fetch-blogroll sort-entries
- [ <posting> ] map
- cached-postings set-global ;
+: safe-head ( seq n -- seq' )
+ over length min head ;
: mini-planet-factor ( -- )
- cached-postings get 4 head print-posting-summaries ;
+ cached-postings get 4 safe-head print-posting-summaries ;
: planet-factor ( -- )
- serving-html [
- "resource:extra/webapps/planet/planet.fhtml"
- run-template-file
- ] with-html-stream ;
+ serving-html [ "planet" render-template ] with-html-stream ;
\ planet-factor { } define-action
-{
- { "Berlin Brown" "http://factorlang-fornovices.blogspot.com/feeds/posts/default" "http://factorlang-fornovices.blogspot.com" }
- { "Chris Double" "http://www.bluishcoder.co.nz/atom.xml" "http://www.bluishcoder.co.nz/" }
- { "Elie Chaftari" "http://fun-factor.blogspot.com/feeds/posts/default" "http://fun-factor.blogspot.com/" }
- { "Doug Coleman" "http://code-factor.blogspot.com/feeds/posts/default" "http://code-factor.blogspot.com/" }
- { "Daniel Ehrenberg" "http://useless-factor.blogspot.com/feeds/posts/default" "http://useless-factor.blogspot.com/" }
- { "Kio M. Smallwood"
- "http://sekenre.wordpress.com/feed/atom/"
- "http://sekenre.wordpress.com/" }
- { "Phil Dawes" "http://www.phildawes.net/blog/category/factor/feed/atom" "http://www.phildawes.net/blog/" }
- { "Samuel Tardieu" "http://www.rfc1149.net/blog/tag/factor/feed/atom/" "http://www.rfc1149.net/blog/tag/factor/" }
- { "Slava Pestov" "http://factor-language.blogspot.com/atom.xml" "http://factor-language.blogspot.com/" }
-} default-blogroll set-global
+: planet-feed ( -- feed )
+ "[ planet-factor ]"
+ "http://planet.factorcode.org"
+ cached-postings get 30 safe-head <feed> ;
+
+: feed.xml ( -- )
+ "text/xml" serving-content
+ planet-feed feed>xml write-xml ;
+
+\ feed.xml { } define-action
+
+: style.css ( -- )
+ "text/css" serving-content
+ "style.css" send-resource ;
+
+\ style.css { } define-action
SYMBOL: last-update
+: diagnostic write print flush ;
+
+: fetch-feed ( triple -- feed )
+ second
+ dup "Fetching " diagnostic
+ dup download-feed feed-entries
+ swap "Done fetching " diagnostic ;
+
+: <posting> ( author entry -- entry' )
+ clone
+ [ ": " swap entry-title 3append ] keep
+ [ set-entry-title ] keep ;
+
+: ?fetch-feed ( triple -- feed/f )
+ [ fetch-feed ] [ error. drop f ] recover ;
+
+: fetch-blogroll ( blogroll -- entries )
+ dup 0 <column>
+ swap [ ?fetch-feed ] parallel-map
+ [ [ <posting> ] curry* map ] 2map concat ;
+
+: sort-entries ( entries -- entries' )
+ [ [ entry-pub-date ] compare ] sort <reversed> ;
+
+: update-cached-postings ( -- )
+ default-blogroll get
+ fetch-blogroll sort-entries
+ cached-postings set-global ;
+
: update-thread ( -- )
millis last-update set-global
[ update-cached-postings ] in-thread
"planet" "planet-factor" "extra/webapps/planet" web-app
-: merge-feeds ( feeds -- feed )
- [ feed-entries ] map concat sort-entries ;
-
-: planet-feed ( -- feed )
- default-blogroll get [ second news-get ] map merge-feeds
- >r "[ planet-factor ]" "http://planet.factorcode.org" r> <entry>
- generate-atom ;
-
-: feed.xml planet-feed ;
-
-\ feed.xml { } define-action
+{
+ { "Berlin Brown" "http://factorlang-fornovices.blogspot.com/feeds/posts/default" "http://factorlang-fornovices.blogspot.com" }
+ { "Chris Double" "http://www.blogger.com/feeds/18561009/posts/full/-/factor" "http://www.bluishcoder.co.nz/" }
+ { "Elie Chaftari" "http://fun-factor.blogspot.com/feeds/posts/default" "http://fun-factor.blogspot.com/" }
+ { "Doug Coleman" "http://code-factor.blogspot.com/feeds/posts/default" "http://code-factor.blogspot.com/" }
+ { "Daniel Ehrenberg" "http://useless-factor.blogspot.com/feeds/posts/default" "http://useless-factor.blogspot.com/" }
+ { "Gavin Harrison" "http://gmh33.blogspot.com/feeds/posts/default" "http://gmh33.blogspot.com/" }
+ { "Kio M. Smallwood"
+ "http://sekenre.wordpress.com/feed/atom/"
+ "http://sekenre.wordpress.com/" }
+ { "Phil Dawes" "http://www.phildawes.net/blog/category/factor/feed/atom" "http://www.phildawes.net/blog/" }
+ { "Samuel Tardieu" "http://www.rfc1149.net/blog/tag/factor/feed/atom/" "http://www.rfc1149.net/blog/tag/factor/" }
+ { "Slava Pestov" "http://factor-language.blogspot.com/atom.xml" "http://factor-language.blogspot.com/" }
+} default-blogroll set-global
+++ /dev/null
-<% USING: namespaces html.elements webapps.planet sequences ; %>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
-
- <title>planet-factor</title>
- <link rel="stylesheet" href="/responder/file/css/news.css" type="text/css" media="screen" title="no title" charset="utf-8" />
-</head>
-
-<body id="index">
- <h1 class="planet-title">[ planet-factor ]</h1>
- <table width="100%" cellpadding="10">
- <tr>
- <td> <% cached-postings get 20 head print-postings %> </td>
- <td valign="top" width="25%" class="infobox">
- <p>
- <b>planet-factor</b> is an Atom/RSS aggregator that collects the
- contents of <a href="http://factorcode.org/">Factor</a>-related blogs. It is inspired by
- <a href="http://planet.lisp.org">Planet Lisp</a>.
- </p>
- <p>
- This webapp is written in <a href="http://factorcode.org/">Factor</a>.
- <% "webapps.planet" browse-webapp-source %>
- </p>
- <h2 class="blogroll-title">Blogroll</h2>
- <% default-blogroll get print-blogroll %>
- <p>
- If you want your weblog added to the blogroll, <a href="http://factorcode.org/gethelp.fhtml">just ask</a>.
- </p>
- </td>
- </tr>
- </table>
-</body>
-
-</html>
--- /dev/null
+<% USING: namespaces html.elements webapps.planet sequences
+furnace ; %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
+
+ <title>planet-factor</title>
+ <link rel="stylesheet" href="style.css" type="text/css" media="screen" title="no title" charset="utf-8" />
+ <link rel="alternate" type="application/atom+xml" title="Planet Factor - Atom" href="feed.xml" />
+</head>
+
+<body id="index">
+ <h1 class="planet-title">[ planet-factor ]</h1>
+ <table width="100%" cellpadding="10">
+ <tr>
+ <td> <% cached-postings get 20 safe-head print-postings %> </td>
+ <td valign="top" width="25%" class="infobox">
+ <p>
+ <b>planet-factor</b> is an Atom/RSS aggregator that collects the
+ contents of <a href="http://factorcode.org/">Factor</a>-related blogs. It is inspired by
+ <a href="http://planet.lisp.org">Planet Lisp</a>.
+ </p>
+ <p>
+ <img src="http://planet.lisp.org/feed-icon-14x14.png" />
+ <a href="feed.xml"> Syndicate </a>
+ </p>
+ <p>
+ This webapp is written in <a href="http://factorcode.org/">Factor</a>.<br/>
+ <% "webapps.planet" browse-webapp-source %>
+ </p>
+ <h2 class="blogroll-title">Blogroll</h2>
+ <% default-blogroll get print-blogroll %>
+ <p>
+ If you want your weblog added to the blogroll, <a href="http://factorcode.org/gethelp.fhtml">just ask</a>.
+ </p>
+ </td>
+ </tr>
+ </table>
+</body>
+
+</html>
--- /dev/null
+body {
+ font:75%/1.6em "Lucida Grande", "Lucida Sans Unicode", verdana, geneva, sans-serif;
+ color:#888;
+}
+
+h1.planet-title {
+ font-size:300%;
+}
+
+a {
+ color:#222;
+ border-bottom:1px dotted #ccc;
+ text-decoration:none;
+}
+
+a:hover {
+ border-bottom:1px solid #ccc;
+}
+
+.posting-title {
+ background-color:#f5f5f5;
+}
+
+pre, code {
+ color:#000000;
+ font-size:120%;
+}
+
+.infobox {
+ border-left: 1px solid #C1DAD7;
+}
+
+.posting-date {
+ text-align: right;
+ font-size:90%;
+}
+
+a.more {
+ display:block;
+ padding:0 0 5px 0;
+ color:#333;
+ text-decoration:none;
+ text-align:right;
+ border:none;
+}
--- /dev/null
+! Copyright (C) 2007 Slava Pestov.
+! See http://factorcode.org/license.txt for BSD license.
+USING: io.files namespaces webapps.file http.server.responders
+xmode.code2html kernel html sequences ;
+IN: webapps.source
+
+! This responder is a potential security problem. Make sure you
+! don't have sensitive files stored under vm/, core/, extra/
+! or misc/.
+
+: check-source-path ( path -- ? )
+ { "vm/" "core/" "extra/" "misc/" }
+ [ head? ] curry* contains? ;
+
+: source-responder ( path mime-type -- )
+ drop
+ serving-html
+ [ dup <file-reader> htmlize-stream ] with-html-stream ;
+
+global [
+ ! Serve up our own source code
+ "source" [
+ "argument" get check-source-path [
+ [
+ "" resource-path "doc-root" set
+ [ source-responder ] serve-file-hook set
+ file-responder
+ ] with-scope
+ ] [
+ "403 forbidden" httpd-error
+ ] if
+ ] add-simple-responder
+] bind
! FUNCTION: GetSystemDefaultLCID
! FUNCTION: GetSystemDefaultUILanguage
! FUNCTION: GetSystemDirectoryA
-! FUNCTION: GetSystemDirectoryW
+FUNCTION: UINT GetSystemDirectoryW ( LPTSTR lpBuffer, UINT uSize ) ;
+: GetSystemDirectory GetSystemDirectoryW ; inline
FUNCTION: void GetSystemInfo ( LPSYSTEM_INFO lpSystemInfo ) ;
! FUNCTION: GetSystemPowerStatus
! FUNCTION: GetSystemRegistryQuota
FUNCTION: void GetSystemTimeAsFileTime ( LPFILETIME lpSystemTimeAsFileTime ) ;
! FUNCTION: GetSystemTimes
! FUNCTION: GetSystemWindowsDirectoryA
-! FUNCTION: GetSystemWindowsDirectoryW
+FUNCTION: UINT GetSystemWindowsDirectoryW ( LPTSTR lpBuffer, UINT uSize ) ;
+: GetSystemWindowsDirectory GetSystemWindowsDirectoryW ; inline
! FUNCTION: GetSystemWow64DirectoryA
! FUNCTION: GetSystemWow64DirectoryW
! FUNCTION: GetTapeParameters
! FUNCTION: GetVolumePathNamesForVolumeNameW
! FUNCTION: GetVolumePathNameW
! FUNCTION: GetWindowsDirectoryA
-! FUNCTION: GetWindowsDirectoryW
+FUNCTION: UINT GetWindowsDirectoryW ( LPTSTR lpBuffer, UINT uSize ) ;
+: GetWindowsDirectory GetWindowsDirectoryW ; inline
! FUNCTION: GetWriteWatch
! FUNCTION: GlobalAddAtomA
! FUNCTION: GlobalAddAtomW
word [ word-name ] keep execute maybe-create-windows-messages
windows-messages get set-at ; parsing
-: get-windows-message-name ( n -- name )
+: windows-message-name ( n -- name )
windows-messages get at* [ drop "unknown message" ] unless ;
: WM_NULL HEX: 0000 ; inline add-windows-message
: WM_NCXBUTTONDOWN HEX: 00AB ; inline add-windows-message
: WM_NCXBUTTONUP HEX: 00AC ; inline add-windows-message
: WM_NCXBUTTONDBLCLK HEX: 00AD ; inline add-windows-message
+: WM_NCUAHDRAWCAPTION HEX: 00AE ; inline add-windows-message ! undocumented
+: WM_NCUAHDRAWFRAME HEX: 00AF ; inline add-windows-message ! undocumented
: WM_INPUT HEX: 00FF ; inline add-windows-message
: WM_KEYFIRST HEX: 0100 ; inline add-windows-message
: WM_KEYDOWN HEX: 0100 ; inline add-windows-message
{ "kernel32" "kernel32.dll" "stdcall" }
{ "winsock" "ws2_32.dll" "stdcall" }
{ "mswsock" "mswsock.dll" "stdcall" }
+ { "shell32" "shell32.dll" "stdcall" }
{ "libc" "msvcrt.dll" "cdecl" }
{ "libm" "msvcrt.dll" "cdecl" }
{ "gl" "opengl32.dll" "stdcall" }
--- /dev/null
+USING: alien alien.c-types alien.syntax combinators
+kernel windows windows.user32 ;
+IN: windows.shell32
+
+: CSIDL_DESKTOP HEX: 00 ; inline
+: CSIDL_INTERNET HEX: 01 ; inline
+: CSIDL_PROGRAMS HEX: 02 ; inline
+: CSIDL_CONTROLS HEX: 03 ; inline
+: CSIDL_PRINTERS HEX: 04 ; inline
+: CSIDL_PERSONAL HEX: 05 ; inline
+: CSIDL_FAVORITES HEX: 06 ; inline
+: CSIDL_STARTUP HEX: 07 ; inline
+: CSIDL_RECENT HEX: 08 ; inline
+: CSIDL_SENDTO HEX: 09 ; inline
+: CSIDL_BITBUCKET HEX: 0a ; inline
+: CSIDL_STARTMENU HEX: 0b ; inline
+: CSIDL_MYDOCUMENTS HEX: 0c ; inline
+: CSIDL_MYMUSIC HEX: 0d ; inline
+: CSIDL_MYVIDEO HEX: 0e ; inline
+: CSIDL_DESKTOPDIRECTORY HEX: 10 ; inline
+: CSIDL_DRIVES HEX: 11 ; inline
+: CSIDL_NETWORK HEX: 12 ; inline
+: CSIDL_NETHOOD HEX: 13 ; inline
+: CSIDL_FONTS HEX: 14 ; inline
+: CSIDL_TEMPLATES HEX: 15 ; inline
+: CSIDL_COMMON_STARTMENU HEX: 16 ; inline
+: CSIDL_COMMON_PROGRAMS HEX: 17 ; inline
+: CSIDL_COMMON_STARTUP HEX: 18 ; inline
+: CSIDL_COMMON_DESKTOPDIRECTORY HEX: 19 ; inline
+: CSIDL_APPDATA HEX: 1a ; inline
+: CSIDL_PRINTHOOD HEX: 1b ; inline
+: CSIDL_LOCAL_APPDATA HEX: 1c ; inline
+: CSIDL_ALTSTARTUP HEX: 1d ; inline
+: CSIDL_COMMON_ALTSTARTUP HEX: 1e ; inline
+: CSIDL_COMMON_FAVORITES HEX: 1f ; inline
+: CSIDL_INTERNET_CACHE HEX: 20 ; inline
+: CSIDL_COOKIES HEX: 21 ; inline
+: CSIDL_HISTORY HEX: 22 ; inline
+: CSIDL_COMMON_APPDATA HEX: 23 ; inline
+: CSIDL_WINDOWS HEX: 24 ; inline
+: CSIDL_SYSTEM HEX: 25 ; inline
+: CSIDL_PROGRAM_FILES HEX: 26 ; inline
+: CSIDL_MYPICTURES HEX: 27 ; inline
+: CSIDL_PROFILE HEX: 28 ; inline
+: CSIDL_SYSTEMX86 HEX: 29 ; inline
+: CSIDL_PROGRAM_FILESX86 HEX: 2a ; inline
+: CSIDL_PROGRAM_FILES_COMMON HEX: 2b ; inline
+: CSIDL_PROGRAM_FILES_COMMONX86 HEX: 2c ; inline
+: CSIDL_COMMON_TEMPLATES HEX: 2d ; inline
+: CSIDL_COMMON_DOCUMENTS HEX: 2e ; inline
+: CSIDL_COMMON_ADMINTOOLS HEX: 2f ; inline
+: CSIDL_ADMINTOOLS HEX: 30 ; inline
+: CSIDL_CONNECTIONS HEX: 31 ; inline
+: CSIDL_COMMON_MUSIC HEX: 35 ; inline
+: CSIDL_COMMON_PICTURES HEX: 36 ; inline
+: CSIDL_COMMON_VIDEO HEX: 37 ; inline
+: CSIDL_RESOURCES HEX: 38 ; inline
+: CSIDL_RESOURCES_LOCALIZED HEX: 39 ; inline
+: CSIDL_COMMON_OEM_LINKS HEX: 3a ; inline
+: CSIDL_CDBURN_AREA HEX: 3b ; inline
+: CSIDL_COMPUTERSNEARME HEX: 3d ; inline
+: CSIDL_PROFILES HEX: 3e ; inline
+: CSIDL_FOLDER_MASK HEX: ff ; inline
+: CSIDL_FLAG_PER_USER_INIT HEX: 800 ; inline
+: CSIDL_FLAG_NO_ALIAS HEX: 1000 ; inline
+: CSIDL_FLAG_DONT_VERIFY HEX: 4000 ; inline
+: CSIDL_FLAG_CREATE HEX: 8000 ; inline
+: CSIDL_FLAG_MASK HEX: ff00 ; inline
+
+
+: S_OK 0 ; inline
+: S_FALSE 1 ; inline
+: E_FAIL HEX: 80004005 ; inline
+: E_INVALIDARG HEX: 80070057 ; inline
+: ERROR_FILE_NOT_FOUND 2 ; inline
+
+: SHGFP_TYPE_CURRENT 0 ; inline
+: SHGFP_TYPE_DEFAULT 1 ; inline
+
+LIBRARY: shell32
+
+FUNCTION: HRESULT SHGetFolderPathW ( HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwReserved, LPTSTR pszPath ) ;
+: SHGetFolderPath SHGetFolderPathW ; inline
+
+FUNCTION: HINSTANCE ShellExecuteW ( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPCTSTR lpParameters, LPCTSTR lpDirectory, INT nShowCmd ) ;
+: ShellExecute ShellExecuteW ; inline
+
+: open-in-explorer ( dir -- )
+ f "open" rot f f SW_SHOWNORMAL ShellExecute drop ;
+
+: shell32-error ( n -- )
+ dup S_OK = [
+ drop
+ ] [
+ {
+ ! { ERROR_FILE_NOT_FOUND [ "file not found" throw ] }
+ ! { E_INVALIDARG [ "invalid arg" throw ] }
+ [ (win32-error-string) throw ]
+ } case
+ ] if ;
+
+: shell32-directory ( n -- str )
+ f swap f SHGFP_TYPE_DEFAULT
+ MAX_UNICODE_PATH "ushort" <c-array>
+ [ SHGetFolderPath shell32-error ] keep alien>u16-string ;
+
+: desktop ( -- str )
+ CSIDL_DESKTOPDIRECTORY shell32-directory ;
+
+: my-documents ( -- str )
+ CSIDL_PERSONAL shell32-directory ;
+
+: application-data ( -- str )
+ CSIDL_APPDATA shell32-directory ;
+
+: windows ( -- str )
+ CSIDL_WINDOWS shell32-directory ;
+
+: programs ( -- str )
+ CSIDL_PROGRAMS shell32-directory ;
+
+: program-files ( -- str )
+ CSIDL_PROGRAM_FILES shell32-directory ;
+
+: program-files-x86 ( -- str )
+ CSIDL_PROGRAM_FILESX86 shell32-directory ;
+
+: program-files-common ( -- str )
+ CSIDL_PROGRAM_FILES_COMMON shell32-directory ;
+
+: program-files-common-x86 ( -- str )
+ CSIDL_PROGRAM_FILES_COMMONX86 shell32-directory ;
{ "POINT" "pt" }
{ "uint" "vkDirection" } ;
-
+C-STRUCT: ACCEL
+ { "BYTE" "fVirt" }
+ { "WORD" "key" }
+ { "WORD" "cmd" } ;
+TYPEDEF: ACCEL* LPACCEL
IN: windows.user32
! HKL for ActivateKeyboardLayout
-: HKL_PREV 0 ;
-: HKL_NEXT 1 ;
-
-: CW_USEDEFAULT HEX: 80000000 ;
-
-: WS_OVERLAPPED HEX: 00000000 ;
-: WS_POPUP HEX: 80000000 ;
-: WS_CHILD HEX: 40000000 ;
-: WS_MINIMIZE HEX: 20000000 ;
-: WS_VISIBLE HEX: 10000000 ;
-: WS_DISABLED HEX: 08000000 ;
-: WS_CLIPSIBLINGS HEX: 04000000 ;
-: WS_CLIPCHILDREN HEX: 02000000 ;
-: WS_MAXIMIZE HEX: 01000000 ;
-: WS_CAPTION HEX: 00C00000 ; ! /* WS_BORDER | WS_DLGFRAME */
-: WS_BORDER HEX: 00800000 ;
-: WS_DLGFRAME HEX: 00400000 ;
-: WS_VSCROLL HEX: 00200000 ;
-: WS_HSCROLL HEX: 00100000 ;
-: WS_SYSMENU HEX: 00080000 ;
-: WS_THICKFRAME HEX: 00040000 ;
-: WS_GROUP HEX: 00020000 ;
-: WS_TABSTOP HEX: 00010000 ;
-: WS_MINIMIZEBOX HEX: 00020000 ;
-: WS_MAXIMIZEBOX HEX: 00010000 ;
+: HKL_PREV 0 ; inline
+: HKL_NEXT 1 ; inline
+
+: CW_USEDEFAULT HEX: 80000000 ; inline
+
+: WS_OVERLAPPED HEX: 00000000 ; inline
+: WS_POPUP HEX: 80000000 ; inline
+: WS_CHILD HEX: 40000000 ; inline
+: WS_MINIMIZE HEX: 20000000 ; inline
+: WS_VISIBLE HEX: 10000000 ; inline
+: WS_DISABLED HEX: 08000000 ; inline
+: WS_CLIPSIBLINGS HEX: 04000000 ; inline
+: WS_CLIPCHILDREN HEX: 02000000 ; inline
+: WS_MAXIMIZE HEX: 01000000 ; inline
+: WS_CAPTION HEX: 00C00000 ; inline
+: WS_BORDER HEX: 00800000 ; inline
+: WS_DLGFRAME HEX: 00400000 ; inline
+: WS_VSCROLL HEX: 00200000 ; inline
+: WS_HSCROLL HEX: 00100000 ; inline
+: WS_SYSMENU HEX: 00080000 ; inline
+: WS_THICKFRAME HEX: 00040000 ; inline
+: WS_GROUP HEX: 00020000 ; inline
+: WS_TABSTOP HEX: 00010000 ; inline
+: WS_MINIMIZEBOX HEX: 00020000 ; inline
+: WS_MAXIMIZEBOX HEX: 00010000 ; inline
! Common window styles
-: WS_OVERLAPPEDWINDOW WS_OVERLAPPED WS_CAPTION WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX bitor bitor bitor bitor bitor ;
+: WS_OVERLAPPEDWINDOW WS_OVERLAPPED WS_CAPTION WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX bitor bitor bitor bitor bitor ; foldable inline
-: WS_POPUPWINDOW WS_POPUP WS_BORDER WS_SYSMENU bitor bitor ;
+: WS_POPUPWINDOW WS_POPUP WS_BORDER WS_SYSMENU bitor bitor ; foldable inline
-: WS_CHILDWINDOW WS_CHILD ;
+: WS_CHILDWINDOW WS_CHILD ; inline
-: WS_TILED WS_OVERLAPPED ;
-: WS_ICONIC WS_MINIMIZE ;
-: WS_SIZEBOX WS_THICKFRAME ;
-: WS_TILEDWINDOW WS_OVERLAPPEDWINDOW ;
+: WS_TILED WS_OVERLAPPED ; inline
+: WS_ICONIC WS_MINIMIZE ; inline
+: WS_SIZEBOX WS_THICKFRAME ; inline
+: WS_TILEDWINDOW WS_OVERLAPPEDWINDOW ; inline
! Extended window styles
: WS_EX_CONTROLPARENT HEX: 00010000 ; inline
: WS_EX_STATICEDGE HEX: 00020000 ; inline
: WS_EX_APPWINDOW HEX: 00040000 ; inline
-: WS_EX_OVERLAPPEDWINDOW WS_EX_WINDOWEDGE WS_EX_CLIENTEDGE bitor ; inline
-: WS_EX_PALETTEWINDOW
- WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW bitor WS_EX_TOPMOST bitor ; inline
-
-: CS_VREDRAW HEX: 0001 ;
-: CS_HREDRAW HEX: 0002 ;
-: CS_DBLCLKS HEX: 0008 ;
-: CS_OWNDC HEX: 0020 ;
-: CS_CLASSDC HEX: 0040 ;
-: CS_PARENTDC HEX: 0080 ;
-: CS_NOCLOSE HEX: 0200 ;
-: CS_SAVEBITS HEX: 0800 ;
-: CS_BYTEALIGNCLIENT HEX: 1000 ;
-: CS_BYTEALIGNWINDOW HEX: 2000 ;
-: CS_GLOBALCLASS HEX: 4000 ;
-
-: COLOR_SCROLLBAR 0 ;
-: COLOR_BACKGROUND 1 ;
-: COLOR_ACTIVECAPTION 2 ;
-: COLOR_INACTIVECAPTION 3 ;
-: COLOR_MENU 4 ;
-: COLOR_WINDOW 5 ;
-: COLOR_WINDOWFRAME 6 ;
-: COLOR_MENUTEXT 7 ;
-: COLOR_WINDOWTEXT 8 ;
-: COLOR_CAPTIONTEXT 9 ;
-: COLOR_ACTIVEBORDER 10 ;
-: COLOR_INACTIVEBORDER 11 ;
-: COLOR_APPWORKSPACE 12 ;
-: COLOR_HIGHLIGHT 13 ;
-: COLOR_HIGHLIGHTTEXT 14 ;
-: COLOR_BTNFACE 15 ;
-: COLOR_BTNSHADOW 16 ;
-: COLOR_GRAYTEXT 17 ;
-: COLOR_BTNTEXT 18 ;
-: COLOR_INACTIVECAPTIONTEXT 19 ;
-: COLOR_BTNHIGHLIGHT 20 ;
-
-: IDI_APPLICATION 32512 ;
-: IDI_HAND 32513 ;
-: IDI_QUESTION 32514 ;
-: IDI_EXCLAMATION 32515 ;
-: IDI_ASTERISK 32516 ;
-: IDI_WINLOGO 32517 ;
+: WS_EX_OVERLAPPEDWINDOW ( -- n )
+ WS_EX_WINDOWEDGE WS_EX_CLIENTEDGE bitor ; foldable inline
+: WS_EX_PALETTEWINDOW ( -- n )
+ WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW bitor
+ WS_EX_TOPMOST bitor ; foldable inline
+
+: CS_VREDRAW HEX: 0001 ; inline
+: CS_HREDRAW HEX: 0002 ; inline
+: CS_DBLCLKS HEX: 0008 ; inline
+: CS_OWNDC HEX: 0020 ; inline
+: CS_CLASSDC HEX: 0040 ; inline
+: CS_PARENTDC HEX: 0080 ; inline
+: CS_NOCLOSE HEX: 0200 ; inline
+: CS_SAVEBITS HEX: 0800 ; inline
+: CS_BYTEALIGNCLIENT HEX: 1000 ; inline
+: CS_BYTEALIGNWINDOW HEX: 2000 ; inline
+: CS_GLOBALCLASS HEX: 4000 ; inline
+
+: COLOR_SCROLLBAR 0 ; inline
+: COLOR_BACKGROUND 1 ; inline
+: COLOR_ACTIVECAPTION 2 ; inline
+: COLOR_INACTIVECAPTION 3 ; inline
+: COLOR_MENU 4 ; inline
+: COLOR_WINDOW 5 ; inline
+: COLOR_WINDOWFRAME 6 ; inline
+: COLOR_MENUTEXT 7 ; inline
+: COLOR_WINDOWTEXT 8 ; inline
+: COLOR_CAPTIONTEXT 9 ; inline
+: COLOR_ACTIVEBORDER 10 ; inline
+: COLOR_INACTIVEBORDER 11 ; inline
+: COLOR_APPWORKSPACE 12 ; inline
+: COLOR_HIGHLIGHT 13 ; inline
+: COLOR_HIGHLIGHTTEXT 14 ; inline
+: COLOR_BTNFACE 15 ; inline
+: COLOR_BTNSHADOW 16 ; inline
+: COLOR_GRAYTEXT 17 ; inline
+: COLOR_BTNTEXT 18 ; inline
+: COLOR_INACTIVECAPTIONTEXT 19 ; inline
+: COLOR_BTNHIGHLIGHT 20 ; inline
+
+: IDI_APPLICATION 32512 ; inline
+: IDI_HAND 32513 ; inline
+: IDI_QUESTION 32514 ; inline
+: IDI_EXCLAMATION 32515 ; inline
+: IDI_ASTERISK 32516 ; inline
+: IDI_WINLOGO 32517 ; inline
! ShowWindow() Commands
-: SW_HIDE 0 ;
-: SW_SHOWNORMAL 1 ;
-: SW_NORMAL 1 ;
-: SW_SHOWMINIMIZED 2 ;
-: SW_SHOWMAXIMIZED 3 ;
-: SW_MAXIMIZE 3 ;
-: SW_SHOWNOACTIVATE 4 ;
-: SW_SHOW 5 ;
-: SW_MINIMIZE 6 ;
-: SW_SHOWMINNOACTIVE 7 ;
-: SW_SHOWNA 8 ;
-: SW_RESTORE 9 ;
-: SW_SHOWDEFAULT 10 ;
-: SW_FORCEMINIMIZE 11 ;
-: SW_MAX 11 ;
+: SW_HIDE 0 ; inline
+: SW_SHOWNORMAL 1 ; inline
+: SW_NORMAL 1 ; inline
+: SW_SHOWMINIMIZED 2 ; inline
+: SW_SHOWMAXIMIZED 3 ; inline
+: SW_MAXIMIZE 3 ; inline
+: SW_SHOWNOACTIVATE 4 ; inline
+: SW_SHOW 5 ; inline
+: SW_MINIMIZE 6 ; inline
+: SW_SHOWMINNOACTIVE 7 ; inline
+: SW_SHOWNA 8 ; inline
+: SW_RESTORE 9 ; inline
+: SW_SHOWDEFAULT 10 ; inline
+: SW_FORCEMINIMIZE 11 ; inline
+: SW_MAX 11 ; inline
! PeekMessage
-: PM_NOREMOVE 0 ;
-: PM_REMOVE 1 ;
-: PM_NOYIELD 2 ;
+: PM_NOREMOVE 0 ; inline
+: PM_REMOVE 1 ; inline
+: PM_NOYIELD 2 ; inline
! : PM_QS_INPUT (QS_INPUT << 16) ;
! : PM_QS_POSTMESSAGE ((QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16) ;
! : PM_QS_PAINT (QS_PAINT << 16) ;
!
! Standard Cursor IDs
!
-: IDC_ARROW 32512 ;
-: IDC_IBEAM 32513 ;
-: IDC_WAIT 32514 ;
-: IDC_CROSS 32515 ;
-: IDC_UPARROW 32516 ;
-: IDC_SIZE 32640 ; ! OBSOLETE: use IDC_SIZEALL
-: IDC_ICON 32641 ; ! OBSOLETE: use IDC_ARROW
-: IDC_SIZENWSE 32642 ;
-: IDC_SIZENESW 32643 ;
-: IDC_SIZEWE 32644 ;
-: IDC_SIZENS 32645 ;
-: IDC_SIZEALL 32646 ;
-: IDC_NO 32648 ; ! not in win3.1
-: IDC_HAND 32649 ;
-: IDC_APPSTARTING 32650 ; ! not in win3.1
-: IDC_HELP 32651 ;
+: IDC_ARROW 32512 ; inline
+: IDC_IBEAM 32513 ; inline
+: IDC_WAIT 32514 ; inline
+: IDC_CROSS 32515 ; inline
+: IDC_UPARROW 32516 ; inline
+: IDC_SIZE 32640 ; inline ! OBSOLETE: use IDC_SIZEALL
+: IDC_ICON 32641 ; inline ! OBSOLETE: use IDC_ARROW
+: IDC_SIZENWSE 32642 ; inline
+: IDC_SIZENESW 32643 ; inline
+: IDC_SIZEWE 32644 ; inline
+: IDC_SIZENS 32645 ; inline
+: IDC_SIZEALL 32646 ; inline
+: IDC_NO 32648 ; inline ! not in win3.1
+: IDC_HAND 32649 ; inline
+: IDC_APPSTARTING 32650 ; inline ! not in win3.1
+: IDC_HELP 32651 ; inline
! Predefined Clipboard Formats
: CF_TEXT 1 ; inline
: VK_DELETE HEX: 2E ; inline
: VK_HELP HEX: 2F ; inline
-! VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
-! 0x40 : unassigned
-! VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
+: VK_0 CHAR: 0 ; inline
+: VK_1 CHAR: 1 ; inline
+: VK_2 CHAR: 2 ; inline
+: VK_3 CHAR: 3 ; inline
+: VK_4 CHAR: 4 ; inline
+: VK_5 CHAR: 5 ; inline
+: VK_6 CHAR: 6 ; inline
+: VK_7 CHAR: 7 ; inline
+: VK_8 CHAR: 8 ; inline
+: VK_9 CHAR: 9 ; inline
+
+: VK_A CHAR: A ; inline
+: VK_B CHAR: B ; inline
+: VK_C CHAR: C ; inline
+: VK_D CHAR: D ; inline
+: VK_E CHAR: E ; inline
+: VK_F CHAR: F ; inline
+: VK_G CHAR: G ; inline
+: VK_H CHAR: H ; inline
+: VK_I CHAR: I ; inline
+: VK_J CHAR: J ; inline
+: VK_K CHAR: K ; inline
+: VK_L CHAR: L ; inline
+: VK_M CHAR: M ; inline
+: VK_N CHAR: N ; inline
+: VK_O CHAR: O ; inline
+: VK_P CHAR: P ; inline
+: VK_Q CHAR: Q ; inline
+: VK_R CHAR: R ; inline
+: VK_S CHAR: S ; inline
+: VK_T CHAR: T ; inline
+: VK_U CHAR: U ; inline
+: VK_V CHAR: V ; inline
+: VK_W CHAR: W ; inline
+: VK_X CHAR: X ; inline
+: VK_Y CHAR: Y ; inline
+: VK_Z CHAR: Z ; inline
: VK_LWIN HEX: 5B ; inline
: VK_RWIN HEX: 5C ; inline
! Some fields are not defined for win64
! Window field offsets for GetWindowLong()
-: GWL_WNDPROC -4 ;
-: GWL_HINSTANCE -6 ;
-: GWL_HWNDPARENT -8 ;
-: GWL_USERDATA -21 ;
-: GWL_ID -12 ;
+: GWL_WNDPROC -4 ; inline
+: GWL_HINSTANCE -6 ; inline
+: GWL_HWNDPARENT -8 ; inline
+: GWL_USERDATA -21 ; inline
+: GWL_ID -12 ; inline
-: GWL_STYLE -16 ;
-: GWL_EXSTYLE -20 ;
+: GWL_STYLE -16 ; inline
+: GWL_EXSTYLE -20 ; inline
-: GWLP_WNDPROC -4 ;
-: GWLP_HINSTANCE -6 ;
-: GWLP_HWNDPARENT -8 ;
-: GWLP_USERDATA -21 ;
-: GWLP_ID -12 ;
+: GWLP_WNDPROC -4 ; inline
+: GWLP_HINSTANCE -6 ; inline
+: GWLP_HWNDPARENT -8 ; inline
+: GWLP_USERDATA -21 ; inline
+: GWLP_ID -12 ; inline
! Class field offsets for GetClassLong()
-: GCL_MENUNAME -8 ;
-: GCL_HBRBACKGROUND -10 ;
-: GCL_HCURSOR -12 ;
-: GCL_HICON -14 ;
-: GCL_HMODULE -16 ;
-: GCL_WNDPROC -24 ;
-: GCL_HICONSM -34 ;
-: GCL_CBWNDEXTRA -18 ;
-: GCL_CBCLSEXTRA -20 ;
-: GCL_STYLE -26 ;
-: GCW_ATOM -32 ;
-
-: GCLP_MENUNAME -8 ;
-: GCLP_HBRBACKGROUND -10 ;
-: GCLP_HCURSOR -12 ;
-: GCLP_HICON -14 ;
-: GCLP_HMODULE -16 ;
-: GCLP_WNDPROC -24 ;
-: GCLP_HICONSM -34 ;
-
-: MB_ICONASTERISK HEX: 00000040 ;
-: MB_ICONEXCLAMATION HEX: 00000030 ;
-: MB_ICONHAND HEX: 00000010 ;
-: MB_ICONQUESTION HEX: 00000020 ;
-: MB_OK HEX: 00000000 ;
+: GCL_MENUNAME -8 ; inline
+: GCL_HBRBACKGROUND -10 ; inline
+: GCL_HCURSOR -12 ; inline
+: GCL_HICON -14 ; inline
+: GCL_HMODULE -16 ; inline
+: GCL_WNDPROC -24 ; inline
+: GCL_HICONSM -34 ; inline
+: GCL_CBWNDEXTRA -18 ; inline
+: GCL_CBCLSEXTRA -20 ; inline
+: GCL_STYLE -26 ; inline
+: GCW_ATOM -32 ; inline
+
+: GCLP_MENUNAME -8 ; inline
+: GCLP_HBRBACKGROUND -10 ; inline
+: GCLP_HCURSOR -12 ; inline
+: GCLP_HICON -14 ; inline
+: GCLP_HMODULE -16 ; inline
+: GCLP_WNDPROC -24 ; inline
+: GCLP_HICONSM -34 ; inline
+
+: MB_ICONASTERISK HEX: 00000040 ; inline
+: MB_ICONEXCLAMATION HEX: 00000030 ; inline
+: MB_ICONHAND HEX: 00000010 ; inline
+: MB_ICONQUESTION HEX: 00000020 ; inline
+: MB_OK HEX: 00000000 ; inline
+
+: FVIRTKEY TRUE ; inline
+: FNOINVERT 2 ; inline
+: FSHIFT 4 ; inline
+: FCONTROL 8 ; inline
+: FALT 16 ; inline
+
+: MAPVK_VK_TO_VSC 0 ; inline
+: MAPVK_VSC_TO_VK 1 ; inline
+: MAPVK_VK_TO_CHAR 2 ; inline
+: MAPVK_VSC_TO_VK_EX 3 ; inline
+: MAPVK_VK_TO_VSC_EX 3 ; inline
: TME_HOVER 1 ; inline
: TME_LEAVE 2 ; inline
! FUNCTION: CloseWindow
! FUNCTION: CloseWindowStation
! FUNCTION: CopyAcceleratorTableA
-! FUNCTION: CopyAcceleratorTableW
+FUNCTION: int CopyAcceleratorTableW ( HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries ) ;
+: CopyAcceleratorTable CopyAcceleratorTableW ; inline
! FUNCTION: CopyIcon
! FUNCTION: CopyImage
! FUNCTION: CopyRect
! FUNCTION: CountClipboardFormats
! FUNCTION: CreateAcceleratorTableA
-! FUNCTION: CreateAcceleratorTableW
+FUNCTION: HACCEL CreateAcceleratorTableW ( LPACCEL lpaccl, int cEntries ) ;
+: CreateAcceleratorTable CreateAcceleratorTableW ; inline
! FUNCTION: CreateCaret
! FUNCTION: CreateCursor
! FUNCTION: CreateDesktopA
: DefWindowProc DefWindowProcW ; inline
! FUNCTION: DeleteMenu
! FUNCTION: DeregisterShellHookWindow
-! FUNCTION: DestroyAcceleratorTable
+FUNCTION: BOOL DestroyAcceleratorTable ( HACCEL hAccel ) ;
! FUNCTION: DestroyCaret
! FUNCTION: DestroyCursor
! FUNCTION: DestroyIcon
! FUNCTION: KillSystemTimer
! FUNCTION: KillTimer
! FUNCTION: LoadAcceleratorsA
-! FUNCTION: LoadAcceleratorsW
+FUNCTION: HACCEL LoadAcceleratorsW ( HINSTANCE hInstance, LPCTSTR lpTableName ) ;
! FUNCTION: LoadBitmapA
! FUNCTION: LoadBitmapW
! FUNCTION: LoadCursorFromFileA
! FUNCTION: LookupIconIdFromDirectory
! FUNCTION: LookupIconIdFromDirectoryEx
! FUNCTION: MapDialogRect
-! FUNCTION: MapVirtualKeyA
-! FUNCTION: MapVirtualKeyExA
-! FUNCTION: MapVirtualKeyExW
-! FUNCTION: MapVirtualKeyW
+
+FUNCTION: UINT MapVirtualKeyW ( UINT uCode, UINT uMapType ) ;
+: MapVirtualKey MapVirtualKeyW ; inline
+
+FUNCTION: UINT MapVirtualKeyExW ( UINT uCode, UINT uMapType, HKL dwhkl ) ;
+: MapVirtualKeyEx MapVirtualKeyExW ; inline
+
! FUNCTION: MapWindowPoints
! FUNCTION: MB_GetString
! FUNCTION: MBToWCSEx
! FUNCTION: mouse_event
-
FUNCTION: BOOL MoveWindow (
HWND hWnd,
int X,
int nHeight,
BOOL bRepaint ) ;
-
! FUNCTION: MsgWaitForMultipleObjects
! FUNCTION: MsgWaitForMultipleObjectsEx
! FUNCTION: NotifyWinEvent
! FUNCTION: TrackPopupMenuEx
! FUNCTION: TranslateAccelerator
! FUNCTION: TranslateAcceleratorA
-! FUNCTION: TranslateAcceleratorW
+FUNCTION: int TranslateAcceleratorW ( HWND hWnd, HACCEL hAccTable, LPMSG lpMsg ) ;
+: TranslateAccelerator TranslateAcceleratorW ; inline
+
! FUNCTION: TranslateMDISysAccel
FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
: lo-word ( wparam -- lo ) <short> *short ; inline
: hi-word ( wparam -- hi ) -16 shift lo-word ; inline
+: MAX_UNICODE_PATH 32768 ; inline
! You must LocalFree the return value!
FUNCTION: void* error_message ( DWORD id ) ;
! Copyright (C) 2005, 2006 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel sequences sequences.private assocs arrays delegate ;
+USING: kernel sequences sequences.private assocs arrays delegate vectors ;
IN: xml.data
TUPLE: name space tag url ;
2dup attr@ nip [
2nip set-second
] [
- >r assure-name swap 2array r> push
+ [ >r assure-name swap 2array r> ?push ] keep
+ set-delegate
] if* ;
M: attrs assoc-size length ;
M: attrs new-assoc drop V{ } new <attrs> ;
-M: attrs assoc-find >r delegate r> assoc-find ;
M: attrs >alist delegate >alist ;
: >attrs ( assoc -- attrs )
- V{ } assoc-clone-like
- [ >r assure-name r> ] assoc-map
- <attrs> ;
+ dup [
+ V{ } assoc-clone-like
+ [ >r assure-name r> ] assoc-map
+ ] when <attrs> ;
M: attrs assoc-like
drop dup attrs? [ >attrs ] unless ;
M: attrs clear-assoc
- delete-all ;
+ f swap set-delegate ;
M: attrs delete-at
tuck attr@ drop [ swap delete-nth ] [ drop ] if* ;
! See http://factorcode.org/license.txt for BSD license.\r
USING: kernel namespaces sequences words io assocs\r
quotations strings parser arrays xml.data xml.writer debugger\r
-splitting ;\r
+splitting vectors ;\r
IN: xml.utilities\r
\r
! * System for words specialized on tag names\r
! * Common utility functions\r
\r
: build-tag* ( items name -- tag )\r
- "" swap "" <name>\r
- swap >r { } r> <tag> ;\r
+ assure-name swap >r f r> <tag> ;\r
\r
: build-tag ( item name -- tag )\r
>r 1array r> build-tag* ;\r
M: xml xml-inject >r delegate >r xml-inject ;\r
\r
! * Accessing part of an XML document\r
+! for tag- words, a start means that it searches all children\r
+! and no star searches only direct children\r
\r
-: get-id ( tag id -- elem ) ! elem=tag.getElementById(id)\r
- swap [\r
- dup tag?\r
- [ "id" swap at over = ]\r
- [ drop f ] if\r
- ] xml-find nip ;\r
-\r
-: (get-tag) ( name elem -- ? )\r
+: tag-named? ( name elem -- ? )\r
dup tag? [ names-match? ] [ 2drop f ] if ;\r
\r
: tag-named* ( tag name/string -- matching-tag )\r
- assure-name swap [ dupd (get-tag) ] xml-find nip ;\r
+ assure-name [ swap tag-named? ] curry xml-find ;\r
\r
: tags-named* ( tag name/string -- tags-seq )\r
- assure-name swap [ dupd (get-tag) ] xml-subset nip ;\r
+ assure-name [ swap tag-named? ] curry xml-subset ;\r
\r
: tag-named ( tag name/string -- matching-tag )\r
! like get-name-tag but only looks at direct children,\r
! not all the children down the tree.\r
- assure-name swap [ (get-tag) ] curry* find nip ;\r
+ assure-name swap [ tag-named? ] curry* find nip ;\r
\r
: tags-named ( tag name/string -- tags-seq )\r
- assure-name swap [ (get-tag) ] curry* subset ;\r
+ assure-name swap [ tag-named? ] curry* subset ;\r
\r
: assert-tag ( name name -- )\r
names-match? [ "Unexpected XML tag found" throw ] unless ;\r
+\r
+: insert-children ( children tag -- )\r
+ dup tag-children [ push-all ]\r
+ [ >r V{ } like r> set-tag-children ] if ;\r
+\r
+: insert-child ( child tag -- )\r
+ >r 1vector r> insert-children ;\r
+\r
+: tag-with-attr? ( elem attr-value attr-name -- ? )\r
+ rot dup tag? [ at = ] [ 3drop f ] if ;\r
+\r
+: tag-with-attr ( tag attr-value attr-name -- matching-tag )\r
+ assure-name [ tag-with-attr? ] 2curry find nip ;\r
+\r
+: tags-with-attr ( tag attr-value attr-name -- tags-seq )\r
+ assure-name [ tag-with-attr? ] 2curry subset ;\r
+\r
+: tag-with-attr* ( tag attr-value attr-name -- matching-tag )\r
+ assure-name [ tag-with-attr? ] 2curry xml-find ;\r
+\r
+: tags-with-attr* ( tag attr-value attr-name -- tags-seq )\r
+ assure-name [ tag-with-attr? ] 2curry xml-subset ;\r
+\r
+: get-id ( tag id -- elem ) ! elem=tag.getElementById(id)\r
+ "id" tag-with-attr ;\r
+\r
+: tags-named-with-attr* ( tag tag-name attr-value attr-name -- tags )\r
+ >r >r tags-named* r> r> tags-with-attr ;\r
+\r
--- /dev/null
+This is a Factor port of the jEdit 4.3 syntax highlighting engine
+(http://www.jedit.org).
+
+jEdit 1.2, released in late 1998, was the first release to support
+syntax highlighting. It featured a small number of hand-coded
+"token markers" -- simple incremental parers -- all based on the
+original JavaTokenMarker contributed by Tal Davidson.
+
+Around the time of jEdit 1.5 in 1999, Mike Dillon began developing a
+jEdit plugin named "XMode". This plugin implemented a generic,
+rule-driven token marker which read mode descriptions from XML files.
+XMode eventually matured to the point where it could replace the
+formerly hand-coded token markers.
+
+With the release of jEdit 2.4, I merged XMode into the core and
+eliminated the old hand-coded token markers.
+
+XMode suffers from a somewhat archaic design, and was written at a time
+when Java VMs with JIT compilers were relatively uncommon, object
+allocation was expensive, and heap space tight. As a result the parser
+design is less general than it could be.
+
+Furthermore, the parser has a few bugs which some mode files have come
+to depend on:
+
+- If a RULES tag does not define any keywords or rules, then its
+ NO_WORD_SEP attribute is ignored.
+
+ The Factor implementation duplicates this behavior.
+
+- if a RULES tag does not have a NO_WORD_SEP attribute, then
+ it inherits the value of the NO_WORD_SEP attribute from the previous
+ RULES tag.
+
+ The Factor implementation does not duplicate this behavior. If you
+ find a mode file which depends on this flaw, please fix it and submit
+ the changes to the jEdit project.
+
+If you wish to contribute a new or improved mode file, please contact
+the jEdit project. Updated mode files in jEdit will be periodically
+imported into the Factor source tree.
--- /dev/null
+Slava Pestov
--- /dev/null
+IN: temporary
+USING: xmode.catalog tools.test hashtables assocs
+kernel sequences io ;
+
+[ t ] [ modes hashtable? ] unit-test
+
+[ ] [
+ modes keys [
+ dup print flush load-mode drop reset-modes
+ ] each
+] unit-test
--- /dev/null
+USING: xmode.loader xmode.utilities xmode.rules namespaces
+strings splitting assocs sequences kernel io.files xml memoize
+words globs combinators ;
+IN: xmode.catalog
+
+TUPLE: mode file file-name-glob first-line-glob ;
+
+<TAGS: parse-mode-tag
+
+TAG: MODE
+ "NAME" over at >r
+ mode construct-empty {
+ { "FILE" f set-mode-file }
+ { "FILE_NAME_GLOB" f set-mode-file-name-glob }
+ { "FIRST_LINE_GLOB" f set-mode-first-line-glob }
+ } init-from-tag r>
+ rot set-at ;
+
+TAGS>
+
+: parse-modes-tag ( tag -- modes )
+ H{ } clone [
+ swap child-tags [ parse-mode-tag ] curry* each
+ ] keep ;
+
+: load-catalog ( -- modes )
+ "extra/xmode/modes/catalog" resource-path
+ <file-reader> read-xml parse-modes-tag ;
+
+: modes ( -- assoc )
+ \ modes get-global [
+ load-catalog dup \ modes set-global
+ ] unless* ;
+
+: reset-catalog ( -- )
+ f \ modes set-global ;
+
+MEMO: (load-mode) ( name -- rule-sets )
+ modes at mode-file
+ "extra/xmode/modes/" swap append
+ resource-path <file-reader> parse-mode ;
+
+SYMBOL: rule-sets
+
+: get-rule-set ( name -- rule-sets rules )
+ "::" split1 [ swap (load-mode) ] [ rule-sets get ] if*
+ tuck at ;
+
+: resolve-delegate ( rule -- )
+ dup rule-delegate dup string?
+ [ get-rule-set nip swap set-rule-delegate ] [ 2drop ] if ;
+
+: each-rule ( rule-set quot -- )
+ >r rule-set-rules values concat r> each ; inline
+
+: resolve-delegates ( ruleset -- )
+ [ resolve-delegate ] each-rule ;
+
+: ?update ( keyword-map/f keyword-map -- keyword-map )
+ over [ dupd update ] [ nip clone ] if ;
+
+: import-keywords ( parent child -- )
+ over >r [ rule-set-keywords ] 2apply ?update
+ r> set-rule-set-keywords ;
+
+: import-rules ( parent child -- )
+ swap [ add-rule ] curry each-rule ;
+
+: resolve-imports ( ruleset -- )
+ dup rule-set-imports [
+ get-rule-set dup [
+ swap rule-sets [
+ 2dup import-keywords
+ import-rules
+ ] with-variable
+ ] [
+ 3drop
+ ] if
+ ] curry* each ;
+
+: finalize-rule-set ( ruleset -- )
+ dup rule-set-finalized? {
+ { f [
+ 1 over set-rule-set-finalized?
+ dup resolve-imports
+ dup resolve-delegates
+ t swap set-rule-set-finalized?
+ ] }
+ { t [ drop ] }
+ { 1 [ "Mutually recursive rule sets" throw ] }
+ } case ;
+
+: finalize-mode ( rulesets -- )
+ rule-sets [
+ dup [ nip finalize-rule-set ] assoc-each
+ ] with-variable ;
+
+: load-mode ( name -- rule-sets )
+ (load-mode) dup finalize-mode ;
+
+: reset-modes ( -- )
+ \ load-mode "memoize" word-prop clear-assoc ;
+
+: ?glob-matches ( string glob/f -- ? )
+ dup [ glob-matches? ] [ 2drop f ] if ;
+
+: suitable-mode? ( file-name first-line mode -- ? )
+ tuck mode-first-line-glob ?glob-matches
+ [ 2drop t ] [ mode-file-name-glob ?glob-matches ] if ;
+
+: find-mode ( file-name first-line -- mode )
+ modes
+ [ nip >r 2dup r> suitable-mode? ] assoc-find
+ 2drop >r 2drop r> [ "text" ] unless* ;
--- /dev/null
+USING: xmode.tokens xmode.marker
+xmode.catalog kernel html html.elements io io.files
+sequences words ;
+IN: xmode.code2html
+
+: htmlize-tokens ( tokens -- )
+ [
+ dup token-str swap token-id [
+ <span word-name =class span> write </span>
+ ] [
+ write
+ ] if*
+ ] each ;
+
+: htmlize-line ( line-context line rules -- line-context' )
+ tokenize-line htmlize-tokens ;
+
+: htmlize-lines ( lines mode -- )
+ f swap load-mode [ htmlize-line nl ] curry reduce drop ;
+
+: default-stylesheet ( -- )
+ <style>
+ "extra/xmode/code2html/stylesheet.css"
+ resource-path <file-reader> contents write
+ </style> ;
+
+: htmlize-stream ( path stream -- )
+ lines swap
+ <html>
+ <head>
+ default-stylesheet
+ <title> dup write </title>
+ </head>
+ <body>
+ <pre>
+ over empty?
+ [ 2drop ]
+ [ over first find-mode htmlize-lines ] if
+ </pre>
+ </body>
+ </html> ;
+
+: htmlize-file ( path -- )
+ dup <file-reader> over ".html" append <file-writer>
+ [ htmlize-stream ] with-stream ;
--- /dev/null
+.NULL {
+color: #000000;
+}
+.COMMENT1 {
+color: #cc0000;
+}
+.COMMENT2 {
+color: #ff8400;
+}
+.COMMENT3 {
+color: #6600cc;
+}
+.COMMENT4 {
+color: #cc6600;
+}
+.DIGIT {
+color: #ff0000;
+}
+.FUNCTION {
+color: #9966ff;
+}
+.INVALID {
+background: #ffffcc;
+color: #ff0066;
+}
+.KEYWORD1 {
+color: #006699;
+font-weight: bold;
+}
+.KEYWORD2 {
+color: #009966;
+font-weight: bold;
+}
+.KEYWORD3 {
+color: #0099ff;
+font-weight: bold;
+}
+.KEYWORD4 {
+color: #66ccff;
+font-weight: bold;
+}
+.LABEL {
+color: #02b902;
+}
+.LITERAL1 {
+color: #ff00cc;
+}
+.LITERAL2 {
+color: #cc00cc;
+}
+.LITERAL3 {
+color: #9900cc;
+}
+.LITERAL4 {
+color: #6600cc;
+}
+.MARKUP {
+color: #0000ff;
+}
+.OPERATOR {
+color: #000000;
+font-weight: bold;
+}
--- /dev/null
+IN: temporary
+USING: xmode.keyword-map xmode.tokens
+tools.test namespaces assocs kernel strings ;
+
+f <keyword-map> dup "k" set
+
+{
+ { "int" KEYWORD1 }
+ { "void" KEYWORD2 }
+ { "size_t" KEYWORD3 }
+} update
+
+[ 3 ] [ "k" get assoc-size ] unit-test
+[ KEYWORD1 ] [ "int" "k" get at ] unit-test
+[ "_" ] [ "k" get keyword-map-no-word-sep* >string ] unit-test
+[ ] [ LITERAL1 "x-y" "k" get set-at ] unit-test
+[ "-_" ] [ "k" get keyword-map-no-word-sep* >string ] unit-test
+
+t <keyword-map> dup "k" set
+{
+ { "Foo" KEYWORD1 }
+ { "bbar" KEYWORD2 }
+ { "BAZ" KEYWORD3 }
+} update
+
+[ KEYWORD1 ] [ "fOo" "k" get at ] unit-test
+
+[ KEYWORD2 ] [ "BBAR" "k" get at ] unit-test
+
+[ KEYWORD3 ] [ "baz" "k" get at ] unit-test
--- /dev/null
+USING: kernel strings assocs sequences hashtables sorting ;
+IN: xmode.keyword-map
+
+! Based on org.gjt.sp.jedit.syntax.KeywordMap
+TUPLE: keyword-map no-word-sep ignore-case? ;
+
+: <keyword-map> ( ignore-case? -- map )
+ H{ } clone { set-keyword-map-ignore-case? set-delegate }
+ keyword-map construct ;
+
+: invalid-no-word-sep f swap set-keyword-map-no-word-sep ;
+
+: handle-case ( key keyword-map -- key assoc )
+ [ keyword-map-ignore-case? [ >upper ] when ] keep
+ delegate ;
+
+M: keyword-map at* handle-case at* ;
+
+M: keyword-map set-at
+ [ handle-case set-at ] keep invalid-no-word-sep ;
+
+M: keyword-map clear-assoc
+ [ delegate clear-assoc ] keep invalid-no-word-sep ;
+
+M: keyword-map >alist delegate >alist ;
+
+: (keyword-map-no-word-sep)
+ keys concat [ alpha? not ] subset prune natural-sort ;
+
+: keyword-map-no-word-sep* ( keyword-map -- str )
+ dup keyword-map-no-word-sep [ ] [
+ dup (keyword-map-no-word-sep)
+ dup rot set-keyword-map-no-word-sep
+ ] ?if ;
+
+INSTANCE: keyword-map assoc
--- /dev/null
+USING: xmode.tokens xmode.rules xmode.keyword-map xml.data
+xml.utilities xml assocs kernel combinators sequences
+math.parser namespaces parser xmode.utilities regexp io.files ;
+IN: xmode.loader
+
+! Based on org.gjt.sp.jedit.XModeHandler
+
+SYMBOL: ignore-case?
+
+! Attribute utilities
+: string>boolean ( string -- ? ) "TRUE" = ;
+
+: string>match-type ( string -- obj )
+ {
+ { "RULE" [ f ] }
+ { "CONTEXT" [ t ] }
+ [ string>token ]
+ } case ;
+
+: string>rule-set-name "MAIN" or ;
+
+! PROP, PROPS
+: parse-prop-tag ( tag -- key value )
+ "NAME" over at "VALUE" rot at ;
+
+: parse-props-tag ( tag -- assoc )
+ child-tags
+ [ parse-prop-tag ] H{ } map>assoc ;
+
+: position-attrs ( tag -- at-line-start? at-whitespace-end? at-word-start? )
+ ! XXX Wrong logic!
+ { "AT_LINE_START" "AT_WHITESPACE_END" "AT_WORD_START" }
+ swap [ at string>boolean ] curry map first3 ;
+
+: parse-literal-matcher ( tag -- matcher )
+ dup children>string
+ ignore-case? get <string-matcher>
+ swap position-attrs <matcher> ;
+
+: parse-regexp-matcher ( tag -- matcher )
+ dup children>string ignore-case? get <regexp>
+ swap position-attrs <matcher> ;
+
+! SPAN's children
+<TAGS: parse-begin/end-tag
+
+TAG: BEGIN
+ ! XXX
+ parse-literal-matcher swap set-rule-start ;
+
+TAG: END
+ ! XXX
+ parse-literal-matcher swap set-rule-end ;
+
+TAGS>
+
+! RULES and its children
+<TAGS: parse-rule-tag
+
+TAG: PROPS ( rule-set tag -- )
+ parse-props-tag swap set-rule-set-props ;
+
+TAG: IMPORT ( rule-set tag -- )
+ "DELEGATE" swap at swap import-rule-set ;
+
+TAG: TERMINATE ( rule-set tag -- )
+ "AT_CHAR" swap at string>number swap set-rule-set-terminate-char ;
+
+: (parse-rule-tag) ( rule-set tag specs class -- )
+ construct-rule swap init-from-tag swap add-rule ; inline
+
+: RULE:
+ scan scan-word
+ parse-definition { } make
+ swap [ (parse-rule-tag) ] 2curry (TAG:) ; parsing
+
+: shared-tag-attrs
+ { "TYPE" string>token set-rule-body-token } , ; inline
+
+: delegate-attr
+ { "DELEGATE" f set-rule-delegate } , ;
+
+: regexp-attr
+ { "HASH_CHAR" f set-rule-chars } , ;
+
+: match-type-attr
+ { "MATCH_TYPE" string>match-type set-rule-match-token } , ;
+
+: span-attrs
+ { "NO_LINE_BREAK" string>boolean set-rule-no-line-break? } ,
+ { "NO_WORD_BREAK" string>boolean set-rule-no-word-break? } ,
+ { "NO_ESCAPE" string>boolean set-rule-no-escape? } , ;
+
+: literal-start
+ [ parse-literal-matcher swap set-rule-start ] , ;
+
+: regexp-start
+ [ parse-regexp-matcher swap set-rule-start ] , ;
+
+: literal-end
+ [ parse-literal-matcher swap set-rule-end ] , ;
+
+RULE: SEQ seq-rule
+ shared-tag-attrs delegate-attr literal-start ;
+
+RULE: SEQ_REGEXP seq-rule
+ shared-tag-attrs delegate-attr regexp-attr regexp-start ;
+
+: parse-begin/end-tags
+ [
+ ! XXX: handle position attrs on span tag itself
+ child-tags [ parse-begin/end-tag ] curry* each
+ ] , ;
+
+: init-span-tag [ drop init-span ] , ;
+
+: init-eol-span-tag [ drop init-eol-span ] , ;
+
+RULE: SPAN span-rule
+ shared-tag-attrs delegate-attr match-type-attr span-attrs parse-begin/end-tags init-span-tag ;
+
+RULE: SPAN_REGEXP span-rule
+ shared-tag-attrs delegate-attr match-type-attr span-attrs regexp-attr parse-begin/end-tags init-span-tag ;
+
+RULE: EOL_SPAN eol-span-rule
+ shared-tag-attrs delegate-attr match-type-attr literal-start init-eol-span-tag ;
+
+RULE: EOL_SPAN_REGEXP eol-span-rule
+ shared-tag-attrs delegate-attr match-type-attr regexp-attr regexp-start init-eol-span-tag ;
+
+RULE: MARK_FOLLOWING mark-following-rule
+ shared-tag-attrs match-type-attr literal-start ;
+
+RULE: MARK_PREVIOUS mark-previous-rule
+ shared-tag-attrs match-type-attr literal-start ;
+
+: parse-keyword-tag ( tag keyword-map -- )
+ >r dup name-tag string>token swap children>string r> set-at ;
+
+TAG: KEYWORDS ( rule-set tag -- key value )
+ ignore-case? get <keyword-map>
+ swap child-tags [ over parse-keyword-tag ] each
+ swap set-rule-set-keywords ;
+
+TAGS>
+
+: ?<regexp> dup [ ignore-case? get <regexp> ] when ;
+
+: (parse-rules-tag) ( tag -- rule-set )
+ <rule-set>
+ {
+ { "SET" string>rule-set-name set-rule-set-name }
+ { "IGNORE_CASE" string>boolean set-rule-set-ignore-case? }
+ { "HIGHLIGHT_DIGITS" string>boolean set-rule-set-highlight-digits? }
+ { "DIGIT_RE" ?<regexp> set-rule-set-digit-re }
+ { "ESCAPE" f add-escape-rule }
+ { "DEFAULT" string>token set-rule-set-default }
+ { "NO_WORD_SEP" f set-rule-set-no-word-sep }
+ } init-from-tag ;
+
+: parse-rules-tag ( tag -- rule-set )
+ dup (parse-rules-tag) [
+ dup rule-set-ignore-case? ignore-case? [
+ swap child-tags [ parse-rule-tag ] curry* each
+ ] with-variable
+ ] keep ;
+
+: merge-rule-set-props ( props rule-set -- )
+ [ rule-set-props union ] keep set-rule-set-props ;
+
+! Top-level entry points
+: parse-mode-tag ( tag -- rule-sets )
+ dup "RULES" tags-named [
+ parse-rules-tag dup rule-set-name swap
+ ] H{ } map>assoc
+ swap "PROPS" tag-named [
+ parse-props-tag over values
+ [ merge-rule-set-props ] curry* each
+ ] when* ;
+
+: parse-mode ( stream -- rule-sets )
+ read-xml parse-mode-tag ;
--- /dev/null
+USING: kernel ;
+IN: xmode.marker.context
+
+! Based on org.gjt.sp.jedit.syntax.TokenMarker.LineContext
+TUPLE: line-context
+parent
+in-rule
+in-rule-set
+end
+;
+
+: <line-context> ( ruleset parent -- line-context )
+ { set-line-context-in-rule-set set-line-context-parent }
+ line-context construct ;
+
+M: line-context clone
+ (clone)
+ dup line-context-parent clone
+ over set-line-context-parent ;
--- /dev/null
+USING: xmode.tokens xmode.catalog
+xmode.marker tools.test kernel ;
+IN: temporary
+
+[
+ {
+ T{ token f "int" KEYWORD3 }
+ T{ token f " " f }
+ T{ token f "x" f }
+ }
+] [ f "int x" "c" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "\"" LITERAL1 }
+ T{ token f "hello\\\"" LITERAL1 }
+ T{ token f " " LITERAL1 }
+ T{ token f "world" LITERAL1 }
+ T{ token f "\"" LITERAL1 }
+ }
+] [ f "\"hello\\\" world\"" "c" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "\"" LITERAL1 }
+ T{ token f "hello\\\ world" LITERAL1 }
+ T{ token f "\"" LITERAL1 }
+ }
+] [ f "\"hello\\\ world\"" "c" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "int" KEYWORD3 }
+ T{ token f " " f }
+ T{ token f "x" f }
+ }
+] [ f "int x" "java" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "//" COMMENT2 }
+ T{ token f " " COMMENT2 }
+ T{ token f "hello" COMMENT2 }
+ T{ token f " " COMMENT2 }
+ T{ token f "world" COMMENT2 }
+ }
+] [ f "// hello world" "java" load-mode tokenize-line nip ] unit-test
+
+
+[
+ {
+ T{ token f "hello" f }
+ T{ token f " " f }
+ T{ token f "world" f }
+ T{ token f ":" f }
+ }
+] [ f "hello world:" "java" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "hello_world" LABEL }
+ T{ token f ":" OPERATOR }
+ }
+] [ f "hello_world:" "java" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "\t" f }
+ T{ token f "hello_world" LABEL }
+ T{ token f ":" OPERATOR }
+ }
+] [ f "\thello_world:" "java" load-mode tokenize-line nip ] unit-test
+
+[
+ {
+ T{ token f "<!" KEYWORD2 }
+ T{ token f "ELEMENT" KEYWORD2 }
+ T{ token f " " KEYWORD2 }
+ T{ token f "%" LITERAL2 }
+ T{ token f "hello" LITERAL2 }
+ T{ token f ";" LITERAL2 }
+ T{ token f " " KEYWORD2 }
+ T{ token f ">" KEYWORD2 }
+ }
+] [
+ f "<!ELEMENT %hello; >" "xml" load-mode tokenize-line nip
+] unit-test
+
+[
+ {
+ T{ token f "<!" KEYWORD2 }
+ T{ token f "ELEMENT" KEYWORD2 }
+ T{ token f " " KEYWORD2 }
+ T{ token f "%" LITERAL2 }
+ T{ token f "hello-world" LITERAL2 }
+ T{ token f ";" LITERAL2 }
+ T{ token f " " KEYWORD2 }
+ T{ token f ">" KEYWORD2 }
+ }
+] [
+ f "<!ELEMENT %hello-world; >" "xml" load-mode tokenize-line nip
+] unit-test
+
+[
+ {
+ T{ token f "$" KEYWORD2 }
+ T{ token f "FOO" KEYWORD2 }
+ }
+] [
+ f "$FOO" "shellscript" load-mode tokenize-line nip
+] unit-test
+
+[
+ {
+ T{ token f "AND" KEYWORD1 }
+ }
+] [
+ f "AND" "pascal" load-mode tokenize-line nip
+] unit-test
+
+[
+ {
+ T{ token f "Comment {" COMMENT1 }
+ T{ token f "XXX" COMMENT1 }
+ T{ token f "}" COMMENT1 }
+ }
+] [
+ f "Comment {XXX}" "rebol" load-mode tokenize-line nip
+] unit-test
+
+[
+
+] [
+ f "font:75%/1.6em \"Lucida Grande\", \"Lucida Sans Unicode\", verdana, geneva, sans-serif;" "css" load-mode tokenize-line 2drop
+] unit-test
--- /dev/null
+IN: xmode.marker
+USING: kernel namespaces xmode.rules xmode.tokens
+xmode.marker.state xmode.marker.context xmode.utilities
+xmode.catalog sequences math assocs combinators combinators.lib
+strings regexp splitting parser-combinators ;
+
+! Based on org.gjt.sp.jedit.syntax.TokenMarker
+
+: current-keyword ( -- string )
+ last-offset get position get line get subseq ;
+
+: keyword-number? ( keyword -- ? )
+ {
+ [ current-rule-set rule-set-highlight-digits? ]
+ [ dup [ digit? ] contains? ]
+ [
+ dup [ digit? ] all? [
+ current-rule-set rule-set-digit-re
+ dup [ dupd matches? ] [ drop f ] if
+ ] unless*
+ ]
+ } && nip ;
+
+: mark-number ( keyword -- id )
+ keyword-number? DIGIT and ;
+
+: mark-keyword ( keyword -- id )
+ current-rule-set rule-set-keywords at ;
+
+: add-remaining-token ( -- )
+ current-rule-set rule-set-default prev-token, ;
+
+: mark-token ( -- )
+ current-keyword
+ dup mark-number [ ] [ mark-keyword ] ?if
+ [ prev-token, ] when* ;
+
+: current-char ( -- char )
+ position get line get nth ;
+
+GENERIC: match-position ( rule -- n )
+
+M: mark-previous-rule match-position drop last-offset get ;
+
+M: rule match-position drop position get ;
+
+: can-match-here? ( matcher rule -- ? )
+ match-position {
+ [ over ]
+ [ over matcher-at-line-start? over zero? implies ]
+ [ over matcher-at-whitespace-end? over whitespace-end get = implies ]
+ [ over matcher-at-word-start? over last-offset get = implies ]
+ } && 2nip ;
+
+: rest-of-line ( -- str )
+ line get position get tail-slice ;
+
+GENERIC: text-matches? ( string text -- match-count/f )
+
+M: f text-matches?
+ 2drop f ;
+
+M: string-matcher text-matches?
+ [
+ dup string-matcher-string
+ swap string-matcher-ignore-case?
+ string-head?
+ ] keep string-matcher-string length and ;
+
+M: regexp text-matches?
+ >r >string r> match-head ;
+
+: rule-start-matches? ( rule -- match-count/f )
+ dup rule-start tuck swap can-match-here? [
+ rest-of-line swap matcher-text text-matches?
+ ] [
+ drop f
+ ] if ;
+
+: rule-end-matches? ( rule -- match-count/f )
+ dup mark-following-rule? [
+ dup rule-start swap can-match-here? 0 and
+ ] [
+ dup rule-end tuck swap can-match-here? [
+ rest-of-line
+ swap matcher-text context get line-context-end or
+ text-matches?
+ ] [
+ drop f
+ ] if
+ ] if ;
+
+DEFER: get-rules
+
+: get-always-rules ( vector/f ruleset -- vector/f )
+ f swap rule-set-rules at ?push-all ;
+
+: get-char-rules ( vector/f char ruleset -- vector/f )
+ >r ch>upper r> rule-set-rules at ?push-all ;
+
+: get-rules ( char ruleset -- seq )
+ f -rot [ get-char-rules ] keep get-always-rules ;
+
+GENERIC: handle-rule-start ( match-count rule -- )
+
+GENERIC: handle-rule-end ( match-count rule -- )
+
+: find-escape-rule ( -- rule )
+ context get dup
+ line-context-in-rule-set rule-set-escape-rule [ ] [
+ line-context-parent line-context-in-rule-set
+ dup [ rule-set-escape-rule ] when
+ ] ?if ;
+
+: check-escape-rule ( rule -- ? )
+ rule-no-escape? [ f ] [
+ find-escape-rule dup [
+ dup rule-start-matches? dup [
+ swap handle-rule-start
+ delegate-end-escaped? [ not ] change
+ t
+ ] [
+ 2drop f
+ ] if
+ ] when
+ ] if ;
+
+: check-every-rule ( -- ? )
+ current-char current-rule-set get-rules
+ [ rule-start-matches? ] map-find
+ dup [ handle-rule-start t ] [ 2drop f ] if ;
+
+: ?end-rule ( -- )
+ current-rule [
+ dup rule-end-matches?
+ dup [ swap handle-rule-end ] [ 2drop ] if
+ ] when* ;
+
+: rule-match-token* ( rule -- id )
+ dup rule-match-token {
+ { f [ dup rule-body-token ] }
+ { t [ current-rule-set rule-set-default ] }
+ [ ]
+ } case nip ;
+
+M: escape-rule handle-rule-start
+ drop
+ ?end-rule
+ process-escape? get [
+ escaped? [ not ] change
+ position [ + ] change
+ ] [ 2drop ] if ;
+
+M: seq-rule handle-rule-start
+ ?end-rule
+ mark-token
+ add-remaining-token
+ tuck rule-body-token next-token,
+ rule-delegate [ push-context ] when* ;
+
+UNION: abstract-span-rule span-rule eol-span-rule ;
+
+M: abstract-span-rule handle-rule-start
+ ?end-rule
+ mark-token
+ add-remaining-token
+ tuck rule-match-token* next-token,
+ ! ... end subst ...
+ dup context get set-line-context-in-rule
+ rule-delegate push-context ;
+
+M: span-rule handle-rule-end
+ 2drop ;
+
+M: mark-following-rule handle-rule-start
+ ?end-rule
+ mark-token add-remaining-token
+ tuck rule-match-token* next-token,
+ f context get set-line-context-end
+ context get set-line-context-in-rule ;
+
+M: mark-following-rule handle-rule-end
+ nip rule-match-token* prev-token,
+ f context get set-line-context-in-rule ;
+
+M: mark-previous-rule handle-rule-start
+ ?end-rule
+ mark-token
+ dup rule-body-token prev-token,
+ rule-match-token* next-token, ;
+
+: do-escaped
+ escaped? get [
+ escaped? off
+ ! ...
+ ] when ;
+
+: check-end-delegate ( -- ? )
+ context get line-context-parent [
+ line-context-in-rule [
+ dup rule-end-matches? dup [
+ [
+ swap handle-rule-end
+ ?end-rule
+ mark-token
+ add-remaining-token
+ ] keep context get line-context-parent line-context-in-rule rule-match-token* next-token,
+ pop-context
+ seen-whitespace-end? on t
+ ] [ drop check-escape-rule ] if
+ ] [ f ] if*
+ ] [ f ] if* ;
+
+: handle-no-word-break ( -- )
+ context get line-context-parent [
+ line-context-in-rule [
+ dup rule-no-word-break? [
+ rule-match-token* prev-token,
+ pop-context
+ ] [ drop ] if
+ ] when*
+ ] when* ;
+
+: check-rule ( -- )
+ ?end-rule
+ handle-no-word-break
+ mark-token
+ add-remaining-token ;
+
+: (check-word-break) ( -- )
+ check-rule
+
+ 1 current-rule-set rule-set-default next-token, ;
+
+: rule-set-empty? ( ruleset -- ? )
+ dup rule-set-rules assoc-empty?
+ swap rule-set-keywords assoc-empty? and ;
+
+: check-word-break ( -- ? )
+ current-char dup blank? [
+ drop
+
+ seen-whitespace-end? get [
+ position get 1+ whitespace-end set
+ ] unless
+
+ (check-word-break)
+
+ ] [
+ ! Micro-optimization with incorrect semantics; we keep
+ ! it here because jEdit mode files depend on it now...
+ current-rule-set rule-set-empty? [
+ drop
+ ] [
+ dup alpha? [
+ drop
+ ] [
+ current-rule-set rule-set-no-word-sep* member? [
+ (check-word-break)
+ ] unless
+ ] if
+ ] if
+
+ seen-whitespace-end? on
+ ] if
+ escaped? off
+ delegate-end-escaped? off t ;
+
+
+: mark-token-loop ( -- )
+ position get line get length < [
+ {
+ [ check-end-delegate ]
+ [ check-every-rule ]
+ [ check-word-break ]
+ } || drop
+
+ position inc
+ mark-token-loop
+ ] when ;
+
+: mark-remaining ( -- )
+ line get length position set
+ check-rule ;
+
+: unwind-no-line-break ( -- )
+ context get line-context-parent [
+ line-context-in-rule [
+ rule-no-line-break? [
+ pop-context
+ unwind-no-line-break
+ ] when
+ ] when*
+ ] when* ;
+
+: tokenize-line ( line-context line rules -- line-context' seq )
+ [
+ "MAIN" swap at -rot
+ init-token-marker
+ mark-token-loop
+ mark-remaining
+ unwind-no-line-break
+ context get
+ ] { } make ;
--- /dev/null
+USING: xmode.marker.context xmode.rules
+xmode.tokens namespaces kernel sequences assocs math ;
+IN: xmode.marker.state
+
+! Based on org.gjt.sp.jedit.syntax.TokenMarker
+
+SYMBOL: line
+SYMBOL: last-offset
+SYMBOL: position
+SYMBOL: context
+
+SYMBOL: whitespace-end
+SYMBOL: seen-whitespace-end?
+
+SYMBOL: escaped?
+SYMBOL: process-escape?
+SYMBOL: delegate-end-escaped?
+
+: current-rule ( -- rule )
+ context get line-context-in-rule ;
+
+: current-rule-set ( -- rule )
+ context get line-context-in-rule-set ;
+
+: current-keywords ( -- keyword-map )
+ current-rule-set rule-set-keywords ;
+
+: token, ( from to id -- )
+ pick pick = [ 3drop ] [ >r line get subseq r> <token> , ] if ;
+
+: prev-token, ( id -- )
+ >r last-offset get position get r> token,
+ position get last-offset set ;
+
+: next-token, ( len id -- )
+ >r position get 2dup + r> token,
+ position get + dup 1- position set last-offset set ;
+
+: push-context ( rules -- )
+ context [ <line-context> ] change ;
+
+: pop-context ( -- )
+ context get line-context-parent
+ dup context set
+ f swap set-line-context-in-rule ;
+
+: init-token-marker ( main prev-context line -- )
+ line set
+ [ ] [ f <line-context> ] ?if context set
+ 0 position set
+ 0 last-offset set
+ 0 whitespace-end set
+ process-escape? on ;
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ ActionScript mode by Ben Glazer <ben@enspire.com>\r
+ Adapted from JavaScript mode by Andre Kaplan\r
+ Updated for Flash MX 2004 by Nahuel Foronda <www.asfusion.com>\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <!-- the ; hack is there so that stuff like if(bob) fred();\r
+ does not indent the next line -->\r
+ <PROPERTY NAME="indentPrevLine" VALUE="\s*(if|while)\s*(|else|case|default:)[^;]*|for\s*\(.*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- whitespace: (space and tab) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- ActionScript's reserved words (see AS:TDG p.332) -->\r
+ <KEYWORD1>add</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>and</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>eq</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>ge</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>gt</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>ifFrameLoaded</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>le</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>lt</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>ne</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>onClipEvent</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <LITERAL2>this</LITERAL2>\r
+ <KEYWORD1>tellTarget</KEYWORD1> <!-- deprecated -->\r
+ <KEYWORD1>typeof</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD3>void</KEYWORD3>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+\r
+ <!-- Built-in objects (good idea not to use these names!)-->\r
+ <KEYWORD3>Array</KEYWORD3>\r
+ <KEYWORD3>Boolean</KEYWORD3>\r
+ <KEYWORD3>Color</KEYWORD3>\r
+ <KEYWORD3>Date</KEYWORD3>\r
+ <KEYWORD3>Function</KEYWORD3>\r
+ <KEYWORD3>Key</KEYWORD3>\r
+ <KEYWORD3>MovieClip</KEYWORD3>\r
+ <KEYWORD3>Math</KEYWORD3>\r
+ <KEYWORD3>Mouse</KEYWORD3>\r
+ <KEYWORD3>Number</KEYWORD3>\r
+ <KEYWORD3>Object</KEYWORD3>\r
+ <KEYWORD3>Selection</KEYWORD3>\r
+ <KEYWORD3>Sound</KEYWORD3>\r
+ <KEYWORD3>String</KEYWORD3>\r
+ <KEYWORD3>XML</KEYWORD3>\r
+ <KEYWORD3>XMLNode</KEYWORD3>\r
+ <KEYWORD3>XMLSocket</KEYWORD3>\r
+\r
+ <!-- Literals -->\r
+ <LITERAL2>NaN</LITERAL2>\r
+ <LITERAL2>Infinity</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>undefined</LITERAL2>\r
+\r
+ <!-- Global functions -->\r
+ <LITERAL2>Boolean</LITERAL2>\r
+ <LITERAL2>call</LITERAL2>\r
+ <LITERAL2>Date</LITERAL2>\r
+ <LITERAL2>escape</LITERAL2>\r
+ <LITERAL2>eval</LITERAL2>\r
+ <LITERAL2>fscommand</LITERAL2>\r
+ <LITERAL2>getProperty</LITERAL2>\r
+ <LITERAL2>getTimer</LITERAL2>\r
+ <LITERAL2>getURL</LITERAL2>\r
+ <LITERAL2>getVersion</LITERAL2>\r
+ <LITERAL2>gotoAndPlay</LITERAL2>\r
+ <LITERAL2>gotoAndStop</LITERAL2>\r
+ <LITERAL2>#include</LITERAL2>\r
+ <LITERAL2>int</LITERAL2> <!-- deprecated -->\r
+ <LITERAL2>isFinite</LITERAL2>\r
+ <LITERAL2>isNaN</LITERAL2>\r
+ <LITERAL2>loadMovie</LITERAL2>\r
+ <LITERAL2>loadMovieNum</LITERAL2>\r
+ <LITERAL2>loadVariables</LITERAL2>\r
+ <LITERAL2>loadVariablesNum</LITERAL2>\r
+ <LITERAL2>maxscroll</LITERAL2>\r
+ <LITERAL2>newline</LITERAL2>\r
+ <LITERAL2>nextFrame</LITERAL2>\r
+ <LITERAL2>nextScene</LITERAL2>\r
+ <LITERAL2>Number</LITERAL2>\r
+ <LITERAL2>parseFloat</LITERAL2>\r
+ <LITERAL2>parseInt</LITERAL2>\r
+ <LITERAL2>play</LITERAL2>\r
+ <LITERAL2>prevFrame</LITERAL2>\r
+ <LITERAL2>prevScene</LITERAL2>\r
+ <LITERAL2>print</LITERAL2>\r
+ <LITERAL2>printAsBitmap</LITERAL2>\r
+ <LITERAL2>printAsBitmapNum</LITERAL2>\r
+ <LITERAL2>printNum</LITERAL2>\r
+ <LITERAL2>random</LITERAL2> <!-- deprecated -->\r
+ <LITERAL2>removeMovieClip</LITERAL2>\r
+ <LITERAL2>scroll</LITERAL2>\r
+ <LITERAL2>setProperty</LITERAL2>\r
+ <LITERAL2>startDrag</LITERAL2>\r
+ <LITERAL2>stop</LITERAL2>\r
+ <LITERAL2>stopAllSounds</LITERAL2>\r
+ <LITERAL2>stopDrag</LITERAL2>\r
+ <LITERAL2>String</LITERAL2>\r
+ <LITERAL2>targetPath</LITERAL2>\r
+ <LITERAL2>tellTarget</LITERAL2> <!-- deprecated -->\r
+ <LITERAL2>toggleHighQuality</LITERAL2> <!-- deprecated -->\r
+ <LITERAL2>trace</LITERAL2>\r
+ <LITERAL2>unescape</LITERAL2>\r
+ <LITERAL2>unloadMovie</LITERAL2>\r
+ <LITERAL2>unloadMovieNum</LITERAL2>\r
+ <LITERAL2>updateAfterEvent</LITERAL2>\r
+\r
+ <!-- Start Update -->\r
+ <LITERAL2>prototype</LITERAL2>\r
+ <LITERAL2>clearInterval</LITERAL2>\r
+ <LITERAL2>getVersion</LITERAL2>\r
+ <LITERAL2>length</LITERAL2>\r
+ <LITERAL2>__proto__</LITERAL2>\r
+ <LITERAL2>__constructor__</LITERAL2>\r
+ <LITERAL2>ASSetPropFlags</LITERAL2>\r
+ <LITERAL2>setInterval</LITERAL2>\r
+ <LITERAL2>setI</LITERAL2>\r
+ <KEYWORD3>MMExecute</KEYWORD3>\r
+\r
+ <!-- MovieCLip methods-->\r
+ <LITERAL2>attachMovie</LITERAL2>\r
+ <LITERAL2>createEmptyMovieClip</LITERAL2>\r
+ <LITERAL2>createTextField</LITERAL2>\r
+ <LITERAL2>duplicateMovieClip</LITERAL2>\r
+ <LITERAL2>getBounds</LITERAL2>\r
+ <LITERAL2>getBytesLoaded</LITERAL2>\r
+ <LITERAL2>getBytesTotal</LITERAL2>\r
+ <LITERAL2>getDepth</LITERAL2>\r
+ <LITERAL2>globalToLocal</LITERAL2>\r
+ <LITERAL2>hitTest</LITERAL2>\r
+ <LITERAL2>localToGlobal</LITERAL2>\r
+ <LITERAL2>setMask</LITERAL2>\r
+ <LITERAL2>swapDepths</LITERAL2>\r
+ <LITERAL2>attachAudio</LITERAL2>\r
+ <LITERAL2>getInstanceAtDepth</LITERAL2>\r
+ <LITERAL2>getNextHighestDepth</LITERAL2>\r
+ <LITERAL2>getSWFVersion</LITERAL2>\r
+ <LITERAL2>getTextSnapshot</LITERAL2>\r
+ <LITERAL2>getSWFVersion</LITERAL2>\r
+ <LITERAL2>getSWFVersion</LITERAL2>\r
+\r
+ <!-- MovieCLip drawing methods -->\r
+ <LITERAL2>beginFill</LITERAL2>\r
+ <LITERAL2>beginGradientFill</LITERAL2>\r
+ <LITERAL2>clear</LITERAL2>\r
+ <LITERAL2>curveTo</LITERAL2>\r
+ <LITERAL2>endFill</LITERAL2>\r
+ <LITERAL2>lineStyle</LITERAL2>\r
+ <LITERAL2>lineTo</LITERAL2>\r
+ <LITERAL2>moveTo</LITERAL2>\r
+\r
+ <!-- MovieCLip properties -->\r
+ <LITERAL2>enabled</LITERAL2>\r
+ <LITERAL2>focusEnabled</LITERAL2>\r
+ <LITERAL2>hitArea</LITERAL2>\r
+ <LITERAL2>tabChildren</LITERAL2>\r
+ <LITERAL2>tabEnabled</LITERAL2>\r
+ <LITERAL2>tabIndex</LITERAL2>\r
+ <LITERAL2>trackAsMenu</LITERAL2>\r
+ <LITERAL2>menu</LITERAL2>\r
+ <LITERAL2>useHandCursor</LITERAL2>\r
+\r
+ <!-- MovieCLip Events -->\r
+ <LITERAL2>onData</LITERAL2>\r
+ <LITERAL2>onDragOut</LITERAL2>\r
+ <LITERAL2>onDragOver</LITERAL2>\r
+ <LITERAL2>onEnterFrame</LITERAL2>\r
+ <LITERAL2>onKeyDown</LITERAL2>\r
+ <LITERAL2>onKeyUp</LITERAL2>\r
+ <LITERAL2>onKillFocus</LITERAL2>\r
+ <LITERAL2>onLoad</LITERAL2>\r
+ <LITERAL2>onMouseDown</LITERAL2>\r
+ <LITERAL2>onMouseMove</LITERAL2>\r
+ <LITERAL2>onMouseUp</LITERAL2>\r
+ <LITERAL2>onPress</LITERAL2>\r
+ <LITERAL2>onRelease</LITERAL2>\r
+ <LITERAL2>onReleaseOutside</LITERAL2>\r
+ <LITERAL2>onRollOut</LITERAL2>\r
+ <LITERAL2>onRollOver</LITERAL2>\r
+ <LITERAL2>onSetFocus</LITERAL2>\r
+ <LITERAL2>onUnload</LITERAL2>\r
+\r
+ <!-- MovieClipLoader class -->\r
+ <LITERAL2>MovieClipLoader</LITERAL2>\r
+ <LITERAL2>getProgress</LITERAL2>\r
+ <LITERAL2>loadClip</LITERAL2>\r
+ <LITERAL2>onLoadComplete</LITERAL2>\r
+ <LITERAL2>onLoadError</LITERAL2>\r
+ <LITERAL2>onLoadInit</LITERAL2>\r
+ <LITERAL2>onLoadProgress</LITERAL2>\r
+ <LITERAL2>onLoadStart</LITERAL2>\r
+ <LITERAL2>unloadClip</LITERAL2>\r
+\r
+ <!-- PrintJob class -->\r
+ <LITERAL2>PrintJob</LITERAL2>\r
+ <LITERAL2>addPage</LITERAL2>\r
+\r
+ <!-- Camera class -->\r
+ <LITERAL2>Camera</LITERAL2>\r
+ <LITERAL2>activityLevel</LITERAL2>\r
+ <LITERAL2>bandwidth</LITERAL2>\r
+ <LITERAL2>currentFps</LITERAL2>\r
+ <LITERAL2>fps</LITERAL2>\r
+ <LITERAL2>index</LITERAL2>\r
+ <LITERAL2>motionLevel</LITERAL2>\r
+ <LITERAL2>motionTimeOut</LITERAL2>\r
+ <LITERAL2>muted</LITERAL2>\r
+ <LITERAL2>name</LITERAL2>\r
+ <LITERAL2>names</LITERAL2>\r
+ <LITERAL2>onActivity</LITERAL2>\r
+ <LITERAL2>onStatus</LITERAL2>\r
+ <LITERAL2>quality</LITERAL2>\r
+ <LITERAL2>setMode</LITERAL2>\r
+ <LITERAL2>setMotionLevel</LITERAL2>\r
+ <LITERAL2>setQuality</LITERAL2>\r
+\r
+ <!-- Microphone class -->\r
+ <LITERAL2>Microphone</LITERAL2>\r
+ <LITERAL2>gain</LITERAL2>\r
+ <LITERAL2>rate</LITERAL2>\r
+ <LITERAL2>setGain</LITERAL2>\r
+ <LITERAL2>setRate</LITERAL2>\r
+ <LITERAL2>setSilenceLevel</LITERAL2>\r
+ <LITERAL2>setUseEchoSuppression</LITERAL2>\r
+ <LITERAL2>silenceLevel</LITERAL2>\r
+ <LITERAL2>silenceTimeout</LITERAL2>\r
+ <LITERAL2>useEchoSuppression</LITERAL2>\r
+\r
+ <!-- ContextMenu Class -->\r
+ <LITERAL2>ContextMenu</LITERAL2>\r
+ <LITERAL2>builtInItems</LITERAL2>\r
+ <LITERAL2>copy</LITERAL2>\r
+ <LITERAL2>customItems</LITERAL2>\r
+ <LITERAL2>hideBuiltInItems</LITERAL2>\r
+ <LITERAL2>onSelect</LITERAL2>\r
+ <LITERAL2>caption</LITERAL2>\r
+ <LITERAL2>ContextMenuItem</LITERAL2>\r
+ <LITERAL2>separatorBefore</LITERAL2>\r
+ <LITERAL2>visible</LITERAL2>\r
+\r
+ <!-- Error class -->\r
+ <LITERAL2>Error</LITERAL2>\r
+ <LITERAL2>visible</LITERAL2>\r
+ <LITERAL2>message</LITERAL2>\r
+\r
+ <!-- operators grenn-->\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>#endinitclip</KEYWORD1>\r
+ <KEYWORD1>#initclip</KEYWORD1>\r
+\r
+ <!-- properties -->\r
+ <LITERAL2>_alpha</LITERAL2>\r
+ <LITERAL2>_currentframe</LITERAL2>\r
+ <LITERAL2>_droptarget</LITERAL2>\r
+ <LITERAL2>_focusrect</LITERAL2>\r
+ <LITERAL2>_framesloaded</LITERAL2>\r
+ <LITERAL2>_height</LITERAL2>\r
+ <LITERAL2>_name</LITERAL2>\r
+ <LITERAL2>_quality</LITERAL2>\r
+ <LITERAL2>_rotation</LITERAL2>\r
+ <LITERAL2>_soundbuftime</LITERAL2>\r
+ <LITERAL2>_target</LITERAL2>\r
+ <LITERAL2>_totalframes</LITERAL2>\r
+ <LITERAL2>_url</LITERAL2>\r
+ <LITERAL2>_visible</LITERAL2>\r
+ <LITERAL2>_width</LITERAL2>\r
+ <LITERAL2>_x</LITERAL2>\r
+ <LITERAL2>_xmouse</LITERAL2>\r
+ <LITERAL2>_xscale</LITERAL2>\r
+ <LITERAL2>_y</LITERAL2>\r
+ <LITERAL2>_ymouse</LITERAL2>\r
+ <LITERAL2>_yscale</LITERAL2>\r
+ <LITERAL2>_parent</LITERAL2>\r
+ <LITERAL2>_root</LITERAL2>\r
+ <LITERAL2>_level</LITERAL2>\r
+ <LITERAL2>_lockroot</LITERAL2>\r
+ <LITERAL2>_accProps</LITERAL2>\r
+\r
+\r
+ <!-- Array -->\r
+ <LITERAL2>sortOn</LITERAL2>\r
+ <LITERAL2>toString</LITERAL2>\r
+ <LITERAL2>splice</LITERAL2>\r
+ <LITERAL2>sort</LITERAL2>\r
+ <LITERAL2>slice</LITERAL2>\r
+ <LITERAL2>shift</LITERAL2>\r
+ <LITERAL2>reverse</LITERAL2>\r
+ <LITERAL2>push</LITERAL2>\r
+ <LITERAL2>join</LITERAL2>\r
+ <LITERAL2>pop</LITERAL2>\r
+ <LITERAL2>concat</LITERAL2>\r
+ <LITERAL2>unshift</LITERAL2>\r
+\r
+ <!-- Arguments -->\r
+ <LITERAL2>arguments</LITERAL2>\r
+ <LITERAL2>callee</LITERAL2>\r
+ <LITERAL2>caller</LITERAL2>\r
+ <LITERAL2>valueOf</LITERAL2>\r
+\r
+ <!-- Date Class -->\r
+ <LITERAL2>getDate</LITERAL2>\r
+ <LITERAL2>getDay</LITERAL2>\r
+ <LITERAL2>getFullYear</LITERAL2>\r
+ <LITERAL2>getHours</LITERAL2>\r
+ <LITERAL2>getMilliseconds</LITERAL2>\r
+ <LITERAL2>getMinutes</LITERAL2>\r
+ <LITERAL2>getMonth</LITERAL2>\r
+ <LITERAL2>getSeconds</LITERAL2>\r
+ <LITERAL2>getTime</LITERAL2>\r
+ <LITERAL2>getTimezoneOffset</LITERAL2>\r
+ <LITERAL2>getUTCDate</LITERAL2>\r
+ <LITERAL2>getUTCDay</LITERAL2>\r
+ <LITERAL2>getUTCFullYear</LITERAL2>\r
+ <LITERAL2>getUTCHours</LITERAL2>\r
+ <LITERAL2>getUTCMilliseconds</LITERAL2>\r
+ <LITERAL2>getUTCMinutes</LITERAL2>\r
+ <LITERAL2>getUTCMonth</LITERAL2>\r
+ <LITERAL2>getUTCSeconds</LITERAL2>\r
+ <LITERAL2>getYear</LITERAL2>\r
+ <LITERAL2>setDate</LITERAL2>\r
+ <LITERAL2>setFullYear</LITERAL2>\r
+ <LITERAL2>setHours</LITERAL2>\r
+ <LITERAL2>setMilliseconds</LITERAL2>\r
+ <LITERAL2>setMinutes</LITERAL2>\r
+ <LITERAL2>setMonth</LITERAL2>\r
+ <LITERAL2>setSeconds</LITERAL2>\r
+ <LITERAL2>setTime</LITERAL2>\r
+ <LITERAL2>setUTCDate</LITERAL2>\r
+ <LITERAL2>setUTCFullYear</LITERAL2>\r
+ <LITERAL2>setUTCHours</LITERAL2>\r
+ <LITERAL2>setUTCMilliseconds</LITERAL2>\r
+ <LITERAL2>setUTCMinutes</LITERAL2>\r
+ <LITERAL2>setUTCMonth</LITERAL2>\r
+ <LITERAL2>setUTCSeconds</LITERAL2>\r
+ <LITERAL2>setYear</LITERAL2>\r
+ <LITERAL2>UTC</LITERAL2>\r
+\r
+ <!-- Function -->\r
+ <LITERAL2>_global</LITERAL2>\r
+ <LITERAL2>apply</LITERAL2>\r
+\r
+ <!-- Math Class -->\r
+ <LITERAL2>abs</LITERAL2>\r
+ <LITERAL2>acos</LITERAL2>\r
+ <LITERAL2>asin</LITERAL2>\r
+ <LITERAL2>atan</LITERAL2>\r
+ <LITERAL2>atan2</LITERAL2>\r
+ <LITERAL2>ceil</LITERAL2>\r
+ <LITERAL2>cos</LITERAL2>\r
+ <LITERAL2>exp</LITERAL2>\r
+ <LITERAL2>floor</LITERAL2>\r
+ <LITERAL2>log</LITERAL2>\r
+ <LITERAL2>max</LITERAL2>\r
+ <LITERAL2>min</LITERAL2>\r
+ <LITERAL2>pow</LITERAL2>\r
+ <LITERAL2>round</LITERAL2>\r
+ <LITERAL2>sin</LITERAL2>\r
+ <LITERAL2>sqrt</LITERAL2>\r
+ <LITERAL2>tan</LITERAL2>\r
+\r
+ <LITERAL2>E</LITERAL2>\r
+ <LITERAL2>LN2</LITERAL2>\r
+ <LITERAL2>LN10</LITERAL2>\r
+ <LITERAL2>LOG2E</LITERAL2>\r
+ <LITERAL2>LOG10E</LITERAL2>\r
+ <LITERAL2>PI</LITERAL2>\r
+ <LITERAL2>SQRT1_2</LITERAL2>\r
+ <LITERAL2>SQRT2</LITERAL2>\r
+\r
+ <!-- Number -->\r
+ <LITERAL2>MAX_VALUE</LITERAL2>\r
+ <LITERAL2>MIN_VALUE</LITERAL2>\r
+ <LITERAL2>NEGATIVE_INFINITY</LITERAL2>\r
+ <LITERAL2>POSITIVE_INFINITY</LITERAL2>\r
+\r
+ <!-- Object -->\r
+ <LITERAL2>addProperty</LITERAL2>\r
+ <LITERAL2>registerClass</LITERAL2>\r
+ <LITERAL2>unwatch</LITERAL2>\r
+ <LITERAL2>watch</LITERAL2>\r
+\r
+ <!-- String -->\r
+ <LITERAL2>charAt</LITERAL2>\r
+ <LITERAL2>charCodeAt</LITERAL2>\r
+ <LITERAL2>fromCharCode</LITERAL2>\r
+ <LITERAL2>lastIndexOf</LITERAL2>\r
+ <LITERAL2>indexOf</LITERAL2>\r
+ <LITERAL2>split</LITERAL2>\r
+ <LITERAL2>substr</LITERAL2>\r
+ <LITERAL2>substring</LITERAL2>\r
+ <LITERAL2>toLowerCase</LITERAL2>\r
+ <LITERAL2>toUpperCase</LITERAL2>\r
+\r
+ <!-- Accessibility -->\r
+ <LITERAL2>Accessibility</LITERAL2>\r
+ <LITERAL2>isActive</LITERAL2>\r
+ <LITERAL2>updateProperties</LITERAL2>\r
+\r
+\r
+ <!-- System capabilities Class-->\r
+ <LITERAL2>System</LITERAL2>\r
+ <LITERAL2>capabilities</LITERAL2>\r
+ <LITERAL2>exactSettings</LITERAL2>\r
+ <LITERAL2>setClipboard</LITERAL2>\r
+ <LITERAL2>showSettings</LITERAL2>\r
+ <LITERAL2>useCodepage</LITERAL2>\r
+ <LITERAL2>avHardwareDisable</LITERAL2>\r
+ <LITERAL2>hasAccessibility</LITERAL2>\r
+ <LITERAL2>hasAudio</LITERAL2>\r
+ <LITERAL2>hasAudioEncoder</LITERAL2>\r
+ <LITERAL2>hasMP3</LITERAL2>\r
+ <LITERAL2>hasVideoEncoder</LITERAL2>\r
+ <LITERAL2>pixelAspectRatio</LITERAL2>\r
+ <LITERAL2>screenColor</LITERAL2>\r
+ <LITERAL2>screenDPI</LITERAL2>\r
+ <LITERAL2>screenResolutionX</LITERAL2>\r
+ <LITERAL2>screenResolutionY</LITERAL2>\r
+ <LITERAL2>hasEmbeddedVideo</LITERAL2>\r
+ <LITERAL2>hasPrinting</LITERAL2>\r
+ <LITERAL2>hasScreenBroadcast</LITERAL2>\r
+ <LITERAL2>hasScreenPlayback</LITERAL2>\r
+ <LITERAL2>hasStreamingAudio</LITERAL2>\r
+ <LITERAL2>hasStreamingVideo</LITERAL2>\r
+ <LITERAL2>isDebugger</LITERAL2>\r
+ <LITERAL2>language</LITERAL2>\r
+ <LITERAL2>manufacturer</LITERAL2>\r
+ <LITERAL2>os</LITERAL2>\r
+ <LITERAL2>playerType</LITERAL2>\r
+ <LITERAL2>serverString</LITERAL2>\r
+ <LITERAL2>localFileReadDisable</LITERAL2>\r
+ <LITERAL2>version</LITERAL2>\r
+ <!-- System security Class -->\r
+ <LITERAL2>security</LITERAL2>\r
+\r
+ <!-- Color Class -->\r
+ <LITERAL2>getRGB</LITERAL2>\r
+ <LITERAL2>getTransform</LITERAL2>\r
+ <LITERAL2>setRGB</LITERAL2>\r
+ <LITERAL2>setTransform</LITERAL2>\r
+\r
+ <!-- Key Class -->\r
+ <LITERAL2>addListener</LITERAL2>\r
+ <LITERAL2>getAscii</LITERAL2>\r
+ <LITERAL2>isDown</LITERAL2>\r
+ <LITERAL2>getCode</LITERAL2>\r
+ <LITERAL2>isToggled</LITERAL2>\r
+ <LITERAL2>removeListener</LITERAL2>\r
+ <LITERAL2>BACKSPACE</LITERAL2>\r
+ <LITERAL2>CAPSLOCK</LITERAL2>\r
+ <LITERAL2>CONTROL</LITERAL2>\r
+ <LITERAL2>DELETEKEY</LITERAL2>\r
+ <LITERAL2>DOWN</LITERAL2>\r
+ <LITERAL2>END</LITERAL2>\r
+ <LITERAL2>ENTER</LITERAL2>\r
+ <LITERAL2>ESCAPE</LITERAL2>\r
+ <LITERAL2>HOME</LITERAL2>\r
+ <LITERAL2>INSERT</LITERAL2>\r
+ <LITERAL2>LEFT</LITERAL2>\r
+ <LITERAL2>PGDN</LITERAL2>\r
+ <LITERAL2>PGUP</LITERAL2>\r
+ <LITERAL2>SHIFT</LITERAL2>\r
+ <LITERAL2>RIGHT</LITERAL2>\r
+ <LITERAL2>SPACE</LITERAL2>\r
+ <LITERAL2>TAB</LITERAL2>\r
+ <LITERAL2>UP</LITERAL2>\r
+\r
+ <!-- Mouse -->\r
+ <LITERAL2>hide</LITERAL2>\r
+ <LITERAL2>show</LITERAL2>\r
+ <LITERAL2>onMouseWheel</LITERAL2>\r
+\r
+ <!-- Selection Class-->\r
+ <LITERAL2>getBeginIndex</LITERAL2>\r
+ <LITERAL2>getCaretIndex</LITERAL2>\r
+ <LITERAL2>getEndIndex</LITERAL2>\r
+ <LITERAL2>getFocus</LITERAL2>\r
+ <LITERAL2>setFocus</LITERAL2>\r
+ <LITERAL2>setSelection</LITERAL2>\r
+\r
+ <!-- SharedObject Class-->\r
+ <LITERAL2>SharedObject</LITERAL2>\r
+ <LITERAL2>data</LITERAL2>\r
+ <LITERAL2>flush</LITERAL2>\r
+ <LITERAL2>getLocal</LITERAL2>\r
+ <LITERAL2>getSize</LITERAL2>\r
+\r
+ <!-- Sound Class -->\r
+ <LITERAL2>attachSound</LITERAL2>\r
+ <LITERAL2>getVolume</LITERAL2>\r
+ <LITERAL2>loadSound</LITERAL2>\r
+ <LITERAL2>setPan</LITERAL2>\r
+ <LITERAL2>getPan</LITERAL2>\r
+ <LITERAL2>setVolume</LITERAL2>\r
+ <LITERAL2>start</LITERAL2>\r
+ <LITERAL2>duration</LITERAL2>\r
+ <LITERAL2>position</LITERAL2>\r
+ <LITERAL2>onSoundComplete</LITERAL2>\r
+ <LITERAL2>id3</LITERAL2>\r
+ <LITERAL2>onID3</LITERAL2>\r
+\r
+ <!-- Video Class -->\r
+ <LITERAL2>Video</LITERAL2>\r
+ <LITERAL2>deblocking</LITERAL2>\r
+ <LITERAL2>smoothing</LITERAL2>\r
+\r
+ <!-- Stage Class -->\r
+ <LITERAL2>Stage</LITERAL2>\r
+ <LITERAL2>align</LITERAL2>\r
+ <LITERAL2>height</LITERAL2>\r
+ <LITERAL2>scaleMode</LITERAL2>\r
+ <LITERAL2>showMenu</LITERAL2>\r
+ <LITERAL2>width</LITERAL2>\r
+ <LITERAL2>onResize</LITERAL2>\r
+\r
+ <!-- TextField Class -->\r
+ <LITERAL2>getFontList</LITERAL2>\r
+ <LITERAL2>getNewTextFormat</LITERAL2>\r
+ <LITERAL2>getTextFormat</LITERAL2>\r
+ <LITERAL2>removeTextField</LITERAL2>\r
+ <LITERAL2>replaceSel</LITERAL2>\r
+ <LITERAL2>setNewTextFormat</LITERAL2>\r
+ <LITERAL2>setTextFormat</LITERAL2>\r
+ <LITERAL2>autoSize</LITERAL2>\r
+ <LITERAL2>background</LITERAL2>\r
+ <LITERAL2>backgroundColor</LITERAL2>\r
+ <LITERAL2>border</LITERAL2>\r
+ <LITERAL2>borderColor</LITERAL2>\r
+ <LITERAL2>bottomScroll</LITERAL2>\r
+ <LITERAL2>embedFonts</LITERAL2>\r
+ <LITERAL2>hscroll</LITERAL2>\r
+ <LITERAL2>html</LITERAL2>\r
+ <LITERAL2>htmlText</LITERAL2>\r
+ <LITERAL2>maxChars</LITERAL2>\r
+ <LITERAL2>maxhscroll</LITERAL2>\r
+ <LITERAL2>multiline</LITERAL2>\r
+ <LITERAL2>password</LITERAL2>\r
+ <LITERAL2>restrict</LITERAL2>\r
+ <LITERAL2>selectable</LITERAL2>\r
+ <LITERAL2>text</LITERAL2>\r
+ <LITERAL2>textColor</LITERAL2>\r
+ <LITERAL2>textHeight</LITERAL2>\r
+ <LITERAL2>textWidth</LITERAL2>\r
+ <LITERAL2>type</LITERAL2>\r
+ <LITERAL2>variable</LITERAL2>\r
+ <LITERAL2>wordWrap</LITERAL2>\r
+ <LITERAL2>onChanged</LITERAL2>\r
+ <LITERAL2>onScroller</LITERAL2>\r
+ <LITERAL2>TextField</LITERAL2>\r
+ <LITERAL2>mouseWheelEnabled</LITERAL2>\r
+ <LITERAL2>replaceText</LITERAL2>\r
+\r
+ <!-- StyleSheet Class -->\r
+ <LITERAL2>StyleSheet</LITERAL2>\r
+ <LITERAL2>getStyle</LITERAL2>\r
+ <LITERAL2>getStyleNames</LITERAL2>\r
+ <LITERAL2>parseCSS</LITERAL2>\r
+ <LITERAL2>setStyle</LITERAL2>\r
+ <LITERAL2>styleSheet</LITERAL2>\r
+\r
+ <!-- TextFormat Class -->\r
+ <LITERAL2>TextFormat</LITERAL2>\r
+ <LITERAL2>getTextExtent</LITERAL2>\r
+ <LITERAL2>blockIndent</LITERAL2>\r
+ <LITERAL2>bold</LITERAL2>\r
+ <LITERAL2>bullet</LITERAL2>\r
+ <LITERAL2>color</LITERAL2>\r
+ <LITERAL2>font</LITERAL2>\r
+ <LITERAL2>indent</LITERAL2>\r
+ <LITERAL2>italic</LITERAL2>\r
+ <LITERAL2>leading</LITERAL2>\r
+ <LITERAL2>leftMargin</LITERAL2>\r
+ <LITERAL2>rightMargin</LITERAL2>\r
+ <LITERAL2>size</LITERAL2>\r
+ <LITERAL2>tabStops</LITERAL2>\r
+ <LITERAL2>target</LITERAL2>\r
+ <LITERAL2>underline</LITERAL2>\r
+ <LITERAL2>url</LITERAL2>\r
+\r
+ <!-- TextSnapshot object -->\r
+ <LITERAL2>TextSnapshot</LITERAL2>\r
+ <LITERAL2>findText</LITERAL2>\r
+ <LITERAL2>getCount</LITERAL2>\r
+ <LITERAL2>getSelected</LITERAL2>\r
+ <LITERAL2>getSelectedText</LITERAL2>\r
+ <LITERAL2>hitTestTextNearPos</LITERAL2>\r
+ <LITERAL2>getText</LITERAL2>\r
+ <LITERAL2>setSelectColor</LITERAL2>\r
+ <LITERAL2>setSelected</LITERAL2>\r
+\r
+ <!-- LoadVars Class-->\r
+ <LITERAL2>LoadVars</LITERAL2>\r
+ <LITERAL2>load</LITERAL2>\r
+ <LITERAL2>send</LITERAL2>\r
+ <LITERAL2>sendAndLoad</LITERAL2>\r
+ <LITERAL2>contentType</LITERAL2>\r
+ <LITERAL2>loaded</LITERAL2>\r
+ <LITERAL2>addRequestHeader</LITERAL2>\r
+\r
+ <!-- LocalConnection Class-->\r
+ <LITERAL2>LocalConnection</LITERAL2>\r
+ <LITERAL2>allowDomain</LITERAL2>\r
+ <LITERAL2>allowInsecureDomain</LITERAL2>\r
+ <LITERAL2>domain</LITERAL2>\r
+\r
+ <!-- XML Class -->\r
+ <LITERAL2>appendChild</LITERAL2>\r
+ <LITERAL2>cloneNode</LITERAL2>\r
+ <LITERAL2>createElement</LITERAL2>\r
+ <LITERAL2>createTextNode</LITERAL2>\r
+ <LITERAL2>hasChildNodes</LITERAL2>\r
+ <LITERAL2>insertBefore</LITERAL2>\r
+ <LITERAL2>parseXML</LITERAL2>\r
+ <LITERAL2>removeNode</LITERAL2>\r
+ <LITERAL2>attributes</LITERAL2>\r
+ <LITERAL2>childNodes</LITERAL2>\r
+ <LITERAL2>docTypeDecl</LITERAL2>\r
+ <LITERAL2>firstChild</LITERAL2>\r
+ <LITERAL2>ignoreWhite</LITERAL2>\r
+ <LITERAL2>lastChild</LITERAL2>\r
+ <LITERAL2>nextSibling</LITERAL2>\r
+ <LITERAL2>nodeName</LITERAL2>\r
+ <LITERAL2>nodeType</LITERAL2>\r
+ <LITERAL2>nodeValue</LITERAL2>\r
+ <LITERAL2>parentNode</LITERAL2>\r
+ <LITERAL2>previousSibling</LITERAL2>\r
+ <LITERAL2>status</LITERAL2>\r
+ <LITERAL2>xmlDecl</LITERAL2>\r
+ <LITERAL2>close</LITERAL2>\r
+ <LITERAL2>connect</LITERAL2>\r
+ <LITERAL2>onClose</LITERAL2>\r
+ <LITERAL2>onConnect</LITERAL2>\r
+ <LITERAL2>onXML</LITERAL2>\r
+\r
+ <!-- CustomActions Class -->\r
+ <LITERAL2>CustomActions</LITERAL2>\r
+ <LITERAL2>onUpdate</LITERAL2>\r
+ <LITERAL2>uninstall</LITERAL2>\r
+ <LITERAL2>list</LITERAL2>\r
+ <LITERAL2>install</LITERAL2>\r
+ <LITERAL2>get</LITERAL2>\r
+\r
+ <!-- NetConnection Class -->\r
+ <LITERAL2>NetConnection</LITERAL2>\r
+\r
+ <!-- NetStream Class-->\r
+ <LITERAL2>NetStream</LITERAL2>\r
+ <LITERAL2>bufferLength</LITERAL2>\r
+ <LITERAL2>bufferTime</LITERAL2>\r
+ <LITERAL2>bytesLoaded</LITERAL2>\r
+ <LITERAL2>bytesTotal</LITERAL2>\r
+ <LITERAL2>pause</LITERAL2>\r
+ <LITERAL2>seek</LITERAL2>\r
+ <LITERAL2>setBufferTime</LITERAL2>\r
+ <LITERAL2>time</LITERAL2>\r
+\r
+ <!-- RecordSet Class -->\r
+ <LITERAL2>DataGlue</LITERAL2>\r
+ <LITERAL2>bindFormatFunction</LITERAL2>\r
+ <LITERAL2>bindFormatStrings</LITERAL2>\r
+ <LITERAL2>getDebugConfig</LITERAL2>\r
+ <LITERAL2>getDebugID</LITERAL2>\r
+ <LITERAL2>getService</LITERAL2>\r
+ <LITERAL2>setCredentials</LITERAL2>\r
+ <LITERAL2>setDebugID</LITERAL2>\r
+ <LITERAL2>getDebug</LITERAL2>\r
+ <LITERAL2>setDebug</LITERAL2>\r
+ <LITERAL2>createGatewayConnection</LITERAL2>\r
+ <LITERAL2>NetServices</LITERAL2>\r
+ <LITERAL2>setDefaultGatewayURL</LITERAL2>\r
+ <LITERAL2>addItem</LITERAL2>\r
+ <LITERAL2>addItemAt</LITERAL2>\r
+ <LITERAL2>addView</LITERAL2>\r
+ <LITERAL2>filter</LITERAL2>\r
+ <LITERAL2>getColumnNames</LITERAL2>\r
+ <LITERAL2>getItemAt</LITERAL2>\r
+ <LITERAL2>getLength</LITERAL2>\r
+ <LITERAL2>getNumberAvailable</LITERAL2>\r
+ <LITERAL2>isFullyPopulated</LITERAL2>\r
+ <LITERAL2>isLocal</LITERAL2>\r
+ <LITERAL2>removeAll</LITERAL2>\r
+ <LITERAL2>removeItemAt</LITERAL2>\r
+ <LITERAL2>replaceItemAt</LITERAL2>\r
+ <LITERAL2>setDeliveryMode</LITERAL2>\r
+ <LITERAL2>setField</LITERAL2>\r
+ <LITERAL2>sortItemsBy</LITERAL2>\r
+\r
+ <!-- deprecated-->\r
+ <KEYWORD2>chr</KEYWORD2>\r
+ <KEYWORD2>mbchr</KEYWORD2>\r
+ <KEYWORD2>mblength</KEYWORD2>\r
+ <KEYWORD2>mbord</KEYWORD2>\r
+ <KEYWORD2>mbsubstring</KEYWORD2>\r
+ <KEYWORD2>ord</KEYWORD2>\r
+ <KEYWORD2>_highquality</KEYWORD2>\r
+\r
+ <!-- END-->\r
+\r
+ <!--ECMAScript keywords-->\r
+ <!-- Reserved for future use\r
+ (some are already used in some Javascript Engines)\r
+ -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>debugger</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD1>enum</KEYWORD1>\r
+ <KEYWORD2>export</KEYWORD2>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>Void</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>dynamic</KEYWORD1>\r
+\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <LITERAL2>super</LITERAL2>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Normal comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ \r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+ <SEQ TYPE="OPERATOR">.all</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="NULL"><></SEQ>\r
+ <SEQ TYPE="LABEL"><<</SEQ>\r
+ <SEQ TYPE="LABEL">>></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <SEQ TYPE="KEYWORD3">'access</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'address</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'adjacent</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'aft</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'alignment</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'base</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'bit_order</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'body_version</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'callable</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'caller</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'ceiling</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'class</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'component_size</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'composed</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'constrained</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'copy_size</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'count</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'definite</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'delta</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'denorm</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'digits</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'exponent</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'external_tag</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'first</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'first_bit</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'floor</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'fore</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'fraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'genetic</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'identity</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'image</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'input</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'last</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'last_bit</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'leading_part</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'length</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_emax</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_emin</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_mantissa</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_overflows</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_radix</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'machine_rounds</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'max</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'max_size_in_storage_elements</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'min</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'model</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'model_emin</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'model_epsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'model_mantissa</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'model_small</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'modulus</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'output</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'partition_id</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'pos</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'position</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'pred</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'range</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'read</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'remainder</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'round</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'rounding</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'safe_first</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'safe_last</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'scale</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'scaling</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'signed_zeros</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'size</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'small</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'storage_pool</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'storage_size</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'succ</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'tag</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'terminated</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'truncation</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'unbiased_rounding</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'unchecked_access</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'val</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'valid</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'value</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'version</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'wide_image</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'wide_value</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'wide_width</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'width</SEQ>\r
+ <SEQ TYPE="KEYWORD3">'write</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved words -->\r
+ <KEYWORD1>entry</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+\r
+ <KEYWORD2>abort</KEYWORD2>\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>abstract</KEYWORD2>\r
+ <KEYWORD2>accept</KEYWORD2>\r
+ <KEYWORD2>access</KEYWORD2>\r
+ <KEYWORD2>aliased</KEYWORD2>\r
+ <KEYWORD2>all</KEYWORD2>\r
+ <KEYWORD2>and</KEYWORD2>\r
+ <KEYWORD2>array</KEYWORD2>\r
+ <KEYWORD2>at</KEYWORD2>\r
+ <KEYWORD2>begin</KEYWORD2>\r
+ <KEYWORD2>body</KEYWORD2>\r
+ <KEYWORD2>case</KEYWORD2>\r
+ <KEYWORD2>constant</KEYWORD2>\r
+ <KEYWORD2>declare</KEYWORD2>\r
+ <KEYWORD2>delay</KEYWORD2>\r
+ <KEYWORD2>delta</KEYWORD2>\r
+ <KEYWORD2>digits</KEYWORD2>\r
+ <KEYWORD2>do</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2>\r
+ <KEYWORD2>elsif</KEYWORD2>\r
+ <KEYWORD2>end</KEYWORD2>\r
+ <KEYWORD2>exception</KEYWORD2>\r
+ <KEYWORD2>exit</KEYWORD2>\r
+ <KEYWORD2>for</KEYWORD2>\r
+ <KEYWORD2>goto</KEYWORD2>\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>in</KEYWORD2>\r
+ <KEYWORD2>is</KEYWORD2>\r
+ <KEYWORD2>limited</KEYWORD2>\r
+ <KEYWORD2>loop</KEYWORD2>\r
+ <KEYWORD2>mod</KEYWORD2>\r
+ <KEYWORD2>new</KEYWORD2>\r
+ <KEYWORD2>not</KEYWORD2>\r
+ <KEYWORD2>or</KEYWORD2>\r
+ <KEYWORD2>others</KEYWORD2>\r
+ <KEYWORD2>out</KEYWORD2>\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>pragma</KEYWORD2>\r
+ <KEYWORD2>private</KEYWORD2>\r
+ <KEYWORD2>protected</KEYWORD2>\r
+ <KEYWORD2>raise</KEYWORD2>\r
+ <KEYWORD2>range</KEYWORD2>\r
+ <KEYWORD2>record</KEYWORD2>\r
+ <KEYWORD2>rem</KEYWORD2>\r
+ <KEYWORD2>renames</KEYWORD2>\r
+ <KEYWORD2>requeue</KEYWORD2>\r
+ <KEYWORD2>return</KEYWORD2>\r
+ <KEYWORD2>select</KEYWORD2>\r
+ <KEYWORD2>separate</KEYWORD2>\r
+ <KEYWORD2>string</KEYWORD2>\r
+ <KEYWORD2>subtype</KEYWORD2>\r
+ <KEYWORD2>tagged</KEYWORD2>\r
+ <KEYWORD2>task</KEYWORD2>\r
+ <KEYWORD2>terminate</KEYWORD2>\r
+ <KEYWORD2>then</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>until</KEYWORD2>\r
+ <KEYWORD2>use</KEYWORD2>\r
+ <KEYWORD2>when</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2>\r
+ <KEYWORD2>with</KEYWORD2>\r
+ <KEYWORD2>xor</KEYWORD2>\r
+\r
+ <!-- Attributes -->\r
+\r
+ <!-- Common Pre-defined Types -->\r
+ <LITERAL2>address</LITERAL2>\r
+ <LITERAL2>boolean</LITERAL2>\r
+ <LITERAL2>character</LITERAL2>\r
+ <LITERAL2>duration</LITERAL2>\r
+ <LITERAL2>float</LITERAL2>\r
+ <LITERAL2>integer</LITERAL2>\r
+ <LITERAL2>latin_1</LITERAL2>\r
+ <LITERAL2>natural</LITERAL2>\r
+ <LITERAL2>positive</LITERAL2>\r
+ <LITERAL2>string</LITERAL2>\r
+ <LITERAL2>time</LITERAL2>\r
+\r
+ <!-- Literals -->\r
+ <LITERAL1>false</LITERAL1>\r
+ <LITERAL1>null</LITERAL1>\r
+ <LITERAL1>true</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ This mode file describes the ANTLR syntax definition language.\r
+ It is derived from and tested with the ANTLR syntax rules specified in\r
+ antlr.g included with the ANTLR distribution.\r
+ \r
+ Portions of this file from java.xml.\r
+ \r
+ Author: Brant Gurganus <brantgurga@users.sourceforge.net>\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE="" />\r
+ </PROPS>\r
+ <RULES>\r
+ <SPAN TYPE="COMMENT2" DELEGATE="java::JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <KEYWORDS>\r
+ <KEYWORD3>header</KEYWORD3>\r
+ <KEYWORD3>options</KEYWORD3>\r
+ <KEYWORD3>tokens</KEYWORD3>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+\r
+ <KEYWORD2>boolean</KEYWORD2>\r
+ <KEYWORD2>byte</KEYWORD2>\r
+ <KEYWORD2>char</KEYWORD2>\r
+ <KEYWORD2>class</KEYWORD2>\r
+ <KEYWORD2>double</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>interface</KEYWORD2>\r
+ <KEYWORD2>long</KEYWORD2>\r
+ <KEYWORD2>short</KEYWORD2>\r
+ <KEYWORD2>void</KEYWORD2>\r
+\r
+ <FUNCTION>assert</FUNCTION>\r
+ <KEYWORD1>strictfp</KEYWORD1>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>super</LITERAL2>\r
+ <LITERAL2>this</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+\r
+ <INVALID>goto</INVALID>\r
+ <INVALID>const</INVALID>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="noWordSep" VALUE="-" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="FALSE" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<VirtualHost" TYPE="MARKUP" DELEGATE="VHOST">\r
+ <BEGIN><![CDATA[<(VirtualHost)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="DIRECTIVE">\r
+ <BEGIN><![CDATA[<(\w+)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>AcceptMutex</KEYWORD1>\r
+ <KEYWORD1>AcceptPathInfo</KEYWORD1>\r
+ <KEYWORD1>AccessFileName</KEYWORD1>\r
+ <KEYWORD1>Action</KEYWORD1>\r
+ <KEYWORD1>AddAlt</KEYWORD1>\r
+ <KEYWORD1>AddAltByEncoding</KEYWORD1>\r
+ <KEYWORD1>AddAltByType</KEYWORD1>\r
+ <KEYWORD1>AddCharset</KEYWORD1>\r
+ <KEYWORD1>AddDefaultCharset</KEYWORD1>\r
+ <KEYWORD1>AddDescription</KEYWORD1>\r
+ <KEYWORD1>AddEncoding</KEYWORD1>\r
+ <KEYWORD1>AddHandler</KEYWORD1>\r
+ <KEYWORD1>AddIcon</KEYWORD1>\r
+ <KEYWORD1>AddIconByEncoding</KEYWORD1>\r
+ <KEYWORD1>AddIconByType</KEYWORD1>\r
+ <KEYWORD1>AddInputFilter</KEYWORD1>\r
+ <KEYWORD1>AddLanguage</KEYWORD1>\r
+ <KEYWORD1>AddModuleInfo</KEYWORD1>\r
+ <KEYWORD1>AddOutputFilter</KEYWORD1>\r
+ <KEYWORD1>AddOutputFilterByType</KEYWORD1>\r
+ <KEYWORD1>AddType</KEYWORD1>\r
+ <KEYWORD1>Alias</KEYWORD1>\r
+ <KEYWORD1>AliasMatch</KEYWORD1>\r
+ <KEYWORD1>AllowCONNECT</KEYWORD1>\r
+ <KEYWORD1>AllowEncodedSlashes</KEYWORD1>\r
+ <KEYWORD1>AuthDigestNcCheck</KEYWORD1>\r
+ <KEYWORD1>AuthDigestShmemSize</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPCharsetConfig</KEYWORD1>\r
+ <KEYWORD1>BS2000Account</KEYWORD1>\r
+ <KEYWORD1>BrowserMatch</KEYWORD1>\r
+ <KEYWORD1>BrowserMatchNoCase</KEYWORD1>\r
+ <KEYWORD1>CacheDefaultExpire</KEYWORD1>\r
+ <KEYWORD1>CacheDirLength</KEYWORD1>\r
+ <KEYWORD1>CacheDirLevels</KEYWORD1>\r
+ <KEYWORD1>CacheDisable</KEYWORD1>\r
+ <KEYWORD1>CacheEnable</KEYWORD1>\r
+ <KEYWORD1>CacheExpiryCheck</KEYWORD1>\r
+ <KEYWORD1>CacheFile</KEYWORD1>\r
+ <KEYWORD1>CacheForceCompletion</KEYWORD1>\r
+ <KEYWORD1>CacheGcClean</KEYWORD1>\r
+ <KEYWORD1>CacheGcDaily</KEYWORD1>\r
+ <KEYWORD1>CacheGcInterval</KEYWORD1>\r
+ <KEYWORD1>CacheGcMemUsage</KEYWORD1>\r
+ <KEYWORD1>CacheGcUnused</KEYWORD1>\r
+ <KEYWORD1>CacheIgnoreCacheControl</KEYWORD1>\r
+ <KEYWORD1>CacheIgnoreNoLastMod</KEYWORD1>\r
+ <KEYWORD1>CacheLastModifiedFactor</KEYWORD1>\r
+ <KEYWORD1>CacheMaxExpire</KEYWORD1>\r
+ <KEYWORD1>CacheMaxFileSize</KEYWORD1>\r
+ <KEYWORD1>CacheMinFileSize</KEYWORD1>\r
+ <KEYWORD1>CacheNegotiatedDocs</KEYWORD1>\r
+ <KEYWORD1>CacheRoot</KEYWORD1>\r
+ <KEYWORD1>CacheSize</KEYWORD1>\r
+ <KEYWORD1>CacheTimeMargin</KEYWORD1>\r
+ <KEYWORD1>CharsetDefault</KEYWORD1>\r
+ <KEYWORD1>CharsetOptions</KEYWORD1>\r
+ <KEYWORD1>CharsetSourceEnc</KEYWORD1>\r
+ <KEYWORD1>CheckSpelling</KEYWORD1>\r
+ <KEYWORD1>ChildPerUserID</KEYWORD1>\r
+ <KEYWORD1>ContentDigest</KEYWORD1>\r
+ <KEYWORD1>CookieDomain</KEYWORD1>\r
+ <KEYWORD1>CookieExpires</KEYWORD1>\r
+ <KEYWORD1>CookieLog</KEYWORD1>\r
+ <KEYWORD1>CookieName</KEYWORD1>\r
+ <KEYWORD1>CookieStyle</KEYWORD1>\r
+ <KEYWORD1>CookieTracking</KEYWORD1>\r
+ <KEYWORD1>CoreDumpDirectory</KEYWORD1>\r
+ <KEYWORD1>CustomLog</KEYWORD1>\r
+ <KEYWORD1>DavDepthInfinity</KEYWORD1>\r
+ <KEYWORD1>DavLockDB</KEYWORD1>\r
+ <KEYWORD1>DavMinTimeout</KEYWORD1>\r
+ <KEYWORD1>DefaultIcon</KEYWORD1>\r
+ <KEYWORD1>DefaultLanguage</KEYWORD1>\r
+ <KEYWORD1>DefaultType</KEYWORD1>\r
+ <KEYWORD1>DeflateBufferSize</KEYWORD1>\r
+ <KEYWORD1>DeflateCompressionLevel</KEYWORD1>\r
+ <KEYWORD1>DeflateFilterNote</KEYWORD1>\r
+ <KEYWORD1>DeflateMemLevel</KEYWORD1>\r
+ <KEYWORD1>DeflateWindowSize</KEYWORD1>\r
+ <KEYWORD1>DirectoryIndex</KEYWORD1>\r
+ <KEYWORD1>DirectorySlash</KEYWORD1>\r
+ <KEYWORD1>DocumentRoot</KEYWORD1>\r
+ <KEYWORD1>EnableExceptionHook</KEYWORD1>\r
+ <KEYWORD1>EnableMMAP</KEYWORD1>\r
+ <KEYWORD1>EnableSendfile</KEYWORD1>\r
+ <KEYWORD1>ErrorDocument</KEYWORD1>\r
+ <KEYWORD1>ErrorLog</KEYWORD1>\r
+ <KEYWORD1>Example</KEYWORD1>\r
+ <KEYWORD1>ExpiresActive</KEYWORD1>\r
+ <KEYWORD1>ExpiresByType</KEYWORD1>\r
+ <KEYWORD1>ExpiresDefault</KEYWORD1>\r
+ <KEYWORD1>ExtFilterDefine</KEYWORD1>\r
+ <KEYWORD1>ExtendedStatus</KEYWORD1>\r
+ <KEYWORD1>FileETag</KEYWORD1>\r
+ <KEYWORD1>ForceLanguagePriority</KEYWORD1>\r
+ <KEYWORD1>ForensicLog</KEYWORD1>\r
+ <KEYWORD1>Group</KEYWORD1>\r
+ <KEYWORD1>Header</KEYWORD1>\r
+ <KEYWORD1>HeaderName</KEYWORD1>\r
+ <KEYWORD1>HostnameLookups</KEYWORD1>\r
+ <KEYWORD1>ISAPIAppendLogToErrors</KEYWORD1>\r
+ <KEYWORD1>ISAPIAppendLogToQuery</KEYWORD1>\r
+ <KEYWORD1>ISAPICacheFile</KEYWORD1>\r
+ <KEYWORD1>ISAPIFakeAsync</KEYWORD1>\r
+ <KEYWORD1>ISAPILogNotSupported</KEYWORD1>\r
+ <KEYWORD1>ISAPIReadAheadBuffer</KEYWORD1>\r
+ <KEYWORD1>IdentityCheck</KEYWORD1>\r
+ <KEYWORD1>ImapBase</KEYWORD1>\r
+ <KEYWORD1>ImapDefault</KEYWORD1>\r
+ <KEYWORD1>ImapMenu</KEYWORD1>\r
+ <KEYWORD1>Include</KEYWORD1>\r
+ <KEYWORD1>IndexIgnore</KEYWORD1>\r
+ <KEYWORD1>IndexOptions</KEYWORD1>\r
+ <KEYWORD1>IndexOrderDefault</KEYWORD1>\r
+ <KEYWORD1>KeepAlive</KEYWORD1>\r
+ <KEYWORD1>KeepAliveTimeout</KEYWORD1>\r
+ <KEYWORD1>LDAPCacheEntries</KEYWORD1>\r
+ <KEYWORD1>LDAPCacheTTL</KEYWORD1>\r
+ <KEYWORD1>LDAPOpCacheEntries</KEYWORD1>\r
+ <KEYWORD1>LDAPOpCacheTTL</KEYWORD1>\r
+ <KEYWORD1>LDAPSharedCacheFile</KEYWORD1>\r
+ <KEYWORD1>LDAPSharedCacheSize</KEYWORD1>\r
+ <KEYWORD1>LDAPTrustedCA</KEYWORD1>\r
+ <KEYWORD1>LDAPTrustedCAType</KEYWORD1>\r
+ <KEYWORD1>LanguagePriority</KEYWORD1>\r
+ <KEYWORD1>LimitInternalRecursion</KEYWORD1>\r
+ <KEYWORD1>LimitRequestBody</KEYWORD1>\r
+ <KEYWORD1>LimitRequestFields</KEYWORD1>\r
+ <KEYWORD1>LimitRequestFieldsize</KEYWORD1>\r
+ <KEYWORD1>LimitRequestLine</KEYWORD1>\r
+ <KEYWORD1>LimitXMLRequestBody</KEYWORD1>\r
+ <KEYWORD1>Listen</KEYWORD1>\r
+ <KEYWORD1>ListenBacklog</KEYWORD1>\r
+ <KEYWORD1>LoadFile</KEYWORD1>\r
+ <KEYWORD1>LoadModule</KEYWORD1>\r
+ <KEYWORD1>LockFile</KEYWORD1>\r
+ <KEYWORD1>LogFormat</KEYWORD1>\r
+ <KEYWORD1>LogLevel</KEYWORD1>\r
+ <KEYWORD1>MCacheMaxObjectCount</KEYWORD1>\r
+ <KEYWORD1>MCacheMaxObjectSize</KEYWORD1>\r
+ <KEYWORD1>MCacheMaxStreamingBuffer</KEYWORD1>\r
+ <KEYWORD1>MCacheMinObjectSize</KEYWORD1>\r
+ <KEYWORD1>MCacheRemovalAlgorithm</KEYWORD1>\r
+ <KEYWORD1>MCacheSize</KEYWORD1>\r
+ <KEYWORD1>MMapFile</KEYWORD1>\r
+ <KEYWORD1>MaxClients</KEYWORD1>\r
+ <KEYWORD1>MaxKeepAliveRequests</KEYWORD1>\r
+ <KEYWORD1>MaxMemFree</KEYWORD1>\r
+ <KEYWORD1>MaxRequestsPerChild</KEYWORD1>\r
+ <KEYWORD1>MaxRequestsPerThread</KEYWORD1>\r
+ <KEYWORD1>MaxSpareServers</KEYWORD1>\r
+ <KEYWORD1>MaxSpareThreads</KEYWORD1>\r
+ <KEYWORD1>MaxThreads</KEYWORD1>\r
+ <KEYWORD1>MaxThreadsPerChild</KEYWORD1>\r
+ <KEYWORD1>MetaDir</KEYWORD1>\r
+ <KEYWORD1>MetaFiles</KEYWORD1>\r
+ <KEYWORD1>MetaSuffix</KEYWORD1>\r
+ <KEYWORD1>MimeMagicFile</KEYWORD1>\r
+ <KEYWORD1>MinSpareServers</KEYWORD1>\r
+ <KEYWORD1>MinSpareThreads</KEYWORD1>\r
+ <KEYWORD1>MultiviewsMatch</KEYWORD1>\r
+ <KEYWORD1>NWSSLTrustedCerts</KEYWORD1>\r
+ <KEYWORD1>NWSSLUpgradeable</KEYWORD1>\r
+ <KEYWORD1>NameVirtualHost</KEYWORD1>\r
+ <KEYWORD1>NoProxy</KEYWORD1>\r
+ <KEYWORD1>NumServers</KEYWORD1>\r
+ <KEYWORD1>Options</KEYWORD1>\r
+ <KEYWORD1>PassEnv</KEYWORD1>\r
+ <KEYWORD1>PidFile</KEYWORD1>\r
+ <KEYWORD1>ProtocolEcho</KEYWORD1>\r
+ <KEYWORD1>ProxyBadHeader</KEYWORD1>\r
+ <KEYWORD1>ProxyBlock</KEYWORD1>\r
+ <KEYWORD1>ProxyDomain</KEYWORD1>\r
+ <KEYWORD1>ProxyErrorOverride</KEYWORD1>\r
+ <KEYWORD1>ProxyIOBufferSize</KEYWORD1>\r
+ <KEYWORD1>ProxyMaxForwards</KEYWORD1>\r
+ <KEYWORD1>ProxyPass</KEYWORD1>\r
+ <KEYWORD1>ProxyPassReverse</KEYWORD1>\r
+ <KEYWORD1>ProxyPreserveHost</KEYWORD1>\r
+ <KEYWORD1>ProxyReceiveBufferSize</KEYWORD1>\r
+ <KEYWORD1>ProxyRemote</KEYWORD1>\r
+ <KEYWORD1>ProxyRemoteMatch</KEYWORD1>\r
+ <KEYWORD1>ProxyRequests</KEYWORD1>\r
+ <KEYWORD1>ProxyTimeout</KEYWORD1>\r
+ <KEYWORD1>ProxyVia</KEYWORD1>\r
+ <KEYWORD1>RLimitCPU</KEYWORD1>\r
+ <KEYWORD1>RLimitMEM</KEYWORD1>\r
+ <KEYWORD1>RLimitNPROC</KEYWORD1>\r
+ <KEYWORD1>ReadmeName</KEYWORD1>\r
+ <KEYWORD1>Redirect</KEYWORD1>\r
+ <KEYWORD1>RedirectMatch</KEYWORD1>\r
+ <KEYWORD1>RedirectPermanent</KEYWORD1>\r
+ <KEYWORD1>RedirectTemp</KEYWORD1>\r
+ <KEYWORD1>RequestHeader</KEYWORD1>\r
+ <KEYWORD1>RewriteBase</KEYWORD1>\r
+ <KEYWORD1>RewriteCond</KEYWORD1>\r
+ <KEYWORD1>RewriteEngine</KEYWORD1>\r
+ <KEYWORD1>RewriteLock</KEYWORD1>\r
+ <KEYWORD1>RewriteLog</KEYWORD1>\r
+ <KEYWORD1>RewriteLogLevel</KEYWORD1>\r
+ <KEYWORD1>RewriteMap</KEYWORD1>\r
+ <KEYWORD1>RewriteOptions</KEYWORD1>\r
+ <KEYWORD1>RewriteRule</KEYWORD1>\r
+ <KEYWORD1>SSIEndTag</KEYWORD1>\r
+ <KEYWORD1>SSIErrorMsg</KEYWORD1>\r
+ <KEYWORD1>SSIStartTag</KEYWORD1>\r
+ <KEYWORD1>SSITimeFormat</KEYWORD1>\r
+ <KEYWORD1>SSIUndefinedEcho</KEYWORD1>\r
+ <KEYWORD1>SSLCACertificateFile</KEYWORD1>\r
+ <KEYWORD1>SSLCACertificatePath</KEYWORD1>\r
+ <KEYWORD1>SSLCARevocationFile</KEYWORD1>\r
+ <KEYWORD1>SSLCARevocationPath</KEYWORD1>\r
+ <KEYWORD1>SSLCertificateChainFile</KEYWORD1>\r
+ <KEYWORD1>SSLCertificateFile</KEYWORD1>\r
+ <KEYWORD1>SSLCertificateKeyFile</KEYWORD1>\r
+ <KEYWORD1>SSLCipherSuite</KEYWORD1>\r
+ <KEYWORD1>SSLEngine</KEYWORD1>\r
+ <KEYWORD1>SSLMutex</KEYWORD1>\r
+ <KEYWORD1>SSLOptions</KEYWORD1>\r
+ <KEYWORD1>SSLPassPhraseDialog</KEYWORD1>\r
+ <KEYWORD1>SSLProtocol</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCACertificateFile</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCACertificatePath</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCARevocationFile</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCARevocationPath</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCipherSuite</KEYWORD1>\r
+ <KEYWORD1>SSLProxyEngine</KEYWORD1>\r
+ <KEYWORD1>SSLProxyMachineCertificateFile</KEYWORD1>\r
+ <KEYWORD1>SSLProxyMachineCertificatePath</KEYWORD1>\r
+ <KEYWORD1>SSLProxyProtocol</KEYWORD1>\r
+ <KEYWORD1>SSLProxyVerify</KEYWORD1>\r
+ <KEYWORD1>SSLProxyVerifyDepth</KEYWORD1>\r
+ <KEYWORD1>SSLRandomSeed</KEYWORD1>\r
+ <KEYWORD1>SSLSessionCache</KEYWORD1>\r
+ <KEYWORD1>SSLSessionCacheTimeout</KEYWORD1>\r
+ <KEYWORD1>SSLVerifyClient</KEYWORD1>\r
+ <KEYWORD1>SSLVerifyDepth</KEYWORD1>\r
+ <KEYWORD1>ScoreBoardFile</KEYWORD1>\r
+ <KEYWORD1>Script</KEYWORD1>\r
+ <KEYWORD1>ScriptAlias</KEYWORD1>\r
+ <KEYWORD1>ScriptAliasMatch</KEYWORD1>\r
+ <KEYWORD1>ScriptInterpreterSource</KEYWORD1>\r
+ <KEYWORD1>ScriptLog</KEYWORD1>\r
+ <KEYWORD1>ScriptLogBuffer</KEYWORD1>\r
+ <KEYWORD1>ScriptLogLength</KEYWORD1>\r
+ <KEYWORD1>ScriptSock</KEYWORD1>\r
+ <KEYWORD1>SecureListen</KEYWORD1>\r
+ <KEYWORD1>SendBufferSize</KEYWORD1>\r
+ <KEYWORD1>ServerAdmin</KEYWORD1>\r
+ <KEYWORD1>ServerLimit</KEYWORD1>\r
+ <KEYWORD1>ServerName</KEYWORD1>\r
+ <KEYWORD1>ServerRoot</KEYWORD1>\r
+ <KEYWORD1>ServerSignature</KEYWORD1>\r
+ <KEYWORD1>ServerTokens</KEYWORD1>\r
+ <KEYWORD1>SetEnv</KEYWORD1>\r
+ <KEYWORD1>SetEnvIf</KEYWORD1>\r
+ <KEYWORD1>SetEnvIfNoCase</KEYWORD1>\r
+ <KEYWORD1>SetHandler</KEYWORD1>\r
+ <KEYWORD1>SetInputFilter</KEYWORD1>\r
+ <KEYWORD1>SetOutputFilter</KEYWORD1>\r
+ <KEYWORD1>StartServers</KEYWORD1>\r
+ <KEYWORD1>StartThreads</KEYWORD1>\r
+ <KEYWORD1>SuexecUserGroup</KEYWORD1>\r
+ <KEYWORD1>ThreadLimit</KEYWORD1>\r
+ <KEYWORD1>ThreadStackSize</KEYWORD1>\r
+ <KEYWORD1>ThreadsPerChild</KEYWORD1>\r
+ <KEYWORD1>TimeOut</KEYWORD1>\r
+ <KEYWORD1>TransferLog</KEYWORD1>\r
+ <KEYWORD1>TypesConfig</KEYWORD1>\r
+ <KEYWORD1>UnsetEnv</KEYWORD1>\r
+ <KEYWORD1>UseCanonicalName</KEYWORD1>\r
+ <KEYWORD1>User</KEYWORD1>\r
+ <KEYWORD1>UserDir</KEYWORD1>\r
+ <KEYWORD1>VirtualDocumentRoot</KEYWORD1>\r
+ <KEYWORD1>VirtualDocumentRootIP</KEYWORD1>\r
+ <KEYWORD1>VirtualScriptAlias</KEYWORD1>\r
+ <KEYWORD1>VirtualScriptAliasIP</KEYWORD1>\r
+ <KEYWORD1>Win32DisableAcceptEx</KEYWORD1>\r
+ <KEYWORD1>XBitHack</KEYWORD1>\r
+\r
+ <!-- Apache 1.x -->\r
+ <KEYWORD4>AddModule</KEYWORD4>\r
+ <KEYWORD4>ClearModuleList</KEYWORD4>\r
+ <KEYWORD4>ServerType</KEYWORD4>\r
+ <KEYWORD4>Port</KEYWORD4>\r
+\r
+ <LITERAL2>Off</LITERAL2>\r
+ <LITERAL2>On</LITERAL2>\r
+ <LITERAL2>None</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="DIRECTIVE" DEFAULT="NULL" ESCAPE="\" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<VirtualHost" TYPE="MARKUP" DELEGATE="VHOST">\r
+ <BEGIN><![CDATA[<(VirtualHost)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="DIRECTIVE">\r
+ <BEGIN><![CDATA[<(\w+)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <KEYWORDS>\r
+\r
+ <KEYWORD2>AcceptMutex</KEYWORD2>\r
+ <KEYWORD2>AcceptPathInfo</KEYWORD2>\r
+ <KEYWORD2>AccessFileName</KEYWORD2>\r
+ <KEYWORD2>Action</KEYWORD2>\r
+ <KEYWORD2>AddAlt</KEYWORD2>\r
+ <KEYWORD2>AddAltByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddAltByType</KEYWORD2>\r
+ <KEYWORD2>AddCharset</KEYWORD2>\r
+ <KEYWORD2>AddDefaultCharset</KEYWORD2>\r
+ <KEYWORD2>AddDescription</KEYWORD2>\r
+ <KEYWORD2>AddEncoding</KEYWORD2>\r
+ <KEYWORD2>AddHandler</KEYWORD2>\r
+ <KEYWORD2>AddIcon</KEYWORD2>\r
+ <KEYWORD2>AddIconByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddIconByType</KEYWORD2>\r
+ <KEYWORD2>AddInputFilter</KEYWORD2>\r
+ <KEYWORD2>AddLanguage</KEYWORD2>\r
+ <KEYWORD2>AddModuleInfo</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilter</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilterByType</KEYWORD2>\r
+ <KEYWORD2>AddType</KEYWORD2>\r
+ <KEYWORD2>Alias</KEYWORD2>\r
+ <KEYWORD2>AliasMatch</KEYWORD2>\r
+ <KEYWORD2>Allow</KEYWORD2>\r
+ <KEYWORD2>AllowCONNECT</KEYWORD2>\r
+ <KEYWORD2>AllowEncodedSlashes</KEYWORD2>\r
+ <KEYWORD2>AllowOverride</KEYWORD2>\r
+ <KEYWORD2>Anonymous</KEYWORD2>\r
+ <KEYWORD2>Anonymous_Authoritative</KEYWORD2>\r
+ <KEYWORD2>Anonymous_LogEmail</KEYWORD2>\r
+ <KEYWORD2>Anonymous_MustGiveEmail</KEYWORD2>\r
+ <KEYWORD2>Anonymous_NoUserID</KEYWORD2>\r
+ <KEYWORD2>Anonymous_VerifyEmail</KEYWORD2>\r
+ <KEYWORD2>AuthAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthDBMAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthDBMGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthDBMType</KEYWORD2>\r
+ <KEYWORD2>AuthDBMUserFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestAlgorithm</KEYWORD2>\r
+ <KEYWORD2>AuthDigestDomain</KEYWORD2>\r
+ <KEYWORD2>AuthDigestFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNcCheck</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNonceFormat</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNonceLifetime</KEYWORD2>\r
+ <KEYWORD2>AuthDigestQop</KEYWORD2>\r
+ <KEYWORD2>AuthDigestShmemSize</KEYWORD2>\r
+ <KEYWORD2>AuthGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPBindDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPBindPassword</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPCharsetConfig</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPCompareDNOnServer</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPDereferenceAliases</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPEnabled</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPFrontPageHack</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPGroupAttribute</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPGroupAttributeIsDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPRemoteUserIsDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPUrl</KEYWORD2>\r
+ <KEYWORD2>AuthName</KEYWORD2>\r
+ <KEYWORD2>AuthType</KEYWORD2>\r
+ <KEYWORD2>AuthUserFile</KEYWORD2>\r
+ <KEYWORD2>BS2000Account</KEYWORD2>\r
+ <KEYWORD2>BrowserMatch</KEYWORD2>\r
+ <KEYWORD2>BrowserMatchNoCase</KEYWORD2>\r
+ <KEYWORD2>CGIMapExtension</KEYWORD2>\r
+ <KEYWORD2>CacheDefaultExpire</KEYWORD2>\r
+ <KEYWORD2>CacheDirLength</KEYWORD2>\r
+ <KEYWORD2>CacheDirLevels</KEYWORD2>\r
+ <KEYWORD2>CacheDisable</KEYWORD2>\r
+ <KEYWORD2>CacheEnable</KEYWORD2>\r
+ <KEYWORD2>CacheExpiryCheck</KEYWORD2>\r
+ <KEYWORD2>CacheFile</KEYWORD2>\r
+ <KEYWORD2>CacheForceCompletion</KEYWORD2>\r
+ <KEYWORD2>CacheGcClean</KEYWORD2>\r
+ <KEYWORD2>CacheGcDaily</KEYWORD2>\r
+ <KEYWORD2>CacheGcInterval</KEYWORD2>\r
+ <KEYWORD2>CacheGcMemUsage</KEYWORD2>\r
+ <KEYWORD2>CacheGcUnused</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreCacheControl</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreNoLastMod</KEYWORD2>\r
+ <KEYWORD2>CacheLastModifiedFactor</KEYWORD2>\r
+ <KEYWORD2>CacheMaxExpire</KEYWORD2>\r
+ <KEYWORD2>CacheMaxFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheMinFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheNegotiatedDocs</KEYWORD2>\r
+ <KEYWORD2>CacheRoot</KEYWORD2>\r
+ <KEYWORD2>CacheSize</KEYWORD2>\r
+ <KEYWORD2>CacheTimeMargin</KEYWORD2>\r
+ <KEYWORD2>CharsetDefault</KEYWORD2>\r
+ <KEYWORD2>CharsetOptions</KEYWORD2>\r
+ <KEYWORD2>CharsetSourceEnc</KEYWORD2>\r
+ <KEYWORD2>CheckSpelling</KEYWORD2>\r
+ <KEYWORD2>ChildPerUserID</KEYWORD2>\r
+ <KEYWORD2>ContentDigest</KEYWORD2>\r
+ <KEYWORD2>CookieDomain</KEYWORD2>\r
+ <KEYWORD2>CookieExpires</KEYWORD2>\r
+ <KEYWORD2>CookieLog</KEYWORD2>\r
+ <KEYWORD2>CookieName</KEYWORD2>\r
+ <KEYWORD2>CookieStyle</KEYWORD2>\r
+ <KEYWORD2>CookieTracking</KEYWORD2>\r
+ <KEYWORD2>CoreDumpDirectory</KEYWORD2>\r
+ <KEYWORD2>CustomLog</KEYWORD2>\r
+ <KEYWORD2>Dav</KEYWORD2>\r
+ <KEYWORD2>DavDepthInfinity</KEYWORD2>\r
+ <KEYWORD2>DavLockDB</KEYWORD2>\r
+ <KEYWORD2>DavMinTimeout</KEYWORD2>\r
+ <KEYWORD2>DefaultIcon</KEYWORD2>\r
+ <KEYWORD2>DefaultLanguage</KEYWORD2>\r
+ <KEYWORD2>DefaultType</KEYWORD2>\r
+ <KEYWORD2>DeflateBufferSize</KEYWORD2>\r
+ <KEYWORD2>DeflateCompressionLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateFilterNote</KEYWORD2>\r
+ <KEYWORD2>DeflateMemLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateWindowSize</KEYWORD2>\r
+ <KEYWORD2>Deny</KEYWORD2>\r
+ <KEYWORD2>DirectoryIndex</KEYWORD2>\r
+ <KEYWORD1>DirectorySlash</KEYWORD1>\r
+ <KEYWORD2>DocumentRoot</KEYWORD2>\r
+ <KEYWORD2>EnableMMAP</KEYWORD2>\r
+ <KEYWORD2>EnableSendfile</KEYWORD2>\r
+ <KEYWORD2>ErrorDocument</KEYWORD2>\r
+ <KEYWORD2>ErrorLog</KEYWORD2>\r
+ <KEYWORD2>Example</KEYWORD2>\r
+ <KEYWORD2>ExpiresActive</KEYWORD2>\r
+ <KEYWORD2>ExpiresByType</KEYWORD2>\r
+ <KEYWORD2>ExpiresDefault</KEYWORD2>\r
+ <KEYWORD2>ExtFilterDefine</KEYWORD2>\r
+ <KEYWORD2>ExtFilterOptions</KEYWORD2>\r
+ <KEYWORD2>ExtendedStatus</KEYWORD2>\r
+ <KEYWORD2>FileETag</KEYWORD2>\r
+ <KEYWORD2>ForceLanguagePriority</KEYWORD2>\r
+ <KEYWORD2>ForceType</KEYWORD2>\r
+ <KEYWORD2>Group</KEYWORD2>\r
+ <KEYWORD2>Header</KEYWORD2>\r
+ <KEYWORD2>HeaderName</KEYWORD2>\r
+ <KEYWORD2>HostnameLookups</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToErrors</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToQuery</KEYWORD2>\r
+ <KEYWORD2>ISAPICacheFile</KEYWORD2>\r
+ <KEYWORD2>ISAPIFakeAsync</KEYWORD2>\r
+ <KEYWORD2>ISAPILogNotSupported</KEYWORD2>\r
+ <KEYWORD2>ISAPIReadAheadBuffer</KEYWORD2>\r
+ <KEYWORD2>IdentityCheck</KEYWORD2>\r
+ <KEYWORD2>ImapBase</KEYWORD2>\r
+ <KEYWORD2>ImapDefault</KEYWORD2>\r
+ <KEYWORD2>ImapMenu</KEYWORD2>\r
+ <KEYWORD2>Include</KEYWORD2>\r
+ <KEYWORD2>IndexIgnore</KEYWORD2>\r
+ <KEYWORD2>IndexOptions</KEYWORD2>\r
+ <KEYWORD2>IndexOrderDefault</KEYWORD2>\r
+ <KEYWORD2>KeepAlive</KEYWORD2>\r
+ <KEYWORD2>KeepAliveTimeout</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPSharedCacheSize</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCA</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCAType</KEYWORD2>\r
+ <KEYWORD2>LanguagePriority</KEYWORD2>\r
+ <KEYWORD2>LimitInternalRecursion</KEYWORD2>\r
+ <KEYWORD2>LimitRequestBody</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFields</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFieldsize</KEYWORD2>\r
+ <KEYWORD2>LimitRequestLine</KEYWORD2>\r
+ <KEYWORD2>LimitXMLRequestBody</KEYWORD2>\r
+ <KEYWORD2>Listen</KEYWORD2>\r
+ <KEYWORD2>ListenBacklog</KEYWORD2>\r
+ <KEYWORD2>LoadFile</KEYWORD2>\r
+ <KEYWORD2>LoadModule</KEYWORD2>\r
+ <KEYWORD2>LockFile</KEYWORD2>\r
+ <KEYWORD2>LogFormat</KEYWORD2>\r
+ <KEYWORD2>LogLevel</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectCount</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxStreamingBuffer</KEYWORD2>\r
+ <KEYWORD2>MCacheMinObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheRemovalAlgorithm</KEYWORD2>\r
+ <KEYWORD2>MCacheSize</KEYWORD2>\r
+ <KEYWORD2>MMapFile</KEYWORD2>\r
+ <KEYWORD2>MaxClients</KEYWORD2>\r
+ <KEYWORD2>MaxKeepAliveRequests</KEYWORD2>\r
+ <KEYWORD2>MaxMemFree</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerChild</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerThread</KEYWORD2>\r
+ <KEYWORD2>MaxSpareServers</KEYWORD2>\r
+ <KEYWORD2>MaxSpareThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>MetaDir</KEYWORD2>\r
+ <KEYWORD2>MetaFiles</KEYWORD2>\r
+ <KEYWORD2>MetaSuffix</KEYWORD2>\r
+ <KEYWORD2>MimeMagicFile</KEYWORD2>\r
+ <KEYWORD2>MinSpareServers</KEYWORD2>\r
+ <KEYWORD2>MinSpareThreads</KEYWORD2>\r
+ <KEYWORD2>ModMimeUsePathInfo</KEYWORD2>\r
+ <KEYWORD2>MultiviewsMatch</KEYWORD2>\r
+ <KEYWORD2>NWSSLTrustedCerts</KEYWORD2>\r
+ <KEYWORD2>NameVirtualHost</KEYWORD2>\r
+ <KEYWORD2>NoProxy</KEYWORD2>\r
+ <KEYWORD2>NumServers</KEYWORD2>\r
+ <KEYWORD2>Options</KEYWORD2>\r
+ <KEYWORD2>Order</KEYWORD2>\r
+ <KEYWORD2>PassEnv</KEYWORD2>\r
+ <KEYWORD2>PidFile</KEYWORD2>\r
+ <KEYWORD2>ProtocolEcho</KEYWORD2>\r
+ <KEYWORD2>ProxyBadHeader</KEYWORD2>\r
+ <KEYWORD2>ProxyBlock</KEYWORD2>\r
+ <KEYWORD2>ProxyDomain</KEYWORD2>\r
+ <KEYWORD2>ProxyErrorOverride</KEYWORD2>\r
+ <KEYWORD2>ProxyIOBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyMaxForwards</KEYWORD2>\r
+ <KEYWORD2>ProxyPass</KEYWORD2>\r
+ <KEYWORD2>ProxyPassReverse</KEYWORD2>\r
+ <KEYWORD2>ProxyPreserveHost</KEYWORD2>\r
+ <KEYWORD2>ProxyReceiveBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyRemote</KEYWORD2>\r
+ <KEYWORD2>ProxyRemoteMatch</KEYWORD2>\r
+ <KEYWORD2>ProxyRequests</KEYWORD2>\r
+ <KEYWORD2>ProxyTimeout</KEYWORD2>\r
+ <KEYWORD2>ProxyVia</KEYWORD2>\r
+ <KEYWORD2>RLimitCPU</KEYWORD2>\r
+ <KEYWORD2>RLimitMEM</KEYWORD2>\r
+ <KEYWORD2>RLimitNPROC</KEYWORD2>\r
+ <KEYWORD2>ReadmeName</KEYWORD2>\r
+ <KEYWORD2>Redirect</KEYWORD2>\r
+ <KEYWORD2>RedirectMatch</KEYWORD2>\r
+ <KEYWORD2>RedirectPermanent</KEYWORD2>\r
+ <KEYWORD2>RedirectTemp</KEYWORD2>\r
+ <KEYWORD2>RemoveCharset</KEYWORD2>\r
+ <KEYWORD2>RemoveEncoding</KEYWORD2>\r
+ <KEYWORD2>RemoveHandler</KEYWORD2>\r
+ <KEYWORD2>RemoveInputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveLanguage</KEYWORD2>\r
+ <KEYWORD2>RemoveOutputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveType</KEYWORD2>\r
+ <KEYWORD2>RequestHeader</KEYWORD2>\r
+ <KEYWORD2>Require</KEYWORD2>\r
+ <KEYWORD2>RewriteBase</KEYWORD2>\r
+ <KEYWORD2>RewriteCond</KEYWORD2>\r
+ <KEYWORD2>RewriteEngine</KEYWORD2>\r
+ <KEYWORD2>RewriteLock</KEYWORD2>\r
+ <KEYWORD2>RewriteLog</KEYWORD2>\r
+ <KEYWORD2>RewriteLogLevel</KEYWORD2>\r
+ <KEYWORD2>RewriteMap</KEYWORD2>\r
+ <KEYWORD2>RewriteOptions</KEYWORD2>\r
+ <KEYWORD2>RewriteRule</KEYWORD2>\r
+ <KEYWORD2>SSIEndTag</KEYWORD2>\r
+ <KEYWORD2>SSIErrorMsg</KEYWORD2>\r
+ <KEYWORD2>SSIStartTag</KEYWORD2>\r
+ <KEYWORD2>SSITimeFormat</KEYWORD2>\r
+ <KEYWORD2>SSIUndefinedEcho</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateChainFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateKeyFile</KEYWORD2>\r
+ <KEYWORD2>SSLCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLEngine</KEYWORD2>\r
+ <KEYWORD2>SSLMutex</KEYWORD2>\r
+ <KEYWORD2>SSLOptions</KEYWORD2>\r
+ <KEYWORD2>SSLPassPhraseDialog</KEYWORD2>\r
+ <KEYWORD2>SSLProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLProxyEngine</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerify</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>SSLRandomSeed</KEYWORD2>\r
+ <KEYWORD2>SSLRequire</KEYWORD2>\r
+ <KEYWORD2>SSLRequireSSL</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCache</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCacheTimeout</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyClient</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>Satisfy</KEYWORD2>\r
+ <KEYWORD2>ScoreBoardFile</KEYWORD2>\r
+ <KEYWORD2>Script</KEYWORD2>\r
+ <KEYWORD2>ScriptAlias</KEYWORD2>\r
+ <KEYWORD2>ScriptAliasMatch</KEYWORD2>\r
+ <KEYWORD2>ScriptInterpreterSource</KEYWORD2>\r
+ <KEYWORD2>ScriptLog</KEYWORD2>\r
+ <KEYWORD2>ScriptLogBuffer</KEYWORD2>\r
+ <KEYWORD2>ScriptLogLength</KEYWORD2>\r
+ <KEYWORD2>ScriptSock</KEYWORD2>\r
+ <KEYWORD2>SecureListen</KEYWORD2>\r
+ <KEYWORD2>SendBufferSize</KEYWORD2>\r
+ <KEYWORD2>ServerAdmin</KEYWORD2>\r
+ <KEYWORD2>ServerLimit</KEYWORD2>\r
+ <KEYWORD2>ServerName</KEYWORD2>\r
+ <KEYWORD2>ServerRoot</KEYWORD2>\r
+ <KEYWORD2>ServerSignature</KEYWORD2>\r
+ <KEYWORD2>ServerTokens</KEYWORD2>\r
+ <KEYWORD2>SetEnv</KEYWORD2>\r
+ <KEYWORD2>SetEnvIf</KEYWORD2>\r
+ <KEYWORD2>SetEnvIfNoCase</KEYWORD2>\r
+ <KEYWORD2>SetHandler</KEYWORD2>\r
+ <KEYWORD2>SetInputFilter</KEYWORD2>\r
+ <KEYWORD2>SetOutputFilter</KEYWORD2>\r
+ <KEYWORD2>StartServers</KEYWORD2>\r
+ <KEYWORD2>StartThreads</KEYWORD2>\r
+ <KEYWORD2>SuexecUserGroup</KEYWORD2>\r
+ <KEYWORD2>ThreadLimit</KEYWORD2>\r
+ <KEYWORD2>ThreadStackSize</KEYWORD2>\r
+ <KEYWORD2>ThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>TimeOut</KEYWORD2>\r
+ <KEYWORD2>TransferLog</KEYWORD2>\r
+ <KEYWORD2>TypesConfig</KEYWORD2>\r
+ <KEYWORD2>UnsetEnv</KEYWORD2>\r
+ <KEYWORD2>UseCanonicalName</KEYWORD2>\r
+ <KEYWORD2>User</KEYWORD2>\r
+ <KEYWORD2>UserDir</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRoot</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRootIP</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAlias</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAliasIP</KEYWORD2>\r
+ <KEYWORD2>XBitHack</KEYWORD2>\r
+\r
+ <!-- Apache 1.x -->\r
+ <KEYWORD4>AddModule</KEYWORD4>\r
+ <KEYWORD4>ClearModuleList</KEYWORD4>\r
+\r
+ <!-- Subversion directives -->\r
+ <KEYWORD3>SVNPath</KEYWORD3>\r
+ <KEYWORD3>SVNParentPath</KEYWORD3>\r
+ <KEYWORD3>SVNIndexXSLT</KEYWORD3>\r
+\r
+ <!-- mod_python directives -->\r
+ <KEYWORD3>PythonHandler</KEYWORD3>\r
+ <KEYWORD3>PythonDebug</KEYWORD3>\r
+\r
+ <LITERAL2>All</LITERAL2>\r
+ <LITERAL2>ExecCGI</LITERAL2>\r
+ <LITERAL2>FollowSymLinks</LITERAL2>\r
+ <LITERAL2>Includes</LITERAL2>\r
+ <LITERAL2>IncludesNOEXEC</LITERAL2>\r
+ <LITERAL2>Indexes</LITERAL2>\r
+ <LITERAL2>MultiViews</LITERAL2>\r
+ <LITERAL2>None</LITERAL2>\r
+ <LITERAL2>Off</LITERAL2>\r
+ <LITERAL2>On</LITERAL2>\r
+ <LITERAL2>SymLinksIfOwnerMatch</LITERAL2>\r
+ <LITERAL2>from</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="VHOST" DEFAULT="NULL" ESCAPE="\" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="DIRECTIVE">\r
+ <BEGIN><![CDATA[<(\w+)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>AcceptMutex</KEYWORD2>\r
+ <KEYWORD2>AcceptPathInfo</KEYWORD2>\r
+ <KEYWORD2>AccessFileName</KEYWORD2>\r
+ <KEYWORD2>Action</KEYWORD2>\r
+ <KEYWORD2>AddAlt</KEYWORD2>\r
+ <KEYWORD2>AddAltByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddAltByType</KEYWORD2>\r
+ <KEYWORD2>AddCharset</KEYWORD2>\r
+ <KEYWORD2>AddDefaultCharset</KEYWORD2>\r
+ <KEYWORD2>AddDescription</KEYWORD2>\r
+ <KEYWORD2>AddEncoding</KEYWORD2>\r
+ <KEYWORD2>AddHandler</KEYWORD2>\r
+ <KEYWORD2>AddIcon</KEYWORD2>\r
+ <KEYWORD2>AddIconByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddIconByType</KEYWORD2>\r
+ <KEYWORD2>AddInputFilter</KEYWORD2>\r
+ <KEYWORD2>AddLanguage</KEYWORD2>\r
+ <KEYWORD2>AddModuleInfo</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilter</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilterByType</KEYWORD2>\r
+ <KEYWORD2>AddType</KEYWORD2>\r
+ <KEYWORD2>Alias</KEYWORD2>\r
+ <KEYWORD2>AliasMatch</KEYWORD2>\r
+ <KEYWORD2>AllowCONNECT</KEYWORD2>\r
+ <KEYWORD2>AllowEncodedSlashes</KEYWORD2>\r
+ <KEYWORD2>AssignUserID</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNcCheck</KEYWORD2>\r
+ <KEYWORD2>AuthDigestShmemSize</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPCharsetConfig</KEYWORD2>\r
+ <KEYWORD2>BS2000Account</KEYWORD2>\r
+ <KEYWORD2>BrowserMatch</KEYWORD2>\r
+ <KEYWORD2>BrowserMatchNoCase</KEYWORD2>\r
+ <KEYWORD2>CacheDefaultExpire</KEYWORD2>\r
+ <KEYWORD2>CacheDirLength</KEYWORD2>\r
+ <KEYWORD2>CacheDirLevels</KEYWORD2>\r
+ <KEYWORD2>CacheDisable</KEYWORD2>\r
+ <KEYWORD2>CacheEnable</KEYWORD2>\r
+ <KEYWORD2>CacheExpiryCheck</KEYWORD2>\r
+ <KEYWORD2>CacheFile</KEYWORD2>\r
+ <KEYWORD2>CacheForceCompletion</KEYWORD2>\r
+ <KEYWORD2>CacheGcClean</KEYWORD2>\r
+ <KEYWORD2>CacheGcDaily</KEYWORD2>\r
+ <KEYWORD2>CacheGcInterval</KEYWORD2>\r
+ <KEYWORD2>CacheGcMemUsage</KEYWORD2>\r
+ <KEYWORD2>CacheGcUnused</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreCacheControl</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreNoLastMod</KEYWORD2>\r
+ <KEYWORD2>CacheLastModifiedFactor</KEYWORD2>\r
+ <KEYWORD2>CacheMaxExpire</KEYWORD2>\r
+ <KEYWORD2>CacheMaxFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheMinFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheNegotiatedDocs</KEYWORD2>\r
+ <KEYWORD2>CacheRoot</KEYWORD2>\r
+ <KEYWORD2>CacheSize</KEYWORD2>\r
+ <KEYWORD2>CacheTimeMargin</KEYWORD2>\r
+ <KEYWORD2>CharsetDefault</KEYWORD2>\r
+ <KEYWORD2>CharsetOptions</KEYWORD2>\r
+ <KEYWORD2>CharsetSourceEnc</KEYWORD2>\r
+ <KEYWORD2>CheckSpelling</KEYWORD2>\r
+ <KEYWORD2>ChildPerUserID</KEYWORD2>\r
+ <KEYWORD2>ContentDigest</KEYWORD2>\r
+ <KEYWORD2>CookieDomain</KEYWORD2>\r
+ <KEYWORD2>CookieExpires</KEYWORD2>\r
+ <KEYWORD2>CookieLog</KEYWORD2>\r
+ <KEYWORD2>CookieName</KEYWORD2>\r
+ <KEYWORD2>CookieStyle</KEYWORD2>\r
+ <KEYWORD2>CookieTracking</KEYWORD2>\r
+ <KEYWORD2>CoreDumpDirectory</KEYWORD2>\r
+ <KEYWORD2>CustomLog</KEYWORD2>\r
+ <KEYWORD2>DavDepthInfinity</KEYWORD2>\r
+ <KEYWORD2>DavLockDB</KEYWORD2>\r
+ <KEYWORD2>DavMinTimeout</KEYWORD2>\r
+ <KEYWORD2>DefaultIcon</KEYWORD2>\r
+ <KEYWORD2>DefaultLanguage</KEYWORD2>\r
+ <KEYWORD2>DefaultType</KEYWORD2>\r
+ <KEYWORD2>DeflateBufferSize</KEYWORD2>\r
+ <KEYWORD2>DeflateCompressionLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateFilterNote</KEYWORD2>\r
+ <KEYWORD2>DeflateMemLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateWindowSize</KEYWORD2>\r
+ <KEYWORD2>DirectoryIndex</KEYWORD2>\r
+ <KEYWORD1>DirectorySlash</KEYWORD1>\r
+ <KEYWORD2>DocumentRoot</KEYWORD2>\r
+ <KEYWORD2>EnableMMAP</KEYWORD2>\r
+ <KEYWORD2>EnableSendfile</KEYWORD2>\r
+ <KEYWORD2>ErrorDocument</KEYWORD2>\r
+ <KEYWORD2>ErrorLog</KEYWORD2>\r
+ <KEYWORD2>Example</KEYWORD2>\r
+ <KEYWORD2>ExpiresActive</KEYWORD2>\r
+ <KEYWORD2>ExpiresByType</KEYWORD2>\r
+ <KEYWORD2>ExpiresDefault</KEYWORD2>\r
+ <KEYWORD2>ExtFilterDefine</KEYWORD2>\r
+ <KEYWORD2>ExtendedStatus</KEYWORD2>\r
+ <KEYWORD2>FileETag</KEYWORD2>\r
+ <KEYWORD2>ForceLanguagePriority</KEYWORD2>\r
+ <KEYWORD2>ForensicLog</KEYWORD2>\r
+ <KEYWORD2>Group</KEYWORD2>\r
+ <KEYWORD2>Header</KEYWORD2>\r
+ <KEYWORD2>HeaderName</KEYWORD2>\r
+ <KEYWORD2>HostnameLookups</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToErrors</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToQuery</KEYWORD2>\r
+ <KEYWORD2>ISAPICacheFile</KEYWORD2>\r
+ <KEYWORD2>ISAPIFakeAsync</KEYWORD2>\r
+ <KEYWORD2>ISAPILogNotSupported</KEYWORD2>\r
+ <KEYWORD2>ISAPIReadAheadBuffer</KEYWORD2>\r
+ <KEYWORD2>IdentityCheck</KEYWORD2>\r
+ <KEYWORD2>ImapBase</KEYWORD2>\r
+ <KEYWORD2>ImapDefault</KEYWORD2>\r
+ <KEYWORD2>ImapMenu</KEYWORD2>\r
+ <KEYWORD2>Include</KEYWORD2>\r
+ <KEYWORD2>IndexIgnore</KEYWORD2>\r
+ <KEYWORD2>IndexOptions</KEYWORD2>\r
+ <KEYWORD2>IndexOrderDefault</KEYWORD2>\r
+ <KEYWORD2>JkMount</KEYWORD2>\r
+ <KEYWORD2>KeepAlive</KEYWORD2>\r
+ <KEYWORD2>KeepAliveTimeout</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPSharedCacheSize</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCA</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCAType</KEYWORD2>\r
+ <KEYWORD2>LanguagePriority</KEYWORD2>\r
+ <KEYWORD2>LimitInternalRecursion</KEYWORD2>\r
+ <KEYWORD2>LimitRequestBody</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFields</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFieldsize</KEYWORD2>\r
+ <KEYWORD2>LimitRequestLine</KEYWORD2>\r
+ <KEYWORD2>LimitXMLRequestBody</KEYWORD2>\r
+ <KEYWORD2>Listen</KEYWORD2>\r
+ <KEYWORD2>ListenBacklog</KEYWORD2>\r
+ <KEYWORD2>LoadFile</KEYWORD2>\r
+ <KEYWORD2>LoadModule</KEYWORD2>\r
+ <KEYWORD2>LockFile</KEYWORD2>\r
+ <KEYWORD2>LogFormat</KEYWORD2>\r
+ <KEYWORD2>LogLevel</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectCount</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxStreamingBuffer</KEYWORD2>\r
+ <KEYWORD2>MCacheMinObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheRemovalAlgorithm</KEYWORD2>\r
+ <KEYWORD2>MCacheSize</KEYWORD2>\r
+ <KEYWORD2>MMapFile</KEYWORD2>\r
+ <KEYWORD2>MaxClients</KEYWORD2>\r
+ <KEYWORD2>MaxKeepAliveRequests</KEYWORD2>\r
+ <KEYWORD2>MaxMemFree</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerChild</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerThread</KEYWORD2>\r
+ <KEYWORD2>MaxSpareServers</KEYWORD2>\r
+ <KEYWORD2>MaxSpareThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>MetaDir</KEYWORD2>\r
+ <KEYWORD2>MetaFiles</KEYWORD2>\r
+ <KEYWORD2>MetaSuffix</KEYWORD2>\r
+ <KEYWORD2>MimeMagicFile</KEYWORD2>\r
+ <KEYWORD2>MinSpareServers</KEYWORD2>\r
+ <KEYWORD2>MinSpareThreads</KEYWORD2>\r
+ <KEYWORD2>MultiviewsMatch</KEYWORD2>\r
+ <KEYWORD2>NWSSLTrustedCerts</KEYWORD2>\r
+ <KEYWORD2>NameVirtualHost</KEYWORD2>\r
+ <KEYWORD2>NoProxy</KEYWORD2>\r
+ <KEYWORD2>NumServers</KEYWORD2>\r
+ <KEYWORD2>Options</KEYWORD2>\r
+ <KEYWORD2>PassEnv</KEYWORD2>\r
+ <KEYWORD2>PidFile</KEYWORD2>\r
+ <KEYWORD2>ProtocolEcho</KEYWORD2>\r
+ <KEYWORD2>ProxyBadHeader</KEYWORD2>\r
+ <KEYWORD2>ProxyBlock</KEYWORD2>\r
+ <KEYWORD2>ProxyDomain</KEYWORD2>\r
+ <KEYWORD2>ProxyErrorOverride</KEYWORD2>\r
+ <KEYWORD2>ProxyIOBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyMaxForwards</KEYWORD2>\r
+ <KEYWORD2>ProxyPass</KEYWORD2>\r
+ <KEYWORD2>ProxyPassReverse</KEYWORD2>\r
+ <KEYWORD2>ProxyPreserveHost</KEYWORD2>\r
+ <KEYWORD2>ProxyReceiveBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyRemote</KEYWORD2>\r
+ <KEYWORD2>ProxyRemoteMatch</KEYWORD2>\r
+ <KEYWORD2>ProxyRequests</KEYWORD2>\r
+ <KEYWORD2>ProxyTimeout</KEYWORD2>\r
+ <KEYWORD2>ProxyVia</KEYWORD2>\r
+ <KEYWORD2>RLimitCPU</KEYWORD2>\r
+ <KEYWORD2>RLimitMEM</KEYWORD2>\r
+ <KEYWORD2>RLimitNPROC</KEYWORD2>\r
+ <KEYWORD2>ReadmeName</KEYWORD2>\r
+ <KEYWORD2>Redirect</KEYWORD2>\r
+ <KEYWORD2>RedirectMatch</KEYWORD2>\r
+ <KEYWORD2>RedirectPermanent</KEYWORD2>\r
+ <KEYWORD2>RedirectTemp</KEYWORD2>\r
+ <KEYWORD2>RemoveCharset</KEYWORD2>\r
+ <KEYWORD2>RemoveEncoding</KEYWORD2>\r
+ <KEYWORD2>RemoveHandler</KEYWORD2>\r
+ <KEYWORD2>RemoveInputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveLanguage</KEYWORD2>\r
+ <KEYWORD2>RemoveOutputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveType</KEYWORD2>\r
+ <KEYWORD2>RequestHeader</KEYWORD2>\r
+ <KEYWORD2>RewriteBase</KEYWORD2>\r
+ <KEYWORD2>RewriteCond</KEYWORD2>\r
+ <KEYWORD2>RewriteEngine</KEYWORD2>\r
+ <KEYWORD2>RewriteLock</KEYWORD2>\r
+ <KEYWORD2>RewriteLog</KEYWORD2>\r
+ <KEYWORD2>RewriteLogLevel</KEYWORD2>\r
+ <KEYWORD2>RewriteMap</KEYWORD2>\r
+ <KEYWORD2>RewriteOptions</KEYWORD2>\r
+ <KEYWORD2>RewriteRule</KEYWORD2>\r
+ <KEYWORD2>SSIEndTag</KEYWORD2>\r
+ <KEYWORD2>SSIErrorMsg</KEYWORD2>\r
+ <KEYWORD2>SSIStartTag</KEYWORD2>\r
+ <KEYWORD2>SSITimeFormat</KEYWORD2>\r
+ <KEYWORD2>SSIUndefinedEcho</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateChainFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateKeyFile</KEYWORD2>\r
+ <KEYWORD2>SSLCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLEngine</KEYWORD2>\r
+ <KEYWORD2>SSLMutex</KEYWORD2>\r
+ <KEYWORD2>SSLOptions</KEYWORD2>\r
+ <KEYWORD2>SSLPassPhraseDialog</KEYWORD2>\r
+ <KEYWORD2>SSLProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLProxyEngine</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerify</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>SSLRandomSeed</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCache</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCacheTimeout</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyClient</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>ScoreBoardFile</KEYWORD2>\r
+ <KEYWORD2>Script</KEYWORD2>\r
+ <KEYWORD2>ScriptAlias</KEYWORD2>\r
+ <KEYWORD2>ScriptAliasMatch</KEYWORD2>\r
+ <KEYWORD2>ScriptInterpreterSource</KEYWORD2>\r
+ <KEYWORD2>ScriptLog</KEYWORD2>\r
+ <KEYWORD2>ScriptLogBuffer</KEYWORD2>\r
+ <KEYWORD2>ScriptLogLength</KEYWORD2>\r
+ <KEYWORD2>ScriptSock</KEYWORD2>\r
+ <KEYWORD2>SecureListen</KEYWORD2>\r
+ <KEYWORD2>SendBufferSize</KEYWORD2>\r
+ <KEYWORD2>ServerAdmin</KEYWORD2>\r
+ <KEYWORD2>ServerAlias</KEYWORD2>\r
+ <KEYWORD2>ServerLimit</KEYWORD2>\r
+ <KEYWORD2>ServerName</KEYWORD2>\r
+ <KEYWORD2>ServerPath</KEYWORD2>\r
+ <KEYWORD2>ServerRoot</KEYWORD2>\r
+ <KEYWORD2>ServerSignature</KEYWORD2>\r
+ <KEYWORD2>ServerTokens</KEYWORD2>\r
+ <KEYWORD2>SetEnv</KEYWORD2>\r
+ <KEYWORD2>SetEnvIf</KEYWORD2>\r
+ <KEYWORD2>SetEnvIfNoCase</KEYWORD2>\r
+ <KEYWORD2>SetHandler</KEYWORD2>\r
+ <KEYWORD2>SetInputFilter</KEYWORD2>\r
+ <KEYWORD2>SetOutputFilter</KEYWORD2>\r
+ <KEYWORD2>StartServers</KEYWORD2>\r
+ <KEYWORD2>StartThreads</KEYWORD2>\r
+ <KEYWORD2>SuexecUserGroup</KEYWORD2>\r
+ <KEYWORD2>ThreadLimit</KEYWORD2>\r
+ <KEYWORD2>ThreadStackSize</KEYWORD2>\r
+ <KEYWORD2>ThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>TimeOut</KEYWORD2>\r
+ <KEYWORD2>TransferLog</KEYWORD2>\r
+ <KEYWORD2>TypesConfig</KEYWORD2>\r
+ <KEYWORD2>UnsetEnv</KEYWORD2>\r
+ <KEYWORD2>UseCanonicalName</KEYWORD2>\r
+ <KEYWORD2>User</KEYWORD2>\r
+ <KEYWORD2>UserDir</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRoot</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRootIP</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAlias</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAliasIP</KEYWORD2>\r
+ <KEYWORD2>XBitHack</KEYWORD2>\r
+\r
+ <LITERAL2>Off</LITERAL2>\r
+ <LITERAL2>On</LITERAL2>\r
+ <LITERAL2>None</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- \r
+\r
+ Version 0.9.8 - generated by Randolf Mock on 11/22/2003 \r
+ Randolf.Mock@siemens.com\r
+ \r
+ <KEYWORD1>: ANSYS commands\r
+ <KEYWORD2>: abbreviated *get commands\r
+ <KEYWORD3>: ANSYS command options\r
+ \r
+-->\r
+\r
+<!-- The keywords and functions defined here are those of ANSYS 5.7 -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="!" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- labels - eg :test -->\r
+ <EOL_SPAN TYPE="LABEL" AT_LINE_START="TRUE">:</EOL_SPAN>\r
+\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>\r
+\r
+ <!-- literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+<!-- Special treatment of the ANSYS commands\r
+ beginning with a '/' or '*' character --> \r
+\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ABBR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ABB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*AFUN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*AFU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ASK</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFCLOS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFOPEN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFWRITE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CFW</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CREATE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CYCLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*CYC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*DEL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*DIM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*DO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ELSEIF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ELSE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ENDDO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ENDIF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*END</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*EVAL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*EVA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*EXIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*EXI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*GET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*GO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*IF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*LIST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*LIS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MFOURI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MFO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MFUN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MFU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MOONEY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MOO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MOPER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MOP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*MSG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*REPEAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*REP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*SET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*STATUS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*STA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*TREAD</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*TRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ULIB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*ULI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*USE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VABS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VAB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VCOL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VCO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VCUM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VCU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VEDIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VED</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFACT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFILL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFUN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VFU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VGET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VITRP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VLEN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VMASK</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VMA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VOPER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VOP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VPLOT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VPL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VPUT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VPU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VREAD</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VSCFUN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VSC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VSTAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VWRITE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">*VWR</SEQ>\r
+ \r
+ \r
+\r
+\r
+ \r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANFILE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANGLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANNOT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANUM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ANU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ASSIGN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ASS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AUTO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AUT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AUX15</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AUX2</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AUX</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AXLAB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/AXL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/BATCH</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/BAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLABEL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLEAR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLOG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CLO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CMAP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CMA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/COLOR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/COL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/COM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CONFIG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CONTOUR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CON</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/COPY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/COP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CPLANE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CPL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CTYPE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CTY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CVAL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/CVA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DELETE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DEL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DEVDISP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DEVICE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DEV</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DIST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DIS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DSCALE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DSC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DV3D</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/DV3</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EDGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EDG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EFACET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EFA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EOF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ERASE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ERA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ESHAPE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ESH</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EXIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EXI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EXPAND</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/EXP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FACET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FAC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FDELE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FDE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FILNAME</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FIL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FOCUS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FOC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FORMAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FOR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FTYPE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/FTY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GCMD</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GCM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GCOLUMN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GCO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GFILE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GFI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GFORMAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GFO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GLINE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GLI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GMARKER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GMA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GOLIST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GOL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GOPR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GOP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRAPHICS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRESUME</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRID</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GROPT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRTYP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GRT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GSAVE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GSA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GTHK</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GTH</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GTYPE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/GTY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/HEADER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/HEA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/INPUT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/INP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LARC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LAR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LIGHT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LIG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LINE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LIN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LSPEC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LSP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LSYMBOL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/LSY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MENU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MEN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MPLIB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MPL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MREP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MSTART</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/MST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NERR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOERASE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOLIST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOPR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NORMAL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NOR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NUMBER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/NUM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/OPT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/OUTPUT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/OUt</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PAGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PAG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PBC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PBF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PCIRCLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PCI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PCOPY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PCO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PLOPTS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PLO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PMACRO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PMA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PMETH</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PME</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PMORE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PMO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PNUM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PNU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/POLYGON</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/POL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/POST26</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/POST1</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/POS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PREP7</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PRE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSEARCH</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSF</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSPEC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSTATUS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSYMB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PSY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PWEDGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/PWE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/QUIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/QUI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RATIO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RAT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RENAME</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/REN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/REPLOT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/REP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RESET</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RES</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RGB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RUNST</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/RUN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SECLIB</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SEC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SEG</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHADE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHOWDISP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHOW</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHRINK</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SHR</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SOLU</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SOL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SSCALE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SSC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/STATUS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/STA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/STITLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/STI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SYP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/SYS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TITLE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TLABEL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TLA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TRIAD</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TRI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TRLCY</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TRL</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TSPEC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TSP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TYPE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/TYP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UCMD</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UCM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UIS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UNITS</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/UNI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/USER</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/USE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VCONE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VCO</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VIEW</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VIE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VSCALE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VSC</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/VUP</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/WAIT</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/WAI</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/WINDOW</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/WIN</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/XRANGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/XRA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/YRANGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/YRA</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ZOOM</SEQ>\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">/ZOO</SEQ>\r
+\r
+\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <!-- *msg command: variable formats -->\r
+ <SEQ TYPE="KEYWORD2">%C</SEQ> <!-- alphamuneric format -->\r
+ <SEQ TYPE="KEYWORD2">%G</SEQ> <!-- double precision format -->\r
+ <SEQ TYPE="KEYWORD2">%I</SEQ> <!-- integer format -->\r
+ <SEQ TYPE="KEYWORD2">%/</SEQ> <!-- line break -->\r
+ \r
+ <!-- variables -->\r
+ <SPAN TYPE="FUNCTION" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%</BEGIN>\r
+ <END>%</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+\r
+<!-- ANSYS Commands (incl. abbreviated version) -->\r
+\r
+ <KEYWORD1>A</KEYWORD1>\r
+ <KEYWORD1>AADD</KEYWORD1>\r
+ <KEYWORD1>AADD</KEYWORD1>\r
+ <KEYWORD1>AATT</KEYWORD1>\r
+ <KEYWORD1>AATT</KEYWORD1>\r
+ <KEYWORD1>ABBR</KEYWORD1>\r
+ <KEYWORD1>ABBRES</KEYWORD1>\r
+ <KEYWORD1>ABBS</KEYWORD1>\r
+ <KEYWORD1>ABBSAV</KEYWORD1>\r
+ <KEYWORD1>ABS</KEYWORD1>\r
+ <KEYWORD1>ACCA</KEYWORD1>\r
+ <KEYWORD1>ACCAT</KEYWORD1>\r
+ <KEYWORD1>ACEL</KEYWORD1>\r
+ <KEYWORD1>ACEL</KEYWORD1>\r
+ <KEYWORD1>ACLE</KEYWORD1>\r
+ <KEYWORD1>ACLEAR</KEYWORD1>\r
+ <KEYWORD1>ADAP</KEYWORD1>\r
+ <KEYWORD1>ADAPT</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ADDA</KEYWORD1>\r
+ <KEYWORD1>ADDAM</KEYWORD1>\r
+ <KEYWORD1>ADEL</KEYWORD1>\r
+ <KEYWORD1>ADELE</KEYWORD1>\r
+ <KEYWORD1>ADGL</KEYWORD1>\r
+ <KEYWORD1>ADGL</KEYWORD1>\r
+ <KEYWORD1>ADRA</KEYWORD1>\r
+ <KEYWORD1>ADRAG</KEYWORD1>\r
+ <KEYWORD1>AFIL</KEYWORD1>\r
+ <KEYWORD1>AFILLT</KEYWORD1>\r
+ <KEYWORD1>AFLI</KEYWORD1>\r
+ <KEYWORD1>AFLIST</KEYWORD1>\r
+ <KEYWORD1>AFSU</KEYWORD1>\r
+ <KEYWORD1>AFSURF</KEYWORD1>\r
+ <KEYWORD1>AGEN</KEYWORD1>\r
+ <KEYWORD1>AGEN</KEYWORD1>\r
+ <KEYWORD1>AGLU</KEYWORD1>\r
+ <KEYWORD1>AGLUE</KEYWORD1>\r
+ <KEYWORD1>AINA</KEYWORD1>\r
+ <KEYWORD1>AINA</KEYWORD1>\r
+ <KEYWORD1>AINP</KEYWORD1>\r
+ <KEYWORD1>AINP</KEYWORD1>\r
+ <KEYWORD1>AINV</KEYWORD1>\r
+ <KEYWORD1>AINV</KEYWORD1>\r
+ <KEYWORD1>AL</KEYWORD1>\r
+ <KEYWORD1>ALIS</KEYWORD1>\r
+ <KEYWORD1>ALIST</KEYWORD1>\r
+ <KEYWORD1>ALLS</KEYWORD1>\r
+ <KEYWORD1>ALLSEL</KEYWORD1>\r
+ <KEYWORD1>ALPF</KEYWORD1>\r
+ <KEYWORD1>ALPFILL</KEYWORD1>\r
+ <KEYWORD1>ALPH</KEYWORD1>\r
+ <KEYWORD1>ALPHAD</KEYWORD1>\r
+ <KEYWORD1>AMAP</KEYWORD1>\r
+ <KEYWORD1>AMAP</KEYWORD1>\r
+ <KEYWORD1>AMES</KEYWORD1>\r
+ <KEYWORD1>AMESH</KEYWORD1>\r
+ <KEYWORD1>ANCN</KEYWORD1>\r
+ <KEYWORD1>ANCNTR</KEYWORD1>\r
+ <KEYWORD1>ANCU</KEYWORD1>\r
+ <KEYWORD1>ANCUT</KEYWORD1>\r
+ <KEYWORD1>ANDA</KEYWORD1>\r
+ <KEYWORD1>ANDATA</KEYWORD1>\r
+ <KEYWORD1>ANDS</KEYWORD1>\r
+ <KEYWORD1>ANDSCL</KEYWORD1>\r
+ <KEYWORD1>ANDY</KEYWORD1>\r
+ <KEYWORD1>ANDYNA</KEYWORD1>\r
+ <KEYWORD1>ANFL</KEYWORD1>\r
+ <KEYWORD1>ANFLOW</KEYWORD1>\r
+ <KEYWORD1>ANIM</KEYWORD1>\r
+ <KEYWORD1>ANIM</KEYWORD1>\r
+ <KEYWORD1>ANIS</KEYWORD1>\r
+ <KEYWORD1>ANISOS</KEYWORD1>\r
+ <KEYWORD1>ANMO</KEYWORD1>\r
+ <KEYWORD1>ANMODE</KEYWORD1>\r
+ <KEYWORD1>ANOR</KEYWORD1>\r
+ <KEYWORD1>ANORM</KEYWORD1>\r
+ <KEYWORD1>ANTI</KEYWORD1>\r
+ <KEYWORD1>ANTIME</KEYWORD1>\r
+ <KEYWORD1>ANTY</KEYWORD1>\r
+ <KEYWORD1>ANTYPE</KEYWORD1>\r
+ <KEYWORD1>AOFF</KEYWORD1>\r
+ <KEYWORD1>AOFFST</KEYWORD1>\r
+ <KEYWORD1>AOVL</KEYWORD1>\r
+ <KEYWORD1>AOVLAP</KEYWORD1>\r
+ <KEYWORD1>APLO</KEYWORD1>\r
+ <KEYWORD1>APLOT</KEYWORD1>\r
+ <KEYWORD1>APPE</KEYWORD1>\r
+ <KEYWORD1>APPEND</KEYWORD1>\r
+ <KEYWORD1>APTN</KEYWORD1>\r
+ <KEYWORD1>APTN</KEYWORD1>\r
+ <KEYWORD1>ARCL</KEYWORD1>\r
+ <KEYWORD1>ARCLEN</KEYWORD1>\r
+ <KEYWORD1>ARCO</KEYWORD1>\r
+ <KEYWORD1>ARCOLLAPSE</KEYWORD1>\r
+ <KEYWORD1>ARCT</KEYWORD1>\r
+ <KEYWORD1>ARCTRM</KEYWORD1>\r
+ <KEYWORD1>ARDE</KEYWORD1>\r
+ <KEYWORD1>ARDETACH</KEYWORD1>\r
+ <KEYWORD1>AREA</KEYWORD1>\r
+ <KEYWORD1>AREAS</KEYWORD1>\r
+ <KEYWORD1>AREF</KEYWORD1>\r
+ <KEYWORD1>AREFINE</KEYWORD1>\r
+ <KEYWORD1>AREV</KEYWORD1>\r
+ <KEYWORD1>AREVERSE</KEYWORD1>\r
+ <KEYWORD1>ARFI</KEYWORD1>\r
+ <KEYWORD1>ARFILL</KEYWORD1>\r
+ <KEYWORD1>ARME</KEYWORD1>\r
+ <KEYWORD1>ARMERGE</KEYWORD1>\r
+ <KEYWORD1>AROT</KEYWORD1>\r
+ <KEYWORD1>AROTAT</KEYWORD1>\r
+ <KEYWORD1>ARSC</KEYWORD1>\r
+ <KEYWORD1>ARSCALE</KEYWORD1>\r
+ <KEYWORD1>ARSP</KEYWORD1>\r
+ <KEYWORD1>ARSPLIT</KEYWORD1>\r
+ <KEYWORD1>ARSY</KEYWORD1>\r
+ <KEYWORD1>ARSYM</KEYWORD1>\r
+ <KEYWORD1>ASBA</KEYWORD1>\r
+ <KEYWORD1>ASBA</KEYWORD1>\r
+ <KEYWORD1>ASBL</KEYWORD1>\r
+ <KEYWORD1>ASBL</KEYWORD1>\r
+ <KEYWORD1>ASBV</KEYWORD1>\r
+ <KEYWORD1>ASBV</KEYWORD1>\r
+ <KEYWORD1>ASBW</KEYWORD1>\r
+ <KEYWORD1>ASBW</KEYWORD1>\r
+ <KEYWORD1>ASEL</KEYWORD1>\r
+ <KEYWORD1>ASEL</KEYWORD1>\r
+ <KEYWORD1>ASKI</KEYWORD1>\r
+ <KEYWORD1>ASKIN</KEYWORD1>\r
+ <KEYWORD1>ASLL</KEYWORD1>\r
+ <KEYWORD1>ASLL</KEYWORD1>\r
+ <KEYWORD1>ASLV</KEYWORD1>\r
+ <KEYWORD1>ASLV</KEYWORD1>\r
+ <KEYWORD1>ASUB</KEYWORD1>\r
+ <KEYWORD1>ASUB</KEYWORD1>\r
+ <KEYWORD1>ASUM</KEYWORD1>\r
+ <KEYWORD1>ASUM</KEYWORD1>\r
+ <KEYWORD1>ATAN</KEYWORD1>\r
+ <KEYWORD1>ATAN</KEYWORD1>\r
+ <KEYWORD1>ATRA</KEYWORD1>\r
+ <KEYWORD1>ATRAN</KEYWORD1>\r
+ <KEYWORD1>ATYP</KEYWORD1>\r
+ <KEYWORD1>ATYPE</KEYWORD1>\r
+ <KEYWORD1>AUTO</KEYWORD1>\r
+ <KEYWORD1>AUTOTS</KEYWORD1>\r
+ <KEYWORD1>AVPR</KEYWORD1>\r
+ <KEYWORD1>AVPRIN</KEYWORD1>\r
+ <KEYWORD1>AVRE</KEYWORD1>\r
+ <KEYWORD1>AVRES</KEYWORD1>\r
+ <KEYWORD1>BELL</KEYWORD1>\r
+ <KEYWORD1>BELLOW</KEYWORD1>\r
+ <KEYWORD1>BEND</KEYWORD1>\r
+ <KEYWORD1>BEND</KEYWORD1>\r
+ <KEYWORD1>BETA</KEYWORD1>\r
+ <KEYWORD1>BETAD</KEYWORD1>\r
+ <KEYWORD1>BF</KEYWORD1>\r
+ <KEYWORD1>BFA</KEYWORD1>\r
+ <KEYWORD1>BFAD</KEYWORD1>\r
+ <KEYWORD1>BFADELE</KEYWORD1>\r
+ <KEYWORD1>BFAL</KEYWORD1>\r
+ <KEYWORD1>BFALIST</KEYWORD1>\r
+ <KEYWORD1>BFCU</KEYWORD1>\r
+ <KEYWORD1>BFCUM</KEYWORD1>\r
+ <KEYWORD1>BFDE</KEYWORD1>\r
+ <KEYWORD1>BFDELE</KEYWORD1>\r
+ <KEYWORD1>BFE</KEYWORD1>\r
+ <KEYWORD1>BFEC</KEYWORD1>\r
+ <KEYWORD1>BFECUM</KEYWORD1>\r
+ <KEYWORD1>BFED</KEYWORD1>\r
+ <KEYWORD1>BFEDELE</KEYWORD1>\r
+ <KEYWORD1>BFEL</KEYWORD1>\r
+ <KEYWORD1>BFELIST</KEYWORD1>\r
+ <KEYWORD1>BFES</KEYWORD1>\r
+ <KEYWORD1>BFESCAL</KEYWORD1>\r
+ <KEYWORD1>BFIN</KEYWORD1>\r
+ <KEYWORD1>BFINT</KEYWORD1>\r
+ <KEYWORD1>BFK</KEYWORD1>\r
+ <KEYWORD1>BFKD</KEYWORD1>\r
+ <KEYWORD1>BFKDELE</KEYWORD1>\r
+ <KEYWORD1>BFKL</KEYWORD1>\r
+ <KEYWORD1>BFKLIST</KEYWORD1>\r
+ <KEYWORD1>BFL</KEYWORD1>\r
+ <KEYWORD1>BFLD</KEYWORD1>\r
+ <KEYWORD1>BFLDELE</KEYWORD1>\r
+ <KEYWORD1>BFLI</KEYWORD1>\r
+ <KEYWORD1>BFLIST</KEYWORD1>\r
+ <KEYWORD1>BFLL</KEYWORD1>\r
+ <KEYWORD1>BFLLIST</KEYWORD1>\r
+ <KEYWORD1>BFSC</KEYWORD1>\r
+ <KEYWORD1>BFSCALE</KEYWORD1>\r
+ <KEYWORD1>BFTR</KEYWORD1>\r
+ <KEYWORD1>BFTRAN</KEYWORD1>\r
+ <KEYWORD1>BFUN</KEYWORD1>\r
+ <KEYWORD1>BFUNIF</KEYWORD1>\r
+ <KEYWORD1>BFV</KEYWORD1>\r
+ <KEYWORD1>BFVD</KEYWORD1>\r
+ <KEYWORD1>BFVDELE</KEYWORD1>\r
+ <KEYWORD1>BFVL</KEYWORD1>\r
+ <KEYWORD1>BFVLIST</KEYWORD1>\r
+ <KEYWORD1>BIOO</KEYWORD1>\r
+ <KEYWORD1>BIOOPT</KEYWORD1>\r
+ <KEYWORD1>BIOT</KEYWORD1>\r
+ <KEYWORD1>BIOT</KEYWORD1>\r
+ <KEYWORD1>BLC4</KEYWORD1>\r
+ <KEYWORD1>BLC4</KEYWORD1>\r
+ <KEYWORD1>BLC5</KEYWORD1>\r
+ <KEYWORD1>BLC5</KEYWORD1>\r
+ <KEYWORD1>BLOC</KEYWORD1>\r
+ <KEYWORD1>BLOCK</KEYWORD1>\r
+ <KEYWORD1>BOOL</KEYWORD1>\r
+ <KEYWORD1>BOOL</KEYWORD1>\r
+ <KEYWORD1>BOPT</KEYWORD1>\r
+ <KEYWORD1>BOPTN</KEYWORD1>\r
+ <KEYWORD1>BRAN</KEYWORD1>\r
+ <KEYWORD1>BRANCH</KEYWORD1>\r
+ <KEYWORD1>BSPL</KEYWORD1>\r
+ <KEYWORD1>BSPLIN</KEYWORD1>\r
+ <KEYWORD1>BTOL</KEYWORD1>\r
+ <KEYWORD1>BTOL</KEYWORD1>\r
+ <KEYWORD1>BUCO</KEYWORD1>\r
+ <KEYWORD1>BUCOPT</KEYWORD1>\r
+ <KEYWORD1>CALC</KEYWORD1>\r
+ <KEYWORD1>CALC</KEYWORD1>\r
+ <KEYWORD1>CBDO</KEYWORD1>\r
+ <KEYWORD1>CBDOF</KEYWORD1>\r
+ <KEYWORD1>CDRE</KEYWORD1>\r
+ <KEYWORD1>CDREAD</KEYWORD1>\r
+ <KEYWORD1>CDWR</KEYWORD1>\r
+ <KEYWORD1>CDWRITE</KEYWORD1>\r
+ <KEYWORD1>CE</KEYWORD1>\r
+ <KEYWORD1>CECM</KEYWORD1>\r
+ <KEYWORD1>CECMOD</KEYWORD1>\r
+ <KEYWORD1>CECY</KEYWORD1>\r
+ <KEYWORD1>CECYC</KEYWORD1>\r
+ <KEYWORD1>CEDE</KEYWORD1>\r
+ <KEYWORD1>CEDELE</KEYWORD1>\r
+ <KEYWORD1>CEIN</KEYWORD1>\r
+ <KEYWORD1>CEINTF</KEYWORD1>\r
+ <KEYWORD1>CELI</KEYWORD1>\r
+ <KEYWORD1>CELIST</KEYWORD1>\r
+ <KEYWORD1>CENT</KEYWORD1>\r
+ <KEYWORD1>CENTER</KEYWORD1>\r
+ <KEYWORD1>CEQN</KEYWORD1>\r
+ <KEYWORD1>CEQN</KEYWORD1>\r
+ <KEYWORD1>CERI</KEYWORD1>\r
+ <KEYWORD1>CERIG</KEYWORD1>\r
+ <KEYWORD1>CESG</KEYWORD1>\r
+ <KEYWORD1>CESGEN</KEYWORD1>\r
+ <KEYWORD1>CFAC</KEYWORD1>\r
+ <KEYWORD1>CFACT</KEYWORD1>\r
+ <KEYWORD1>CGLO</KEYWORD1>\r
+ <KEYWORD1>CGLOC</KEYWORD1>\r
+ <KEYWORD1>CGOM</KEYWORD1>\r
+ <KEYWORD1>CGOMGA</KEYWORD1>\r
+ <KEYWORD1>CHEC</KEYWORD1>\r
+ <KEYWORD1>CHECK</KEYWORD1>\r
+ <KEYWORD1>CHKM</KEYWORD1>\r
+ <KEYWORD1>CHKMSH</KEYWORD1>\r
+ <KEYWORD1>CIRC</KEYWORD1>\r
+ <KEYWORD1>CIRCLE</KEYWORD1>\r
+ <KEYWORD1>CLOC</KEYWORD1>\r
+ <KEYWORD1>CLOCAL</KEYWORD1>\r
+ <KEYWORD1>CLOG</KEYWORD1>\r
+ <KEYWORD1>CLOG</KEYWORD1>\r
+ <KEYWORD1>CLRM</KEYWORD1>\r
+ <KEYWORD1>CLRMSHLN</KEYWORD1>\r
+ <KEYWORD1>CM</KEYWORD1>\r
+ <KEYWORD1>CMDE</KEYWORD1>\r
+ <KEYWORD1>CMDELE</KEYWORD1>\r
+ <KEYWORD1>CMED</KEYWORD1>\r
+ <KEYWORD1>CMEDIT</KEYWORD1>\r
+ <KEYWORD1>CMGR</KEYWORD1>\r
+ <KEYWORD1>CMGRP</KEYWORD1>\r
+ <KEYWORD1>CMLI</KEYWORD1>\r
+ <KEYWORD1>CMLIST</KEYWORD1>\r
+ <KEYWORD1>CMPL</KEYWORD1>\r
+ <KEYWORD1>CMPLOT</KEYWORD1>\r
+ <KEYWORD1>CMSE</KEYWORD1>\r
+ <KEYWORD1>CMSEL</KEYWORD1>\r
+ <KEYWORD1>CNVT</KEYWORD1>\r
+ <KEYWORD1>CNVTOL</KEYWORD1>\r
+ <KEYWORD1>CON4</KEYWORD1>\r
+ <KEYWORD1>CON4</KEYWORD1>\r
+ <KEYWORD1>CONE</KEYWORD1>\r
+ <KEYWORD1>CONE</KEYWORD1>\r
+ <KEYWORD1>CONJ</KEYWORD1>\r
+ <KEYWORD1>CONJUG</KEYWORD1>\r
+ <KEYWORD1>COUP</KEYWORD1>\r
+ <KEYWORD1>COUPLE</KEYWORD1>\r
+ <KEYWORD1>COVA</KEYWORD1>\r
+ <KEYWORD1>COVAL</KEYWORD1>\r
+ <KEYWORD1>CP</KEYWORD1>\r
+ <KEYWORD1>CPDE</KEYWORD1>\r
+ <KEYWORD1>CPDELE</KEYWORD1>\r
+ <KEYWORD1>CPIN</KEYWORD1>\r
+ <KEYWORD1>CPINTF</KEYWORD1>\r
+ <KEYWORD1>CPLG</KEYWORD1>\r
+ <KEYWORD1>CPLGEN</KEYWORD1>\r
+ <KEYWORD1>CPLI</KEYWORD1>\r
+ <KEYWORD1>CPLIST</KEYWORD1>\r
+ <KEYWORD1>CPNG</KEYWORD1>\r
+ <KEYWORD1>CPNGEN</KEYWORD1>\r
+ <KEYWORD1>CPSG</KEYWORD1>\r
+ <KEYWORD1>CPSGEN</KEYWORD1>\r
+ <KEYWORD1>CQC</KEYWORD1>\r
+ <KEYWORD1>CRPL</KEYWORD1>\r
+ <KEYWORD1>CRPLIM</KEYWORD1>\r
+ <KEYWORD1>CS</KEYWORD1>\r
+ <KEYWORD1>CSCI</KEYWORD1>\r
+ <KEYWORD1>CSCIR</KEYWORD1>\r
+ <KEYWORD1>CSDE</KEYWORD1>\r
+ <KEYWORD1>CSDELE</KEYWORD1>\r
+ <KEYWORD1>CSKP</KEYWORD1>\r
+ <KEYWORD1>CSKP</KEYWORD1>\r
+ <KEYWORD1>CSLI</KEYWORD1>\r
+ <KEYWORD1>CSLIST</KEYWORD1>\r
+ <KEYWORD1>CSWP</KEYWORD1>\r
+ <KEYWORD1>CSWPLA</KEYWORD1>\r
+ <KEYWORD1>CSYS</KEYWORD1>\r
+ <KEYWORD1>CSYS</KEYWORD1>\r
+ <KEYWORD1>CURR2D</KEYWORD1>\r
+ <KEYWORD1>CURR</KEYWORD1>\r
+ <KEYWORD1>CUTC</KEYWORD1>\r
+ <KEYWORD1>CUTCONTROL</KEYWORD1>\r
+ <KEYWORD1>CVAR</KEYWORD1>\r
+ <KEYWORD1>CVAR</KEYWORD1>\r
+ <KEYWORD1>CYCG</KEYWORD1>\r
+ <KEYWORD1>CYCGEN</KEYWORD1>\r
+ <KEYWORD1>CYCS</KEYWORD1>\r
+ <KEYWORD1>CYCSOL</KEYWORD1>\r
+ <KEYWORD1>CYL4</KEYWORD1>\r
+ <KEYWORD1>CYL4</KEYWORD1>\r
+ <KEYWORD1>CYL5</KEYWORD1>\r
+ <KEYWORD1>CYL5</KEYWORD1>\r
+ <KEYWORD1>CYLI</KEYWORD1>\r
+ <KEYWORD1>CYLIND</KEYWORD1>\r
+ <KEYWORD1>D</KEYWORD1>\r
+ <KEYWORD1>DA</KEYWORD1>\r
+ <KEYWORD1>DADE</KEYWORD1>\r
+ <KEYWORD1>DADELE</KEYWORD1>\r
+ <KEYWORD1>DALI</KEYWORD1>\r
+ <KEYWORD1>DALIST</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>DATADEF</KEYWORD1>\r
+ <KEYWORD1>DCGO</KEYWORD1>\r
+ <KEYWORD1>DCGOMG</KEYWORD1>\r
+ <KEYWORD1>DCUM</KEYWORD1>\r
+ <KEYWORD1>DCUM</KEYWORD1>\r
+ <KEYWORD1>DDEL</KEYWORD1>\r
+ <KEYWORD1>DDELE</KEYWORD1>\r
+ <KEYWORD1>DEAC</KEYWORD1>\r
+ <KEYWORD1>DEACT</KEYWORD1>\r
+ <KEYWORD1>DEFI</KEYWORD1>\r
+ <KEYWORD1>DEFINE</KEYWORD1>\r
+ <KEYWORD1>DELT</KEYWORD1>\r
+ <KEYWORD1>DELTIM</KEYWORD1>\r
+ <KEYWORD1>DERI</KEYWORD1>\r
+ <KEYWORD1>DERIV</KEYWORD1>\r
+ <KEYWORD1>DESI</KEYWORD1>\r
+ <KEYWORD1>DESIZE</KEYWORD1>\r
+ <KEYWORD1>DESO</KEYWORD1>\r
+ <KEYWORD1>DESOL</KEYWORD1>\r
+ <KEYWORD1>DETA</KEYWORD1>\r
+ <KEYWORD1>DETAB</KEYWORD1>\r
+ <KEYWORD1>DIG</KEYWORD1>\r
+ <KEYWORD1>DIGI</KEYWORD1>\r
+ <KEYWORD1>DIGIT</KEYWORD1>\r
+ <KEYWORD1>DISP</KEYWORD1>\r
+ <KEYWORD1>DISPLAY</KEYWORD1>\r
+ <KEYWORD1>DK</KEYWORD1>\r
+ <KEYWORD1>DKDE</KEYWORD1>\r
+ <KEYWORD1>DKDELE</KEYWORD1>\r
+ <KEYWORD1>DKLI</KEYWORD1>\r
+ <KEYWORD1>DKLIST</KEYWORD1>\r
+ <KEYWORD1>DL</KEYWORD1>\r
+ <KEYWORD1>DLDE</KEYWORD1>\r
+ <KEYWORD1>DLDELE</KEYWORD1>\r
+ <KEYWORD1>DLIS</KEYWORD1>\r
+ <KEYWORD1>DLIST</KEYWORD1>\r
+ <KEYWORD1>DLLI</KEYWORD1>\r
+ <KEYWORD1>DLLIST</KEYWORD1>\r
+ <KEYWORD1>DMOV</KEYWORD1>\r
+ <KEYWORD1>DMOVE</KEYWORD1>\r
+ <KEYWORD1>DMPR</KEYWORD1>\r
+ <KEYWORD1>DMPRAT</KEYWORD1>\r
+ <KEYWORD1>DNSO</KEYWORD1>\r
+ <KEYWORD1>DNSOL</KEYWORD1>\r
+ <KEYWORD1>DOF</KEYWORD1>\r
+ <KEYWORD1>DOFS</KEYWORD1>\r
+ <KEYWORD1>DOFSEL</KEYWORD1>\r
+ <KEYWORD1>DOME</KEYWORD1>\r
+ <KEYWORD1>DOMEGA</KEYWORD1>\r
+ <KEYWORD1>DSCA</KEYWORD1>\r
+ <KEYWORD1>DSCALE</KEYWORD1>\r
+ <KEYWORD1>DSET</KEYWORD1>\r
+ <KEYWORD1>DSET</KEYWORD1>\r
+ <KEYWORD1>DSUM</KEYWORD1>\r
+ <KEYWORD1>DSUM</KEYWORD1>\r
+ <KEYWORD1>DSUR</KEYWORD1>\r
+ <KEYWORD1>DSURF</KEYWORD1>\r
+ <KEYWORD1>DSYM</KEYWORD1>\r
+ <KEYWORD1>DSYM</KEYWORD1>\r
+ <KEYWORD1>DSYS</KEYWORD1>\r
+ <KEYWORD1>DSYS</KEYWORD1>\r
+ <KEYWORD1>DTRA</KEYWORD1>\r
+ <KEYWORD1>DTRAN</KEYWORD1>\r
+ <KEYWORD1>DUMP</KEYWORD1>\r
+ <KEYWORD1>DUMP</KEYWORD1>\r
+ <KEYWORD1>DYNO</KEYWORD1>\r
+ <KEYWORD1>DYNOPT</KEYWORD1>\r
+ <KEYWORD1>E</KEYWORD1>\r
+ <KEYWORD1>EALI</KEYWORD1>\r
+ <KEYWORD1>EALIVE</KEYWORD1>\r
+ <KEYWORD1>EDBO</KEYWORD1>\r
+ <KEYWORD1>EDBOUND</KEYWORD1>\r
+ <KEYWORD1>EDBV</KEYWORD1>\r
+ <KEYWORD1>EDBVIS</KEYWORD1>\r
+ <KEYWORD1>EDCD</KEYWORD1>\r
+ <KEYWORD1>EDCDELE</KEYWORD1>\r
+ <KEYWORD1>EDCG</KEYWORD1>\r
+ <KEYWORD1>EDCGEN</KEYWORD1>\r
+ <KEYWORD1>EDCL</KEYWORD1>\r
+ <KEYWORD1>EDCLIST</KEYWORD1>\r
+ <KEYWORD1>EDCO</KEYWORD1>\r
+ <KEYWORD1>EDCONTACT</KEYWORD1>\r
+ <KEYWORD1>EDCP</KEYWORD1>\r
+ <KEYWORD1>EDCPU</KEYWORD1>\r
+ <KEYWORD1>EDCR</KEYWORD1>\r
+ <KEYWORD1>EDCRB</KEYWORD1>\r
+ <KEYWORD1>EDCS</KEYWORD1>\r
+ <KEYWORD1>EDCSC</KEYWORD1>\r
+ <KEYWORD1>EDCT</KEYWORD1>\r
+ <KEYWORD1>EDCTS</KEYWORD1>\r
+ <KEYWORD1>EDCU</KEYWORD1>\r
+ <KEYWORD1>EDCURVE</KEYWORD1>\r
+ <KEYWORD1>EDDA</KEYWORD1>\r
+ <KEYWORD1>EDDAMP</KEYWORD1>\r
+ <KEYWORD1>EDDR</KEYWORD1>\r
+ <KEYWORD1>EDDRELAX</KEYWORD1>\r
+ <KEYWORD1>EDEL</KEYWORD1>\r
+ <KEYWORD1>EDELE</KEYWORD1>\r
+ <KEYWORD1>EDEN</KEYWORD1>\r
+ <KEYWORD1>EDENERGY</KEYWORD1>\r
+ <KEYWORD1>EDFP</KEYWORD1>\r
+ <KEYWORD1>EDFPLOT</KEYWORD1>\r
+ <KEYWORD1>EDHG</KEYWORD1>\r
+ <KEYWORD1>EDHGLS</KEYWORD1>\r
+ <KEYWORD1>EDHI</KEYWORD1>\r
+ <KEYWORD1>EDHIST</KEYWORD1>\r
+ <KEYWORD1>EDHT</KEYWORD1>\r
+ <KEYWORD1>EDHTIME</KEYWORD1>\r
+ <KEYWORD1>EDIN</KEYWORD1>\r
+ <KEYWORD1>EDINT</KEYWORD1>\r
+ <KEYWORD1>EDIV</KEYWORD1>\r
+ <KEYWORD1>EDIVELO</KEYWORD1>\r
+ <KEYWORD1>EDLC</KEYWORD1>\r
+ <KEYWORD1>EDLCS</KEYWORD1>\r
+ <KEYWORD1>EDLD</KEYWORD1>\r
+ <KEYWORD1>EDLDPLOT</KEYWORD1>\r
+ <KEYWORD1>EDLO</KEYWORD1>\r
+ <KEYWORD1>EDLOAD</KEYWORD1>\r
+ <KEYWORD1>EDMP</KEYWORD1>\r
+ <KEYWORD1>EDMP</KEYWORD1>\r
+ <KEYWORD1>EDND</KEYWORD1>\r
+ <KEYWORD1>EDNDTSD</KEYWORD1>\r
+ <KEYWORD1>EDNR</KEYWORD1>\r
+ <KEYWORD1>EDNROT</KEYWORD1>\r
+ <KEYWORD1>EDOP</KEYWORD1>\r
+ <KEYWORD1>EDOPT</KEYWORD1>\r
+ <KEYWORD1>EDOU</KEYWORD1>\r
+ <KEYWORD1>EDOUT</KEYWORD1>\r
+ <KEYWORD1>EDRE</KEYWORD1>\r
+ <KEYWORD1>EDREAD</KEYWORD1>\r
+ <KEYWORD1>EDRS</KEYWORD1>\r
+ <KEYWORD1>EDRST</KEYWORD1>\r
+ <KEYWORD1>EDSH</KEYWORD1>\r
+ <KEYWORD1>EDSHELL</KEYWORD1>\r
+ <KEYWORD1>EDSO</KEYWORD1>\r
+ <KEYWORD1>EDSOLV</KEYWORD1>\r
+ <KEYWORD1>EDST</KEYWORD1>\r
+ <KEYWORD1>EDSTART</KEYWORD1>\r
+ <KEYWORD1>EDWE</KEYWORD1>\r
+ <KEYWORD1>EDWELD</KEYWORD1>\r
+ <KEYWORD1>EDWR</KEYWORD1>\r
+ <KEYWORD1>EDWRITE</KEYWORD1>\r
+ <KEYWORD1>EGEN</KEYWORD1>\r
+ <KEYWORD1>EGEN</KEYWORD1>\r
+ <KEYWORD1>EINT</KEYWORD1>\r
+ <KEYWORD1>EINTF</KEYWORD1>\r
+ <KEYWORD1>EKIL</KEYWORD1>\r
+ <KEYWORD1>EKILL</KEYWORD1>\r
+ <KEYWORD1>ELEM</KEYWORD1>\r
+ <KEYWORD1>ELEM</KEYWORD1>\r
+ <KEYWORD1>ELIS</KEYWORD1>\r
+ <KEYWORD1>ELIST</KEYWORD1>\r
+ <KEYWORD1>EMAG</KEYWORD1>\r
+ <KEYWORD1>EMAGERR</KEYWORD1>\r
+ <KEYWORD1>EMF</KEYWORD1>\r
+ <KEYWORD1>EMID</KEYWORD1>\r
+ <KEYWORD1>EMID</KEYWORD1>\r
+ <KEYWORD1>EMIS</KEYWORD1>\r
+ <KEYWORD1>EMIS</KEYWORD1>\r
+ <KEYWORD1>EMOD</KEYWORD1>\r
+ <KEYWORD1>EMODIF</KEYWORD1>\r
+ <KEYWORD1>EMOR</KEYWORD1>\r
+ <KEYWORD1>EMORE</KEYWORD1>\r
+ <KEYWORD1>EMSY</KEYWORD1>\r
+ <KEYWORD1>EMSYM</KEYWORD1>\r
+ <KEYWORD1>EMUN</KEYWORD1>\r
+ <KEYWORD1>EMUNIT</KEYWORD1>\r
+ <KEYWORD1>EN</KEYWORD1>\r
+ <KEYWORD1>ENGE</KEYWORD1>\r
+ <KEYWORD1>ENGEN</KEYWORD1>\r
+ <KEYWORD1>ENOR</KEYWORD1>\r
+ <KEYWORD1>ENORM</KEYWORD1>\r
+ <KEYWORD1>ENSY</KEYWORD1>\r
+ <KEYWORD1>ENSYM</KEYWORD1>\r
+ <KEYWORD1>EPLO</KEYWORD1>\r
+ <KEYWORD1>EPLOT</KEYWORD1>\r
+ <KEYWORD1>EQSL</KEYWORD1>\r
+ <KEYWORD1>EQSLV</KEYWORD1>\r
+ <KEYWORD1>ERAS</KEYWORD1>\r
+ <KEYWORD1>ERASE</KEYWORD1>\r
+ <KEYWORD1>EREA</KEYWORD1>\r
+ <KEYWORD1>EREAD</KEYWORD1>\r
+ <KEYWORD1>EREF</KEYWORD1>\r
+ <KEYWORD1>EREFINE</KEYWORD1>\r
+ <KEYWORD1>ERES</KEYWORD1>\r
+ <KEYWORD1>ERESX</KEYWORD1>\r
+ <KEYWORD1>ERNO</KEYWORD1>\r
+ <KEYWORD1>ERNORM</KEYWORD1>\r
+ <KEYWORD1>ERRA</KEYWORD1>\r
+ <KEYWORD1>ERRANG</KEYWORD1>\r
+ <KEYWORD1>ESEL</KEYWORD1>\r
+ <KEYWORD1>ESEL</KEYWORD1>\r
+ <KEYWORD1>ESIZ</KEYWORD1>\r
+ <KEYWORD1>ESIZE</KEYWORD1>\r
+ <KEYWORD1>ESLA</KEYWORD1>\r
+ <KEYWORD1>ESLA</KEYWORD1>\r
+ <KEYWORD1>ESLL</KEYWORD1>\r
+ <KEYWORD1>ESLL</KEYWORD1>\r
+ <KEYWORD1>ESLN</KEYWORD1>\r
+ <KEYWORD1>ESLN</KEYWORD1>\r
+ <KEYWORD1>ESLV</KEYWORD1>\r
+ <KEYWORD1>ESLV</KEYWORD1>\r
+ <KEYWORD1>ESOL</KEYWORD1>\r
+ <KEYWORD1>ESOL</KEYWORD1>\r
+ <KEYWORD1>ESOR</KEYWORD1>\r
+ <KEYWORD1>ESORT</KEYWORD1>\r
+ <KEYWORD1>ESTI</KEYWORD1>\r
+ <KEYWORD1>ESTIF</KEYWORD1>\r
+ <KEYWORD1>ESUR</KEYWORD1>\r
+ <KEYWORD1>ESURF</KEYWORD1>\r
+ <KEYWORD1>ESYM</KEYWORD1>\r
+ <KEYWORD1>ESYM</KEYWORD1>\r
+ <KEYWORD1>ESYS</KEYWORD1>\r
+ <KEYWORD1>ESYS</KEYWORD1>\r
+ <KEYWORD1>ET</KEYWORD1>\r
+ <KEYWORD1>ETAB</KEYWORD1>\r
+ <KEYWORD1>ETABLE</KEYWORD1>\r
+ <KEYWORD1>ETCH</KEYWORD1>\r
+ <KEYWORD1>ETCHG</KEYWORD1>\r
+ <KEYWORD1>ETDE</KEYWORD1>\r
+ <KEYWORD1>ETDELE</KEYWORD1>\r
+ <KEYWORD1>ETLI</KEYWORD1>\r
+ <KEYWORD1>ETLIST</KEYWORD1>\r
+ <KEYWORD1>ETYP</KEYWORD1>\r
+ <KEYWORD1>ETYPE</KEYWORD1>\r
+ <KEYWORD1>EUSO</KEYWORD1>\r
+ <KEYWORD1>EUSORT</KEYWORD1>\r
+ <KEYWORD1>EWRI</KEYWORD1>\r
+ <KEYWORD1>EWRITE</KEYWORD1>\r
+ <KEYWORD1>EXP</KEYWORD1>\r
+ <KEYWORD1>EXPA</KEYWORD1>\r
+ <KEYWORD1>EXPA</KEYWORD1>\r
+ <KEYWORD1>EXPAND</KEYWORD1>\r
+ <KEYWORD1>EXPASS</KEYWORD1>\r
+ <KEYWORD1>EXPS</KEYWORD1>\r
+ <KEYWORD1>EXPSOL</KEYWORD1>\r
+ <KEYWORD1>EXTO</KEYWORD1>\r
+ <KEYWORD1>EXTOPT</KEYWORD1>\r
+ <KEYWORD1>EXTR</KEYWORD1>\r
+ <KEYWORD1>EXTREM</KEYWORD1>\r
+ <KEYWORD1>FATI</KEYWORD1>\r
+ <KEYWORD1>FATIGUE</KEYWORD1>\r
+ <KEYWORD1>FCUM</KEYWORD1>\r
+ <KEYWORD1>FCUM</KEYWORD1>\r
+ <KEYWORD1>FDEL</KEYWORD1>\r
+ <KEYWORD1>FDELE</KEYWORD1>\r
+ <KEYWORD1>FE</KEYWORD1>\r
+ <KEYWORD1>FEBO</KEYWORD1>\r
+ <KEYWORD1>FEBODY</KEYWORD1>\r
+ <KEYWORD1>FECO</KEYWORD1>\r
+ <KEYWORD1>FECONS</KEYWORD1>\r
+ <KEYWORD1>FEFO</KEYWORD1>\r
+ <KEYWORD1>FEFOR</KEYWORD1>\r
+ <KEYWORD1>FELI</KEYWORD1>\r
+ <KEYWORD1>FELIST</KEYWORD1>\r
+ <KEYWORD1>FESU</KEYWORD1>\r
+ <KEYWORD1>FESURF</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILEAUX2</KEYWORD1>\r
+ <KEYWORD1>FILEDISP</KEYWORD1>\r
+ <KEYWORD1>FILL</KEYWORD1>\r
+ <KEYWORD1>FILL</KEYWORD1>\r
+ <KEYWORD1>FILL</KEYWORD1>\r
+ <KEYWORD1>FILLDATA</KEYWORD1>\r
+ <KEYWORD1>FINI</KEYWORD1>\r
+ <KEYWORD1>FINISH</KEYWORD1>\r
+ <KEYWORD1>FITE</KEYWORD1>\r
+ <KEYWORD1>FITEM</KEYWORD1>\r
+ <KEYWORD1>FK</KEYWORD1>\r
+ <KEYWORD1>FKDE</KEYWORD1>\r
+ <KEYWORD1>FKDELE</KEYWORD1>\r
+ <KEYWORD1>FKLI</KEYWORD1>\r
+ <KEYWORD1>FKLIST</KEYWORD1>\r
+ <KEYWORD1>FL</KEYWORD1>\r
+ <KEYWORD1>FLAN</KEYWORD1>\r
+ <KEYWORD1>FLANGE</KEYWORD1>\r
+ <KEYWORD1>FLDA</KEYWORD1>\r
+ <KEYWORD1>FLDATA</KEYWORD1>\r
+ <KEYWORD1>FLDATA10</KEYWORD1>\r
+ <KEYWORD1>FLDATA11</KEYWORD1>\r
+ <KEYWORD1>FLDATA12</KEYWORD1>\r
+ <KEYWORD1>FLDATA13</KEYWORD1>\r
+ <KEYWORD1>FLDATA14</KEYWORD1>\r
+ <KEYWORD1>FLDATA15</KEYWORD1>\r
+ <KEYWORD1>FLDATA16</KEYWORD1>\r
+ <KEYWORD1>FLDATA17</KEYWORD1>\r
+ <KEYWORD1>FLDATA18</KEYWORD1>\r
+ <KEYWORD1>FLDATA19</KEYWORD1>\r
+ <KEYWORD1>FLDATA1</KEYWORD1>\r
+ <KEYWORD1>FLDATA20</KEYWORD1>\r
+ <KEYWORD1>FLDATA20A</KEYWORD1>\r
+ <KEYWORD1>FLDATA21</KEYWORD1>\r
+ <KEYWORD1>FLDATA22</KEYWORD1>\r
+ <KEYWORD1>FLDATA23</KEYWORD1>\r
+ <KEYWORD1>FLDATA24</KEYWORD1>\r
+ <KEYWORD1>FLDATA24A</KEYWORD1>\r
+ <KEYWORD1>FLDATA24B</KEYWORD1>\r
+ <KEYWORD1>FLDATA24C</KEYWORD1>\r
+ <KEYWORD1>FLDATA24D</KEYWORD1>\r
+ <KEYWORD1>FLDATA25</KEYWORD1>\r
+ <KEYWORD1>FLDATA26</KEYWORD1>\r
+ <KEYWORD1>FLDATA27</KEYWORD1>\r
+ <KEYWORD1>FLDATA28</KEYWORD1>\r
+ <KEYWORD1>FLDATA29</KEYWORD1>\r
+ <KEYWORD1>FLDATA2</KEYWORD1>\r
+ <KEYWORD1>FLDATA30</KEYWORD1>\r
+ <KEYWORD1>FLDATA31</KEYWORD1>\r
+ <KEYWORD1>FLDATA32</KEYWORD1>\r
+ <KEYWORD1>FLDATA33</KEYWORD1>\r
+ <KEYWORD1>FLDATA37</KEYWORD1>\r
+ <KEYWORD1>FLDATA3</KEYWORD1>\r
+ <KEYWORD1>FLDATA4</KEYWORD1>\r
+ <KEYWORD1>FLDATA4A</KEYWORD1>\r
+ <KEYWORD1>FLDATA5</KEYWORD1>\r
+ <KEYWORD1>FLDATA6</KEYWORD1>\r
+ <KEYWORD1>FLDATA7</KEYWORD1>\r
+ <KEYWORD1>FLDATA8</KEYWORD1>\r
+ <KEYWORD1>FLDATA9</KEYWORD1>\r
+ <KEYWORD1>FLDATA</KEYWORD1>\r
+ <KEYWORD1>FLIS</KEYWORD1>\r
+ <KEYWORD1>FLIST</KEYWORD1>\r
+ <KEYWORD1>FLLI</KEYWORD1>\r
+ <KEYWORD1>FLLIST</KEYWORD1>\r
+ <KEYWORD1>FLOC</KEYWORD1>\r
+ <KEYWORD1>FLOCHECK</KEYWORD1>\r
+ <KEYWORD1>FLOT</KEYWORD1>\r
+ <KEYWORD1>FLOTRAN</KEYWORD1>\r
+ <KEYWORD1>FLRE</KEYWORD1>\r
+ <KEYWORD1>FLREAD</KEYWORD1>\r
+ <KEYWORD1>FLST</KEYWORD1>\r
+ <KEYWORD1>FLST</KEYWORD1>\r
+ <KEYWORD1>FLUX</KEYWORD1>\r
+ <KEYWORD1>FLUXV</KEYWORD1>\r
+ <KEYWORD1>FMAG</KEYWORD1>\r
+ <KEYWORD1>FMAG</KEYWORD1>\r
+ <KEYWORD1>FMAGBC</KEYWORD1>\r
+ <KEYWORD1>FMAGSUM</KEYWORD1>\r
+ <KEYWORD1>FOR2</KEYWORD1>\r
+ <KEYWORD1>FOR2D</KEYWORD1>\r
+ <KEYWORD1>FORC</KEYWORD1>\r
+ <KEYWORD1>FORCE</KEYWORD1>\r
+ <KEYWORD1>FORM</KEYWORD1>\r
+ <KEYWORD1>FORM</KEYWORD1>\r
+ <KEYWORD1>FP</KEYWORD1>\r
+ <KEYWORD1>FPLI</KEYWORD1>\r
+ <KEYWORD1>FPLIST</KEYWORD1>\r
+ <KEYWORD1>FREQ</KEYWORD1>\r
+ <KEYWORD1>FREQ</KEYWORD1>\r
+ <KEYWORD1>FS</KEYWORD1>\r
+ <KEYWORD1>FSCA</KEYWORD1>\r
+ <KEYWORD1>FSCALE</KEYWORD1>\r
+ <KEYWORD1>FSDE</KEYWORD1>\r
+ <KEYWORD1>FSDELE</KEYWORD1>\r
+ <KEYWORD1>FSLI</KEYWORD1>\r
+ <KEYWORD1>FSLIST</KEYWORD1>\r
+ <KEYWORD1>FSNO</KEYWORD1>\r
+ <KEYWORD1>FSNODE</KEYWORD1>\r
+ <KEYWORD1>FSPL</KEYWORD1>\r
+ <KEYWORD1>FSPLOT</KEYWORD1>\r
+ <KEYWORD1>FSSE</KEYWORD1>\r
+ <KEYWORD1>FSSECT</KEYWORD1>\r
+ <KEYWORD1>FSUM</KEYWORD1>\r
+ <KEYWORD1>FSUM</KEYWORD1>\r
+ <KEYWORD1>FTCA</KEYWORD1>\r
+ <KEYWORD1>FTCALC</KEYWORD1>\r
+ <KEYWORD1>FTRA</KEYWORD1>\r
+ <KEYWORD1>FTRAN</KEYWORD1>\r
+ <KEYWORD1>FTSI</KEYWORD1>\r
+ <KEYWORD1>FTSIZE</KEYWORD1>\r
+ <KEYWORD1>FTWR</KEYWORD1>\r
+ <KEYWORD1>FTWRITE</KEYWORD1>\r
+ <KEYWORD1>FVME</KEYWORD1>\r
+ <KEYWORD1>FVMESH</KEYWORD1>\r
+ <KEYWORD1>GAP</KEYWORD1>\r
+ <KEYWORD1>GAPF</KEYWORD1>\r
+ <KEYWORD1>GAPFINISH</KEYWORD1>\r
+ <KEYWORD1>GAPL</KEYWORD1>\r
+ <KEYWORD1>GAPLIST</KEYWORD1>\r
+ <KEYWORD1>GAPM</KEYWORD1>\r
+ <KEYWORD1>GAPMERGE</KEYWORD1>\r
+ <KEYWORD1>GAPO</KEYWORD1>\r
+ <KEYWORD1>GAPOPT</KEYWORD1>\r
+ <KEYWORD1>GAPP</KEYWORD1>\r
+ <KEYWORD1>GAPPLOT</KEYWORD1>\r
+ <KEYWORD1>GAUG</KEYWORD1>\r
+ <KEYWORD1>GAUGE</KEYWORD1>\r
+ <KEYWORD1>GCGE</KEYWORD1>\r
+ <KEYWORD1>GCGEN</KEYWORD1>\r
+ <KEYWORD1>GENO</KEYWORD1>\r
+ <KEYWORD1>GENOPT</KEYWORD1>\r
+ <KEYWORD1>GEOM</KEYWORD1>\r
+ <KEYWORD1>GEOM</KEYWORD1>\r
+ <KEYWORD1>GEOM</KEYWORD1>\r
+ <KEYWORD1>GEOMETRY</KEYWORD1>\r
+ <KEYWORD1>GP</KEYWORD1>\r
+ <KEYWORD1>GPDE</KEYWORD1>\r
+ <KEYWORD1>GPDELE</KEYWORD1>\r
+ <KEYWORD1>GPLI</KEYWORD1>\r
+ <KEYWORD1>GPLIST</KEYWORD1>\r
+ <KEYWORD1>GPLO</KEYWORD1>\r
+ <KEYWORD1>GPLOT</KEYWORD1>\r
+ <KEYWORD1>GRP</KEYWORD1>\r
+ <KEYWORD1>GSUM</KEYWORD1>\r
+ <KEYWORD1>GSUM</KEYWORD1>\r
+ <KEYWORD1>HARF</KEYWORD1>\r
+ <KEYWORD1>HARFRQ</KEYWORD1>\r
+ <KEYWORD1>HELP</KEYWORD1>\r
+ <KEYWORD1>HELP</KEYWORD1>\r
+ <KEYWORD1>HELP</KEYWORD1>\r
+ <KEYWORD1>HELPDISP</KEYWORD1>\r
+ <KEYWORD1>HFSW</KEYWORD1>\r
+ <KEYWORD1>HFSWEEP</KEYWORD1>\r
+ <KEYWORD1>HMAG</KEYWORD1>\r
+ <KEYWORD1>HMAGSOLV</KEYWORD1>\r
+ <KEYWORD1>HPGL</KEYWORD1>\r
+ <KEYWORD1>HPGL</KEYWORD1>\r
+ <KEYWORD1>HPTC</KEYWORD1>\r
+ <KEYWORD1>HPTCREATE</KEYWORD1>\r
+ <KEYWORD1>HPTD</KEYWORD1>\r
+ <KEYWORD1>HPTDELETE</KEYWORD1>\r
+ <KEYWORD1>HRCP</KEYWORD1>\r
+ <KEYWORD1>HRCPLX</KEYWORD1>\r
+ <KEYWORD1>HREX</KEYWORD1>\r
+ <KEYWORD1>HREXP</KEYWORD1>\r
+ <KEYWORD1>HROP</KEYWORD1>\r
+ <KEYWORD1>HROPT</KEYWORD1>\r
+ <KEYWORD1>HROU</KEYWORD1>\r
+ <KEYWORD1>HROUT</KEYWORD1>\r
+ <KEYWORD1>IC</KEYWORD1>\r
+ <KEYWORD1>ICDE</KEYWORD1>\r
+ <KEYWORD1>ICDELE</KEYWORD1>\r
+ <KEYWORD1>ICLI</KEYWORD1>\r
+ <KEYWORD1>ICLIST</KEYWORD1>\r
+ <KEYWORD1>IGES</KEYWORD1>\r
+ <KEYWORD1>IGES</KEYWORD1>\r
+ <KEYWORD1>IGESIN</KEYWORD1>\r
+ <KEYWORD1>IGESOUT</KEYWORD1>\r
+ <KEYWORD1>IMAG</KEYWORD1>\r
+ <KEYWORD1>IMAGIN</KEYWORD1>\r
+ <KEYWORD1>IMME</KEYWORD1>\r
+ <KEYWORD1>IMMED</KEYWORD1>\r
+ <KEYWORD1>IMPD</KEYWORD1>\r
+ <KEYWORD1>IMPD</KEYWORD1>\r
+ <KEYWORD1>INRE</KEYWORD1>\r
+ <KEYWORD1>INRES</KEYWORD1>\r
+ <KEYWORD1>INRT</KEYWORD1>\r
+ <KEYWORD1>INRTIA</KEYWORD1>\r
+ <KEYWORD1>INT1</KEYWORD1>\r
+ <KEYWORD1>INT1</KEYWORD1>\r
+ <KEYWORD1>INTS</KEYWORD1>\r
+ <KEYWORD1>INTSRF</KEYWORD1>\r
+ <KEYWORD1>IOPT</KEYWORD1>\r
+ <KEYWORD1>IOPTN</KEYWORD1>\r
+ <KEYWORD1>IRLF</KEYWORD1>\r
+ <KEYWORD1>IRLF</KEYWORD1>\r
+ <KEYWORD1>IRLI</KEYWORD1>\r
+ <KEYWORD1>IRLIST</KEYWORD1>\r
+ <KEYWORD1>K</KEYWORD1>\r
+ <KEYWORD1>KATT</KEYWORD1>\r
+ <KEYWORD1>KATT</KEYWORD1>\r
+ <KEYWORD1>KBC</KEYWORD1>\r
+ <KEYWORD1>KBET</KEYWORD1>\r
+ <KEYWORD1>KBETW</KEYWORD1>\r
+ <KEYWORD1>KCAL</KEYWORD1>\r
+ <KEYWORD1>KCALC</KEYWORD1>\r
+ <KEYWORD1>KCEN</KEYWORD1>\r
+ <KEYWORD1>KCENTER</KEYWORD1>\r
+ <KEYWORD1>KCLE</KEYWORD1>\r
+ <KEYWORD1>KCLEAR</KEYWORD1>\r
+ <KEYWORD1>KDEL</KEYWORD1>\r
+ <KEYWORD1>KDELE</KEYWORD1>\r
+ <KEYWORD1>KDIS</KEYWORD1>\r
+ <KEYWORD1>KDIST</KEYWORD1>\r
+ <KEYWORD1>KESI</KEYWORD1>\r
+ <KEYWORD1>KESIZE</KEYWORD1>\r
+ <KEYWORD1>KEYO</KEYWORD1>\r
+ <KEYWORD1>KEYOPT</KEYWORD1>\r
+ <KEYWORD1>KEYP</KEYWORD1>\r
+ <KEYWORD1>KEYPTS</KEYWORD1>\r
+ <KEYWORD1>KEYW</KEYWORD1>\r
+ <KEYWORD1>KEYW</KEYWORD1>\r
+ <KEYWORD1>KFIL</KEYWORD1>\r
+ <KEYWORD1>KFILL</KEYWORD1>\r
+ <KEYWORD1>KGEN</KEYWORD1>\r
+ <KEYWORD1>KGEN</KEYWORD1>\r
+ <KEYWORD1>KL</KEYWORD1>\r
+ <KEYWORD1>KLIS</KEYWORD1>\r
+ <KEYWORD1>KLIST</KEYWORD1>\r
+ <KEYWORD1>KMES</KEYWORD1>\r
+ <KEYWORD1>KMESH</KEYWORD1>\r
+ <KEYWORD1>KMOD</KEYWORD1>\r
+ <KEYWORD1>KMODIF</KEYWORD1>\r
+ <KEYWORD1>KMOV</KEYWORD1>\r
+ <KEYWORD1>KMOVE</KEYWORD1>\r
+ <KEYWORD1>KNOD</KEYWORD1>\r
+ <KEYWORD1>KNODE</KEYWORD1>\r
+ <KEYWORD1>KPLO</KEYWORD1>\r
+ <KEYWORD1>KPLOT</KEYWORD1>\r
+ <KEYWORD1>KPSC</KEYWORD1>\r
+ <KEYWORD1>KPSCALE</KEYWORD1>\r
+ <KEYWORD1>KREF</KEYWORD1>\r
+ <KEYWORD1>KREFINE</KEYWORD1>\r
+ <KEYWORD1>KSCA</KEYWORD1>\r
+ <KEYWORD1>KSCALE</KEYWORD1>\r
+ <KEYWORD1>KSCO</KEYWORD1>\r
+ <KEYWORD1>KSCON</KEYWORD1>\r
+ <KEYWORD1>KSEL</KEYWORD1>\r
+ <KEYWORD1>KSEL</KEYWORD1>\r
+ <KEYWORD1>KSLL</KEYWORD1>\r
+ <KEYWORD1>KSLL</KEYWORD1>\r
+ <KEYWORD1>KSLN</KEYWORD1>\r
+ <KEYWORD1>KSLN</KEYWORD1>\r
+ <KEYWORD1>KSUM</KEYWORD1>\r
+ <KEYWORD1>KSUM</KEYWORD1>\r
+ <KEYWORD1>KSYM</KEYWORD1>\r
+ <KEYWORD1>KSYMM</KEYWORD1>\r
+ <KEYWORD1>KTRA</KEYWORD1>\r
+ <KEYWORD1>KTRAN</KEYWORD1>\r
+ <KEYWORD1>KUSE</KEYWORD1>\r
+ <KEYWORD1>KUSE</KEYWORD1>\r
+ <KEYWORD1>KWPA</KEYWORD1>\r
+ <KEYWORD1>KWPAVE</KEYWORD1>\r
+ <KEYWORD1>KWPL</KEYWORD1>\r
+ <KEYWORD1>KWPLAN</KEYWORD1>\r
+ <KEYWORD1>L2AN</KEYWORD1>\r
+ <KEYWORD1>L2ANG</KEYWORD1>\r
+ <KEYWORD1>L2TA</KEYWORD1>\r
+ <KEYWORD1>L2TAN</KEYWORD1>\r
+ <KEYWORD1>L</KEYWORD1>\r
+ <KEYWORD1>LANG</KEYWORD1>\r
+ <KEYWORD1>LANG</KEYWORD1>\r
+ <KEYWORD1>LARC</KEYWORD1>\r
+ <KEYWORD1>LARC</KEYWORD1>\r
+ <KEYWORD1>LARE</KEYWORD1>\r
+ <KEYWORD1>LAREA</KEYWORD1>\r
+ <KEYWORD1>LARG</KEYWORD1>\r
+ <KEYWORD1>LARGE</KEYWORD1>\r
+ <KEYWORD1>LATT</KEYWORD1>\r
+ <KEYWORD1>LATT</KEYWORD1>\r
+ <KEYWORD1>LAYE</KEYWORD1>\r
+ <KEYWORD1>LAYE</KEYWORD1>\r
+ <KEYWORD1>LAYER</KEYWORD1>\r
+ <KEYWORD1>LAYERP26</KEYWORD1>\r
+ <KEYWORD1>LAYL</KEYWORD1>\r
+ <KEYWORD1>LAYLIST</KEYWORD1>\r
+ <KEYWORD1>LAYP</KEYWORD1>\r
+ <KEYWORD1>LAYPLOT</KEYWORD1>\r
+ <KEYWORD1>LCAB</KEYWORD1>\r
+ <KEYWORD1>LCABS</KEYWORD1>\r
+ <KEYWORD1>LCAS</KEYWORD1>\r
+ <KEYWORD1>LCASE</KEYWORD1>\r
+ <KEYWORD1>LCCA</KEYWORD1>\r
+ <KEYWORD1>LCCA</KEYWORD1>\r
+ <KEYWORD1>LCCALC</KEYWORD1>\r
+ <KEYWORD1>LCCAT</KEYWORD1>\r
+ <KEYWORD1>LCDE</KEYWORD1>\r
+ <KEYWORD1>LCDEF</KEYWORD1>\r
+ <KEYWORD1>LCFA</KEYWORD1>\r
+ <KEYWORD1>LCFACT</KEYWORD1>\r
+ <KEYWORD1>LCFI</KEYWORD1>\r
+ <KEYWORD1>LCFILE</KEYWORD1>\r
+ <KEYWORD1>LCLE</KEYWORD1>\r
+ <KEYWORD1>LCLEAR</KEYWORD1>\r
+ <KEYWORD1>LCOM</KEYWORD1>\r
+ <KEYWORD1>LCOMB</KEYWORD1>\r
+ <KEYWORD1>LCOP</KEYWORD1>\r
+ <KEYWORD1>LCOPER</KEYWORD1>\r
+ <KEYWORD1>LCSE</KEYWORD1>\r
+ <KEYWORD1>LCSEL</KEYWORD1>\r
+ <KEYWORD1>LCSL</KEYWORD1>\r
+ <KEYWORD1>LCSL</KEYWORD1>\r
+ <KEYWORD1>LCSU</KEYWORD1>\r
+ <KEYWORD1>LCSUM</KEYWORD1>\r
+ <KEYWORD1>LCWR</KEYWORD1>\r
+ <KEYWORD1>LCWRITE</KEYWORD1>\r
+ <KEYWORD1>LCZE</KEYWORD1>\r
+ <KEYWORD1>LCZERO</KEYWORD1>\r
+ <KEYWORD1>LDEL</KEYWORD1>\r
+ <KEYWORD1>LDELE</KEYWORD1>\r
+ <KEYWORD1>LDIV</KEYWORD1>\r
+ <KEYWORD1>LDIV</KEYWORD1>\r
+ <KEYWORD1>LDRA</KEYWORD1>\r
+ <KEYWORD1>LDRAG</KEYWORD1>\r
+ <KEYWORD1>LDRE</KEYWORD1>\r
+ <KEYWORD1>LDREAD</KEYWORD1>\r
+ <KEYWORD1>LESI</KEYWORD1>\r
+ <KEYWORD1>LESIZE</KEYWORD1>\r
+ <KEYWORD1>LEXT</KEYWORD1>\r
+ <KEYWORD1>LEXTND</KEYWORD1>\r
+ <KEYWORD1>LFIL</KEYWORD1>\r
+ <KEYWORD1>LFILLT</KEYWORD1>\r
+ <KEYWORD1>LFSU</KEYWORD1>\r
+ <KEYWORD1>LFSURF</KEYWORD1>\r
+ <KEYWORD1>LGEN</KEYWORD1>\r
+ <KEYWORD1>LGEN</KEYWORD1>\r
+ <KEYWORD1>LGLU</KEYWORD1>\r
+ <KEYWORD1>LGLUE</KEYWORD1>\r
+ <KEYWORD1>LGWR</KEYWORD1>\r
+ <KEYWORD1>LGWRITE</KEYWORD1>\r
+ <KEYWORD1>LINA</KEYWORD1>\r
+ <KEYWORD1>LINA</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LINES</KEYWORD1>\r
+ <KEYWORD1>LINL</KEYWORD1>\r
+ <KEYWORD1>LINL</KEYWORD1>\r
+ <KEYWORD1>LINP</KEYWORD1>\r
+ <KEYWORD1>LINP</KEYWORD1>\r
+ <KEYWORD1>LINV</KEYWORD1>\r
+ <KEYWORD1>LINV</KEYWORD1>\r
+ <KEYWORD1>LLIS</KEYWORD1>\r
+ <KEYWORD1>LLIST</KEYWORD1>\r
+ <KEYWORD1>LMAT</KEYWORD1>\r
+ <KEYWORD1>LMATRIX</KEYWORD1>\r
+ <KEYWORD1>LMES</KEYWORD1>\r
+ <KEYWORD1>LMESH</KEYWORD1>\r
+ <KEYWORD1>LNCO</KEYWORD1>\r
+ <KEYWORD1>LNCOLLAPSE</KEYWORD1>\r
+ <KEYWORD1>LNDE</KEYWORD1>\r
+ <KEYWORD1>LNDETACH</KEYWORD1>\r
+ <KEYWORD1>LNFI</KEYWORD1>\r
+ <KEYWORD1>LNFILL</KEYWORD1>\r
+ <KEYWORD1>LNME</KEYWORD1>\r
+ <KEYWORD1>LNMERGE</KEYWORD1>\r
+ <KEYWORD1>LNSP</KEYWORD1>\r
+ <KEYWORD1>LNSPLIT</KEYWORD1>\r
+ <KEYWORD1>LNSR</KEYWORD1>\r
+ <KEYWORD1>LNSRCH</KEYWORD1>\r
+ <KEYWORD1>LOCA</KEYWORD1>\r
+ <KEYWORD1>LOCAL</KEYWORD1>\r
+ <KEYWORD1>LOVL</KEYWORD1>\r
+ <KEYWORD1>LOVLAP</KEYWORD1>\r
+ <KEYWORD1>LPLO</KEYWORD1>\r
+ <KEYWORD1>LPLOT</KEYWORD1>\r
+ <KEYWORD1>LPTN</KEYWORD1>\r
+ <KEYWORD1>LPTN</KEYWORD1>\r
+ <KEYWORD1>LREF</KEYWORD1>\r
+ <KEYWORD1>LREFINE</KEYWORD1>\r
+ <KEYWORD1>LREV</KEYWORD1>\r
+ <KEYWORD1>LREVERSE</KEYWORD1>\r
+ <KEYWORD1>LROT</KEYWORD1>\r
+ <KEYWORD1>LROTAT</KEYWORD1>\r
+ <KEYWORD1>LSBA</KEYWORD1>\r
+ <KEYWORD1>LSBA</KEYWORD1>\r
+ <KEYWORD1>LSBL</KEYWORD1>\r
+ <KEYWORD1>LSBL</KEYWORD1>\r
+ <KEYWORD1>LSBV</KEYWORD1>\r
+ <KEYWORD1>LSBV</KEYWORD1>\r
+ <KEYWORD1>LSBW</KEYWORD1>\r
+ <KEYWORD1>LSBW</KEYWORD1>\r
+ <KEYWORD1>LSCL</KEYWORD1>\r
+ <KEYWORD1>LSCLEAR</KEYWORD1>\r
+ <KEYWORD1>LSDE</KEYWORD1>\r
+ <KEYWORD1>LSDELE</KEYWORD1>\r
+ <KEYWORD1>LSEL</KEYWORD1>\r
+ <KEYWORD1>LSEL</KEYWORD1>\r
+ <KEYWORD1>LSLA</KEYWORD1>\r
+ <KEYWORD1>LSLA</KEYWORD1>\r
+ <KEYWORD1>LSLK</KEYWORD1>\r
+ <KEYWORD1>LSLK</KEYWORD1>\r
+ <KEYWORD1>LSOP</KEYWORD1>\r
+ <KEYWORD1>LSOPER</KEYWORD1>\r
+ <KEYWORD1>LSRE</KEYWORD1>\r
+ <KEYWORD1>LSREAD</KEYWORD1>\r
+ <KEYWORD1>LSSC</KEYWORD1>\r
+ <KEYWORD1>LSSCALE</KEYWORD1>\r
+ <KEYWORD1>LSSO</KEYWORD1>\r
+ <KEYWORD1>LSSOLVE</KEYWORD1>\r
+ <KEYWORD1>LSTR</KEYWORD1>\r
+ <KEYWORD1>LSTR</KEYWORD1>\r
+ <KEYWORD1>LSUM</KEYWORD1>\r
+ <KEYWORD1>LSUM</KEYWORD1>\r
+ <KEYWORD1>LSWR</KEYWORD1>\r
+ <KEYWORD1>LSWRITE</KEYWORD1>\r
+ <KEYWORD1>LSYM</KEYWORD1>\r
+ <KEYWORD1>LSYMM</KEYWORD1>\r
+ <KEYWORD1>LTAN</KEYWORD1>\r
+ <KEYWORD1>LTAN</KEYWORD1>\r
+ <KEYWORD1>LTRA</KEYWORD1>\r
+ <KEYWORD1>LTRAN</KEYWORD1>\r
+ <KEYWORD1>LUMP</KEYWORD1>\r
+ <KEYWORD1>LUMPM</KEYWORD1>\r
+ <KEYWORD1>LVSC</KEYWORD1>\r
+ <KEYWORD1>LVSCALE</KEYWORD1>\r
+ <KEYWORD1>LWPL</KEYWORD1>\r
+ <KEYWORD1>LWPLAN</KEYWORD1>\r
+ <KEYWORD1>M</KEYWORD1>\r
+ <KEYWORD1>MAGO</KEYWORD1>\r
+ <KEYWORD1>MAGOPT</KEYWORD1>\r
+ <KEYWORD1>MAGS</KEYWORD1>\r
+ <KEYWORD1>MAGSOLV</KEYWORD1>\r
+ <KEYWORD1>MAST</KEYWORD1>\r
+ <KEYWORD1>MASTER</KEYWORD1>\r
+ <KEYWORD1>MAT</KEYWORD1>\r
+ <KEYWORD1>MATE</KEYWORD1>\r
+ <KEYWORD1>MATER</KEYWORD1>\r
+ <KEYWORD1>MDAM</KEYWORD1>\r
+ <KEYWORD1>MDAMP</KEYWORD1>\r
+ <KEYWORD1>MDEL</KEYWORD1>\r
+ <KEYWORD1>MDELE</KEYWORD1>\r
+ <KEYWORD1>MESH</KEYWORD1>\r
+ <KEYWORD1>MESHING</KEYWORD1>\r
+ <KEYWORD1>MGEN</KEYWORD1>\r
+ <KEYWORD1>MGEN</KEYWORD1>\r
+ <KEYWORD1>MITE</KEYWORD1>\r
+ <KEYWORD1>MITER</KEYWORD1>\r
+ <KEYWORD1>MLIS</KEYWORD1>\r
+ <KEYWORD1>MLIST</KEYWORD1>\r
+ <KEYWORD1>MMF</KEYWORD1>\r
+ <KEYWORD1>MODE</KEYWORD1>\r
+ <KEYWORD1>MODE</KEYWORD1>\r
+ <KEYWORD1>MODM</KEYWORD1>\r
+ <KEYWORD1>MODMSH</KEYWORD1>\r
+ <KEYWORD1>MODO</KEYWORD1>\r
+ <KEYWORD1>MODOPT</KEYWORD1>\r
+ <KEYWORD1>MONI</KEYWORD1>\r
+ <KEYWORD1>MONITOR</KEYWORD1>\r
+ <KEYWORD1>MOPT</KEYWORD1>\r
+ <KEYWORD1>MOPT</KEYWORD1>\r
+ <KEYWORD1>MOVE</KEYWORD1>\r
+ <KEYWORD1>MOVE</KEYWORD1>\r
+ <KEYWORD1>MP</KEYWORD1>\r
+ <KEYWORD1>MPAM</KEYWORD1>\r
+ <KEYWORD1>MPAMOD</KEYWORD1>\r
+ <KEYWORD1>MPCH</KEYWORD1>\r
+ <KEYWORD1>MPCHG</KEYWORD1>\r
+ <KEYWORD1>MPDA</KEYWORD1>\r
+ <KEYWORD1>MPDATA</KEYWORD1>\r
+ <KEYWORD1>MPDE</KEYWORD1>\r
+ <KEYWORD1>MPDELE</KEYWORD1>\r
+ <KEYWORD1>MPDR</KEYWORD1>\r
+ <KEYWORD1>MPDRES</KEYWORD1>\r
+ <KEYWORD1>MPLI</KEYWORD1>\r
+ <KEYWORD1>MPLIST</KEYWORD1>\r
+ <KEYWORD1>MPMO</KEYWORD1>\r
+ <KEYWORD1>MPMOD</KEYWORD1>\r
+ <KEYWORD1>MPPL</KEYWORD1>\r
+ <KEYWORD1>MPPLOT</KEYWORD1>\r
+ <KEYWORD1>MPRE</KEYWORD1>\r
+ <KEYWORD1>MPREAD</KEYWORD1>\r
+ <KEYWORD1>MPRI</KEYWORD1>\r
+ <KEYWORD1>MPRINT</KEYWORD1>\r
+ <KEYWORD1>MPTE</KEYWORD1>\r
+ <KEYWORD1>MPTEMP</KEYWORD1>\r
+ <KEYWORD1>MPTG</KEYWORD1>\r
+ <KEYWORD1>MPTGEN</KEYWORD1>\r
+ <KEYWORD1>MPTR</KEYWORD1>\r
+ <KEYWORD1>MPTRES</KEYWORD1>\r
+ <KEYWORD1>MPUN</KEYWORD1>\r
+ <KEYWORD1>MPUNDO</KEYWORD1>\r
+ <KEYWORD1>MPWR</KEYWORD1>\r
+ <KEYWORD1>MPWRITE</KEYWORD1>\r
+ <KEYWORD1>MSAD</KEYWORD1>\r
+ <KEYWORD1>MSADV</KEYWORD1>\r
+ <KEYWORD1>MSCA</KEYWORD1>\r
+ <KEYWORD1>MSCAP</KEYWORD1>\r
+ <KEYWORD1>MSDA</KEYWORD1>\r
+ <KEYWORD1>MSDATA</KEYWORD1>\r
+ <KEYWORD1>MSHA</KEYWORD1>\r
+ <KEYWORD1>MSHAPE</KEYWORD1>\r
+ <KEYWORD1>MSHK</KEYWORD1>\r
+ <KEYWORD1>MSHKEY</KEYWORD1>\r
+ <KEYWORD1>MSHM</KEYWORD1>\r
+ <KEYWORD1>MSHMID</KEYWORD1>\r
+ <KEYWORD1>MSHP</KEYWORD1>\r
+ <KEYWORD1>MSHPATTERN</KEYWORD1>\r
+ <KEYWORD1>MSME</KEYWORD1>\r
+ <KEYWORD1>MSMETH</KEYWORD1>\r
+ <KEYWORD1>MSNO</KEYWORD1>\r
+ <KEYWORD1>MSNOMF</KEYWORD1>\r
+ <KEYWORD1>MSPR</KEYWORD1>\r
+ <KEYWORD1>MSPROP</KEYWORD1>\r
+ <KEYWORD1>MSQU</KEYWORD1>\r
+ <KEYWORD1>MSQUAD</KEYWORD1>\r
+ <KEYWORD1>MSRE</KEYWORD1>\r
+ <KEYWORD1>MSRELAX</KEYWORD1>\r
+ <KEYWORD1>MSSO</KEYWORD1>\r
+ <KEYWORD1>MSSOLU</KEYWORD1>\r
+ <KEYWORD1>MSSP</KEYWORD1>\r
+ <KEYWORD1>MSSPEC</KEYWORD1>\r
+ <KEYWORD1>MSTE</KEYWORD1>\r
+ <KEYWORD1>MSTERM</KEYWORD1>\r
+ <KEYWORD1>MSVA</KEYWORD1>\r
+ <KEYWORD1>MSVARY</KEYWORD1>\r
+ <KEYWORD1>MXPA</KEYWORD1>\r
+ <KEYWORD1>MXPAND</KEYWORD1>\r
+ <KEYWORD1>N</KEYWORD1>\r
+ <KEYWORD1>NANG</KEYWORD1>\r
+ <KEYWORD1>NANG</KEYWORD1>\r
+ <KEYWORD1>NCNV</KEYWORD1>\r
+ <KEYWORD1>NCNV</KEYWORD1>\r
+ <KEYWORD1>NDEL</KEYWORD1>\r
+ <KEYWORD1>NDELE</KEYWORD1>\r
+ <KEYWORD1>NDIS</KEYWORD1>\r
+ <KEYWORD1>NDIST</KEYWORD1>\r
+ <KEYWORD1>NEQI</KEYWORD1>\r
+ <KEYWORD1>NEQIT</KEYWORD1>\r
+ <KEYWORD1>NFOR</KEYWORD1>\r
+ <KEYWORD1>NFORCE</KEYWORD1>\r
+ <KEYWORD1>NGEN</KEYWORD1>\r
+ <KEYWORD1>NGEN</KEYWORD1>\r
+ <KEYWORD1>NKPT</KEYWORD1>\r
+ <KEYWORD1>NKPT</KEYWORD1>\r
+ <KEYWORD1>NLGE</KEYWORD1>\r
+ <KEYWORD1>NLGEOM</KEYWORD1>\r
+ <KEYWORD1>NLIS</KEYWORD1>\r
+ <KEYWORD1>NLIST</KEYWORD1>\r
+ <KEYWORD1>NLOG</KEYWORD1>\r
+ <KEYWORD1>NLOG</KEYWORD1>\r
+ <KEYWORD1>NLOP</KEYWORD1>\r
+ <KEYWORD1>NLOPT</KEYWORD1>\r
+ <KEYWORD1>NMOD</KEYWORD1>\r
+ <KEYWORD1>NMODIF</KEYWORD1>\r
+ <KEYWORD1>NOCO</KEYWORD1>\r
+ <KEYWORD1>NOCOLOR</KEYWORD1>\r
+ <KEYWORD1>NODE</KEYWORD1>\r
+ <KEYWORD1>NODES</KEYWORD1>\r
+ <KEYWORD1>NOOR</KEYWORD1>\r
+ <KEYWORD1>NOORDER</KEYWORD1>\r
+ <KEYWORD1>NPLO</KEYWORD1>\r
+ <KEYWORD1>NPLOT</KEYWORD1>\r
+ <KEYWORD1>NPRI</KEYWORD1>\r
+ <KEYWORD1>NPRINT</KEYWORD1>\r
+ <KEYWORD1>NREA</KEYWORD1>\r
+ <KEYWORD1>NREAD</KEYWORD1>\r
+ <KEYWORD1>NREF</KEYWORD1>\r
+ <KEYWORD1>NREFINE</KEYWORD1>\r
+ <KEYWORD1>NRLS</KEYWORD1>\r
+ <KEYWORD1>NRLSUM</KEYWORD1>\r
+ <KEYWORD1>NROP</KEYWORD1>\r
+ <KEYWORD1>NROPT</KEYWORD1>\r
+ <KEYWORD1>NROT</KEYWORD1>\r
+ <KEYWORD1>NROTAT</KEYWORD1>\r
+ <KEYWORD1>NRRA</KEYWORD1>\r
+ <KEYWORD1>NRRANG</KEYWORD1>\r
+ <KEYWORD1>NSCA</KEYWORD1>\r
+ <KEYWORD1>NSCALE</KEYWORD1>\r
+ <KEYWORD1>NSEL</KEYWORD1>\r
+ <KEYWORD1>NSEL</KEYWORD1>\r
+ <KEYWORD1>NSLA</KEYWORD1>\r
+ <KEYWORD1>NSLA</KEYWORD1>\r
+ <KEYWORD1>NSLE</KEYWORD1>\r
+ <KEYWORD1>NSLE</KEYWORD1>\r
+ <KEYWORD1>NSLK</KEYWORD1>\r
+ <KEYWORD1>NSLK</KEYWORD1>\r
+ <KEYWORD1>NSLL</KEYWORD1>\r
+ <KEYWORD1>NSLL</KEYWORD1>\r
+ <KEYWORD1>NSLV</KEYWORD1>\r
+ <KEYWORD1>NSLV</KEYWORD1>\r
+ <KEYWORD1>NSOL</KEYWORD1>\r
+ <KEYWORD1>NSOL</KEYWORD1>\r
+ <KEYWORD1>NSOR</KEYWORD1>\r
+ <KEYWORD1>NSORT</KEYWORD1>\r
+ <KEYWORD1>NSTO</KEYWORD1>\r
+ <KEYWORD1>NSTORE</KEYWORD1>\r
+ <KEYWORD1>NSUB</KEYWORD1>\r
+ <KEYWORD1>NSUBST</KEYWORD1>\r
+ <KEYWORD1>NSVR</KEYWORD1>\r
+ <KEYWORD1>NSVR</KEYWORD1>\r
+ <KEYWORD1>NSYM</KEYWORD1>\r
+ <KEYWORD1>NSYM</KEYWORD1>\r
+ <KEYWORD1>NUMC</KEYWORD1>\r
+ <KEYWORD1>NUMCMP</KEYWORD1>\r
+ <KEYWORD1>NUME</KEYWORD1>\r
+ <KEYWORD1>NUMEXP</KEYWORD1>\r
+ <KEYWORD1>NUMM</KEYWORD1>\r
+ <KEYWORD1>NUMMRG</KEYWORD1>\r
+ <KEYWORD1>NUMO</KEYWORD1>\r
+ <KEYWORD1>NUMOFF</KEYWORD1>\r
+ <KEYWORD1>NUMS</KEYWORD1>\r
+ <KEYWORD1>NUMSTR</KEYWORD1>\r
+ <KEYWORD1>NUMV</KEYWORD1>\r
+ <KEYWORD1>NUMVAR</KEYWORD1>\r
+ <KEYWORD1>NUSO</KEYWORD1>\r
+ <KEYWORD1>NUSORT</KEYWORD1>\r
+ <KEYWORD1>NWPA</KEYWORD1>\r
+ <KEYWORD1>NWPAVE</KEYWORD1>\r
+ <KEYWORD1>NWPL</KEYWORD1>\r
+ <KEYWORD1>NWPLAN</KEYWORD1>\r
+ <KEYWORD1>NWRI</KEYWORD1>\r
+ <KEYWORD1>NWRITE</KEYWORD1>\r
+ <KEYWORD1>nx</KEYWORD1>\r
+ <KEYWORD1>ny</KEYWORD1>\r
+ <KEYWORD1>nz</KEYWORD1>\r
+ <KEYWORD1>OMEG</KEYWORD1>\r
+ <KEYWORD1>OMEGA</KEYWORD1>\r
+ <KEYWORD1>OPAD</KEYWORD1>\r
+ <KEYWORD1>OPADD</KEYWORD1>\r
+ <KEYWORD1>OPAN</KEYWORD1>\r
+ <KEYWORD1>OPANL</KEYWORD1>\r
+ <KEYWORD1>OPCL</KEYWORD1>\r
+ <KEYWORD1>OPCLR</KEYWORD1>\r
+ <KEYWORD1>OPDA</KEYWORD1>\r
+ <KEYWORD1>OPDATA</KEYWORD1>\r
+ <KEYWORD1>OPDE</KEYWORD1>\r
+ <KEYWORD1>OPDEL</KEYWORD1>\r
+ <KEYWORD1>OPEQ</KEYWORD1>\r
+ <KEYWORD1>OPEQN</KEYWORD1>\r
+ <KEYWORD1>OPER</KEYWORD1>\r
+ <KEYWORD1>OPERATE</KEYWORD1>\r
+ <KEYWORD1>OPEX</KEYWORD1>\r
+ <KEYWORD1>OPEXE</KEYWORD1>\r
+ <KEYWORD1>OPFA</KEYWORD1>\r
+ <KEYWORD1>OPFACT</KEYWORD1>\r
+ <KEYWORD1>OPFR</KEYWORD1>\r
+ <KEYWORD1>OPFRST</KEYWORD1>\r
+ <KEYWORD1>OPGR</KEYWORD1>\r
+ <KEYWORD1>OPGRAD</KEYWORD1>\r
+ <KEYWORD1>OPKE</KEYWORD1>\r
+ <KEYWORD1>OPKEEP</KEYWORD1>\r
+ <KEYWORD1>OPLF</KEYWORD1>\r
+ <KEYWORD1>OPLFA</KEYWORD1>\r
+ <KEYWORD1>OPLG</KEYWORD1>\r
+ <KEYWORD1>OPLGR</KEYWORD1>\r
+ <KEYWORD1>OPLI</KEYWORD1>\r
+ <KEYWORD1>OPLIST</KEYWORD1>\r
+ <KEYWORD1>OPLO</KEYWORD1>\r
+ <KEYWORD1>OPLOOP</KEYWORD1>\r
+ <KEYWORD1>OPLS</KEYWORD1>\r
+ <KEYWORD1>OPLSW</KEYWORD1>\r
+ <KEYWORD1>OPMA</KEYWORD1>\r
+ <KEYWORD1>OPMAKE</KEYWORD1>\r
+ <KEYWORD1>OPNC</KEYWORD1>\r
+ <KEYWORD1>OPNCONTROL</KEYWORD1>\r
+ <KEYWORD1>OPPR</KEYWORD1>\r
+ <KEYWORD1>OPPRNT</KEYWORD1>\r
+ <KEYWORD1>OPRA</KEYWORD1>\r
+ <KEYWORD1>OPRAND</KEYWORD1>\r
+ <KEYWORD1>OPRE</KEYWORD1>\r
+ <KEYWORD1>OPRESU</KEYWORD1>\r
+ <KEYWORD1>OPRF</KEYWORD1>\r
+ <KEYWORD1>OPRFA</KEYWORD1>\r
+ <KEYWORD1>OPRG</KEYWORD1>\r
+ <KEYWORD1>OPRGR</KEYWORD1>\r
+ <KEYWORD1>OPRS</KEYWORD1>\r
+ <KEYWORD1>OPRSW</KEYWORD1>\r
+ <KEYWORD1>OPSA</KEYWORD1>\r
+ <KEYWORD1>OPSAVE</KEYWORD1>\r
+ <KEYWORD1>OPSE</KEYWORD1>\r
+ <KEYWORD1>OPSEL</KEYWORD1>\r
+ <KEYWORD1>OPSU</KEYWORD1>\r
+ <KEYWORD1>OPSUBP</KEYWORD1>\r
+ <KEYWORD1>OPSW</KEYWORD1>\r
+ <KEYWORD1>OPSWEEP</KEYWORD1>\r
+ <KEYWORD1>OPTY</KEYWORD1>\r
+ <KEYWORD1>OPTYPE</KEYWORD1>\r
+ <KEYWORD1>OPUS</KEYWORD1>\r
+ <KEYWORD1>OPUSER</KEYWORD1>\r
+ <KEYWORD1>OPVA</KEYWORD1>\r
+ <KEYWORD1>OPVAR</KEYWORD1>\r
+ <KEYWORD1>OUTO</KEYWORD1>\r
+ <KEYWORD1>OUTOPT</KEYWORD1>\r
+ <KEYWORD1>OUTP</KEYWORD1>\r
+ <KEYWORD1>OUTPR</KEYWORD1>\r
+ <KEYWORD1>OUTR</KEYWORD1>\r
+ <KEYWORD1>OUTRES</KEYWORD1>\r
+ <KEYWORD1>PADE</KEYWORD1>\r
+ <KEYWORD1>PADELE</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>PAGET</KEYWORD1>\r
+ <KEYWORD1>PAPU</KEYWORD1>\r
+ <KEYWORD1>PAPUT</KEYWORD1>\r
+ <KEYWORD1>PARE</KEYWORD1>\r
+ <KEYWORD1>PARESU</KEYWORD1>\r
+ <KEYWORD1>PARR</KEYWORD1>\r
+ <KEYWORD1>PARRES</KEYWORD1>\r
+ <KEYWORD1>PARS</KEYWORD1>\r
+ <KEYWORD1>PARSAV</KEYWORD1>\r
+ <KEYWORD1>PASA</KEYWORD1>\r
+ <KEYWORD1>PASAVE</KEYWORD1>\r
+ <KEYWORD1>PATH</KEYWORD1>\r
+ <KEYWORD1>PATH</KEYWORD1>\r
+ <KEYWORD1>PCAL</KEYWORD1>\r
+ <KEYWORD1>PCALC</KEYWORD1>\r
+ <KEYWORD1>PCIR</KEYWORD1>\r
+ <KEYWORD1>PCIRC</KEYWORD1>\r
+ <KEYWORD1>PCON</KEYWORD1>\r
+ <KEYWORD1>PCONV</KEYWORD1>\r
+ <KEYWORD1>PCOR</KEYWORD1>\r
+ <KEYWORD1>PCORRO</KEYWORD1>\r
+ <KEYWORD1>PCRO</KEYWORD1>\r
+ <KEYWORD1>PCROSS</KEYWORD1>\r
+ <KEYWORD1>PDEF</KEYWORD1>\r
+ <KEYWORD1>PDEF</KEYWORD1>\r
+ <KEYWORD1>PDOT</KEYWORD1>\r
+ <KEYWORD1>PDOT</KEYWORD1>\r
+ <KEYWORD1>PDRA</KEYWORD1>\r
+ <KEYWORD1>PDRAG</KEYWORD1>\r
+ <KEYWORD1>PERB</KEYWORD1>\r
+ <KEYWORD1>PERBC2D</KEYWORD1>\r
+ <KEYWORD1>PEXC</KEYWORD1>\r
+ <KEYWORD1>PEXCLUDE</KEYWORD1>\r
+ <KEYWORD1>PFAC</KEYWORD1>\r
+ <KEYWORD1>PFACT</KEYWORD1>\r
+ <KEYWORD1>PFLU</KEYWORD1>\r
+ <KEYWORD1>PFLUID</KEYWORD1>\r
+ <KEYWORD1>PGAP</KEYWORD1>\r
+ <KEYWORD1>PGAP</KEYWORD1>\r
+ <KEYWORD1>PHYS</KEYWORD1>\r
+ <KEYWORD1>PHYSICS</KEYWORD1>\r
+ <KEYWORD1>PINC</KEYWORD1>\r
+ <KEYWORD1>PINCLUDE</KEYWORD1>\r
+ <KEYWORD1>PINS</KEYWORD1>\r
+ <KEYWORD1>PINSUL</KEYWORD1>\r
+ <KEYWORD1>PIPE</KEYWORD1>\r
+ <KEYWORD1>PIPE</KEYWORD1>\r
+ <KEYWORD1>PIVC</KEYWORD1>\r
+ <KEYWORD1>PIVCHECK</KEYWORD1>\r
+ <KEYWORD1>PLAN</KEYWORD1>\r
+ <KEYWORD1>PLANEWAVE</KEYWORD1>\r
+ <KEYWORD1>PLCO</KEYWORD1>\r
+ <KEYWORD1>PLCONV</KEYWORD1>\r
+ <KEYWORD1>PLCP</KEYWORD1>\r
+ <KEYWORD1>PLCPLX</KEYWORD1>\r
+ <KEYWORD1>PLCR</KEYWORD1>\r
+ <KEYWORD1>PLCRACK</KEYWORD1>\r
+ <KEYWORD1>PLDI</KEYWORD1>\r
+ <KEYWORD1>PLDISP</KEYWORD1>\r
+ <KEYWORD1>PLES</KEYWORD1>\r
+ <KEYWORD1>PLESOL</KEYWORD1>\r
+ <KEYWORD1>PLET</KEYWORD1>\r
+ <KEYWORD1>PLETAB</KEYWORD1>\r
+ <KEYWORD1>PLF2</KEYWORD1>\r
+ <KEYWORD1>PLF2D</KEYWORD1>\r
+ <KEYWORD1>PLLS</KEYWORD1>\r
+ <KEYWORD1>PLLS</KEYWORD1>\r
+ <KEYWORD1>PLNS</KEYWORD1>\r
+ <KEYWORD1>PLNSOL</KEYWORD1>\r
+ <KEYWORD1>PLOT</KEYWORD1>\r
+ <KEYWORD1>PLOT</KEYWORD1>\r
+ <KEYWORD1>PLOT</KEYWORD1>\r
+ <KEYWORD1>PLOTTING</KEYWORD1>\r
+ <KEYWORD1>PLPA</KEYWORD1>\r
+ <KEYWORD1>PLPA</KEYWORD1>\r
+ <KEYWORD1>PLPAGM</KEYWORD1>\r
+ <KEYWORD1>PLPATH</KEYWORD1>\r
+ <KEYWORD1>PLSE</KEYWORD1>\r
+ <KEYWORD1>PLSECT</KEYWORD1>\r
+ <KEYWORD1>PLTI</KEYWORD1>\r
+ <KEYWORD1>PLTIME</KEYWORD1>\r
+ <KEYWORD1>PLTR</KEYWORD1>\r
+ <KEYWORD1>PLTRAC</KEYWORD1>\r
+ <KEYWORD1>PLVA</KEYWORD1>\r
+ <KEYWORD1>PLVA</KEYWORD1>\r
+ <KEYWORD1>PLVAR</KEYWORD1>\r
+ <KEYWORD1>PLVAROPT</KEYWORD1>\r
+ <KEYWORD1>PLVE</KEYWORD1>\r
+ <KEYWORD1>PLVECT</KEYWORD1>\r
+ <KEYWORD1>PMAP</KEYWORD1>\r
+ <KEYWORD1>PMAP</KEYWORD1>\r
+ <KEYWORD1>PMET</KEYWORD1>\r
+ <KEYWORD1>PMETH</KEYWORD1>\r
+ <KEYWORD1>PMGT</KEYWORD1>\r
+ <KEYWORD1>PMGTRAN</KEYWORD1>\r
+ <KEYWORD1>PMOP</KEYWORD1>\r
+ <KEYWORD1>PMOPTS</KEYWORD1>\r
+ <KEYWORD1>POIN</KEYWORD1>\r
+ <KEYWORD1>POINT</KEYWORD1>\r
+ <KEYWORD1>POLY</KEYWORD1>\r
+ <KEYWORD1>POLY</KEYWORD1>\r
+ <KEYWORD1>POPT</KEYWORD1>\r
+ <KEYWORD1>POPT</KEYWORD1>\r
+ <KEYWORD1>PORT</KEYWORD1>\r
+ <KEYWORD1>PORTOPT</KEYWORD1>\r
+ <KEYWORD1>POWE</KEYWORD1>\r
+ <KEYWORD1>POWERH</KEYWORD1>\r
+ <KEYWORD1>PPAT</KEYWORD1>\r
+ <KEYWORD1>PPATH</KEYWORD1>\r
+ <KEYWORD1>PPLO</KEYWORD1>\r
+ <KEYWORD1>PPLOT</KEYWORD1>\r
+ <KEYWORD1>PPRA</KEYWORD1>\r
+ <KEYWORD1>PPRANGE</KEYWORD1>\r
+ <KEYWORD1>PPRE</KEYWORD1>\r
+ <KEYWORD1>PPRES</KEYWORD1>\r
+ <KEYWORD1>PRAN</KEYWORD1>\r
+ <KEYWORD1>PRANGE</KEYWORD1>\r
+ <KEYWORD1>PRCO</KEYWORD1>\r
+ <KEYWORD1>PRCONV</KEYWORD1>\r
+ <KEYWORD1>PRCP</KEYWORD1>\r
+ <KEYWORD1>PRCPLX</KEYWORD1>\r
+ <KEYWORD1>PREC</KEYWORD1>\r
+ <KEYWORD1>PRECISION</KEYWORD1>\r
+ <KEYWORD1>PRED</KEYWORD1>\r
+ <KEYWORD1>PRED</KEYWORD1>\r
+ <KEYWORD1>PRER</KEYWORD1>\r
+ <KEYWORD1>PRERR</KEYWORD1>\r
+ <KEYWORD1>PRES</KEYWORD1>\r
+ <KEYWORD1>PRESOL</KEYWORD1>\r
+ <KEYWORD1>PRET</KEYWORD1>\r
+ <KEYWORD1>PRETAB</KEYWORD1>\r
+ <KEYWORD1>PRI2</KEYWORD1>\r
+ <KEYWORD1>PRI2</KEYWORD1>\r
+ <KEYWORD1>PRIM</KEYWORD1>\r
+ <KEYWORD1>PRIM</KEYWORD1>\r
+ <KEYWORD1>PRIN</KEYWORD1>\r
+ <KEYWORD1>PRINT</KEYWORD1>\r
+ <KEYWORD1>PRIS</KEYWORD1>\r
+ <KEYWORD1>PRISM</KEYWORD1>\r
+ <KEYWORD1>PRIT</KEYWORD1>\r
+ <KEYWORD1>PRITER</KEYWORD1>\r
+ <KEYWORD1>PRNL</KEYWORD1>\r
+ <KEYWORD1>PRNLD</KEYWORD1>\r
+ <KEYWORD1>PRNS</KEYWORD1>\r
+ <KEYWORD1>PRNSOL</KEYWORD1>\r
+ <KEYWORD1>PROD</KEYWORD1>\r
+ <KEYWORD1>PROD</KEYWORD1>\r
+ <KEYWORD1>PRPA</KEYWORD1>\r
+ <KEYWORD1>PRPATH</KEYWORD1>\r
+ <KEYWORD1>PRRF</KEYWORD1>\r
+ <KEYWORD1>PRRFOR</KEYWORD1>\r
+ <KEYWORD1>PRRS</KEYWORD1>\r
+ <KEYWORD1>PRRSOL</KEYWORD1>\r
+ <KEYWORD1>PRSE</KEYWORD1>\r
+ <KEYWORD1>PRSECT</KEYWORD1>\r
+ <KEYWORD1>PRSS</KEYWORD1>\r
+ <KEYWORD1>PRSSOL</KEYWORD1>\r
+ <KEYWORD1>PRTI</KEYWORD1>\r
+ <KEYWORD1>PRTIME</KEYWORD1>\r
+ <KEYWORD1>PRVA</KEYWORD1>\r
+ <KEYWORD1>PRVA</KEYWORD1>\r
+ <KEYWORD1>PRVAR</KEYWORD1>\r
+ <KEYWORD1>PRVAROPT</KEYWORD1>\r
+ <KEYWORD1>PRVE</KEYWORD1>\r
+ <KEYWORD1>PRVECT</KEYWORD1>\r
+ <KEYWORD1>PSCR</KEYWORD1>\r
+ <KEYWORD1>PSCR</KEYWORD1>\r
+ <KEYWORD1>PSDC</KEYWORD1>\r
+ <KEYWORD1>PSDCOM</KEYWORD1>\r
+ <KEYWORD1>PSDF</KEYWORD1>\r
+ <KEYWORD1>PSDFRQ</KEYWORD1>\r
+ <KEYWORD1>PSDR</KEYWORD1>\r
+ <KEYWORD1>PSDRES</KEYWORD1>\r
+ <KEYWORD1>PSDS</KEYWORD1>\r
+ <KEYWORD1>PSDSPL</KEYWORD1>\r
+ <KEYWORD1>PSDU</KEYWORD1>\r
+ <KEYWORD1>PSDUNIT</KEYWORD1>\r
+ <KEYWORD1>PSDV</KEYWORD1>\r
+ <KEYWORD1>PSDVAL</KEYWORD1>\r
+ <KEYWORD1>PSDW</KEYWORD1>\r
+ <KEYWORD1>PSDWAV</KEYWORD1>\r
+ <KEYWORD1>PSEL</KEYWORD1>\r
+ <KEYWORD1>PSEL</KEYWORD1>\r
+ <KEYWORD1>PSOL</KEYWORD1>\r
+ <KEYWORD1>PSOLVE</KEYWORD1>\r
+ <KEYWORD1>PSPE</KEYWORD1>\r
+ <KEYWORD1>PSPEC</KEYWORD1>\r
+ <KEYWORD1>PSPR</KEYWORD1>\r
+ <KEYWORD1>PSPRNG</KEYWORD1>\r
+ <KEYWORD1>PSTR</KEYWORD1>\r
+ <KEYWORD1>PSTRES</KEYWORD1>\r
+ <KEYWORD1>PTEM</KEYWORD1>\r
+ <KEYWORD1>PTEMP</KEYWORD1>\r
+ <KEYWORD1>PTXY</KEYWORD1>\r
+ <KEYWORD1>PTXY</KEYWORD1>\r
+ <KEYWORD1>PUNI</KEYWORD1>\r
+ <KEYWORD1>PUNIT</KEYWORD1>\r
+ <KEYWORD1>PVEC</KEYWORD1>\r
+ <KEYWORD1>PVECT</KEYWORD1>\r
+ <KEYWORD1>QDVA</KEYWORD1>\r
+ <KEYWORD1>QDVAL</KEYWORD1>\r
+ <KEYWORD1>QFAC</KEYWORD1>\r
+ <KEYWORD1>QFACT</KEYWORD1>\r
+ <KEYWORD1>QUAD</KEYWORD1>\r
+ <KEYWORD1>QUAD</KEYWORD1>\r
+ <KEYWORD1>QUOT</KEYWORD1>\r
+ <KEYWORD1>QUOT</KEYWORD1>\r
+ <KEYWORD1>R</KEYWORD1>\r
+ <KEYWORD1>RACE</KEYWORD1>\r
+ <KEYWORD1>RACE</KEYWORD1>\r
+ <KEYWORD1>RALL</KEYWORD1>\r
+ <KEYWORD1>RALL</KEYWORD1>\r
+ <KEYWORD1>RAPP</KEYWORD1>\r
+ <KEYWORD1>RAPPND</KEYWORD1>\r
+ <KEYWORD1>RBE3</KEYWORD1>\r
+ <KEYWORD1>RBE3</KEYWORD1>\r
+ <KEYWORD1>RCON</KEYWORD1>\r
+ <KEYWORD1>RCON</KEYWORD1>\r
+ <KEYWORD1>RDEL</KEYWORD1>\r
+ <KEYWORD1>RDELE</KEYWORD1>\r
+ <KEYWORD1>REAL</KEYWORD1>\r
+ <KEYWORD1>REAL</KEYWORD1>\r
+ <KEYWORD1>REAL</KEYWORD1>\r
+ <KEYWORD1>REALVAR</KEYWORD1>\r
+ <KEYWORD1>RECT</KEYWORD1>\r
+ <KEYWORD1>RECTNG</KEYWORD1>\r
+ <KEYWORD1>REDU</KEYWORD1>\r
+ <KEYWORD1>REDUCE</KEYWORD1>\r
+ <KEYWORD1>REFL</KEYWORD1>\r
+ <KEYWORD1>REFLCOEF</KEYWORD1>\r
+ <KEYWORD1>REOR</KEYWORD1>\r
+ <KEYWORD1>REORDER</KEYWORD1>\r
+ <KEYWORD1>RESE</KEYWORD1>\r
+ <KEYWORD1>RESET</KEYWORD1>\r
+ <KEYWORD1>RESP</KEYWORD1>\r
+ <KEYWORD1>RESP</KEYWORD1>\r
+ <KEYWORD1>RESU</KEYWORD1>\r
+ <KEYWORD1>RESUME</KEYWORD1>\r
+ <KEYWORD1>REXP</KEYWORD1>\r
+ <KEYWORD1>REXPORT</KEYWORD1>\r
+ <KEYWORD1>RFIL</KEYWORD1>\r
+ <KEYWORD1>RFILSZ</KEYWORD1>\r
+ <KEYWORD1>RFOR</KEYWORD1>\r
+ <KEYWORD1>RFORCE</KEYWORD1>\r
+ <KEYWORD1>RIGI</KEYWORD1>\r
+ <KEYWORD1>RIGID</KEYWORD1>\r
+ <KEYWORD1>RIMP</KEYWORD1>\r
+ <KEYWORD1>RIMPORT</KEYWORD1>\r
+ <KEYWORD1>RITE</KEYWORD1>\r
+ <KEYWORD1>RITER</KEYWORD1>\r
+ <KEYWORD1>RLIS</KEYWORD1>\r
+ <KEYWORD1>RLIST</KEYWORD1>\r
+ <KEYWORD1>RMEM</KEYWORD1>\r
+ <KEYWORD1>RMEMRY</KEYWORD1>\r
+ <KEYWORD1>RMOD</KEYWORD1>\r
+ <KEYWORD1>RMODIF</KEYWORD1>\r
+ <KEYWORD1>RMOR</KEYWORD1>\r
+ <KEYWORD1>RMORE</KEYWORD1>\r
+ <KEYWORD1>ROCK</KEYWORD1>\r
+ <KEYWORD1>ROCK</KEYWORD1>\r
+ <KEYWORD1>RPOL</KEYWORD1>\r
+ <KEYWORD1>RPOLY</KEYWORD1>\r
+ <KEYWORD1>RPR4</KEYWORD1>\r
+ <KEYWORD1>RPR4</KEYWORD1>\r
+ <KEYWORD1>RPRI</KEYWORD1>\r
+ <KEYWORD1>RPRISM</KEYWORD1>\r
+ <KEYWORD1>RPSD</KEYWORD1>\r
+ <KEYWORD1>RPSD</KEYWORD1>\r
+ <KEYWORD1>RSPE</KEYWORD1>\r
+ <KEYWORD1>RSPEED</KEYWORD1>\r
+ <KEYWORD1>RSTA</KEYWORD1>\r
+ <KEYWORD1>RSTAT</KEYWORD1>\r
+ <KEYWORD1>RSYS</KEYWORD1>\r
+ <KEYWORD1>RSYS</KEYWORD1>\r
+ <KEYWORD1>RTIM</KEYWORD1>\r
+ <KEYWORD1>RTIMST</KEYWORD1>\r
+ <KEYWORD1>RUN</KEYWORD1>\r
+ <KEYWORD1>RWFR</KEYWORD1>\r
+ <KEYWORD1>RWFRNT</KEYWORD1>\r
+ <KEYWORD1>SABS</KEYWORD1>\r
+ <KEYWORD1>SABS</KEYWORD1>\r
+ <KEYWORD1>SADD</KEYWORD1>\r
+ <KEYWORD1>SADD</KEYWORD1>\r
+ <KEYWORD1>SALL</KEYWORD1>\r
+ <KEYWORD1>SALLOW</KEYWORD1>\r
+ <KEYWORD1>SARP</KEYWORD1>\r
+ <KEYWORD1>SARPLOT</KEYWORD1>\r
+ <KEYWORD1>SAVE</KEYWORD1>\r
+ <KEYWORD1>SAVE</KEYWORD1>\r
+ <KEYWORD1>SBCL</KEYWORD1>\r
+ <KEYWORD1>SBCLIST</KEYWORD1>\r
+ <KEYWORD1>SBCT</KEYWORD1>\r
+ <KEYWORD1>SBCTRAN</KEYWORD1>\r
+ <KEYWORD1>SDEL</KEYWORD1>\r
+ <KEYWORD1>SDELETE</KEYWORD1>\r
+ <KEYWORD1>SE</KEYWORD1>\r
+ <KEYWORD1>SECD</KEYWORD1>\r
+ <KEYWORD1>SECDATA</KEYWORD1>\r
+ <KEYWORD1>SECN</KEYWORD1>\r
+ <KEYWORD1>SECNUM</KEYWORD1>\r
+ <KEYWORD1>SECO</KEYWORD1>\r
+ <KEYWORD1>SECOFFSET</KEYWORD1>\r
+ <KEYWORD1>SECP</KEYWORD1>\r
+ <KEYWORD1>SECPLOT</KEYWORD1>\r
+ <KEYWORD1>SECR</KEYWORD1>\r
+ <KEYWORD1>SECREAD</KEYWORD1>\r
+ <KEYWORD1>SECT</KEYWORD1>\r
+ <KEYWORD1>SECTYPE</KEYWORD1>\r
+ <KEYWORD1>SECW</KEYWORD1>\r
+ <KEYWORD1>SECWRITE</KEYWORD1>\r
+ <KEYWORD1>SED</KEYWORD1>\r
+ <KEYWORD1>SEDL</KEYWORD1>\r
+ <KEYWORD1>SEDLIST</KEYWORD1>\r
+ <KEYWORD1>SEEX</KEYWORD1>\r
+ <KEYWORD1>SEEXP</KEYWORD1>\r
+ <KEYWORD1>SELI</KEYWORD1>\r
+ <KEYWORD1>SELIST</KEYWORD1>\r
+ <KEYWORD1>SELM</KEYWORD1>\r
+ <KEYWORD1>SELM</KEYWORD1>\r
+ <KEYWORD1>SENE</KEYWORD1>\r
+ <KEYWORD1>SENERGY</KEYWORD1>\r
+ <KEYWORD1>SEOP</KEYWORD1>\r
+ <KEYWORD1>SEOPT</KEYWORD1>\r
+ <KEYWORD1>SESY</KEYWORD1>\r
+ <KEYWORD1>SESYMM</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SETR</KEYWORD1>\r
+ <KEYWORD1>SETRAN</KEYWORD1>\r
+ <KEYWORD1>SEXP</KEYWORD1>\r
+ <KEYWORD1>SEXP</KEYWORD1>\r
+ <KEYWORD1>SF</KEYWORD1>\r
+ <KEYWORD1>SFA</KEYWORD1>\r
+ <KEYWORD1>SFAC</KEYWORD1>\r
+ <KEYWORD1>SFACT</KEYWORD1>\r
+ <KEYWORD1>SFAD</KEYWORD1>\r
+ <KEYWORD1>SFADELE</KEYWORD1>\r
+ <KEYWORD1>SFAL</KEYWORD1>\r
+ <KEYWORD1>SFALIST</KEYWORD1>\r
+ <KEYWORD1>SFBE</KEYWORD1>\r
+ <KEYWORD1>SFBEAM</KEYWORD1>\r
+ <KEYWORD1>SFCA</KEYWORD1>\r
+ <KEYWORD1>SFCALC</KEYWORD1>\r
+ <KEYWORD1>SFCU</KEYWORD1>\r
+ <KEYWORD1>SFCUM</KEYWORD1>\r
+ <KEYWORD1>SFDE</KEYWORD1>\r
+ <KEYWORD1>SFDELE</KEYWORD1>\r
+ <KEYWORD1>SFE</KEYWORD1>\r
+ <KEYWORD1>SFED</KEYWORD1>\r
+ <KEYWORD1>SFEDELE</KEYWORD1>\r
+ <KEYWORD1>SFEL</KEYWORD1>\r
+ <KEYWORD1>SFELIST</KEYWORD1>\r
+ <KEYWORD1>SFFU</KEYWORD1>\r
+ <KEYWORD1>SFFUN</KEYWORD1>\r
+ <KEYWORD1>SFGR</KEYWORD1>\r
+ <KEYWORD1>SFGRAD</KEYWORD1>\r
+ <KEYWORD1>SFL</KEYWORD1>\r
+ <KEYWORD1>SFLD</KEYWORD1>\r
+ <KEYWORD1>SFLDELE</KEYWORD1>\r
+ <KEYWORD1>SFLI</KEYWORD1>\r
+ <KEYWORD1>SFLIST</KEYWORD1>\r
+ <KEYWORD1>SFLL</KEYWORD1>\r
+ <KEYWORD1>SFLLIST</KEYWORD1>\r
+ <KEYWORD1>SFSC</KEYWORD1>\r
+ <KEYWORD1>SFSCALE</KEYWORD1>\r
+ <KEYWORD1>SFTR</KEYWORD1>\r
+ <KEYWORD1>SFTRAN</KEYWORD1>\r
+ <KEYWORD1>SHEL</KEYWORD1>\r
+ <KEYWORD1>SHELL</KEYWORD1>\r
+ <KEYWORD1>SHPP</KEYWORD1>\r
+ <KEYWORD1>SHPP</KEYWORD1>\r
+ <KEYWORD1>SLIS</KEYWORD1>\r
+ <KEYWORD1>SLIST</KEYWORD1>\r
+ <KEYWORD1>SLPP</KEYWORD1>\r
+ <KEYWORD1>SLPPLOT</KEYWORD1>\r
+ <KEYWORD1>SLSP</KEYWORD1>\r
+ <KEYWORD1>SLSPLOT</KEYWORD1>\r
+ <KEYWORD1>SMAL</KEYWORD1>\r
+ <KEYWORD1>SMALL</KEYWORD1>\r
+ <KEYWORD1>SMAX</KEYWORD1>\r
+ <KEYWORD1>SMAX</KEYWORD1>\r
+ <KEYWORD1>SMBO</KEYWORD1>\r
+ <KEYWORD1>SMBODY</KEYWORD1>\r
+ <KEYWORD1>SMCO</KEYWORD1>\r
+ <KEYWORD1>SMCONS</KEYWORD1>\r
+ <KEYWORD1>SMFO</KEYWORD1>\r
+ <KEYWORD1>SMFOR</KEYWORD1>\r
+ <KEYWORD1>SMIN</KEYWORD1>\r
+ <KEYWORD1>SMIN</KEYWORD1>\r
+ <KEYWORD1>SMRT</KEYWORD1>\r
+ <KEYWORD1>SMRTSIZE</KEYWORD1>\r
+ <KEYWORD1>SMSU</KEYWORD1>\r
+ <KEYWORD1>SMSURF</KEYWORD1>\r
+ <KEYWORD1>SMUL</KEYWORD1>\r
+ <KEYWORD1>SMULT</KEYWORD1>\r
+ <KEYWORD1>SOLC</KEYWORD1>\r
+ <KEYWORD1>SOLCONTROL</KEYWORD1>\r
+ <KEYWORD1>SOLU</KEYWORD1>\r
+ <KEYWORD1>SOLU</KEYWORD1>\r
+ <KEYWORD1>SOLU</KEYWORD1>\r
+ <KEYWORD1>SOLUOPT</KEYWORD1>\r
+ <KEYWORD1>SOLV</KEYWORD1>\r
+ <KEYWORD1>SOLVE</KEYWORD1>\r
+ <KEYWORD1>SORT</KEYWORD1>\r
+ <KEYWORD1>SORT</KEYWORD1>\r
+ <KEYWORD1>SOUR</KEYWORD1>\r
+ <KEYWORD1>SOURCE</KEYWORD1>\r
+ <KEYWORD1>SPAC</KEYWORD1>\r
+ <KEYWORD1>SPACE</KEYWORD1>\r
+ <KEYWORD1>SPAR</KEYWORD1>\r
+ <KEYWORD1>SPARM</KEYWORD1>\r
+ <KEYWORD1>SPEC</KEYWORD1>\r
+ <KEYWORD1>SPEC</KEYWORD1>\r
+ <KEYWORD1>SPH4</KEYWORD1>\r
+ <KEYWORD1>SPH4</KEYWORD1>\r
+ <KEYWORD1>SPH5</KEYWORD1>\r
+ <KEYWORD1>SPH5</KEYWORD1>\r
+ <KEYWORD1>SPHE</KEYWORD1>\r
+ <KEYWORD1>SPHERE</KEYWORD1>\r
+ <KEYWORD1>SPLI</KEYWORD1>\r
+ <KEYWORD1>SPLINE</KEYWORD1>\r
+ <KEYWORD1>SPOI</KEYWORD1>\r
+ <KEYWORD1>SPOINT</KEYWORD1>\r
+ <KEYWORD1>SPOP</KEYWORD1>\r
+ <KEYWORD1>SPOPT</KEYWORD1>\r
+ <KEYWORD1>SPRE</KEYWORD1>\r
+ <KEYWORD1>SPREAD</KEYWORD1>\r
+ <KEYWORD1>SPTO</KEYWORD1>\r
+ <KEYWORD1>SPTOPT</KEYWORD1>\r
+ <KEYWORD1>SQRT</KEYWORD1>\r
+ <KEYWORD1>SQRT</KEYWORD1>\r
+ <KEYWORD1>SRCS</KEYWORD1>\r
+ <KEYWORD1>SRCS</KEYWORD1>\r
+ <KEYWORD1>SRSS</KEYWORD1>\r
+ <KEYWORD1>SRSS</KEYWORD1>\r
+ <KEYWORD1>SSLN</KEYWORD1>\r
+ <KEYWORD1>SSLN</KEYWORD1>\r
+ <KEYWORD1>SSTI</KEYWORD1>\r
+ <KEYWORD1>SSTIF</KEYWORD1>\r
+ <KEYWORD1>SSUM</KEYWORD1>\r
+ <KEYWORD1>SSUM</KEYWORD1>\r
+ <KEYWORD1>STAT</KEYWORD1>\r
+ <KEYWORD1>STAT</KEYWORD1>\r
+ <KEYWORD1>STEF</KEYWORD1>\r
+ <KEYWORD1>STEF</KEYWORD1>\r
+ <KEYWORD1>STOR</KEYWORD1>\r
+ <KEYWORD1>STORE</KEYWORD1>\r
+ <KEYWORD1>SUBO</KEYWORD1>\r
+ <KEYWORD1>SUBOPT</KEYWORD1>\r
+ <KEYWORD1>SUBS</KEYWORD1>\r
+ <KEYWORD1>SUBSET</KEYWORD1>\r
+ <KEYWORD1>SUMT</KEYWORD1>\r
+ <KEYWORD1>SUMTYPE</KEYWORD1>\r
+ <KEYWORD1>SV</KEYWORD1>\r
+ <KEYWORD1>SVTY</KEYWORD1>\r
+ <KEYWORD1>SVTYP</KEYWORD1>\r
+ <KEYWORD1>TALL</KEYWORD1>\r
+ <KEYWORD1>TALLOW</KEYWORD1>\r
+ <KEYWORD1>TB</KEYWORD1>\r
+ <KEYWORD1>TBCO</KEYWORD1>\r
+ <KEYWORD1>TBCOPY</KEYWORD1>\r
+ <KEYWORD1>TBDA</KEYWORD1>\r
+ <KEYWORD1>TBDATA</KEYWORD1>\r
+ <KEYWORD1>TBDE</KEYWORD1>\r
+ <KEYWORD1>TBDELE</KEYWORD1>\r
+ <KEYWORD1>TBLE</KEYWORD1>\r
+ <KEYWORD1>TBLE</KEYWORD1>\r
+ <KEYWORD1>TBLI</KEYWORD1>\r
+ <KEYWORD1>TBLIST</KEYWORD1>\r
+ <KEYWORD1>TBMO</KEYWORD1>\r
+ <KEYWORD1>TBMODIF</KEYWORD1>\r
+ <KEYWORD1>TBPL</KEYWORD1>\r
+ <KEYWORD1>TBPLOT</KEYWORD1>\r
+ <KEYWORD1>TBPT</KEYWORD1>\r
+ <KEYWORD1>TBPT</KEYWORD1>\r
+ <KEYWORD1>TBTE</KEYWORD1>\r
+ <KEYWORD1>TBTEMP</KEYWORD1>\r
+ <KEYWORD1>TCHG</KEYWORD1>\r
+ <KEYWORD1>TCHG</KEYWORD1>\r
+ <KEYWORD1>TEE</KEYWORD1>\r
+ <KEYWORD1>TERM</KEYWORD1>\r
+ <KEYWORD1>TERM</KEYWORD1>\r
+ <KEYWORD1>TIME</KEYWORD1>\r
+ <KEYWORD1>TIME</KEYWORD1>\r
+ <KEYWORD1>TIME</KEYWORD1>\r
+ <KEYWORD1>TIMERANGE</KEYWORD1>\r
+ <KEYWORD1>TIMI</KEYWORD1>\r
+ <KEYWORD1>TIMINT</KEYWORD1>\r
+ <KEYWORD1>TIMP</KEYWORD1>\r
+ <KEYWORD1>TIMP</KEYWORD1>\r
+ <KEYWORD1>TINT</KEYWORD1>\r
+ <KEYWORD1>TINTP</KEYWORD1>\r
+ <KEYWORD1>TOFF</KEYWORD1>\r
+ <KEYWORD1>TOFFST</KEYWORD1>\r
+ <KEYWORD1>TOPD</KEYWORD1>\r
+ <KEYWORD1>TOPDEF</KEYWORD1>\r
+ <KEYWORD1>TOPE</KEYWORD1>\r
+ <KEYWORD1>TOPEXE</KEYWORD1>\r
+ <KEYWORD1>TOPI</KEYWORD1>\r
+ <KEYWORD1>TOPITER</KEYWORD1>\r
+ <KEYWORD1>TORQ2D</KEYWORD1>\r
+ <KEYWORD1>TORQ</KEYWORD1>\r
+ <KEYWORD1>TORQ</KEYWORD1>\r
+ <KEYWORD1>TORQ</KEYWORD1>\r
+ <KEYWORD1>TORQC2D</KEYWORD1>\r
+ <KEYWORD1>TORQSUM</KEYWORD1>\r
+ <KEYWORD1>TORU</KEYWORD1>\r
+ <KEYWORD1>TORUS</KEYWORD1>\r
+ <KEYWORD1>TOTA</KEYWORD1>\r
+ <KEYWORD1>TOTAL</KEYWORD1>\r
+ <KEYWORD1>TRAN</KEYWORD1>\r
+ <KEYWORD1>TRAN</KEYWORD1>\r
+ <KEYWORD1>TRANS</KEYWORD1>\r
+ <KEYWORD1>TRANSFER</KEYWORD1>\r
+ <KEYWORD1>TREF</KEYWORD1>\r
+ <KEYWORD1>TREF</KEYWORD1>\r
+ <KEYWORD1>TRNO</KEYWORD1>\r
+ <KEYWORD1>TRNOPT</KEYWORD1>\r
+ <KEYWORD1>TRPD</KEYWORD1>\r
+ <KEYWORD1>TRPDEL</KEYWORD1>\r
+ <KEYWORD1>TRPL</KEYWORD1>\r
+ <KEYWORD1>TRPLIS</KEYWORD1>\r
+ <KEYWORD1>TRPO</KEYWORD1>\r
+ <KEYWORD1>TRPOIN</KEYWORD1>\r
+ <KEYWORD1>TRTI</KEYWORD1>\r
+ <KEYWORD1>TRTIME</KEYWORD1>\r
+ <KEYWORD1>TSHA</KEYWORD1>\r
+ <KEYWORD1>TSHAP</KEYWORD1>\r
+ <KEYWORD1>TSRE</KEYWORD1>\r
+ <KEYWORD1>TSRES</KEYWORD1>\r
+ <KEYWORD1>TUNI</KEYWORD1>\r
+ <KEYWORD1>TUNIF</KEYWORD1>\r
+ <KEYWORD1>TVAR</KEYWORD1>\r
+ <KEYWORD1>TVAR</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>UIMP</KEYWORD1>\r
+ <KEYWORD1>UIMP</KEYWORD1>\r
+ <KEYWORD1>UPCO</KEYWORD1>\r
+ <KEYWORD1>UPCOORD</KEYWORD1>\r
+ <KEYWORD1>UPGE</KEYWORD1>\r
+ <KEYWORD1>UPGEOM</KEYWORD1>\r
+ <KEYWORD1>USRC</KEYWORD1>\r
+ <KEYWORD1>USRCAL</KEYWORD1>\r
+ <KEYWORD1>V</KEYWORD1>\r
+ <KEYWORD1>VA</KEYWORD1>\r
+ <KEYWORD1>VADD</KEYWORD1>\r
+ <KEYWORD1>VADD</KEYWORD1>\r
+ <KEYWORD1>VALV</KEYWORD1>\r
+ <KEYWORD1>VALVE</KEYWORD1>\r
+ <KEYWORD1>VARD</KEYWORD1>\r
+ <KEYWORD1>VARDEL</KEYWORD1>\r
+ <KEYWORD1>VARN</KEYWORD1>\r
+ <KEYWORD1>VARNAM</KEYWORD1>\r
+ <KEYWORD1>VATT</KEYWORD1>\r
+ <KEYWORD1>VATT</KEYWORD1>\r
+ <KEYWORD1>VCLE</KEYWORD1>\r
+ <KEYWORD1>VCLEAR</KEYWORD1>\r
+ <KEYWORD1>VCRO</KEYWORD1>\r
+ <KEYWORD1>VCROSS</KEYWORD1>\r
+ <KEYWORD1>VCVF</KEYWORD1>\r
+ <KEYWORD1>VCVFILL</KEYWORD1>\r
+ <KEYWORD1>VDDA</KEYWORD1>\r
+ <KEYWORD1>VDDAM</KEYWORD1>\r
+ <KEYWORD1>VDEL</KEYWORD1>\r
+ <KEYWORD1>VDELE</KEYWORD1>\r
+ <KEYWORD1>VDGL</KEYWORD1>\r
+ <KEYWORD1>VDGL</KEYWORD1>\r
+ <KEYWORD1>VDOT</KEYWORD1>\r
+ <KEYWORD1>VDOT</KEYWORD1>\r
+ <KEYWORD1>VDRA</KEYWORD1>\r
+ <KEYWORD1>VDRAG</KEYWORD1>\r
+ <KEYWORD1>VEXT</KEYWORD1>\r
+ <KEYWORD1>VEXT</KEYWORD1>\r
+ <KEYWORD1>VGEN</KEYWORD1>\r
+ <KEYWORD1>VGEN</KEYWORD1>\r
+ <KEYWORD1>VGET</KEYWORD1>\r
+ <KEYWORD1>VGET</KEYWORD1>\r
+ <KEYWORD1>VGLU</KEYWORD1>\r
+ <KEYWORD1>VGLUE</KEYWORD1>\r
+ <KEYWORD1>VIMP</KEYWORD1>\r
+ <KEYWORD1>VIMP</KEYWORD1>\r
+ <KEYWORD1>VINP</KEYWORD1>\r
+ <KEYWORD1>VINP</KEYWORD1>\r
+ <KEYWORD1>VINV</KEYWORD1>\r
+ <KEYWORD1>VINV</KEYWORD1>\r
+ <KEYWORD1>VLIS</KEYWORD1>\r
+ <KEYWORD1>VLIST</KEYWORD1>\r
+ <KEYWORD1>VLSC</KEYWORD1>\r
+ <KEYWORD1>VLSCALE</KEYWORD1>\r
+ <KEYWORD1>VMES</KEYWORD1>\r
+ <KEYWORD1>VMESH</KEYWORD1>\r
+ <KEYWORD1>VOFF</KEYWORD1>\r
+ <KEYWORD1>VOFFST</KEYWORD1>\r
+ <KEYWORD1>VOLU</KEYWORD1>\r
+ <KEYWORD1>VOLUMES</KEYWORD1>\r
+ <KEYWORD1>VOVL</KEYWORD1>\r
+ <KEYWORD1>VOVLAP</KEYWORD1>\r
+ <KEYWORD1>VPLO</KEYWORD1>\r
+ <KEYWORD1>VPLOT</KEYWORD1>\r
+ <KEYWORD1>VPTN</KEYWORD1>\r
+ <KEYWORD1>VPTN</KEYWORD1>\r
+ <KEYWORD1>VPUT</KEYWORD1>\r
+ <KEYWORD1>VPUT</KEYWORD1>\r
+ <KEYWORD1>VROT</KEYWORD1>\r
+ <KEYWORD1>VROTAT</KEYWORD1>\r
+ <KEYWORD1>VSBA</KEYWORD1>\r
+ <KEYWORD1>VSBA</KEYWORD1>\r
+ <KEYWORD1>VSBV</KEYWORD1>\r
+ <KEYWORD1>VSBV</KEYWORD1>\r
+ <KEYWORD1>VSBW</KEYWORD1>\r
+ <KEYWORD1>VSBW</KEYWORD1>\r
+ <KEYWORD1>VSEL</KEYWORD1>\r
+ <KEYWORD1>VSEL</KEYWORD1>\r
+ <KEYWORD1>VSLA</KEYWORD1>\r
+ <KEYWORD1>VSLA</KEYWORD1>\r
+ <KEYWORD1>VSUM</KEYWORD1>\r
+ <KEYWORD1>VSUM</KEYWORD1>\r
+ <KEYWORD1>VSWE</KEYWORD1>\r
+ <KEYWORD1>VSWEEP</KEYWORD1>\r
+ <KEYWORD1>VSYM</KEYWORD1>\r
+ <KEYWORD1>VSYMM</KEYWORD1>\r
+ <KEYWORD1>VTRA</KEYWORD1>\r
+ <KEYWORD1>VTRAN</KEYWORD1>\r
+ <KEYWORD1>VTYP</KEYWORD1>\r
+ <KEYWORD1>VTYPE</KEYWORD1>\r
+ <KEYWORD1>WAVE</KEYWORD1>\r
+ <KEYWORD1>WAVES</KEYWORD1>\r
+ <KEYWORD1>WERA</KEYWORD1>\r
+ <KEYWORD1>WERASE</KEYWORD1>\r
+ <KEYWORD1>WFRO</KEYWORD1>\r
+ <KEYWORD1>WFRONT</KEYWORD1>\r
+ <KEYWORD1>WMOR</KEYWORD1>\r
+ <KEYWORD1>WMORE</KEYWORD1>\r
+ <KEYWORD1>WPAV</KEYWORD1>\r
+ <KEYWORD1>WPAVE</KEYWORD1>\r
+ <KEYWORD1>WPCS</KEYWORD1>\r
+ <KEYWORD1>WPCSYS</KEYWORD1>\r
+ <KEYWORD1>WPLA</KEYWORD1>\r
+ <KEYWORD1>WPLANE</KEYWORD1>\r
+ <KEYWORD1>WPOF</KEYWORD1>\r
+ <KEYWORD1>WPOFFS</KEYWORD1>\r
+ <KEYWORD1>WPRO</KEYWORD1>\r
+ <KEYWORD1>WPROTA</KEYWORD1>\r
+ <KEYWORD1>WPST</KEYWORD1>\r
+ <KEYWORD1>WPSTYL</KEYWORD1>\r
+ <KEYWORD1>WRIT</KEYWORD1>\r
+ <KEYWORD1>WRITE</KEYWORD1>\r
+ <KEYWORD1>WSOR</KEYWORD1>\r
+ <KEYWORD1>WSORT</KEYWORD1>\r
+ <KEYWORD1>WSTA</KEYWORD1>\r
+ <KEYWORD1>WSTART</KEYWORD1>\r
+ <KEYWORD1>XVAR</KEYWORD1>\r
+ <KEYWORD1>XVAR</KEYWORD1>\r
+ <KEYWORD1>XVAROPT</KEYWORD1>\r
+\r
+<!-- Material properties (short notation) --> \r
+\r
+ <KEYWORD1>ex</KEYWORD1>\r
+ <KEYWORD1>ey</KEYWORD1>\r
+ <KEYWORD1>ez</KEYWORD1>\r
+ <KEYWORD1>nuxy</KEYWORD1>\r
+ <KEYWORD1>nuxz</KEYWORD1>\r
+ <KEYWORD1>nuyz</KEYWORD1>\r
+ <KEYWORD1>gxy</KEYWORD1>\r
+ <KEYWORD1>gxz</KEYWORD1>\r
+ <KEYWORD1>gyz</KEYWORD1>\r
+ <KEYWORD1>alpx</KEYWORD1>\r
+ <KEYWORD1>alpy</KEYWORD1>\r
+ <KEYWORD1>alpz</KEYWORD1>\r
+ <KEYWORD1>kxx</KEYWORD1>\r
+ <KEYWORD1>kyy</KEYWORD1>\r
+ <KEYWORD1>kzz</KEYWORD1>\r
+ <KEYWORD1>dens</KEYWORD1>\r
+ <KEYWORD1>damp</KEYWORD1>\r
+ <KEYWORD1>mu</KEYWORD1>\r
+ <KEYWORD1>prxy</KEYWORD1>\r
+\r
+<!-- *get functions (abbreviated) --> \r
+\r
+ <KEYWORD2>ANGLEK</KEYWORD2>\r
+ <KEYWORD2>ANGLEN</KEYWORD2>\r
+ <KEYWORD2>AREAKP</KEYWORD2>\r
+ <KEYWORD2>AREAND</KEYWORD2>\r
+ <KEYWORD2>ARFACE</KEYWORD2>\r
+ <KEYWORD2>ARNEXT</KEYWORD2>\r
+ <KEYWORD2>ARNODE</KEYWORD2>\r
+ <KEYWORD2>AX</KEYWORD2>\r
+ <KEYWORD2>AY</KEYWORD2>\r
+ <KEYWORD2>AZ</KEYWORD2>\r
+ <KEYWORD2>CENTRX</KEYWORD2>\r
+ <KEYWORD2>CENTRY</KEYWORD2>\r
+ <KEYWORD2>CENTRZ</KEYWORD2>\r
+ <KEYWORD2>DISTEN</KEYWORD2>\r
+ <KEYWORD2>DISTKP</KEYWORD2>\r
+ <KEYWORD2>DISTND</KEYWORD2>\r
+ <KEYWORD2>ELADJ</KEYWORD2>\r
+ <KEYWORD2>ELNEXT</KEYWORD2>\r
+ <KEYWORD2>ENDS</KEYWORD2>\r
+ <KEYWORD2>ENEARN</KEYWORD2>\r
+ <KEYWORD2>ENEXTN</KEYWORD2>\r
+ <KEYWORD2>ENKE</KEYWORD2>\r
+ <KEYWORD2>KNEAR</KEYWORD2>\r
+ <KEYWORD2>KP</KEYWORD2>\r
+ <KEYWORD2>KPNEXT</KEYWORD2>\r
+ <KEYWORD2>KX</KEYWORD2>\r
+ <KEYWORD2>KY</KEYWORD2>\r
+ <KEYWORD2>KZ</KEYWORD2>\r
+ <KEYWORD2>LOC</KEYWORD2>\r
+ <KEYWORD2>LSNEXT</KEYWORD2>\r
+ <KEYWORD2>LSX</KEYWORD2>\r
+ <KEYWORD2>LSY</KEYWORD2>\r
+ <KEYWORD2>LSZ</KEYWORD2>\r
+ <KEYWORD2>LX</KEYWORD2>\r
+ <KEYWORD2>LY</KEYWORD2>\r
+ <KEYWORD2>LZ</KEYWORD2>\r
+ <KEYWORD2>MAG</KEYWORD2>\r
+ <KEYWORD2>NDFACE</KEYWORD2>\r
+ <KEYWORD2>NDNEXT</KEYWORD2>\r
+ <KEYWORD2>NELEM</KEYWORD2>\r
+ <KEYWORD2>NMFACE</KEYWORD2>\r
+ <KEYWORD2>NNEAR</KEYWORD2>\r
+ <KEYWORD2>NODE</KEYWORD2>\r
+ <KEYWORD2>NORMKX</KEYWORD2>\r
+ <KEYWORD2>NORMKY</KEYWORD2>\r
+ <KEYWORD2>NORMKZ</KEYWORD2>\r
+ <KEYWORD2>NORMNX</KEYWORD2>\r
+ <KEYWORD2>NORMNY</KEYWORD2>\r
+ <KEYWORD2>NORMNZ</KEYWORD2>\r
+ <KEYWORD2>NX</KEYWORD2>\r
+ <KEYWORD2>NY</KEYWORD2>\r
+ <KEYWORD2>NZ</KEYWORD2>\r
+ <KEYWORD2>PRES</KEYWORD2>\r
+ <KEYWORD2>ROTX</KEYWORD2>\r
+ <KEYWORD2>ROTY</KEYWORD2>\r
+ <KEYWORD2>ROTZ</KEYWORD2>\r
+ <KEYWORD2>TEMP</KEYWORD2>\r
+ <KEYWORD2>UX</KEYWORD2>\r
+ <KEYWORD2>UY</KEYWORD2>\r
+ <KEYWORD2>UZ</KEYWORD2>\r
+ <KEYWORD2>VLNEXT</KEYWORD2>\r
+ <KEYWORD2>VOLT</KEYWORD2>\r
+ <KEYWORD2>VX</KEYWORD2>\r
+ <KEYWORD2>VY</KEYWORD2>\r
+ <KEYWORD2>VZ</KEYWORD2>\r
+\r
+ <!-- [Keywords 3] -->\r
+ <!-- command option labels -->\r
+\r
+ <!-- AADD command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- *ABBRES command -->\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>change</KEYWORD3>\r
+\r
+ <!-- *AFUN command -->\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>deg</KEYWORD3>\r
+\r
+ <!-- ALIST command -->\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+\r
+ <!-- ALLSEL command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>below</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+\r
+ <!-- /ANFILE command -->\r
+ <KEYWORD3>,save</KEYWORD3>\r
+ <KEYWORD3>resume</KEYWORD3>\r
+\r
+ <!-- /ANNOT command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>,save</KEYWORD3>\r
+ <KEYWORD3>scale</KEYWORD3>\r
+ <KEYWORD3>xorig</KEYWORD3>\r
+ <KEYWORD3>yorig</KEYWORD3>\r
+ <KEYWORD3>snap</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>refr</KEYWORD3>\r
+\r
+ <!-- ANTYPE command -->\r
+ <KEYWORD3>static</KEYWORD3>\r
+ <KEYWORD3>buckle</KEYWORD3>\r
+ <KEYWORD3>modal</KEYWORD3>\r
+ <KEYWORD3>harmic</KEYWORD3>\r
+ <KEYWORD3>trans</KEYWORD3>\r
+ <KEYWORD3>substr</KEYWORD3>\r
+ <KEYWORD3>spectr</KEYWORD3>\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>rest</KEYWORD3>\r
+\r
+ <!-- APLOT command -->\r
+ <KEYWORD3>dege</KEYWORD3>\r
+\r
+ <!-- APPEND command -->\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>next</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>near</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- ARCTRM command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>,l</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+\r
+ <!-- AREFINE command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>smooth</KEYWORD3>\r
+ <KEYWORD3>clean</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- ARSPLIT command -->\r
+ <KEYWORD3>tight</KEYWORD3>\r
+\r
+ <!--ARSYM command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!--ASBA, ASBL, ASBV, ASBW commands -->\r
+ <KEYWORD3>sepo</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+\r
+ <!-- ASEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>ext</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>acca</KEYWORD3>\r
+\r
+ <!-- ASLL, ASLV commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+\r
+ <!-- /ASSIGN command -->\r
+ <KEYWORD3>emat</KEYWORD3>\r
+ <KEYWORD3>esav</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>redm</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>rdsp</KEYWORD3>\r
+ <KEYWORD3>rfrq</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>rst</KEYWORD3>\r
+ <KEYWORD3>rth</KEYWORD3>\r
+ <KEYWORD3>rmg</KEYWORD3>\r
+ <KEYWORD3>erot</KEYWORD3>\r
+ <KEYWORD3>osav</KEYWORD3>\r
+ <KEYWORD3>rfl</KEYWORD3>\r
+ <KEYWORD3>seld</KEYWORD3>\r
+\r
+ <!-- ASUM command -->\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>fine</KEYWORD3>\r
+\r
+ <!-- AUTOTS command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- /AXLAB command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+\r
+ <!-- /BATCH command -->\r
+ <KEYWORD3>list</KEYWORD3>\r
+\r
+ <!-- /BEND command -->\r
+ <KEYWORD3>lr</KEYWORD3>\r
+ <KEYWORD3>sr</KEYWORD3>\r
+\r
+ <!-- BF, BFA, BFADELE, BFALIST, BFCUM, BFDELE, BFE, BFECUM, BFEDELE, BFELIST, BFESCAL -->\r
+ <!-- BFK, BFKDELE, BFKLIST, BFL, BFLDELE, BFLIST, BFLLIST, BFSCALE, BFUNIF, BFV, -->\r
+ <!-- BFVDELE, BFVLIST commands -->\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>flue</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+ <KEYWORD3>mvdi</KEYWORD3>\r
+ <KEYWORD3>chrgd</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>repl</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>igno</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- BIOT command -->\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+\r
+ <!-- BOPTN command -->\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+ <KEYWORD3>nwarn</KEYWORD3>\r
+ <KEYWORD3>version</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>rv52</KEYWORD3>\r
+ <KEYWORD3>rv51</KEYWORD3>\r
+\r
+ <!-- BUCOPT command -->\r
+ <KEYWORD3>subsp</KEYWORD3>\r
+ <KEYWORD3>lanb</KEYWORD3>\r
+ <KEYWORD3>reduc</KEYWORD3>\r
+\r
+ <!-- CDREAD, CDWRITE commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>db</KEYWORD3>\r
+ <KEYWORD3>solid</KEYWORD3>\r
+ <KEYWORD3>comb</KEYWORD3>\r
+ <KEYWORD3>geom</KEYWORD3>\r
+ <KEYWORD3>cm</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>load</KEYWORD3>\r
+ <KEYWORD3>blocked</KEYWORD3>\r
+ <KEYWORD3>unblocked</KEYWORD3>\r
+\r
+ <!-- CELIST command -->\r
+ <KEYWORD3>any</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- CERIG command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>uxyz</KEYWORD3>\r
+ <KEYWORD3>rxyz</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+\r
+ <!-- CFOPEN command -->\r
+ <KEYWORD3>append</KEYWORD3>\r
+\r
+ <!-- CHECK command -->\r
+ <KEYWORD3>,esel</KEYWORD3>\r
+ <KEYWORD3>warn</KEYWORD3>\r
+ <KEYWORD3>err</KEYWORD3>\r
+\r
+ <!-- CLEAR command -->\r
+ <KEYWORD3>start</KEYWORD3>\r
+ <KEYWORD3>nostart</KEYWORD3>\r
+\r
+ <!-- CLOCAL, CS, CSKP, CSWPLA commands -->\r
+ <KEYWORD3>cart</KEYWORD3>\r
+ <KEYWORD3>cylin</KEYWORD3>\r
+ <KEYWORD3>sphe</KEYWORD3>\r
+ <KEYWORD3>toro</KEYWORD3>\r
+\r
+ <!-- CM command -->\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+\r
+ <!-- CMAP command -->\r
+ <KEYWORD3>create</KEYWORD3>\r
+\r
+ <!-- CMEDIT command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- CMPLOT command -->\r
+ <KEYWORD3>,n</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- CMSEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+\r
+ <!-- CNVTOL command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>curt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+\r
+ <!-- COLOR command -->\r
+ <KEYWORD3>axes</KEYWORD3>\r
+ <KEYWORD3>axnum</KEYWORD3>\r
+ <KEYWORD3>num</KEYWORD3>\r
+ <KEYWORD3>outl</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>isurf</KEYWORD3>\r
+ <KEYWORD3>wbak</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>curt</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+ <KEYWORD3>mast</KEYWORD3>\r
+ <KEYWORD3>,cp</KEYWORD3>\r
+ <KEYWORD3>,ce</KEYWORD3>\r
+ <KEYWORD3>nfor</KEYWORD3>\r
+ <KEYWORD3>nmom</KEYWORD3>\r
+ <KEYWORD3>rfor</KEYWORD3>\r
+ <KEYWORD3>rmom</KEYWORD3>\r
+ <KEYWORD3>path</KEYWORD3>\r
+ <KEYWORD3>grbak</KEYWORD3>\r
+ <KEYWORD3>grid</KEYWORD3>\r
+ <KEYWORD3>axlab</KEYWORD3>\r
+ <KEYWORD3>curve</KEYWORD3>\r
+ <KEYWORD3>cm</KEYWORD3>\r
+ <KEYWORD3>cntr</KEYWORD3>\r
+ <KEYWORD3>smax</KEYWORD3>\r
+ <KEYWORD3>smin</KEYWORD3>\r
+ <KEYWORD3>mred</KEYWORD3>\r
+ <KEYWORD3>cblu</KEYWORD3>\r
+ <KEYWORD3>ygre</KEYWORD3>\r
+ <KEYWORD3>dgra</KEYWORD3>\r
+ <KEYWORD3>mage</KEYWORD3>\r
+ <KEYWORD3>cyan</KEYWORD3>\r
+ <KEYWORD3>yell</KEYWORD3>\r
+ <KEYWORD3>lgra</KEYWORD3>\r
+ <KEYWORD3>bmag</KEYWORD3>\r
+ <KEYWORD3>gcya</KEYWORD3>\r
+ <KEYWORD3>oran</KEYWORD3>\r
+ <KEYWORD3>whit</KEYWORD3>\r
+ <KEYWORD3>blue</KEYWORD3>\r
+ <KEYWORD3>gree</KEYWORD3>\r
+ <KEYWORD3>red</KEYWORD3>\r
+ <KEYWORD3>blac</KEYWORD3>\r
+\r
+ <!-- CONFIG command -->\r
+ <KEYWORD3>nres</KEYWORD3>\r
+ <KEYWORD3>nbuf</KEYWORD3>\r
+ <KEYWORD3>nproc</KEYWORD3>\r
+ <KEYWORD3>locfl</KEYWORD3>\r
+ <KEYWORD3>szbio</KEYWORD3>\r
+ <KEYWORD3>ncont</KEYWORD3>\r
+ <KEYWORD3>order</KEYWORD3>\r
+ <KEYWORD3>fsplit</KEYWORD3>\r
+ <KEYWORD3>mxnd</KEYWORD3>\r
+ <KEYWORD3>mxel</KEYWORD3>\r
+ <KEYWORD3>mxkp</KEYWORD3>\r
+ <KEYWORD3>mxls</KEYWORD3>\r
+ <KEYWORD3>mxar</KEYWORD3>\r
+ <KEYWORD3>mxvl</KEYWORD3>\r
+ <KEYWORD3>mxrl</KEYWORD3>\r
+ <KEYWORD3>mxcp</KEYWORD3>\r
+ <KEYWORD3>mxce</KEYWORD3>\r
+ <KEYWORD3>nlcontrol</KEYWORD3>\r
+\r
+ <!-- CP command -->\r
+ <KEYWORD3>high</KEYWORD3>\r
+ <KEYWORD3>next</KEYWORD3>\r
+\r
+ <!-- CPDELE, CPLIST commands -->\r
+ <KEYWORD3>any</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- CPINTF, D, DA, DADELE, DDELE, DK, DL, DLDELE, DOF, DOFSEL, FKLIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>ay</KEYWORD3>\r
+ <KEYWORD3>az</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>symm</KEYWORD3>\r
+ <KEYWORD3>asym</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>en</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>chrg</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csgx</KEYWORD3>\r
+ <KEYWORD3>csgy</KEYWORD3>\r
+ <KEYWORD3>csgz</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+\r
+ <!-- CQC command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- CSDELE, CSLIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- CUTCONTROL command -->\r
+ <KEYWORD3>plslimit</KEYWORD3>\r
+ <KEYWORD3>crplimit</KEYWORD3>\r
+ <KEYWORD3>dsplimit</KEYWORD3>\r
+ <KEYWORD3>npoint</KEYWORD3>\r
+ <KEYWORD3>noiterpredict</KEYWORD3>\r
+\r
+ <!-- DCUM command -->\r
+ <KEYWORD3>repl</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>igno</KEYWORD3>\r
+\r
+ <!-- DEL command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>_prm</KEYWORD3>\r
+\r
+ <!-- DELTIM command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- DESIZE command -->\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- DESOL, DNSOL commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+\r
+ <!-- DEVDISP command -->\r
+ <KEYWORD3>dither</KEYWORD3>\r
+ <KEYWORD3>font</KEYWORD3>\r
+ <KEYWORD3>text</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- DEVICE command -->\r
+ <KEYWORD3>vector</KEYWORD3>\r
+ <KEYWORD3>dither</KEYWORD3>\r
+ <KEYWORD3>anim</KEYWORD3>\r
+ <KEYWORD3>font</KEYWORD3>\r
+ <KEYWORD3>text</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- DIM command -->\r
+ <KEYWORD3>array</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>table</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>velocity</KEYWORD3>\r
+ <KEYWORD3>pressure</KEYWORD3>\r
+\r
+ <!-- /DSCALE command -->\r
+ <KEYWORD3>auto</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+\r
+ <!-- DSUM command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- DSYM command -->\r
+ <KEYWORD3>symm</KEYWORD3>\r
+ <KEYWORD3>asym</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- DUMP command -->\r
+ <KEYWORD3>head</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /DV3D command -->\r
+ <KEYWORD3>anim</KEYWORD3>\r
+ <KEYWORD3>dgen</KEYWORD3>\r
+ <KEYWORD3>dlist</KEYWORD3>\r
+\r
+ <!-- EDBOUND command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>cycl</KEYWORD3>\r
+\r
+ <!-- EDCDELE, EDCGEN commands -->\r
+ <KEYWORD3>ants</KEYWORD3>\r
+ <KEYWORD3>assc</KEYWORD3>\r
+ <KEYWORD3>asts</KEYWORD3>\r
+ <KEYWORD3>drawbead</KEYWORD3>\r
+ <KEYWORD3>ents</KEYWORD3>\r
+ <KEYWORD3>ess</KEYWORD3>\r
+ <KEYWORD3>ests</KEYWORD3>\r
+ <KEYWORD3>nts</KEYWORD3>\r
+ <KEYWORD3>osts</KEYWORD3>\r
+ <KEYWORD3>rntr</KEYWORD3>\r
+ <KEYWORD3>rotr</KEYWORD3>\r
+ <KEYWORD3>se</KEYWORD3>\r
+ <KEYWORD3>ss</KEYWORD3>\r
+ <KEYWORD3>sts</KEYWORD3>\r
+ <KEYWORD3>tdns</KEYWORD3>\r
+ <KEYWORD3>tdss</KEYWORD3>\r
+ <KEYWORD3>tnts</KEYWORD3>\r
+ <KEYWORD3>tsts</KEYWORD3>\r
+\r
+ <!-- EDCRB, EDCURVE, EDLCS commands -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+\r
+ <!-- EDCSC command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- EDDAMP command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- EDDRELAX command -->\r
+ <KEYWORD3>ansys</KEYWORD3>\r
+ <KEYWORD3>dyna</KEYWORD3>\r
+\r
+ <!-- EDELE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- EDENERGY, EDFPLOT commands -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- EDHIST, EDIVELO commands -->\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- EDLDPLOT, EDLOAD command -->\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>ay</KEYWORD3>\r
+ <KEYWORD3>az</KEYWORD3>\r
+ <KEYWORD3>aclx</KEYWORD3>\r
+ <KEYWORD3>acly</KEYWORD3>\r
+ <KEYWORD3>aclz</KEYWORD3>\r
+ <KEYWORD3>omgx</KEYWORD3>\r
+ <KEYWORD3>omgy</KEYWORD3>\r
+ <KEYWORD3>omgz</KEYWORD3>\r
+ <KEYWORD3>press</KEYWORD3>\r
+ <KEYWORD3>rbux</KEYWORD3>\r
+ <KEYWORD3>rbuy</KEYWORD3>\r
+ <KEYWORD3>rbuz</KEYWORD3>\r
+ <KEYWORD3>rbrx</KEYWORD3>\r
+ <KEYWORD3>rbry</KEYWORD3>\r
+ <KEYWORD3>rbrz</KEYWORD3>\r
+ <KEYWORD3>rbvx</KEYWORD3>\r
+ <KEYWORD3>rbvy</KEYWORD3>\r
+ <KEYWORD3>rbvz</KEYWORD3>\r
+ <KEYWORD3>rbfx</KEYWORD3>\r
+ <KEYWORD3>rbfy</KEYWORD3>\r
+ <KEYWORD3>rbfz</KEYWORD3>\r
+ <KEYWORD3>rbmx</KEYWORD3>\r
+ <KEYWORD3>rbmy</KEYWORD3>\r
+ <KEYWORD3>rbmz</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+\r
+ <!-- EDMP command -->\r
+ <KEYWORD3>hgls</KEYWORD3>\r
+ <KEYWORD3>rigid</KEYWORD3>\r
+ <KEYWORD3>cable</KEYWORD3>\r
+ <KEYWORD3>ortho</KEYWORD3>\r
+\r
+ <!-- EDNROT, EDOPT commands -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>ansys</KEYWORD3>\r
+ <KEYWORD3>taurus</KEYWORD3>\r
+ <KEYWORD3>both</KEYWORD3>\r
+\r
+ <!-- EDOUT, EDREAD commands -->\r
+ <KEYWORD3>glstat</KEYWORD3>\r
+ <KEYWORD3>bndout</KEYWORD3>\r
+ <KEYWORD3>rwforc</KEYWORD3>\r
+ <KEYWORD3>deforc</KEYWORD3>\r
+ <KEYWORD3>,matsum</KEYWORD3>\r
+ <KEYWORD3>ncforc</KEYWORD3>\r
+ <KEYWORD3>rcforc</KEYWORD3>\r
+ <KEYWORD3>defgeo</KEYWORD3>\r
+ <KEYWORD3>spcforc</KEYWORD3>\r
+ <KEYWORD3>swforc</KEYWORD3>\r
+ <KEYWORD3>rbdout</KEYWORD3>\r
+ <KEYWORD3>gceout</KEYWORD3>\r
+ <KEYWORD3>sleout</KEYWORD3>\r
+ <KEYWORD3>jntforc</KEYWORD3>\r
+ <KEYWORD3>nodout</KEYWORD3>\r
+ <KEYWORD3>elout</KEYWORD3>\r
+\r
+ <!-- EDWELD command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+\r
+ <!-- EDWRITE command -->\r
+ <KEYWORD3>ansys</KEYWORD3>\r
+ <KEYWORD3>taurus</KEYWORD3>\r
+ <KEYWORD3>both</KEYWORD3>\r
+ <KEYWORD3>pcreate</KEYWORD3>\r
+ <KEYWORD3>pupdate</KEYWORD3>\r
+ <KEYWORD3>plist</KEYWORD3>\r
+\r
+ <!-- EKILL, ELIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- *ELSEIF command -->\r
+ <KEYWORD3>eq</KEYWORD3>\r
+ <KEYWORD3>ne</KEYWORD3>\r
+ <KEYWORD3>lt</KEYWORD3>\r
+ <KEYWORD3>gt</KEYWORD3>\r
+ <KEYWORD3>le</KEYWORD3>\r
+ <KEYWORD3>ge</KEYWORD3>\r
+ <KEYWORD3>ablt</KEYWORD3>\r
+ <KEYWORD3>abgt</KEYWORD3>\r
+\r
+ <!-- EMID command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>remove</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>either</KEYWORD3>\r
+ <KEYWORD3>both</KEYWORD3>\r
+\r
+ <!-- EMODIF command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>secnum</KEYWORD3>\r
+\r
+ <!-- EMORE, EN commands -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- EMUNIT command -->\r
+ <KEYWORD3>mks</KEYWORD3>\r
+ <KEYWORD3>muzro</KEYWORD3>\r
+ <KEYWORD3>epzro</KEYWORD3>\r
+\r
+ <!-- ENGEN, ENORM, ENSYM commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- EQSLV command -->\r
+ <KEYWORD3>front</KEYWORD3>\r
+ <KEYWORD3>sparse</KEYWORD3>\r
+ <KEYWORD3>jcg</KEYWORD3>\r
+ <KEYWORD3>jcgout</KEYWORD3>\r
+ <KEYWORD3>iccg</KEYWORD3>\r
+ <KEYWORD3>pcg</KEYWORD3>\r
+ <KEYWORD3>pcgout</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+\r
+ <!-- EREFINE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>smooth</KEYWORD3>\r
+ <KEYWORD3>clean</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- ERESX command -->\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+\r
+ <!-- ERNORM command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- ESEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>adj</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>ename</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>live</KEYWORD3>\r
+ <KEYWORD3>layer</KEYWORD3>\r
+ <KEYWORD3>sec</KEYWORD3>\r
+ <KEYWORD3>pinc</KEYWORD3>\r
+ <KEYWORD3>pexc</KEYWORD3>\r
+ <KEYWORD3>sfe</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>flue</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>mvdi</KEYWORD3>\r
+ <KEYWORD3>chrgd</KEYWORD3>\r
+ <KEYWORD3>etab</KEYWORD3>\r
+\r
+ <!-- ESLA, ESLL, ESLN, ESLV commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>inactive</KEYWORD3>\r
+ <KEYWORD3>corner</KEYWORD3>\r
+ <KEYWORD3>mid</KEYWORD3>\r
+\r
+ <!-- ESOL command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>pene</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>sfric</KEYWORD3>\r
+ <KEYWORD3>stot</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>sene</KEYWORD3>\r
+ <KEYWORD3>kene</KEYWORD3>\r
+ <KEYWORD3>jheat</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+ <KEYWORD3>mre</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+\r
+ <!-- ESORT command -->\r
+ <KEYWORD3>etab</KEYWORD3>\r
+\r
+ <!-- ESURF command -->\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>bottom</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+\r
+ <!-- ESYM command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- ETABLE command -->\r
+ <KEYWORD3>refl</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>eras</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>lmd1</KEYWORD3>\r
+ <KEYWORD3>lmd2</KEYWORD3>\r
+ <KEYWORD3>lmd3</KEYWORD3>\r
+ <KEYWORD3>lmd4</KEYWORD3>\r
+ <KEYWORD3>lmd5</KEYWORD3>\r
+ <KEYWORD3>lmd6</KEYWORD3>\r
+ <KEYWORD3>emd1</KEYWORD3>\r
+ <KEYWORD3>emd2</KEYWORD3>\r
+ <KEYWORD3>emd3</KEYWORD3>\r
+ <KEYWORD3>emd4</KEYWORD3>\r
+ <KEYWORD3>emd5</KEYWORD3>\r
+ <KEYWORD3>emd6</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>serr</KEYWORD3>\r
+ <KEYWORD3>sdsg</KEYWORD3>\r
+ <KEYWORD3>terr</KEYWORD3>\r
+ <KEYWORD3>tdsg</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>sene</KEYWORD3>\r
+ <KEYWORD3>aene</KEYWORD3>\r
+ <KEYWORD3>tene</KEYWORD3>\r
+ <KEYWORD3>kene</KEYWORD3>\r
+ <KEYWORD3>jheat</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+ <KEYWORD3>mre</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>smisc</KEYWORD3>\r
+ <KEYWORD3>nmisc</KEYWORD3>\r
+ <KEYWORD3>surf</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>pene</KEYWORD3>\r
+ <KEYWORD3>sfric</KEYWORD3>\r
+ <KEYWORD3>stot</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>gap</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+\r
+ <!-- ETCHG command -->\r
+ <KEYWORD3>eti</KEYWORD3>\r
+ <KEYWORD3>ite</KEYWORD3>\r
+ <KEYWORD3>tts</KEYWORD3>\r
+ <KEYWORD3>stt</KEYWORD3>\r
+ <KEYWORD3>mtt</KEYWORD3>\r
+ <KEYWORD3>fts</KEYWORD3>\r
+ <KEYWORD3>ets</KEYWORD3>\r
+\r
+ <!-- ETDELE, ETLIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- EWRITE command -->\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>long1</KEYWORD3>\r
+\r
+ <!-- /EXIT command -->\r
+ <KEYWORD3>model</KEYWORD3>\r
+ <KEYWORD3>solu</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>nosave</KEYWORD3>\r
+\r
+ <!-- /EXPAND command -->\r
+ <KEYWORD3>rect</KEYWORD3>\r
+ <KEYWORD3>polar</KEYWORD3>\r
+ <KEYWORD3>modal</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>half</KEYWORD3>\r
+\r
+ <!-- EXPASS command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- EXPSOL command -->\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+\r
+ <!-- EXTOPT command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>attr</KEYWORD3>\r
+ <KEYWORD3>esize</KEYWORD3>\r
+ <KEYWORD3>aclear</KEYWORD3>\r
+\r
+ <!-- F, FDELE, FK, FKDELE commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>chrg</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csgx</KEYWORD3>\r
+ <KEYWORD3>csgy</KEYWORD3>\r
+ <KEYWORD3>csgz</KEYWORD3>\r
+\r
+ <!-- /FACET command -->\r
+ <KEYWORD3>fine</KEYWORD3>\r
+ <KEYWORD3>norml</KEYWORD3>\r
+ <KEYWORD3>wire</KEYWORD3>\r
+\r
+ <!-- FCUM command -->\r
+ <KEYWORD3>repl</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>igno</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- /FDELE command -->\r
+ <KEYWORD3>emat</KEYWORD3>\r
+ <KEYWORD3>esav</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>sub</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>dsub</KEYWORD3>\r
+ <KEYWORD3>usub</KEYWORD3>\r
+ <KEYWORD3>osav</KEYWORD3>\r
+ <KEYWORD3>seld</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- FELIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- FILL command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- FLDATA1 command -->\r
+ <KEYWORD3>solu</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>turb</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>swrl</KEYWORD3>\r
+ <KEYWORD3>tran</KEYWORD3>\r
+ <KEYWORD3>spec</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+ <KEYWORD3>t</KEYWORD3>\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+\r
+ <!-- FLDATA2 command -->\r
+ <KEYWORD3>iter</KEYWORD3>\r
+ <KEYWORD3>exec</KEYWORD3>\r
+ <KEYWORD3>appe</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+\r
+ <!-- FLDATA3 command -->\r
+ <KEYWORD3>term</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA4 command -->\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>istep</KEYWORD3>\r
+ <KEYWORD3>bc</KEYWORD3>\r
+ <KEYWORD3>numb</KEYWORD3>\r
+ <KEYWORD3>glob</KEYWORD3>\r
+ <KEYWORD3>tend</KEYWORD3>\r
+ <KEYWORD3>appe</KEYWORD3>\r
+ <KEYWORD3>sumf</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA4A command -->\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>appe</KEYWORD3>\r
+ <KEYWORD3>sumf</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+\r
+ <!-- FLDATA5 command -->\r
+ <KEYWORD3>outp</KEYWORD3>\r
+ <KEYWORD3>sumf</KEYWORD3>\r
+ <KEYWORD3>debg</KEYWORD3>\r
+ <KEYWORD3>resi</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>lmd</KEYWORD3>\r
+ <KEYWORD3>emd</KEYWORD3>\r
+\r
+ <!-- FLDATA6 command -->\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>outp</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+ <KEYWORD3>land</KEYWORD3>\r
+ <KEYWORD3>bloc</KEYWORD3>\r
+ <KEYWORD3>bnow</KEYWORD3>\r
+\r
+ <!-- FLDATA7 command -->\r
+ <KEYWORD3>prot</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>constant</KEYWORD3>\r
+ <KEYWORD3>liquid</KEYWORD3>\r
+ <KEYWORD3>table</KEYWORD3>\r
+ <KEYWORD3>powl</KEYWORD3>\r
+ <KEYWORD3>carr</KEYWORD3>\r
+ <KEYWORD3>bing</KEYWORD3>\r
+ <KEYWORD3>usrv</KEYWORD3>\r
+ <KEYWORD3>air</KEYWORD3>\r
+ <KEYWORD3>air_b</KEYWORD3>\r
+ <KEYWORD3>air-si</KEYWORD3>\r
+ <KEYWORD3>air-si_b</KEYWORD3>\r
+ <KEYWORD3>air-cm</KEYWORD3>\r
+ <KEYWORD3>air-cm_b</KEYWORD3>\r
+ <KEYWORD3>air-mm</KEYWORD3>\r
+ <KEYWORD3>air-mm_b</KEYWORD3>\r
+ <KEYWORD3>air-ft</KEYWORD3>\r
+ <KEYWORD3>air-ft_b</KEYWORD3>\r
+ <KEYWORD3>air-in</KEYWORD3>\r
+ <KEYWORD3>air-in_b</KEYWORD3>\r
+ <KEYWORD3>cmix</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+\r
+ <!-- FLDATA8 command -->\r
+ <KEYWORD3>nomi</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- FLDATA9 command -->\r
+ <KEYWORD3>cof1</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- FLDATA10 command -->\r
+ <KEYWORD3>cof2</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- FLDATA11 command -->\r
+ <KEYWORD3>cof3</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- FLDATA12 command -->\r
+ <KEYWORD3>prop</KEYWORD3>\r
+ <KEYWORD3>ivis</KEYWORD3>\r
+ <KEYWORD3>ufrq</KEYWORD3>\r
+\r
+ <!-- FLDATA13 command -->\r
+ <KEYWORD3>vary</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>t</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+\r
+ <!-- FLDATA14 command -->\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>nomi</KEYWORD3>\r
+ <KEYWORD3>bulk</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+\r
+ <!-- FLDATA15 command -->\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>refe</KEYWORD3>\r
+\r
+ <!-- FLDATA16 command -->\r
+ <KEYWORD3>bulk</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+\r
+ <!-- FLDATA17 command -->\r
+ <KEYWORD3>gamm</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+\r
+ <!-- FLDATA18 command -->\r
+ <KEYWORD3>meth</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA19 command -->\r
+ <KEYWORD3>tdma</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA20 command -->\r
+ <KEYWORD3>srch</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA20A command -->\r
+ <KEYWORD3>pgmr</KEYWORD3>\r
+ <KEYWORD3>fill</KEYWORD3>\r
+ <KEYWORD3>modp</KEYWORD3>\r
+\r
+ <!-- FLDATA21 command -->\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA22 command -->\r
+ <KEYWORD3>maxi</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA23 command -->\r
+ <KEYWORD3>delt</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <!-- FLDATA24 command -->\r
+ <KEYWORD3>turb</KEYWORD3>\r
+ <KEYWORD3>modl</KEYWORD3>\r
+ <KEYWORD3>rati</KEYWORD3>\r
+ <KEYWORD3>inin</KEYWORD3>\r
+ <KEYWORD3>insf</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>cmu</KEYWORD3>\r
+ <KEYWORD3>c1</KEYWORD3>\r
+ <KEYWORD3>c2</KEYWORD3>\r
+ <KEYWORD3>buc3</KEYWORD3>\r
+ <KEYWORD3>buc4</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+ <KEYWORD3>kapp</KEYWORD3>\r
+ <KEYWORD3>ewll</KEYWORD3>\r
+ <KEYWORD3>wall</KEYWORD3>\r
+ <KEYWORD3>vand</KEYWORD3>\r
+ <KEYWORD3>tran</KEYWORD3>\r
+ <KEYWORD3>zels</KEYWORD3>\r
+\r
+ <!-- FLDATA24A command -->\r
+ <KEYWORD3>rngt</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>cmu</KEYWORD3>\r
+ <KEYWORD3>c1</KEYWORD3>\r
+ <KEYWORD3>c2</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+ <KEYWORD3>etai</KEYWORD3>\r
+\r
+ <!-- FLDATA24B command -->\r
+ <KEYWORD3>nket</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>c2</KEYWORD3>\r
+ <KEYWORD3>c1mx</KEYWORD3>\r
+\r
+ <!-- FLDATA24C command -->\r
+ <KEYWORD3>girt</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>g0</KEYWORD3>\r
+ <KEYWORD3>g1</KEYWORD3>\r
+ <KEYWORD3>g2</KEYWORD3>\r
+ <KEYWORD3>g3</KEYWORD3>\r
+ <KEYWORD3>g4</KEYWORD3>\r
+\r
+ <!-- FLDATA24D command -->\r
+ <KEYWORD3>szlt</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>szl1</KEYWORD3>\r
+ <KEYWORD3>szl2</KEYWORD3>\r
+ <KEYWORD3>szl3</KEYWORD3>\r
+\r
+ <!-- FLDATA25 command -->\r
+ <KEYWORD3>relx</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- FLDATA26 command -->\r
+ <KEYWORD3>stab</KEYWORD3>\r
+ <KEYWORD3>turb</KEYWORD3>\r
+ <KEYWORD3>mome</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+\r
+ <!-- FLDATA27 command -->\r
+ <KEYWORD3>prin</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+\r
+ <!-- FLDATA28 command -->\r
+ <KEYWORD3>modr</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>t</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+\r
+ <!-- FLDATA29 command -->\r
+ <KEYWORD3>modv</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>lmd</KEYWORD3>\r
+ <KEYWORD3>emd</KEYWORD3>\r
+\r
+ <!-- FLDATA30 command -->\r
+ <KEYWORD3>quad</KEYWORD3>\r
+ <KEYWORD3>momd</KEYWORD3>\r
+ <KEYWORD3>moms</KEYWORD3>\r
+ <KEYWORD3>prsd</KEYWORD3>\r
+ <KEYWORD3>prss</KEYWORD3>\r
+ <KEYWORD3>thrd</KEYWORD3>\r
+ <KEYWORD3>thrs</KEYWORD3>\r
+ <KEYWORD3>trbd</KEYWORD3>\r
+ <KEYWORD3>trbs</KEYWORD3>\r
+\r
+ <!-- FLDATA31 command -->\r
+ <KEYWORD3>capp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>umin</KEYWORD3>\r
+ <KEYWORD3>umax</KEYWORD3>\r
+ <KEYWORD3>vmin</KEYWORD3>\r
+ <KEYWORD3>vmax</KEYWORD3>\r
+ <KEYWORD3>wmin</KEYWORD3>\r
+ <KEYWORD3>wmax</KEYWORD3>\r
+ <KEYWORD3>tmin</KEYWORD3>\r
+ <KEYWORD3>tmax</KEYWORD3>\r
+ <KEYWORD3>pmin</KEYWORD3>\r
+ <KEYWORD3>pmax</KEYWORD3>\r
+\r
+ <!-- FLDATA32 command -->\r
+ <KEYWORD3>rest</KEYWORD3>\r
+ <KEYWORD3>nset</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+ <KEYWORD3>lstp</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>rfil</KEYWORD3>\r
+ <KEYWORD3>wfil</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+\r
+ <!-- FLDATA33 command -->\r
+ <KEYWORD3>advm</KEYWORD3>\r
+ <KEYWORD3>mome</KEYWORD3>\r
+ <KEYWORD3>turb</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>msu</KEYWORD3>\r
+ <KEYWORD3>supg</KEYWORD3>\r
+\r
+ <!-- FLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- FLLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- FLST command -->\r
+ <KEYWORD3>noor</KEYWORD3>\r
+ <KEYWORD3>order</KEYWORD3>\r
+\r
+ <!-- /FOCUS command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>auto</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+\r
+ <!-- FORCE command -->\r
+ <KEYWORD3>total</KEYWORD3>\r
+ <KEYWORD3>static</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+ <KEYWORD3>inert</KEYWORD3>\r
+\r
+ <!-- FORM command -->\r
+ <KEYWORD3>reco</KEYWORD3>\r
+ <KEYWORD3>ten</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+\r
+ <!-- /FORMAT command -->\r
+ <KEYWORD3>g</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>e</KEYWORD3>\r
+\r
+ <!-- FP command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- FSLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- FSUM command -->\r
+ <KEYWORD3>rsys</KEYWORD3>\r
+\r
+ <!-- /FTYPE command -->\r
+ <KEYWORD3>emat</KEYWORD3>\r
+ <KEYWORD3>esav</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>redm</KEYWORD3>\r
+ <KEYWORD3>sub</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>dsub</KEYWORD3>\r
+ <KEYWORD3>usub</KEYWORD3>\r
+ <KEYWORD3>erot</KEYWORD3>\r
+ <KEYWORD3>osav</KEYWORD3>\r
+ <KEYWORD3>seld</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>ext</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+\r
+ <!-- GAPLIST command -->\r
+ <KEYWORD3>open</KEYWORD3>\r
+ <KEYWORD3>closed</KEYWORD3>\r
+\r
+ <!-- GAPMERGE command -->\r
+ <KEYWORD3>toler</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+\r
+ <!-- GAPOPT command -->\r
+ <KEYWORD3>toler</KEYWORD3>\r
+ <KEYWORD3>oesele</KEYWORD3>\r
+ <KEYWORD3>merge</KEYWORD3>\r
+ <KEYWORD3>remain</KEYWORD3>\r
+\r
+ <!-- GAPPLOT command -->\r
+ <KEYWORD3>open</KEYWORD3>\r
+ <KEYWORD3>closed</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- GAUGE command -->\r
+ <KEYWORD3>tree</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- GCGEN command -->\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>bot</KEYWORD3>\r
+\r
+ <!-- /GCMD command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- *GET command -->\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>imme</KEYWORD3>\r
+ <KEYWORD3>menu</KEYWORD3>\r
+ <KEYWORD3>prkey</KEYWORD3>\r
+ <KEYWORD3>units</KEYWORD3>\r
+ <KEYWORD3>rout</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>wall</KEYWORD3>\r
+ <KEYWORD3>cpu</KEYWORD3>\r
+ <KEYWORD3>dbase</KEYWORD3>\r
+ <KEYWORD3>ldate</KEYWORD3>\r
+ <KEYWORD3>dbase</KEYWORD3>\r
+ <KEYWORD3>ltime</KEYWORD3>\r
+ <KEYWORD3>rev</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>jobnam</KEYWORD3>\r
+\r
+ <KEYWORD3>parm</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>basic</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>dim</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <KEYWORD3>cmd</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>nargs</KEYWORD3>\r
+ <KEYWORD3>field</KEYWORD3>\r
+\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>ncomp</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>nscomp</KEYWORD3>\r
+ <KEYWORD3>sname</KEYWORD3>\r
+\r
+ <KEYWORD3>graph</KEYWORD3>\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>angle</KEYWORD3>\r
+ <KEYWORD3>contour</KEYWORD3>\r
+ <KEYWORD3>dist</KEYWORD3>\r
+ <KEYWORD3>dscale</KEYWORD3>\r
+ <KEYWORD3>dmult</KEYWORD3>\r
+ <KEYWORD3>edge</KEYWORD3>\r
+ <KEYWORD3>focus</KEYWORD3>\r
+ <KEYWORD3>gline</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>normal</KEYWORD3>\r
+ <KEYWORD3>range</KEYWORD3>\r
+ <KEYWORD3>xmin</KEYWORD3>\r
+ <KEYWORD3>ymin</KEYWORD3>\r
+ <KEYWORD3>xmax</KEYWORD3>\r
+ <KEYWORD3>ymax</KEYWORD3>\r
+ <KEYWORD3>ratio</KEYWORD3>\r
+ <KEYWORD3>sscale</KEYWORD3>\r
+ <KEYWORD3>smult</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>vcone</KEYWORD3>\r
+ <KEYWORD3>view</KEYWORD3>\r
+ <KEYWORD3>vscale</KEYWORD3>\r
+ <KEYWORD3>vratio</KEYWORD3>\r
+ <KEYWORD3>display</KEYWORD3>\r
+ <KEYWORD3>erase</KEYWORD3>\r
+ <KEYWORD3>ndist</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>plopts</KEYWORD3>\r
+ <KEYWORD3>seg</KEYWORD3>\r
+ <KEYWORD3>shrink</KEYWORD3>\r
+\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>,csys</KEYWORD3>\r
+ <KEYWORD3>,dsys</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>,cp</KEYWORD3>\r
+ <KEYWORD3>,ce</KEYWORD3>\r
+ <KEYWORD3>wfront</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>rms</KEYWORD3>\r
+\r
+ <KEYWORD3>cdsy</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>ang</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>attr</KEYWORD3>\r
+\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>,nsel</KEYWORD3>\r
+ <KEYWORD3>nxth</KEYWORD3>\r
+ <KEYWORD3>nxtl</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>csgx</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>num</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>count</KEYWORD3>\r
+ <KEYWORD3>mxloc</KEYWORD3>\r
+ <KEYWORD3>mnloc</KEYWORD3>\r
+\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>adj</KEYWORD3>\r
+ <KEYWORD3>attr</KEYWORD3>\r
+ <KEYWORD3>leng</KEYWORD3>\r
+ <KEYWORD3>lproj</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>aproj</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>,esel</KEYWORD3>\r
+ <KEYWORD3>nxth</KEYWORD3>\r
+ <KEYWORD3>nxtl</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>hcoe</KEYWORD3>\r
+ <KEYWORD3>tbulk</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>shpar</KEYWORD3>\r
+ <KEYWORD3>angd</KEYWORD3>\r
+ <KEYWORD3>aspe</KEYWORD3>\r
+ <KEYWORD3>jacr</KEYWORD3>\r
+ <KEYWORD3>maxa</KEYWORD3>\r
+ <KEYWORD3>para</KEYWORD3>\r
+ <KEYWORD3>warp</KEYWORD3>\r
+ <KEYWORD3>num</KEYWORD3>\r
+ <KEYWORD3>,ksel</KEYWORD3>\r
+ <KEYWORD3>nxth</KEYWORD3>\r
+ <KEYWORD3>nxtl</KEYWORD3>\r
+ <KEYWORD3>div</KEYWORD3>\r
+\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>ior</KEYWORD3>\r
+ <KEYWORD3>imc</KEYWORD3>\r
+ <KEYWORD3>irp</KEYWORD3>\r
+ <KEYWORD3>ixv</KEYWORD3>\r
+ <KEYWORD3>iyv</KEYWORD3>\r
+ <KEYWORD3>izv</KEYWORD3>\r
+ <KEYWORD3>nrelm</KEYWORD3>\r
+\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>,lsel</KEYWORD3>\r
+\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>,asel</KEYWORD3>\r
+ <KEYWORD3>loop</KEYWORD3>\r
+\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>,vsel</KEYWORD3>\r
+ <KEYWORD3>shell</KEYWORD3>\r
+\r
+ <KEYWORD3>etyp</KEYWORD3>\r
+\r
+ <KEYWORD3>rcon</KEYWORD3>\r
+\r
+ <KEYWORD3>ex</KEYWORD3>\r
+ <KEYWORD3>alpx</KEYWORD3>\r
+ <KEYWORD3>reft</KEYWORD3>\r
+ <KEYWORD3>prxy</KEYWORD3>\r
+ <KEYWORD3>nuxy</KEYWORD3>\r
+ <KEYWORD3>gxy</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+ <KEYWORD3>mu</KEYWORD3>\r
+ <KEYWORD3>dnes</KEYWORD3>\r
+ <KEYWORD3>c</KEYWORD3>\r
+ <KEYWORD3>enth</KEYWORD3>\r
+ <KEYWORD3>kxx</KEYWORD3>\r
+ <KEYWORD3>hf</KEYWORD3>\r
+ <KEYWORD3>emis</KEYWORD3>\r
+ <KEYWORD3>qrate</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>sonc</KEYWORD3>\r
+ <KEYWORD3>rsvx</KEYWORD3>\r
+ <KEYWORD3>perx</KEYWORD3>\r
+ <KEYWORD3>murx</KEYWORD3>\r
+ <KEYWORD3>mgxx</KEYWORD3>\r
+ <KEYWORD3>lsst</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+\r
+ <KEYWORD3>fldata</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>turb</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>swrl</KEYWORD3>\r
+ <KEYWORD3>tran</KEYWORD3>\r
+ <KEYWORD3>spec</KEYWORD3>\r
+ <KEYWORD3>exec</KEYWORD3>\r
+ <KEYWORD3>appe</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>istep</KEYWORD3>\r
+ <KEYWORD3>bc</KEYWORD3>\r
+ <KEYWORD3>numb</KEYWORD3>\r
+ <KEYWORD3>glob</KEYWORD3>\r
+ <KEYWORD3>tend</KEYWORD3>\r
+ <KEYWORD3>appe</KEYWORD3>\r
+ <KEYWORD3>sumf</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+ <KEYWORD3>sumf</KEYWORD3>\r
+ <KEYWORD3>debg</KEYWORD3>\r
+ <KEYWORD3>resi</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>lmd</KEYWORD3>\r
+ <KEYWORD3>emd</KEYWORD3>\r
+ <KEYWORD3>outp</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>ivis</KEYWORD3>\r
+ <KEYWORD3>ufrq</KEYWORD3>\r
+ <KEYWORD3>nomi</KEYWORD3>\r
+ <KEYWORD3>bulk</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>refe</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>fill</KEYWORD3>\r
+ <KEYWORD3>modp</KEYWORD3>\r
+ <KEYWORD3>modl</KEYWORD3>\r
+ <KEYWORD3>rati</KEYWORD3>\r
+ <KEYWORD3>inin</KEYWORD3>\r
+ <KEYWORD3>insf</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>cmu</KEYWORD3>\r
+ <KEYWORD3>c1</KEYWORD3>\r
+ <KEYWORD3>c2</KEYWORD3>\r
+ <KEYWORD3>buc3</KEYWORD3>\r
+ <KEYWORD3>buc4</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+ <KEYWORD3>kapp</KEYWORD3>\r
+ <KEYWORD3>ewll</KEYWORD3>\r
+ <KEYWORD3>wall</KEYWORD3>\r
+ <KEYWORD3>vand</KEYWORD3>\r
+ <KEYWORD3>tran</KEYWORD3>\r
+ <KEYWORD3>zels</KEYWORD3>\r
+ <KEYWORD3>sctk</KEYWORD3>\r
+ <KEYWORD3>sctd</KEYWORD3>\r
+ <KEYWORD3>cmu</KEYWORD3>\r
+ <KEYWORD3>c1</KEYWORD3>\r
+ <KEYWORD3>c2</KEYWORD3>\r
+ <KEYWORD3>etai</KEYWORD3>\r
+ <KEYWORD3>c1mx</KEYWORD3>\r
+ <KEYWORD3>g0</KEYWORD3>\r
+ <KEYWORD3>g1</KEYWORD3>\r
+ <KEYWORD3>g2</KEYWORD3>\r
+ <KEYWORD3>g3</KEYWORD3>\r
+ <KEYWORD3>g4</KEYWORD3>\r
+ <KEYWORD3>szl1</KEYWORD3>\r
+ <KEYWORD3>szl2</KEYWORD3>\r
+ <KEYWORD3>szl3</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>mome</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>momd</KEYWORD3>\r
+ <KEYWORD3>moms</KEYWORD3>\r
+ <KEYWORD3>prsd</KEYWORD3>\r
+ <KEYWORD3>prss</KEYWORD3>\r
+ <KEYWORD3>thrd</KEYWORD3>\r
+ <KEYWORD3>thrs</KEYWORD3>\r
+ <KEYWORD3>trbd</KEYWORD3>\r
+ <KEYWORD3>trbs</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>umin</KEYWORD3>\r
+ <KEYWORD3>umax</KEYWORD3>\r
+ <KEYWORD3>vmin</KEYWORD3>\r
+ <KEYWORD3>vmax</KEYWORD3>\r
+ <KEYWORD3>wmin</KEYWORD3>\r
+ <KEYWORD3>wmax</KEYWORD3>\r
+ <KEYWORD3>tmin</KEYWORD3>\r
+ <KEYWORD3>tmax</KEYWORD3>\r
+ <KEYWORD3>pmin</KEYWORD3>\r
+ <KEYWORD3>pmax</KEYWORD3>\r
+ <KEYWORD3>nset</KEYWORD3>\r
+ <KEYWORD3>iter</KEYWORD3>\r
+ <KEYWORD3>lstp</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>rfil</KEYWORD3>\r
+ <KEYWORD3>wfil</KEYWORD3>\r
+ <KEYWORD3>over</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+\r
+ <KEYWORD3>msdata</KEYWORD3>\r
+ <KEYWORD3>spec</KEYWORD3>\r
+ <KEYWORD3>ugas</KEYWORD3>\r
+\r
+ <KEYWORD3>msprop</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>mdif</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>nomi</KEYWORD3>\r
+ <KEYWORD3>cof1</KEYWORD3>\r
+ <KEYWORD3>cof2</KEYWORD3>\r
+ <KEYWORD3>cof3</KEYWORD3>\r
+\r
+ <KEYWORD3>msspec</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>molw</KEYWORD3>\r
+ <KEYWORD3>schm</KEYWORD3>\r
+\r
+ <KEYWORD3>msrelax</KEYWORD3>\r
+ <KEYWORD3>conc</KEYWORD3>\r
+ <KEYWORD3>emdi</KEYWORD3>\r
+ <KEYWORD3>stab</KEYWORD3>\r
+\r
+ <KEYWORD3>mssolu</KEYWORD3>\r
+ <KEYWORD3>nswe</KEYWORD3>\r
+ <KEYWORD3>maxi</KEYWORD3>\r
+ <KEYWORD3>nsrc</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>delt</KEYWORD3>\r
+\r
+ <KEYWORD3>msmeth</KEYWORD3>\r
+\r
+ <KEYWORD3>mscap</KEYWORD3>\r
+ <KEYWORD3>key</KEYWORD3>\r
+ <KEYWORD3>upp</KEYWORD3>\r
+ <KEYWORD3>low</KEYWORD3>\r
+\r
+ <KEYWORD3>msvary</KEYWORD3>\r
+\r
+ <KEYWORD3>msnomf</KEYWORD3>\r
+\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>anty</KEYWORD3>\r
+ <KEYWORD3>solu</KEYWORD3>\r
+ <KEYWORD3>dtime</KEYWORD3>\r
+ <KEYWORD3>ncmls</KEYWORD3>\r
+ <KEYWORD3>ncmss</KEYWORD3>\r
+ <KEYWORD3>eqit</KEYWORD3>\r
+ <KEYWORD3>ncmit</KEYWORD3>\r
+ <KEYWORD3>cnvg</KEYWORD3>\r
+ <KEYWORD3>mxdvl</KEYWORD3>\r
+ <KEYWORD3>resfrq</KEYWORD3>\r
+ <KEYWORD3>reseig</KEYWORD3>\r
+ <KEYWORD3>dsprm</KEYWORD3>\r
+ <KEYWORD3>focv</KEYWORD3>\r
+ <KEYWORD3>mocv</KEYWORD3>\r
+ <KEYWORD3>hfcv</KEYWORD3>\r
+ <KEYWORD3>mfcv</KEYWORD3>\r
+ <KEYWORD3>cscv</KEYWORD3>\r
+ <KEYWORD3>cucv</KEYWORD3>\r
+ <KEYWORD3>ffcv</KEYWORD3>\r
+ <KEYWORD3>dicv</KEYWORD3>\r
+ <KEYWORD3>rocv</KEYWORD3>\r
+ <KEYWORD3>tecv</KEYWORD3>\r
+ <KEYWORD3>vmcv</KEYWORD3>\r
+ <KEYWORD3>smcv</KEYWORD3>\r
+ <KEYWORD3>vocv</KEYWORD3>\r
+ <KEYWORD3>prcv</KEYWORD3>\r
+ <KEYWORD3>vecv</KEYWORD3>\r
+ <KEYWORD3>nc48</KEYWORD3>\r
+ <KEYWORD3>nc49</KEYWORD3>\r
+ <KEYWORD3>crprat</KEYWORD3>\r
+ <KEYWORD3>psinc</KEYWORD3>\r
+\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>mtot</KEYWORD3>\r
+ <KEYWORD3>mc</KEYWORD3>\r
+ <KEYWORD3>ior</KEYWORD3>\r
+ <KEYWORD3>imc</KEYWORD3>\r
+ <KEYWORD3>fmc</KEYWORD3>\r
+ <KEYWORD3>mmor</KEYWORD3>\r
+ <KEYWORD3>mmmc</KEYWORD3>\r
+\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>freq</KEYWORD3>\r
+ <KEYWORD3>pfact</KEYWORD3>\r
+ <KEYWORD3>mcoef</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>,set</KEYWORD3>\r
+ <KEYWORD3>lstp</KEYWORD3>\r
+ <KEYWORD3>sbst</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>rsys</KEYWORD3>\r
+\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>ntemp</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>rf</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>hs</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>conc</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>serr</KEYWORD3>\r
+ <KEYWORD3>sdsg</KEYWORD3>\r
+ <KEYWORD3>terr</KEYWORD3>\r
+ <KEYWORD3>tdsg</KEYWORD3>\r
+ <KEYWORD3>sene</KEYWORD3>\r
+ <KEYWORD3>tene</KEYWORD3>\r
+ <KEYWORD3>kene</KEYWORD3>\r
+ <KEYWORD3>jheat</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>etab</KEYWORD3>\r
+ <KEYWORD3>smisc</KEYWORD3>\r
+ <KEYWORD3>nmisc</KEYWORD3>\r
+\r
+ <KEYWORD3>etab</KEYWORD3>\r
+ <KEYWORD3>ncol</KEYWORD3>\r
+ <KEYWORD3>nleng</KEYWORD3>\r
+\r
+ <KEYWORD3>sort</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>imax</KEYWORD3>\r
+ <KEYWORD3>imin</KEYWORD3>\r
+\r
+ <KEYWORD3>ssum</KEYWORD3>\r
+ <KEYWORD3>item</KEYWORD3>\r
+\r
+ <KEYWORD3>fsum</KEYWORD3>\r
+\r
+ <KEYWORD3>path</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>nval</KEYWORD3>\r
+\r
+ <KEYWORD3>kcalc</KEYWORD3>\r
+ <KEYWORD3>k</KEYWORD3>\r
+\r
+ <KEYWORD3>intsrf</KEYWORD3>\r
+\r
+ <KEYWORD3>plnsol</KEYWORD3>\r
+ <KEYWORD3>bmax</KEYWORD3>\r
+ <KEYWORD3>bmin</KEYWORD3>\r
+\r
+ <KEYWORD3>prerr</KEYWORD3>\r
+ <KEYWORD3>sepc</KEYWORD3>\r
+ <KEYWORD3>tepc</KEYWORD3>\r
+ <KEYWORD3>sersm</KEYWORD3>\r
+ <KEYWORD3>tersm</KEYWORD3>\r
+ <KEYWORD3>sensm</KEYWORD3>\r
+ <KEYWORD3>tensm</KEYWORD3>\r
+\r
+ <KEYWORD3>section</KEYWORD3>\r
+ <KEYWORD3>inside</KEYWORD3>\r
+ <KEYWORD3>sx</KEYWORD3>\r
+ <KEYWORD3>sy</KEYWORD3>\r
+ <KEYWORD3>sz</KEYWORD3>\r
+ <KEYWORD3>sxxy</KEYWORD3>\r
+ <KEYWORD3>syz</KEYWORD3>\r
+ <KEYWORD3>szx</KEYWORD3>\r
+ <KEYWORD3>center</KEYWORD3>\r
+ <KEYWORD3>outside</KEYWORD3>\r
+\r
+ <KEYWORD3>vari</KEYWORD3>\r
+ <KEYWORD3>extrem</KEYWORD3>\r
+ <KEYWORD3>vmax</KEYWORD3>\r
+ <KEYWORD3>tmax</KEYWORD3>\r
+ <KEYWORD3>vmin</KEYWORD3>\r
+ <KEYWORD3>tmin</KEYWORD3>\r
+ <KEYWORD3>vlast</KEYWORD3>\r
+ <KEYWORD3>tlast</KEYWORD3>\r
+ <KEYWORD3>cvar</KEYWORD3>\r
+ <KEYWORD3>rtime</KEYWORD3>\r
+ <KEYWORD3>itime</KEYWORD3>\r
+ <KEYWORD3>t</KEYWORD3>\r
+ <KEYWORD3>rset</KEYWORD3>\r
+ <KEYWORD3>iset</KEYWORD3>\r
+ <KEYWORD3>nsets</KEYWORD3>\r
+\r
+ <KEYWORD3>opt</KEYWORD3>\r
+ <KEYWORD3>total</KEYWORD3>\r
+ <KEYWORD3>feas</KEYWORD3>\r
+ <KEYWORD3>term</KEYWORD3>\r
+ <KEYWORD3>best</KEYWORD3>\r
+\r
+ <KEYWORD3>topo</KEYWORD3>\r
+ <KEYWORD3>act</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>porv</KEYWORD3>\r
+ <KEYWORD3>loads</KEYWORD3>\r
+\r
+ <KEYWORD3>runst</KEYWORD3>\r
+ <KEYWORD3>rspeed</KEYWORD3>\r
+ <KEYWORD3>mips</KEYWORD3>\r
+ <KEYWORD3>smflop</KEYWORD3>\r
+ <KEYWORD3>vmflop</KEYWORD3>\r
+ <KEYWORD3>rfilsz</KEYWORD3>\r
+ <KEYWORD3>emat</KEYWORD3>\r
+ <KEYWORD3>erot</KEYWORD3>\r
+ <KEYWORD3>esav</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>rdsp</KEYWORD3>\r
+ <KEYWORD3>redm</KEYWORD3>\r
+ <KEYWORD3>rfrq</KEYWORD3>\r
+ <KEYWORD3>rgeom</KEYWORD3>\r
+ <KEYWORD3>rst</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>rtimst</KEYWORD3>\r
+ <KEYWORD3>tfirst</KEYWORD3>\r
+ <KEYWORD3>titer</KEYWORD3>\r
+ <KEYWORD3>eqprep</KEYWORD3>\r
+ <KEYWORD3>,solve</KEYWORD3>\r
+ <KEYWORD3>bsub</KEYWORD3>\r
+ <KEYWORD3>eigen</KEYWORD3>\r
+ <KEYWORD3>elform</KEYWORD3>\r
+ <KEYWORD3>elstrs</KEYWORD3>\r
+ <KEYWORD3>nelm</KEYWORD3>\r
+ <KEYWORD3>rmemry</KEYWORD3>\r
+ <KEYWORD3>wsreq</KEYWORD3>\r
+ <KEYWORD3>wsavail</KEYWORD3>\r
+ <KEYWORD3>dbpsize</KEYWORD3>\r
+ <KEYWORD3>dbpdisk</KEYWORD3>\r
+ <KEYWORD3>dbpmem</KEYWORD3>\r
+ <KEYWORD3>dbsize</KEYWORD3>\r
+ <KEYWORD3>dbmem</KEYWORD3>\r
+ <KEYWORD3>scrsize</KEYWORD3>\r
+ <KEYWORD3>scravail</KEYWORD3>\r
+ <KEYWORD3>iomem</KEYWORD3>\r
+ <KEYWORD3>iopsiz</KEYWORD3>\r
+ <KEYWORD3>iobuf</KEYWORD3>\r
+ <KEYWORD3>rwfrnt</KEYWORD3>\r
+ <KEYWORD3>rms</KEYWORD3>\r
+ <KEYWORD3>mean</KEYWORD3>\r
+\r
+ <KEYWORD3>,nsel</KEYWORD3>\r
+ <KEYWORD3>,esel</KEYWORD3>\r
+ <KEYWORD3>,ksel</KEYWORD3>\r
+ <KEYWORD3>,lsel</KEYWORD3>\r
+ <KEYWORD3>,asel</KEYWORD3>\r
+ <KEYWORD3>,vsel</KEYWORD3>\r
+ <KEYWORD3>ndnext</KEYWORD3>\r
+ <KEYWORD3>elnext</KEYWORD3>\r
+ <KEYWORD3>kpnext</KEYWORD3>\r
+ <KEYWORD3>lsnext</KEYWORD3>\r
+ <KEYWORD3>arnext</KEYWORD3>\r
+ <KEYWORD3>vlnext</KEYWORD3>\r
+ <KEYWORD3>centrx</KEYWORD3>\r
+ <KEYWORD3>centry</KEYWORD3>\r
+ <KEYWORD3>centrz</KEYWORD3>\r
+ <KEYWORD3>nx</KEYWORD3>\r
+ <KEYWORD3>ny</KEYWORD3>\r
+ <KEYWORD3>nz</KEYWORD3>\r
+ <KEYWORD3>kx</KEYWORD3>\r
+ <KEYWORD3>ky</KEYWORD3>\r
+ <KEYWORD3>kz</KEYWORD3>\r
+ <KEYWORD3>lx</KEYWORD3>\r
+ <KEYWORD3>ly</KEYWORD3>\r
+ <KEYWORD3>lz</KEYWORD3>\r
+ <KEYWORD3>lsx</KEYWORD3>\r
+ <KEYWORD3>lsy</KEYWORD3>\r
+ <KEYWORD3>lsz</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>distnd</KEYWORD3>\r
+ <KEYWORD3>distkp</KEYWORD3>\r
+ <KEYWORD3>disten</KEYWORD3>\r
+ <KEYWORD3>anglen</KEYWORD3>\r
+ <KEYWORD3>anglek</KEYWORD3>\r
+ <KEYWORD3>nnear</KEYWORD3>\r
+ <KEYWORD3>knear</KEYWORD3>\r
+ <KEYWORD3>enearn</KEYWORD3>\r
+ <KEYWORD3>areand</KEYWORD3>\r
+ <KEYWORD3>areakp</KEYWORD3>\r
+ <KEYWORD3>arnode</KEYWORD3>\r
+ <KEYWORD3>normnx</KEYWORD3>\r
+ <KEYWORD3>normny</KEYWORD3>\r
+ <KEYWORD3>normnz</KEYWORD3>\r
+ <KEYWORD3>normkx</KEYWORD3>\r
+ <KEYWORD3>normky</KEYWORD3>\r
+ <KEYWORD3>normkz</KEYWORD3>\r
+ <KEYWORD3>enextn</KEYWORD3>\r
+ <KEYWORD3>nelem</KEYWORD3>\r
+ <KEYWORD3>eladj</KEYWORD3>\r
+ <KEYWORD3>ndface</KEYWORD3>\r
+ <KEYWORD3>nmface</KEYWORD3>\r
+ <KEYWORD3>arface</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>ay</KEYWORD3>\r
+ <KEYWORD3>az</KEYWORD3>\r
+\r
+ <!-- /GFORMAT command -->\r
+ <KEYWORD3>g</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>e</KEYWORD3>\r
+\r
+ <!-- /GLINE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- *GO command -->\r
+ <KEYWORD3>stop</KEYWORD3>\r
+\r
+ <!-- GP command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+\r
+ <!-- GPLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /GRAPHICS command -->\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>power</KEYWORD3>\r
+\r
+ <!-- /GROPT command -->\r
+ <KEYWORD3>axdv</KEYWORD3>\r
+ <KEYWORD3>axnm</KEYWORD3>\r
+ <KEYWORD3>axnsc</KEYWORD3>\r
+ <KEYWORD3>ascal</KEYWORD3>\r
+ <KEYWORD3>logx</KEYWORD3>\r
+ <KEYWORD3>logy</KEYWORD3>\r
+ <KEYWORD3>fill</KEYWORD3>\r
+ <KEYWORD3>cgrid</KEYWORD3>\r
+ <KEYWORD3>dig1</KEYWORD3>\r
+ <KEYWORD3>dig2</KEYWORD3>\r
+ <KEYWORD3>view</KEYWORD3>\r
+ <KEYWORD3>revx</KEYWORD3>\r
+ <KEYWORD3>revy</KEYWORD3>\r
+ <KEYWORD3>divx</KEYWORD3>\r
+ <KEYWORD3>divy</KEYWORD3>\r
+ <KEYWORD3>ltyp</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>front</KEYWORD3>\r
+\r
+ <!-- GRP command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- /GST command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- /GTHK command -->\r
+ <KEYWORD3>axis</KEYWORD3>\r
+ <KEYWORD3>grid</KEYWORD3>\r
+ <KEYWORD3>curve</KEYWORD3>\r
+\r
+ <!-- /GTYPE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>keyp</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>grph</KEYWORD3>\r
+\r
+ <!-- /HEADER command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- HPGL command -->\r
+ <KEYWORD3>model</KEYWORD3>\r
+ <KEYWORD3>paper</KEYWORD3>\r
+ <KEYWORD3>color</KEYWORD3>\r
+ <KEYWORD3>direct</KEYWORD3>\r
+\r
+ <!-- HPTCREATE command -->\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>coord</KEYWORD3>\r
+ <KEYWORD3>ratio</KEYWORD3>\r
+\r
+ <!-- HPTDELETE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- HREXP command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- HROPT command -->\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>reduc</KEYWORD3>\r
+ <KEYWORD3>msup</KEYWORD3>\r
+\r
+ <!-- HROUT command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- IC command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>so02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>ay</KEYWORD3>\r
+ <KEYWORD3>az</KEYWORD3>\r
+\r
+ <!-- ICLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+\r
+ <!-- *IF command -->\r
+ <KEYWORD3>eq</KEYWORD3>\r
+ <KEYWORD3>ne</KEYWORD3>\r
+ <KEYWORD3>lt</KEYWORD3>\r
+ <KEYWORD3>gt</KEYWORD3>\r
+ <KEYWORD3>le</KEYWORD3>\r
+ <KEYWORD3>ge</KEYWORD3>\r
+ <KEYWORD3>ablt</KEYWORD3>\r
+ <KEYWORD3>abgt</KEYWORD3>\r
+ <KEYWORD3>stop</KEYWORD3>\r
+ <KEYWORD3>exit</KEYWORD3>\r
+ <KEYWORD3>cycle</KEYWORD3>\r
+ <KEYWORD3>then</KEYWORD3>\r
+\r
+ <!-- INRES command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>basic</KEYWORD3>\r
+ <KEYWORD3>nsol</KEYWORD3>\r
+ <KEYWORD3>rsol</KEYWORD3>\r
+ <KEYWORD3>esol</KEYWORD3>\r
+ <KEYWORD3>nload</KEYWORD3>\r
+ <KEYWORD3>strs</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>fgrad</KEYWORD3>\r
+ <KEYWORD3>fflux</KEYWORD3>\r
+ <KEYWORD3>misc</KEYWORD3>\r
+\r
+ <!-- INTSRF command -->\r
+ <KEYWORD3>pres</KEYWORD3>\r
+\r
+ <!-- IOPTN command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>merg</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+ <KEYWORD3>solid</KEYWORD3>\r
+ <KEYWORD3>gtoler</KEYWORD3>\r
+ <KEYWORD3>file</KEYWORD3>\r
+ <KEYWORD3>iges</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>small</KEYWORD3>\r
+\r
+ <!-- K command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- KBETW command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>ratio</KEYWORD3>\r
+ <KEYWORD3>dist</KEYWORD3>\r
+\r
+ <!-- KCENTER command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+\r
+ <!-- KCLEAR, KDELE, KDIST, KESIZE, KFILL, KGEN, KL, KLIST, KMESH, KMODIF, -->\r
+ <!-- KMOVE, KNODE, KPLOT, KPSCALE, KSCALE, KSCON commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>coord</KEYWORD3>\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- KREFINE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>smooth</KEYWORD3>\r
+ <KEYWORD3>clean</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- KSEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>ext</KEYWORD3>\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- KSLL, KSLN commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+\r
+ <!-- KSYMM, KTRAN, KWPAVE, KWPLAN commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- L, L2ANG, L2TAN, LANG, LARC, LAREA commands -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- LAYER, LAYERP26 commands -->\r
+ <KEYWORD3>fcmax</KEYWORD3>\r
+\r
+ <!-- LAYLIST, LCABS, LCCAT, LCFACT, LCLEAR, LCOMB, LCSL, LCSUM, LDELE, -->\r
+ <!-- LDIV, LDRAG, LESIZE, LEXTND, LFILLT, LGEN, LGLUE, /LIGHT, LINA, -->\r
+ <!-- LINL, LINP, LINV, LMESH, LNFILL, LNMERGE, LOVLAP, LPLOT, LPTN, -->\r
+ <!-- LREVERSE, LROTAT, LSSCALE, LSTR commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- LCDEF command -->\r
+ <KEYWORD3>erase</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- LCOPER command -->\r
+ <KEYWORD3>zero</KEYWORD3>\r
+ <KEYWORD3>squa</KEYWORD3>\r
+ <KEYWORD3>sqrt</KEYWORD3>\r
+ <KEYWORD3>lprin</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>sub</KEYWORD3>\r
+ <KEYWORD3>srss</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>abmn</KEYWORD3>\r
+ <KEYWORD3>abmx</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>mult</KEYWORD3>\r
+\r
+ <!-- LCSEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- LDREAD command -->\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>ehflu</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>reac</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+\r
+ <!-- LGWRITE command -->\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>comment</KEYWORD3>\r
+ <KEYWORD3>remove</KEYWORD3>\r
+\r
+ <!-- LLIST command -->\r
+ <KEYWORD3>radius</KEYWORD3>\r
+ <KEYWORD3>layer</KEYWORD3>\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+ <KEYWORD3>orient</KEYWORD3>\r
+\r
+ <!-- LNSEARCH command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>auto</KEYWORD3>\r
+\r
+ <!-- LOCAL command -->\r
+ <KEYWORD3>cart</KEYWORD3>\r
+ <KEYWORD3>cylin</KEYWORD3>\r
+ <KEYWORD3>sphe</KEYWORD3>\r
+ <KEYWORD3>toro</KEYWORD3>\r
+\r
+ <!-- LREFINE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>smooth</KEYWORD3>\r
+ <KEYWORD3>clean</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- LSBA, LSBL, LSBV, LSBW commands -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>sepo</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+\r
+ <!-- LSCLEAR command -->\r
+ <KEYWORD3>solid</KEYWORD3>\r
+ <KEYWORD3>fe</KEYWORD3>\r
+ <KEYWORD3>iner</KEYWORD3>\r
+ <KEYWORD3>lfact</KEYWORD3>\r
+ <KEYWORD3>lsopt</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- LSEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>ext</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>tan1</KEYWORD3>\r
+ <KEYWORD3>tan2</KEYWORD3>\r
+ <KEYWORD3>ndiv</KEYWORD3>\r
+ <KEYWORD3>space</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>sec</KEYWORD3>\r
+ <KEYWORD3>lenght</KEYWORD3>\r
+ <KEYWORD3>radius</KEYWORD3>\r
+ <KEYWORD3>hpt</KEYWORD3>\r
+ <KEYWORD3>lcca</KEYWORD3>\r
+\r
+ <!-- LSLA, LSLK commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+\r
+ <!-- LSREAD, LSWRITE commands -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>init</KEYWORD3>\r
+\r
+ <!-- LSYMM, LTAN, LTRAN, LWPLAN commands -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- LUMPM command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- M, MONITOR commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+\r
+ <!-- MDELE, MGEN, MLIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- /MENU command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>grph</KEYWORD3>\r
+\r
+ <!-- *MFOURI command -->\r
+ <KEYWORD3>fit</KEYWORD3>\r
+ <KEYWORD3>eval</KEYWORD3>\r
+\r
+ <!-- *MFUN command -->\r
+ <KEYWORD3>copy</KEYWORD3>\r
+ <KEYWORD3>tran</KEYWORD3>\r
+\r
+ <!-- MODMSH command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>nocheck</KEYWORD3>\r
+ <KEYWORD3>check</KEYWORD3>\r
+ <KEYWORD3>detach</KEYWORD3>\r
+\r
+ <!-- MODOPT command -->\r
+ <KEYWORD3>subsp</KEYWORD3>\r
+ <KEYWORD3>lanb</KEYWORD3>\r
+ <KEYWORD3>reduc</KEYWORD3>\r
+ <KEYWORD3>unsym</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- *MOPER command -->\r
+ <KEYWORD3>mult</KEYWORD3>\r
+ <KEYWORD3>solv</KEYWORD3>\r
+ <KEYWORD3>sort</KEYWORD3>\r
+ <KEYWORD3>covar</KEYWORD3>\r
+ <KEYWORD3>corr</KEYWORD3>\r
+\r
+ <!-- MOPT command -->\r
+ <KEYWORD3>expnd</KEYWORD3>\r
+ <KEYWORD3>tetexpnd</KEYWORD3>\r
+ <KEYWORD3>trans</KEYWORD3>\r
+ <KEYWORD3>iesz</KEYWORD3>\r
+ <KEYWORD3>amesh</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>main</KEYWORD3>\r
+ <KEYWORD3>alternate</KEYWORD3>\r
+ <KEYWORD3>alt2</KEYWORD3>\r
+ <KEYWORD3>qmesh</KEYWORD3>\r
+ <KEYWORD3>vmesh</KEYWORD3>\r
+ <KEYWORD3>split</KEYWORD3>\r
+ <KEYWORD3>lsmo</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+ <KEYWORD3>pyra</KEYWORD3>\r
+ <KEYWORD3>timp</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+\r
+ <!-- MOVE command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- MP, MPDATA commands -->\r
+ <KEYWORD3>ex</KEYWORD3>\r
+ <KEYWORD3>ey</KEYWORD3>\r
+ <KEYWORD3>ez</KEYWORD3>\r
+ <KEYWORD3>alpx</KEYWORD3>\r
+ <KEYWORD3>alpy</KEYWORD3>\r
+ <KEYWORD3>alpz</KEYWORD3>\r
+ <KEYWORD3>reft</KEYWORD3>\r
+ <KEYWORD3>prxy</KEYWORD3>\r
+ <KEYWORD3>pryz</KEYWORD3>\r
+ <KEYWORD3>prxz</KEYWORD3>\r
+ <KEYWORD3>nuxy</KEYWORD3>\r
+ <KEYWORD3>nuyz</KEYWORD3>\r
+ <KEYWORD3>nuzx</KEYWORD3>\r
+ <KEYWORD3>gxy</KEYWORD3>\r
+ <KEYWORD3>gyz</KEYWORD3>\r
+ <KEYWORD3>gxz</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+ <KEYWORD3>mu</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>c</KEYWORD3>\r
+ <KEYWORD3>enth</KEYWORD3>\r
+ <KEYWORD3>kxx</KEYWORD3>\r
+ <KEYWORD3>kyy</KEYWORD3>\r
+ <KEYWORD3>kzz</KEYWORD3>\r
+ <KEYWORD3>hf</KEYWORD3>\r
+ <KEYWORD3>emis</KEYWORD3>\r
+ <KEYWORD3>qrate</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>sonc</KEYWORD3>\r
+ <KEYWORD3>rsvx</KEYWORD3>\r
+ <KEYWORD3>rsvy</KEYWORD3>\r
+ <KEYWORD3>rsvz</KEYWORD3>\r
+ <KEYWORD3>perx</KEYWORD3>\r
+ <KEYWORD3>pery</KEYWORD3>\r
+ <KEYWORD3>perz</KEYWORD3>\r
+ <KEYWORD3>murx</KEYWORD3>\r
+ <KEYWORD3>mury</KEYWORD3>\r
+ <KEYWORD3>murz</KEYWORD3>\r
+ <KEYWORD3>mgxx</KEYWORD3>\r
+ <KEYWORD3>mgyy</KEYWORD3>\r
+ <KEYWORD3>mgzz</KEYWORD3>\r
+ <KEYWORD3>lsst</KEYWORD3>\r
+\r
+ <!-- MPCHG, MPDELE commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /MPLIB command -->\r
+ <KEYWORD3>read</KEYWORD3>\r
+ <KEYWORD3>write</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- MPLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>evlt</KEYWORD3>\r
+\r
+ <!-- MSADV command -->\r
+ <KEYWORD3>msu</KEYWORD3>\r
+ <KEYWORD3>supg</KEYWORD3>\r
+\r
+ <!-- MSCAP command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- *MSG command -->\r
+ <KEYWORD3>info</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>warn</KEYWORD3>\r
+ <KEYWORD3>error</KEYWORD3>\r
+ <KEYWORD3>fatal</KEYWORD3>\r
+ <KEYWORD3>ui</KEYWORD3>\r
+\r
+ <!-- MSHAPE command -->\r
+ <KEYWORD3>2d</KEYWORD3>\r
+ <KEYWORD3>3d</KEYWORD3>\r
+\r
+ <!-- MSPROP command -->\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>mdif</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>constant</KEYWORD3>\r
+ <KEYWORD3>liquid</KEYWORD3>\r
+ <KEYWORD3>gas</KEYWORD3>\r
+\r
+ <!-- /MSTART command -->\r
+ <KEYWORD3>main</KEYWORD3>\r
+ <KEYWORD3>input</KEYWORD3>\r
+ <KEYWORD3>grph</KEYWORD3>\r
+ <KEYWORD3>tool</KEYWORD3>\r
+ <KEYWORD3>zoom</KEYWORD3>\r
+ <KEYWORD3>work</KEYWORD3>\r
+ <KEYWORD3>wpset</KEYWORD3>\r
+ <KEYWORD3>abbr</KEYWORD3>\r
+ <KEYWORD3>parm</KEYWORD3>\r
+ <KEYWORD3>sele</KEYWORD3>\r
+ <KEYWORD3>anno</KEYWORD3>\r
+ <KEYWORD3>hard</KEYWORD3>\r
+ <KEYWORD3>help</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- MSVARY command -->\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>mdif</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- MXPAND command -->\r
+ <KEYWORD3>no</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+\r
+ <!-- N, NDELE, NDIST, NGEN, NKPT commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- NLGEOM, NOORDER commands -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- NLIST, NMODIF commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>coord</KEYWORD3>\r
+\r
+ <!-- NREFINE, NROTAT, NSCALE commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>smooth</KEYWORD3>\r
+ <KEYWORD3>clean</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- NRLSUM command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- NROPT command -->\r
+ <KEYWORD3>auto</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>modi</KEYWORD3>\r
+ <KEYWORD3>init</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- NSEL, NSOL, NSORT commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>ext</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>ang</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>,cp</KEYWORD3>\r
+ <KEYWORD3>,ce</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>ax</KEYWORD3>\r
+ <KEYWORD3>ay</KEYWORD3>\r
+ <KEYWORD3>az</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>csgx</KEYWORD3>\r
+ <KEYWORD3>csgy</KEYWORD3>\r
+ <KEYWORD3>csgz</KEYWORD3>\r
+ <KEYWORD3>chrg</KEYWORD3>\r
+ <KEYWORD3>chrgd</KEYWORD3>\r
+ <KEYWORD3>,bf</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>flue</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jsx</KEYWORD3>\r
+ <KEYWORD3>jsy</KEYWORD3>\r
+ <KEYWORD3>jsz</KEYWORD3>\r
+ <KEYWORD3>mvdi</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>pene</KEYWORD3>\r
+ <KEYWORD3>sfric</KEYWORD3>\r
+ <KEYWORD3>stot</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+\r
+ <!-- NSLA, NSLE, NSLK, NSLL, NSLV commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>inactive</KEYWORD3>\r
+ <KEYWORD3>corner</KEYWORD3>\r
+ <KEYWORD3>mid</KEYWORD3>\r
+\r
+ <!-- NSUBST command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- NSYM command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- NUMCMP, NUMMRG, NUMOFF, NUMSTR commands -->\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,cp</KEYWORD3>\r
+ <KEYWORD3>,ce</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>low</KEYWORD3>\r
+ <KEYWORD3>high</KEYWORD3>\r
+ <KEYWORD3>,csys</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+\r
+ <!-- NUMEXP command -->\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+\r
+ <!-- NWPLAN command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- OPDEL, OPLIST, OPRFA, OPRGR, OPRSW commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- OPFACT command -->\r
+ <KEYWORD3>full</KEYWORD3>\r
+\r
+ <!-- OPGRAD, OPSWEEP commands -->\r
+ <KEYWORD3>best</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>,n</KEYWORD3>\r
+\r
+ <!-- OPKEEP commmand -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- OPLFA command -->\r
+ <KEYWORD3>main</KEYWORD3>\r
+ <KEYWORD3>2fac</KEYWORD3>\r
+ <KEYWORD3>3fac</KEYWORD3>\r
+\r
+ <!-- OPLOOP command -->\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>prep</KEYWORD3>\r
+ <KEYWORD3>ignore</KEYWORD3>\r
+ <KEYWORD3>process</KEYWORD3>\r
+ <KEYWORD3>scalar</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- OPNCONTROL command -->\r
+ <KEYWORD3>temp</KEYWORD3>\r
+\r
+ <!-- OPPRNT command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+\r
+ <!-- OPTYPE command -->\r
+ <KEYWORD3>subp</KEYWORD3>\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>rand</KEYWORD3>\r
+ <KEYWORD3>run</KEYWORD3>\r
+ <KEYWORD3>fact</KEYWORD3>\r
+ <KEYWORD3>grad</KEYWORD3>\r
+ <KEYWORD3>sweep</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+\r
+ <!-- OPVAR command -->\r
+ <KEYWORD3>dv</KEYWORD3>\r
+ <KEYWORD3>sv</KEYWORD3>\r
+ <KEYWORD3>obj</KEYWORD3>\r
+ <KEYWORD3>del</KEYWORD3>\r
+\r
+ <!-- OUTPR command -->\r
+ <KEYWORD3>basic</KEYWORD3>\r
+ <KEYWORD3>nsol</KEYWORD3>\r
+ <KEYWORD3>rsol</KEYWORD3>\r
+ <KEYWORD3>esol</KEYWORD3>\r
+ <KEYWORD3>nload</KEYWORD3>\r
+ <KEYWORD3>veng</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>erase</KEYWORD3>\r
+\r
+ <!-- /OUTPUT command -->\r
+ <KEYWORD3>term</KEYWORD3>\r
+ <KEYWORD3>append</KEYWORD3>\r
+\r
+ <!-- OUTRES command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>basic</KEYWORD3>\r
+ <KEYWORD3>nsol</KEYWORD3>\r
+ <KEYWORD3>rsol</KEYWORD3>\r
+ <KEYWORD3>esol</KEYWORD3>\r
+ <KEYWORD3>nload</KEYWORD3>\r
+ <KEYWORD3>strs</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>fgrad</KEYWORD3>\r
+ <KEYWORD3>fflux</KEYWORD3>\r
+ <KEYWORD3>misc</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+\r
+ <!-- PADELE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+\r
+ <!-- PAGET, PAPUT commands -->\r
+ <KEYWORD3>points</KEYWORD3>\r
+ <KEYWORD3>table</KEYWORD3>\r
+ <KEYWORD3>label</KEYWORD3>\r
+\r
+ <!-- PARESU command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>path</KEYWORD3>\r
+\r
+ <!-- PARRES command -->\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>change</KEYWORD3>\r
+\r
+ <!-- PARSAV command -->\r
+ <KEYWORD3>scalar</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- PASAVE command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /PBC command -->\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>vx</KEYWORD3>\r
+ <KEYWORD3>vy</KEYWORD3>\r
+ <KEYWORD3>vz</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>chrg</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>mome</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>my</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>mast</KEYWORD3>\r
+ <KEYWORD3>,cp</KEYWORD3>\r
+ <KEYWORD3>,ce</KEYWORD3>\r
+ <KEYWORD3>nfor</KEYWORD3>\r
+ <KEYWORD3>nmom</KEYWORD3>\r
+ <KEYWORD3>rfor</KEYWORD3>\r
+ <KEYWORD3>rmom</KEYWORD3>\r
+ <KEYWORD3>path</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+ <KEYWORD3>acelx</KEYWORD3>\r
+ <KEYWORD3>acely</KEYWORD3>\r
+ <KEYWORD3>acelz</KEYWORD3>\r
+ <KEYWORD3>omeg</KEYWORD3>\r
+ <KEYWORD3>omegx</KEYWORD3>\r
+ <KEYWORD3>omegy</KEYWORD3>\r
+ <KEYWORD3>omegz</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /PBF command -->\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>flue</KEYWORD3>\r
+ <KEYWORD3>hgen</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jsx</KEYWORD3>\r
+ <KEYWORD3>jsy</KEYWORD3>\r
+ <KEYWORD3>jsz</KEYWORD3>\r
+ <KEYWORD3>phase</KEYWORD3>\r
+ <KEYWORD3>mvdi</KEYWORD3>\r
+ <KEYWORD3>chrgd</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+\r
+ <!-- PCALC command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>mult</KEYWORD3>\r
+ <KEYWORD3>div</KEYWORD3>\r
+ <KEYWORD3>exp</KEYWORD3>\r
+ <KEYWORD3>deri</KEYWORD3>\r
+ <KEYWORD3>intg</KEYWORD3>\r
+ <KEYWORD3>sin</KEYWORD3>\r
+ <KEYWORD3>cos</KEYWORD3>\r
+ <KEYWORD3>asin</KEYWORD3>\r
+ <KEYWORD3>acos</KEYWORD3>\r
+ <KEYWORD3>log</KEYWORD3>\r
+\r
+ <!-- PCONV command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>erase</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+ <KEYWORD3>se</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>mid</KEYWORD3>\r
+ <KEYWORD3>bot</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+\r
+ <!-- /PCOPY command -->\r
+ <KEYWORD3>now</KEYWORD3>\r
+\r
+ <!-- PDEF command -->\r
+ <KEYWORD3>avg</KEYWORD3>\r
+ <KEYWORD3>noav</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>etab</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+\r
+ <!-- PDRAG command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- PEXCLUDE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- PFACT command -->\r
+ <KEYWORD3>base</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>wave</KEYWORD3>\r
+ <KEYWORD3>spat</KEYWORD3>\r
+\r
+ <!-- PHYSICS command -->\r
+ <KEYWORD3>write</KEYWORD3>\r
+ <KEYWORD3>read</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+\r
+ <!-- PINCLUDE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- PIVCHECK command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- PLCONV command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>se</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>mid</KEYWORD3>\r
+ <KEYWORD3>bot</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+\r
+ <!-- PLESOL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>pene</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>sfric</KEYWORD3>\r
+ <KEYWORD3>stot</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>gap</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>serr</KEYWORD3>\r
+ <KEYWORD3>sdsg</KEYWORD3>\r
+ <KEYWORD3>terr</KEYWORD3>\r
+ <KEYWORD3>tdsg</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>sene</KEYWORD3>\r
+ <KEYWORD3>tene</KEYWORD3>\r
+ <KEYWORD3>kene</KEYWORD3>\r
+ <KEYWORD3>jheat</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+ <KEYWORD3>mre</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>smisc</KEYWORD3>\r
+ <KEYWORD3>nmisc</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+\r
+ <!-- PLETAB command -->\r
+ <KEYWORD3>noav</KEYWORD3>\r
+ <KEYWORD3>avg</KEYWORD3>\r
+\r
+ <!-- PLNSOL command -->\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>pene</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>sfric</KEYWORD3>\r
+ <KEYWORD3>stot</KEYWORD3>\r
+ <KEYWORD3>slide</KEYWORD3>\r
+ <KEYWORD3>gap</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>lmd1</KEYWORD3>\r
+ <KEYWORD3>lmd2</KEYWORD3>\r
+ <KEYWORD3>lmd3</KEYWORD3>\r
+ <KEYWORD3>lmd4</KEYWORD3>\r
+ <KEYWORD3>lmd5</KEYWORD3>\r
+ <KEYWORD3>lmd6</KEYWORD3>\r
+ <KEYWORD3>emd1</KEYWORD3>\r
+ <KEYWORD3>emd2</KEYWORD3>\r
+ <KEYWORD3>emd3</KEYWORD3>\r
+ <KEYWORD3>emd4</KEYWORD3>\r
+ <KEYWORD3>emd5</KEYWORD3>\r
+ <KEYWORD3>emd6</KEYWORD3>\r
+\r
+ <!-- /PLOPTS command -->\r
+ <KEYWORD3>leg1</KEYWORD3>\r
+ <KEYWORD3>leg2</KEYWORD3>\r
+ <KEYWORD3>info</KEYWORD3>\r
+ <KEYWORD3>frame</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>minm</KEYWORD3>\r
+ <KEYWORD3>logo</KEYWORD3>\r
+ <KEYWORD3>wins</KEYWORD3>\r
+ <KEYWORD3>wp</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>auto</KEYWORD3>\r
+\r
+ <!-- PLOT command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- PLPAGM command -->\r
+ <KEYWORD3>node</KEYWORD3>\r
+\r
+ <!-- PLPATH command -->\r
+ <KEYWORD3>xg</KEYWORD3>\r
+ <KEYWORD3>yg</KEYWORD3>\r
+ <KEYWORD3>zg</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+\r
+ <!-- PLSECT command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+\r
+ <!-- PLTRAC command -->\r
+ <KEYWORD3>fluid</KEYWORD3>\r
+ <KEYWORD3>elec</KEYWORD3>\r
+ <KEYWORD3>magn</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+\r
+ <!-- PLVECT command -->\r
+ <KEYWORD3>rast</KEYWORD3>\r
+ <KEYWORD3>vect</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+\r
+ <!-- PMAP command -->\r
+ <KEYWORD3>uniform</KEYWORD3>\r
+ <KEYWORD3>accurate</KEYWORD3>\r
+\r
+ <!-- /PMETH command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- /PNUM command -->\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>sval</KEYWORD3>\r
+ <KEYWORD3>tabnam</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- POPT command -->\r
+ <KEYWORD3>b31.1</KEYWORD3>\r
+ <KEYWORD3>nc</KEYWORD3>\r
+\r
+ <!-- PORTOPT command -->\r
+ <KEYWORD3>coax</KEYWORD3>\r
+ <KEYWORD3>te10</KEYWORD3>\r
+ <KEYWORD3>te11circ</KEYWORD3>\r
+ <KEYWORD3>tm01circ</KEYWORD3>\r
+\r
+ <!-- PPATH command -->\r
+ <KEYWORD3>pick</KEYWORD3>\r
+\r
+ <!-- PRED command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- PRESOL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>serr</KEYWORD3>\r
+ <KEYWORD3>sdsg</KEYWORD3>\r
+ <KEYWORD3>terr</KEYWORD3>\r
+ <KEYWORD3>tdsg</KEYWORD3>\r
+ <KEYWORD3>sene</KEYWORD3>\r
+ <KEYWORD3>tene</KEYWORD3>\r
+ <KEYWORD3>kene</KEYWORD3>\r
+ <KEYWORD3>jheat</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+ <KEYWORD3>mre</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>smisc</KEYWORD3>\r
+ <KEYWORD3>nmisc</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+\r
+ <!-- PRNLD, PRRFOR, PRRSOL commands -->\r
+ <KEYWORD3>fx</KEYWORD3>\r
+ <KEYWORD3>fy</KEYWORD3>\r
+ <KEYWORD3>fz</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>mx</KEYWORD3>\r
+ <KEYWORD3>ym</KEYWORD3>\r
+ <KEYWORD3>mz</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>vfx</KEYWORD3>\r
+ <KEYWORD3>vfy</KEYWORD3>\r
+ <KEYWORD3>vfz</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>curt</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>csgx</KEYWORD3>\r
+ <KEYWORD3>csgy</KEYWORD3>\r
+ <KEYWORD3>csgz</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+\r
+ <!-- PRNSOL, PRSSOL commands -->\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>sp01</KEYWORD3>\r
+ <KEYWORD3>sp02</KEYWORD3>\r
+ <KEYWORD3>sp03</KEYWORD3>\r
+ <KEYWORD3>sp04</KEYWORD3>\r
+ <KEYWORD3>sp05</KEYWORD3>\r
+ <KEYWORD3>sp06</KEYWORD3>\r
+ <KEYWORD3>dof</KEYWORD3>\r
+\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>prin</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>cont</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>topo</KEYWORD3>\r
+\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>spht</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>cmuv</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+ <KEYWORD3>lmd</KEYWORD3>\r
+ <KEYWORD3>emd</KEYWORD3>\r
+\r
+ <!-- PRVECT command -->\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>js</KEYWORD3>\r
+ <KEYWORD3>jt</KEYWORD3>\r
+\r
+ <!-- PSCR command -->\r
+ <KEYWORD3>cmap</KEYWORD3>\r
+ <KEYWORD3>lwid</KEYWORD3>\r
+ <KEYWORD3>color</KEYWORD3>\r
+ <KEYWORD3>tranx</KEYWORD3>\r
+ <KEYWORD3>trany</KEYWORD3>\r
+ <KEYWORD3>rotate</KEYWORD3>\r
+ <KEYWORD3>scale</KEYWORD3>\r
+ <KEYWORD3>tiff</KEYWORD3>\r
+ <KEYWORD3>epsi</KEYWORD3>\r
+\r
+ <!-- PSDRES command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+ <KEYWORD3>rel</KEYWORD3>\r
+ <KEYWORD3>abs</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- PSDUNIT command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+ <KEYWORD3>accg</KEYWORD3>\r
+ <KEYWORD3>forc</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+\r
+ <!-- /PSEARCH command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- PSEL command -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inv</KEYWORD3>\r
+\r
+ <!-- /PSF command -->\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>norm</KEYWORD3>\r
+ <KEYWORD3>tanx</KEYWORD3>\r
+ <KEYWORD3>tany</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hcoef</KEYWORD3>\r
+ <KEYWORD3>tbulk</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>emis</KEYWORD3>\r
+ <KEYWORD3>tamb</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>mur</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+\r
+ <!-- PSOLVE command -->\r
+ <KEYWORD3>cgsol</KEYWORD3>\r
+ <KEYWORD3>eigdamp</KEYWORD3>\r
+ <KEYWORD3>eigexp</KEYWORD3>\r
+ <KEYWORD3>eigfull</KEYWORD3>\r
+ <KEYWORD3>eigreduc</KEYWORD3>\r
+ <KEYWORD3>eigunsym</KEYWORD3>\r
+ <KEYWORD3>elform</KEYWORD3>\r
+ <KEYWORD3>elprep</KEYWORD3>\r
+ <KEYWORD3>redwrite</KEYWORD3>\r
+ <KEYWORD3>triang</KEYWORD3>\r
+\r
+ <!-- PSPRNG command -->\r
+ <KEYWORD3>tran</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+\r
+ <!-- PSTRES command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- /PSYMB command -->\r
+ <KEYWORD3>cs</KEYWORD3>\r
+ <KEYWORD3>ndir</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+ <KEYWORD3>ldir</KEYWORD3>\r
+ <KEYWORD3>layr</KEYWORD3>\r
+ <KEYWORD3>pcon</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>dot</KEYWORD3>\r
+ <KEYWORD3>xnod</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- PTEMP command -->\r
+ <KEYWORD3>none</KEYWORD3>\r
+\r
+ <!-- PTXY command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- PUNIT command -->\r
+ <KEYWORD3>ftin</KEYWORD3>\r
+ <KEYWORD3>metric</KEYWORD3>\r
+\r
+ <!-- PVECT command -->\r
+ <KEYWORD3>norm</KEYWORD3>\r
+ <KEYWORD3>tang</KEYWORD3>\r
+ <KEYWORD3>radi</KEYWORD3>\r
+\r
+ <!-- QUAD command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- /RATIO command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- RBE3 command -->\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>uxyz</KEYWORD3>\r
+ <KEYWORD3>rxyz</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- RDELE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /REPLOT command -->\r
+ <KEYWORD3>resize</KEYWORD3>\r
+ <KEYWORD3>fast</KEYWORD3>\r
+\r
+ <!-- REXPORT command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>dyna</KEYWORD3>\r
+\r
+ <!-- RFORCE command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>,f</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>,m</KEYWORD3>\r
+ <KEYWORD3>heat</KEYWORD3>\r
+ <KEYWORD3>flow</KEYWORD3>\r
+ <KEYWORD3>amps</KEYWORD3>\r
+ <KEYWORD3>flux</KEYWORD3>\r
+ <KEYWORD3>vf</KEYWORD3>\r
+ <KEYWORD3>csg</KEYWORD3>\r
+ <KEYWORD3>vltg</KEYWORD3>\r
+ <KEYWORD3>durt</KEYWORD3>\r
+\r
+ <!-- /RGB command -->\r
+ <KEYWORD3>index</KEYWORD3>\r
+ <KEYWORD3>cntr</KEYWORD3>\r
+\r
+ <!-- RIGID command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>ux</KEYWORD3>\r
+ <KEYWORD3>uy</KEYWORD3>\r
+ <KEYWORD3>uz</KEYWORD3>\r
+ <KEYWORD3>rotx</KEYWORD3>\r
+ <KEYWORD3>roty</KEYWORD3>\r
+ <KEYWORD3>rotz</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- RIMPORT command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>dyna</KEYWORD3>\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>stress</KEYWORD3>\r
+\r
+ <!-- RLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- RSYS command -->\r
+ <KEYWORD3>solu</KEYWORD3>\r
+\r
+ <!-- SARPLOT command -->\r
+ <KEYWORD3>factor</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>narrow</KEYWORD3>\r
+\r
+ <!-- /SECLIB command -->\r
+ <KEYWORD3>read</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+\r
+ <!-- SECOFFSET command -->\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>shrc</KEYWORD3>\r
+ <KEYWORD3>origin</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+\r
+ <!-- SECREAD, SECWRITE commands -->\r
+ <KEYWORD3>library</KEYWORD3>\r
+ <KEYWORD3>mesh</KEYWORD3>\r
+\r
+ <!-- SECTYPE command -->\r
+ <KEYWORD3>beam</KEYWORD3>\r
+ <KEYWORD3>rect</KEYWORD3>\r
+ <KEYWORD3>quad</KEYWORD3>\r
+ <KEYWORD3>csolid</KEYWORD3>\r
+ <KEYWORD3>ctube</KEYWORD3>\r
+ <KEYWORD3>chan</KEYWORD3>\r
+ <KEYWORD3>i</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>,l</KEYWORD3>\r
+ <KEYWORD3>t</KEYWORD3>\r
+ <KEYWORD3>hats</KEYWORD3>\r
+ <KEYWORD3>hrec</KEYWORD3>\r
+ <KEYWORD3>asec</KEYWORD3>\r
+ <KEYWORD3>mesh</KEYWORD3>\r
+\r
+ <!-- SEDLIST command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- SEEXP command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- /SEG command -->\r
+ <KEYWORD3>singl</KEYWORD3>\r
+ <KEYWORD3>multi</KEYWORD3>\r
+ <KEYWORD3>delet</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>pc</KEYWORD3>\r
+\r
+ <!-- SESYMM command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- *SET command -->\r
+\r
+ <!-- SET command -->\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>next</KEYWORD3>\r
+ <KEYWORD3>near</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+\r
+ <!-- SF command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+\r
+ <!-- SFA command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+\r
+ <!-- SFACT command -->\r
+ <KEYWORD3>,sf</KEYWORD3>\r
+ <KEYWORD3>ms</KEYWORD3>\r
+\r
+ <!-- SFADELE, SFALIST, SFBEAM commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- SFCUM command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>selv</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>repl</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>igno</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+\r
+ <!-- SFDELE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>selv</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+\r
+ <!-- SFE, SFEDELE, SFELIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>selv</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>shld</KEYWORD3>\r
+\r
+ <!-- SFFUN, SFGRAD commands -->\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+\r
+ <!-- SFL, SFLDELE, SFLIST, SFLLIST, SFSCALE commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>conv</KEYWORD3>\r
+ <KEYWORD3>hflux</KEYWORD3>\r
+ <KEYWORD3>rad</KEYWORD3>\r
+ <KEYWORD3>fsi</KEYWORD3>\r
+ <KEYWORD3>impd</KEYWORD3>\r
+ <KEYWORD3>mci</KEYWORD3>\r
+ <KEYWORD3>mxwf</KEYWORD3>\r
+ <KEYWORD3>chrgs</KEYWORD3>\r
+ <KEYWORD3>inf</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>shdl</KEYWORD3>\r
+ <KEYWORD3>selv</KEYWORD3>\r
+\r
+ <!-- /SHADE command -->\r
+ <KEYWORD3>facet</KEYWORD3>\r
+ <KEYWORD3>gouraud</KEYWORD3>\r
+ <KEYWORD3>phong</KEYWORD3>\r
+\r
+ <!-- SHELL command -->\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>mid</KEYWORD3>\r
+ <KEYWORD3>bot</KEYWORD3>\r
+\r
+ <!-- /SHOW command -->\r
+ <KEYWORD3>term</KEYWORD3>\r
+ <KEYWORD3>file</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>pscr</KEYWORD3>\r
+ <KEYWORD3>hpgl</KEYWORD3>\r
+ <KEYWORD3>hpgl2</KEYWORD3>\r
+ <KEYWORD3>vrml</KEYWORD3>\r
+\r
+ <!-- /SHOWDISP command -->\r
+ <KEYWORD3>hpgl</KEYWORD3>\r
+ <KEYWORD3>hpgl2</KEYWORD3>\r
+ <KEYWORD3>interleaf</KEYWORD3>\r
+ <KEYWORD3>postscript</KEYWORD3>\r
+ <KEYWORD3>dump</KEYWORD3>\r
+\r
+ <!-- SHPP command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>warn</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>silent</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+ <KEYWORD3>summary</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>object</KEYWORD3>\r
+ <KEYWORD3>modify</KEYWORD3>\r
+ <KEYWORD3>angd</KEYWORD3>\r
+ <KEYWORD3>aspect</KEYWORD3>\r
+ <KEYWORD3>paral</KEYWORD3>\r
+ <KEYWORD3>maxang</KEYWORD3>\r
+ <KEYWORD3>jacrat</KEYWORD3>\r
+ <KEYWORD3>warp</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+\r
+ <!-- SLPPLOT, SLSPLOT commands -->\r
+ <KEYWORD3>factor</KEYWORD3>\r
+ <KEYWORD3>radius</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+\r
+ <!-- SMRTSIZE command -->\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- SOLCONTROL command -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+\r
+ <!-- SOLU command -->\r
+ <KEYWORD3>allf</KEYWORD3>\r
+ <KEYWORD3>aldlf</KEYWORD3>\r
+ <KEYWORD3>arcl</KEYWORD3>\r
+ <KEYWORD3>cnvg</KEYWORD3>\r
+ <KEYWORD3>crprat</KEYWORD3>\r
+ <KEYWORD3>cscv</KEYWORD3>\r
+ <KEYWORD3>cucv</KEYWORD3>\r
+ <KEYWORD3>dicv</KEYWORD3>\r
+ <KEYWORD3>dsprm</KEYWORD3>\r
+ <KEYWORD3>dtime</KEYWORD3>\r
+ <KEYWORD3>eqit</KEYWORD3>\r
+ <KEYWORD3>ffcv</KEYWORD3>\r
+ <KEYWORD3>focv</KEYWORD3>\r
+ <KEYWORD3>hfcv</KEYWORD3>\r
+ <KEYWORD3>nc48</KEYWORD3>\r
+ <KEYWORD3>nc49</KEYWORD3>\r
+ <KEYWORD3>ncmit</KEYWORD3>\r
+ <KEYWORD3>ncmls</KEYWORD3>\r
+ <KEYWORD3>ncmss</KEYWORD3>\r
+ <KEYWORD3>mfcv</KEYWORD3>\r
+ <KEYWORD3>mocv</KEYWORD3>\r
+ <KEYWORD3>mxdvl</KEYWORD3>\r
+ <KEYWORD3>prcv</KEYWORD3>\r
+ <KEYWORD3>psinc</KEYWORD3>\r
+ <KEYWORD3>resfrq</KEYWORD3>\r
+ <KEYWORD3>reseig</KEYWORD3>\r
+ <KEYWORD3>rocv</KEYWORD3>\r
+ <KEYWORD3>smcv</KEYWORD3>\r
+ <KEYWORD3>tecv</KEYWORD3>\r
+ <KEYWORD3>vecv</KEYWORD3>\r
+ <KEYWORD3>vocv</KEYWORD3>\r
+ <KEYWORD3>vmcv</KEYWORD3>\r
+\r
+ <!-- SPOPT command -->\r
+ <KEYWORD3>sprs</KEYWORD3>\r
+ <KEYWORD3>mprs</KEYWORD3>\r
+ <KEYWORD3>ddam</KEYWORD3>\r
+ <KEYWORD3>psd</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+\r
+ <!-- SRSS command -->\r
+ <KEYWORD3>disp</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- /SSCALE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- SSTIF command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- *STATUS command -->\r
+ <KEYWORD3>argx</KEYWORD3>\r
+\r
+ <!-- /STATUS command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>units</KEYWORD3>\r
+ <KEYWORD3>mem</KEYWORD3>\r
+ <KEYWORD3>db</KEYWORD3>\r
+ <KEYWORD3>config</KEYWORD3>\r
+ <KEYWORD3>global</KEYWORD3>\r
+ <KEYWORD3>solu</KEYWORD3>\r
+ <KEYWORD3>phys</KEYWORD3>\r
+\r
+ <!-- STORE command -->\r
+ <KEYWORD3>merge</KEYWORD3>\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>appen</KEYWORD3>\r
+ <KEYWORD3>alloc</KEYWORD3>\r
+ <KEYWORD3>psd</KEYWORD3>\r
+\r
+ <!-- SUBOPT command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>part</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+\r
+ <!-- SUBSET command -->\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>next</KEYWORD3>\r
+ <KEYWORD3>near</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>velo</KEYWORD3>\r
+ <KEYWORD3>acel</KEYWORD3>\r
+\r
+ <!-- SUMTYPE command -->\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>prin</KEYWORD3>\r
+\r
+ <!-- TB command -->\r
+ <KEYWORD3>bkin</KEYWORD3>\r
+ <KEYWORD3>mkin</KEYWORD3>\r
+ <KEYWORD3>miso</KEYWORD3>\r
+ <KEYWORD3>biso</KEYWORD3>\r
+ <KEYWORD3>aniso</KEYWORD3>\r
+ <KEYWORD3>dp</KEYWORD3>\r
+ <KEYWORD3>melas</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+ <KEYWORD3>kinh</KEYWORD3>\r
+ <KEYWORD3>anand</KEYWORD3>\r
+ <KEYWORD3>creep</KEYWORD3>\r
+ <KEYWORD3>swell</KEYWORD3>\r
+ <KEYWORD3>bh</KEYWORD3>\r
+ <KEYWORD3>piez</KEYWORD3>\r
+ <KEYWORD3>fail</KEYWORD3>\r
+ <KEYWORD3>mooney</KEYWORD3>\r
+ <KEYWORD3>water</KEYWORD3>\r
+ <KEYWORD3>anel</KEYWORD3>\r
+ <KEYWORD3>concr</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>fcon</KEYWORD3>\r
+ <KEYWORD3>pflow</KEYWORD3>\r
+ <KEYWORD3>evisc</KEYWORD3>\r
+ <KEYWORD3>plaw</KEYWORD3>\r
+ <KEYWORD3>foam</KEYWORD3>\r
+ <KEYWORD3>honey</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>eos</KEYWORD3>\r
+\r
+ <!-- TBDELE, TBLIST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- TBPLOT command -->\r
+ <KEYWORD3>mkin</KEYWORD3>\r
+ <KEYWORD3>kinh</KEYWORD3>\r
+ <KEYWORD3>melas</KEYWORD3>\r
+ <KEYWORD3>miso</KEYWORD3>\r
+ <KEYWORD3>bkin</KEYWORD3>\r
+ <KEYWORD3>biso</KEYWORD3>\r
+ <KEYWORD3>bh</KEYWORD3>\r
+ <KEYWORD3>nb</KEYWORD3>\r
+ <KEYWORD3>mh</KEYWORD3>\r
+ <KEYWORD3>sbh</KEYWORD3>\r
+ <KEYWORD3>snb</KEYWORD3>\r
+ <KEYWORD3>smh</KEYWORD3>\r
+\r
+ <!-- TBPT command -->\r
+ <KEYWORD3>defi</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- TEE command -->\r
+ <KEYWORD3>wt</KEYWORD3>\r
+ <KEYWORD3>uft</KEYWORD3>\r
+\r
+ <!-- TERM command -->\r
+ <KEYWORD3>copy</KEYWORD3>\r
+ <KEYWORD3>loop</KEYWORD3>\r
+ <KEYWORD3>noprom</KEYWORD3>\r
+\r
+ <!-- TIMINT command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>struc</KEYWORD3>\r
+ <KEYWORD3>therm</KEYWORD3>\r
+ <KEYWORD3>elect</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>fluid</KEYWORD3>\r
+\r
+ <!-- TIMP command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- TRANSFER command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- /TRIAD command -->\r
+ <KEYWORD3>orig</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>lbot</KEYWORD3>\r
+ <KEYWORD3>rbot</KEYWORD3>\r
+ <KEYWORD3>ltop</KEYWORD3>\r
+ <KEYWORD3>rtop</KEYWORD3>\r
+\r
+ <!-- /TRLCY command -->\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>isurf</KEYWORD3>\r
+ <KEYWORD3>cm</KEYWORD3>\r
+ <KEYWORD3>curve</KEYWORD3>\r
+\r
+ <!-- TRNOPT command -->\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>reduc</KEYWORD3>\r
+ <KEYWORD3>msup</KEYWORD3>\r
+ <KEYWORD3>damp</KEYWORD3>\r
+ <KEYWORD3>nodamp</KEYWORD3>\r
+\r
+ <!-- TRPDEL, TRPLIS, TRPOIN commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- TSHAP command -->\r
+ <KEYWORD3>iine</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>para</KEYWORD3>\r
+ <KEYWORD3>arc</KEYWORD3>\r
+ <KEYWORD3>carc</KEYWORD3>\r
+ <KEYWORD3>circ</KEYWORD3>\r
+ <KEYWORD3>tria</KEYWORD3>\r
+ <KEYWORD3>tri6</KEYWORD3>\r
+ <KEYWORD3>quad</KEYWORD3>\r
+ <KEYWORD3>qua8</KEYWORD3>\r
+ <KEYWORD3>cyli</KEYWORD3>\r
+ <KEYWORD3>cone</KEYWORD3>\r
+ <KEYWORD3>sphe</KEYWORD3>\r
+ <KEYWORD3>pilo</KEYWORD3>\r
+\r
+ <!-- /TYPE command -->\r
+ <KEYWORD3>basic</KEYWORD3>\r
+ <KEYWORD3>sect</KEYWORD3>\r
+ <KEYWORD3>hidc</KEYWORD3>\r
+ <KEYWORD3>hidd</KEYWORD3>\r
+ <KEYWORD3>hidp</KEYWORD3>\r
+ <KEYWORD3>cap</KEYWORD3>\r
+ <KEYWORD3>zbuf</KEYWORD3>\r
+ <KEYWORD3>zcap</KEYWORD3>\r
+ <KEYWORD3>zqsl</KEYWORD3>\r
+ <KEYWORD3>hqsl</KEYWORD3>\r
+\r
+ <!-- /UI command -->\r
+ <KEYWORD3>help</KEYWORD3>\r
+ <KEYWORD3>view</KEYWORD3>\r
+ <KEYWORD3>wpse</KEYWORD3>\r
+ <KEYWORD3>wpvi</KEYWORD3>\r
+ <KEYWORD3>result</KEYWORD3>\r
+ <KEYWORD3>query</KEYWORD3>\r
+ <KEYWORD3>copy</KEYWORD3>\r
+ <KEYWORD3>anno</KEYWORD3>\r
+ <KEYWORD3>select</KEYWORD3>\r
+ <KEYWORD3>,nsel</KEYWORD3>\r
+ <KEYWORD3>,esel</KEYWORD3>\r
+ <KEYWORD3>,ksel</KEYWORD3>\r
+ <KEYWORD3>,lsel</KEYWORD3>\r
+ <KEYWORD3>,asel</KEYWORD3>\r
+ <KEYWORD3>,vsel</KEYWORD3>\r
+ <KEYWORD3>refresh</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>element</KEYWORD3>\r
+ <KEYWORD3>grid</KEYWORD3>\r
+ <KEYWORD3>format</KEYWORD3>\r
+ <KEYWORD3>pscr</KEYWORD3>\r
+ <KEYWORD3>tiff</KEYWORD3>\r
+ <KEYWORD3>epsi</KEYWORD3>\r
+ <KEYWORD3>bmp</KEYWORD3>\r
+ <KEYWORD3>wmf</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>screen</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>graph</KEYWORD3>\r
+ <KEYWORD3>color</KEYWORD3>\r
+ <KEYWORD3>mono</KEYWORD3>\r
+ <KEYWORD3>grey</KEYWORD3>\r
+ <KEYWORD3>krev</KEYWORD3>\r
+ <KEYWORD3>norm</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>orient</KEYWORD3>\r
+ <KEYWORD3>landscape</KEYWORD3>\r
+ <KEYWORD3>portrait</KEYWORD3>\r
+ <KEYWORD3>compress</KEYWORD3>\r
+ <KEYWORD3>yes</KEYWORD3>\r
+ <KEYWORD3>no</KEYWORD3>\r
+\r
+ <!-- /UIS command -->\r
+ <KEYWORD3>msgpop</KEYWORD3>\r
+ <KEYWORD3>replot</KEYWORD3>\r
+ <KEYWORD3>abort</KEYWORD3>\r
+ <KEYWORD3>dyna</KEYWORD3>\r
+ <KEYWORD3>pick</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>defa</KEYWORD3>\r
+\r
+ <!-- /UNITS command -->\r
+ <KEYWORD3>user</KEYWORD3>\r
+ <KEYWORD3>si</KEYWORD3>\r
+ <KEYWORD3>cgs</KEYWORD3>\r
+ <KEYWORD3>bft</KEYWORD3>\r
+ <KEYWORD3>bin</KEYWORD3>\r
+\r
+ <!-- UPCOORD command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+\r
+ <!-- /USER command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- USRCAL command -->\r
+ <KEYWORD3>usrefl</KEYWORD3>\r
+ <KEYWORD3>userfl</KEYWORD3>\r
+ <KEYWORD3>usercv</KEYWORD3>\r
+ <KEYWORD3>userpr</KEYWORD3>\r
+ <KEYWORD3>userfx</KEYWORD3>\r
+ <KEYWORD3>userch</KEYWORD3>\r
+ <KEYWORD3>userfd</KEYWORD3>\r
+ <KEYWORD3>userou</KEYWORD3>\r
+ <KEYWORD3>usermc</KEYWORD3>\r
+ <KEYWORD3>usolbeg</KEYWORD3>\r
+ <KEYWORD3>uldbeg</KEYWORD3>\r
+ <KEYWORD3>ussbeg</KEYWORD3>\r
+ <KEYWORD3>uitbeg</KEYWORD3>\r
+ <KEYWORD3>uitfin</KEYWORD3>\r
+ <KEYWORD3>ussfin</KEYWORD3>\r
+ <KEYWORD3>uldfin</KEYWORD3>\r
+ <KEYWORD3>usolfin</KEYWORD3>\r
+ <KEYWORD3>uanbeg</KEYWORD3>\r
+ <KEYWORD3>uanfin</KEYWORD3>\r
+ <KEYWORD3>uelmatx</KEYWORD3>\r
+\r
+ <!-- VA, VADD, VCLEAR, /VCONE, VCVFILL, VDELE, VDGL, VDRAG, VEXT commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- *VFILL command -->\r
+ <KEYWORD3>data</KEYWORD3>\r
+ <KEYWORD3>ramp</KEYWORD3>\r
+ <KEYWORD3>rand</KEYWORD3>\r
+ <KEYWORD3>gdis</KEYWORD3>\r
+ <KEYWORD3>tria</KEYWORD3>\r
+ <KEYWORD3>beta</KEYWORD3>\r
+ <KEYWORD3>gamm</KEYWORD3>\r
+\r
+ <!-- *VFUN command -->\r
+ <KEYWORD3>acos</KEYWORD3>\r
+ <KEYWORD3>asin</KEYWORD3>\r
+ <KEYWORD3>asort</KEYWORD3>\r
+ <KEYWORD3>atan</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>copy</KEYWORD3>\r
+ <KEYWORD3>cos</KEYWORD3>\r
+ <KEYWORD3>cosh</KEYWORD3>\r
+ <KEYWORD3>dircos</KEYWORD3>\r
+ <KEYWORD3>dsort</KEYWORD3>\r
+ <KEYWORD3>euler</KEYWORD3>\r
+ <KEYWORD3>exp</KEYWORD3>\r
+ <KEYWORD3>expa</KEYWORD3>\r
+ <KEYWORD3>log</KEYWORD3>\r
+ <KEYWORD3>log10</KEYWORD3>\r
+ <KEYWORD3>nint</KEYWORD3>\r
+ <KEYWORD3>not</KEYWORD3>\r
+ <KEYWORD3>pwr</KEYWORD3>\r
+ <KEYWORD3>sin</KEYWORD3>\r
+ <KEYWORD3>sinh</KEYWORD3>\r
+ <KEYWORD3>sqrt</KEYWORD3>\r
+ <KEYWORD3>tan</KEYWORD3>\r
+ <KEYWORD3>tanh</KEYWORD3>\r
+ <KEYWORD3>tang</KEYWORD3>\r
+ <KEYWORD3>norm</KEYWORD3>\r
+ <KEYWORD3>local</KEYWORD3>\r
+ <KEYWORD3>global</KEYWORD3>\r
+\r
+ <!-- VGEN command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- *VGET command -->\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>ang</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>zx</KEYWORD3>\r
+ <KEYWORD3>,nsel</KEYWORD3>\r
+\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>adj</KEYWORD3>\r
+ <KEYWORD3>attr</KEYWORD3>\r
+ <KEYWORD3>geom</KEYWORD3>\r
+ <KEYWORD3>,esel</KEYWORD3>\r
+ <KEYWORD3>shpar</KEYWORD3>\r
+\r
+ <KEYWORD3>kp</KEYWORD3>\r
+ <KEYWORD3>div</KEYWORD3>\r
+ <KEYWORD3>,ksel</KEYWORD3>\r
+\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>leng</KEYWORD3>\r
+ <KEYWORD3>,lsel</KEYWORD3>\r
+\r
+ <KEYWORD3>area</KEYWORD3>\r
+ <KEYWORD3>loop</KEYWORD3>\r
+ <KEYWORD3>,asel</KEYWORD3>\r
+\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>shell</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>,vsel</KEYWORD3>\r
+\r
+ <KEYWORD3>cdsy</KEYWORD3>\r
+\r
+ <KEYWORD3>rcon</KEYWORD3>\r
+ <KEYWORD3>const</KEYWORD3>\r
+\r
+ <KEYWORD3>const</KEYWORD3>\r
+ <KEYWORD3>bkin</KEYWORD3>\r
+ <KEYWORD3>mkin</KEYWORD3>\r
+ <KEYWORD3>miso</KEYWORD3>\r
+ <KEYWORD3>biso</KEYWORD3>\r
+ <KEYWORD3>aniso</KEYWORD3>\r
+ <KEYWORD3>dp</KEYWORD3>\r
+ <KEYWORD3>melas</KEYWORD3>\r
+ <KEYWORD3>user</KEYWORD3>\r
+ <KEYWORD3>kinh</KEYWORD3>\r
+ <KEYWORD3>anand</KEYWORD3>\r
+ <KEYWORD3>creep</KEYWORD3>\r
+ <KEYWORD3>swell</KEYWORD3>\r
+ <KEYWORD3>bh</KEYWORD3>\r
+ <KEYWORD3>piez</KEYWORD3>\r
+ <KEYWORD3>fail</KEYWORD3>\r
+ <KEYWORD3>mooney</KEYWORD3>\r
+ <KEYWORD3>water</KEYWORD3>\r
+ <KEYWORD3>anel</KEYWORD3>\r
+ <KEYWORD3>concr</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>fcon</KEYWORD3>\r
+ <KEYWORD3>pflow</KEYWORD3>\r
+ <KEYWORD3>evisc</KEYWORD3>\r
+ <KEYWORD3>plaw</KEYWORD3>\r
+ <KEYWORD3>foam</KEYWORD3>\r
+ <KEYWORD3>honey</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>eos</KEYWORD3>\r
+\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>hs</KEYWORD3>\r
+ <KEYWORD3>bfe</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+\r
+ <KEYWORD3>etab</KEYWORD3>\r
+\r
+ <!-- VGLUE, VIMP, VINP, VINV, VLIST, VLSCALE, VMESH, VOFFST commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- /VIEW command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>wp</KEYWORD3>\r
+\r
+ <!-- *VOPER command -->\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>sub</KEYWORD3>\r
+ <KEYWORD3>mult</KEYWORD3>\r
+ <KEYWORD3>div</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>lt</KEYWORD3>\r
+ <KEYWORD3>le</KEYWORD3>\r
+ <KEYWORD3>eq</KEYWORD3>\r
+ <KEYWORD3>ne</KEYWORD3>\r
+ <KEYWORD3>ge</KEYWORD3>\r
+ <KEYWORD3>gt</KEYWORD3>\r
+ <KEYWORD3>der1</KEYWORD3>\r
+ <KEYWORD3>der2</KEYWORD3>\r
+ <KEYWORD3>int1</KEYWORD3>\r
+ <KEYWORD3>int2</KEYWORD3>\r
+ <KEYWORD3>dot</KEYWORD3>\r
+ <KEYWORD3>cross</KEYWORD3>\r
+ <KEYWORD3>gath</KEYWORD3>\r
+ <KEYWORD3>scat</KEYWORD3>\r
+\r
+ <!-- VOVLAP, VPTN commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- VPLOT command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>dege</KEYWORD3>\r
+\r
+ <!-- *VPUT command -->\r
+ <KEYWORD3>node</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>rot</KEYWORD3>\r
+ <KEYWORD3>temp</KEYWORD3>\r
+ <KEYWORD3>pres</KEYWORD3>\r
+ <KEYWORD3>volt</KEYWORD3>\r
+ <KEYWORD3>mag</KEYWORD3>\r
+ <KEYWORD3>v</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>curr</KEYWORD3>\r
+ <KEYWORD3>emf</KEYWORD3>\r
+ <KEYWORD3>enke</KEYWORD3>\r
+ <KEYWORD3>ends</KEYWORD3>\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>xy</KEYWORD3>\r
+ <KEYWORD3>yz</KEYWORD3>\r
+ <KEYWORD3>xz</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>eqv</KEYWORD3>\r
+ <KEYWORD3>epto</KEYWORD3>\r
+ <KEYWORD3>epel</KEYWORD3>\r
+ <KEYWORD3>eppl</KEYWORD3>\r
+ <KEYWORD3>epcr</KEYWORD3>\r
+ <KEYWORD3>epth</KEYWORD3>\r
+ <KEYWORD3>epsw</KEYWORD3>\r
+ <KEYWORD3>nl</KEYWORD3>\r
+ <KEYWORD3>sepl</KEYWORD3>\r
+ <KEYWORD3>srat</KEYWORD3>\r
+ <KEYWORD3>hpres</KEYWORD3>\r
+ <KEYWORD3>epeq</KEYWORD3>\r
+ <KEYWORD3>psv</KEYWORD3>\r
+ <KEYWORD3>plwk</KEYWORD3>\r
+ <KEYWORD3>tg</KEYWORD3>\r
+ <KEYWORD3>tf</KEYWORD3>\r
+ <KEYWORD3>pg</KEYWORD3>\r
+ <KEYWORD3>ef</KEYWORD3>\r
+ <KEYWORD3>,d</KEYWORD3>\r
+ <KEYWORD3>h</KEYWORD3>\r
+ <KEYWORD3>b</KEYWORD3>\r
+ <KEYWORD3>fmag</KEYWORD3>\r
+ <KEYWORD3>ttot</KEYWORD3>\r
+ <KEYWORD3>hflu</KEYWORD3>\r
+ <KEYWORD3>hflm</KEYWORD3>\r
+ <KEYWORD3>cond</KEYWORD3>\r
+ <KEYWORD3>pcoe</KEYWORD3>\r
+ <KEYWORD3>ptot</KEYWORD3>\r
+ <KEYWORD3>mach</KEYWORD3>\r
+ <KEYWORD3>strm</KEYWORD3>\r
+ <KEYWORD3>dens</KEYWORD3>\r
+ <KEYWORD3>visc</KEYWORD3>\r
+ <KEYWORD3>evis</KEYWORD3>\r
+ <KEYWORD3>econ</KEYWORD3>\r
+ <KEYWORD3>yplu</KEYWORD3>\r
+ <KEYWORD3>tauw</KEYWORD3>\r
+\r
+ <KEYWORD3>elem</KEYWORD3>\r
+ <KEYWORD3>etab</KEYWORD3>\r
+\r
+ <!-- VROTAT command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- VSBA, VSBV, VSBW commands -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>sepo</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+\r
+ <!-- *VSCFUN command -->\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>lmax</KEYWORD3>\r
+ <KEYWORD3>lmin</KEYWORD3>\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>medi</KEYWORD3>\r
+ <KEYWORD3>mean</KEYWORD3>\r
+ <KEYWORD3>vari</KEYWORD3>\r
+ <KEYWORD3>stdv</KEYWORD3>\r
+ <KEYWORD3>rms</KEYWORD3>\r
+ <KEYWORD3>num</KEYWORD3>\r
+\r
+ <!-- VSEL, VSLA commands -->\r
+ <KEYWORD3>s</KEYWORD3>\r
+ <KEYWORD3>,r</KEYWORD3>\r
+ <KEYWORD3>,a</KEYWORD3>\r
+ <KEYWORD3>u</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>inve</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>volu</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>,mat</KEYWORD3>\r
+ <KEYWORD3>,type</KEYWORD3>\r
+ <KEYWORD3>,real</KEYWORD3>\r
+ <KEYWORD3>,esys</KEYWORD3>\r
+\r
+ <!-- VSUM command -->\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>fine</KEYWORD3>\r
+\r
+ <!-- VSWEEP command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- VSYMM, VTRAN, /VUP commands -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>p</KEYWORD3>\r
+ <KEYWORD3>-x</KEYWORD3>\r
+ <KEYWORD3>-y</KEYWORD3>\r
+ <KEYWORD3>-z</KEYWORD3>\r
+\r
+ <!-- WAVES command -->\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>rms</KEYWORD3>\r
+\r
+ <!-- /WINDOW command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>full</KEYWORD3>\r
+ <KEYWORD3>left</KEYWORD3>\r
+ <KEYWORD3>righ</KEYWORD3>\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>bot</KEYWORD3>\r
+ <KEYWORD3>ltop</KEYWORD3>\r
+ <KEYWORD3>lbot</KEYWORD3>\r
+ <KEYWORD3>rtop</KEYWORD3>\r
+ <KEYWORD3>rbot</KEYWORD3>\r
+ <KEYWORD3>squa</KEYWORD3>\r
+ <KEYWORD3>dele</KEYWORD3>\r
+\r
+ <!-- WPAVE command -->\r
+ <KEYWORD3>p</KEYWORD3>\r
+\r
+ <!-- WSORT command -->\r
+ <KEYWORD3>x</KEYWORD3>\r
+ <KEYWORD3>y</KEYWORD3>\r
+ <KEYWORD3>z</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>rms</KEYWORD3>\r
+\r
+ <!-- WSTART command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /YRANGE command -->\r
+ <KEYWORD3>all</KEYWORD3>\r
+\r
+ <!-- /ZOOM command -->\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>back</KEYWORD3>\r
+ <KEYWORD3>scrn</KEYWORD3>\r
+ <KEYWORD3>rect</KEYWORD3>\r
+ \r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- AppleScript mode by Kris Kopicki (21/8/2002) -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="commentStart" VALUE="(*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*)" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(*</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">Â</SEQ>\r
+\r
+ <!-- Constants -->\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="application"\r
+ AT_WORD_START="TRUE"\r
+ >application[\t\s]+responses</SEQ_REGEXP>\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="current"\r
+ AT_WORD_START="TRUE"\r
+ >current[\t\s]+application</SEQ_REGEXP>\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="white"\r
+ AT_WORD_START="TRUE"\r
+ >white[\t\s]+space</SEQ_REGEXP>\r
+ \r
+ <!-- Text Styles -->\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="all"\r
+ >all[\t\s]+caps</SEQ_REGEXP>\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="all"\r
+ AT_WORD_START="TRUE"\r
+ >all[\t\s]+lowercase</SEQ_REGEXP>\r
+ <SEQ_REGEXP\r
+ TYPE="LITERAL2"\r
+ HASH_CHAR="small"\r
+ AT_WORD_START="TRUE"\r
+ >small[\t\s]+caps</SEQ_REGEXP>\r
+ \r
+ <!-- Predefined Variables -->\r
+ <SEQ_REGEXP\r
+ TYPE="KEYWORD3"\r
+ HASH_CHAR="missing"\r
+ AT_WORD_START="TRUE"\r
+ >missing[\t\s]+value</SEQ_REGEXP>\r
+ \r
+ <KEYWORDS>\r
+ <!-- Keywords -->\r
+ <KEYWORD1>script</KEYWORD1>\r
+ <KEYWORD1>property</KEYWORD1>\r
+ <KEYWORD1>prop</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>given</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>without</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>tell</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>times</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>error</KEYWORD1>\r
+ <KEYWORD1>considering</KEYWORD1>\r
+ <KEYWORD1>ignoring</KEYWORD1>\r
+ <KEYWORD1>timeout</KEYWORD1>\r
+ <KEYWORD1>transaction</KEYWORD1>\r
+ <KEYWORD1>my</KEYWORD1>\r
+ <KEYWORD1>get</KEYWORD1>\r
+ <KEYWORD1>put</KEYWORD1>\r
+ <KEYWORD1>into</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ \r
+ <!-- References -->\r
+ <KEYWORD2>each</KEYWORD2>\r
+ <KEYWORD2>some</KEYWORD2>\r
+ <KEYWORD2>every</KEYWORD2>\r
+ <KEYWORD2>whose</KEYWORD2>\r
+ <KEYWORD2>where</KEYWORD2>\r
+ <KEYWORD2>id</KEYWORD2>\r
+ <KEYWORD2>index</KEYWORD2>\r
+ <KEYWORD2>first</KEYWORD2>\r
+ <KEYWORD2>second</KEYWORD2>\r
+ <KEYWORD2>third</KEYWORD2>\r
+ <KEYWORD2>fourth</KEYWORD2>\r
+ <KEYWORD2>fifth</KEYWORD2>\r
+ <KEYWORD2>sixth</KEYWORD2>\r
+ <KEYWORD2>seventh</KEYWORD2>\r
+ <KEYWORD2>eighth</KEYWORD2>\r
+ <KEYWORD2>ninth</KEYWORD2>\r
+ <KEYWORD2>tenth</KEYWORD2>\r
+ <KEYWORD2>last</KEYWORD2>\r
+ <KEYWORD2>front</KEYWORD2>\r
+ <KEYWORD2>back</KEYWORD2>\r
+ <KEYWORD2>st</KEYWORD2>\r
+ <KEYWORD2>nd</KEYWORD2>\r
+ <KEYWORD2>rd</KEYWORD2>\r
+ <KEYWORD2>th</KEYWORD2>\r
+ <KEYWORD2>middle</KEYWORD2>\r
+ <KEYWORD2>named</KEYWORD2>\r
+ <KEYWORD2>through</KEYWORD2>\r
+ <KEYWORD2>thru</KEYWORD2>\r
+ <KEYWORD2>before</KEYWORD2>\r
+ <KEYWORD2>after</KEYWORD2>\r
+ <KEYWORD2>beginning</KEYWORD2>\r
+ <KEYWORD2>the</KEYWORD2>\r
+ \r
+ <!-- Commands -->\r
+ <KEYWORD3>close</KEYWORD3>\r
+ <KEYWORD3>copy</KEYWORD3>\r
+ <KEYWORD3>count</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>duplicate</KEYWORD3>\r
+ <KEYWORD3>exists</KEYWORD3>\r
+ <KEYWORD3>launch</KEYWORD3>\r
+ <KEYWORD3>make</KEYWORD3>\r
+ <KEYWORD3>move</KEYWORD3>\r
+ <KEYWORD3>open</KEYWORD3>\r
+ <KEYWORD3>print</KEYWORD3>\r
+ <KEYWORD3>quit</KEYWORD3>\r
+ <KEYWORD3>reopen</KEYWORD3>\r
+ <KEYWORD3>run</KEYWORD3>\r
+ <KEYWORD3>save</KEYWORD3>\r
+ <KEYWORD3>saving</KEYWORD3>\r
+ \r
+ <!-- Predefined Variables -->\r
+ <LITERAL2>it</LITERAL2>\r
+ <LITERAL2>me</LITERAL2>\r
+ <LITERAL2>version</LITERAL2>\r
+ <LITERAL2>pi</LITERAL2>\r
+ <LITERAL2>result</LITERAL2>\r
+ <LITERAL2>space</LITERAL2>\r
+ <LITERAL2>tab</LITERAL2>\r
+ <LITERAL2>anything</LITERAL2>\r
+ \r
+ <!-- Constants -->\r
+ <LITERAL2>case</LITERAL2>\r
+ <LITERAL2>diacriticals</LITERAL2>\r
+ <LITERAL2>expansion</LITERAL2>\r
+ <LITERAL2>hyphens</LITERAL2>\r
+ <LITERAL2>punctuation</LITERAL2>\r
+ \r
+ <!-- Text Styles -->\r
+ <LITERAL2>bold</LITERAL2>\r
+ <LITERAL2>condensed</LITERAL2>\r
+ <LITERAL2>expanded</LITERAL2>\r
+ <LITERAL2>hidden</LITERAL2>\r
+ <LITERAL2>italic</LITERAL2>\r
+ <LITERAL2>outline</LITERAL2>\r
+ <LITERAL2>plain</LITERAL2>\r
+ <LITERAL2>shadow</LITERAL2>\r
+ <LITERAL2>strikethrough</LITERAL2>\r
+ <LITERAL2>subscript</LITERAL2>\r
+ <LITERAL2>superscript</LITERAL2>\r
+ <LITERAL2>underline</LITERAL2>\r
+ \r
+ <!-- Save options -->\r
+ <LITERAL2>ask</LITERAL2>\r
+ <LITERAL2>no</LITERAL2>\r
+ <LITERAL2>yes</LITERAL2>\r
+ \r
+ <!-- Booleans -->\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ \r
+ <!-- Date & Time -->\r
+ <LITERAL2>weekday</LITERAL2>\r
+ <LITERAL2>monday</LITERAL2>\r
+ <LITERAL2>mon</LITERAL2>\r
+ <LITERAL2>tuesday</LITERAL2>\r
+ <LITERAL2>tue</LITERAL2>\r
+ <LITERAL2>wednesday</LITERAL2>\r
+ <LITERAL2>wed</LITERAL2>\r
+ <LITERAL2>thursday</LITERAL2>\r
+ <LITERAL2>thu</LITERAL2>\r
+ <LITERAL2>friday</LITERAL2>\r
+ <LITERAL2>fri</LITERAL2>\r
+ <LITERAL2>saturday</LITERAL2>\r
+ <LITERAL2>sat</LITERAL2>\r
+ <LITERAL2>sunday</LITERAL2>\r
+ <LITERAL2>sun</LITERAL2>\r
+ \r
+ <LITERAL2>month</LITERAL2>\r
+ <LITERAL2>january</LITERAL2>\r
+ <LITERAL2>jan</LITERAL2>\r
+ <LITERAL2>february</LITERAL2>\r
+ <LITERAL2>feb</LITERAL2>\r
+ <LITERAL2>march</LITERAL2>\r
+ <LITERAL2>mar</LITERAL2>\r
+ <LITERAL2>april</LITERAL2>\r
+ <LITERAL2>apr</LITERAL2>\r
+ <LITERAL2>may</LITERAL2>\r
+ <LITERAL2>june</LITERAL2>\r
+ <LITERAL2>jun</LITERAL2>\r
+ <LITERAL2>july</LITERAL2>\r
+ <LITERAL2>jul</LITERAL2>\r
+ <LITERAL2>august</LITERAL2>\r
+ <LITERAL2>aug</LITERAL2>\r
+ <LITERAL2>september</LITERAL2>\r
+ <LITERAL2>sep</LITERAL2>\r
+ <LITERAL2>october</LITERAL2>\r
+ <LITERAL2>oct</LITERAL2>\r
+ <LITERAL2>november</LITERAL2>\r
+ <LITERAL2>nov</LITERAL2>\r
+ <LITERAL2>december</LITERAL2>\r
+ <LITERAL2>dec</LITERAL2>\r
+ \r
+ <LITERAL2>minutes</LITERAL2>\r
+ <LITERAL2>hours</LITERAL2>\r
+ <LITERAL2>days</LITERAL2>\r
+ <LITERAL2>weeks</LITERAL2>\r
+ \r
+ <!-- Operators -->\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>as</OPERATOR>\r
+ <OPERATOR>contains</OPERATOR>\r
+ <OPERATOR>equal</OPERATOR>\r
+ <OPERATOR>equals</OPERATOR>\r
+ <OPERATOR>isn't</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- ASP mode by Andre Kaplan\r
+ Updated by Simon Ruggier -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <SEQ TYPE="MARKUP" DELEGATE="ASPVB"><%@LANGUAGE="VBSCRIPT"%</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="ASPJS"><%@LANGUAGE="JSCRIPT"%</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="ASPJS"><%@LANGUAGE="JAVASCRIPT"%</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="ASPPL"><%@LANGUAGE="PERLSCRIPT"%</SEQ>\r
+\r
+ <!-- Inlined server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><script language="vbscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side Javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="jscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="javascript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><script language="perlscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Client-side javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script language="jscript"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script language="javascript"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-Side include -->\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="ASPVB_SGML">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_STYLE">\r
+ <BEGIN><STYLE></BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ******************************************************************\r
+ ASP with VBScript as default script engine\r
+ ****************************************************************** -->\r
+ <RULES SET="ASPVB" IGNORE_CASE="TRUE">\r
+ <!-- Inlined server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><script language="vbscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side Javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="jscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="javascript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><script language="perlscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Client-side javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script language="jscript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script language="javascript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_CSJS">\r
+ <BEGIN><script></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-Side include -->\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="ASPVB_SGML">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_STYLE">\r
+ <BEGIN><STYLE></BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_TAGS">\r
+ <BEGIN></</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPVB_TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ******************************************************************\r
+ ASP with JScript as default script engine\r
+ ****************************************************************** -->\r
+ <RULES SET="ASPJS" IGNORE_CASE="TRUE">\r
+ <!-- Inlined server-side Javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><script language="vbscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side Javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="jscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="javascript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><script language="perlscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Client-side javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_CSJS">\r
+ <BEGIN><script language="jscript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_CSJS">\r
+ <BEGIN><script language="javascript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_CSJS">\r
+ <BEGIN><script></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-Side include -->\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="ASPJS_SGML">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_STYLE">\r
+ <BEGIN><STYLE></BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_TAGS">\r
+ <BEGIN></</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPJS_TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ******************************************************************\r
+ ASP with PerlScript as default script engine\r
+ ****************************************************************** -->\r
+ <RULES SET="ASPPL" IGNORE_CASE="TRUE">\r
+ <!-- Inlined server-side Perlscript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><script language="vbscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side Javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="jscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="javascript" runat="server"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><script language="perlscript" runat="server"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Client-side javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_CSJS">\r
+ <BEGIN><script language="jscript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_CSJS">\r
+ <BEGIN><script language="javascript"</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_CSJS">\r
+ <BEGIN><script></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-Side include -->\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="ASPPL_SGML">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_STYLE">\r
+ <BEGIN><STYLE></BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_TAGS">\r
+ <BEGIN></</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ASPPL_TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ******************************************************************\r
+ HTML Tags\r
+ ****************************************************************** -->\r
+ <RULES SET="ASPVB_TAGS" DEFAULT="MARKUP">\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPVB_LIT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPVB_LIT1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ> \r
+ </RULES>\r
+\r
+ <RULES SET="ASPVB_LIT1" DEFAULT="LITERAL1">\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPJS_TAGS" DEFAULT="MARKUP">\r
+ <!-- Server-side JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPJS_LIT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPJS_LIT1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ> \r
+ </RULES>\r
+ \r
+ <RULES SET="ASPJS_LIT1" DEFAULT="LITERAL1">\r
+ <!-- Server-side JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPPL_TAGS" DEFAULT="MARKUP">\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPPL_LIT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE ="ASPPL_LIT1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ> \r
+ </RULES>\r
+\r
+ <RULES SET="ASPPL_LIT1" DEFAULT="LITERAL1">\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+ \r
+ <!-- These three rules sets handle server side scripts being mixed into client side javascript -->\r
+ <RULES SET="ASPVB_CSJS">\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="javascript::MAIN"/>\r
+ </RULES>\r
+ \r
+ <RULES SET="ASPJS_CSJS">\r
+ <!-- Server-side JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="javascript::MAIN"/>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPPL_CSJS">\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="javascript::MAIN"/>\r
+ </RULES>\r
+ \r
+ <!-- These three rules sets handle server side scripts being mixed into stylesheets -->\r
+ <RULES SET="ASPVB_STYLE">\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="css::MAIN"/>\r
+ </RULES>\r
+ \r
+ <RULES SET="ASPJS_STYLE">\r
+ <!-- Server-side JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="css::MAIN"/>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPPL_STYLE">\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="css::MAIN"/>\r
+ </RULES>\r
+\r
+ <!-- These three rules sets handle server side scripts being mixed into SGML Comments -->\r
+ <RULES SET="ASPVB_SGML" DEFAULT="COMMENT1">\r
+ <!-- Server-side VBScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="vbscript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPJS_SGML" DEFAULT="COMMENT1">\r
+ <!-- Server-side JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="ASPPL_SGML" DEFAULT="COMMENT1">\r
+ <!-- Server-side PerlScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="perl::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentPrevLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x)?[\p{XDigit}]+[lLdDfF]?">\r
+\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="java::JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <!-- workaround to stop "*" from being colorized\r
+ in import statements. -->\r
+ <SEQ TYPE="NULL">.*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_WHITESPACE_END="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>import</KEYWORD2>\r
+\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>interface</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <FUNCTION>assert</FUNCTION>\r
+ <KEYWORD1>strictfp</KEYWORD1>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>super</LITERAL2>\r
+ <LITERAL2>this</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+\r
+ <INVALID>goto</INVALID>\r
+ <INVALID>const</INVALID>\r
+\r
+ <KEYWORD4>args</KEYWORD4>\r
+ <KEYWORD4>percflow</KEYWORD4>\r
+ <KEYWORD4>get</KEYWORD4>\r
+ <KEYWORD4>set</KEYWORD4>\r
+ <KEYWORD4>preinitialization</KEYWORD4>\r
+ <KEYWORD4>handler</KEYWORD4>\r
+ <KEYWORD4>adviceexecution</KEYWORD4>\r
+ <KEYWORD4>cflow</KEYWORD4>\r
+ <KEYWORD4>target</KEYWORD4>\r
+ <KEYWORD4>cflowbelow</KEYWORD4>\r
+ <KEYWORD4>withincode</KEYWORD4>\r
+ <KEYWORD4>declare</KEYWORD4>\r
+ <KEYWORD4>precedence</KEYWORD4>\r
+ <KEYWORD4>issingleton</KEYWORD4>\r
+ <KEYWORD4>perthis</KEYWORD4>\r
+ <KEYWORD4>pertarget</KEYWORD4>\r
+ <KEYWORD4>privileged</KEYWORD4>\r
+ <KEYWORD4>after</KEYWORD4>\r
+ <KEYWORD4>around</KEYWORD4>\r
+ <KEYWORD4>aspect</KEYWORD4>\r
+ <KEYWORD4>before</KEYWORD4>\r
+ <KEYWORD4>call</KEYWORD4>\r
+ <KEYWORD4>execution</KEYWORD4>\r
+ <KEYWORD4>initialization</KEYWORD4>\r
+ <KEYWORD4>pointcut</KEYWORD4>\r
+ <KEYWORD4>proceed</KEYWORD4>\r
+ <KEYWORD4>staticinitialization</KEYWORD4>\r
+ <KEYWORD4>within</KEYWORD4>\r
+ <KEYWORD4>..</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ M68000 Assembly mode by Igor Lesik (curoles@yahoo.com)\r
+ version 0.2 (July 24, 2006)\r
+ TODO: i)add missing size qualifiers, ii)add Xcc like instructions\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x\p{XDigit}+|\d+)">\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">*</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="TRUE">$</MARK_FOLLOWING>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">$</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+\r
+ <KEYWORDS>\r
+\r
+ <!-- ************************* REGISTERS ********************************* -->\r
+ <!-- For sake of commonality with existing asm86 mode we use Keyword3 for registers-->\r
+\r
+ <!-- General-purpose data registers -->\r
+ <KEYWORD3>D0</KEYWORD3>\r
+ <KEYWORD3>D1</KEYWORD3>\r
+ <KEYWORD3>D2</KEYWORD3>\r
+ <KEYWORD3>D3</KEYWORD3>\r
+ <KEYWORD3>D4</KEYWORD3>\r
+ <KEYWORD3>D5</KEYWORD3>\r
+ <KEYWORD3>D6</KEYWORD3>\r
+ <KEYWORD3>D7</KEYWORD3>\r
+\r
+ <!-- Address registers -->\r
+ <KEYWORD3>A0</KEYWORD3>\r
+ <KEYWORD3>A1</KEYWORD3>\r
+ <KEYWORD3>A2</KEYWORD3>\r
+ <KEYWORD3>A3</KEYWORD3>\r
+ <KEYWORD3>A4</KEYWORD3>\r
+ <KEYWORD3>A5</KEYWORD3>\r
+ <KEYWORD3>A6</KEYWORD3>\r
+ <KEYWORD3>A7</KEYWORD3>\r
+\r
+ <!-- Floating-point data registers -->\r
+ <KEYWORD3>FP0</KEYWORD3>\r
+ <KEYWORD3>FP1</KEYWORD3>\r
+ <KEYWORD3>FP2</KEYWORD3>\r
+ <KEYWORD3>FP3</KEYWORD3>\r
+ <KEYWORD3>FP4</KEYWORD3>\r
+ <KEYWORD3>FP5</KEYWORD3>\r
+ <KEYWORD3>FP6</KEYWORD3>\r
+ <KEYWORD3>FP7</KEYWORD3>\r
+\r
+ <KEYWORD3>SP</KEYWORD3>\r
+ <KEYWORD3>CCR</KEYWORD3>\r
+\r
+ <!-- ************************** DIRECTIVES ********************************** -->\r
+\r
+ <!-- Assembler directives give instructions to the assembler (not the 68000 chip which will execute\r
+ your program) on how to assemble your program.\r
+ These directives may be grouped into the following categories.-->\r
+\r
+ <!-- Miscellaneous -->\r
+ <KEYWORD1>OPT</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>FAIL</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>REG</KEYWORD1>\r
+\r
+ <!-- Listing Control -->\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>LIST</KEYWORD1>\r
+ <KEYWORD1>NOLIST</KEYWORD1>\r
+ <KEYWORD1>SPC</KEYWORD1>\r
+ <KEYWORD1>TTL</KEYWORD1>\r
+\r
+ <!-- Section Control -->\r
+ <KEYWORD1>ORG</KEYWORD1>\r
+\r
+ <!-- Symbol Definition -->\r
+ <KEYWORD1>EQU</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+\r
+ <!-- Data Definition -->\r
+ <KEYWORD1>DS</KEYWORD1>\r
+ <KEYWORD1>DC</KEYWORD1>\r
+\r
+ <!-- Structured Programming Constructs -->\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>ENDF</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ENDI</KEYWORD1>\r
+ <KEYWORD1>REPEAT</KEYWORD1>\r
+ <KEYWORD1>UNTIL</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>DO</KEYWORD1>\r
+ <KEYWORD1>ENDW</KEYWORD1>\r
+\r
+ <KEYWORD1>MACRO</KEYWORD1>\r
+\r
+\r
+ <!-- *************************** INSTRUCTIONS **************************************** -->\r
+ <FUNCTION>ABCD</FUNCTION>\r
+ <FUNCTION>ADD</FUNCTION>\r
+ <FUNCTION>ADD.B</FUNCTION>\r
+ <FUNCTION>ADD.W</FUNCTION>\r
+ <FUNCTION>ADD.L</FUNCTION>\r
+ <FUNCTION>ADDA</FUNCTION>\r
+ <FUNCTION>ADDA.W</FUNCTION>\r
+ <FUNCTION>ADDA.L</FUNCTION>\r
+ <FUNCTION>ADDI</FUNCTION>\r
+ <FUNCTION>ADDI.B</FUNCTION>\r
+ <FUNCTION>ADDI.W</FUNCTION>\r
+ <FUNCTION>ADDI.L</FUNCTION>\r
+ <FUNCTION>ADDQ</FUNCTION>\r
+ <FUNCTION>ADDQ.B</FUNCTION>\r
+ <FUNCTION>ADDQ.W</FUNCTION>\r
+ <FUNCTION>ADDQ.L</FUNCTION>\r
+ <FUNCTION>ADDX</FUNCTION>\r
+ <FUNCTION>ADDX.B</FUNCTION>\r
+ <FUNCTION>ADDX.W</FUNCTION>\r
+ <FUNCTION>ADDX.L</FUNCTION>\r
+ <FUNCTION>AND</FUNCTION>\r
+ <FUNCTION>AND.B</FUNCTION>\r
+ <FUNCTION>AND.W</FUNCTION>\r
+ <FUNCTION>AND.L</FUNCTION>\r
+ <FUNCTION>ANDI</FUNCTION>\r
+ <FUNCTION>ANDI.B</FUNCTION>\r
+ <FUNCTION>ANDI.W</FUNCTION>\r
+ <FUNCTION>ANDI.L</FUNCTION>\r
+ <FUNCTION>ASL</FUNCTION>\r
+ <FUNCTION>ASL.B</FUNCTION>\r
+ <FUNCTION>ASL.W</FUNCTION>\r
+ <FUNCTION>ASL.L</FUNCTION>\r
+ <FUNCTION>ASR</FUNCTION>\r
+ <FUNCTION>ASR.B</FUNCTION>\r
+ <FUNCTION>ASR.W</FUNCTION>\r
+ <FUNCTION>ASR.L</FUNCTION>\r
+ <!-- Bcc -->\r
+ <FUNCTION>BCC</FUNCTION>\r
+ <FUNCTION>BCS</FUNCTION>\r
+ <FUNCTION>BEQ</FUNCTION>\r
+ <FUNCTION>BGE</FUNCTION>\r
+ <FUNCTION>BGT</FUNCTION>\r
+ <FUNCTION>BHI</FUNCTION>\r
+ <FUNCTION>BLE</FUNCTION>\r
+ <FUNCTION>BLS</FUNCTION>\r
+ <FUNCTION>BLT</FUNCTION>\r
+ <FUNCTION>BMI</FUNCTION>\r
+ <FUNCTION>BNE</FUNCTION>\r
+ <FUNCTION>BPL</FUNCTION>\r
+ <FUNCTION>BVC</FUNCTION>\r
+ <FUNCTION>BVS</FUNCTION>\r
+ <FUNCTION>BCHG</FUNCTION>\r
+ <FUNCTION>BCLR</FUNCTION>\r
+ <FUNCTION>BFCHG</FUNCTION>\r
+ <FUNCTION>BFCLR</FUNCTION>\r
+ <FUNCTION>BFEXTS</FUNCTION>\r
+ <FUNCTION>BFEXTU</FUNCTION>\r
+ <FUNCTION>BFFF0</FUNCTION>\r
+ <FUNCTION>BFINS</FUNCTION>\r
+ <FUNCTION>BFSET</FUNCTION>\r
+ <FUNCTION>BFTST</FUNCTION>\r
+ <FUNCTION>BGND</FUNCTION>\r
+ <FUNCTION>BKPT</FUNCTION>\r
+ <FUNCTION>BRA</FUNCTION>\r
+ <FUNCTION>BSET</FUNCTION>\r
+ <FUNCTION>BSR</FUNCTION>\r
+ <FUNCTION>BTST</FUNCTION>\r
+ <FUNCTION>CALLM</FUNCTION>\r
+ <FUNCTION>CAS</FUNCTION>\r
+ <FUNCTION>CAS2</FUNCTION>\r
+ <FUNCTION>CHK</FUNCTION>\r
+ <FUNCTION>CHK2</FUNCTION>\r
+ <FUNCTION>CINV</FUNCTION>\r
+ <FUNCTION>CLR</FUNCTION>\r
+ <FUNCTION>CLR.B</FUNCTION>\r
+ <FUNCTION>CLR.W</FUNCTION>\r
+ <FUNCTION>CLR.L</FUNCTION>\r
+ <FUNCTION>CMP</FUNCTION>\r
+ <FUNCTION>CMP.B</FUNCTION>\r
+ <FUNCTION>CMP.W</FUNCTION>\r
+ <FUNCTION>CMP.L</FUNCTION>\r
+ <FUNCTION>CMPA</FUNCTION>\r
+ <FUNCTION>CMPA.W</FUNCTION>\r
+ <FUNCTION>CMPA.L</FUNCTION>\r
+ <FUNCTION>CMPI</FUNCTION>\r
+ <FUNCTION>CMPI.B</FUNCTION>\r
+ <FUNCTION>CMPI.W</FUNCTION>\r
+ <FUNCTION>CMPI.L</FUNCTION>\r
+ <FUNCTION>CMPM</FUNCTION>\r
+ <FUNCTION>CMPM.B</FUNCTION>\r
+ <FUNCTION>CMPM.W</FUNCTION>\r
+ <FUNCTION>CMPM.L</FUNCTION>\r
+ <FUNCTION>CMP2</FUNCTION>\r
+ <FUNCTION>CMP2.B</FUNCTION>\r
+ <FUNCTION>CMP2.W</FUNCTION>\r
+ <FUNCTION>CMP2.L</FUNCTION>\r
+ <!-- FUNCTION>cpBcc</FUNCTION>\r
+ <FUNCTION>cpDBcc</FUNCTION>\r
+ <FUNCTION>cpGEN</FUNCTION>\r
+ <FUNCTION>cpRESTORE</FUNCTION>\r
+ <FUNCTION>cpSAVE</FUNCTION>\r
+ <FUNCTION>cpScc</FUNCTION>\r
+ <FUNCTION>cpTRAPcc</FUNCTION -->\r
+ <FUNCTION>CPUSH</FUNCTION>\r
+ <!-- DBcc -->\r
+ <FUNCTION>DBCC</FUNCTION>\r
+ <FUNCTION>DBCS</FUNCTION>\r
+ <FUNCTION>DBEQ</FUNCTION>\r
+ <FUNCTION>DBGE</FUNCTION>\r
+ <FUNCTION>DBGT</FUNCTION>\r
+ <FUNCTION>DBHI</FUNCTION>\r
+ <FUNCTION>DBLE</FUNCTION>\r
+ <FUNCTION>DBLS</FUNCTION>\r
+ <FUNCTION>DBLT</FUNCTION>\r
+ <FUNCTION>DBMI</FUNCTION>\r
+ <FUNCTION>DBNE</FUNCTION>\r
+ <FUNCTION>DBPL</FUNCTION>\r
+ <FUNCTION>DBVC</FUNCTION>\r
+ <FUNCTION>DBVS</FUNCTION>\r
+\r
+ <FUNCTION>DIVS</FUNCTION>\r
+ <FUNCTION>DIVSL</FUNCTION>\r
+ <FUNCTION>DIVU</FUNCTION>\r
+ <FUNCTION>DIVUL</FUNCTION>\r
+ <FUNCTION>EOR</FUNCTION>\r
+ <FUNCTION>EOR.B</FUNCTION>\r
+ <FUNCTION>EOR.W</FUNCTION>\r
+ <FUNCTION>EOR.L</FUNCTION>\r
+ <FUNCTION>EORI</FUNCTION>\r
+ <FUNCTION>EORI.B</FUNCTION>\r
+ <FUNCTION>EORI.W</FUNCTION>\r
+ <FUNCTION>EORI.L</FUNCTION>\r
+ <FUNCTION>EXG</FUNCTION>\r
+ <FUNCTION>EXT</FUNCTION>\r
+ <FUNCTION>EXTB</FUNCTION>\r
+ <FUNCTION>FABS</FUNCTION>\r
+ <FUNCTION>FSABS</FUNCTION>\r
+ <FUNCTION>FDABS</FUNCTION>\r
+ <FUNCTION>FACOS</FUNCTION>\r
+ <FUNCTION>FADD</FUNCTION>\r
+ <FUNCTION>FSADD</FUNCTION>\r
+ <FUNCTION>FDADD</FUNCTION>\r
+ <FUNCTION>FASIN</FUNCTION>\r
+ <FUNCTION>FATAN</FUNCTION>\r
+ <FUNCTION>FATANH</FUNCTION>\r
+ <!--FUNCTION>FBcc</FUNCTION-->\r
+ <FUNCTION>FCMP</FUNCTION>\r
+ <FUNCTION>FCOS</FUNCTION>\r
+ <FUNCTION>FCOSH</FUNCTION>\r
+ <!--FUNCTION>FDBcc</FUNCTION-->\r
+ <FUNCTION>FDIV</FUNCTION>\r
+ <FUNCTION>FSDIV</FUNCTION>\r
+ <FUNCTION>FDDIV</FUNCTION>\r
+ <FUNCTION>FETOX</FUNCTION>\r
+ <FUNCTION>FETOXM1</FUNCTION>\r
+ <FUNCTION>FGETEXP</FUNCTION>\r
+ <FUNCTION>FGETMAN</FUNCTION>\r
+ <FUNCTION>FINT</FUNCTION>\r
+ <FUNCTION>FINTRZ</FUNCTION>\r
+ <FUNCTION>FLOG10</FUNCTION>\r
+ <FUNCTION>FLOG2</FUNCTION>\r
+ <FUNCTION>FLOGN</FUNCTION>\r
+ <FUNCTION>FLOGNP1</FUNCTION>\r
+ <FUNCTION>FMOD</FUNCTION>\r
+ <FUNCTION>FMOVE</FUNCTION>\r
+ <FUNCTION>FSMOVE</FUNCTION>\r
+ <FUNCTION>FDMOVE</FUNCTION>\r
+ <FUNCTION>FMOVECR</FUNCTION>\r
+ <FUNCTION>FMOVEM</FUNCTION>\r
+ <FUNCTION>FMUL</FUNCTION>\r
+ <FUNCTION>FSMUL</FUNCTION>\r
+ <FUNCTION>FDMUL</FUNCTION>\r
+ <FUNCTION>FNEG</FUNCTION>\r
+ <FUNCTION>FSNEG</FUNCTION>\r
+ <FUNCTION>FDNEG</FUNCTION>\r
+ <FUNCTION>FNOP</FUNCTION>\r
+ <FUNCTION>FREM</FUNCTION>\r
+ <FUNCTION>FRESTORE</FUNCTION>\r
+ <FUNCTION>FSAVE</FUNCTION>\r
+ <FUNCTION>FSCALE</FUNCTION>\r
+ <!--FUNCTION>FScc</FUNCTION-->\r
+ <FUNCTION>FSGLMUL</FUNCTION>\r
+ <FUNCTION>FSIN</FUNCTION>\r
+ <FUNCTION>FSINCOS</FUNCTION>\r
+ <FUNCTION>FSINH</FUNCTION>\r
+ <FUNCTION>FSQRT</FUNCTION>\r
+ <FUNCTION>FSSQRT</FUNCTION>\r
+ <FUNCTION>FDSQRT</FUNCTION>\r
+ <FUNCTION>FSUB</FUNCTION>\r
+ <FUNCTION>FSSUB</FUNCTION>\r
+ <FUNCTION>FDSUB</FUNCTION>\r
+ <FUNCTION>FTAN</FUNCTION>\r
+ <FUNCTION>FTANH</FUNCTION>\r
+ <FUNCTION>FTENTOX</FUNCTION>\r
+ <!--FUNCTION>FTRAPcc</FUNCTION-->\r
+ <FUNCTION>FTST</FUNCTION>\r
+ <FUNCTION>FTWOTOX</FUNCTION>\r
+ <FUNCTION>ILLEGAL</FUNCTION>\r
+ <FUNCTION>JMP</FUNCTION>\r
+ <FUNCTION>JSR</FUNCTION>\r
+ <FUNCTION>LEA</FUNCTION>\r
+ <FUNCTION>LINK</FUNCTION>\r
+ <FUNCTION>LPSTOP</FUNCTION>\r
+ <FUNCTION>LSL</FUNCTION>\r
+ <FUNCTION>LSL.B</FUNCTION>\r
+ <FUNCTION>LSL.W</FUNCTION>\r
+ <FUNCTION>LSL.L</FUNCTION>\r
+ <FUNCTION>LSR</FUNCTION>\r
+ <FUNCTION>LSR.B</FUNCTION>\r
+ <FUNCTION>LSR.W</FUNCTION>\r
+ <FUNCTION>LSR.L</FUNCTION>\r
+ <FUNCTION>MOVE</FUNCTION>\r
+ <FUNCTION>MOVE.B</FUNCTION>\r
+ <FUNCTION>MOVE.W</FUNCTION>\r
+ <FUNCTION>MOVE.L</FUNCTION>\r
+ <FUNCTION>MOVEA</FUNCTION>\r
+ <FUNCTION>MOVEA.W</FUNCTION>\r
+ <FUNCTION>MOVEA.L</FUNCTION>\r
+ <FUNCTION>MOVE16</FUNCTION>\r
+ <FUNCTION>MOVEC</FUNCTION>\r
+ <FUNCTION>MOVEM</FUNCTION>\r
+ <FUNCTION>MOVEP</FUNCTION>\r
+ <FUNCTION>MOVEQ</FUNCTION>\r
+ <FUNCTION>MOVES</FUNCTION>\r
+ <FUNCTION>MULS</FUNCTION>\r
+ <FUNCTION>MULU</FUNCTION>\r
+ <FUNCTION>NBCD</FUNCTION>\r
+ <FUNCTION>NEG</FUNCTION>\r
+ <FUNCTION>NEG.B</FUNCTION>\r
+ <FUNCTION>NEG.W</FUNCTION>\r
+ <FUNCTION>NEG.L</FUNCTION>\r
+ <FUNCTION>NEGX</FUNCTION>\r
+ <FUNCTION>NEGX.B</FUNCTION>\r
+ <FUNCTION>NEGX.W</FUNCTION>\r
+ <FUNCTION>NEGX.L</FUNCTION>\r
+ <FUNCTION>NOP</FUNCTION>\r
+ <FUNCTION>NOT</FUNCTION>\r
+ <FUNCTION>NOT.B</FUNCTION>\r
+ <FUNCTION>NOT.W</FUNCTION>\r
+ <FUNCTION>NOT.L</FUNCTION>\r
+ <FUNCTION>OR</FUNCTION>\r
+ <FUNCTION>OR.B</FUNCTION>\r
+ <FUNCTION>OR.W</FUNCTION>\r
+ <FUNCTION>OR.L</FUNCTION>\r
+ <FUNCTION>ORI</FUNCTION>\r
+ <FUNCTION>ORI.B</FUNCTION>\r
+ <FUNCTION>ORI.W</FUNCTION>\r
+ <FUNCTION>ORI.L</FUNCTION>\r
+ <FUNCTION>PACK</FUNCTION>\r
+ <!--FUNCTION>PBcc</FUNCTION-->\r
+ <!--FUNCTION>PDBcc</FUNCTION-->\r
+ <FUNCTION>PEA</FUNCTION>\r
+ <FUNCTION>PFLUSH</FUNCTION>\r
+ <FUNCTION>PFLUSHA</FUNCTION>\r
+ <FUNCTION>PFLUSHR</FUNCTION>\r
+ <FUNCTION>PFLUSHS</FUNCTION>\r
+ <FUNCTION>PLOAD</FUNCTION>\r
+ <FUNCTION>PMOVE</FUNCTION>\r
+ <FUNCTION>PRESTORE</FUNCTION>\r
+ <FUNCTION>PSAVE</FUNCTION>\r
+ <!--FUNCTION>PScc</FUNCTION-->\r
+ <FUNCTION>PTEST</FUNCTION>\r
+ <!--FUNCTION>PTRAPcc</FUNCTION-->\r
+ <FUNCTION>PVALID</FUNCTION>\r
+ <FUNCTION>RESET</FUNCTION>\r
+ <FUNCTION>ROL</FUNCTION>\r
+ <FUNCTION>ROL.B</FUNCTION>\r
+ <FUNCTION>ROL.W</FUNCTION>\r
+ <FUNCTION>ROL.L</FUNCTION>\r
+ <FUNCTION>ROR</FUNCTION>\r
+ <FUNCTION>ROR.B</FUNCTION>\r
+ <FUNCTION>ROR.W</FUNCTION>\r
+ <FUNCTION>ROR.L</FUNCTION>\r
+ <FUNCTION>ROXL</FUNCTION>\r
+ <FUNCTION>ROXL.B</FUNCTION>\r
+ <FUNCTION>ROXL.W</FUNCTION>\r
+ <FUNCTION>ROXL.L</FUNCTION>\r
+ <FUNCTION>ROXR</FUNCTION>\r
+ <FUNCTION>ROXR.B</FUNCTION>\r
+ <FUNCTION>ROXR.W</FUNCTION>\r
+ <FUNCTION>ROXR.L</FUNCTION>\r
+ <FUNCTION>RTD</FUNCTION>\r
+ <FUNCTION>RTE</FUNCTION>\r
+ <FUNCTION>RTM</FUNCTION>\r
+ <FUNCTION>RTR</FUNCTION>\r
+ <FUNCTION>RTS</FUNCTION>\r
+ <FUNCTION>SBCD</FUNCTION>\r
+ <!--Scc-->\r
+ <FUNCTION>SCC</FUNCTION>\r
+ <FUNCTION>SCS</FUNCTION>\r
+ <FUNCTION>SEQ</FUNCTION>\r
+ <FUNCTION>SF</FUNCTION>\r
+ <FUNCTION>SGE</FUNCTION>\r
+ <FUNCTION>SGT</FUNCTION>\r
+ <FUNCTION>SHI</FUNCTION>\r
+ <FUNCTION>SLE</FUNCTION>\r
+ <FUNCTION>SLS</FUNCTION>\r
+ <FUNCTION>SLT</FUNCTION>\r
+ <FUNCTION>SMI</FUNCTION>\r
+ <FUNCTION>SNE</FUNCTION>\r
+ <FUNCTION>SPL</FUNCTION>\r
+ <FUNCTION>ST</FUNCTION>\r
+ <FUNCTION>SVC</FUNCTION>\r
+ <FUNCTION>SVS</FUNCTION>\r
+\r
+ <FUNCTION>STOP</FUNCTION>\r
+ <FUNCTION>SUB</FUNCTION>\r
+ <FUNCTION>SUB.B</FUNCTION>\r
+ <FUNCTION>SUB.W</FUNCTION>\r
+ <FUNCTION>SUB.L</FUNCTION>\r
+ <FUNCTION>SUBA</FUNCTION>\r
+ <FUNCTION>SUBI</FUNCTION>\r
+ <FUNCTION>SUBI.B</FUNCTION>\r
+ <FUNCTION>SUBI.W</FUNCTION>\r
+ <FUNCTION>SUBI.L</FUNCTION>\r
+ <FUNCTION>SUBQ</FUNCTION>\r
+ <FUNCTION>SUBQ.B</FUNCTION>\r
+ <FUNCTION>SUBQ.W</FUNCTION>\r
+ <FUNCTION>SUBQ.L</FUNCTION>\r
+ <FUNCTION>SUBX</FUNCTION>\r
+ <FUNCTION>SUBX.B</FUNCTION>\r
+ <FUNCTION>SUBX.W</FUNCTION>\r
+ <FUNCTION>SUBX.L</FUNCTION>\r
+ <FUNCTION>SWAP</FUNCTION>\r
+ <FUNCTION>TAS</FUNCTION>\r
+ <FUNCTION>TBLS</FUNCTION>\r
+ <FUNCTION>TBLSN</FUNCTION>\r
+ <FUNCTION>TBLU</FUNCTION>\r
+ <FUNCTION>TBLUN</FUNCTION>\r
+ <FUNCTION>TRAP</FUNCTION>\r
+ <!--TRAPcc-->\r
+ <FUNCTION>TRAPCC</FUNCTION>\r
+ <FUNCTION>TRAPCS</FUNCTION>\r
+ <FUNCTION>TRAPEQ</FUNCTION>\r
+ <FUNCTION>TRAPF</FUNCTION>\r
+ <FUNCTION>TRAPGE</FUNCTION>\r
+ <FUNCTION>TRAPGT</FUNCTION>\r
+ <FUNCTION>TRAPHI</FUNCTION>\r
+ <FUNCTION>TRAPLE</FUNCTION>\r
+ <FUNCTION>TRAPLS</FUNCTION>\r
+ <FUNCTION>TRAPLT</FUNCTION>\r
+ <FUNCTION>TRAPMI</FUNCTION>\r
+ <FUNCTION>TRAPNE</FUNCTION>\r
+ <FUNCTION>TRAPPL</FUNCTION>\r
+ <FUNCTION>TRAPT</FUNCTION>\r
+ <FUNCTION>TRAPVC</FUNCTION>\r
+ <FUNCTION>TRAPVS</FUNCTION>\r
+\r
+ <FUNCTION>TRAPV</FUNCTION>\r
+ <FUNCTION>TST</FUNCTION>\r
+ <FUNCTION>TST.B</FUNCTION>\r
+ <FUNCTION>TST.W</FUNCTION>\r
+ <FUNCTION>TST.L</FUNCTION>\r
+ <FUNCTION>UNLK</FUNCTION>\r
+ <FUNCTION>UNPK</FUNCTION>\r
+\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ VAX Macro32 Assembly mode by Mark Wickens (m.wickens@rhodium-consulting.com)\r
+ based on\r
+ x86 Assembly mode by Kristian Ovaska (kristian.ovaska@helsinki.fi)\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- NASM: label inside a macro -->\r
+ <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">%%</MARK_FOLLOWING>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="TRUE">%</MARK_FOLLOWING>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Unary Operators -->\r
+ <SEQ TYPE="OPERATOR">B^</SEQ>\r
+ <SEQ TYPE="OPERATOR">D^</SEQ>\r
+ <SEQ TYPE="OPERATOR">O^</SEQ>\r
+ <SEQ TYPE="OPERATOR">X^</SEQ>\r
+ <SEQ TYPE="OPERATOR">A^</SEQ>\r
+ <SEQ TYPE="OPERATOR">M^</SEQ>\r
+ <SEQ TYPE="OPERATOR">F^</SEQ>\r
+ <SEQ TYPE="OPERATOR">C^</SEQ>\r
+ <SEQ TYPE="OPERATOR">L^</SEQ>\r
+ <SEQ TYPE="OPERATOR">G^</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+\r
+ <!-- Binary Operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Directives -->\r
+ <KEYWORD1>.ADDRESS</KEYWORD1>\r
+ <KEYWORD1>.ALIGN</KEYWORD1>\r
+ <KEYWORD1>.ALIGN</KEYWORD1>\r
+ <KEYWORD1>.ASCIC</KEYWORD1>\r
+ <KEYWORD1>.ASCID</KEYWORD1>\r
+ <KEYWORD1>.ASCII</KEYWORD1>\r
+ <KEYWORD1>.ASCIZ</KEYWORD1>\r
+ <KEYWORD1>.BLKA</KEYWORD1>\r
+ <KEYWORD1>.BLKB</KEYWORD1>\r
+ <KEYWORD1>.BLKD</KEYWORD1>\r
+ <KEYWORD1>.BLKF</KEYWORD1>\r
+ <KEYWORD1>.BLKG</KEYWORD1>\r
+ <KEYWORD1>.BLKH</KEYWORD1>\r
+ <KEYWORD1>.BLKL</KEYWORD1>\r
+ <KEYWORD1>.BLKO</KEYWORD1>\r
+ <KEYWORD1>.BLKQ</KEYWORD1>\r
+ <KEYWORD1>.BLKW</KEYWORD1>\r
+ <KEYWORD1>.BYTE</KEYWORD1>\r
+ <KEYWORD1>.CROSS</KEYWORD1>\r
+ <KEYWORD1>.CROSS</KEYWORD1>\r
+ <KEYWORD1>.DEBUG</KEYWORD1>\r
+ <KEYWORD1>.DEFAULT</KEYWORD1>\r
+ <KEYWORD1>.D_FLOATING</KEYWORD1>\r
+ <KEYWORD1>.DISABLE</KEYWORD1>\r
+ <KEYWORD1>.DOUBLE</KEYWORD1>\r
+ <KEYWORD1>.DSABL</KEYWORD1>\r
+ <KEYWORD1>.ENABL</KEYWORD1>\r
+ <KEYWORD1>.ENABLE</KEYWORD1>\r
+ <KEYWORD1>.END</KEYWORD1>\r
+ <KEYWORD1>.ENDC</KEYWORD1>\r
+ <KEYWORD1>.ENDM</KEYWORD1>\r
+ <KEYWORD1>.ENDR</KEYWORD1>\r
+ <KEYWORD1>.ENTRY</KEYWORD1>\r
+ <KEYWORD1>.ERROR</KEYWORD1>\r
+ <KEYWORD1>.EVEN</KEYWORD1>\r
+ <KEYWORD1>.EXTERNAL</KEYWORD1>\r
+ <KEYWORD1>.EXTRN</KEYWORD1>\r
+ <KEYWORD1>.F_FLOATING</KEYWORD1>\r
+ <KEYWORD1>.FLOAT</KEYWORD1>\r
+ <KEYWORD1>.G_FLOATING</KEYWORD1>\r
+ <KEYWORD1>.GLOBAL</KEYWORD1>\r
+ <KEYWORD1>.GLOBL</KEYWORD1>\r
+ <KEYWORD1>.H_FLOATING</KEYWORD1>\r
+ <KEYWORD1>.IDENT</KEYWORD1>\r
+ <KEYWORD1>.IF</KEYWORD1>\r
+ <KEYWORD1>.IFF</KEYWORD1>\r
+ <KEYWORD1>.IF_FALSE</KEYWORD1>\r
+ <KEYWORD1>.IFT</KEYWORD1>\r
+ <KEYWORD1>.IFTF</KEYWORD1>\r
+ <KEYWORD1>.IF_TRUE</KEYWORD1>\r
+ <KEYWORD1>.IF_TRUE_FALSE</KEYWORD1>\r
+ <KEYWORD1>.IIF</KEYWORD1>\r
+ <KEYWORD1>.IRP</KEYWORD1>\r
+ <KEYWORD1>.IRPC</KEYWORD1>\r
+ <KEYWORD1>.LIBRARY</KEYWORD1>\r
+ <KEYWORD1>.LINK</KEYWORD1>\r
+ <KEYWORD1>.LIST</KEYWORD1>\r
+ <KEYWORD1>.LONG</KEYWORD1>\r
+ <KEYWORD1>.MACRO</KEYWORD1>\r
+ <KEYWORD1>.MASK</KEYWORD1>\r
+ <KEYWORD1>.MCALL</KEYWORD1>\r
+ <KEYWORD1>.MDELETE</KEYWORD1>\r
+ <KEYWORD1>.MEXIT</KEYWORD1>\r
+ <KEYWORD1>.NARG</KEYWORD1>\r
+ <KEYWORD1>.NCHR</KEYWORD1>\r
+ <KEYWORD1>.NLIST</KEYWORD1>\r
+ <KEYWORD1>.NOCROSS</KEYWORD1>\r
+ <KEYWORD1>.NOCROSS</KEYWORD1>\r
+ <KEYWORD1>.NOSHOW</KEYWORD1>\r
+ <KEYWORD1>.NOSHOW</KEYWORD1>\r
+ <KEYWORD1>.NTYPE</KEYWORD1>\r
+ <KEYWORD1>.OCTA</KEYWORD1>\r
+ <KEYWORD1>.OCTA</KEYWORD1>\r
+ <KEYWORD1>.ODD</KEYWORD1>\r
+ <KEYWORD1>.OPDEF</KEYWORD1>\r
+ <KEYWORD1>.PACKED</KEYWORD1>\r
+ <KEYWORD1>.PAGE</KEYWORD1>\r
+ <KEYWORD1>.PRINT</KEYWORD1>\r
+ <KEYWORD1>.PSECT</KEYWORD1>\r
+ <KEYWORD1>.PSECT</KEYWORD1>\r
+ <KEYWORD1>.QUAD</KEYWORD1>\r
+ <KEYWORD1>.QUAD</KEYWORD1>\r
+ <KEYWORD1>.REF1</KEYWORD1>\r
+ <KEYWORD1>.REF2</KEYWORD1>\r
+ <KEYWORD1>.REF4</KEYWORD1>\r
+ <KEYWORD1>.REF8</KEYWORD1>\r
+ <KEYWORD1>.REF16</KEYWORD1>\r
+ <KEYWORD1>.REPEAT</KEYWORD1>\r
+ <KEYWORD1>.REPT</KEYWORD1>\r
+ <KEYWORD1>.RESTORE</KEYWORD1>\r
+ <KEYWORD1>.RESTORE_PSECT</KEYWORD1>\r
+ <KEYWORD1>.SAVE</KEYWORD1>\r
+ <KEYWORD1>.SAVE_PSECT</KEYWORD1>\r
+ <KEYWORD1>.SBTTL</KEYWORD1>\r
+ <KEYWORD1>.SHOW</KEYWORD1>\r
+ <KEYWORD1>.SHOW</KEYWORD1>\r
+ <KEYWORD1>.SIGNED_BYTE</KEYWORD1>\r
+ <KEYWORD1>.SIGNED_WORD</KEYWORD1>\r
+ <KEYWORD1>.SUBTITLE</KEYWORD1>\r
+ <KEYWORD1>.TITLE</KEYWORD1>\r
+ <KEYWORD1>.TRANSFER</KEYWORD1>\r
+ <KEYWORD1>.WARN</KEYWORD1>\r
+ <KEYWORD1>.WEAK</KEYWORD1>\r
+ <KEYWORD1>.WORD</KEYWORD1>\r
+\r
+ <!-- Registers -->\r
+ <KEYWORD3>R0</KEYWORD3>\r
+ <KEYWORD3>R1</KEYWORD3>\r
+ <KEYWORD3>R2</KEYWORD3>\r
+ <KEYWORD3>R3</KEYWORD3>\r
+ <KEYWORD3>R4</KEYWORD3>\r
+ <KEYWORD3>R5</KEYWORD3>\r
+ <KEYWORD3>R6</KEYWORD3>\r
+ <KEYWORD3>R7</KEYWORD3>\r
+ <KEYWORD3>R8</KEYWORD3>\r
+ <KEYWORD3>R9</KEYWORD3>\r
+ <KEYWORD3>R10</KEYWORD3>\r
+ <KEYWORD3>R11</KEYWORD3>\r
+ <KEYWORD3>R12</KEYWORD3>\r
+ <KEYWORD3>AP</KEYWORD3>\r
+ <KEYWORD3>FP</KEYWORD3>\r
+ <KEYWORD3>SP</KEYWORD3>\r
+ <KEYWORD3>PC</KEYWORD3>\r
+\r
+ <!-- Instructions -->\r
+ <FUNCTION>ACBB</FUNCTION>\r
+ <FUNCTION>ACBD</FUNCTION>\r
+ <FUNCTION>ACBF</FUNCTION>\r
+ <FUNCTION>ACBG</FUNCTION>\r
+ <FUNCTION>ACBH</FUNCTION>\r
+ <FUNCTION>ACBL</FUNCTION>\r
+ <FUNCTION>ACBW</FUNCTION>\r
+ <FUNCTION>ADAWI</FUNCTION>\r
+ <FUNCTION>ADDB2</FUNCTION>\r
+ <FUNCTION>ADDB3</FUNCTION>\r
+ <FUNCTION>ADDD2</FUNCTION>\r
+ <FUNCTION>ADDD3</FUNCTION>\r
+ <FUNCTION>ADDF2</FUNCTION>\r
+ <FUNCTION>ADDF3</FUNCTION>\r
+ <FUNCTION>ADDG2</FUNCTION>\r
+ <FUNCTION>ADDG3</FUNCTION>\r
+ <FUNCTION>ADDH2</FUNCTION>\r
+ <FUNCTION>ADDH3</FUNCTION>\r
+ <FUNCTION>ADDL2</FUNCTION>\r
+ <FUNCTION>ADDL3</FUNCTION>\r
+ <FUNCTION>ADDP4</FUNCTION>\r
+ <FUNCTION>ADDP6</FUNCTION>\r
+ <FUNCTION>ADDW2</FUNCTION>\r
+ <FUNCTION>ADDW3</FUNCTION>\r
+ <FUNCTION>ADWC</FUNCTION>\r
+ <FUNCTION>AOBLEQ</FUNCTION>\r
+ <FUNCTION>AOBLSS</FUNCTION>\r
+ <FUNCTION>ASHL</FUNCTION>\r
+ <FUNCTION>ASHP</FUNCTION>\r
+ <FUNCTION>ASHQ</FUNCTION>\r
+ <FUNCTION>BBC</FUNCTION>\r
+ <FUNCTION>BBCC</FUNCTION>\r
+ <FUNCTION>BBCCI</FUNCTION>\r
+ <FUNCTION>BBCS</FUNCTION>\r
+ <FUNCTION>BBS</FUNCTION>\r
+ <FUNCTION>BBSC</FUNCTION>\r
+ <FUNCTION>BBSS</FUNCTION>\r
+ <FUNCTION>BBSSI</FUNCTION>\r
+ <FUNCTION>BCC</FUNCTION>\r
+ <FUNCTION>BCS</FUNCTION>\r
+ <FUNCTION>BEQL</FUNCTION>\r
+ <FUNCTION>BEQLU</FUNCTION>\r
+ <FUNCTION>BGEQ</FUNCTION>\r
+ <FUNCTION>BGEQU</FUNCTION>\r
+ <FUNCTION>BGTR</FUNCTION>\r
+ <FUNCTION>BGTRU</FUNCTION>\r
+ <FUNCTION>BICB2</FUNCTION>\r
+ <FUNCTION>BICB3</FUNCTION>\r
+ <FUNCTION>BICL2</FUNCTION>\r
+ <FUNCTION>BICL3</FUNCTION>\r
+ <FUNCTION>BICPSW</FUNCTION>\r
+ <FUNCTION>BICW2</FUNCTION>\r
+ <FUNCTION>BICW3</FUNCTION>\r
+ <FUNCTION>BISB2</FUNCTION>\r
+ <FUNCTION>BISB3</FUNCTION>\r
+ <FUNCTION>BISL2</FUNCTION>\r
+ <FUNCTION>BISL3</FUNCTION>\r
+ <FUNCTION>BISPSW</FUNCTION>\r
+ <FUNCTION>BISW2</FUNCTION>\r
+ <FUNCTION>BISW3</FUNCTION>\r
+ <FUNCTION>BITB</FUNCTION>\r
+ <FUNCTION>BITL</FUNCTION>\r
+ <FUNCTION>BITW</FUNCTION>\r
+ <FUNCTION>BLBC</FUNCTION>\r
+ <FUNCTION>BLBS</FUNCTION>\r
+ <FUNCTION>BLEQ</FUNCTION>\r
+ <FUNCTION>BLEQU</FUNCTION>\r
+ <FUNCTION>BLSS</FUNCTION>\r
+ <FUNCTION>BLSSU</FUNCTION>\r
+ <FUNCTION>BNEQ</FUNCTION>\r
+ <FUNCTION>BNEQU</FUNCTION>\r
+ <FUNCTION>BPT</FUNCTION>\r
+ <FUNCTION>BRB</FUNCTION>\r
+ <FUNCTION>BRW</FUNCTION>\r
+ <FUNCTION>BSBB</FUNCTION>\r
+ <FUNCTION>BSBW</FUNCTION>\r
+ <FUNCTION>BVC</FUNCTION>\r
+ <FUNCTION>BVS</FUNCTION>\r
+ <FUNCTION>CALLG</FUNCTION>\r
+ <FUNCTION>CALLS</FUNCTION>\r
+ <FUNCTION>CASEB</FUNCTION>\r
+ <FUNCTION>CASEL</FUNCTION>\r
+ <FUNCTION>CASEW</FUNCTION>\r
+ <FUNCTION>CHME</FUNCTION>\r
+ <FUNCTION>CHMK</FUNCTION>\r
+ <FUNCTION>CHMS</FUNCTION>\r
+ <FUNCTION>CHMU</FUNCTION>\r
+ <FUNCTION>CLRB</FUNCTION>\r
+ <FUNCTION>CLRD</FUNCTION>\r
+ <FUNCTION>CLRF</FUNCTION>\r
+ <FUNCTION>CLRG</FUNCTION>\r
+ <FUNCTION>CLRH</FUNCTION>\r
+ <FUNCTION>CLRL</FUNCTION>\r
+ <FUNCTION>CLRO</FUNCTION>\r
+ <FUNCTION>CLRQ</FUNCTION>\r
+ <FUNCTION>CLRW</FUNCTION>\r
+ <FUNCTION>CMPB</FUNCTION>\r
+ <FUNCTION>CMPC3</FUNCTION>\r
+ <FUNCTION>CMPC5</FUNCTION>\r
+ <FUNCTION>CMPD</FUNCTION>\r
+ <FUNCTION>CMPF</FUNCTION>\r
+ <FUNCTION>CMPG</FUNCTION>\r
+ <FUNCTION>CMPH</FUNCTION>\r
+ <FUNCTION>CMPL</FUNCTION>\r
+ <FUNCTION>CMPP3</FUNCTION>\r
+ <FUNCTION>CMPP4</FUNCTION>\r
+ <FUNCTION>CMPV</FUNCTION>\r
+ <FUNCTION>CMPW</FUNCTION>\r
+ <FUNCTION>CMPZV</FUNCTION>\r
+ <FUNCTION>CRC</FUNCTION>\r
+ <FUNCTION>CVTBD</FUNCTION>\r
+ <FUNCTION>CVTBF</FUNCTION>\r
+ <FUNCTION>CVTBG</FUNCTION>\r
+ <FUNCTION>CVTBH</FUNCTION>\r
+ <FUNCTION>CVTBL</FUNCTION>\r
+ <FUNCTION>CVTBW</FUNCTION>\r
+ <FUNCTION>CVTDB</FUNCTION>\r
+ <FUNCTION>CVTDF</FUNCTION>\r
+ <FUNCTION>CVTDH</FUNCTION>\r
+ <FUNCTION>CVTDL</FUNCTION>\r
+ <FUNCTION>CVTDW</FUNCTION>\r
+ <FUNCTION>CVTFB</FUNCTION>\r
+ <FUNCTION>CVTFD</FUNCTION>\r
+ <FUNCTION>CVTFG</FUNCTION>\r
+ <FUNCTION>CVTFH</FUNCTION>\r
+ <FUNCTION>CVTFL</FUNCTION>\r
+ <FUNCTION>CVTFW</FUNCTION>\r
+ <FUNCTION>CVTGB</FUNCTION>\r
+ <FUNCTION>CVTGF</FUNCTION>\r
+ <FUNCTION>CVTGH</FUNCTION>\r
+ <FUNCTION>CVTGL</FUNCTION>\r
+ <FUNCTION>CVTGW</FUNCTION>\r
+ <FUNCTION>CVTHB</FUNCTION>\r
+ <FUNCTION>CVTHD</FUNCTION>\r
+ <FUNCTION>CVTHF</FUNCTION>\r
+ <FUNCTION>CVTHG</FUNCTION>\r
+ <FUNCTION>CVTHL</FUNCTION>\r
+ <FUNCTION>CVTHW</FUNCTION>\r
+ <FUNCTION>CVTLB</FUNCTION>\r
+ <FUNCTION>CVTLD</FUNCTION>\r
+ <FUNCTION>CVTLF</FUNCTION>\r
+ <FUNCTION>CVTLG</FUNCTION>\r
+ <FUNCTION>CVTLH</FUNCTION>\r
+ <FUNCTION>CVTLP</FUNCTION>\r
+ <FUNCTION>CVTLW</FUNCTION>\r
+ <FUNCTION>CVTPL</FUNCTION>\r
+ <FUNCTION>CVTPS</FUNCTION>\r
+ <FUNCTION>CVTPT</FUNCTION>\r
+ <FUNCTION>CVTRDL</FUNCTION>\r
+ <FUNCTION>CVTRFL</FUNCTION>\r
+ <FUNCTION>CVTRGL</FUNCTION>\r
+ <FUNCTION>CVTRHL</FUNCTION>\r
+ <FUNCTION>CVTSP</FUNCTION>\r
+ <FUNCTION>CVTTP</FUNCTION>\r
+ <FUNCTION>CVTWB</FUNCTION>\r
+ <FUNCTION>CVTWD</FUNCTION>\r
+ <FUNCTION>CVTWF</FUNCTION>\r
+ <FUNCTION>CVTWG</FUNCTION>\r
+ <FUNCTION>CVTWH</FUNCTION>\r
+ <FUNCTION>CVTWL</FUNCTION>\r
+ <FUNCTION>DECB</FUNCTION>\r
+ <FUNCTION>DECL</FUNCTION>\r
+ <FUNCTION>DECW</FUNCTION>\r
+ <FUNCTION>DIVB2</FUNCTION>\r
+ <FUNCTION>DIVB3</FUNCTION>\r
+ <FUNCTION>DIVD2</FUNCTION>\r
+ <FUNCTION>DIVD3</FUNCTION>\r
+ <FUNCTION>DIVF2</FUNCTION>\r
+ <FUNCTION>DIVF3</FUNCTION>\r
+ <FUNCTION>DIVG2</FUNCTION>\r
+ <FUNCTION>DIVG3</FUNCTION>\r
+ <FUNCTION>DIVH2</FUNCTION>\r
+ <FUNCTION>DIVH3</FUNCTION>\r
+ <FUNCTION>DIVL2</FUNCTION>\r
+ <FUNCTION>DIVL3</FUNCTION>\r
+ <FUNCTION>DIVP</FUNCTION>\r
+ <FUNCTION>DIVW2</FUNCTION>\r
+ <FUNCTION>DIVW3</FUNCTION>\r
+ <FUNCTION>EDITPC</FUNCTION>\r
+ <FUNCTION>EDIV</FUNCTION>\r
+ <FUNCTION>EMODD</FUNCTION>\r
+ <FUNCTION>EMODF</FUNCTION>\r
+ <FUNCTION>EMODG</FUNCTION>\r
+ <FUNCTION>EMODH</FUNCTION>\r
+ <FUNCTION>EMUL</FUNCTION>\r
+ <FUNCTION>EXTV</FUNCTION>\r
+ <FUNCTION>EXTZV</FUNCTION>\r
+ <FUNCTION>FFC</FUNCTION>\r
+ <FUNCTION>FFS</FUNCTION>\r
+ <FUNCTION>HALT</FUNCTION>\r
+ <FUNCTION>INCB</FUNCTION>\r
+ <FUNCTION>INCL</FUNCTION>\r
+ <FUNCTION>INCW</FUNCTION>\r
+ <FUNCTION>INDEX</FUNCTION>\r
+ <FUNCTION>INSQHI</FUNCTION>\r
+ <FUNCTION>INSQTI</FUNCTION>\r
+ <FUNCTION>INSQUE</FUNCTION>\r
+ <FUNCTION>INSV</FUNCTION>\r
+ <FUNCTION>IOTA</FUNCTION>\r
+ <FUNCTION>JMP</FUNCTION>\r
+ <FUNCTION>JSB</FUNCTION>\r
+ <FUNCTION>LDPCTX</FUNCTION>\r
+ <FUNCTION>LOCC</FUNCTION>\r
+ <FUNCTION>MATCHC</FUNCTION>\r
+ <FUNCTION>MCOMB</FUNCTION>\r
+ <FUNCTION>MCOML</FUNCTION>\r
+ <FUNCTION>MCOMW</FUNCTION>\r
+ <FUNCTION>MFPR</FUNCTION>\r
+ <FUNCTION>MFVP</FUNCTION>\r
+ <FUNCTION>MNEGB</FUNCTION>\r
+ <FUNCTION>MNEGD</FUNCTION>\r
+ <FUNCTION>MNEGF</FUNCTION>\r
+ <FUNCTION>MNEGG</FUNCTION>\r
+ <FUNCTION>MNEGH</FUNCTION>\r
+ <FUNCTION>MNEGL</FUNCTION>\r
+ <FUNCTION>MNEGW</FUNCTION>\r
+ <FUNCTION>MOVAB</FUNCTION>\r
+ <FUNCTION>MOVAD</FUNCTION>\r
+ <FUNCTION>MOVAF</FUNCTION>\r
+ <FUNCTION>MOVAG</FUNCTION>\r
+ <FUNCTION>MOVAH</FUNCTION>\r
+ <FUNCTION>MOVAL</FUNCTION>\r
+ <FUNCTION>MOVAO</FUNCTION>\r
+ <FUNCTION>MOVAQ</FUNCTION>\r
+ <FUNCTION>MOVAW</FUNCTION>\r
+ <FUNCTION>MOVB</FUNCTION>\r
+ <FUNCTION>MOVC3</FUNCTION>\r
+ <FUNCTION>MOVC5</FUNCTION>\r
+ <FUNCTION>MOVD</FUNCTION>\r
+ <FUNCTION>MOVF</FUNCTION>\r
+ <FUNCTION>MOVG</FUNCTION>\r
+ <FUNCTION>MOVH</FUNCTION>\r
+ <FUNCTION>MOVL</FUNCTION>\r
+ <FUNCTION>MOVO</FUNCTION>\r
+ <FUNCTION>MOVP</FUNCTION>\r
+ <FUNCTION>MOVPSL</FUNCTION>\r
+ <FUNCTION>MOVQ</FUNCTION>\r
+ <FUNCTION>MOVTC</FUNCTION>\r
+ <FUNCTION>MOVTUC</FUNCTION>\r
+ <FUNCTION>MOVW</FUNCTION>\r
+ <FUNCTION>MOVZBL</FUNCTION>\r
+ <FUNCTION>MOVZBW</FUNCTION>\r
+ <FUNCTION>MOVZWL</FUNCTION>\r
+ <FUNCTION>MTPR</FUNCTION>\r
+ <FUNCTION>MTVP</FUNCTION>\r
+ <FUNCTION>MULB2</FUNCTION>\r
+ <FUNCTION>MULB3</FUNCTION>\r
+ <FUNCTION>MULD2</FUNCTION>\r
+ <FUNCTION>MULD3</FUNCTION>\r
+ <FUNCTION>MULF2</FUNCTION>\r
+ <FUNCTION>MULF3</FUNCTION>\r
+ <FUNCTION>MULG2</FUNCTION>\r
+ <FUNCTION>MULG3</FUNCTION>\r
+ <FUNCTION>MULH2</FUNCTION>\r
+ <FUNCTION>MULH3</FUNCTION>\r
+ <FUNCTION>MULL2</FUNCTION>\r
+ <FUNCTION>MULL3</FUNCTION>\r
+ <FUNCTION>MULP</FUNCTION>\r
+ <FUNCTION>MULW2</FUNCTION>\r
+ <FUNCTION>MULW3</FUNCTION>\r
+ <FUNCTION>NOP</FUNCTION>\r
+ <FUNCTION>POLYD</FUNCTION>\r
+ <FUNCTION>POLYF</FUNCTION>\r
+ <FUNCTION>POLYG</FUNCTION>\r
+ <FUNCTION>POLYH</FUNCTION>\r
+ <FUNCTION>POPR</FUNCTION>\r
+ <FUNCTION>PROBER</FUNCTION>\r
+ <FUNCTION>PROBEW</FUNCTION>\r
+ <FUNCTION>PUSHAB</FUNCTION>\r
+ <FUNCTION>PUSHABL</FUNCTION>\r
+ <FUNCTION>PUSHAL</FUNCTION>\r
+ <FUNCTION>PUSHAD</FUNCTION>\r
+ <FUNCTION>PUSHAF</FUNCTION>\r
+ <FUNCTION>PUSHAG</FUNCTION>\r
+ <FUNCTION>PUSHAH</FUNCTION>\r
+ <FUNCTION>PUSHAL</FUNCTION>\r
+ <FUNCTION>PUSHAO</FUNCTION>\r
+ <FUNCTION>PUSHAQ</FUNCTION>\r
+ <FUNCTION>PUSHAW</FUNCTION>\r
+ <FUNCTION>PUSHL</FUNCTION>\r
+ <FUNCTION>PUSHR</FUNCTION>\r
+ <FUNCTION>REI</FUNCTION>\r
+ <FUNCTION>REMQHI</FUNCTION>\r
+ <FUNCTION>REMQTI</FUNCTION>\r
+ <FUNCTION>REMQUE</FUNCTION>\r
+ <FUNCTION>RET</FUNCTION>\r
+ <FUNCTION>ROTL</FUNCTION>\r
+ <FUNCTION>RSB</FUNCTION>\r
+ <FUNCTION>SBWC</FUNCTION>\r
+ <FUNCTION>SCANC</FUNCTION>\r
+ <FUNCTION>SKPC</FUNCTION>\r
+ <FUNCTION>SOBGEQ</FUNCTION>\r
+ <FUNCTION>SOBGTR</FUNCTION>\r
+ <FUNCTION>SPANC</FUNCTION>\r
+ <FUNCTION>SUBB2</FUNCTION>\r
+ <FUNCTION>SUBB3</FUNCTION>\r
+ <FUNCTION>SUBD2</FUNCTION>\r
+ <FUNCTION>SUBD3</FUNCTION>\r
+ <FUNCTION>SUBF2</FUNCTION>\r
+ <FUNCTION>SUBF3</FUNCTION>\r
+ <FUNCTION>SUBG2</FUNCTION>\r
+ <FUNCTION>SUBG3</FUNCTION>\r
+ <FUNCTION>SUBH2</FUNCTION>\r
+ <FUNCTION>SUBH3</FUNCTION>\r
+ <FUNCTION>SUBL2</FUNCTION>\r
+ <FUNCTION>SUBL3</FUNCTION>\r
+ <FUNCTION>SUBP4</FUNCTION>\r
+ <FUNCTION>SUBP6</FUNCTION>\r
+ <FUNCTION>SUBW2</FUNCTION>\r
+ <FUNCTION>SUBW3</FUNCTION>\r
+ <FUNCTION>SVPCTX</FUNCTION>\r
+ <FUNCTION>TSTB</FUNCTION>\r
+ <FUNCTION>TSTD</FUNCTION>\r
+ <FUNCTION>TSTF</FUNCTION>\r
+ <FUNCTION>TSTG</FUNCTION>\r
+ <FUNCTION>TSTH</FUNCTION>\r
+ <FUNCTION>TSTL</FUNCTION>\r
+ <FUNCTION>TSTW</FUNCTION>\r
+ <FUNCTION>VGATHL</FUNCTION>\r
+ <FUNCTION>VGATHQ</FUNCTION>\r
+ <FUNCTION>VLDL</FUNCTION>\r
+ <FUNCTION>VLDQ</FUNCTION>\r
+ <FUNCTION>VSADDD</FUNCTION>\r
+ <FUNCTION>VSADDF</FUNCTION>\r
+ <FUNCTION>VSADDG</FUNCTION>\r
+ <FUNCTION>VSADDL</FUNCTION>\r
+ <FUNCTION>VSBICL</FUNCTION>\r
+ <FUNCTION>VSBISL</FUNCTION>\r
+ <FUNCTION>VSCATL</FUNCTION>\r
+ <FUNCTION>VSCATQ</FUNCTION>\r
+ <FUNCTION>VSCMPD</FUNCTION>\r
+ <FUNCTION>VSCMPF</FUNCTION>\r
+ <FUNCTION>VSCMPG</FUNCTION>\r
+ <FUNCTION>VSCMPL</FUNCTION>\r
+ <FUNCTION>VSDIVD</FUNCTION>\r
+ <FUNCTION>VSDIVF</FUNCTION>\r
+ <FUNCTION>VSDIVG</FUNCTION>\r
+ <FUNCTION>VSMERGE</FUNCTION>\r
+ <FUNCTION>VSMULD</FUNCTION>\r
+ <FUNCTION>VSMULF</FUNCTION>\r
+ <FUNCTION>VSMULG</FUNCTION>\r
+ <FUNCTION>VSMULL</FUNCTION>\r
+ <FUNCTION>VSSLLL</FUNCTION>\r
+ <FUNCTION>VSSRLL</FUNCTION>\r
+ <FUNCTION>VSSUBD</FUNCTION>\r
+ <FUNCTION>VSSUBF</FUNCTION>\r
+ <FUNCTION>VSSUBG</FUNCTION>\r
+ <FUNCTION>VSSUBL</FUNCTION>\r
+ <FUNCTION>VSTL</FUNCTION>\r
+ <FUNCTION>VSTQ</FUNCTION>\r
+ <FUNCTION>VSXORL</FUNCTION>\r
+ <FUNCTION>VSYNC</FUNCTION>\r
+ <FUNCTION>VVADDD</FUNCTION>\r
+ <FUNCTION>VVADDF</FUNCTION>\r
+ <FUNCTION>VVADDG</FUNCTION>\r
+ <FUNCTION>VVADDL</FUNCTION>\r
+ <FUNCTION>VVBICL</FUNCTION>\r
+ <FUNCTION>VVBISL</FUNCTION>\r
+ <FUNCTION>VVCMPD</FUNCTION>\r
+ <FUNCTION>VVCMPF</FUNCTION>\r
+ <FUNCTION>VVCMPG</FUNCTION>\r
+ <FUNCTION>VVCMPL</FUNCTION>\r
+ <FUNCTION>VVCVT</FUNCTION>\r
+ <FUNCTION>VVDIVD</FUNCTION>\r
+ <FUNCTION>VVDIVF</FUNCTION>\r
+ <FUNCTION>VVDIVG</FUNCTION>\r
+ <FUNCTION>VVMERGE</FUNCTION>\r
+ <FUNCTION>VVMULD</FUNCTION>\r
+ <FUNCTION>VVMULF</FUNCTION>\r
+ <FUNCTION>VVMULG</FUNCTION>\r
+ <FUNCTION>VVMULL</FUNCTION>\r
+ <FUNCTION>VVSLLL</FUNCTION>\r
+ <FUNCTION>VVSRLL</FUNCTION>\r
+ <FUNCTION>VVSUBD</FUNCTION>\r
+ <FUNCTION>VVSUBF</FUNCTION>\r
+ <FUNCTION>VVSUBG</FUNCTION>\r
+ <FUNCTION>VVSUBL</FUNCTION>\r
+ <FUNCTION>VVXORL</FUNCTION>\r
+ <FUNCTION>XFC</FUNCTION>\r
+ <FUNCTION>XORB2</FUNCTION>\r
+ <FUNCTION>XORB3</FUNCTION>\r
+ <FUNCTION>XORL2</FUNCTION>\r
+ <FUNCTION>XORL3</FUNCTION>\r
+ <FUNCTION>XORW2</FUNCTION>\r
+ <FUNCTION>XORW3</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ MCS51 Assembly mode by Mirco Bova (mirco.bova@libero.it)\r
+\r
+ - KEIL syntax\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- NASM: label inside a macro -->\r
+ <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">%%</MARK_FOLLOWING>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="TRUE">$</MARK_FOLLOWING>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">$</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>SHR</KEYWORD1>\r
+ <KEYWORD1>SHL</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>XOR</KEYWORD1>\r
+ <KEYWORD1>HIGH</KEYWORD1>\r
+ <KEYWORD1>LOW</KEYWORD1>\r
+ <KEYWORD1>LT</KEYWORD1>\r
+ <KEYWORD1>LE</KEYWORD1>\r
+ <KEYWORD1>NE</KEYWORD1>\r
+ <KEYWORD1>EQ</KEYWORD1>\r
+ <KEYWORD1>GE</KEYWORD1>\r
+ <KEYWORD1>GT</KEYWORD1>\r
+ <KEYWORD1>DPTR</KEYWORD1>\r
+ <KEYWORD1>PC</KEYWORD1>\r
+ <KEYWORD1>EQU</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>NUMBER</KEYWORD1>\r
+ <KEYWORD1>CSEG</KEYWORD1>\r
+ <KEYWORD1>XSEG</KEYWORD1>\r
+ <KEYWORD1>DSEG</KEYWORD1>\r
+ <KEYWORD1>ISEG</KEYWORD1>\r
+ <KEYWORD1>BSEG</KEYWORD1>\r
+ <KEYWORD1>RSEG</KEYWORD1>\r
+ <KEYWORD1>NUL</KEYWORD1>\r
+ <KEYWORD1>DB</KEYWORD1>\r
+ <KEYWORD1>DW</KEYWORD1>\r
+ <KEYWORD1>DWR</KEYWORD1>\r
+ <KEYWORD1>DS</KEYWORD1>\r
+ <KEYWORD1>DBIT</KEYWORD1>\r
+ <KEYWORD1>ORG</KEYWORD1>\r
+ <KEYWORD1>USING</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>NAME</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>EXTRN</KEYWORD1>\r
+ <KEYWORD1>SEGMENT</KEYWORD1>\r
+ <KEYWORD1>UNIT</KEYWORD1>\r
+ <KEYWORD1>BITADDRESSABLE</KEYWORD1>\r
+ <KEYWORD1>INPAGE</KEYWORD1>\r
+ <KEYWORD1>INBLOCK</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>OVERLAYABLE</KEYWORD1>\r
+ <KEYWORD1>AT</KEYWORD1>\r
+ <KEYWORD1>STACKLEN</KEYWORD1>\r
+ <KEYWORD1>SBIT</KEYWORD1>\r
+ <KEYWORD1>SFR</KEYWORD1>\r
+ <KEYWORD1>SFR16</KEYWORD1>\r
+ <KEYWORD1>__ERROR__</KEYWORD1>\r
+ <KEYWORD1>ACALL</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ADDC</KEYWORD1>\r
+ <KEYWORD1>AJMP</KEYWORD1>\r
+ <KEYWORD1>ANL</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>CJNE</KEYWORD1>\r
+ <KEYWORD1>CLR</KEYWORD1>\r
+ <KEYWORD1>CPL</KEYWORD1>\r
+ <KEYWORD1>DA</KEYWORD1>\r
+ <KEYWORD1>DEC</KEYWORD1>\r
+ <KEYWORD1>DIV</KEYWORD1>\r
+ <KEYWORD1>DJNZ</KEYWORD1>\r
+ <KEYWORD1>INC</KEYWORD1>\r
+ <KEYWORD1>JB</KEYWORD1>\r
+ <KEYWORD1>JBC</KEYWORD1>\r
+ <KEYWORD1>JC</KEYWORD1>\r
+ <KEYWORD1>JMP</KEYWORD1>\r
+ <KEYWORD1>JNB</KEYWORD1>\r
+ <KEYWORD1>JNC</KEYWORD1>\r
+ <KEYWORD1>JNZ</KEYWORD1>\r
+ <KEYWORD1>JZ</KEYWORD1>\r
+ <KEYWORD1>LCALL</KEYWORD1>\r
+ <KEYWORD1>LJMP</KEYWORD1>\r
+ <KEYWORD1>MOV</KEYWORD1>\r
+ <KEYWORD1>MOVC</KEYWORD1>\r
+ <KEYWORD1>MOVX</KEYWORD1>\r
+ <KEYWORD1>MUL</KEYWORD1>\r
+ <KEYWORD1>NOP</KEYWORD1>\r
+ <KEYWORD1>ORL</KEYWORD1>\r
+ <KEYWORD1>POP</KEYWORD1>\r
+ <KEYWORD1>PUSH</KEYWORD1>\r
+ <KEYWORD1>RET</KEYWORD1>\r
+ <KEYWORD1>RETI</KEYWORD1>\r
+ <KEYWORD1>RL</KEYWORD1>\r
+ <KEYWORD1>RLC</KEYWORD1>\r
+ <KEYWORD1>RR</KEYWORD1>\r
+ <KEYWORD1>RRC</KEYWORD1>\r
+ <KEYWORD1>SETB</KEYWORD1>\r
+ <KEYWORD1>SJMP</KEYWORD1>\r
+ <KEYWORD1>SUBB</KEYWORD1>\r
+ <KEYWORD1>SWAP</KEYWORD1>\r
+ <KEYWORD1>XCH</KEYWORD1>\r
+ <KEYWORD1>XCHD</KEYWORD1>\r
+ <KEYWORD1>XRL</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>ELSEIF</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ENDIF</KEYWORD1>\r
+ <KEYWORD1>MACRO</KEYWORD1>\r
+ <KEYWORD1>REPT</KEYWORD1>\r
+ <KEYWORD1>IRP</KEYWORD1>\r
+ <KEYWORD1>IRPC</KEYWORD1>\r
+ <KEYWORD1>ENDM</KEYWORD1>\r
+ <KEYWORD1>EXITM</KEYWORD1>\r
+ <KEYWORD1>LOCAL</KEYWORD1>\r
+ <KEYWORD1>DPTX</KEYWORD1>\r
+ <KEYWORD1>DPTN</KEYWORD1>\r
+ <KEYWORD1>DPTR8</KEYWORD1>\r
+ <KEYWORD1>DPTR16</KEYWORD1>\r
+ <KEYWORD1>WR0</KEYWORD1>\r
+ <KEYWORD1>WR2</KEYWORD1>\r
+ <KEYWORD1>WR4</KEYWORD1>\r
+ <KEYWORD1>WR6</KEYWORD1>\r
+ <KEYWORD1>DR0</KEYWORD1>\r
+ <KEYWORD1>DR4</KEYWORD1>\r
+ <KEYWORD1>RJC</KEYWORD1>\r
+ <KEYWORD1>RJNC</KEYWORD1>\r
+ <KEYWORD1>RJZ</KEYWORD1>\r
+ <KEYWORD1>RJNZ</KEYWORD1>\r
+ <KEYWORD1>JMPI</KEYWORD1>\r
+ <KEYWORD1>MOVB</KEYWORD1>\r
+ <KEYWORD1>PUSHA</KEYWORD1>\r
+ <KEYWORD1>POPA</KEYWORD1>\r
+ <KEYWORD1>SUB</KEYWORD1>\r
+ <KEYWORD1>ADDM</KEYWORD1>\r
+ <KEYWORD1>SUBM</KEYWORD1>\r
+ <KEYWORD1>SLEEP</KEYWORD1>\r
+ <KEYWORD1>SYNC</KEYWORD1>\r
+ <KEYWORD1>DEFINE</KEYWORD1>\r
+ <KEYWORD1>SUBSTR</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>LEN</KEYWORD1>\r
+ <KEYWORD1>EQS</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>FI</KEYWORD1>\r
+\r
+ <KEYWORD2>$IF</KEYWORD2>\r
+ <KEYWORD2>$ELSEIF</KEYWORD2>\r
+ <KEYWORD2>$ELSE</KEYWORD2>\r
+ <KEYWORD2>$ENDIF</KEYWORD2>\r
+ <KEYWORD2>$MOD167</KEYWORD2>\r
+ <KEYWORD2>$CASE</KEYWORD2>\r
+ <KEYWORD2>$SEGMENTED</KEYWORD2>\r
+ <KEYWORD2>$INCLUDE</KEYWORD2>\r
+\r
+ <!-- memory types -->\r
+ <KEYWORD2>CODE</KEYWORD2>\r
+ <KEYWORD2>XDATA</KEYWORD2>\r
+ <KEYWORD2>DATA</KEYWORD2>\r
+ <KEYWORD2>IDATA</KEYWORD2>\r
+ <KEYWORD2>BIT</KEYWORD2>\r
+\r
+ <!-- Registers -->\r
+ <KEYWORD3>R0</KEYWORD3>\r
+ <KEYWORD3>R1</KEYWORD3>\r
+ <KEYWORD3>R2</KEYWORD3>\r
+ <KEYWORD3>R3</KEYWORD3>\r
+ <KEYWORD3>R4</KEYWORD3>\r
+ <KEYWORD3>R5</KEYWORD3>\r
+ <KEYWORD3>R6</KEYWORD3>\r
+ <KEYWORD3>R7</KEYWORD3>\r
+\r
+ <KEYWORD3>SP</KEYWORD3>\r
+ <KEYWORD3>A</KEYWORD3>\r
+ <KEYWORD3>C</KEYWORD3>\r
+ <KEYWORD3>AB</KEYWORD3>\r
+\r
+ <!-- Instructions -->\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+|[\p{Digit}]+)"\r
+ >\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <SEQ_REGEXP TYPE="LITERAL2"\r
+ HASH_CHARS="ISNP"\r
+ AT_WORD_START="TRUE"\r
+ >[ISNP]\d{1,2}</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abs</KEYWORD1>\r
+ <KEYWORD1>acos</KEYWORD1>\r
+ <KEYWORD1>add</KEYWORD1>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>asec</KEYWORD1>\r
+ <KEYWORD1>asin</KEYWORD1>\r
+ <KEYWORD1>atan</KEYWORD1>\r
+ <KEYWORD1>bounds</KEYWORD1>\r
+ <KEYWORD1>branch</KEYWORD1>\r
+ <KEYWORD1>bsr</KEYWORD1>\r
+ <KEYWORD1>chopm</KEYWORD1>\r
+ <KEYWORD1>cleari</KEYWORD1>\r
+ <KEYWORD1>clearn</KEYWORD1>\r
+ <KEYWORD1>clearp</KEYWORD1>\r
+ <KEYWORD1>clears</KEYWORD1>\r
+ <KEYWORD1>clone</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>cmod</KEYWORD1>\r
+ <KEYWORD1>concat</KEYWORD1>\r
+ <KEYWORD1>cos</KEYWORD1>\r
+ <KEYWORD1>cosh</KEYWORD1>\r
+ <KEYWORD1>debug</KEYWORD1>\r
+ <KEYWORD1>dec</KEYWORD1>\r
+ <KEYWORD1>div</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>entrytype</KEYWORD1>\r
+ <KEYWORD1>eq</KEYWORD1>\r
+ <KEYWORD1>err</KEYWORD1>\r
+ <KEYWORD1>exp</KEYWORD1>\r
+ <KEYWORD1>find_global</KEYWORD1>\r
+ <KEYWORD1>find_type</KEYWORD1>\r
+ <KEYWORD1>ge</KEYWORD1>\r
+ <KEYWORD1>getfile</KEYWORD1>\r
+ <KEYWORD1>getline</KEYWORD1>\r
+ <KEYWORD1>getpackage</KEYWORD1>\r
+ <KEYWORD1>gt</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>inc</KEYWORD1>\r
+ <KEYWORD1>index</KEYWORD1>\r
+ <KEYWORD1>jsr</KEYWORD1>\r
+ <KEYWORD1>jump</KEYWORD1>\r
+ <KEYWORD1>le</KEYWORD1>\r
+ <KEYWORD1>length</KEYWORD1>\r
+ <KEYWORD1>ln</KEYWORD1>\r
+ <KEYWORD1>log2</KEYWORD1>\r
+ <KEYWORD1>log10</KEYWORD1>\r
+ <KEYWORD1>lt</KEYWORD1>\r
+ <KEYWORD1>mod</KEYWORD1>\r
+ <KEYWORD1>mul</KEYWORD1>\r
+ <KEYWORD1>ne</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>newinterp</KEYWORD1>\r
+ <KEYWORD1>noop</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>ord</KEYWORD1>\r
+ <KEYWORD1>pack</KEYWORD1>\r
+ <KEYWORD1>pop</KEYWORD1>\r
+ <KEYWORD1>popi</KEYWORD1>\r
+ <KEYWORD1>popn</KEYWORD1>\r
+ <KEYWORD1>popp</KEYWORD1>\r
+ <KEYWORD1>pops</KEYWORD1>\r
+ <KEYWORD1>pow</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>profile</KEYWORD1>\r
+ <KEYWORD1>push</KEYWORD1>\r
+ <KEYWORD1>pushi</KEYWORD1>\r
+ <KEYWORD1>pushn</KEYWORD1>\r
+ <KEYWORD1>pushp</KEYWORD1>\r
+ <KEYWORD1>pushs</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>readline</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>restore</KEYWORD1>\r
+ <KEYWORD1>ret</KEYWORD1>\r
+ <KEYWORD1>rotate_up</KEYWORD1>\r
+ <KEYWORD1>runinterp</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>sec</KEYWORD1>\r
+ <KEYWORD1>sech</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>set_keyed</KEYWORD1>\r
+ <KEYWORD1>setfile</KEYWORD1>\r
+ <KEYWORD1>setline</KEYWORD1>\r
+ <KEYWORD1>setpackage</KEYWORD1>\r
+ <KEYWORD1>shl</KEYWORD1>\r
+ <KEYWORD1>shr</KEYWORD1>\r
+ <KEYWORD1>sin</KEYWORD1>\r
+ <KEYWORD1>sinh</KEYWORD1>\r
+ <KEYWORD1>sleep</KEYWORD1>\r
+ <KEYWORD1>sub</KEYWORD1>\r
+ <KEYWORD1>substr</KEYWORD1>\r
+ <KEYWORD1>tan</KEYWORD1>\r
+ <KEYWORD1>tanh</KEYWORD1>\r
+ <KEYWORD1>time</KEYWORD1>\r
+ <KEYWORD1>trace</KEYWORD1>\r
+ <KEYWORD1>typeof</KEYWORD1>\r
+ <KEYWORD1>unless</KEYWORD1>\r
+ <KEYWORD1>warningsoff</KEYWORD1>\r
+ <KEYWORD1>warningson</KEYWORD1>\r
+ <KEYWORD1>write</KEYWORD1>\r
+ <KEYWORD1>xor</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- MIPS/SPIM Assembly Mode from\r
+ Marc Rummel marc.rummel@stud.uni-karlsruhe.de \r
+ SIPM Homepage: http://www.cs.wisc.edu/~larus/spim.html\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="blockComment" VALUE="#" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",()" />\r
+ </PROPS>\r
+ \r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <!-- Comment --> \r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ \r
+ <!-- Strings -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ \r
+ <!-- Labels -->\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+ \r
+ <!-- Assembler directives -->\r
+ <KEYWORDS>\r
+ <KEYWORD1>.align</KEYWORD1>\r
+ <KEYWORD1>.ascii</KEYWORD1>\r
+ <KEYWORD1>.asciiz</KEYWORD1>\r
+ <KEYWORD1>.byte</KEYWORD1>\r
+ <KEYWORD1>.data</KEYWORD1>\r
+ <KEYWORD1>.double</KEYWORD1>\r
+ <KEYWORD1>.extern</KEYWORD1>\r
+ <KEYWORD1>.float</KEYWORD1>\r
+ <KEYWORD1>.globl</KEYWORD1>\r
+ <KEYWORD1>.half</KEYWORD1>\r
+ <KEYWORD1>.kdata</KEYWORD1>\r
+ <KEYWORD1>.ktext</KEYWORD1>\r
+ <KEYWORD1>.space</KEYWORD1>\r
+ <KEYWORD1>.text</KEYWORD1>\r
+ <KEYWORD1>.word</KEYWORD1>\r
+ \r
+ <!-- MIPS/SPIM Operations -->\r
+ <FUNCTION>add</FUNCTION>\r
+ <FUNCTION>addi</FUNCTION>\r
+ <FUNCTION>addu</FUNCTION>\r
+ <FUNCTION>addiu</FUNCTION>\r
+ <FUNCTION>and</FUNCTION>\r
+ <FUNCTION>andi</FUNCTION>\r
+ <FUNCTION>div</FUNCTION>\r
+ <FUNCTION>divu</FUNCTION>\r
+ <FUNCTION>mul</FUNCTION>\r
+ <FUNCTION>mulo</FUNCTION>\r
+ <FUNCTION>mulou</FUNCTION>\r
+ <FUNCTION>mult</FUNCTION>\r
+ <FUNCTION>multu</FUNCTION>\r
+ <FUNCTION>neg</FUNCTION>\r
+ <FUNCTION>negu</FUNCTION>\r
+ <FUNCTION>nor</FUNCTION>\r
+ <FUNCTION>not</FUNCTION>\r
+ <FUNCTION>or</FUNCTION>\r
+ <FUNCTION>ori</FUNCTION>\r
+ <FUNCTION>rem</FUNCTION>\r
+ <FUNCTION>remu</FUNCTION>\r
+ <FUNCTION>rol</FUNCTION>\r
+ <FUNCTION>ror</FUNCTION>\r
+ <FUNCTION>sll</FUNCTION>\r
+ <FUNCTION>sllv</FUNCTION>\r
+ <FUNCTION>sra</FUNCTION>\r
+ <FUNCTION>srav</FUNCTION>\r
+ <FUNCTION>srl</FUNCTION>\r
+ <FUNCTION>srlv</FUNCTION>\r
+ <FUNCTION>sub</FUNCTION>\r
+ <FUNCTION>subu</FUNCTION>\r
+ <FUNCTION>xor</FUNCTION>\r
+ <FUNCTION>xori</FUNCTION>\r
+ <FUNCTION>li</FUNCTION>\r
+ <FUNCTION>lui</FUNCTION>\r
+ <FUNCTION>seq</FUNCTION>\r
+ <FUNCTION>sge</FUNCTION>\r
+ <FUNCTION>sgt</FUNCTION>\r
+ <FUNCTION>sgtu</FUNCTION>\r
+ <FUNCTION>sle</FUNCTION>\r
+ <FUNCTION>sleu</FUNCTION>\r
+ <FUNCTION>slt</FUNCTION>\r
+ <FUNCTION>slti</FUNCTION>\r
+ <FUNCTION>sltu</FUNCTION>\r
+ <FUNCTION>sltiu</FUNCTION>\r
+ <FUNCTION>sne</FUNCTION>\r
+ <FUNCTION>b</FUNCTION>\r
+ <FUNCTION>bczt</FUNCTION>\r
+ <FUNCTION>bczf</FUNCTION>\r
+ <FUNCTION>beq</FUNCTION>\r
+ <FUNCTION>beqz</FUNCTION>\r
+ <FUNCTION>bge</FUNCTION>\r
+ <FUNCTION>bgeu</FUNCTION>\r
+ <FUNCTION>bgez</FUNCTION>\r
+ <FUNCTION>bgezal</FUNCTION>\r
+ <FUNCTION>bgt</FUNCTION>\r
+ <FUNCTION>bgtu</FUNCTION>\r
+ <FUNCTION>bgtz</FUNCTION>\r
+ <FUNCTION>ble</FUNCTION>\r
+ <FUNCTION>bleu</FUNCTION>\r
+ <FUNCTION>blez</FUNCTION>\r
+ <FUNCTION>bgezal</FUNCTION>\r
+ <FUNCTION>bltzal</FUNCTION>\r
+ <FUNCTION>blt</FUNCTION>\r
+ <FUNCTION>bltu</FUNCTION>\r
+ <FUNCTION>bltz</FUNCTION>\r
+ <FUNCTION>bne</FUNCTION>\r
+ <FUNCTION>bnez</FUNCTION>\r
+ <FUNCTION>j</FUNCTION>\r
+ <FUNCTION>jal</FUNCTION>\r
+ <FUNCTION>jalr</FUNCTION>\r
+ <FUNCTION>jr</FUNCTION>\r
+ <FUNCTION>la</FUNCTION>\r
+ <FUNCTION>lb</FUNCTION>\r
+ <FUNCTION>blu</FUNCTION>\r
+ <FUNCTION>lh</FUNCTION>\r
+ <FUNCTION>lhu</FUNCTION>\r
+ <FUNCTION>lw</FUNCTION>\r
+ <FUNCTION>lwcz</FUNCTION>\r
+ <FUNCTION>lwl</FUNCTION>\r
+ <FUNCTION>lwr</FUNCTION>\r
+ <FUNCTION>ulh</FUNCTION>\r
+ <FUNCTION>ulhu</FUNCTION>\r
+ <FUNCTION>ulw</FUNCTION>\r
+ <FUNCTION>sb</FUNCTION>\r
+ <FUNCTION>sd</FUNCTION>\r
+ <FUNCTION>sh</FUNCTION>\r
+ <FUNCTION>sw</FUNCTION>\r
+ <FUNCTION>swcz</FUNCTION>\r
+ <FUNCTION>swl</FUNCTION>\r
+ <FUNCTION>swr</FUNCTION>\r
+ <FUNCTION>ush</FUNCTION>\r
+ <FUNCTION>usw</FUNCTION>\r
+ <FUNCTION>move</FUNCTION>\r
+ <FUNCTION>mfhi</FUNCTION>\r
+ <FUNCTION>mflo</FUNCTION>\r
+ <FUNCTION>mthi</FUNCTION>\r
+ <FUNCTION>mtlo</FUNCTION>\r
+ <FUNCTION>mfcz</FUNCTION>\r
+ <FUNCTION>mfc1.d</FUNCTION>\r
+ <FUNCTION>mtcz</FUNCTION>\r
+ <FUNCTION>abs.d</FUNCTION>\r
+ <FUNCTION>abs.s</FUNCTION>\r
+ <FUNCTION>add.d</FUNCTION>\r
+ <FUNCTION>add.s</FUNCTION>\r
+ <FUNCTION>c.eq.d</FUNCTION>\r
+ <FUNCTION>c.eq.s</FUNCTION>\r
+ <FUNCTION>c.le.d</FUNCTION>\r
+ <FUNCTION>c.le.s</FUNCTION>\r
+ <FUNCTION>c.lt.d</FUNCTION>\r
+ <FUNCTION>c.lt.s</FUNCTION>\r
+ <FUNCTION>cvt.d.s</FUNCTION>\r
+ <FUNCTION>cbt.d.w</FUNCTION>\r
+ <FUNCTION>cvt.s.d</FUNCTION>\r
+ <FUNCTION>cvt.s.w</FUNCTION>\r
+ <FUNCTION>cvt.w.d</FUNCTION>\r
+ <FUNCTION>cvt.w.s</FUNCTION>\r
+ <FUNCTION>div.d</FUNCTION>\r
+ <FUNCTION>div.s</FUNCTION>\r
+ <FUNCTION>l.d</FUNCTION>\r
+ <FUNCTION>l.s</FUNCTION>\r
+ <FUNCTION>mov.d</FUNCTION>\r
+ <FUNCTION>mov.s</FUNCTION>\r
+ <FUNCTION>mul.d</FUNCTION>\r
+ <FUNCTION>mul.s</FUNCTION>\r
+ <FUNCTION>neg.d</FUNCTION>\r
+ <FUNCTION>neg.s</FUNCTION>\r
+ <FUNCTION>s.d</FUNCTION>\r
+ <FUNCTION>s.s</FUNCTION>\r
+ <FUNCTION>sub.d</FUNCTION>\r
+ <FUNCTION>sub.s</FUNCTION>\r
+ <FUNCTION>rfe</FUNCTION>\r
+ <FUNCTION>syscall</FUNCTION>\r
+ <FUNCTION>break</FUNCTION>\r
+ <FUNCTION>nop</FUNCTION>\r
+\r
+ <!-- Integer Registers -->\r
+ <KEYWORD2>$zero</KEYWORD2>\r
+ <KEYWORD2>$at</KEYWORD2>\r
+ <KEYWORD2>$v0</KEYWORD2>\r
+ <KEYWORD2>$v1</KEYWORD2>\r
+ <KEYWORD2>$a0</KEYWORD2>\r
+ <KEYWORD2>$a1</KEYWORD2>\r
+ <KEYWORD2>$a2</KEYWORD2>\r
+ <KEYWORD2>$a3</KEYWORD2>\r
+ <KEYWORD2>$t0</KEYWORD2>\r
+ <KEYWORD2>$t1</KEYWORD2>\r
+ <KEYWORD2>$t2</KEYWORD2>\r
+ <KEYWORD2>$t3</KEYWORD2>\r
+ <KEYWORD2>$t4</KEYWORD2>\r
+ <KEYWORD2>$t5</KEYWORD2>\r
+ <KEYWORD2>$t6</KEYWORD2>\r
+ <KEYWORD2>$t7</KEYWORD2>\r
+ <KEYWORD2>$s0</KEYWORD2>\r
+ <KEYWORD2>$s1</KEYWORD2>\r
+ <KEYWORD2>$s2</KEYWORD2>\r
+ <KEYWORD2>$s3</KEYWORD2>\r
+ <KEYWORD2>$s4</KEYWORD2>\r
+ <KEYWORD2>$s5</KEYWORD2>\r
+ <KEYWORD2>$s6</KEYWORD2>\r
+ <KEYWORD2>$s7</KEYWORD2>\r
+ <KEYWORD2>$t8</KEYWORD2>\r
+ <KEYWORD2>$t9</KEYWORD2>\r
+ <KEYWORD2>$k0</KEYWORD2>\r
+ <KEYWORD2>$k1</KEYWORD2>\r
+ <KEYWORD2>$gp</KEYWORD2>\r
+ <KEYWORD2>$sp</KEYWORD2>\r
+ <KEYWORD2>$fp</KEYWORD2>\r
+ <KEYWORD2>$ra</KEYWORD2>\r
+ \r
+ <!-- Floating Point Registers -->\r
+ <KEYWORD3>$f0</KEYWORD3>\r
+ <KEYWORD3>$f1</KEYWORD3>\r
+ <KEYWORD3>$f2</KEYWORD3>\r
+ <KEYWORD3>$f3</KEYWORD3>\r
+ <KEYWORD3>$f4</KEYWORD3>\r
+ <KEYWORD3>$f5</KEYWORD3>\r
+ <KEYWORD3>$f6</KEYWORD3>\r
+ <KEYWORD3>$f7</KEYWORD3>\r
+ <KEYWORD3>$f8</KEYWORD3>\r
+ <KEYWORD3>$f9</KEYWORD3>\r
+ <KEYWORD3>$f10</KEYWORD3>\r
+ <KEYWORD3>$f11</KEYWORD3>\r
+ <KEYWORD3>$f12</KEYWORD3>\r
+ <KEYWORD3>$f13</KEYWORD3>\r
+ <KEYWORD3>$f14</KEYWORD3>\r
+ <KEYWORD3>$f15</KEYWORD3>\r
+ <KEYWORD3>$f16</KEYWORD3>\r
+ <KEYWORD3>$f17</KEYWORD3>\r
+ <KEYWORD3>$f18</KEYWORD3>\r
+ <KEYWORD3>$f19</KEYWORD3>\r
+ <KEYWORD3>$f20</KEYWORD3>\r
+ <KEYWORD3>$f21</KEYWORD3>\r
+ <KEYWORD3>$f22</KEYWORD3>\r
+ <KEYWORD3>$f23</KEYWORD3>\r
+ <KEYWORD3>$f24</KEYWORD3>\r
+ <KEYWORD3>$f25</KEYWORD3>\r
+ <KEYWORD3>$f26</KEYWORD3>\r
+ <KEYWORD3>$f27</KEYWORD3>\r
+ <KEYWORD3>$f28</KEYWORD3>\r
+ <KEYWORD3>$f29</KEYWORD3>\r
+ <KEYWORD3>$f30</KEYWORD3>\r
+ <KEYWORD3>$f31</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ x86 Assembly mode by Kristian Ovaska (kristian.ovaska@helsinki.fi)\r
+\r
+ - Intel syntax\r
+ - Instructions and registers of Pentium III/Athlon\r
+ (including FPU, MMX, 3DNow! and SSE)\r
+ - Full NASM 0.98 & MASM 6.15 keyword support, partial TASM support\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- NASM: label inside a macro -->\r
+ <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">%%</MARK_FOLLOWING>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="TRUE">%</MARK_FOLLOWING>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>.186</KEYWORD1>\r
+ <KEYWORD1>.286</KEYWORD1>\r
+ <KEYWORD1>.286P</KEYWORD1>\r
+ <KEYWORD1>.287</KEYWORD1>\r
+ <KEYWORD1>.386</KEYWORD1>\r
+ <KEYWORD1>.386P</KEYWORD1>\r
+ <KEYWORD1>.387</KEYWORD1>\r
+ <KEYWORD1>.486</KEYWORD1>\r
+ <KEYWORD1>.486P</KEYWORD1>\r
+ <KEYWORD1>.586</KEYWORD1>\r
+ <KEYWORD1>.586P</KEYWORD1>\r
+ <KEYWORD1>.686</KEYWORD1>\r
+ <KEYWORD1>.686P</KEYWORD1>\r
+ <KEYWORD1>.8086</KEYWORD1>\r
+ <KEYWORD1>.8087</KEYWORD1>\r
+ <KEYWORD1>.ALPHA</KEYWORD1>\r
+ <KEYWORD1>.BREAK</KEYWORD1>\r
+ <KEYWORD1>.BSS</KEYWORD1>\r
+ <KEYWORD1>.CODE</KEYWORD1>\r
+ <KEYWORD1>.CONST</KEYWORD1>\r
+ <KEYWORD1>.CONTINUE</KEYWORD1>\r
+ <KEYWORD1>.CREF</KEYWORD1>\r
+ <KEYWORD1>.DATA</KEYWORD1>\r
+ <KEYWORD1>.DATA?</KEYWORD1>\r
+ <KEYWORD1>.DOSSEG</KEYWORD1>\r
+ <KEYWORD1>.ELSE</KEYWORD1>\r
+ <KEYWORD1>.ELSEIF</KEYWORD1>\r
+ <KEYWORD1>.ENDIF</KEYWORD1>\r
+ <KEYWORD1>.ENDW</KEYWORD1>\r
+ <KEYWORD1>.ERR</KEYWORD1>\r
+ <KEYWORD1>.ERR1</KEYWORD1>\r
+ <KEYWORD1>.ERR2</KEYWORD1>\r
+ <KEYWORD1>.ERRB</KEYWORD1>\r
+ <KEYWORD1>.ERRDEF</KEYWORD1>\r
+ <KEYWORD1>.ERRDIF</KEYWORD1>\r
+ <KEYWORD1>.ERRDIFI</KEYWORD1>\r
+ <KEYWORD1>.ERRE</KEYWORD1>\r
+ <KEYWORD1>.ERRIDN</KEYWORD1>\r
+ <KEYWORD1>.ERRIDNI</KEYWORD1>\r
+ <KEYWORD1>.ERRNB</KEYWORD1>\r
+ <KEYWORD1>.ERRNDEF</KEYWORD1>\r
+ <KEYWORD1>.ERRNZ</KEYWORD1>\r
+ <KEYWORD1>.EXIT</KEYWORD1>\r
+ <KEYWORD1>.FARDATA</KEYWORD1>\r
+ <KEYWORD1>.FARDATA?</KEYWORD1>\r
+ <KEYWORD1>.IF</KEYWORD1>\r
+ <KEYWORD1>.K3D</KEYWORD1>\r
+ <KEYWORD1>.LALL</KEYWORD1>\r
+ <KEYWORD1>.LFCOND</KEYWORD1>\r
+ <KEYWORD1>.LIST</KEYWORD1>\r
+ <KEYWORD1>.LISTALL</KEYWORD1>\r
+ <KEYWORD1>.LISTIF</KEYWORD1>\r
+ <KEYWORD1>.LISTMACRO</KEYWORD1>\r
+ <KEYWORD1>.LISTMACROALL</KEYWORD1>\r
+ <KEYWORD1>.MMX</KEYWORD1>\r
+ <KEYWORD1>.MODEL</KEYWORD1>\r
+ <KEYWORD1>.MSFLOAT</KEYWORD1>\r
+ <KEYWORD1>.NO87</KEYWORD1>\r
+ <KEYWORD1>.NOCREF</KEYWORD1>\r
+ <KEYWORD1>.NOLIST</KEYWORD1>\r
+ <KEYWORD1>.NOLISTIF</KEYWORD1>\r
+ <KEYWORD1>.NOLISTMACRO</KEYWORD1>\r
+ <KEYWORD1>.RADIX</KEYWORD1>\r
+ <KEYWORD1>.REPEAT</KEYWORD1>\r
+ <KEYWORD1>.SALL</KEYWORD1>\r
+ <KEYWORD1>.SEQ</KEYWORD1>\r
+ <KEYWORD1>.SFCOND</KEYWORD1>\r
+ <KEYWORD1>.STACK</KEYWORD1>\r
+ <KEYWORD1>.STARTUP</KEYWORD1>\r
+ <KEYWORD1>.TEXT</KEYWORD1>\r
+ <KEYWORD1>.TFCOND</KEYWORD1>\r
+ <KEYWORD1>.UNTIL</KEYWORD1>\r
+ <KEYWORD1>.UNTILCXZ</KEYWORD1>\r
+ <KEYWORD1>.WHILE</KEYWORD1>\r
+ <KEYWORD1>.XALL</KEYWORD1>\r
+ <KEYWORD1>.XCREF</KEYWORD1>\r
+ <KEYWORD1>.XLIST</KEYWORD1>\r
+ <KEYWORD1>.XMM</KEYWORD1>\r
+ <KEYWORD1>__FILE__</KEYWORD1>\r
+ <KEYWORD1>__LINE__</KEYWORD1>\r
+ <KEYWORD1>A16</KEYWORD1>\r
+ <KEYWORD1>A32</KEYWORD1>\r
+ <KEYWORD1>ADDR</KEYWORD1>\r
+ <KEYWORD1>ALIGN</KEYWORD1>\r
+ <KEYWORD1>ALIGNB</KEYWORD1>\r
+ <KEYWORD1>ASSUME</KEYWORD1>\r
+ <KEYWORD1>BITS</KEYWORD1>\r
+ <KEYWORD1>CARRY?</KEYWORD1>\r
+ <KEYWORD1>CATSTR</KEYWORD1>\r
+ <KEYWORD1>CODESEG</KEYWORD1>\r
+ <KEYWORD1>COMM</KEYWORD1>\r
+ <KEYWORD1>COMMENT</KEYWORD1>\r
+ <KEYWORD1>COMMON</KEYWORD1>\r
+ <KEYWORD1>DATASEG</KEYWORD1>\r
+ <KEYWORD1>DOSSEG</KEYWORD1>\r
+ <KEYWORD1>ECHO</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ELSEIF</KEYWORD1>\r
+ <KEYWORD1>ELSEIF1</KEYWORD1>\r
+ <KEYWORD1>ELSEIF2</KEYWORD1>\r
+ <KEYWORD1>ELSEIFB</KEYWORD1>\r
+ <KEYWORD1>ELSEIFDEF</KEYWORD1>\r
+ <KEYWORD1>ELSEIFE</KEYWORD1>\r
+ <KEYWORD1>ELSEIFIDN</KEYWORD1>\r
+ <KEYWORD1>ELSEIFNB</KEYWORD1>\r
+ <KEYWORD1>ELSEIFNDEF</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ENDIF</KEYWORD1>\r
+ <KEYWORD1>ENDM</KEYWORD1>\r
+ <KEYWORD1>ENDP</KEYWORD1>\r
+ <KEYWORD1>ENDS</KEYWORD1>\r
+ <KEYWORD1>ENDSTRUC</KEYWORD1>\r
+ <KEYWORD1>EVEN</KEYWORD1>\r
+ <KEYWORD1>EXITM</KEYWORD1>\r
+ <KEYWORD1>EXPORT</KEYWORD1>\r
+ <KEYWORD1>EXTERN</KEYWORD1>\r
+ <KEYWORD1>EXTERNDEF</KEYWORD1>\r
+ <KEYWORD1>EXTRN</KEYWORD1>\r
+ <KEYWORD1>FAR</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FORC</KEYWORD1>\r
+ <KEYWORD1>GLOBAL</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>HIGH</KEYWORD1>\r
+ <KEYWORD1>HIGHWORD</KEYWORD1>\r
+ <KEYWORD1>IEND</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>IF1</KEYWORD1>\r
+ <KEYWORD1>IF2</KEYWORD1>\r
+ <KEYWORD1>IFB</KEYWORD1>\r
+ <KEYWORD1>IFDEF</KEYWORD1>\r
+ <KEYWORD1>IFDIF</KEYWORD1>\r
+ <KEYWORD1>IFDIFI</KEYWORD1>\r
+ <KEYWORD1>IFE</KEYWORD1>\r
+ <KEYWORD1>IFIDN</KEYWORD1>\r
+ <KEYWORD1>IFIDNI</KEYWORD1>\r
+ <KEYWORD1>IFNB</KEYWORD1>\r
+ <KEYWORD1>IFNDEF</KEYWORD1>\r
+ <KEYWORD1>IMPORT</KEYWORD1>\r
+ <KEYWORD1>INCBIN</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>INCLUDELIB</KEYWORD1>\r
+ <KEYWORD1>INSTR</KEYWORD1>\r
+ <KEYWORD1>INVOKE</KEYWORD1>\r
+ <KEYWORD1>IRP</KEYWORD1>\r
+ <KEYWORD1>IRPC</KEYWORD1>\r
+ <KEYWORD1>ISTRUC</KEYWORD1>\r
+ <KEYWORD1>LABEL</KEYWORD1>\r
+ <KEYWORD1>LENGTH</KEYWORD1>\r
+ <KEYWORD1>LENGTHOF</KEYWORD1>\r
+ <KEYWORD1>LOCAL</KEYWORD1>\r
+ <KEYWORD1>LOW</KEYWORD1>\r
+ <KEYWORD1>LOWWORD</KEYWORD1>\r
+ <KEYWORD1>LROFFSET</KEYWORD1>\r
+ <KEYWORD1>MACRO</KEYWORD1>\r
+ <KEYWORD1>NAME</KEYWORD1>\r
+ <KEYWORD1>NEAR</KEYWORD1>\r
+ <KEYWORD1>NOSPLIT</KEYWORD1>\r
+ <KEYWORD1>O16</KEYWORD1>\r
+ <KEYWORD1>O32</KEYWORD1>\r
+ <KEYWORD1>OFFSET</KEYWORD1>\r
+ <KEYWORD1>OPATTR</KEYWORD1>\r
+ <KEYWORD1>OPTION</KEYWORD1>\r
+ <KEYWORD1>ORG</KEYWORD1>\r
+ <KEYWORD1>OVERFLOW?</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>PARITY?</KEYWORD1>\r
+ <KEYWORD1>POPCONTEXT</KEYWORD1>\r
+ <KEYWORD1>PRIVATE</KEYWORD1>\r
+ <KEYWORD1>PROC</KEYWORD1>\r
+ <KEYWORD1>PROTO</KEYWORD1>\r
+ <KEYWORD1>PTR</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>PURGE</KEYWORD1>\r
+ <KEYWORD1>PUSHCONTEXT</KEYWORD1>\r
+ <KEYWORD1>RECORD</KEYWORD1>\r
+ <KEYWORD1>REPEAT</KEYWORD1>\r
+ <KEYWORD1>REPT</KEYWORD1>\r
+ <KEYWORD1>SECTION</KEYWORD1>\r
+ <KEYWORD1>SEG</KEYWORD1>\r
+ <KEYWORD1>SEGMENT</KEYWORD1>\r
+ <KEYWORD1>SHORT</KEYWORD1>\r
+ <KEYWORD1>SIGN?</KEYWORD1>\r
+ <KEYWORD1>SIZE</KEYWORD1>\r
+ <KEYWORD1>SIZEOF</KEYWORD1>\r
+ <KEYWORD1>SIZESTR</KEYWORD1>\r
+ <KEYWORD1>STACK</KEYWORD1>\r
+ <KEYWORD1>STRUC</KEYWORD1>\r
+ <KEYWORD1>STRUCT</KEYWORD1>\r
+ <KEYWORD1>SUBSTR</KEYWORD1>\r
+ <KEYWORD1>SUBTITLE</KEYWORD1>\r
+ <KEYWORD1>SUBTTL</KEYWORD1>\r
+ <KEYWORD1>THIS</KEYWORD1>\r
+ <KEYWORD1>TITLE</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>TYPEDEF</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>USE16</KEYWORD1>\r
+ <KEYWORD1>USE32</KEYWORD1>\r
+ <KEYWORD1>USES</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WRT</KEYWORD1>\r
+ <KEYWORD1>ZERO?</KEYWORD1>\r
+\r
+ <KEYWORD2>DB</KEYWORD2>\r
+ <KEYWORD2>DW</KEYWORD2>\r
+ <KEYWORD2>DD</KEYWORD2>\r
+ <KEYWORD2>DF</KEYWORD2>\r
+ <KEYWORD2>DQ</KEYWORD2>\r
+ <KEYWORD2>DT</KEYWORD2>\r
+ <KEYWORD2>RESB</KEYWORD2>\r
+ <KEYWORD2>RESW</KEYWORD2>\r
+ <KEYWORD2>RESD</KEYWORD2>\r
+ <KEYWORD2>RESQ</KEYWORD2>\r
+ <KEYWORD2>REST</KEYWORD2>\r
+ <KEYWORD2>EQU</KEYWORD2>\r
+ <KEYWORD2>TEXTEQU</KEYWORD2>\r
+ <KEYWORD2>TIMES</KEYWORD2>\r
+ <KEYWORD2>DUP</KEYWORD2>\r
+\r
+ <KEYWORD2>BYTE</KEYWORD2>\r
+ <KEYWORD2>WORD</KEYWORD2>\r
+ <KEYWORD2>DWORD</KEYWORD2>\r
+ <KEYWORD2>FWORD</KEYWORD2>\r
+ <KEYWORD2>QWORD</KEYWORD2>\r
+ <KEYWORD2>TBYTE</KEYWORD2>\r
+ <KEYWORD2>SBYTE</KEYWORD2>\r
+ <KEYWORD2>TWORD</KEYWORD2>\r
+ <KEYWORD2>SWORD</KEYWORD2>\r
+ <KEYWORD2>SDWORD</KEYWORD2>\r
+ <KEYWORD2>REAL4</KEYWORD2>\r
+ <KEYWORD2>REAL8</KEYWORD2>\r
+ <KEYWORD2>REAL10</KEYWORD2>\r
+\r
+ <!-- Registers -->\r
+ <KEYWORD3>AL</KEYWORD3>\r
+ <KEYWORD3>BL</KEYWORD3>\r
+ <KEYWORD3>CL</KEYWORD3>\r
+ <KEYWORD3>DL</KEYWORD3>\r
+ <KEYWORD3>AH</KEYWORD3>\r
+ <KEYWORD3>BH</KEYWORD3>\r
+ <KEYWORD3>CH</KEYWORD3>\r
+ <KEYWORD3>DH</KEYWORD3>\r
+ <KEYWORD3>AX</KEYWORD3>\r
+ <KEYWORD3>BX</KEYWORD3>\r
+ <KEYWORD3>CX</KEYWORD3>\r
+ <KEYWORD3>DX</KEYWORD3>\r
+ <KEYWORD3>SI</KEYWORD3>\r
+ <KEYWORD3>DI</KEYWORD3>\r
+ <KEYWORD3>SP</KEYWORD3>\r
+ <KEYWORD3>BP</KEYWORD3>\r
+ <KEYWORD3>EAX</KEYWORD3>\r
+ <KEYWORD3>EBX</KEYWORD3>\r
+ <KEYWORD3>ECX</KEYWORD3>\r
+ <KEYWORD3>EDX</KEYWORD3>\r
+ <KEYWORD3>ESI</KEYWORD3>\r
+ <KEYWORD3>EDI</KEYWORD3>\r
+ <KEYWORD3>ESP</KEYWORD3>\r
+ <KEYWORD3>EBP</KEYWORD3>\r
+ <KEYWORD3>CS</KEYWORD3>\r
+ <KEYWORD3>DS</KEYWORD3>\r
+ <KEYWORD3>SS</KEYWORD3>\r
+ <KEYWORD3>ES</KEYWORD3>\r
+ <KEYWORD3>FS</KEYWORD3>\r
+ <KEYWORD3>GS</KEYWORD3>\r
+ <KEYWORD3>ST</KEYWORD3>\r
+ <KEYWORD3>ST0</KEYWORD3>\r
+ <KEYWORD3>ST1</KEYWORD3>\r
+ <KEYWORD3>ST2</KEYWORD3>\r
+ <KEYWORD3>ST3</KEYWORD3>\r
+ <KEYWORD3>ST4</KEYWORD3>\r
+ <KEYWORD3>ST5</KEYWORD3>\r
+ <KEYWORD3>ST6</KEYWORD3>\r
+ <KEYWORD3>ST7</KEYWORD3>\r
+ <KEYWORD3>MM0</KEYWORD3>\r
+ <KEYWORD3>MM1</KEYWORD3>\r
+ <KEYWORD3>MM2</KEYWORD3>\r
+ <KEYWORD3>MM3</KEYWORD3>\r
+ <KEYWORD3>MM4</KEYWORD3>\r
+ <KEYWORD3>MM5</KEYWORD3>\r
+ <KEYWORD3>MM6</KEYWORD3>\r
+ <KEYWORD3>MM7</KEYWORD3>\r
+ <KEYWORD3>XMM0</KEYWORD3>\r
+ <KEYWORD3>XMM1</KEYWORD3>\r
+ <KEYWORD3>XMM2</KEYWORD3>\r
+ <KEYWORD3>XMM3</KEYWORD3>\r
+ <KEYWORD3>XMM4</KEYWORD3>\r
+ <KEYWORD3>XMM5</KEYWORD3>\r
+ <KEYWORD3>XMM6</KEYWORD3>\r
+ <KEYWORD3>XMM7</KEYWORD3>\r
+ <KEYWORD3>CR0</KEYWORD3>\r
+ <KEYWORD3>CR2</KEYWORD3>\r
+ <KEYWORD3>CR3</KEYWORD3>\r
+ <KEYWORD3>CR4</KEYWORD3>\r
+ <KEYWORD3>DR0</KEYWORD3>\r
+ <KEYWORD3>DR1</KEYWORD3>\r
+ <KEYWORD3>DR2</KEYWORD3>\r
+ <KEYWORD3>DR3</KEYWORD3>\r
+ <KEYWORD3>DR4</KEYWORD3>\r
+ <KEYWORD3>DR5</KEYWORD3>\r
+ <KEYWORD3>DR6</KEYWORD3>\r
+ <KEYWORD3>DR7</KEYWORD3>\r
+ <KEYWORD3>TR3</KEYWORD3>\r
+ <KEYWORD3>TR4</KEYWORD3>\r
+ <KEYWORD3>TR5</KEYWORD3>\r
+ <KEYWORD3>TR6</KEYWORD3>\r
+ <KEYWORD3>TR7</KEYWORD3>\r
+\r
+ <!-- Instructions: Pentium III/MMX/SSE -->\r
+ <FUNCTION>AAA</FUNCTION>\r
+ <FUNCTION>AAD</FUNCTION>\r
+ <FUNCTION>AAM</FUNCTION>\r
+ <FUNCTION>AAS</FUNCTION>\r
+ <FUNCTION>ADC</FUNCTION>\r
+ <FUNCTION>ADD</FUNCTION>\r
+ <FUNCTION>ADDPS</FUNCTION>\r
+ <FUNCTION>ADDSS</FUNCTION>\r
+ <FUNCTION>AND</FUNCTION>\r
+ <FUNCTION>ANDNPS</FUNCTION>\r
+ <FUNCTION>ANDPS</FUNCTION>\r
+ <FUNCTION>ARPL</FUNCTION>\r
+ <FUNCTION>BOUND</FUNCTION>\r
+ <FUNCTION>BSF</FUNCTION>\r
+ <FUNCTION>BSR</FUNCTION>\r
+ <FUNCTION>BSWAP</FUNCTION>\r
+ <FUNCTION>BT</FUNCTION>\r
+ <FUNCTION>BTC</FUNCTION>\r
+ <FUNCTION>BTR</FUNCTION>\r
+ <FUNCTION>BTS</FUNCTION>\r
+ <FUNCTION>CALL</FUNCTION>\r
+ <FUNCTION>CBW</FUNCTION>\r
+ <FUNCTION>CDQ</FUNCTION>\r
+ <FUNCTION>CLC</FUNCTION>\r
+ <FUNCTION>CLD</FUNCTION>\r
+ <FUNCTION>CLI</FUNCTION>\r
+ <FUNCTION>CLTS</FUNCTION>\r
+ <FUNCTION>CMC</FUNCTION>\r
+ <FUNCTION>CMOVA</FUNCTION>\r
+ <FUNCTION>CMOVAE</FUNCTION>\r
+ <FUNCTION>CMOVB</FUNCTION>\r
+ <FUNCTION>CMOVBE</FUNCTION>\r
+ <FUNCTION>CMOVC</FUNCTION>\r
+ <FUNCTION>CMOVE</FUNCTION>\r
+ <FUNCTION>CMOVG</FUNCTION>\r
+ <FUNCTION>CMOVGE</FUNCTION>\r
+ <FUNCTION>CMOVL</FUNCTION>\r
+ <FUNCTION>CMOVLE</FUNCTION>\r
+ <FUNCTION>CMOVNA</FUNCTION>\r
+ <FUNCTION>CMOVNAE</FUNCTION>\r
+ <FUNCTION>CMOVNB</FUNCTION>\r
+ <FUNCTION>CMOVNBE</FUNCTION>\r
+ <FUNCTION>CMOVNC</FUNCTION>\r
+ <FUNCTION>CMOVNE</FUNCTION>\r
+ <FUNCTION>CMOVNG</FUNCTION>\r
+ <FUNCTION>CMOVNGE</FUNCTION>\r
+ <FUNCTION>CMOVNL</FUNCTION>\r
+ <FUNCTION>CMOVNLE</FUNCTION>\r
+ <FUNCTION>CMOVNO</FUNCTION>\r
+ <FUNCTION>CMOVNP</FUNCTION>\r
+ <FUNCTION>CMOVNS</FUNCTION>\r
+ <FUNCTION>CMOVNZ</FUNCTION>\r
+ <FUNCTION>CMOVO</FUNCTION>\r
+ <FUNCTION>CMOVP</FUNCTION>\r
+ <FUNCTION>CMOVPE</FUNCTION>\r
+ <FUNCTION>CMOVPO</FUNCTION>\r
+ <FUNCTION>CMOVS</FUNCTION>\r
+ <FUNCTION>CMOVZ</FUNCTION>\r
+ <FUNCTION>CMP</FUNCTION>\r
+ <FUNCTION>CMPPS</FUNCTION>\r
+ <FUNCTION>CMPS</FUNCTION>\r
+ <FUNCTION>CMPSB</FUNCTION>\r
+ <FUNCTION>CMPSD</FUNCTION>\r
+ <FUNCTION>CMPSS</FUNCTION>\r
+ <FUNCTION>CMPSW</FUNCTION>\r
+ <FUNCTION>CMPXCHG</FUNCTION>\r
+ <FUNCTION>CMPXCHGB</FUNCTION>\r
+ <FUNCTION>COMISS</FUNCTION>\r
+ <FUNCTION>CPUID</FUNCTION>\r
+ <FUNCTION>CWD</FUNCTION>\r
+ <FUNCTION>CWDE</FUNCTION>\r
+ <FUNCTION>CVTPI2PS</FUNCTION>\r
+ <FUNCTION>CVTPS2PI</FUNCTION>\r
+ <FUNCTION>CVTSI2SS</FUNCTION>\r
+ <FUNCTION>CVTSS2SI</FUNCTION>\r
+ <FUNCTION>CVTTPS2PI</FUNCTION>\r
+ <FUNCTION>CVTTSS2SI</FUNCTION>\r
+ <FUNCTION>DAA</FUNCTION>\r
+ <FUNCTION>DAS</FUNCTION>\r
+ <FUNCTION>DEC</FUNCTION>\r
+ <FUNCTION>DIV</FUNCTION>\r
+ <FUNCTION>DIVPS</FUNCTION>\r
+ <FUNCTION>DIVSS</FUNCTION>\r
+ <FUNCTION>EMMS</FUNCTION>\r
+ <FUNCTION>ENTER</FUNCTION>\r
+ <FUNCTION>F2XM1</FUNCTION>\r
+ <FUNCTION>FABS</FUNCTION>\r
+ <FUNCTION>FADD</FUNCTION>\r
+ <FUNCTION>FADDP</FUNCTION>\r
+ <FUNCTION>FBLD</FUNCTION>\r
+ <FUNCTION>FBSTP</FUNCTION>\r
+ <FUNCTION>FCHS</FUNCTION>\r
+ <FUNCTION>FCLEX</FUNCTION>\r
+ <FUNCTION>FCMOVB</FUNCTION>\r
+ <FUNCTION>FCMOVBE</FUNCTION>\r
+ <FUNCTION>FCMOVE</FUNCTION>\r
+ <FUNCTION>FCMOVNB</FUNCTION>\r
+ <FUNCTION>FCMOVNBE</FUNCTION>\r
+ <FUNCTION>FCMOVNE</FUNCTION>\r
+ <FUNCTION>FCMOVNU</FUNCTION>\r
+ <FUNCTION>FCMOVU</FUNCTION>\r
+ <FUNCTION>FCOM</FUNCTION>\r
+ <FUNCTION>FCOMI</FUNCTION>\r
+ <FUNCTION>FCOMIP</FUNCTION>\r
+ <FUNCTION>FCOMP</FUNCTION>\r
+ <FUNCTION>FCOMPP</FUNCTION>\r
+ <FUNCTION>FCOS</FUNCTION>\r
+ <FUNCTION>FDECSTP</FUNCTION>\r
+ <FUNCTION>FDIV</FUNCTION>\r
+ <FUNCTION>FDIVP</FUNCTION>\r
+ <FUNCTION>FDIVR</FUNCTION>\r
+ <FUNCTION>FDIVRP</FUNCTION>\r
+ <FUNCTION>FFREE</FUNCTION>\r
+ <FUNCTION>FIADD</FUNCTION>\r
+ <FUNCTION>FICOM</FUNCTION>\r
+ <FUNCTION>FICOMP</FUNCTION>\r
+ <FUNCTION>FIDIV</FUNCTION>\r
+ <FUNCTION>FIDIVR</FUNCTION>\r
+ <FUNCTION>FILD</FUNCTION>\r
+ <FUNCTION>FIMUL</FUNCTION>\r
+ <FUNCTION>FINCSTP</FUNCTION>\r
+ <FUNCTION>FINIT</FUNCTION>\r
+ <FUNCTION>FIST</FUNCTION>\r
+ <FUNCTION>FISTP</FUNCTION>\r
+ <FUNCTION>FISUB</FUNCTION>\r
+ <FUNCTION>FISUBR</FUNCTION>\r
+ <FUNCTION>FLD1</FUNCTION>\r
+ <FUNCTION>FLDCW</FUNCTION>\r
+ <FUNCTION>FLDENV</FUNCTION>\r
+ <FUNCTION>FLDL2E</FUNCTION>\r
+ <FUNCTION>FLDL2T</FUNCTION>\r
+ <FUNCTION>FLDLG2</FUNCTION>\r
+ <FUNCTION>FLDLN2</FUNCTION>\r
+ <FUNCTION>FLDPI</FUNCTION>\r
+ <FUNCTION>FLDZ</FUNCTION>\r
+ <FUNCTION>FMUL</FUNCTION>\r
+ <FUNCTION>FMULP</FUNCTION>\r
+ <FUNCTION>FNCLEX</FUNCTION>\r
+ <FUNCTION>FNINIT</FUNCTION>\r
+ <FUNCTION>FNOP</FUNCTION>\r
+ <FUNCTION>FNSAVE</FUNCTION>\r
+ <FUNCTION>FNSTCW</FUNCTION>\r
+ <FUNCTION>FNSTENV</FUNCTION>\r
+ <FUNCTION>FNSTSW</FUNCTION>\r
+ <FUNCTION>FPATAN</FUNCTION>\r
+ <FUNCTION>FPREM</FUNCTION>\r
+ <FUNCTION>FPREMI</FUNCTION>\r
+ <FUNCTION>FPTAN</FUNCTION>\r
+ <FUNCTION>FRNDINT</FUNCTION>\r
+ <FUNCTION>FRSTOR</FUNCTION>\r
+ <FUNCTION>FSAVE</FUNCTION>\r
+ <FUNCTION>FSCALE</FUNCTION>\r
+ <FUNCTION>FSIN</FUNCTION>\r
+ <FUNCTION>FSINCOS</FUNCTION>\r
+ <FUNCTION>FSQRT</FUNCTION>\r
+ <FUNCTION>FST</FUNCTION>\r
+ <FUNCTION>FSTCW</FUNCTION>\r
+ <FUNCTION>FSTENV</FUNCTION>\r
+ <FUNCTION>FSTP</FUNCTION>\r
+ <FUNCTION>FSTSW</FUNCTION>\r
+ <FUNCTION>FSUB</FUNCTION>\r
+ <FUNCTION>FSUBP</FUNCTION>\r
+ <FUNCTION>FSUBR</FUNCTION>\r
+ <FUNCTION>FSUBRP</FUNCTION>\r
+ <FUNCTION>FTST</FUNCTION>\r
+ <FUNCTION>FUCOM</FUNCTION>\r
+ <FUNCTION>FUCOMI</FUNCTION>\r
+ <FUNCTION>FUCOMIP</FUNCTION>\r
+ <FUNCTION>FUCOMP</FUNCTION>\r
+ <FUNCTION>FUCOMPP</FUNCTION>\r
+ <FUNCTION>FWAIT</FUNCTION>\r
+ <FUNCTION>FXAM</FUNCTION>\r
+ <FUNCTION>FXCH</FUNCTION>\r
+ <FUNCTION>FXRSTOR</FUNCTION>\r
+ <FUNCTION>FXSAVE</FUNCTION>\r
+ <FUNCTION>FXTRACT</FUNCTION>\r
+ <FUNCTION>FYL2X</FUNCTION>\r
+ <FUNCTION>FYL2XP1</FUNCTION>\r
+ <FUNCTION>HLT</FUNCTION>\r
+ <FUNCTION>IDIV</FUNCTION>\r
+ <FUNCTION>IMUL</FUNCTION>\r
+ <FUNCTION>IN</FUNCTION>\r
+ <FUNCTION>INC</FUNCTION>\r
+ <FUNCTION>INS</FUNCTION>\r
+ <FUNCTION>INSB</FUNCTION>\r
+ <FUNCTION>INSD</FUNCTION>\r
+ <FUNCTION>INSW</FUNCTION>\r
+ <FUNCTION>INT</FUNCTION>\r
+ <FUNCTION>INTO</FUNCTION>\r
+ <FUNCTION>INVD</FUNCTION>\r
+ <FUNCTION>INVLPG</FUNCTION>\r
+ <FUNCTION>IRET</FUNCTION>\r
+ <FUNCTION>JA</FUNCTION>\r
+ <FUNCTION>JAE</FUNCTION>\r
+ <FUNCTION>JB</FUNCTION>\r
+ <FUNCTION>JBE</FUNCTION>\r
+ <FUNCTION>JC</FUNCTION>\r
+ <FUNCTION>JCXZ</FUNCTION>\r
+ <FUNCTION>JE</FUNCTION>\r
+ <FUNCTION>JECXZ</FUNCTION>\r
+ <FUNCTION>JG</FUNCTION>\r
+ <FUNCTION>JGE</FUNCTION>\r
+ <FUNCTION>JL</FUNCTION>\r
+ <FUNCTION>JLE</FUNCTION>\r
+ <FUNCTION>JMP</FUNCTION>\r
+ <FUNCTION>JNA</FUNCTION>\r
+ <FUNCTION>JNAE</FUNCTION>\r
+ <FUNCTION>JNB</FUNCTION>\r
+ <FUNCTION>JNBE</FUNCTION>\r
+ <FUNCTION>JNC</FUNCTION>\r
+ <FUNCTION>JNE</FUNCTION>\r
+ <FUNCTION>JNG</FUNCTION>\r
+ <FUNCTION>JNGE</FUNCTION>\r
+ <FUNCTION>JNL</FUNCTION>\r
+ <FUNCTION>JNLE</FUNCTION>\r
+ <FUNCTION>JNO</FUNCTION>\r
+ <FUNCTION>JNP</FUNCTION>\r
+ <FUNCTION>JNS</FUNCTION>\r
+ <FUNCTION>JNZ</FUNCTION>\r
+ <FUNCTION>JO</FUNCTION>\r
+ <FUNCTION>JP</FUNCTION>\r
+ <FUNCTION>JPE</FUNCTION>\r
+ <FUNCTION>JPO</FUNCTION>\r
+ <FUNCTION>JS</FUNCTION>\r
+ <FUNCTION>JZ</FUNCTION>\r
+ <FUNCTION>LAHF</FUNCTION>\r
+ <FUNCTION>LAR</FUNCTION>\r
+ <FUNCTION>LDMXCSR</FUNCTION>\r
+ <FUNCTION>LDS</FUNCTION>\r
+ <FUNCTION>LEA</FUNCTION>\r
+ <FUNCTION>LEAVE</FUNCTION>\r
+ <FUNCTION>LES</FUNCTION>\r
+ <FUNCTION>LFS</FUNCTION>\r
+ <FUNCTION>LGDT</FUNCTION>\r
+ <FUNCTION>LGS</FUNCTION>\r
+ <FUNCTION>LIDT</FUNCTION>\r
+ <FUNCTION>LLDT</FUNCTION>\r
+ <FUNCTION>LMSW</FUNCTION>\r
+ <FUNCTION>LOCK</FUNCTION>\r
+ <FUNCTION>LODS</FUNCTION>\r
+ <FUNCTION>LODSB</FUNCTION>\r
+ <FUNCTION>LODSD</FUNCTION>\r
+ <FUNCTION>LODSW</FUNCTION>\r
+ <FUNCTION>LOOP</FUNCTION>\r
+ <FUNCTION>LOOPE</FUNCTION>\r
+ <FUNCTION>LOOPNE</FUNCTION>\r
+ <FUNCTION>LOOPNZ</FUNCTION>\r
+ <FUNCTION>LOOPZ</FUNCTION>\r
+ <FUNCTION>LSL</FUNCTION>\r
+ <FUNCTION>LSS</FUNCTION>\r
+ <FUNCTION>LTR</FUNCTION>\r
+ <FUNCTION>MASKMOVQ</FUNCTION>\r
+ <FUNCTION>MAXPS</FUNCTION>\r
+ <FUNCTION>MAXSS</FUNCTION>\r
+ <FUNCTION>MINPS</FUNCTION>\r
+ <FUNCTION>MINSS</FUNCTION>\r
+ <FUNCTION>MOV</FUNCTION>\r
+ <FUNCTION>MOVAPS</FUNCTION>\r
+ <FUNCTION>MOVD</FUNCTION>\r
+ <FUNCTION>MOVHLPS</FUNCTION>\r
+ <FUNCTION>MOVHPS</FUNCTION>\r
+ <FUNCTION>MOVLHPS</FUNCTION>\r
+ <FUNCTION>MOVLPS</FUNCTION>\r
+ <FUNCTION>MOVMSKPS</FUNCTION>\r
+ <FUNCTION>MOVNTPS</FUNCTION>\r
+ <FUNCTION>MOVNTQ</FUNCTION>\r
+ <FUNCTION>MOVQ</FUNCTION>\r
+ <FUNCTION>MOVS</FUNCTION>\r
+ <FUNCTION>MOVSB</FUNCTION>\r
+ <FUNCTION>MOVSD</FUNCTION>\r
+ <FUNCTION>MOVSS</FUNCTION>\r
+ <FUNCTION>MOVSW</FUNCTION>\r
+ <FUNCTION>MOVSX</FUNCTION>\r
+ <FUNCTION>MOVUPS</FUNCTION>\r
+ <FUNCTION>MOVZX</FUNCTION>\r
+ <FUNCTION>MUL</FUNCTION>\r
+ <FUNCTION>MULPS</FUNCTION>\r
+ <FUNCTION>MULSS</FUNCTION>\r
+ <FUNCTION>NEG</FUNCTION>\r
+ <FUNCTION>NOP</FUNCTION>\r
+ <FUNCTION>NOT</FUNCTION>\r
+ <FUNCTION>OR</FUNCTION>\r
+ <FUNCTION>ORPS</FUNCTION>\r
+ <FUNCTION>OUT</FUNCTION>\r
+ <FUNCTION>OUTS</FUNCTION>\r
+ <FUNCTION>OUTSB</FUNCTION>\r
+ <FUNCTION>OUTSD</FUNCTION>\r
+ <FUNCTION>OUTSW</FUNCTION>\r
+ <FUNCTION>PACKSSDW</FUNCTION>\r
+ <FUNCTION>PACKSSWB</FUNCTION>\r
+ <FUNCTION>PACKUSWB</FUNCTION>\r
+ <FUNCTION>PADDB</FUNCTION>\r
+ <FUNCTION>PADDD</FUNCTION>\r
+ <FUNCTION>PADDSB</FUNCTION>\r
+ <FUNCTION>PADDSW</FUNCTION>\r
+ <FUNCTION>PADDUSB</FUNCTION>\r
+ <FUNCTION>PADDUSW</FUNCTION>\r
+ <FUNCTION>PADDW</FUNCTION>\r
+ <FUNCTION>PAND</FUNCTION>\r
+ <FUNCTION>PANDN</FUNCTION>\r
+ <FUNCTION>PAVGB</FUNCTION>\r
+ <FUNCTION>PAVGW</FUNCTION>\r
+ <FUNCTION>PCMPEQB</FUNCTION>\r
+ <FUNCTION>PCMPEQD</FUNCTION>\r
+ <FUNCTION>PCMPEQW</FUNCTION>\r
+ <FUNCTION>PCMPGTB</FUNCTION>\r
+ <FUNCTION>PCMPGTD</FUNCTION>\r
+ <FUNCTION>PCMPGTW</FUNCTION>\r
+ <FUNCTION>PEXTRW</FUNCTION>\r
+ <FUNCTION>PINSRW</FUNCTION>\r
+ <FUNCTION>PMADDWD</FUNCTION>\r
+ <FUNCTION>PMAXSW</FUNCTION>\r
+ <FUNCTION>PMAXUB</FUNCTION>\r
+ <FUNCTION>PMINSW</FUNCTION>\r
+ <FUNCTION>PMINUB</FUNCTION>\r
+ <FUNCTION>PMOVMSKB</FUNCTION>\r
+ <FUNCTION>PMULHUW</FUNCTION>\r
+ <FUNCTION>PMULHW</FUNCTION>\r
+ <FUNCTION>PMULLW</FUNCTION>\r
+ <FUNCTION>POP</FUNCTION>\r
+ <FUNCTION>POPA</FUNCTION>\r
+ <FUNCTION>POPAD</FUNCTION>\r
+ <FUNCTION>POPAW</FUNCTION>\r
+ <FUNCTION>POPF</FUNCTION>\r
+ <FUNCTION>POPFD</FUNCTION>\r
+ <FUNCTION>POPFW</FUNCTION>\r
+ <FUNCTION>POR</FUNCTION>\r
+ <FUNCTION>PREFETCH</FUNCTION>\r
+ <FUNCTION>PSADBW</FUNCTION>\r
+ <FUNCTION>PSHUFW</FUNCTION>\r
+ <FUNCTION>PSLLD</FUNCTION>\r
+ <FUNCTION>PSLLQ</FUNCTION>\r
+ <FUNCTION>PSLLW</FUNCTION>\r
+ <FUNCTION>PSRAD</FUNCTION>\r
+ <FUNCTION>PSRAW</FUNCTION>\r
+ <FUNCTION>PSRLD</FUNCTION>\r
+ <FUNCTION>PSRLQ</FUNCTION>\r
+ <FUNCTION>PSRLW</FUNCTION>\r
+ <FUNCTION>PSUBB</FUNCTION>\r
+ <FUNCTION>PSUBD</FUNCTION>\r
+ <FUNCTION>PSUBSB</FUNCTION>\r
+ <FUNCTION>PSUBSW</FUNCTION>\r
+ <FUNCTION>PSUBUSB</FUNCTION>\r
+ <FUNCTION>PSUBUSW</FUNCTION>\r
+ <FUNCTION>PSUBW</FUNCTION>\r
+ <FUNCTION>PUNPCKHBW</FUNCTION>\r
+ <FUNCTION>PUNPCKHDQ</FUNCTION>\r
+ <FUNCTION>PUNPCKHWD</FUNCTION>\r
+ <FUNCTION>PUNPCKLBW</FUNCTION>\r
+ <FUNCTION>PUNPCKLDQ</FUNCTION>\r
+ <FUNCTION>PUNPCKLWD</FUNCTION>\r
+ <FUNCTION>PUSH</FUNCTION>\r
+ <FUNCTION>PUSHA</FUNCTION>\r
+ <FUNCTION>PUSHAD</FUNCTION>\r
+ <FUNCTION>PUSHAW</FUNCTION>\r
+ <FUNCTION>PUSHF</FUNCTION>\r
+ <FUNCTION>PUSHFD</FUNCTION>\r
+ <FUNCTION>PUSHFW</FUNCTION>\r
+ <FUNCTION>PXOR</FUNCTION>\r
+ <FUNCTION>RCL</FUNCTION>\r
+ <FUNCTION>RCR</FUNCTION>\r
+ <FUNCTION>RDMSR</FUNCTION>\r
+ <FUNCTION>RDPMC</FUNCTION>\r
+ <FUNCTION>RDTSC</FUNCTION>\r
+ <FUNCTION>REP</FUNCTION>\r
+ <FUNCTION>REPE</FUNCTION>\r
+ <FUNCTION>REPNE</FUNCTION>\r
+ <FUNCTION>REPNZ</FUNCTION>\r
+ <FUNCTION>REPZ</FUNCTION>\r
+ <FUNCTION>RET</FUNCTION>\r
+ <FUNCTION>RETF</FUNCTION>\r
+ <FUNCTION>RETN</FUNCTION>\r
+ <FUNCTION>ROL</FUNCTION>\r
+ <FUNCTION>ROR</FUNCTION>\r
+ <FUNCTION>RSM</FUNCTION>\r
+ <FUNCTION>SAHF</FUNCTION>\r
+ <FUNCTION>SAL</FUNCTION>\r
+ <FUNCTION>SAR</FUNCTION>\r
+ <FUNCTION>SBB</FUNCTION>\r
+ <FUNCTION>SCAS</FUNCTION>\r
+ <FUNCTION>SCASB</FUNCTION>\r
+ <FUNCTION>SCASD</FUNCTION>\r
+ <FUNCTION>SCASW</FUNCTION>\r
+ <FUNCTION>SETA</FUNCTION>\r
+ <FUNCTION>SETAE</FUNCTION>\r
+ <FUNCTION>SETB</FUNCTION>\r
+ <FUNCTION>SETBE</FUNCTION>\r
+ <FUNCTION>SETC</FUNCTION>\r
+ <FUNCTION>SETE</FUNCTION>\r
+ <FUNCTION>SETG</FUNCTION>\r
+ <FUNCTION>SETGE</FUNCTION>\r
+ <FUNCTION>SETL</FUNCTION>\r
+ <FUNCTION>SETLE</FUNCTION>\r
+ <FUNCTION>SETNA</FUNCTION>\r
+ <FUNCTION>SETNAE</FUNCTION>\r
+ <FUNCTION>SETNB</FUNCTION>\r
+ <FUNCTION>SETNBE</FUNCTION>\r
+ <FUNCTION>SETNC</FUNCTION>\r
+ <FUNCTION>SETNE</FUNCTION>\r
+ <FUNCTION>SETNG</FUNCTION>\r
+ <FUNCTION>SETNGE</FUNCTION>\r
+ <FUNCTION>SETNL</FUNCTION>\r
+ <FUNCTION>SETNLE</FUNCTION>\r
+ <FUNCTION>SETNO</FUNCTION>\r
+ <FUNCTION>SETNP</FUNCTION>\r
+ <FUNCTION>SETNS</FUNCTION>\r
+ <FUNCTION>SETNZ</FUNCTION>\r
+ <FUNCTION>SETO</FUNCTION>\r
+ <FUNCTION>SETP</FUNCTION>\r
+ <FUNCTION>SETPE</FUNCTION>\r
+ <FUNCTION>SETPO</FUNCTION>\r
+ <FUNCTION>SETS</FUNCTION>\r
+ <FUNCTION>SETZ</FUNCTION>\r
+ <FUNCTION>SFENCE</FUNCTION>\r
+ <FUNCTION>SGDT</FUNCTION>\r
+ <FUNCTION>SHL</FUNCTION>\r
+ <FUNCTION>SHLD</FUNCTION>\r
+ <FUNCTION>SHR</FUNCTION>\r
+ <FUNCTION>SHRD</FUNCTION>\r
+ <FUNCTION>SHUFPS</FUNCTION>\r
+ <FUNCTION>SIDT</FUNCTION>\r
+ <FUNCTION>SLDT</FUNCTION>\r
+ <FUNCTION>SMSW</FUNCTION>\r
+ <FUNCTION>SQRTPS</FUNCTION>\r
+ <FUNCTION>SQRTSS</FUNCTION>\r
+ <FUNCTION>STC</FUNCTION>\r
+ <FUNCTION>STD</FUNCTION>\r
+ <FUNCTION>STI</FUNCTION>\r
+ <FUNCTION>STMXCSR</FUNCTION>\r
+ <FUNCTION>STOS</FUNCTION>\r
+ <FUNCTION>STOSB</FUNCTION>\r
+ <FUNCTION>STOSD</FUNCTION>\r
+ <FUNCTION>STOSW</FUNCTION>\r
+ <FUNCTION>STR</FUNCTION>\r
+ <FUNCTION>SUB</FUNCTION>\r
+ <FUNCTION>SUBPS</FUNCTION>\r
+ <FUNCTION>SUBSS</FUNCTION>\r
+ <FUNCTION>SYSENTER</FUNCTION>\r
+ <FUNCTION>SYSEXIT</FUNCTION>\r
+ <FUNCTION>TEST</FUNCTION>\r
+ <FUNCTION>UB2</FUNCTION>\r
+ <FUNCTION>UCOMISS</FUNCTION>\r
+ <FUNCTION>UNPCKHPS</FUNCTION>\r
+ <FUNCTION>UNPCKLPS</FUNCTION>\r
+ <FUNCTION>WAIT</FUNCTION>\r
+ <FUNCTION>WBINVD</FUNCTION>\r
+ <FUNCTION>VERR</FUNCTION>\r
+ <FUNCTION>VERW</FUNCTION>\r
+ <FUNCTION>WRMSR</FUNCTION>\r
+ <FUNCTION>XADD</FUNCTION>\r
+ <FUNCTION>XCHG</FUNCTION>\r
+ <FUNCTION>XLAT</FUNCTION>\r
+ <FUNCTION>XLATB</FUNCTION>\r
+ <FUNCTION>XOR</FUNCTION>\r
+ <FUNCTION>XORPS</FUNCTION>\r
+\r
+ <!-- Instructions: 3DNow! -->\r
+ <FUNCTION>FEMMS</FUNCTION>\r
+ <FUNCTION>PAVGUSB</FUNCTION>\r
+ <FUNCTION>PF2ID</FUNCTION>\r
+ <FUNCTION>PFACC</FUNCTION>\r
+ <FUNCTION>PFADD</FUNCTION>\r
+ <FUNCTION>PFCMPEQ</FUNCTION>\r
+ <FUNCTION>PFCMPGE</FUNCTION>\r
+ <FUNCTION>PFCMPGT</FUNCTION>\r
+ <FUNCTION>PFMAX</FUNCTION>\r
+ <FUNCTION>PFMIN</FUNCTION>\r
+ <FUNCTION>PFMUL</FUNCTION>\r
+ <FUNCTION>PFRCP</FUNCTION>\r
+ <FUNCTION>PFRCPIT1</FUNCTION>\r
+ <FUNCTION>PFRCPIT2</FUNCTION>\r
+ <FUNCTION>PFRSQIT1</FUNCTION>\r
+ <FUNCTION>PFRSQRT</FUNCTION>\r
+ <FUNCTION>PFSUB</FUNCTION>\r
+ <FUNCTION>PFSUBR</FUNCTION>\r
+ <FUNCTION>PI2FD</FUNCTION>\r
+ <FUNCTION>PMULHRW</FUNCTION>\r
+ <FUNCTION>PREFETCHW</FUNCTION>\r
+\r
+ <!-- Instructions: 3DNow! (Athlon extensions) -->\r
+ <FUNCTION>PF2IW</FUNCTION>\r
+ <FUNCTION>PFNACC</FUNCTION>\r
+ <FUNCTION>PFPNACC</FUNCTION>\r
+ <FUNCTION>PI2FW</FUNCTION>\r
+ <FUNCTION>PSWAPD</FUNCTION>\r
+\r
+ <!-- Instructions: MMX (Athlon extensions) -->\r
+ <FUNCTION>PREFETCHNTA</FUNCTION>\r
+ <FUNCTION>PREFETCHT0</FUNCTION>\r
+ <FUNCTION>PREFETCHT1</FUNCTION>\r
+ <FUNCTION>PREFETCHT2</FUNCTION>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- AWK mode, by Matthias M. Schneider -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>fflush</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>huge</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>nextfile</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>printf</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>atan2</KEYWORD2>\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>gensub</KEYWORD2>\r
+ <KEYWORD2>getline</KEYWORD2>\r
+ <KEYWORD2>gsub</KEYWORD2>\r
+ <KEYWORD2>index</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>length</KEYWORD2>\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>match</KEYWORD2>\r
+ <KEYWORD2>rand</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>split</KEYWORD2>\r
+ <KEYWORD2>sprintf</KEYWORD2>\r
+ <KEYWORD2>sqrt</KEYWORD2>\r
+ <KEYWORD2>srand</KEYWORD2>\r
+ <KEYWORD2>sub</KEYWORD2>\r
+ <KEYWORD2>substr</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>tolower</KEYWORD2>\r
+ <KEYWORD2>toupper</KEYWORD2>\r
+\r
+ <KEYWORD3>BEGIN</KEYWORD3>\r
+ <KEYWORD3>END</KEYWORD3>\r
+ <KEYWORD3>$0</KEYWORD3>\r
+ <KEYWORD3>ARGC</KEYWORD3>\r
+ <KEYWORD3>ARGIND</KEYWORD3>\r
+ <KEYWORD3>ARGV</KEYWORD3>\r
+ <KEYWORD3>CONVFMT</KEYWORD3>\r
+ <KEYWORD3>ENVIRON</KEYWORD3>\r
+ <KEYWORD3>ERRNO</KEYWORD3>\r
+ <KEYWORD3>FIELDSWIDTH</KEYWORD3>\r
+ <KEYWORD3>FILENAME</KEYWORD3>\r
+ <KEYWORD3>FNR</KEYWORD3>\r
+ <KEYWORD3>FS</KEYWORD3>\r
+ <KEYWORD3>IGNORECASE</KEYWORD3>\r
+ <KEYWORD3>NF</KEYWORD3>\r
+ <KEYWORD3>NR</KEYWORD3>\r
+ <KEYWORD3>OFMT</KEYWORD3>\r
+ <KEYWORD3>OFS</KEYWORD3>\r
+ <KEYWORD3>ORS</KEYWORD3>\r
+ <KEYWORD3>RLENGTH</KEYWORD3>\r
+ <KEYWORD3>RS</KEYWORD3>\r
+ <KEYWORD3>RSTART</KEYWORD3>\r
+ <KEYWORD3>RT</KEYWORD3>\r
+ <KEYWORD3>SUBSEP</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*(((ANY|ASSERT|CASE|CHOICE|IF|LET|PRE|SELECT|VAR|WHILE|WHEN)\s*\(|ELSE|ELSEIF|EITHER|OR|VARIANT|INVARIANT)[^;]*|for\s*\(.*)" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- B style comment -->\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN>/*?</BEGIN>\r
+ <END>?*/</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ \r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">$0</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <!-- pour le & -->\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <!-- pour le < et > -->\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ \r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ \r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+\r
+ <KEYWORDS>\r
+ \r
+ <!-- clauses -->\r
+ <KEYWORD2>ABSTRACT_CONSTANTS</KEYWORD2>\r
+ <KEYWORD2>ABSTRACT_VARIABLES</KEYWORD2>\r
+ <KEYWORD2>CONCRETE_CONSTANTS</KEYWORD2>\r
+ <KEYWORD2>CONCRETE_VARIABLES</KEYWORD2>\r
+ <KEYWORD2>CONSTANTS</KEYWORD2>\r
+ <KEYWORD2>VARIABLES</KEYWORD2>\r
+ <KEYWORD2>ASSERTIONS</KEYWORD2>\r
+ <KEYWORD2>CONSTRAINTS</KEYWORD2>\r
+ <KEYWORD2>DEFINITIONS</KEYWORD2>\r
+ <KEYWORD2>EXTENDS</KEYWORD2>\r
+ <KEYWORD2>IMPLEMENTATION</KEYWORD2>\r
+ <KEYWORD2>IMPORTS</KEYWORD2>\r
+ <KEYWORD2>INCLUDES</KEYWORD2>\r
+ <KEYWORD2>INITIALISATION</KEYWORD2>\r
+ <KEYWORD2>INVARIANT</KEYWORD2>\r
+ <KEYWORD2>LOCAL_OPERATIONS</KEYWORD2>\r
+ <KEYWORD2>MACHINE</KEYWORD2>\r
+ <KEYWORD2>OPERATIONS</KEYWORD2>\r
+ <KEYWORD2>PROMOTES</KEYWORD2>\r
+ <KEYWORD2>PROPERTIES</KEYWORD2>\r
+ <KEYWORD2>REFINES</KEYWORD2>\r
+ <KEYWORD2>REFINEMENT</KEYWORD2>\r
+ <KEYWORD2>SEES</KEYWORD2>\r
+ <KEYWORD2>SETS</KEYWORD2>\r
+ <KEYWORD2>USES</KEYWORD2>\r
+ <KEYWORD2>VALUES</KEYWORD2>\r
+\r
+ \r
+ <!-- substitutions -->\r
+ <KEYWORD2>ANY</KEYWORD2>\r
+ <KEYWORD2>ASSERT</KEYWORD2>\r
+ <KEYWORD2>BE</KEYWORD2>\r
+ <KEYWORD2>BEGIN</KEYWORD2>\r
+ <KEYWORD2>CASE</KEYWORD2>\r
+ <KEYWORD2>CHOICE</KEYWORD2>\r
+ <KEYWORD2>DO</KEYWORD2>\r
+ <KEYWORD2>EITHER</KEYWORD2>\r
+ <KEYWORD2>ELSE</KEYWORD2>\r
+ <KEYWORD2>ELSIF</KEYWORD2>\r
+ <!-- voir pour le end -->\r
+ <KEYWORD2>END</KEYWORD2>\r
+ <KEYWORD2>IF</KEYWORD2>\r
+ <KEYWORD2>IN</KEYWORD2>\r
+ <KEYWORD2>LET</KEYWORD2>\r
+ <KEYWORD2>OF</KEYWORD2>\r
+ <KEYWORD2>OR</KEYWORD2>\r
+ <KEYWORD2>PRE</KEYWORD2>\r
+ <KEYWORD2>SELECT</KEYWORD2>\r
+ <KEYWORD2>THEN</KEYWORD2>\r
+ <KEYWORD2>VAR</KEYWORD2>\r
+ <KEYWORD2>VARIANT</KEYWORD2>\r
+ <KEYWORD2>WHEN</KEYWORD2>\r
+ <KEYWORD2>WHERE</KEYWORD2>\r
+ <KEYWORD2>WHILE</KEYWORD2>\r
+ \r
+ \r
+ <KEYWORD3>FIN</KEYWORD3>\r
+ <KEYWORD3>FIN1</KEYWORD3>\r
+ <KEYWORD3>INT</KEYWORD3>\r
+ <KEYWORD3>INTEGER</KEYWORD3>\r
+ <KEYWORD3>INTER</KEYWORD3>\r
+ <KEYWORD3>MAXINT</KEYWORD3>\r
+ <KEYWORD3>MININT</KEYWORD3>\r
+ <KEYWORD3>NAT</KEYWORD3>\r
+ <KEYWORD3>NAT1</KEYWORD3>\r
+ <KEYWORD3>NATURAL</KEYWORD3>\r
+ <KEYWORD3>NATURAL1</KEYWORD3>\r
+ <KEYWORD3>PI</KEYWORD3>\r
+ <KEYWORD3>POW</KEYWORD3>\r
+ <KEYWORD3>POW1</KEYWORD3>\r
+ <KEYWORD3>SIGMA</KEYWORD3>\r
+ <KEYWORD3>UNION</KEYWORD3>\r
+\r
+ <FUNCTION>arity</FUNCTION>\r
+ <FUNCTION>bin</FUNCTION>\r
+ <FUNCTION>bool</FUNCTION>\r
+ <FUNCTION>btree</FUNCTION>\r
+ <FUNCTION>card</FUNCTION>\r
+ <FUNCTION>closure</FUNCTION>\r
+ <FUNCTION>closure1</FUNCTION>\r
+ <FUNCTION>conc</FUNCTION>\r
+ <FUNCTION>const</FUNCTION>\r
+ <FUNCTION>dom</FUNCTION>\r
+ <FUNCTION>father</FUNCTION>\r
+ <FUNCTION>first</FUNCTION>\r
+ <FUNCTION>fnc</FUNCTION>\r
+ <FUNCTION>front</FUNCTION>\r
+ <FUNCTION>id</FUNCTION>\r
+ <FUNCTION>infix</FUNCTION>\r
+ <FUNCTION>inter</FUNCTION>\r
+ <FUNCTION>iseq</FUNCTION>\r
+ <FUNCTION>iseq1</FUNCTION>\r
+ <FUNCTION>iterate</FUNCTION>\r
+ <FUNCTION>last</FUNCTION>\r
+ <FUNCTION>left</FUNCTION>\r
+ <FUNCTION>max</FUNCTION>\r
+ <FUNCTION>min</FUNCTION>\r
+ <FUNCTION>mirror</FUNCTION>\r
+ <FUNCTION>mod</FUNCTION>\r
+ <FUNCTION>not</FUNCTION>\r
+ <FUNCTION>or</FUNCTION>\r
+ <FUNCTION>perm</FUNCTION>\r
+ <FUNCTION>postfix</FUNCTION>\r
+ <FUNCTION>pred</FUNCTION>\r
+ <FUNCTION>prefix</FUNCTION>\r
+ <FUNCTION>prj1</FUNCTION>\r
+ <FUNCTION>prj2</FUNCTION>\r
+ <FUNCTION>r~</FUNCTION>\r
+ <FUNCTION>ran</FUNCTION>\r
+ <FUNCTION>rank</FUNCTION>\r
+ <FUNCTION>rec</FUNCTION>\r
+ <FUNCTION>rel</FUNCTION>\r
+ <FUNCTION>rev</FUNCTION>\r
+ <FUNCTION>right</FUNCTION>\r
+ <FUNCTION>seq</FUNCTION>\r
+ <FUNCTION>seq1</FUNCTION>\r
+ <FUNCTION>size</FUNCTION>\r
+ <FUNCTION>sizet</FUNCTION>\r
+ <FUNCTION>skip</FUNCTION>\r
+ <FUNCTION>son</FUNCTION>\r
+ <FUNCTION>sons</FUNCTION>\r
+ <FUNCTION>struct</FUNCTION>\r
+ <FUNCTION>subtree</FUNCTION>\r
+ <FUNCTION>succ</FUNCTION>\r
+ <FUNCTION>tail</FUNCTION>\r
+ <FUNCTION>top</FUNCTION>\r
+ <FUNCTION>tree</FUNCTION>\r
+ <FUNCTION>union</FUNCTION>\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ 09-10-2003 - Mirco Bova\r
+ Added some new batch commands using win2K help as reference.\r
+\r
+ 04-12-2001 - Mirco Bova\r
+ this file is based on the original JEdit batch.xml mode.\r
+ The main upgrade consisting in adding the standard MS-DOS\r
+ commands as keywords and functions:\r
+ - keywords = internal shell commands;\r
+ - functions = standard MS-DOS commands (.exe or .com in DOS or\r
+ windows\command directory).\r
+\r
+ Minor enhancements by Alex Jacoby on 28-feb-2003\r
+-->\r
+\r
+<!-- The keywords and functions here defined are those of MS-DOS 6.22,\r
+ plus a few as of Windows XP.\r
+ -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="rem" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE=")" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <!-- 'echo off' statements -->\r
+ <SEQ TYPE="KEYWORD3">@</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <!-- labels - eg ":test" or "goto :test" -->\r
+ <MARK_FOLLOWING AT_WORD_START="TRUE" TYPE="LABEL">:</MARK_FOLLOWING>\r
+\r
+ <!-- comments -->\r
+ <EOL_SPAN_REGEXP AT_WHITESPACE_END="TRUE" HASH_CHAR="REM" TYPE="COMMENT1">REM\s</EOL_SPAN_REGEXP>\r
+\r
+ <!-- literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- variables -->\r
+ <SEQ TYPE="KEYWORD2">%0</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%1</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%2</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%3</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%4</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%5</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%6</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%7</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%8</SEQ>\r
+ <SEQ TYPE="KEYWORD2">%9</SEQ>\r
+ <!-- for-loop variable (one char after %%) -->\r
+ <SEQ_REGEXP TYPE="KEYWORD2"\r
+ HASH_CHAR="%%"\r
+ AT_WORD_START="TRUE"\r
+ >%%[\p{Alpha}]</SEQ_REGEXP>\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%</BEGIN>\r
+ <END>%</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <!-- KEYWORD1 are internal MS-DOS shell commands -->\r
+ <KEYWORD1>cd</KEYWORD1>\r
+ <KEYWORD1>chdir</KEYWORD1>\r
+ <KEYWORD1>md</KEYWORD1>\r
+ <KEYWORD1>mkdir</KEYWORD1>\r
+\r
+ <KEYWORD1>cls</KEYWORD1>\r
+\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+\r
+ <KEYWORD1>echo</KEYWORD1>\r
+ <KEYWORD1>echo.</KEYWORD1>\r
+\r
+ <KEYWORD1>move</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>move</KEYWORD1>\r
+ <KEYWORD1>ren</KEYWORD1>\r
+ <KEYWORD1>del</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+\r
+ <!-- new KEYWORDS from Win2K help -->\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>setlocal</KEYWORD1>\r
+ <KEYWORD1>shift</KEYWORD1>\r
+ <KEYWORD1>endlocal</KEYWORD1>\r
+ <KEYWORD1>pause</KEYWORD1>\r
+\r
+ <!-- KEYWORD2 are commands options -->\r
+\r
+ <KEYWORD2>defined</KEYWORD2>\r
+ <KEYWORD2>exist</KEYWORD2>\r
+ <KEYWORD2>errorlevel</KEYWORD2>\r
+\r
+ <!-- new KEYWORD options from Win2K help -->\r
+ <KEYWORD2>else</KEYWORD2>\r
+\r
+ <KEYWORD2>in</KEYWORD2>\r
+ <KEYWORD2>do</KEYWORD2>\r
+\r
+ <KEYWORD2>NUL</KEYWORD2>\r
+ <KEYWORD2>AUX</KEYWORD2>\r
+ <KEYWORD2>PRN</KEYWORD2>\r
+\r
+ <KEYWORD1>not</KEYWORD1>\r
+\r
+ <!-- goto is a special case we want to distinguish it -->\r
+ <KEYWORD3>goto</KEYWORD3>\r
+\r
+ <!-- FUNCTION are standard MS-DOS commands -->\r
+ <!-- (those you find as stand-alone .exe or .com) in win95 %windows_root%\command folder -->\r
+ <FUNCTION>APPEND</FUNCTION>\r
+ <FUNCTION>ATTRIB</FUNCTION>\r
+ <FUNCTION>CHKDSK</FUNCTION>\r
+ <FUNCTION>CHOICE</FUNCTION>\r
+ <FUNCTION>DEBUG</FUNCTION>\r
+ <FUNCTION>DEFRAG</FUNCTION>\r
+ <FUNCTION>DELTREE</FUNCTION>\r
+ <FUNCTION>DISKCOMP</FUNCTION>\r
+ <FUNCTION>DISKCOPY</FUNCTION>\r
+ <FUNCTION>DOSKEY</FUNCTION>\r
+ <FUNCTION>DRVSPACE</FUNCTION>\r
+ <FUNCTION>EMM386</FUNCTION>\r
+ <FUNCTION>EXPAND</FUNCTION>\r
+ <FUNCTION>FASTOPEN</FUNCTION>\r
+ <FUNCTION>FC</FUNCTION>\r
+ <FUNCTION>FDISK</FUNCTION>\r
+ <FUNCTION>FIND</FUNCTION>\r
+ <FUNCTION>FORMAT</FUNCTION>\r
+ <FUNCTION>GRAPHICS</FUNCTION>\r
+ <FUNCTION>KEYB</FUNCTION>\r
+ <FUNCTION>LABEL</FUNCTION>\r
+ <FUNCTION>LOADFIX</FUNCTION>\r
+ <FUNCTION>MEM</FUNCTION>\r
+ <FUNCTION>MODE</FUNCTION>\r
+ <FUNCTION>MORE</FUNCTION>\r
+ <FUNCTION>MOVE</FUNCTION>\r
+ <FUNCTION>MSCDEX</FUNCTION>\r
+ <FUNCTION>NLSFUNC</FUNCTION>\r
+ <FUNCTION>POWER</FUNCTION>\r
+ <FUNCTION>PRINT</FUNCTION>\r
+ <FUNCTION>RD</FUNCTION>\r
+ <FUNCTION>REPLACE</FUNCTION>\r
+ <FUNCTION>RESTORE</FUNCTION>\r
+ <FUNCTION>SETVER</FUNCTION>\r
+ <FUNCTION>SHARE</FUNCTION>\r
+ <FUNCTION>SORT</FUNCTION>\r
+ <FUNCTION>SUBST</FUNCTION>\r
+ <FUNCTION>SYS</FUNCTION>\r
+ <FUNCTION>TREE</FUNCTION>\r
+ <FUNCTION>UNDELETE</FUNCTION>\r
+ <FUNCTION>UNFORMAT</FUNCTION>\r
+ <FUNCTION>VSAFE</FUNCTION>\r
+ <FUNCTION>XCOPY</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- enhancement if using some preprocessor -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">REM </EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR"> and </SEQ>\r
+ <SEQ TYPE="OPERATOR"> or </SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>ABS</KEYWORD1>\r
+ <KEYWORD1>ADJN</KEYWORD1>\r
+ <KEYWORD1>ARGC</KEYWORD1>\r
+ <KEYWORD1>ARGV</KEYWORD1>\r
+ <KEYWORD1>ASC</KEYWORD1>\r
+ <KEYWORD1>ATH</KEYWORD1>\r
+ <KEYWORD1>ATN</KEYWORD1>\r
+ <KEYWORD1>BACKGROUND</KEYWORD1>\r
+ <KEYWORD1>BIN</KEYWORD1>\r
+ <KEYWORD1>BSZ</KEYWORD1>\r
+ <KEYWORD1>CALLBACK</KEYWORD1>\r
+ <KEYWORD1>CHANOPT</KEYWORD1>\r
+ <KEYWORD1>CHR</KEYWORD1>\r
+ <KEYWORD1>CLIPCLEAR</KEYWORD1>\r
+ <KEYWORD1>CLIPFROMFILE</KEYWORD1>\r
+ <KEYWORD1>CLIPFROMSTR</KEYWORD1>\r
+ <KEYWORD1>CLIPISFORMAT</KEYWORD1>\r
+ <KEYWORD1>CLIPLOCK</KEYWORD1>\r
+ <KEYWORD1>CLIPREGFORMAT</KEYWORD1>\r
+ <KEYWORD1>CLIPTOFILE</KEYWORD1>\r
+ <KEYWORD1>CLIPTOSTR</KEYWORD1>\r
+ <KEYWORD1>CLIPUNLOCK</KEYWORD1>\r
+ <KEYWORD1>COS</KEYWORD1>\r
+ <KEYWORD1>CPL</KEYWORD1>\r
+ <KEYWORD1>CRC</KEYWORD1>\r
+ <KEYWORD1>CRC16</KEYWORD1>\r
+ <KEYWORD1>CTRL</KEYWORD1>\r
+ <KEYWORD1>CVS</KEYWORD1>\r
+ <KEYWORD1>CVT</KEYWORD1>\r
+ <KEYWORD1>DATE</KEYWORD1>\r
+ <KEYWORD1>DEC</KEYWORD1>\r
+ <KEYWORD1>DIMS</KEYWORD1>\r
+ <KEYWORD1>DSK</KEYWORD1>\r
+ <KEYWORD1>DSZ</KEYWORD1>\r
+ <KEYWORD1>EPT</KEYWORD1>\r
+ <KEYWORD1>ERRMES</KEYWORD1>\r
+ <KEYWORD1>FATTR</KEYWORD1>\r
+ <KEYWORD1>FBIN</KEYWORD1>\r
+ <KEYWORD1>FDEC</KEYWORD1>\r
+ <KEYWORD1>FIELD</KEYWORD1>\r
+ <KEYWORD1>FILEOPT</KEYWORD1>\r
+ <KEYWORD1>FILL</KEYWORD1>\r
+ <KEYWORD1>FLOATINGPOINT</KEYWORD1>\r
+ <KEYWORD1>FPT</KEYWORD1>\r
+ <KEYWORD1>GAP</KEYWORD1>\r
+ <KEYWORD1>HSA</KEYWORD1>\r
+ <KEYWORD1>HSH</KEYWORD1>\r
+ <KEYWORD1>HTA</KEYWORD1>\r
+ <KEYWORD1>IMP</KEYWORD1>\r
+ <KEYWORD1>INFO</KEYWORD1>\r
+ <KEYWORD1>INT</KEYWORD1>\r
+ <KEYWORD1>JUL</KEYWORD1>\r
+ <KEYWORD1>LCHECKIN</KEYWORD1>\r
+ <KEYWORD1>LCHECKOUT</KEYWORD1>\r
+ <KEYWORD1>LEN</KEYWORD1>\r
+ <KEYWORD1>LINFO</KEYWORD1>\r
+ <KEYWORD1>LOG</KEYWORD1>\r
+ <KEYWORD1>LRC</KEYWORD1>\r
+ <KEYWORD1>LST</KEYWORD1>\r
+ <KEYWORD1>MASK</KEYWORD1>\r
+ <KEYWORD1>MAX</KEYWORD1>\r
+ <KEYWORD1>MENUINFO</KEYWORD1>\r
+ <KEYWORD1>MIN</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>MSGBOX</KEYWORD1>\r
+ <KEYWORD1>NEVAL</KEYWORD1>\r
+ <KEYWORD1>NFIELD</KEYWORD1>\r
+ <KEYWORD1>NOTICE</KEYWORD1>\r
+ <KEYWORD1>NOTICETPL</KEYWORD1>\r
+ <KEYWORD1>NUM</KEYWORD1>\r
+ <KEYWORD1>PAD</KEYWORD1>\r
+ <KEYWORD1>PCK</KEYWORD1>\r
+ <KEYWORD1>PGM</KEYWORD1>\r
+ <KEYWORD1>POS</KEYWORD1>\r
+ <KEYWORD1>PROCESS_EVENTS</KEYWORD1>\r
+ <KEYWORD1>PROGRAM</KEYWORD1>\r
+ <KEYWORD1>PSZ</KEYWORD1>\r
+ <KEYWORD1>PUB</KEYWORD1>\r
+ <KEYWORD1>REMOVE_CALLBACK</KEYWORD1>\r
+ <KEYWORD1>RESERVE</KEYWORD1>\r
+ <KEYWORD1>RND</KEYWORD1>\r
+ <KEYWORD1>ROUND</KEYWORD1>\r
+ <KEYWORD1>SCALL</KEYWORD1>\r
+ <KEYWORD1>SENDMSG</KEYWORD1>\r
+ <KEYWORD1>SEVAL</KEYWORD1>\r
+ <KEYWORD1>SGN</KEYWORD1>\r
+ <KEYWORD1>SIN</KEYWORD1>\r
+ <KEYWORD1>SQR</KEYWORD1>\r
+ <KEYWORD1>SSORT</KEYWORD1>\r
+ <KEYWORD1>SSZ</KEYWORD1>\r
+ <KEYWORD1>STBL</KEYWORD1>\r
+ <KEYWORD1>STR</KEYWORD1>\r
+ <KEYWORD1>SWAP</KEYWORD1>\r
+ <KEYWORD1>SYS</KEYWORD1>\r
+ <KEYWORD1>TCB</KEYWORD1>\r
+ <KEYWORD1>TMPL</KEYWORD1>\r
+ <KEYWORD1>TSK</KEYWORD1>\r
+ <KEYWORD1>UPK</KEYWORD1>\r
+ <KEYWORD1>WINFIRST</KEYWORD1>\r
+ <KEYWORD1>WININFO</KEYWORD1>\r
+ <KEYWORD1>WINNEXT</KEYWORD1>\r
+\r
+ <KEYWORD2>CHDIR</KEYWORD2>\r
+ <KEYWORD2>CISAM</KEYWORD2>\r
+ <KEYWORD2>CLOSE</KEYWORD2>\r
+ <KEYWORD2>CONTINUE</KEYWORD2>\r
+ <KEYWORD2>DIRECT</KEYWORD2>\r
+ <KEYWORD2>DIR</KEYWORD2>\r
+ <KEYWORD2>DISABLE</KEYWORD2>\r
+ <KEYWORD2>DOM</KEYWORD2>\r
+ <KEYWORD2>DUMP</KEYWORD2>\r
+ <KEYWORD2>ENABLE</KEYWORD2>\r
+ <KEYWORD2>END</KEYWORD2>\r
+ <KEYWORD2>ENDTRACE</KEYWORD2>\r
+ <KEYWORD2>ERASE</KEYWORD2>\r
+ <KEYWORD2>EXTRACT</KEYWORD2>\r
+ <KEYWORD2>FID</KEYWORD2>\r
+ <KEYWORD2>FILE</KEYWORD2>\r
+ <KEYWORD2>FIN</KEYWORD2>\r
+ <KEYWORD2>FIND</KEYWORD2>\r
+ <KEYWORD2>FROM</KEYWORD2>\r
+ <KEYWORD2>IND</KEYWORD2>\r
+ <KEYWORD2>INDEXED</KEYWORD2>\r
+ <KEYWORD2>INPUT</KEYWORD2>\r
+ <KEYWORD2>INPUTE</KEYWORD2>\r
+ <KEYWORD2>INPUTN</KEYWORD2>\r
+ <KEYWORD2>IOL</KEYWORD2>\r
+ <KEYWORD2>IOLIST</KEYWORD2>\r
+ <KEYWORD2>KEY</KEYWORD2>\r
+ <KEYWORD2>KEYF</KEYWORD2>\r
+ <KEYWORD2>KEYL</KEYWORD2>\r
+ <KEYWORD2>KEYN</KEYWORD2>\r
+ <KEYWORD2>KEYP</KEYWORD2>\r
+ <KEYWORD2>KGEN</KEYWORD2>\r
+ <KEYWORD2>KNUM</KEYWORD2>\r
+ <KEYWORD2>LIST</KEYWORD2>\r
+ <KEYWORD2>LOAD</KEYWORD2>\r
+ <KEYWORD2>LOCK</KEYWORD2>\r
+ <KEYWORD2>MERGE</KEYWORD2>\r
+ <KEYWORD2>MKDIR</KEYWORD2>\r
+ <KEYWORD2>MKEYED</KEYWORD2>\r
+ <KEYWORD2>OPEN</KEYWORD2>\r
+ <KEYWORD2>PREFIX</KEYWORD2>\r
+ <KEYWORD2>PRINT</KEYWORD2>\r
+ <KEYWORD2>READ_RESOURCE</KEYWORD2>\r
+ <KEYWORD2>READ</KEYWORD2>\r
+ <KEYWORD2>RECORD</KEYWORD2>\r
+ <KEYWORD2>REMOVE</KEYWORD2>\r
+ <KEYWORD2>RENAME</KEYWORD2>\r
+ <KEYWORD2>RESCLOSE</KEYWORD2>\r
+ <KEYWORD2>RESFIRST</KEYWORD2>\r
+ <KEYWORD2>RESGET</KEYWORD2>\r
+ <KEYWORD2>RESINFO</KEYWORD2>\r
+ <KEYWORD2>RESNEXT</KEYWORD2>\r
+ <KEYWORD2>RESOPEN</KEYWORD2>\r
+ <KEYWORD2>REV</KEYWORD2>\r
+ <KEYWORD2>RMDIR</KEYWORD2>\r
+ <KEYWORD2>SAVE</KEYWORD2>\r
+ <KEYWORD2>SELECT</KEYWORD2>\r
+ <KEYWORD2>SERIAL</KEYWORD2>\r
+ <KEYWORD2>SETDAY</KEYWORD2>\r
+ <KEYWORD2>SETDRIVE</KEYWORD2>\r
+ <KEYWORD2>SETTRACE</KEYWORD2>\r
+ <KEYWORD2>SIZ</KEYWORD2>\r
+ <KEYWORD2>SORT</KEYWORD2>\r
+ <KEYWORD2>SQLCHN</KEYWORD2>\r
+ <KEYWORD2>SQLCLOSE</KEYWORD2>\r
+ <KEYWORD2>SQLERR</KEYWORD2>\r
+ <KEYWORD2>SQLEXEC</KEYWORD2>\r
+ <KEYWORD2>SQLFETCH</KEYWORD2>\r
+ <KEYWORD2>SQLLIST</KEYWORD2>\r
+ <KEYWORD2>SQLOPEN</KEYWORD2>\r
+ <KEYWORD2>SQLPREP</KEYWORD2>\r
+ <KEYWORD2>SQLSET</KEYWORD2>\r
+ <KEYWORD2>SQLTABLES</KEYWORD2>\r
+ <KEYWORD2>SQLTMPL</KEYWORD2>\r
+ <KEYWORD2>SQLUNT</KEYWORD2>\r
+ <KEYWORD2>STRING</KEYWORD2>\r
+ <KEYWORD2>TABLE</KEYWORD2>\r
+ <KEYWORD2>TBL</KEYWORD2>\r
+ <KEYWORD2>TIM</KEYWORD2>\r
+ <KEYWORD2>UNLOCK</KEYWORD2>\r
+ <KEYWORD2>WHERE</KEYWORD2>\r
+ <KEYWORD2>WRITE</KEYWORD2>\r
+ <KEYWORD2>XFID</KEYWORD2>\r
+ <KEYWORD2>XFILE</KEYWORD2>\r
+ <KEYWORD2>XFIN</KEYWORD2>\r
+\r
+ <KEYWORD3>ADDR</KEYWORD3>\r
+ <KEYWORD3>ALL</KEYWORD3>\r
+ <KEYWORD3>AUTO</KEYWORD3>\r
+ <KEYWORD3>BEGIN</KEYWORD3>\r
+ <KEYWORD3>BREAK</KEYWORD3>\r
+ <KEYWORD3>CALL</KEYWORD3>\r
+ <KEYWORD3>CASE</KEYWORD3>\r
+ <KEYWORD3>CHN</KEYWORD3>\r
+ <KEYWORD3>CLEAR</KEYWORD3>\r
+ <KEYWORD3>CTL</KEYWORD3>\r
+ <KEYWORD3>DATA</KEYWORD3>\r
+ <KEYWORD3>DAY</KEYWORD3>\r
+ <KEYWORD3>DEF</KEYWORD3>\r
+ <KEYWORD3>DEFAULT</KEYWORD3>\r
+ <KEYWORD3>DEFEND</KEYWORD3>\r
+ <KEYWORD3>DELETE</KEYWORD3>\r
+ <KEYWORD3>DIM</KEYWORD3>\r
+ <KEYWORD3>DREAD</KEYWORD3>\r
+ <KEYWORD3>DROP</KEYWORD3>\r
+ <KEYWORD3>EDIT</KEYWORD3>\r
+ <KEYWORD3>ELSE</KEYWORD3>\r
+ <KEYWORD3>ENDIF</KEYWORD3>\r
+ <KEYWORD3>ENTER</KEYWORD3>\r
+ <KEYWORD3>ERR</KEYWORD3>\r
+ <KEYWORD3>ESCAPE</KEYWORD3>\r
+ <KEYWORD3>ESCOFF</KEYWORD3>\r
+ <KEYWORD3>ESCON</KEYWORD3>\r
+ <KEYWORD3>EXECUTE</KEYWORD3>\r
+ <KEYWORD3>EXIT</KEYWORD3>\r
+ <KEYWORD3>EXITTO</KEYWORD3>\r
+ <KEYWORD3>FI</KEYWORD3>\r
+ <KEYWORD3>FOR</KEYWORD3>\r
+ <KEYWORD3>GOSUB</KEYWORD3>\r
+ <KEYWORD3>GOTO</KEYWORD3>\r
+ <KEYWORD3>IF</KEYWORD3>\r
+ <KEYWORD3>IFF</KEYWORD3>\r
+ <KEYWORD3>INITFILE</KEYWORD3>\r
+ <KEYWORD3>IOR</KEYWORD3>\r
+ <KEYWORD3>LET</KEYWORD3>\r
+ <KEYWORD3>NEXT</KEYWORD3>\r
+ <KEYWORD3>NOT</KEYWORD3>\r
+ <KEYWORD3>ON</KEYWORD3>\r
+ <KEYWORD3>OPTS</KEYWORD3>\r
+ <KEYWORD3>OR</KEYWORD3>\r
+ <KEYWORD3>PFX</KEYWORD3>\r
+ <KEYWORD3>PRECISION</KEYWORD3>\r
+ <KEYWORD3>RELEASE</KEYWORD3>\r
+ <KEYWORD3>RENUM</KEYWORD3>\r
+ <KEYWORD3>REPEAT</KEYWORD3>\r
+ <KEYWORD3>RESET</KEYWORD3>\r
+ <KEYWORD3>RESTORE</KEYWORD3>\r
+ <KEYWORD3>RETRY</KEYWORD3>\r
+ <KEYWORD3>RETURN</KEYWORD3>\r
+ <KEYWORD3>RUN</KEYWORD3>\r
+ <KEYWORD3>SET_CASE_SENSITIVE_OFF</KEYWORD3>\r
+ <KEYWORD3>SET_CASE_SENSITIVE_ON</KEYWORD3>\r
+ <KEYWORD3>SETERR</KEYWORD3>\r
+ <KEYWORD3>SETESC</KEYWORD3>\r
+ <KEYWORD3>SETOPTS</KEYWORD3>\r
+ <KEYWORD3>SETTIME</KEYWORD3>\r
+ <KEYWORD3>SSN</KEYWORD3>\r
+ <KEYWORD3>START</KEYWORD3>\r
+ <KEYWORD3>STEP</KEYWORD3>\r
+ <KEYWORD3>STOP</KEYWORD3>\r
+ <KEYWORD3>SWEND</KEYWORD3>\r
+ <KEYWORD3>SWITCH</KEYWORD3>\r
+ <KEYWORD3>THEN</KEYWORD3>\r
+ <KEYWORD3>TO</KEYWORD3>\r
+ <KEYWORD3>UNT</KEYWORD3>\r
+ <KEYWORD3>UNTIL</KEYWORD3>\r
+ <KEYWORD3>WAIT</KEYWORD3>\r
+ <KEYWORD3>WEND</KEYWORD3>\r
+ <KEYWORD3>WHILE</KEYWORD3>\r
+ <KEYWORD3>XOR</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Java bytecode mode. Used by Andre Kaplan's JavaInsight plugin.\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="FALSE">%</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2" AT_LINE_START="FALSE">#</MARK_FOLLOWING>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Some java keywords -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <!-- <KEYWORD1>break</KEYWORD1> -->\r
+ <!-- <KEYWORD1>case</KEYWORD1> -->\r
+ <!-- <KEYWORD1>catch</KEYWORD1> -->\r
+ <!-- <KEYWORD1>continue</KEYWORD1> -->\r
+ <!-- <KEYWORD1>default</KEYWORD1> -->\r
+ <!-- <KEYWORD1>do</KEYWORD1> -->\r
+ <!-- <KEYWORD1>else</KEYWORD1> -->\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <!-- <KEYWORD1>finally</KEYWORD1> -->\r
+ <!-- <KEYWORD1>for</KEYWORD1> -->\r
+ <!-- <KEYWORD1>if</KEYWORD1> -->\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <!-- <KEYWORD1>instanceof</KEYWORD1> -->\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <!-- <KEYWORD1>new</KEYWORD1> -->\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <!-- <KEYWORD1>return</KEYWORD1> -->\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <!-- <KEYWORD1>switch</KEYWORD1> -->\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <!-- <KEYWORD1>try</KEYWORD1> -->\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <!-- <KEYWORD1>while</KEYWORD1> -->\r
+\r
+ <!-- <KEYWORD2>package</KEYWORD2> -->\r
+ <!-- <KEYWORD2>import</KEYWORD2> -->\r
+\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>interface</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <!-- <LITERAL2>false</LITERAL2> -->\r
+ <!-- <LITERAL2>null</LITERAL2> -->\r
+ <!-- <LITERAL2>super</LITERAL2> -->\r
+ <!-- <LITERAL2>this</LITERAL2> -->\r
+ <!-- <LITERAL2>true</LITERAL2> -->\r
+\r
+ <KEYWORD1>clinit</KEYWORD1>\r
+ <KEYWORD1>init</KEYWORD1>\r
+\r
+ <!-- 00 (0x00) --><KEYWORD1>nop</KEYWORD1>\r
+ <!-- 01 (0x01) --><KEYWORD1>aconst_null</KEYWORD1>\r
+ <!-- 02 (0x02) --><KEYWORD1>iconst_m1</KEYWORD1>\r
+ <!-- 03 (0x03) --><KEYWORD1>iconst_0</KEYWORD1>\r
+ <!-- 04 (0x04) --><KEYWORD1>iconst_1</KEYWORD1>\r
+ <!-- 05 (0x05) --><KEYWORD1>iconst_2</KEYWORD1>\r
+ <!-- 06 (0x06) --><KEYWORD1>iconst_3</KEYWORD1>\r
+ <!-- 07 (0x07) --><KEYWORD1>iconst_4</KEYWORD1>\r
+ <!-- 08 (0x08) --><KEYWORD1>iconst_5</KEYWORD1>\r
+ <!-- 09 (0x09) --><KEYWORD1>lconst_0</KEYWORD1>\r
+ <!-- 10 (0x0a) --><KEYWORD1>lconst_1</KEYWORD1>\r
+ <!-- 11 (0x0b) --><KEYWORD1>fconst_0</KEYWORD1>\r
+ <!-- 12 (0x0c) --><KEYWORD1>fconst_1</KEYWORD1>\r
+ <!-- 13 (0x0d) --><KEYWORD1>fconst_2</KEYWORD1>\r
+ <!-- 14 (0x0e) --><KEYWORD1>dconst_0</KEYWORD1>\r
+ <!-- 15 (0x0f) --><KEYWORD1>dconst_1</KEYWORD1>\r
+ <!-- 16 (0x10) --><KEYWORD1>bipush</KEYWORD1>\r
+ <!-- 17 (0x11) --><KEYWORD1>sipush</KEYWORD1>\r
+ <!-- 18 (0x12) --><KEYWORD1>ldc</KEYWORD1>\r
+ <!-- 19 (0x13) --><KEYWORD1>ldc_w</KEYWORD1>\r
+ <!-- 20 (0x14) --><KEYWORD1>ldc2_w</KEYWORD1>\r
+ <!-- 21 (0x15) --><KEYWORD1>iload</KEYWORD1>\r
+ <!-- 22 (0x16) --><KEYWORD1>lload</KEYWORD1>\r
+ <!-- 23 (0x17) --><KEYWORD1>fload</KEYWORD1>\r
+ <!-- 24 (0x18) --><KEYWORD1>dload</KEYWORD1>\r
+ <!-- 25 (0x19) --><KEYWORD1>aload</KEYWORD1>\r
+ <!-- 26 (0x1a) --><KEYWORD1>iload_0</KEYWORD1>\r
+ <!-- 27 (0x1b) --><KEYWORD1>iload_1</KEYWORD1>\r
+ <!-- 28 (0x1c) --><KEYWORD1>iload_2</KEYWORD1>\r
+ <!-- 29 (0x1d) --><KEYWORD1>iload_3</KEYWORD1>\r
+ <!-- 30 (0x1e) --><KEYWORD1>lload_0</KEYWORD1>\r
+ <!-- 31 (0x1f) --><KEYWORD1>lload_1</KEYWORD1>\r
+ <!-- 32 (0x20) --><KEYWORD1>lload_2</KEYWORD1>\r
+ <!-- 33 (0x21) --><KEYWORD1>lload_3</KEYWORD1>\r
+ <!-- 34 (0x22) --><KEYWORD1>fload_0</KEYWORD1>\r
+ <!-- 35 (0x23) --><KEYWORD1>fload_1</KEYWORD1>\r
+ <!-- 36 (0x24) --><KEYWORD1>fload_2</KEYWORD1>\r
+ <!-- 37 (0x25) --><KEYWORD1>fload_3</KEYWORD1>\r
+ <!-- 38 (0x26) --><KEYWORD1>dload_0</KEYWORD1>\r
+ <!-- 39 (0x27) --><KEYWORD1>dload_1</KEYWORD1>\r
+ <!-- 40 (0x28) --><KEYWORD1>dload_2</KEYWORD1>\r
+ <!-- 41 (0x29) --><KEYWORD1>dload_3</KEYWORD1>\r
+ <!-- 42 (0x2a) --><KEYWORD1>aload_0</KEYWORD1>\r
+ <!-- 43 (0x2b) --><KEYWORD1>aload_1</KEYWORD1>\r
+ <!-- 44 (0x2c) --><KEYWORD1>aload_2</KEYWORD1>\r
+ <!-- 45 (0x2d) --><KEYWORD1>aload_3</KEYWORD1>\r
+ <!-- 46 (0x2e) --><KEYWORD1>iaload</KEYWORD1>\r
+ <!-- 47 (0x2f) --><KEYWORD1>laload</KEYWORD1>\r
+ <!-- 48 (0x30) --><KEYWORD1>faload</KEYWORD1>\r
+ <!-- 49 (0x31) --><KEYWORD1>daload</KEYWORD1>\r
+ <!-- 50 (0x32) --><KEYWORD1>aaload</KEYWORD1>\r
+ <!-- 51 (0x33) --><KEYWORD1>baload</KEYWORD1>\r
+ <!-- 52 (0x34) --><KEYWORD1>caload</KEYWORD1>\r
+ <!-- 53 (0x35) --><KEYWORD1>saload</KEYWORD1>\r
+ <!-- 54 (0x36) --><KEYWORD1>istore</KEYWORD1>\r
+ <!-- 55 (0x37) --><KEYWORD1>lstore</KEYWORD1>\r
+ <!-- 56 (0x38) --><KEYWORD1>fstore</KEYWORD1>\r
+ <!-- 57 (0x39) --><KEYWORD1>dstore</KEYWORD1>\r
+ <!-- 58 (0x3a) --><KEYWORD1>astore</KEYWORD1>\r
+ <!-- 59 (0x3b) --><KEYWORD1>istore_0</KEYWORD1>\r
+ <!-- 60 (0x3c) --><KEYWORD1>istore_1</KEYWORD1>\r
+ <!-- 61 (0x3d) --><KEYWORD1>istore_2</KEYWORD1>\r
+ <!-- 62 (0x3e) --><KEYWORD1>istore_3</KEYWORD1>\r
+ <!-- 63 (0x3f) --><KEYWORD1>lstore_0</KEYWORD1>\r
+ <!-- 64 (0x40) --><KEYWORD1>lstore_1</KEYWORD1>\r
+ <!-- 65 (0x41) --><KEYWORD1>lstore_2</KEYWORD1>\r
+ <!-- 66 (0x42) --><KEYWORD1>lstore_3</KEYWORD1>\r
+ <!-- 67 (0x43) --><KEYWORD1>fstore_0</KEYWORD1>\r
+ <!-- 68 (0x44) --><KEYWORD1>fstore_1</KEYWORD1>\r
+ <!-- 69 (0x45) --><KEYWORD1>fstore_2</KEYWORD1>\r
+ <!-- 70 (0x46) --><KEYWORD1>fstore_3</KEYWORD1>\r
+ <!-- 71 (0x47) --><KEYWORD1>dstore_0</KEYWORD1>\r
+ <!-- 72 (0x48) --><KEYWORD1>dstore_1</KEYWORD1>\r
+ <!-- 73 (0x49) --><KEYWORD1>dstore_2</KEYWORD1>\r
+ <!-- 74 (0x4a) --><KEYWORD1>dstore_3</KEYWORD1>\r
+ <!-- 75 (0x4b) --><KEYWORD1>astore_0</KEYWORD1>\r
+ <!-- 76 (0x4c) --><KEYWORD1>astore_1</KEYWORD1>\r
+ <!-- 77 (0x4d) --><KEYWORD1>astore_2</KEYWORD1>\r
+ <!-- 78 (0x4e) --><KEYWORD1>astore_3</KEYWORD1>\r
+ <!-- 79 (0x4f) --><KEYWORD1>iastore</KEYWORD1>\r
+ <!-- 80 (0x50) --><KEYWORD1>lastore</KEYWORD1>\r
+ <!-- 81 (0x51) --><KEYWORD1>fastore</KEYWORD1>\r
+ <!-- 82 (0x52) --><KEYWORD1>dastore</KEYWORD1>\r
+ <!-- 83 (0x53) --><KEYWORD1>aastore</KEYWORD1>\r
+ <!-- 84 (0x54) --><KEYWORD1>bastore</KEYWORD1>\r
+ <!-- 85 (0x55) --><KEYWORD1>castore</KEYWORD1>\r
+ <!-- 86 (0x56) --><KEYWORD1>sastore</KEYWORD1>\r
+ <!-- 87 (0x57) --><KEYWORD1>pop</KEYWORD1>\r
+ <!-- 88 (0x58) --><KEYWORD1>pop2</KEYWORD1>\r
+ <!-- 089 (0x59) --><KEYWORD1>dup</KEYWORD1>\r
+ <!-- 090 (0x5a) --><KEYWORD1>dup_x1</KEYWORD1>\r
+ <!-- 091 (0x5b) --><KEYWORD1>dup_x2</KEYWORD1>\r
+ <!-- 092 (0x5c) --><KEYWORD1>dup2</KEYWORD1>\r
+ <!-- 093 (0x5d) --><KEYWORD1>dup2_x1</KEYWORD1>\r
+ <!-- 094 (0x5e) --><KEYWORD1>dup2_x2</KEYWORD1>\r
+ <!-- 095 (0x5f) --><KEYWORD1>swap</KEYWORD1>\r
+ <!-- 096 (0x60) --><KEYWORD1>iadd</KEYWORD1>\r
+ <!-- 097 (0x61) --><KEYWORD1>ladd</KEYWORD1>\r
+ <!-- 098 (0x62) --><KEYWORD1>fadd</KEYWORD1>\r
+ <!-- 099 (0x63) --><KEYWORD1>dadd</KEYWORD1>\r
+ <!-- 100 (0x64) --><KEYWORD1>isub</KEYWORD1>\r
+ <!-- 101 (0x65) --><KEYWORD1>lsub</KEYWORD1>\r
+ <!-- 102 (0x66) --><KEYWORD1>fsub</KEYWORD1>\r
+ <!-- 103 (0x67) --><KEYWORD1>dsub</KEYWORD1>\r
+ <!-- 104 (0x68) --><KEYWORD1>imul</KEYWORD1>\r
+ <!-- 105 (0x69) --><KEYWORD1>lmul</KEYWORD1>\r
+ <!-- 106 (0x6a) --><KEYWORD1>fmul</KEYWORD1>\r
+ <!-- 107 (0x6b) --><KEYWORD1>dmul</KEYWORD1>\r
+ <!-- 108 (0x6c) --><KEYWORD1>idiv</KEYWORD1>\r
+ <!-- 109 (0x6d) --><KEYWORD1>ldiv</KEYWORD1>\r
+ <!-- 110 (0x6e) --><KEYWORD1>fdiv</KEYWORD1>\r
+ <!-- 111 (0x6f) --><KEYWORD1>ddiv</KEYWORD1>\r
+ <!-- 112 (0x70) --><KEYWORD1>irem</KEYWORD1>\r
+ <!-- 113 (0x71) --><KEYWORD1>lrem</KEYWORD1>\r
+ <!-- 114 (0x72) --><KEYWORD1>frem</KEYWORD1>\r
+ <!-- 115 (0x73) --><KEYWORD1>drem</KEYWORD1>\r
+ <!-- 116 (0x74) --><KEYWORD1>ineg</KEYWORD1>\r
+ <!-- 117 (0x75) --><KEYWORD1>lneg</KEYWORD1>\r
+ <!-- 118 (0x76) --><KEYWORD1>fneg</KEYWORD1>\r
+ <!-- 119 (0x77) --><KEYWORD1>dneg</KEYWORD1>\r
+ <!-- 120 (0x78) --><KEYWORD1>ishl</KEYWORD1>\r
+ <!-- 121 (0x79) --><KEYWORD1>lshl</KEYWORD1>\r
+ <!-- 122 (0x7a) --><KEYWORD1>ishr</KEYWORD1>\r
+ <!-- 123 (0x7b) --><KEYWORD1>lshr</KEYWORD1>\r
+ <!-- 124 (0x7c) --><KEYWORD1>iushr</KEYWORD1>\r
+ <!-- 125 (0x7d) --><KEYWORD1>lushr</KEYWORD1>\r
+ <!-- 126 (0x7e) --><KEYWORD1>iand</KEYWORD1>\r
+ <!-- 127 (0x7f) --><KEYWORD1>land</KEYWORD1>\r
+ <!-- 128 (0x80) --><KEYWORD1>ior</KEYWORD1>\r
+ <!-- 129 (0x81) --><KEYWORD1>lor</KEYWORD1>\r
+ <!-- 130 (0x82) --><KEYWORD1>ixor</KEYWORD1>\r
+ <!-- 131 (0x83) --><KEYWORD1>lxor</KEYWORD1>\r
+ <!-- 132 (0x84) --><KEYWORD1>iinc</KEYWORD1>\r
+ <!-- 133 (0x85) --><KEYWORD1>i2l</KEYWORD1>\r
+ <!-- 134 (0x86) --><KEYWORD1>i2f</KEYWORD1>\r
+ <!-- 135 (0x87) --><KEYWORD1>i2d</KEYWORD1>\r
+ <!-- 136 (0x88) --><KEYWORD1>l2i</KEYWORD1>\r
+ <!-- 137 (0x89) --><KEYWORD1>l2f</KEYWORD1>\r
+ <!-- 138 (0x8a) --><KEYWORD1>l2d</KEYWORD1>\r
+ <!-- 139 (0x8b) --><KEYWORD1>f2i</KEYWORD1>\r
+ <!-- 140 (0x8c) --><KEYWORD1>f2l</KEYWORD1>\r
+ <!-- 141 (0x8d) --><KEYWORD1>f2d</KEYWORD1>\r
+ <!-- 142 (0x8e) --><KEYWORD1>d2i</KEYWORD1>\r
+ <!-- 143 (0x8f) --><KEYWORD1>d2l</KEYWORD1>\r
+ <!-- 144 (0x90) --><KEYWORD1>d2f</KEYWORD1>\r
+ <!-- 145 (0x91) --><KEYWORD1>i2b</KEYWORD1>\r
+ <!-- 146 (0x92) --><KEYWORD1>i2c</KEYWORD1>\r
+ <!-- 147 (0x93) --><KEYWORD1>i2s</KEYWORD1>\r
+ <!-- 148 (0x94) --><KEYWORD1>lcmp</KEYWORD1>\r
+ <!-- 149 (0x95) --><KEYWORD1>fcmpl</KEYWORD1>\r
+ <!-- 150 (0x96) --><KEYWORD1>fcmpg</KEYWORD1>\r
+ <!-- 151 (0x97) --><KEYWORD1>dcmpl</KEYWORD1>\r
+ <!-- 152 (0x98) --><KEYWORD1>dcmpg</KEYWORD1>\r
+ <!-- 153 (0x99) --><KEYWORD1>ifeq</KEYWORD1>\r
+ <!-- 154 (0x9a) --><KEYWORD1>ifne</KEYWORD1>\r
+ <!-- 155 (0x9b) --><KEYWORD1>iflt</KEYWORD1>\r
+ <!-- 156 (0x9c) --><KEYWORD1>ifge</KEYWORD1>\r
+ <!-- 157 (0x9d) --><KEYWORD1>ifgt</KEYWORD1>\r
+ <!-- 158 (0x9e) --><KEYWORD1>ifle</KEYWORD1>\r
+ <!-- 159 (0x9f) --><KEYWORD1>if_icmpeq</KEYWORD1>\r
+ <!-- 160 (0xa0) --><KEYWORD1>if_icmpne</KEYWORD1>\r
+ <!-- 161 (0xa1) --><KEYWORD1>if_icmplt</KEYWORD1>\r
+ <!-- 162 (0xa2) --><KEYWORD1>if_icmpge</KEYWORD1>\r
+ <!-- 163 (0xa3) --><KEYWORD1>if_icmpgt</KEYWORD1>\r
+ <!-- 164 (0xa4) --><KEYWORD1>if_icmple</KEYWORD1>\r
+ <!-- 165 (0xa5) --><KEYWORD1>if_acmpeq</KEYWORD1>\r
+ <!-- 166 (0xa6) --><KEYWORD1>if_acmpne</KEYWORD1>\r
+ <!-- 167 (0xa7) --><KEYWORD1>goto</KEYWORD1>\r
+ <!-- 168 (0xa8) --><KEYWORD1>jsr</KEYWORD1>\r
+ <!-- 169 (0xa9) --><KEYWORD1>ret</KEYWORD1>\r
+ <!-- 170 (0xaa) --><KEYWORD1>tableswitch</KEYWORD1>\r
+ <!-- 171 (0xab) --><KEYWORD1>lookupswitch</KEYWORD1>\r
+ <!-- 172 (0xac) --><KEYWORD1>ireturn</KEYWORD1>\r
+ <!-- 173 (0xad) --><KEYWORD1>lreturn</KEYWORD1>\r
+ <!-- 174 (0xae) --><KEYWORD1>freturn</KEYWORD1>\r
+ <!-- 175 (0xaf) --><KEYWORD1>dreturn</KEYWORD1>\r
+ <!-- 176 (0xb0) --><KEYWORD1>areturn</KEYWORD1>\r
+ <!-- 177 (0xb1) --><KEYWORD1>return</KEYWORD1>\r
+ <!-- 178 (0xb2) --><KEYWORD1>getstatic</KEYWORD1>\r
+ <!-- 179 (0xb3) --><KEYWORD1>putstatic</KEYWORD1>\r
+ <!-- 180 (0xb4) --><KEYWORD1>getfield</KEYWORD1>\r
+ <!-- 181 (0xb5) --><KEYWORD1>putfield</KEYWORD1>\r
+ <!-- 182 (0xb6) --><KEYWORD1>invokevirtual</KEYWORD1>\r
+ <!-- 183 (0xb7) --><KEYWORD1>invokespecial</KEYWORD1>\r
+ <!-- 184 (0xb8) --><KEYWORD1>invokestatic</KEYWORD1>\r
+ <!-- 185 (0xb9) --><KEYWORD1>invokeinterface</KEYWORD1>\r
+ <!-- 186 (0xba) --><!-- xxxunusedxxx -->\r
+ <!-- 187 (0xbb) --><KEYWORD1>new</KEYWORD1>\r
+ <!-- 188 (0xbc) --><KEYWORD1>newarray</KEYWORD1>\r
+ <!-- 189 (0xbd) --><KEYWORD1>anewarray</KEYWORD1>\r
+ <!-- 190 (0xbe) --><KEYWORD1>arraylength</KEYWORD1>\r
+ <!-- 191 (0xbf) --><KEYWORD1>athrow</KEYWORD1>\r
+ <!-- 192 (0xc0) --><KEYWORD1>checkcast</KEYWORD1>\r
+ <!-- 193 (0xc1) --><KEYWORD1>instanceof</KEYWORD1>\r
+ <!-- 194 (0xc2) --><KEYWORD1>monitorenter</KEYWORD1>\r
+ <!-- 195 (0xc3) --><KEYWORD1>monitorexit</KEYWORD1>\r
+ <!-- 196 (0xc4) --><KEYWORD1>wide</KEYWORD1>\r
+ <!-- 197 (0xc5) --><KEYWORD1>multianewarray</KEYWORD1>\r
+ <!-- 198 (0xc6) --><KEYWORD1>ifnull</KEYWORD1>\r
+ <!-- 199 (0xc7) --><KEYWORD1>ifnonnull</KEYWORD1>\r
+ <!-- 200 (0xc8) --><KEYWORD1>goto_w</KEYWORD1>\r
+ <!-- 201 (0xc9) --><KEYWORD1>jsr_w</KEYWORD1>\r
+\r
+ <!-- Reserved opcodes: -->\r
+ <!-- 202 (0xca) --><KEYWORD1>breakpoint</KEYWORD1>\r
+ <!-- 254 (0xfe) --><KEYWORD1>impdep1</KEYWORD1>\r
+ <!-- 255 (0xff) --><KEYWORD1>impdep2</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- BibTeX mode, by Thomas Alspaugh alspaugh@ics.uci.edu, 2004Mar25 v1.1 -->\r
+<!-- Catalog entry (suggested)\r
+<MODE NAME="BibTeX" FILE="bibtex.xml"\r
+ FILE_NAME_GLOB="*.bib" />\r
+ -->\r
+<!--\r
+ This BibTeX mode highlights the fields for each entry type to distinguish\r
+ required, optional, or other fields from Lamport. \r
+ I have added several commonly-accepted fields (highlighted in yet another\r
+ color); these are\r
+\r
+ abstract\r
+ annotation\r
+ day\r
+ keywords\r
+ lccn\r
+ location\r
+ references\r
+ url\r
+\r
+ The month name abbreviations are highlighted (jan, feb, mar, ...).\r
+ Escaped quotes (as in {\"o}) are treated correctly.\r
+ Text may be quoted "" or braced {} and may contain \{\}.\r
+ Entries may be braced {} or parenthesized ().\r
+ @strings are highlighted correctly.\r
+ .\r
+ Comments and suggestions are welcome.\r
+ Enjoy!\r
+ -->\r
+<!-- Things BibTeX mode does not do:\r
+ - highlight keys, which must appear after the { or ( \r
+ and match [a-zA-Z0-9.:;?!`'()[\]\-/*@]+\r
+ -->\r
+<!-- Use of token types:\r
+ COMMENT1 % comments\r
+ FUNCTION entries\r
+ KEYWORD1 additional fields\r
+ KEYWORD2 Lamport fields neither required nor optional\r
+ KEYWORD3 Lamport fields optional\r
+ KEYWORD4 Lamport fields required\r
+ LITERAL1 "text", months, unquoted numbers\r
+ LITERAL2 {text}\r
+ LITERAL3 \{text\}\r
+ OPERATOR = ,\r
+ -->\r
+<!-- bibtex.xml is generated automatically from a summary of Lamport \r
+ "LaTeX : A document preparation system : User guide and reference manual",\r
+ 1994 (LaTeX2e) edition, appendix B, using a Perl scripts. -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ \r
+ <!-- Entry types. Each entry type has its own ruleset. -->\r
+ <!-- entry: FUNCTION -->\r
+ <SPAN TYPE="FUNCTION" DELEGATE="article" ><BEGIN>@article{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="article" ><BEGIN>@article(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="book" ><BEGIN>@book{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="book" ><BEGIN>@book(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="booklet" ><BEGIN>@booklet{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="booklet" ><BEGIN>@booklet(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="conference" ><BEGIN>@conference{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="conference" ><BEGIN>@conference(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="inbook" ><BEGIN>@inbook{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="inbook" ><BEGIN>@inbook(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="incollection" ><BEGIN>@incollection{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="incollection" ><BEGIN>@incollection(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="inproceedings"><BEGIN>@inproceedings{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="inproceedings"><BEGIN>@inproceedings(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="manual" ><BEGIN>@manual{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="manual" ><BEGIN>@manual(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="mastersthesis"><BEGIN>@mastersthesis{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="mastersthesis"><BEGIN>@mastersthesis(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="misc" ><BEGIN>@misc{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="misc" ><BEGIN>@misc(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="phdthesis" ><BEGIN>@phdthesis{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="phdthesis" ><BEGIN>@phdthesis(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="proceedings" ><BEGIN>@proceedings{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="proceedings" ><BEGIN>@proceedings(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="techreport" ><BEGIN>@techreport{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="techreport" ><BEGIN>@techreport(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="unpublished" ><BEGIN>@unpublished{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="unpublished" ><BEGIN>@unpublished(</BEGIN><END>)</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="string" ><BEGIN>@string{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="FUNCTION" DELEGATE="string" ><BEGIN>@string(</BEGIN><END>)</END></SPAN>\r
+ \r
+ </RULES>\r
+\r
+<RULES SET="article">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>journal</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>pages</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>address</KEYWORD2>\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="book">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>editor</KEYWORD4>\r
+ <KEYWORD4>publisher</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>edition</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="booklet">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>author</KEYWORD3>\r
+ <KEYWORD3>howpublished</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>year</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="conference">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>booktitle</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>editor</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>organization</KEYWORD3>\r
+ <KEYWORD3>pages</KEYWORD3>\r
+ <KEYWORD3>publisher</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="inbook">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>chapter</KEYWORD4>\r
+ <KEYWORD4>editor</KEYWORD4>\r
+ <KEYWORD4>pages</KEYWORD4>\r
+ <KEYWORD4>publisher</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>edition</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="incollection">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>booktitle</KEYWORD4>\r
+ <KEYWORD4>publisher</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>chapter</KEYWORD3>\r
+ <KEYWORD3>edition</KEYWORD3>\r
+ <KEYWORD3>editor</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>pages</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="inproceedings">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>booktitle</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>editor</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>organization</KEYWORD3>\r
+ <KEYWORD3>pages</KEYWORD3>\r
+ <KEYWORD3>publisher</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="manual">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>author</KEYWORD3>\r
+ <KEYWORD3>edition</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>organization</KEYWORD3>\r
+ <KEYWORD3>year</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="mastersthesis">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>school</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="misc">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <!-- optional -->\r
+ <KEYWORD3>author</KEYWORD3>\r
+ <KEYWORD3>howpublished</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>year</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>address</KEYWORD2>\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="phdthesis">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>school</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="proceedings">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>editor</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>organization</KEYWORD3>\r
+ <KEYWORD3>publisher</KEYWORD3>\r
+ <KEYWORD3>series</KEYWORD3>\r
+ <KEYWORD3>volume</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>author</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="techreport">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>institution</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <KEYWORD4>year</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>note</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+<RULES SET="unpublished">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ_REGEXP TYPE="LITERAL1" HASH_CHARS="123456789" AT_WORD_START="TRUE">[1-9][0-9]*</SEQ_REGEXP>\r
+ <KEYWORDS>\r
+ <!-- required -->\r
+ <KEYWORD4>author</KEYWORD4>\r
+ <KEYWORD4>note</KEYWORD4>\r
+ <KEYWORD4>title</KEYWORD4>\r
+ <!-- optional -->\r
+ <KEYWORD3>month</KEYWORD3>\r
+ <KEYWORD3>year</KEYWORD3>\r
+ <!-- others -->\r
+ <KEYWORD2>address</KEYWORD2>\r
+ <KEYWORD2>annote</KEYWORD2>\r
+ <KEYWORD2>booktitle</KEYWORD2>\r
+ <KEYWORD2>chapter</KEYWORD2>\r
+ <KEYWORD2>crossref</KEYWORD2>\r
+ <KEYWORD2>edition</KEYWORD2>\r
+ <KEYWORD2>editor</KEYWORD2>\r
+ <KEYWORD2>howpublished</KEYWORD2>\r
+ <KEYWORD2>institution</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>organization</KEYWORD2>\r
+ <KEYWORD2>pages</KEYWORD2>\r
+ <KEYWORD2>publisher</KEYWORD2>\r
+ <KEYWORD2>school</KEYWORD2>\r
+ <KEYWORD2>series</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <!-- not in Lamport but widely accepted -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>annotation</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>keywords</KEYWORD1>\r
+ <KEYWORD1>lccn</KEYWORD1>\r
+ <KEYWORD1>location</KEYWORD1>\r
+ <KEYWORD1>references</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <!-- total: 32 fields -->\r
+ <LITERAL1>jan</LITERAL1>\r
+ <LITERAL1>feb</LITERAL1>\r
+ <LITERAL1>mar</LITERAL1>\r
+ <LITERAL1>apr</LITERAL1>\r
+ <LITERAL1>may</LITERAL1>\r
+ <LITERAL1>jun</LITERAL1>\r
+ <LITERAL1>jul</LITERAL1>\r
+ <LITERAL1>aug</LITERAL1>\r
+ <LITERAL1>sep</LITERAL1>\r
+ <LITERAL1>oct</LITERAL1>\r
+ <LITERAL1>nov</LITERAL1>\r
+ <LITERAL1>dec</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="textbraced" DEFAULT="LITERAL2">\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="FALSE"><BEGIN>\{</BEGIN><END>\}</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SEQ TYPE="LITERAL3">\"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="textquoted" DEFAULT="LITERAL1">\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="FALSE"><BEGIN>\{</BEGIN><END>\}</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SEQ TYPE="LITERAL3">\"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="string" DEFAULT="LITERAL1">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="textquoted" NO_LINE_BREAK="FALSE"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="textbraced" NO_LINE_BREAK="FALSE"><BEGIN>{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="FALSE"><BEGIN>\{</BEGIN><END>\}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="LITERAL3">\"</SEQ>\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- This is based on ISO C++ Standard, 2003 and ISO C Standard, 1999.\r
+ The C++ keywords have been removed from this mode file, though. -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="(?!^\s*(#|//)).*(\b(if|while|for)\s*\(.*\)|\b(else|do)\b)[^{;]*$" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^\s*((case\b.*|[\p{Alpha}_][\p{Alnum}_]*)\s*:(?!:)).*$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+ <RULES\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <EOL_SPAN TYPE="KEYWORD2" AT_WHITESPACE_END="TRUE" DELEGATE="CPP">#</EOL_SPAN>\r
+\r
+ <IMPORT DELEGATE="LEX"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+ <!-- Comments, Trigraph, Alternate-Tokens -->\r
+ <RULES SET="LEX"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <!-- Doxygen comment, Javadoc style -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/**<</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">///<</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">///</EOL_SPAN>\r
+\r
+ <!-- Doxygen comment, Qt style -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/*!<</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/*!</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">//!<</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">//!</EOL_SPAN>\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>L"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>L'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- Trigraphs -->\r
+ <SEQ TYPE="LITERAL4">??(</SEQ>\r
+ <SEQ TYPE="LITERAL4">??/</SEQ>\r
+ <SEQ TYPE="LITERAL4">??)</SEQ>\r
+ <SEQ TYPE="LITERAL4">??'</SEQ>\r
+ <SEQ TYPE="LITERAL4">??<</SEQ>\r
+ <SEQ TYPE="LITERAL4">??!</SEQ>\r
+ <SEQ TYPE="LITERAL4">??></SEQ>\r
+ <SEQ TYPE="LITERAL4">??-</SEQ>\r
+ <SEQ TYPE="LITERAL4">??=</SEQ>\r
+\r
+ <!-- Alternate tokens -->\r
+ <SEQ TYPE="LITERAL4"><:</SEQ>\r
+ <SEQ TYPE="LITERAL4">:></SEQ>\r
+ <SEQ TYPE="LITERAL4"><%</SEQ>\r
+ <SEQ TYPE="LITERAL4">%></SEQ>\r
+ <SEQ TYPE="LITERAL4">%:</SEQ>\r
+\r
+ <!-- Labels.\r
+ This is a part of core language syntax, but must be here\r
+ because it can't work after SEQ for ':'. -->\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function-like macro or function calls.\r
+ This can't work after SEQ for '('. -->\r
+ <MARK_PREVIOUS\r
+ TYPE="FUNCTION"\r
+ MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Predefined macro names from ISO C++ Standard 2003 -->\r
+ <LITERAL2>__DATE__</LITERAL2>\r
+ <LITERAL2>__FILE__</LITERAL2>\r
+ <LITERAL2>__LINE__</LITERAL2>\r
+ <LITERAL2>__STDC_HOSTED__</LITERAL2>\r
+ <LITERAL2>__STDC_ISO_10646__</LITERAL2>\r
+ <LITERAL2>__STDC_VERSION__</LITERAL2>\r
+ <LITERAL2>__STDC__</LITERAL2>\r
+ <LITERAL2>__TIME__</LITERAL2>\r
+ <LITERAL2>__cplusplus</LITERAL2>\r
+ <!-- Standard library macro names from ISO C++ Standard 2003 -->\r
+ <!-- Hilight these to indicate accidental use of them\r
+ in user source. They may be valid, but should cause\r
+ future conflicts. -->\r
+ <LITERAL2>BUFSIZ</LITERAL2>\r
+ <LITERAL2>CLOCKS_PER_SEC</LITERAL2>\r
+ <LITERAL2>EDOM</LITERAL2>\r
+ <LITERAL2>EILSEQ</LITERAL2>\r
+ <LITERAL2>EOF</LITERAL2>\r
+ <LITERAL2>ERANGE</LITERAL2>\r
+ <LITERAL2>EXIT_FAILURE</LITERAL2>\r
+ <LITERAL2>EXIT_SUCCESS</LITERAL2>\r
+ <LITERAL2>FILENAME_MAX</LITERAL2>\r
+ <LITERAL2>FOPEN_MAX</LITERAL2>\r
+ <LITERAL2>HUGE_VAL</LITERAL2>\r
+ <LITERAL2>LC_ALL</LITERAL2>\r
+ <LITERAL2>LC_COLLATE</LITERAL2>\r
+ <LITERAL2>LC_CTYPE</LITERAL2>\r
+ <LITERAL2>LC_MONETARY</LITERAL2>\r
+ <LITERAL2>LC_NUMERIC</LITERAL2>\r
+ <LITERAL2>LC_TIME</LITERAL2>\r
+ <LITERAL2>L_tmpnam</LITERAL2>\r
+ <LITERAL2>MB_CUR_MAX</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>RAND_MAX</LITERAL2>\r
+ <LITERAL2>SEEK_CUR</LITERAL2>\r
+ <LITERAL2>SEEK_END</LITERAL2>\r
+ <LITERAL2>SEEK_SET</LITERAL2>\r
+ <LITERAL2>SIGABRT</LITERAL2>\r
+ <LITERAL2>SIGFPE</LITERAL2>\r
+ <LITERAL2>SIGILL</LITERAL2>\r
+ <LITERAL2>SIGINT</LITERAL2>\r
+ <LITERAL2>SIGSEGV</LITERAL2>\r
+ <LITERAL2>SIGTERM</LITERAL2>\r
+ <LITERAL2>SIG_DFL</LITERAL2>\r
+ <LITERAL2>SIG_ERR</LITERAL2>\r
+ <LITERAL2>SIG_IGN</LITERAL2>\r
+ <LITERAL2>TMP_MAX</LITERAL2>\r
+ <LITERAL2>WCHAR_MAX</LITERAL2>\r
+ <LITERAL2>WCHAR_MIN</LITERAL2>\r
+ <LITERAL2>WEOF</LITERAL2>\r
+ <LITERAL2>_IOFBF</LITERAL2>\r
+ <LITERAL2>_IOLBF</LITERAL2>\r
+ <LITERAL2>_IONBF</LITERAL2>\r
+ <LITERAL2>assert</LITERAL2>\r
+ <LITERAL2>errno</LITERAL2>\r
+ <LITERAL2>offsetof</LITERAL2>\r
+ <LITERAL2>setjmp</LITERAL2>\r
+ <LITERAL2>stderr</LITERAL2>\r
+ <LITERAL2>stdin</LITERAL2>\r
+ <LITERAL2>stdout</LITERAL2>\r
+ <LITERAL2>va_arg</LITERAL2>\r
+ <LITERAL2>va_end</LITERAL2>\r
+ <LITERAL2>va_start</LITERAL2>\r
+ <!-- Standard C library values from ISO C++ Standard 2003 -->\r
+ <!-- These are not explicitly defined as macro. But they like\r
+ to be due to compatibility with C library implementation.\r
+ So, treat them like standard library macro names. -->\r
+ <LITERAL2>CHAR_BIT</LITERAL2>\r
+ <LITERAL2>CHAR_MAX</LITERAL2>\r
+ <LITERAL2>CHAR_MIN</LITERAL2>\r
+ <LITERAL2>DBL_DIG</LITERAL2>\r
+ <LITERAL2>DBL_EPSILON</LITERAL2>\r
+ <LITERAL2>DBL_MANT_DIG</LITERAL2>\r
+ <LITERAL2>DBL_MAX</LITERAL2>\r
+ <LITERAL2>DBL_MAX_10_EXP</LITERAL2>\r
+ <LITERAL2>DBL_MAX_EXP</LITERAL2>\r
+ <LITERAL2>DBL_MIN</LITERAL2>\r
+ <LITERAL2>DBL_MIN_10_EXP</LITERAL2>\r
+ <LITERAL2>DBL_MIN_EXP</LITERAL2>\r
+ <LITERAL2>FLT_DIG</LITERAL2>\r
+ <LITERAL2>FLT_EPSILON</LITERAL2>\r
+ <LITERAL2>FLT_MANT_DIG</LITERAL2>\r
+ <LITERAL2>FLT_MAX</LITERAL2>\r
+ <LITERAL2>FLT_MAX_10_EXP</LITERAL2>\r
+ <LITERAL2>FLT_MAX_EXP</LITERAL2>\r
+ <LITERAL2>FLT_MIN</LITERAL2>\r
+ <LITERAL2>FLT_MIN_10_EXP</LITERAL2>\r
+ <LITERAL2>FLT_MIN_EXP</LITERAL2>\r
+ <LITERAL2>FLT_RADIX</LITERAL2>\r
+ <LITERAL2>FLT_ROUNDS</LITERAL2>\r
+ <LITERAL2>INT_MAX</LITERAL2>\r
+ <LITERAL2>INT_MIN</LITERAL2>\r
+ <LITERAL2>LDBL_DIG</LITERAL2>\r
+ <LITERAL2>LDBL_EPSILON</LITERAL2>\r
+ <LITERAL2>LDBL_MANT_DIG</LITERAL2>\r
+ <LITERAL2>LDBL_MAX</LITERAL2>\r
+ <LITERAL2>LDBL_MAX_10_EXP</LITERAL2>\r
+ <LITERAL2>LDBL_MAX_EXP</LITERAL2>\r
+ <LITERAL2>LDBL_MIN</LITERAL2>\r
+ <LITERAL2>LDBL_MIN_10_EXP</LITERAL2>\r
+ <LITERAL2>LDBL_MIN_EXP</LITERAL2>\r
+ <LITERAL2>LONG_MAX</LITERAL2>\r
+ <LITERAL2>LONG_MIN</LITERAL2>\r
+ <LITERAL2>MB_LEN_MAX</LITERAL2>\r
+ <LITERAL2>SCHAR_MAX</LITERAL2>\r
+ <LITERAL2>SCHAR_MIN</LITERAL2>\r
+ <LITERAL2>SHRT_MAX</LITERAL2>\r
+ <LITERAL2>SHRT_MIN</LITERAL2>\r
+ <LITERAL2>UCHAR_MAX</LITERAL2>\r
+ <LITERAL2>UINT_MAX</LITERAL2>\r
+ <LITERAL2>ULONG_MAX</LITERAL2>\r
+ <LITERAL2>USRT_MAX</LITERAL2>\r
+ <!-- Alternative representations of some operators\r
+ from ISO C++ Standard 2003 -->\r
+ <!-- These are separated from CORE because they are\r
+ available in the constant expressions after\r
+ #if and #elif preprocessor directives. -->\r
+ <KEYWORD3>and</KEYWORD3>\r
+ <KEYWORD3>and_eq</KEYWORD3>\r
+ <KEYWORD3>bitand</KEYWORD3>\r
+ <KEYWORD3>bitor</KEYWORD3>\r
+ <KEYWORD3>compl</KEYWORD3>\r
+ <KEYWORD3>not</KEYWORD3>\r
+ <KEYWORD3>not_eq</KEYWORD3>\r
+ <KEYWORD3>or</KEYWORD3>\r
+ <KEYWORD3>or_eq</KEYWORD3>\r
+ <KEYWORD3>xor</KEYWORD3>\r
+ <KEYWORD3>xor_eq</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Core language -->\r
+ <RULES SET="CORE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <KEYWORDS>\r
+ <!-- Types -->\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>enum</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>signed</KEYWORD3>\r
+ <KEYWORD3>struct</KEYWORD3>\r
+ <KEYWORD3>union</KEYWORD3>\r
+ <KEYWORD3>unsigned</KEYWORD3>\r
+ <!-- Keywords from ISO C++ Standard 2003 -->\r
+ <KEYWORD2>asm</KEYWORD2>\r
+ <KEYWORD1>auto</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD2>extern</KEYWORD2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>inline</KEYWORD1>\r
+ <KEYWORD1>register</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>sizeof</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <LITERAL2>true</LITERAL2>\r
+ <KEYWORD3>typedef</KEYWORD3>\r
+ <KEYWORD1>void</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <!-- Additional keywords from ISO C Standard(C99) -->\r
+ <KEYWORD3>restrict</KEYWORD3>\r
+ <KEYWORD3>_Bool</KEYWORD3>\r
+ <KEYWORD3>_Complex</KEYWORD3>\r
+ <KEYWORD3>_Pragma</KEYWORD3>\r
+ <KEYWORD3>_Imaginary</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Preprocessor specific rules -->\r
+ <RULES SET="CPP"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <EOL_SPAN_REGEXP HASH_CHAR="include" TYPE="MARKUP" DELEGATE="INCLUDE">include\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="define" TYPE="MARKUP" DELEGATE="DEFINE">define\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="endif" TYPE="MARKUP" DELEGATE="LEX">endif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="elif" TYPE="MARKUP" DELEGATE="CONDITION">elif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="if" TYPE="MARKUP" DELEGATE="CONDITION">if\b</EOL_SPAN_REGEXP>\r
+\r
+ <IMPORT DELEGATE="LEX"/>\r
+\r
+ <!-- Directives -->\r
+ <KEYWORDS>\r
+ <MARKUP>ifdef</MARKUP>\r
+ <MARKUP>ifndef</MARKUP>\r
+ <MARKUP>else</MARKUP>\r
+ <MARKUP>error</MARKUP>\r
+ <MARKUP>line</MARKUP>\r
+ <MARKUP>pragma</MARKUP>\r
+ <MARKUP>undef</MARKUP>\r
+ <MARKUP>warning</MARKUP>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- After #include directive -->\r
+ <!-- "\"s are not escaped. -->\r
+ <RULES SET="INCLUDE"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="LEX"/>\r
+ </RULES>\r
+\r
+ <!-- After #define directive -->\r
+ <!-- Almost same as the normal code,\r
+ except two additional operators # and ##. -->\r
+ <RULES SET="DEFINE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <IMPORT DELEGATE="LEX"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+ <!-- After #if or #elif directive -->\r
+ <!-- All constant expressions and a special operator\r
+ 'defined' is available. But the core language elements\r
+ (such as operator 'sizeof', type casting, etc...) are not. -->\r
+ <RULES SET="CONDITION"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <IMPORT DELEGATE="LEX"/>\r
+ <KEYWORDS>\r
+ <KEYWORD2>defined</KEYWORD2>\r
+ <!-- Both true and false are specially permitted by\r
+ ISO C++ Standard 2003 16.1p4 -->\r
+ <KEYWORD2>true</KEYWORD2>\r
+ <KEYWORD2>false</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- This is a mode catalog. Edit modes must be listed here, -->\r
+<!-- otherwise they will not be available to jEdit. -->\r
+\r
+<!DOCTYPE MODES SYSTEM "catalog.dtd">\r
+\r
+<MODES>\r
+\r
+<MODE NAME="actionscript" FILE="actionscript.xml"\r
+ FILE_NAME_GLOB="*.as" />\r
+\r
+<MODE NAME="ada95" FILE="ada95.xml"\r
+ FILE_NAME_GLOB="*.{ada,adb,ads}" />\r
+\r
+<MODE NAME="antlr" FILE="antlr.xml"\r
+ FILE_NAME_GLOB="*.g" />\r
+\r
+<MODE NAME="apacheconf" FILE="apacheconf.xml"\r
+ FILE_NAME_GLOB="*httpd.conf" />\r
+\r
+\r
+<MODE NAME="apdl" FILE="apdl.xml"\r
+ FILE_NAME_GLOB="*.{ans,inp,mak,mac}" />\r
+\r
+<MODE NAME="applescript" FILE="applescript.xml"\r
+ FILE_NAME_GLOB="*.applescript" />\r
+\r
+<MODE NAME="asp" FILE="asp.xml"\r
+ FILE_NAME_GLOB="*.{asp,asa}" />\r
+\r
+<MODE NAME="aspect-j" FILE="aspect-j.xml"\r
+ FILE_NAME_GLOB="*.aj" />\r
+\r
+<MODE NAME="assembly-m68k" FILE="assembly-m68k.xml" />\r
+\r
+<MODE NAME="assembly-macro32" FILE="assembly-macro32.xml"\r
+ FILE_NAME_GLOB="*.mar" />\r
+\r
+<MODE NAME="assembly-r2000" FILE="assembly-r2000.xml"\r
+ FILE_NAME_GLOB="*.mips" />\r
+\r
+<MODE NAME="assembly-parrot" FILE="assembly-parrot.xml"\r
+ FILE_NAME_GLOB="*.pasm" />\r
+\r
+<MODE NAME="assembly-x86" FILE="assembly-x86.xml"\r
+ FILE_NAME_GLOB="*.asm" />\r
+\r
+<MODE NAME="awk" FILE="awk.xml"\r
+ FILE_NAME_GLOB="*.awk"\r
+ FIRST_LINE_GLOB="#!*awk*" />\r
+\r
+<MODE NAME="b" FILE="b.xml"\r
+ FILE_NAME_GLOB="*.{imp,ref,mch}" />\r
+\r
+<MODE NAME="batch" FILE="batch.xml"\r
+ FILE_NAME_GLOB="*.{bat,cmd}" />\r
+\r
+<MODE NAME="bbj" FILE="bbj.xml"\r
+ FILE_NAME_GLOB="*.bbj" />\r
+\r
+<!-- if anyone knows a file name glob that can be used with this mode,\r
+ please let me know -->\r
+<MODE NAME="bcel" FILE="bcel.xml" />\r
+\r
+<!-- Now that BeanShell 2.0 supports class declarations, its syntax is\r
+ almost identical to Java. -->\r
+<MODE NAME="beanshell" FILE="java.xml"\r
+ FILE_NAME_GLOB="*.bsh" />\r
+\r
+<MODE NAME="bibtex" FILE="bibtex.xml"\r
+ FILE_NAME_GLOB="*.bib" />\r
+\r
+<!-- We let Objective C mode highlight .h files -->\r
+<MODE NAME="c" FILE="c.xml"\r
+ FILE_NAME_GLOB="*.c" />\r
+\r
+<MODE NAME="chill" FILE="chill.xml"\r
+ FILE_NAME_GLOB="*.{chl,mpol}" />\r
+\r
+<MODE NAME="cil" FILE="cil.xml"\r
+ FILE_NAME_GLOB="*.il" />\r
+\r
+<MODE NAME="clips" FILE="clips.xml"\r
+ FILE_NAME_GLOB="*.clp" />\r
+\r
+<MODE NAME="cobol" FILE="cobol.xml"\r
+ FILE_NAME_GLOB="*.cbl" />\r
+\r
+<MODE NAME="coldfusion" FILE="coldfusion.xml"\r
+ FILE_NAME_GLOB="*.{cfm,dbm,cfc}" />\r
+\r
+<MODE NAME="c++" FILE="cplusplus.xml"\r
+ FILE_NAME_GLOB="*.{cc,cpp,hh,hpp,cxx}" />\r
+\r
+<MODE NAME="c#" FILE="csharp.xml"\r
+ FILE_NAME_GLOB="*.cs" />\r
+\r
+<MODE NAME="css" FILE="css.xml"\r
+ FILE_NAME_GLOB="*.css" />\r
+\r
+<MODE NAME="csv" FILE="csv.xml"\r
+ FILE_NAME_GLOB="*.csv" />\r
+\r
+<MODE NAME="cvs-commit" FILE="cvs-commit.xml"\r
+ FILE_NAME_GLOB="cvs*.tmp"/>\r
+\r
+<MODE NAME="d" FILE="d.xml"\r
+ FILE_NAME_GLOB="*.d" />\r
+\r
+<MODE NAME="django" FILE="django.xml"/>\r
+\r
+<MODE NAME="doxygen" FILE="doxygen.xml"\r
+ FILE_NAME_GLOB="doxyfile*" />\r
+\r
+<MODE NAME="dsssl" FILE="dsssl.xml"\r
+ FILE_NAME_GLOB="*.dsl" />\r
+\r
+<MODE NAME="embperl" FILE="embperl.xml"\r
+ FILE_NAME_GLOB="*.epl"/>\r
+\r
+<MODE NAME="erlang" FILE="erlang.xml"\r
+ FILE_NAME_GLOB="*.erl"/>\r
+\r
+<MODE NAME="eiffel" FILE="eiffel.xml"\r
+ FILE_NAME_GLOB="*.e" />\r
+\r
+<MODE NAME="fhtml" FILE="fhtml.xml"\r
+ FILE_NAME_GLOB="*.{furnace,fhtml}" />\r
+\r
+<MODE NAME="factor" FILE="factor.xml"\r
+ FILE_NAME_GLOB="*.factor"/>\r
+\r
+<MODE NAME="forth" FILE="forth.xml"\r
+ FILE_NAME_GLOB="*.f" />\r
+\r
+<MODE NAME="fortran" FILE="fortran.xml"\r
+ FILE_NAME_GLOB="*.{for,fort,f77,f90}" />\r
+\r
+<MODE NAME="foxpro" FILE="foxpro.xml"\r
+ FILE_NAME_GLOB="*.prg" />\r
+\r
+<MODE NAME="freemarker" FILE="freemarker.xml"\r
+ FILE_NAME_GLOB="*.ftl"\r
+ FIRST_LINE_GLOB="<\#ftl*"/>\r
+\r
+<MODE NAME="gettext" FILE="gettext.xml"\r
+ FILE_NAME_GLOB="*.{po,pot}" />\r
+\r
+<MODE NAME="gnuplot" FILE="gnuplot.xml"\r
+ FILE_NAME_GLOB="*.{dem,plt}" />\r
+\r
+<MODE NAME="groovy" FILE="groovy.xml"\r
+ FILE_NAME_GLOB="*.{groovy,grv}"/>\r
+\r
+<MODE NAME="haskell" FILE="haskell.xml"\r
+ FILE_NAME_GLOB="*.hs" />\r
+\r
+<!-- Used by Andre Kaplan's Hex plugin -->\r
+<MODE NAME="hex" FILE="hex.xml" />\r
+\r
+<MODE NAME="hlsl" FILE="hlsl.xml"\r
+ FILE_NAME_GLOB="*.fx" />\r
+\r
+<MODE NAME="htaccess" FILE="htaccess.xml"\r
+ FILE_NAME_GLOB=".htaccess" />\r
+\r
+<MODE NAME="html" FILE="html.xml"\r
+ FILE_NAME_GLOB="*.{html,htm,hta}" />\r
+\r
+<MODE NAME="i4gl" FILE="i4gl.xml"\r
+ FILE_NAME_GLOB="*.4gl" />\r
+\r
+<MODE NAME="icon" FILE="icon.xml"\r
+ FILE_NAME_GLOB="*.icn" />\r
+\r
+<MODE NAME="idl" FILE="idl.xml"\r
+ FILE_NAME_GLOB="*.idl" />\r
+\r
+<MODE NAME="inform" FILE="inform.xml"\r
+ FILE_NAME_GLOB="*.inf" />\r
+\r
+<MODE NAME="inno-setup" FILE="inno-setup.xml"\r
+ FILE_NAME_GLOB="*.iss" />\r
+\r
+<MODE NAME="ini" FILE="ini.xml"\r
+ FILE_NAME_GLOB="*.{ini,reg}" />\r
+\r
+<MODE NAME="interlis" FILE="interlis.xml"\r
+ FILE_NAME_GLOB="*.ili" />\r
+\r
+<MODE NAME="io" FILE="io.xml"\r
+ FILE_NAME_GLOB="*.io" />\r
+\r
+<MODE NAME="javacc" FILE="javacc.xml"\r
+ FILE_NAME_GLOB="*.{jj,jjt}"/>\r
+\r
+<MODE NAME="java" FILE="java.xml"\r
+ FILE_NAME_GLOB="*.java" />\r
+\r
+<MODE NAME="javascript" FILE="javascript.xml"\r
+ FILE_NAME_GLOB="*.js" />\r
+\r
+<MODE NAME="jcl" FILE="jcl.xml"\r
+ FILE_NAME_GLOB="*.jcl" />\r
+\r
+<MODE NAME="jhtml" FILE="jhtml.xml"\r
+ FILE_NAME_GLOB="*.jhtml" />\r
+\r
+<MODE NAME="jmk" FILE="jmk.xml"\r
+ FILE_NAME_GLOB="*.jmk" />\r
+\r
+<MODE NAME="jsp" FILE="jsp.xml"\r
+ FILE_NAME_GLOB="*.{jsp,jsf,jspf}" />\r
+\r
+<!-- Note that a generic 'tex.xml' is included as well, for minimal\r
+ plain TeX/AMSTeX highlighting. -->\r
+\r
+<MODE NAME="latex" FILE="latex.xml"\r
+ FILE_NAME_GLOB="*.{tex,sty,ltx}" />\r
+\r
+<MODE NAME="lilypond" FILE="lilypond.xml"\r
+ FILE_NAME_GLOB="*.ly" />\r
+\r
+<MODE NAME="lisp" FILE="lisp.xml"\r
+ FILE_NAME_GLOB="*.{lisp,lsp,el}" />\r
+\r
+<MODE NAME="literate-haskell" FILE="literate-haskell.xml"\r
+ FILE_NAME_GLOB="*.lhs" />\r
+\r
+<MODE NAME="lotos" FILE="lotos.xml"\r
+ FILE_NAME_GLOB="*.{lot,lotos}"/>\r
+\r
+<MODE NAME="lua" FILE="lua.xml"\r
+ FILE_NAME_GLOB="*.lua" />\r
+\r
+<MODE NAME="mail" FILE="mail.xml" />\r
+\r
+<MODE NAME="makefile" FILE="makefile.xml"\r
+ FILE_NAME_GLOB="*makefile" />\r
+\r
+<MODE NAME="maple" FILE="maple.xml"\r
+ FILE_NAME_GLOB="*.{mpl,mws}" />\r
+\r
+<MODE NAME="ml" FILE="ml.xml"\r
+ FILE_NAME_GLOB="*.{sml,ml}" />\r
+\r
+<MODE NAME="modula3" FILE="modula3.xml"\r
+ FILE_NAME_GLOB="*.[im]3" />\r
+\r
+<MODE NAME="moin" FILE="moin.xml"\r
+ FILE_NAME_GLOB="*.moin" />\r
+\r
+<MODE NAME="mqsc" FILE="mqsc.xml"\r
+ FILE_NAME_GLOB="*.mqsc" />\r
+\r
+<MODE NAME="myghty" FILE="myghty.xml"\r
+ FILE_NAME_GLOB="{autohandler,dhandler,*.myt}"/>\r
+\r
+<MODE NAME="mysql" FILE="mysql.xml" />\r
+\r
+<MODE NAME="netrexx" FILE="netrexx.xml"\r
+ FILE_NAME_GLOB="*.nrx" />\r
+\r
+<MODE NAME="nqc" FILE="nqc.xml"\r
+ FILE_NAME_GLOB="*.nqc" />\r
+\r
+<MODE NAME="nsis2" FILE="nsis2.xml"\r
+ FILE_NAME_GLOB="*.{nsi,nsh}" />\r
+\r
+<MODE NAME="objective-c" FILE="objective-c.xml"\r
+ FILE_NAME_GLOB="*.[mh]" />\r
+\r
+<MODE NAME="objectrexx" FILE="objectrexx.xml"\r
+ FILE_NAME_GLOB="*.{rex,orx}" />\r
+\r
+<MODE NAME="occam" FILE="occam.xml"\r
+ FILE_NAME_GLOB="*.icc" />\r
+\r
+<MODE NAME="omnimark" FILE="omnimark.xml"\r
+ FILE_NAME_GLOB="*.x{om,in}" />\r
+\r
+<MODE NAME="pascal" FILE="pascal.xml"\r
+ FILE_NAME_GLOB="*.{pas,dpr,dpk}" />\r
+\r
+<MODE NAME="patch" FILE="patch.xml"\r
+ FILE_NAME_GLOB="*.{diff,patch}" />\r
+\r
+<MODE NAME="perl" FILE="perl.xml"\r
+ FILE_NAME_GLOB="*.p[lm]"\r
+ FIRST_LINE_GLOB="#!/*perl*" />\r
+\r
+<MODE NAME="php" FILE="php.xml"\r
+ FILE_NAME_GLOB="*.{php3,php4,php,phtml,inc}"\r
+ FIRST_LINE_GLOB="{<?php*,#!/*php*}" />\r
+\r
+<MODE NAME="pike" FILE="pike.xml"\r
+ FILE_NAME_GLOB="*.{pike,pmod}" />\r
+\r
+<MODE NAME="pl-sql" FILE="pl-sql.xml"\r
+ FILE_NAME_GLOB="*.pls" />\r
+\r
+<MODE NAME="pl1" FILE="pl1.xml"\r
+ FILE_NAME_GLOB="*.pl[i1]" />\r
+\r
+<MODE NAME="pop11" FILE="pop11.xml"\r
+ FILE_NAME_GLOB="*.{p,pop11,p11}" />\r
+\r
+<MODE NAME="postscript" FILE="postscript.xml"\r
+ FILE_NAME_GLOB="*.{ps,eps}" />\r
+\r
+<MODE NAME="powerdynamo" FILE="powerdynamo.xml"\r
+ FILE_NAME_GLOB="*.{ssc,stm}" />\r
+\r
+<MODE NAME="povray" FILE="povray.xml"\r
+ FILE_NAME_GLOB="*.{pov,povray}" />\r
+\r
+<MODE NAME="prolog" FILE="prolog.xml"\r
+ FILE_NAME_GLOB="*.pro" />\r
+\r
+<MODE NAME="progress" FILE="progress.xml"\r
+ FILE_NAME_GLOB="*.[piw]" />\r
+\r
+<MODE NAME="properties" FILE="props.xml"\r
+ FILE_NAME_GLOB="*{properties,props}" />\r
+\r
+<MODE NAME="psp" FILE="psp.xml"\r
+ FILE_NAME_GLOB="*.psp" />\r
+\r
+<MODE NAME="ptl" FILE="ptl.xml"\r
+ FILE_NAME_GLOB="*.ptl"/>\r
+\r
+<MODE NAME="pvwave" FILE="pvwave.xml"\r
+ FILE_NAME_GLOB="*.jou" />\r
+\r
+<MODE NAME="pyrex" FILE="pyrex.xml"\r
+ FILE_NAME_GLOB="*.{pyx}" />\r
+\r
+<MODE NAME="python" FILE="python.xml"\r
+ FILE_NAME_GLOB="*.{py,pyw,sc}"\r
+ FIRST_LINE_GLOB="#!*/*python*" />\r
+\r
+<MODE NAME="rebol" FILE="rebol.xml"\r
+ FILE_NAME_GLOB="*.r" />\r
+\r
+<MODE NAME="redcode" FILE="redcode.xml"\r
+ FILE_NAME_GLOB="*.{red,rc}" />\r
+\r
+<MODE NAME="relax-ng-compact" FILE="relax-ng-compact.xml"\r
+ FILE_NAME_GLOB="*.rnc" />\r
+\r
+<MODE NAME="renderman-rib" FILE="rib.xml"\r
+ FILE_NAME_GLOB="*.rib" />\r
+\r
+<MODE NAME="rd" FILE="rd.xml"\r
+ FILE_NAME_GLOB="*.rd" />\r
+\r
+<MODE NAME="rest" FILE="rest.xml"\r
+ FILE_NAME_GLOB="*.{rst,rest}"\r
+ FIRST_LINE_GLOB="{===,~~~}*"/>\r
+\r
+<MODE NAME="rhtml" FILE="rhtml.xml"\r
+ FILE_NAME_GLOB="*.rhtml" />\r
+\r
+<MODE NAME="rpm-spec" FILE="rpmspec.xml"\r
+ FILE_NAME_GLOB="*.spec" />\r
+\r
+<MODE NAME="rtf" FILE="rtf.xml"\r
+ FILE_NAME_GLOB="*.rtf" />\r
+\r
+<MODE NAME="ruby" FILE="ruby.xml"\r
+ FILE_NAME_GLOB="*.{rb,rbw}"\r
+ FIRST_LINE_GLOB="#!*/*ruby*" />\r
+\r
+<MODE NAME="rview" FILE="rview.xml"\r
+ FILE_NAME_GLOB="*.rvw" />\r
+\r
+<MODE NAME="s+" FILE="splus.xml"\r
+ FILE_NAME_GLOB="*.ssc" />\r
+\r
+<MODE NAME="s#" FILE="ssharp.xml"\r
+ FILE_NAME_GLOB="*.{ss,ssc,ssi,ssw,sts,aml}" />\r
+\r
+<MODE NAME="sas" FILE="sas.xml"\r
+ FILE_NAME_GLOB="*.sas" />\r
+\r
+<MODE NAME="scheme" FILE="scheme.xml"\r
+ FILE_NAME_GLOB="*.scm" />\r
+\r
+<MODE NAME="sgml" FILE="sgml.xml"\r
+ FILE_NAME_GLOB="*.{sgml,sgm,dtd}" />\r
+\r
+<MODE NAME="rcp" FILE="rcp.xml" FILE_NAME_GLOB="*.rcp" />\r
+\r
+<MODE NAME="shellscript" FILE="shellscript.xml"\r
+ FILE_NAME_GLOB="*.{csh,sh,bash}"\r
+ FIRST_LINE_GLOB="#!/*sh*" />\r
+\r
+<MODE NAME="shtml" FILE="shtml.xml"\r
+ FILE_NAME_GLOB="*.{shtml,shtm,ssi}" />\r
+\r
+<MODE NAME="slate" FILE="slate.xml"\r
+ FILE_NAME_GLOB="*.slate" />\r
+\r
+<MODE NAME="smalltalk" FILE="smalltalk.xml"\r
+ FILE_NAME_GLOB="*.{st,sources,changes}" />\r
+\r
+<MODE NAME="sdl/pr" FILE="sdl_pr.xml"\r
+ FILE_NAME_GLOB="*.pr"/>\r
+\r
+<MODE NAME="sql-loader" FILE="sql-loader.xml"\r
+ FILE_NAME_GLOB="*.ctl" />\r
+\r
+<MODE NAME="smi-mib" FILE="smi-mib.xml"\r
+ FILE_NAME_GLOB="*{.mib,-MIB.txt}" />\r
+\r
+<MODE NAME="sqr" FILE="sqr.xml"\r
+ FILE_NAME_GLOB="*.{sqr,sqc}" />\r
+\r
+<MODE NAME="squidconf" FILE="squidconf.xml"\r
+ FILE_NAME_GLOB="squid.conf" />\r
+\r
+<MODE NAME="svn-commit" FILE="svn-commit.xml"\r
+ FILE_NAME_GLOB="svn-commit*.tmp" />\r
+\r
+<MODE NAME="swig" FILE="swig.xml"\r
+ FILE_NAME_GLOB="*.{i,swg}" />\r
+\r
+<MODE NAME="tcl" FILE="tcl.xml"\r
+ FILE_NAME_GLOB="*.{tcl,tsh}" />\r
+\r
+<MODE NAME="texinfo" FILE="texinfo.xml"\r
+ FILE_NAME_GLOB="*.texi" />\r
+\r
+<MODE NAME="tex" FILE="tex.xml" />\r
+\r
+<MODE NAME="text" FILE="text.xml"\r
+ FILE_NAME_GLOB="*.txt" />\r
+\r
+<MODE NAME="tpl" FILE="tpl.xml"\r
+ FILE_NAME_GLOB="*.tpl" />\r
+\r
+<MODE NAME="transact-sql" FILE="tsql.xml"\r
+ FILE_NAME_GLOB="*.sql" />\r
+\r
+<MODE NAME="template-toolkit" FILE="tthtml.xml"\r
+ FILE_NAME_GLOB="*.tt{html,css,js}" />\r
+\r
+<MODE NAME="twiki" FILE="twiki.xml"\r
+ FILE_NAME_GLOB="*.twiki"/>\r
+\r
+<MODE NAME="typoscript" FILE="typoscript.xml"\r
+ FILE_NAME_GLOB="*.ts"/>\r
+\r
+<MODE NAME="uscript" FILE="uscript.xml"\r
+ FILE_NAME_GLOB="*.uc" />\r
+\r
+<MODE NAME="vbscript" FILE="vbscript.xml"\r
+ FILE_NAME_GLOB="*.{vbs,bas,cls}" />\r
+\r
+<MODE NAME="velocity" FILE="velocity.xml"\r
+ FILE_NAME_GLOB="*.vm" />\r
+\r
+<MODE NAME="verilog" FILE="verilog.xml"\r
+ FILE_NAME_GLOB="*.{ver,v}" />\r
+\r
+<MODE NAME="vhdl" FILE="vhdl.xml"\r
+ FILE_NAME_GLOB="*.vh*" />\r
+\r
+<!-- Great. AElfred doesn't support entities in attribute values,\r
+ but all other XML parsers complain if < appears. -->\r
+<MODE NAME="xml" FILE="xml.xml"\r
+ FILE_NAME_GLOB="*.{xml,xhtml,xsd}"\r
+ FIRST_LINE_GLOB="<\?xml*" />\r
+\r
+<MODE NAME="xq" FILE="xq.xml"\r
+ FILE_NAME_GLOB="*.x{q,qm,ql}" />\r
+\r
+<MODE NAME="xsl" FILE="xsl.xml"\r
+ FILE_NAME_GLOB="*.xsl" />\r
+\r
+<MODE NAME="zpt" FILE="zpt.xml"\r
+ FILE_NAME_GLOB="*.{pt,zpt}"/>\r
+\r
+<MODE NAME="rfc" FILE="rfc.xml" FILE_NAME_GLOB="rfc*.txt" />\r
+</MODES>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- CHILL mode by Rudolf Widmann (Rudi.Widmann@web.de)\r
+ CHILL = "CCITT High Level Programming Language" used for telecommunication programming\r
+ Pascal was used as reference.\r
+ Keywords = KEYWORD1\r
+ Directives = KEYWORD2.\r
+ Everything else as is-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- Compiler directives. -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><></BEGIN>\r
+ <END><></END>\r
+ </SPAN>\r
+ <!-- Normal comments. -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>H'</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved words -->\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>DIV</KEYWORD1>\r
+ <KEYWORD1>DO</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ELSIF</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ESAC</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>FI</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>OD</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>OUT</KEYWORD1>\r
+ <KEYWORD1>RESULT</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>UNTIL</KEYWORD1>\r
+ <KEYWORD1>USES</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>XOR</KEYWORD1>\r
+ <!-- DEFINITIONS. -->\r
+ <KEYWORD2>ARRAY</KEYWORD2>\r
+ <KEYWORD2>DCL</KEYWORD2>\r
+ <KEYWORD2>GRANT</KEYWORD2>\r
+ <KEYWORD2>LABEL</KEYWORD2>\r
+ <KEYWORD2>MODULE</KEYWORD2>\r
+ <KEYWORD2>NEWMODE</KEYWORD2>\r
+ <KEYWORD2>PROC</KEYWORD2>\r
+ <KEYWORD2>POWERSET</KEYWORD2>\r
+ <KEYWORD2>SEIZE</KEYWORD2>\r
+ <KEYWORD2>SET</KEYWORD2>\r
+ <KEYWORD2>STRUCT</KEYWORD2>\r
+ <KEYWORD2>SYN</KEYWORD2>\r
+ <KEYWORD2>SYNMODE</KEYWORD2>\r
+ <KEYWORD2>TYPE</KEYWORD2>\r
+ <KEYWORD2>PACK</KEYWORD2>\r
+ <!-- ORDINAL TYPES. -->\r
+ <KEYWORD3>BIN</KEYWORD3>\r
+ <KEYWORD3>CHAR</KEYWORD3>\r
+ <KEYWORD3>INT</KEYWORD3>\r
+ <KEYWORD3>RANGE</KEYWORD3>\r
+ <!-- BOOLEAN TYPES. -->\r
+ <KEYWORD3>BOOL</KEYWORD3>\r
+ <!-- UNTYPED POINTER. -->\r
+ <KEYWORD3>PTR</KEYWORD3>\r
+ <KEYWORD3>REF</KEYWORD3>\r
+ \r
+ <LABEL>MODULE_DESCRIPTION_HEADER</LABEL>\r
+ <LABEL>PATCH_INFOS</LABEL>\r
+ <LABEL>LIO_INFOS</LABEL>\r
+ <LABEL>SWSG_INFOS</LABEL>\r
+ <LABEL>MSG_XREF</LABEL> \r
+ <LABEL>EJECT</LABEL> \r
+\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>TRUE</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ .NET CIL by Cullen Linn (linnc@cs.arizona.edu)\r
+ (pg102 or 198 of PartitionII)\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+\\" />\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>family</KEYWORD1>\r
+ <KEYWORD1>assembly</KEYWORD1>\r
+ <KEYWORD1>famandassem</KEYWORD1>\r
+ <KEYWORD1>famorassem</KEYWORD1>\r
+ <KEYWORD1>autochar</KEYWORD1>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>ansi</KEYWORD1>\r
+ <KEYWORD1>beforefieldinit</KEYWORD1>\r
+ <KEYWORD1>explicit</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>nested</KEYWORD1>\r
+ <KEYWORD1>rtspecialname</KEYWORD1>\r
+ <KEYWORD1>sealed</KEYWORD1>\r
+ <KEYWORD1>sequential</KEYWORD1>\r
+ <KEYWORD1>serializable</KEYWORD1>\r
+ <KEYWORD1>specialname</KEYWORD1>\r
+ <KEYWORD1>unicode</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>hidebysig</KEYWORD1>\r
+ <KEYWORD1>newslot</KEYWORD1>\r
+ <KEYWORD1>pinvokeimpl</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>virtual</KEYWORD1>\r
+ <KEYWORD1>cil</KEYWORD1>\r
+ <KEYWORD1>forwardref</KEYWORD1>\r
+ <KEYWORD1>internalcall</KEYWORD1>\r
+ <KEYWORD1>managed</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>noinlining</KEYWORD1>\r
+ <KEYWORD1>runtime</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>unmanaged</KEYWORD1>\r
+ <KEYWORD1>typedref</KEYWORD1>\r
+ <KEYWORD1>cdecl</KEYWORD1>\r
+ <KEYWORD1>fastcall</KEYWORD1>\r
+ <KEYWORD1>stdcall</KEYWORD1>\r
+ <KEYWORD1>thiscall</KEYWORD1>\r
+ <KEYWORD1>platformapi</KEYWORD1>\r
+ <KEYWORD1>initonly</KEYWORD1>\r
+ <KEYWORD1>literal</KEYWORD1>\r
+ <KEYWORD1>marshal</KEYWORD1>\r
+ <KEYWORD1>notserialized</KEYWORD1>\r
+ <KEYWORD1>addon</KEYWORD1>\r
+ <KEYWORD1>removeon</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>fault</KEYWORD1>\r
+ <KEYWORD1>filter</KEYWORD1>\r
+ <KEYWORD1>handler</KEYWORD1>\r
+\r
+ <!--Assembly Directives (Meta-Data)-->\r
+ <KEYWORD2>.assembly</KEYWORD2>\r
+ <KEYWORD2>.assembly extern</KEYWORD2>\r
+ <KEYWORD2>.class</KEYWORD2>\r
+ <KEYWORD2>.class extern</KEYWORD2>\r
+ <KEYWORD2>.field</KEYWORD2>\r
+ <KEYWORD2>.method</KEYWORD2>\r
+ <KEYWORD2>.property</KEYWORD2>\r
+ <KEYWORD2>.get</KEYWORD2>\r
+ <KEYWORD2>.set</KEYWORD2>\r
+ <KEYWORD2>.other</KEYWORD2>\r
+ <KEYWORD2>.ctor</KEYWORD2>\r
+ <KEYWORD2>.corflags</KEYWORD2>\r
+ <KEYWORD2>.custom</KEYWORD2>\r
+ <KEYWORD2>.data</KEYWORD2>\r
+ <KEYWORD2>.file</KEYWORD2>\r
+ <KEYWORD2>.mresource</KEYWORD2>\r
+ <KEYWORD2>.module</KEYWORD2>\r
+ <KEYWORD2>.module extern</KEYWORD2>\r
+ <KEYWORD2>.subsystem</KEYWORD2>\r
+ <KEYWORD2>.vtfixup</KEYWORD2>\r
+ <KEYWORD2>.publickeytoken</KEYWORD2>\r
+ <KEYWORD2>.ver</KEYWORD2>\r
+ <KEYWORD2>.hash algorithm</KEYWORD2>\r
+ <KEYWORD2>.culture</KEYWORD2>\r
+ <KEYWORD2>.namespace</KEYWORD2>\r
+ <KEYWORD2>.event</KEYWORD2>\r
+ <KEYWORD2>.fire</KEYWORD2>\r
+ <KEYWORD2>.override</KEYWORD2>\r
+ <KEYWORD2>.try</KEYWORD2>\r
+ <KEYWORD2>.catch</KEYWORD2>\r
+ <KEYWORD2>.finally</KEYWORD2>\r
+ <KEYWORD2>.locals</KEYWORD2>\r
+ <KEYWORD2>.maxstack</KEYWORD2>\r
+ <KEYWORD2>.entrypoint</KEYWORD2>\r
+ <KEYWORD2>.pack</KEYWORD2>\r
+ <KEYWORD2>.size</KEYWORD2>\r
+\r
+ <!--Implementation Specific Metadata-->\r
+ <KEYWORD2>.file alignment</KEYWORD2>\r
+ <KEYWORD2>.imagebase</KEYWORD2>\r
+ <KEYWORD2>.language</KEYWORD2>\r
+ <KEYWORD2>.namespace</KEYWORD2>\r
+\r
+\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>object</KEYWORD3>\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD3>bytearray</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>float32</KEYWORD3>\r
+ <KEYWORD3>float64</KEYWORD3>\r
+ <KEYWORD3>int8</KEYWORD3>\r
+ <KEYWORD3>int16</KEYWORD3>\r
+ <KEYWORD3>int32</KEYWORD3>\r
+ <KEYWORD3>int64</KEYWORD3>\r
+ <KEYWORD3>nullref</KEYWORD3>\r
+\r
+\r
+ <OPERATOR>&</OPERATOR>\r
+ <OPERATOR>*</OPERATOR>\r
+ <OPERATOR>}</OPERATOR>\r
+ <OPERATOR>{</OPERATOR>\r
+\r
+ <!--arithmetic opcodes-->\r
+ <FUNCTION>add</FUNCTION>\r
+ <FUNCTION>add.ovf</FUNCTION>\r
+ <FUNCTION>add.ovf.un</FUNCTION>\r
+ <FUNCTION>div</FUNCTION>\r
+ <FUNCTION>div.un</FUNCTION>\r
+ <FUNCTION>mul</FUNCTION>\r
+ <FUNCTION>mul.ovf</FUNCTION>\r
+ <FUNCTION>mul.ovf.un</FUNCTION>\r
+ <FUNCTION>sub</FUNCTION>\r
+ <FUNCTION>sub.ovf</FUNCTION>\r
+ <FUNCTION>sub.ovf.un</FUNCTION>\r
+\r
+ <!--logical-->\r
+ <FUNCTION>and</FUNCTION>\r
+ <FUNCTION>not</FUNCTION>\r
+ <FUNCTION>or</FUNCTION>\r
+ <FUNCTION>xor</FUNCTION>\r
+\r
+ <!--Branches-->\r
+ <FUNCTION>beq</FUNCTION>\r
+ <FUNCTION>beq.s</FUNCTION>\r
+ <FUNCTION>bge</FUNCTION>\r
+ <FUNCTION>bge.s</FUNCTION>\r
+ <FUNCTION>bge.un</FUNCTION>\r
+ <FUNCTION>bge.un.s</FUNCTION>\r
+ <FUNCTION>bgt</FUNCTION>\r
+ <FUNCTION>bgt.s</FUNCTION>\r
+ <FUNCTION>bgt.un</FUNCTION>\r
+ <FUNCTION>bgt.un.s</FUNCTION>\r
+ <FUNCTION>ble</FUNCTION>\r
+ <FUNCTION>ble.s</FUNCTION>\r
+ <FUNCTION>ble.un</FUNCTION>\r
+ <FUNCTION>ble.un.s</FUNCTION>\r
+ <FUNCTION>blt</FUNCTION>\r
+ <FUNCTION>blt.s</FUNCTION>\r
+ <FUNCTION>blt.un</FUNCTION>\r
+ <FUNCTION>blt.un.s</FUNCTION>\r
+ <FUNCTION>bne.un</FUNCTION>\r
+ <FUNCTION>bne.un.s</FUNCTION>\r
+ <FUNCTION>br</FUNCTION>\r
+ <FUNCTION>brfalse</FUNCTION>\r
+ <FUNCTION>brfalse.s</FUNCTION>\r
+ <FUNCTION>brtrue</FUNCTION>\r
+ <FUNCTION>brtrue.s</FUNCTION>\r
+ <FUNCTION>br.s</FUNCTION>\r
+\r
+ <!--Conversions-->\r
+ <FUNCTION>conv.i</FUNCTION>\r
+ <FUNCTION>conv.i1</FUNCTION>\r
+ <FUNCTION>conv.i2</FUNCTION>\r
+ <FUNCTION>conv.i4</FUNCTION>\r
+ <FUNCTION>conv.i8</FUNCTION>\r
+ <FUNCTION>conv.ovf.i</FUNCTION>\r
+ <FUNCTION>conv.ovf.i1</FUNCTION>\r
+ <FUNCTION>conv.ovf.i1.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.i2</FUNCTION>\r
+ <FUNCTION>conv.ovf.i2.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.i4</FUNCTION>\r
+ <FUNCTION>conv.ovf.i4.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.i8</FUNCTION>\r
+ <FUNCTION>conv.ovf.i8.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.i.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.u</FUNCTION>\r
+ <FUNCTION>conv.ovf.u1</FUNCTION>\r
+ <FUNCTION>conv.ovf.u1.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.u2</FUNCTION>\r
+ <FUNCTION>conv.ovf.u2.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.u4</FUNCTION>\r
+ <FUNCTION>conv.ovf.u4.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.u8</FUNCTION>\r
+ <FUNCTION>conv.ovf.u8.un</FUNCTION>\r
+ <FUNCTION>conv.ovf.u.un</FUNCTION>\r
+ <FUNCTION>conv.r4</FUNCTION>\r
+ <FUNCTION>conv.r8</FUNCTION>\r
+ <FUNCTION>conv.r.un</FUNCTION>\r
+ <FUNCTION>conv.u</FUNCTION>\r
+ <FUNCTION>conv.u1</FUNCTION>\r
+ <FUNCTION>conv.u2</FUNCTION>\r
+ <FUNCTION>conv.u4</FUNCTION>\r
+ <FUNCTION>conv.u8</FUNCTION>\r
+\r
+ <!--Loads and Stores-->\r
+ <FUNCTION>ldarg</FUNCTION>\r
+ <FUNCTION>ldarga</FUNCTION>\r
+ <FUNCTION>ldarga.s</FUNCTION>\r
+ <FUNCTION>ldarg.0</FUNCTION>\r
+ <FUNCTION>ldarg.1</FUNCTION>\r
+ <FUNCTION>ldarg.2</FUNCTION>\r
+ <FUNCTION>ldarg.3</FUNCTION>\r
+ <FUNCTION>ldarg.s</FUNCTION>\r
+ <FUNCTION>ldc.i4</FUNCTION>\r
+ <FUNCTION>ldc.i4.0</FUNCTION>\r
+ <FUNCTION>ldc.i4.1</FUNCTION>\r
+ <FUNCTION>ldc.i4.2</FUNCTION>\r
+ <FUNCTION>ldc.i4.3</FUNCTION>\r
+ <FUNCTION>ldc.i4.4</FUNCTION>\r
+ <FUNCTION>ldc.i4.5</FUNCTION>\r
+ <FUNCTION>ldc.i4.6</FUNCTION>\r
+ <FUNCTION>ldc.i4.7</FUNCTION>\r
+ <FUNCTION>ldc.i4.8</FUNCTION>\r
+ <FUNCTION>ldc.i4.m1</FUNCTION>\r
+ <FUNCTION>ldc.i4.s</FUNCTION>\r
+ <FUNCTION>ldc.i8</FUNCTION>\r
+ <FUNCTION>ldc.r4</FUNCTION>\r
+ <FUNCTION>ldc.r8</FUNCTION>\r
+ <FUNCTION>ldelema</FUNCTION>\r
+ <FUNCTION>ldelem.i</FUNCTION>\r
+ <FUNCTION>ldelem.i1</FUNCTION>\r
+ <FUNCTION>ldelem.i2</FUNCTION>\r
+ <FUNCTION>ldelem.i4</FUNCTION>\r
+ <FUNCTION>ldelem.i8</FUNCTION>\r
+ <FUNCTION>ldelem.r4</FUNCTION>\r
+ <FUNCTION>ldelem.r8</FUNCTION>\r
+ <FUNCTION>ldelem.ref</FUNCTION>\r
+ <FUNCTION>ldelem.u1</FUNCTION>\r
+ <FUNCTION>ldelem.u2</FUNCTION>\r
+ <FUNCTION>ldelem.u4</FUNCTION>\r
+ <FUNCTION>ldfld</FUNCTION>\r
+ <FUNCTION>ldflda</FUNCTION>\r
+ <FUNCTION>ldftn</FUNCTION>\r
+ <FUNCTION>ldind.i</FUNCTION>\r
+ <FUNCTION>ldind.i1</FUNCTION>\r
+ <FUNCTION>ldind.i2</FUNCTION>\r
+ <FUNCTION>ldind.i4</FUNCTION>\r
+ <FUNCTION>ldind.i8</FUNCTION>\r
+ <FUNCTION>ldind.r4</FUNCTION>\r
+ <FUNCTION>ldind.r8</FUNCTION>\r
+ <FUNCTION>ldind.ref</FUNCTION>\r
+ <FUNCTION>ldind.u1</FUNCTION>\r
+ <FUNCTION>ldind.u2</FUNCTION>\r
+ <FUNCTION>ldind.u4</FUNCTION>\r
+ <FUNCTION>ldlen</FUNCTION>\r
+ <FUNCTION>ldloc</FUNCTION>\r
+ <FUNCTION>ldloca</FUNCTION>\r
+ <FUNCTION>ldloca.s</FUNCTION>\r
+ <FUNCTION>ldloc.0</FUNCTION>\r
+ <FUNCTION>ldloc.1</FUNCTION>\r
+ <FUNCTION>ldloc.2</FUNCTION>\r
+ <FUNCTION>ldloc.3</FUNCTION>\r
+ <FUNCTION>ldloc.s</FUNCTION>\r
+ <FUNCTION>ldnull</FUNCTION>\r
+ <FUNCTION>ldobj</FUNCTION>\r
+ <FUNCTION>ldsfld</FUNCTION>\r
+ <FUNCTION>ldsflda</FUNCTION>\r
+ <FUNCTION>ldstr</FUNCTION>\r
+ <FUNCTION>ldtoken</FUNCTION>\r
+ <FUNCTION>ldvirtftn</FUNCTION>\r
+ <FUNCTION>starg</FUNCTION>\r
+ <FUNCTION>starg.s</FUNCTION>\r
+ <FUNCTION>stelem.i</FUNCTION>\r
+ <FUNCTION>stelem.i1</FUNCTION>\r
+ <FUNCTION>stelem.i2</FUNCTION>\r
+ <FUNCTION>stelem.i4</FUNCTION>\r
+ <FUNCTION>stelem.i8</FUNCTION>\r
+ <FUNCTION>stelem.r4</FUNCTION>\r
+ <FUNCTION>stelem.r8</FUNCTION>\r
+ <FUNCTION>stelem.ref</FUNCTION>\r
+ <FUNCTION>stfld</FUNCTION>\r
+ <FUNCTION>stind.i</FUNCTION>\r
+ <FUNCTION>stind.i1</FUNCTION>\r
+ <FUNCTION>stind.i2</FUNCTION>\r
+ <FUNCTION>stind.i4</FUNCTION>\r
+ <FUNCTION>stind.i8</FUNCTION>\r
+ <FUNCTION>stind.r4</FUNCTION>\r
+ <FUNCTION>stind.r8</FUNCTION>\r
+ <FUNCTION>stind.ref</FUNCTION>\r
+ <FUNCTION>stloc</FUNCTION>\r
+ <FUNCTION>stloc.0</FUNCTION>\r
+ <FUNCTION>stloc.1</FUNCTION>\r
+ <FUNCTION>stloc.2</FUNCTION>\r
+ <FUNCTION>stloc.3</FUNCTION>\r
+ <FUNCTION>stloc.s</FUNCTION>\r
+ <FUNCTION>stobj</FUNCTION>\r
+ <FUNCTION>stsfld</FUNCTION>\r
+\r
+ <FUNCTION>call</FUNCTION>\r
+ <FUNCTION>calli</FUNCTION>\r
+ <FUNCTION>callvirt</FUNCTION>\r
+ <FUNCTION>castclass</FUNCTION>\r
+ <FUNCTION>ceq</FUNCTION>\r
+ <FUNCTION>cgt</FUNCTION>\r
+ <FUNCTION>cgt.un</FUNCTION>\r
+ <FUNCTION>ckfinite</FUNCTION>\r
+ <FUNCTION>clt</FUNCTION>\r
+ <FUNCTION>clt.un</FUNCTION>\r
+ <FUNCTION>cpblk</FUNCTION>\r
+ <FUNCTION>cpobj</FUNCTION>\r
+\r
+ <FUNCTION>initblk</FUNCTION>\r
+ <FUNCTION>initobj</FUNCTION>\r
+ <FUNCTION>newarr</FUNCTION>\r
+ <FUNCTION>newobj</FUNCTION>\r
+\r
+ <FUNCTION>dup</FUNCTION>\r
+ <FUNCTION>endfilter</FUNCTION>\r
+ <FUNCTION>isinst</FUNCTION>\r
+ <FUNCTION>box</FUNCTION>\r
+ <FUNCTION>unbox</FUNCTION>\r
+ <FUNCTION>arglist</FUNCTION>\r
+ <FUNCTION>break</FUNCTION>\r
+ <FUNCTION>jmp</FUNCTION>\r
+ <FUNCTION>ret</FUNCTION>\r
+ <FUNCTION>leave</FUNCTION>\r
+ <FUNCTION>leave.s</FUNCTION>\r
+ <FUNCTION>localloc</FUNCTION>\r
+ <FUNCTION>mkrefany</FUNCTION>\r
+ <FUNCTION>neg</FUNCTION>\r
+ <FUNCTION>switch</FUNCTION>\r
+ <FUNCTION>nop</FUNCTION>\r
+ <FUNCTION>pop</FUNCTION>\r
+ <FUNCTION>refanytype</FUNCTION>\r
+ <FUNCTION>refanyval</FUNCTION>\r
+ <FUNCTION>rem</FUNCTION>\r
+ <FUNCTION>rem.un</FUNCTION>\r
+ <FUNCTION>throw</FUNCTION>\r
+ <FUNCTION>rethrow</FUNCTION>\r
+ <FUNCTION>endfinally</FUNCTION>\r
+ <FUNCTION>shl</FUNCTION>\r
+ <FUNCTION>shr</FUNCTION>\r
+ <FUNCTION>shr.un</FUNCTION>\r
+ <FUNCTION>sizeof</FUNCTION>\r
+ <FUNCTION>tailcall</FUNCTION>\r
+ <FUNCTION>unaligned</FUNCTION>\r
+ <FUNCTION>volatile</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- jEdit CLIPS syntax file\r
+ \r
+ written by Orhan Alkan\r
+ version 1.0\r
+ created on 30 June 2007\r
+ last revised 01 July 2007\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0[lL]?|[1-9]\d{0,9}(\d{0,9}[lL])?|0[xX]\p{XDigit}{1,8}(\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\.[0-9]*|\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))">\r
+ \r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+ \r
+ <!-- String literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ \r
+ <!-- List literals -->\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE" DELEGATE="LIST">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ \r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">=></SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ> \r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ \r
+ <!-- Parentheses -->\r
+ <SEQ TYPE="MARKUP">(</SEQ>\r
+ <SEQ TYPE="MARKUP">)</SEQ>\r
+ <SEQ TYPE="MARKUP">[</SEQ>\r
+ <SEQ TYPE="MARKUP">]</SEQ>\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ \r
+ <KEYWORDS>\r
+ \r
+ <KEYWORD1>deffacts</KEYWORD1>\r
+ <KEYWORD1>deftemplate</KEYWORD1>\r
+ <KEYWORD1>defglobal</KEYWORD1>\r
+ <KEYWORD1>defrule</KEYWORD1>\r
+ <KEYWORD1>deffunction</KEYWORD1>\r
+ <KEYWORD1>defgeneric</KEYWORD1>\r
+ <KEYWORD1>defmethod</KEYWORD1>\r
+ <KEYWORD1>defclass</KEYWORD1>\r
+ <KEYWORD1>definstance</KEYWORD1>\r
+ <KEYWORD1>defmessage</KEYWORD1>\r
+ <KEYWORD1>defmodule</KEYWORD1>\r
+ <KEYWORD1>deffacts-module</KEYWORD1>\r
+ <KEYWORD1>deffunction-module</KEYWORD1>\r
+ <KEYWORD1>defgeneric-module</KEYWORD1>\r
+ <KEYWORD1>defglobal-module</KEYWORD1>\r
+ <KEYWORD1>definstances-module</KEYWORD1>\r
+ <KEYWORD1>slot</KEYWORD1>\r
+ <KEYWORD1>multislot</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>default-dynamic</KEYWORD1>\r
+ <KEYWORD1>declare</KEYWORD1>\r
+ <KEYWORD1>salience</KEYWORD1>\r
+ <KEYWORD1>auto-focus</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>is-a</KEYWORD1>\r
+ <KEYWORD1>pattern-match</KEYWORD1>\r
+ <KEYWORD1>single-slot</KEYWORD1>\r
+ <KEYWORD1>reactive</KEYWORD1>\r
+ <KEYWORD1>non-reactive</KEYWORD1>\r
+ <KEYWORD1>storage</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>shared</KEYWORD1>\r
+ <KEYWORD1>access</KEYWORD1>\r
+ <KEYWORD1>read-write</KEYWORD1>\r
+ <KEYWORD1>read-only</KEYWORD1>\r
+ <KEYWORD1>initialize-only</KEYWORD1>\r
+ <KEYWORD1>propagation</KEYWORD1>\r
+ <KEYWORD1>inherit</KEYWORD1>\r
+ <KEYWORD1>non-inherit</KEYWORD1>\r
+ <KEYWORD1>source</KEYWORD1>\r
+ <KEYWORD1>exclusive</KEYWORD1>\r
+ <KEYWORD1>composite</KEYWORD1>\r
+ <KEYWORD1>visibility</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>create-accessor</KEYWORD1>\r
+ <KEYWORD1>?NONE</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>write</KEYWORD1>\r
+ <KEYWORD1>?DEFAULT</KEYWORD1>\r
+ <KEYWORD1>primary</KEYWORD1>\r
+ <KEYWORD1>around</KEYWORD1>\r
+ <KEYWORD1>before</KEYWORD1>\r
+ <KEYWORD1>after</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>?ALL</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>allowed-symbols</KEYWORD1>\r
+ <KEYWORD1>allowed-strings</KEYWORD1>\r
+ <KEYWORD1>allowed-lexemes</KEYWORD1>\r
+ <KEYWORD1>allowed-integers</KEYWORD1>\r
+ <KEYWORD1>allowed-floats</KEYWORD1>\r
+ <KEYWORD1>allowed-numbers</KEYWORD1>\r
+ <KEYWORD1>allowed-instance-names</KEYWORD1>\r
+ <KEYWORD1>allowed-values</KEYWORD1>\r
+ <KEYWORD1>?VARIABLE</KEYWORD1>\r
+ \r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2>\r
+ <KEYWORD2>then</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2>\r
+ <KEYWORD2>or</KEYWORD2>\r
+ <KEYWORD2>and</KEYWORD2>\r
+ <KEYWORD2>eq</KEYWORD2>\r
+ <KEYWORD2>evenp</KEYWORD2>\r
+ <KEYWORD2>floatp</KEYWORD2>\r
+ <KEYWORD2>integerp</KEYWORD2>\r
+ <KEYWORD2>lexemep</KEYWORD2>\r
+ <KEYWORD2>multifieldp</KEYWORD2>\r
+ <KEYWORD2>neq</KEYWORD2>\r
+ <KEYWORD2>not</KEYWORD2>\r
+ <KEYWORD2>numberp</KEYWORD2>\r
+ <KEYWORD2>oddp</KEYWORD2>\r
+ <KEYWORD2>pointerp</KEYWORD2>\r
+ <KEYWORD2>stringp</KEYWORD2>\r
+ <KEYWORD2>symbolp</KEYWORD2>\r
+ <KEYWORD2>switch</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2>\r
+ \r
+ <KEYWORD3>assert</KEYWORD3>\r
+ <KEYWORD3>bind</KEYWORD3>\r
+ <KEYWORD3>class-abstractp</KEYWORD3>\r
+ <KEYWORD3>class-existp</KEYWORD3>\r
+ <KEYWORD3>class-subclasses</KEYWORD3>\r
+ <KEYWORD3>class-superclasses</KEYWORD3>\r
+ <KEYWORD3>defclass-module</KEYWORD3>\r
+ <KEYWORD3>describe-classes</KEYWORD3>\r
+ <KEYWORD3>get-class-defaults-mode</KEYWORD3>\r
+ <KEYWORD3>get-defclass-list</KEYWORD3>\r
+ <KEYWORD3>agenda</KEYWORD3>\r
+ <KEYWORD3>list-defclasses</KEYWORD3>\r
+ <KEYWORD3>ppdefclass</KEYWORD3>\r
+ <KEYWORD3>set-class-defaults-mode</KEYWORD3>\r
+ <KEYWORD3>slot-allowed-values</KEYWORD3>\r
+ <KEYWORD3>slot-cardinality</KEYWORD3>\r
+ <KEYWORD3>slot-default-value</KEYWORD3>\r
+ <KEYWORD3>slot-direct-accessp</KEYWORD3>\r
+ <KEYWORD3>slot-existp</KEYWORD3>\r
+ <KEYWORD3>slot-facest</KEYWORD3>\r
+ <KEYWORD3>slot-initablep</KEYWORD3>\r
+ <KEYWORD3>slot-publicp</KEYWORD3>\r
+ <KEYWORD3>slot-range</KEYWORD3>\r
+ <KEYWORD3>slot-sources</KEYWORD3>\r
+ <KEYWORD3>slot-types</KEYWORD3>\r
+ <KEYWORD3>slot-writablep</KEYWORD3>\r
+ <KEYWORD3>subsclassp</KEYWORD3>\r
+ <KEYWORD3>undefclass</KEYWORD3>\r
+ <KEYWORD3>get-deffacts-list</KEYWORD3>\r
+ <KEYWORD3>list-deffacts</KEYWORD3>\r
+ <KEYWORD3>ppdeffacts</KEYWORD3>\r
+ <KEYWORD3>undeffacts</KEYWORD3>\r
+ <KEYWORD3>get-deffunction-list</KEYWORD3>\r
+ <KEYWORD3>list-deffunction</KEYWORD3>\r
+ <KEYWORD3>ppdeffunction</KEYWORD3>\r
+ <KEYWORD3>undeffunction</KEYWORD3>\r
+ <KEYWORD3>get-defgeneric-list</KEYWORD3>\r
+ <KEYWORD3>list-defgenerics</KEYWORD3>\r
+ <KEYWORD3>ppdefgeneric</KEYWORD3>\r
+ <KEYWORD3>preview-generic</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>undefgeneric</KEYWORD3>\r
+ <KEYWORD3>get-defglobal-list</KEYWORD3>\r
+ <KEYWORD3>get-reset-globals</KEYWORD3>\r
+ <KEYWORD3>list-defglobals</KEYWORD3>\r
+ <KEYWORD3>ppdefglobal</KEYWORD3>\r
+ <KEYWORD3>set-reset-globals</KEYWORD3>\r
+ <KEYWORD3>undefglobal</KEYWORD3>\r
+ <KEYWORD3>get-definstances-list</KEYWORD3>\r
+ <KEYWORD3>list-definstances</KEYWORD3>\r
+ <KEYWORD3>ppdefinstances</KEYWORD3>\r
+ <KEYWORD3>undefinstances</KEYWORD3>\r
+ <KEYWORD3>call-next-handler</KEYWORD3>\r
+ <KEYWORD3>get-defmessage-handler</KEYWORD3>\r
+ <KEYWORD3>list-defmessage-handlers</KEYWORD3>\r
+ <KEYWORD3>message-handler-existp</KEYWORD3>\r
+ <KEYWORD3>handler-type</KEYWORD3>\r
+ <KEYWORD3>next-handlerp</KEYWORD3>\r
+ <KEYWORD3>override-next-handler</KEYWORD3>\r
+ <KEYWORD3>ppdefmessage-handler</KEYWORD3>\r
+ <KEYWORD3>undefmessage-handler</KEYWORD3>\r
+ <KEYWORD3>call-next-method</KEYWORD3>\r
+ <KEYWORD3>call-specific-method</KEYWORD3>\r
+ <KEYWORD3>get-defmethod-list</KEYWORD3>\r
+ <KEYWORD3>get-method-restrictions</KEYWORD3>\r
+ <KEYWORD3>list-defmethods</KEYWORD3>\r
+ <KEYWORD3>next-methodp</KEYWORD3>\r
+ <KEYWORD3>override-next-method</KEYWORD3>\r
+ <KEYWORD3>undefmethod</KEYWORD3>\r
+ <KEYWORD3>preview-generic</KEYWORD3>\r
+ <KEYWORD3>get-current-module</KEYWORD3>\r
+ <KEYWORD3>get-defmodule-list</KEYWORD3>\r
+ <KEYWORD3>list-defmodules</KEYWORD3>\r
+ <KEYWORD3>ppdefmodules</KEYWORD3>\r
+ <KEYWORD3>set-current-module</KEYWORD3>\r
+ <KEYWORD3>defrule-module</KEYWORD3>\r
+ <KEYWORD3>get-defrule-list</KEYWORD3>\r
+ <KEYWORD3>get-incremental-reset</KEYWORD3>\r
+ <KEYWORD3>list-defrules</KEYWORD3>\r
+ <KEYWORD3>matches</KEYWORD3>\r
+ <KEYWORD3>ppdefrule</KEYWORD3>\r
+ <KEYWORD3>refresh</KEYWORD3>\r
+ <KEYWORD3>remove-break</KEYWORD3>\r
+ <KEYWORD3>set-break</KEYWORD3>\r
+ <KEYWORD3>set-incremental-reset</KEYWORD3>\r
+ <KEYWORD3>show-breaks</KEYWORD3>\r
+ <KEYWORD3>undefrule</KEYWORD3>\r
+ <KEYWORD3>deftemplate-module</KEYWORD3>\r
+ <KEYWORD3>get-deftemaplate-list</KEYWORD3>\r
+ <KEYWORD3>list-deftemplates</KEYWORD3>\r
+ <KEYWORD3>ppdeftemplate</KEYWORD3>\r
+ <KEYWORD3>undeftemplate</KEYWORD3>\r
+ <KEYWORD3>apropos</KEYWORD3>\r
+ <KEYWORD3>bacth</KEYWORD3>\r
+ <KEYWORD3>batch*</KEYWORD3>\r
+ <KEYWORD3>bload</KEYWORD3>\r
+ <KEYWORD3>bsave</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+ <KEYWORD3>exit</KEYWORD3>\r
+ <KEYWORD3>get-auto-float-dividend</KEYWORD3>\r
+ <KEYWORD3>get-dynamic-constraints-checking</KEYWORD3>\r
+ <KEYWORD3>get-static-constraints-checking</KEYWORD3>\r
+ <KEYWORD3>load</KEYWORD3>\r
+ <KEYWORD3>load*</KEYWORD3>\r
+ <KEYWORD3>options</KEYWORD3>\r
+ <KEYWORD3>reset</KEYWORD3>\r
+ <KEYWORD3>save</KEYWORD3>\r
+ <KEYWORD3>set-auto-float-dividend</KEYWORD3>\r
+ <KEYWORD3>set-dynamic-constriants-checking</KEYWORD3>\r
+ <KEYWORD3>set-static-constriants-checking</KEYWORD3>\r
+ <KEYWORD3>system</KEYWORD3>\r
+ <KEYWORD3>assert-string</KEYWORD3>\r
+ <KEYWORD3>dependencies</KEYWORD3>\r
+ <KEYWORD3>dependents</KEYWORD3>\r
+ <KEYWORD3>duplicate</KEYWORD3>\r
+ <KEYWORD3>facts</KEYWORD3>\r
+ <KEYWORD3>fact-existp</KEYWORD3>\r
+ <KEYWORD3>fact-index</KEYWORD3>\r
+ <KEYWORD3>fact-relation</KEYWORD3>\r
+ <KEYWORD3>fact-slot-names</KEYWORD3>\r
+ <KEYWORD3>fact-slot-value</KEYWORD3>\r
+ <KEYWORD3>get-fact-duplication</KEYWORD3>\r
+ <KEYWORD3>get-fact-list</KEYWORD3>\r
+ <KEYWORD3>load-facts</KEYWORD3>\r
+ <KEYWORD3>modify</KEYWORD3>\r
+ <KEYWORD3>retract</KEYWORD3>\r
+ <KEYWORD3>save-facts</KEYWORD3>\r
+ <KEYWORD3>set-fact-duplication</KEYWORD3>\r
+ <KEYWORD3>any-instancep</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>delayed-do-for-all-instances</KEYWORD3>\r
+ <KEYWORD3>delete-instance</KEYWORD3>\r
+ <KEYWORD3>direct-slot-delete$</KEYWORD3>\r
+ <KEYWORD3>direct-slot-insert$</KEYWORD3>\r
+ <KEYWORD3>direct-slot-replace$</KEYWORD3>\r
+ <KEYWORD3>do-for-instance</KEYWORD3>\r
+ <KEYWORD3>do-for-all-instances</KEYWORD3>\r
+ <KEYWORD3>dynamic-get</KEYWORD3>\r
+ <KEYWORD3>dynamic-put</KEYWORD3>\r
+ <KEYWORD3>find-instance</KEYWORD3>\r
+ <KEYWORD3>find-all-instances</KEYWORD3>\r
+ <KEYWORD3>init-slot</KEYWORD3>\r
+ <KEYWORD3>instance-address</KEYWORD3>\r
+ <KEYWORD3>instance-addressp</KEYWORD3>\r
+ <KEYWORD3>instance-existp</KEYWORD3>\r
+ <KEYWORD3>instance-name</KEYWORD3>\r
+ <KEYWORD3>instance-namep</KEYWORD3>\r
+ <KEYWORD3>instance-name-to-symbol</KEYWORD3>\r
+ <KEYWORD3>instancep</KEYWORD3>\r
+ <KEYWORD3>instances</KEYWORD3>\r
+ <KEYWORD3>load-instances</KEYWORD3>\r
+ <KEYWORD3>make-intance</KEYWORD3>\r
+ <KEYWORD3>ppinstance</KEYWORD3>\r
+ <KEYWORD3>restore-instances</KEYWORD3>\r
+ <KEYWORD3>save-instances</KEYWORD3>\r
+ <KEYWORD3>send</KEYWORD3>\r
+ <KEYWORD3>slot-delete$</KEYWORD3>\r
+ <KEYWORD3>slot-insert$</KEYWORD3>\r
+ <KEYWORD3>slot-replace$</KEYWORD3>\r
+ <KEYWORD3>symbol-to-instance-name</KEYWORD3>\r
+ <KEYWORD3>unmake-instance</KEYWORD3>\r
+ <KEYWORD3>create$</KEYWORD3>\r
+ <KEYWORD3>delete$</KEYWORD3>\r
+ <KEYWORD3>delete-member$</KEYWORD3>\r
+ <KEYWORD3>explode$</KEYWORD3>\r
+ <KEYWORD3>first$</KEYWORD3>\r
+ <KEYWORD3>implode$</KEYWORD3>\r
+ <KEYWORD3>insert$</KEYWORD3>\r
+ <KEYWORD3>length$</KEYWORD3>\r
+ <KEYWORD3>member$</KEYWORD3>\r
+ <KEYWORD3>nth$</KEYWORD3>\r
+ <KEYWORD3>replace$</KEYWORD3>\r
+ <KEYWORD3>rest$</KEYWORD3>\r
+ <KEYWORD3>subseq$</KEYWORD3>\r
+ <KEYWORD3>subsetp</KEYWORD3>\r
+ <KEYWORD3>break</KEYWORD3>\r
+ <KEYWORD3>loop-for-count</KEYWORD3>\r
+ <KEYWORD3>progn</KEYWORD3>\r
+ <KEYWORD3>progn$</KEYWORD3>\r
+ <KEYWORD3>return</KEYWORD3>\r
+ <KEYWORD3>get-profile-percent-threshold</KEYWORD3>\r
+ <KEYWORD3>profile-contructs</KEYWORD3>\r
+ <KEYWORD3>profile-info</KEYWORD3>\r
+ <KEYWORD3>profile-reset</KEYWORD3>\r
+ <KEYWORD3>set-profile-percent-threshold</KEYWORD3>\r
+ <KEYWORD3>expand$</KEYWORD3>\r
+ <KEYWORD3>get-sequence-operator-recognition</KEYWORD3>\r
+ <KEYWORD3>aet-sequence-operator-recognition</KEYWORD3>\r
+ <KEYWORD3>build</KEYWORD3>\r
+ <KEYWORD3>check-syntax</KEYWORD3>\r
+ <KEYWORD3>eval</KEYWORD3>\r
+ <KEYWORD3>lowcase</KEYWORD3>\r
+ <KEYWORD3>str-cat</KEYWORD3>\r
+ <KEYWORD3>str-compare</KEYWORD3>\r
+ <KEYWORD3>str-index</KEYWORD3>\r
+ <KEYWORD3>str-length</KEYWORD3>\r
+ <KEYWORD3>string-to-field</KEYWORD3>\r
+ <KEYWORD3>sub-string</KEYWORD3>\r
+ <KEYWORD3>sym-cat</KEYWORD3>\r
+ <KEYWORD3>upcase</KEYWORD3>\r
+ <KEYWORD3>fetch</KEYWORD3>\r
+ <KEYWORD3>print-region</KEYWORD3>\r
+ <KEYWORD3>toss</KEYWORD3>\r
+ \r
+ <KEYWORD4>abs</KEYWORD4>\r
+ <KEYWORD4>div</KEYWORD4>\r
+ <KEYWORD4>float</KEYWORD4>\r
+ <KEYWORD4>integer</KEYWORD4>\r
+ <KEYWORD4>max</KEYWORD4>\r
+ <KEYWORD4>min</KEYWORD4>\r
+ <KEYWORD4>deg-grad</KEYWORD4>\r
+ <KEYWORD4>deg-rad</KEYWORD4>\r
+ <KEYWORD4>exp</KEYWORD4>\r
+ <KEYWORD4>grad-deg</KEYWORD4>\r
+ <KEYWORD4>log</KEYWORD4>\r
+ <KEYWORD4>log10</KEYWORD4>\r
+ <KEYWORD4>mod</KEYWORD4>\r
+ <KEYWORD4>pi</KEYWORD4>\r
+ <KEYWORD4>rad-deg</KEYWORD4>\r
+ <KEYWORD4>round</KEYWORD4>\r
+ <KEYWORD4>sqrt</KEYWORD4>\r
+ <KEYWORD4>close</KEYWORD4>\r
+ <KEYWORD4>format</KEYWORD4>\r
+ <KEYWORD4>open</KEYWORD4>\r
+ <KEYWORD4>printout</KEYWORD4>\r
+ <KEYWORD4>read</KEYWORD4>\r
+ <KEYWORD4>readline</KEYWORD4>\r
+ <KEYWORD4>remove</KEYWORD4>\r
+ <KEYWORD4>rename</KEYWORD4>\r
+ <KEYWORD4>conserve-mem</KEYWORD4>\r
+ <KEYWORD4>mem-used</KEYWORD4>\r
+ <KEYWORD4>mem-requests</KEYWORD4>\r
+ <KEYWORD4>release-mem</KEYWORD4>\r
+ <KEYWORD4>funcall</KEYWORD4>\r
+ <KEYWORD4>gensym</KEYWORD4>\r
+ <KEYWORD4>gemsym*</KEYWORD4>\r
+ <KEYWORD4>get-function-restriction</KEYWORD4>\r
+ <KEYWORD4>length</KEYWORD4>\r
+ <KEYWORD4>random</KEYWORD4>\r
+ <KEYWORD4>seed</KEYWORD4>\r
+ <KEYWORD4>setgen</KEYWORD4>\r
+ <KEYWORD4>sort</KEYWORD4>\r
+ <KEYWORD4>time</KEYWORD4>\r
+ <KEYWORD4>timer</KEYWORD4>\r
+ <KEYWORD4>acos</KEYWORD4>\r
+ <KEYWORD4>acosh</KEYWORD4>\r
+ <KEYWORD4>acot</KEYWORD4>\r
+ <KEYWORD4>acoth</KEYWORD4>\r
+ <KEYWORD4>acsc</KEYWORD4>\r
+ <KEYWORD4>acsch</KEYWORD4>\r
+ <KEYWORD4>asec</KEYWORD4>\r
+ <KEYWORD4>asin</KEYWORD4>\r
+ <KEYWORD4>asinh</KEYWORD4>\r
+ <KEYWORD4>atan</KEYWORD4>\r
+ <KEYWORD4>atanh</KEYWORD4>\r
+ <KEYWORD4>cos</KEYWORD4>\r
+ <KEYWORD4>cosh</KEYWORD4>\r
+ <KEYWORD4>cot</KEYWORD4>\r
+ <KEYWORD4>coth</KEYWORD4>\r
+ <KEYWORD4>csc</KEYWORD4>\r
+ <KEYWORD4>sec</KEYWORD4>\r
+ <KEYWORD4>sech</KEYWORD4>\r
+ <KEYWORD4>sin</KEYWORD4>\r
+ <KEYWORD4>sinh</KEYWORD4>\r
+ <KEYWORD4>tan</KEYWORD4>\r
+ <KEYWORD4>tanh</KEYWORD4>\r
+ \r
+ </KEYWORDS>\r
+ \r
+ </RULES>\r
+ \r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- COBOL mode, by Matthias M. Schneider -->\r
+<MODE>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <EOL_SPAN_REGEXP TYPE="COMMENT1" AT_LINE_START="TRUE">.{6}(\*|/)</EOL_SPAN_REGEXP>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR"> = </SEQ>\r
+ <SEQ TYPE="OPERATOR"> >= </SEQ>\r
+ <SEQ TYPE="OPERATOR"> <= </SEQ>\r
+ <SEQ TYPE="OPERATOR"> + </SEQ>\r
+ <SEQ TYPE="OPERATOR"> - </SEQ>\r
+ <SEQ TYPE="OPERATOR"> / </SEQ>\r
+ <SEQ TYPE="OPERATOR"> * </SEQ>\r
+ <SEQ TYPE="OPERATOR"> ** </SEQ>\r
+ <SEQ TYPE="OPERATOR"> > </SEQ>\r
+ <SEQ TYPE="OPERATOR"> < </SEQ>\r
+ <SEQ TYPE="OPERATOR"> % </SEQ>\r
+ <SEQ TYPE="OPERATOR"> & </SEQ>\r
+ <SEQ TYPE="OPERATOR"> | </SEQ>\r
+ <SEQ TYPE="OPERATOR"> ^ </SEQ>\r
+ <SEQ TYPE="OPERATOR"> ~ </SEQ>\r
+\r
+ <SPAN TYPE="COMMENT2" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>EXEC SQL</BEGIN>\r
+ <END>END-EXEC</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>ACCEPT</KEYWORD1>\r
+ <KEYWORD1>ACCESS</KEYWORD1>\r
+ <KEYWORD1>ACTUAL</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ADDRESS</KEYWORD1>\r
+ <KEYWORD1>ADVANCING</KEYWORD1>\r
+ <KEYWORD1>AFTER</KEYWORD1>\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>ALPHABET</KEYWORD1>\r
+ <KEYWORD1>ALPHABETIC</KEYWORD1>\r
+ <KEYWORD1>ALPHABETIC-LOWER</KEYWORD1>\r
+ <KEYWORD1>ALPHABETIC-UPPER</KEYWORD1>\r
+ <KEYWORD1>ALPHANUMERIC</KEYWORD1>\r
+ <KEYWORD1>ALPHANUMERIC-EDITED</KEYWORD1>\r
+ <KEYWORD1>ALSO</KEYWORD1>\r
+ <KEYWORD1>ALTER</KEYWORD1>\r
+ <KEYWORD1>ALTERNATE</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>API</KEYWORD1>\r
+ <KEYWORD1>APPLY</KEYWORD1>\r
+ <KEYWORD1>ARE</KEYWORD1>\r
+ <KEYWORD1>AREA</KEYWORD1>\r
+ <KEYWORD1>AREAS</KEYWORD1>\r
+ <KEYWORD1>ASCENDING</KEYWORD1>\r
+ <KEYWORD1>ASSIGN</KEYWORD1>\r
+ <KEYWORD1>AT</KEYWORD1>\r
+ <KEYWORD1>AUTHOR</KEYWORD1>\r
+ <KEYWORD1>AUTO</KEYWORD1>\r
+ <KEYWORD1>AUTO-SKIP</KEYWORD1>\r
+ <KEYWORD1>AUTOMATIC</KEYWORD1>\r
+\r
+ <KEYWORD1>BACKGROUND-COLOR</KEYWORD1>\r
+ <KEYWORD1>BACKGROUND-COLOUR</KEYWORD1>\r
+ <KEYWORD1>BACKWARD</KEYWORD1>\r
+ <KEYWORD1>BASIS</KEYWORD1>\r
+ <KEYWORD1>BEEP</KEYWORD1>\r
+ <KEYWORD1>BEFORE</KEYWORD1>\r
+ <KEYWORD1>BEGINNING</KEYWORD1>\r
+ <KEYWORD1>BELL</KEYWORD1>\r
+ <KEYWORD1>BINARY</KEYWORD1>\r
+ <KEYWORD1>BLANK</KEYWORD1>\r
+ <KEYWORD1>BLINK</KEYWORD1>\r
+ <KEYWORD1>BLOCK</KEYWORD1>\r
+ <KEYWORD1>BOTTOM</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+\r
+ <KEYWORD1>C01</KEYWORD1>\r
+ <KEYWORD1>C02</KEYWORD1>\r
+ <KEYWORD1>C03</KEYWORD1>\r
+ <KEYWORD1>C04</KEYWORD1>\r
+ <KEYWORD1>C05</KEYWORD1>\r
+ <KEYWORD1>C06</KEYWORD1>\r
+ <KEYWORD1>C07</KEYWORD1>\r
+ <KEYWORD1>C08</KEYWORD1>\r
+ <KEYWORD1>C09</KEYWORD1>\r
+ <KEYWORD1>C10</KEYWORD1>\r
+ <KEYWORD1>C11</KEYWORD1>\r
+ <KEYWORD1>C12</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>CALL-CONVENTION</KEYWORD1>\r
+ <KEYWORD1>CANCEL</KEYWORD1>\r
+ <KEYWORD1>CBL</KEYWORD1>\r
+ <KEYWORD1>CD</KEYWORD1>\r
+ <KEYWORD1>CF</KEYWORD1>\r
+ <KEYWORD1>CH</KEYWORD1>\r
+ <KEYWORD1>CHAIN</KEYWORD1>\r
+ <KEYWORD1>CHAINING</KEYWORD1>\r
+ <KEYWORD1>CHANGED</KEYWORD1>\r
+ <KEYWORD1>CHARACTER</KEYWORD1>\r
+ <KEYWORD1>CHARACTERS</KEYWORD1>\r
+ <KEYWORD1>CLASS</KEYWORD1>\r
+ <KEYWORD1>CLOCK-UNITS</KEYWORD1>\r
+ <KEYWORD1>CLOSE</KEYWORD1>\r
+ <KEYWORD1>COBOL</KEYWORD1>\r
+ <KEYWORD1>CODE</KEYWORD1>\r
+ <KEYWORD1>CODE-SET</KEYWORD1>\r
+ <KEYWORD1>COL</KEYWORD1>\r
+ <KEYWORD1>COLLATING</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ <KEYWORD1>COM-REG</KEYWORD1>\r
+ <KEYWORD1>COMMA</KEYWORD1>\r
+ <KEYWORD1>COMMIT</KEYWORD1>\r
+ <KEYWORD1>COMMON</KEYWORD1>\r
+ <KEYWORD1>COMMUNICATION</KEYWORD1>\r
+ <KEYWORD1>COMP</KEYWORD1>\r
+ <KEYWORD1>COMP-0</KEYWORD1>\r
+ <KEYWORD1>COMP-1</KEYWORD1>\r
+ <KEYWORD1>COMP-2</KEYWORD1>\r
+ <KEYWORD1>COMP-3</KEYWORD1>\r
+ <KEYWORD1>COMP-4</KEYWORD1>\r
+ <KEYWORD1>COMP-5</KEYWORD1>\r
+ <KEYWORD1>COMP-6</KEYWORD1>\r
+ <KEYWORD1>COMP-X</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-0</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-1</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-2</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-3</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-4</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-5</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-6</KEYWORD1>\r
+ <KEYWORD1>COMPUTATIONAL-X</KEYWORD1>\r
+ <KEYWORD1>COMPUTE</KEYWORD1>\r
+ <KEYWORD1>CONFIGURATION</KEYWORD1>\r
+ <KEYWORD1>CONSOLE</KEYWORD1>\r
+ <KEYWORD1>CONTAINS</KEYWORD1>\r
+ <KEYWORD1>CONTENT</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONTROL</KEYWORD1>\r
+ <KEYWORD1>CONTROLS</KEYWORD1>\r
+ <KEYWORD1>CONVERTING</KEYWORD1>\r
+ <KEYWORD1>COPY</KEYWORD1>\r
+ <KEYWORD1>CORE-INDEX</KEYWORD1>\r
+ <KEYWORD1>CORR</KEYWORD1>\r
+ <KEYWORD1>CORRESPONDING</KEYWORD1>\r
+ <KEYWORD1>COUNT</KEYWORD1>\r
+ <KEYWORD1>CRT</KEYWORD1>\r
+ <KEYWORD1>CRT-UNDER</KEYWORD1>\r
+ <KEYWORD1>CURRENCY</KEYWORD1>\r
+ <KEYWORD1>CURRENT-DATE</KEYWORD1>\r
+ <KEYWORD1>CURSOR</KEYWORD1>\r
+ <KEYWORD1>CYCLE</KEYWORD1>\r
+ <KEYWORD1>CYL-INDEX</KEYWORD1>\r
+ <KEYWORD1>CYL-OVERFLOW</KEYWORD1>\r
+\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>DATE</KEYWORD1>\r
+ <KEYWORD1>DATE-COMPILED</KEYWORD1>\r
+ <KEYWORD1>DATE-WRITTEN</KEYWORD1>\r
+ <KEYWORD1>DAY</KEYWORD1>\r
+ <KEYWORD1>DAY-OF-WEEK</KEYWORD1>\r
+ <KEYWORD1>DBCS</KEYWORD1>\r
+ <KEYWORD1>DE</KEYWORD1>\r
+ <KEYWORD1>DEBUG</KEYWORD1>\r
+ <KEYWORD1>DEBUG-CONTENTS</KEYWORD1>\r
+ <KEYWORD1>DEBUG-ITEM</KEYWORD1>\r
+ <KEYWORD1>DEBUG-LINE</KEYWORD1>\r
+ <KEYWORD1>DEBUG-NAME</KEYWORD1>\r
+ <KEYWORD1>DEBUG-SUB-1</KEYWORD1>\r
+ <KEYWORD1>DEBUG-SUB-2</KEYWORD1>\r
+ <KEYWORD1>DEBUG-SUB-3</KEYWORD1>\r
+ <KEYWORD1>DEBUGGING</KEYWORD1>\r
+ <KEYWORD1>DECIMAL-POINT</KEYWORD1>\r
+ <KEYWORD1>DECLARATIVES</KEYWORD1>\r
+ <KEYWORD1>DELETE</KEYWORD1>\r
+ <KEYWORD1>DELIMITED</KEYWORD1>\r
+ <KEYWORD1>DELIMITER</KEYWORD1>\r
+ <KEYWORD1>DEPENDING</KEYWORD1>\r
+ <KEYWORD1>DESCENDING</KEYWORD1>\r
+ <KEYWORD1>DESTINATION</KEYWORD1>\r
+ <KEYWORD1>DETAIL</KEYWORD1>\r
+ <KEYWORD1>DISABLE</KEYWORD1>\r
+ <KEYWORD1>DISK</KEYWORD1>\r
+ <KEYWORD1>DISP</KEYWORD1>\r
+ <KEYWORD1>DISPLAY</KEYWORD1>\r
+ <KEYWORD1>DISPLAY-1</KEYWORD1>\r
+ <KEYWORD1>DISPLAY-ST</KEYWORD1>\r
+ <KEYWORD1>DIVIDE</KEYWORD1>\r
+ <KEYWORD1>DIVISION</KEYWORD1>\r
+ <KEYWORD1>DOWN</KEYWORD1>\r
+ <KEYWORD1>DUPLICATES</KEYWORD1>\r
+ <KEYWORD1>DYNAMIC</KEYWORD1>\r
+\r
+ <KEYWORD1>ECHO</KEYWORD1>\r
+ <KEYWORD1>EGCS</KEYWORD1>\r
+ <KEYWORD1>EGI</KEYWORD1>\r
+ <KEYWORD1>EJECT</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>EMI</KEYWORD1>\r
+ <KEYWORD1>EMPTY-CHECK</KEYWORD1>\r
+ <KEYWORD1>ENABLE</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>END-ACCEPT</KEYWORD1>\r
+ <KEYWORD1>END-ADD</KEYWORD1>\r
+ <KEYWORD1>END-CALL</KEYWORD1>\r
+ <KEYWORD1>END-CHAIN</KEYWORD1>\r
+ <KEYWORD1>END-COMPUTE</KEYWORD1>\r
+ <KEYWORD1>END-DELETE</KEYWORD1>\r
+ <KEYWORD1>END-DISPLAY</KEYWORD1>\r
+ <KEYWORD1>END-DIVIDE</KEYWORD1>\r
+ <KEYWORD1>END-EVALUATE</KEYWORD1>\r
+ <KEYWORD1>END-IF</KEYWORD1>\r
+ <KEYWORD1>END-INVOKE</KEYWORD1>\r
+ <KEYWORD1>END-MULTIPLY</KEYWORD1>\r
+ <KEYWORD1>END-OF-PAGE</KEYWORD1>\r
+ <KEYWORD1>END-PERFORM</KEYWORD1>\r
+ <KEYWORD1>END-READ</KEYWORD1>\r
+ <KEYWORD1>END-RECEIVE</KEYWORD1>\r
+ <KEYWORD1>END-RETURN</KEYWORD1>\r
+ <KEYWORD1>END-REWRITE</KEYWORD1>\r
+ <KEYWORD1>END-SEARCH</KEYWORD1>\r
+ <KEYWORD1>END-START</KEYWORD1>\r
+ <KEYWORD1>END-STRING</KEYWORD1>\r
+ <KEYWORD1>END-SUBTRACT</KEYWORD1>\r
+ <KEYWORD1>END-UNSTRING</KEYWORD1>\r
+ <KEYWORD1>END-WRITE</KEYWORD1>\r
+ <KEYWORD1>ENDING</KEYWORD1>\r
+ <KEYWORD1>ENTER</KEYWORD1>\r
+ <KEYWORD1>ENTRY</KEYWORD1>\r
+ <KEYWORD1>ENVIRONMENT</KEYWORD1>\r
+ <KEYWORD1>EOL</KEYWORD1>\r
+ <KEYWORD1>EOP</KEYWORD1>\r
+ <KEYWORD1>EOS</KEYWORD1>\r
+ <KEYWORD1>EQUAL</KEYWORD1>\r
+ <KEYWORD1>EQUALS</KEYWORD1>\r
+ <KEYWORD1>ERASE</KEYWORD1>\r
+ <KEYWORD1>ERROR</KEYWORD1>\r
+ <KEYWORD1>ESCAPE</KEYWORD1>\r
+ <KEYWORD1>ESI</KEYWORD1>\r
+ <KEYWORD1>EVALUATE</KEYWORD1>\r
+ <KEYWORD1>EVERY</KEYWORD1>\r
+ <KEYWORD1>EXAMINE</KEYWORD1>\r
+ <KEYWORD1>EXCEEDS</KEYWORD1>\r
+ <KEYWORD1>EXCEPTION</KEYWORD1>\r
+ <KEYWORD1>EXCESS-3</KEYWORD1>\r
+ <KEYWORD1>EXCLUSIVE</KEYWORD1>\r
+ <KEYWORD1>EXEC</KEYWORD1>\r
+ <KEYWORD1>EXECUTE</KEYWORD1>\r
+ <KEYWORD1>EXHIBIT</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>EXTEND</KEYWORD1>\r
+ <KEYWORD1>EXTENDED-SEARCH</KEYWORD1>\r
+ <KEYWORD1>EXTERNAL</KEYWORD1>\r
+\r
+ <KEYWORD1>FACTORY</KEYWORD1>\r
+ <KEYWORD1>FALSE</KEYWORD1>\r
+ <KEYWORD1>FD</KEYWORD1>\r
+ <KEYWORD1>FH-FCD</KEYWORD1>\r
+ <KEYWORD1>FH-KEYDEF</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILE-CONTROL</KEYWORD1>\r
+ <KEYWORD1>FILE-ID</KEYWORD1>\r
+ <KEYWORD1>FILE-LIMIT</KEYWORD1>\r
+ <KEYWORD1>FILE-LIMITS</KEYWORD1>\r
+ <KEYWORD1>FILLER</KEYWORD1>\r
+ <KEYWORD1>FINAL</KEYWORD1>\r
+ <KEYWORD1>FIRST</KEYWORD1>\r
+ <KEYWORD1>FIXED</KEYWORD1>\r
+ <KEYWORD1>FOOTING</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FOREGROUND-COLOR</KEYWORD1>\r
+ <KEYWORD1>FOREGROUND-COLOUR</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FULL</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+\r
+ <KEYWORD1>GENERATE</KEYWORD1>\r
+ <KEYWORD1>GIVING</KEYWORD1>\r
+ <KEYWORD1>GLOBAL</KEYWORD1>\r
+ <KEYWORD1>GO</KEYWORD1>\r
+ <KEYWORD1>GOBACK</KEYWORD1>\r
+ <KEYWORD1>GREATER</KEYWORD1>\r
+ <KEYWORD1>GRID</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+\r
+ <KEYWORD1>HEADING</KEYWORD1>\r
+ <KEYWORD1>HIGH</KEYWORD1>\r
+ <KEYWORD1>HIGH-VALUE</KEYWORD1>\r
+ <KEYWORD1>HIGH-VALUES</KEYWORD1>\r
+ <KEYWORD1>HIGHLIGHT</KEYWORD1>\r
+\r
+ <KEYWORD1>I-O</KEYWORD1>\r
+ <KEYWORD1>I-O-CONTROL</KEYWORD1>\r
+ <KEYWORD1>ID</KEYWORD1>\r
+ <KEYWORD1>IDENTIFICATION</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>IGNORE</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>INDEXED</KEYWORD1>\r
+ <KEYWORD1>INDICATE</KEYWORD1>\r
+ <KEYWORD1>INHERITING</KEYWORD1>\r
+ <KEYWORD1>INITIAL</KEYWORD1>\r
+ <KEYWORD1>INITIALIZE</KEYWORD1>\r
+ <KEYWORD1>INITIATE</KEYWORD1>\r
+ <KEYWORD1>INPUT</KEYWORD1>\r
+ <KEYWORD1>INPUT-OUTPUT</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INSPECT</KEYWORD1>\r
+ <KEYWORD1>INSTALLATION</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>INVALID</KEYWORD1>\r
+ <KEYWORD1>INVOKE</KEYWORD1>\r
+ <KEYWORD1>IS</KEYWORD1>\r
+\r
+ <KEYWORD1>JAPANESE</KEYWORD1>\r
+ <KEYWORD1>JUST</KEYWORD1>\r
+ <KEYWORD1>JUSTIFIED</KEYWORD1>\r
+\r
+ <KEYWORD1>KANJI</KEYWORD1>\r
+ <KEYWORD1>KEPT</KEYWORD1>\r
+ <KEYWORD1>KEY</KEYWORD1>\r
+ <KEYWORD1>KEYBOARD</KEYWORD1>\r
+\r
+ <KEYWORD1>LABEL</KEYWORD1>\r
+ <KEYWORD1>LAST</KEYWORD1>\r
+ <KEYWORD1>LEADING</KEYWORD1>\r
+ <KEYWORD1>LEAVE</KEYWORD1>\r
+ <KEYWORD1>LEFT</KEYWORD1>\r
+ <KEYWORD1>LEFT-JUSTIFY</KEYWORD1>\r
+ <KEYWORD1>LEFTLINE</KEYWORD1>\r
+ <KEYWORD1>LENGTH</KEYWORD1>\r
+ <KEYWORD1>LENGTH-CHECK</KEYWORD1>\r
+ <KEYWORD1>LESS</KEYWORD1>\r
+ <KEYWORD1>LIMIT</KEYWORD1>\r
+ <KEYWORD1>LIMITS</KEYWORD1>\r
+ <KEYWORD1>LIN</KEYWORD1>\r
+ <KEYWORD1>LINAGE</KEYWORD1>\r
+ <KEYWORD1>LINAGE-COUNTER</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LINE-COUNTER</KEYWORD1>\r
+ <KEYWORD1>LINES</KEYWORD1>\r
+ <KEYWORD1>LINKAGE</KEYWORD1>\r
+ <KEYWORD1>LOCAL-STORAGE</KEYWORD1>\r
+ <KEYWORD1>LOCK</KEYWORD1>\r
+ <KEYWORD1>LOCKING</KEYWORD1>\r
+ <KEYWORD1>LOW</KEYWORD1>\r
+ <KEYWORD1>LOW-VALUE</KEYWORD1>\r
+ <KEYWORD1>LOW-VALUES</KEYWORD1>\r
+ <KEYWORD1>LOWER</KEYWORD1>\r
+ <KEYWORD1>LOWLIGHT</KEYWORD1>\r
+\r
+ <KEYWORD1>MANUAL</KEYWORD1>\r
+ <KEYWORD1>MASTER-INDEX</KEYWORD1>\r
+ <KEYWORD1>MEMORY</KEYWORD1>\r
+ <KEYWORD1>MERGE</KEYWORD1>\r
+ <KEYWORD1>MESSAGE</KEYWORD1>\r
+ <KEYWORD1>METHOD</KEYWORD1>\r
+ <KEYWORD1>MODE</KEYWORD1>\r
+ <KEYWORD1>MODULES</KEYWORD1>\r
+ <KEYWORD1>MORE-LABELS</KEYWORD1>\r
+ <KEYWORD1>MOVE</KEYWORD1>\r
+ <KEYWORD1>MULTIPLE</KEYWORD1>\r
+ <KEYWORD1>MULTIPLY</KEYWORD1>\r
+\r
+ <KEYWORD1>NAME</KEYWORD1>\r
+ <KEYWORD1>NAMED</KEYWORD1>\r
+ <KEYWORD1>NATIONAL</KEYWORD1>\r
+ <KEYWORD1>NATIONAL-EDITED</KEYWORD1>\r
+ <KEYWORD1>NATIVE</KEYWORD1>\r
+ <KEYWORD1>NCHAR</KEYWORD1>\r
+ <KEYWORD1>NEGATIVE</KEYWORD1>\r
+ <KEYWORD1>NEXT</KEYWORD1>\r
+ <KEYWORD1>NO</KEYWORD1>\r
+ <KEYWORD1>NO-ECHO</KEYWORD1>\r
+ <KEYWORD1>NOMINAL</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NOTE</KEYWORD1>\r
+ <KEYWORD1>NSTD-REELS</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>NULLS</KEYWORD1>\r
+ <KEYWORD1>NUMBER</KEYWORD1>\r
+ <KEYWORD1>NUMERIC</KEYWORD1>\r
+ <KEYWORD1>NUMERIC-EDITED</KEYWORD1>\r
+\r
+ <KEYWORD1>OBJECT</KEYWORD1>\r
+ <KEYWORD1>OBJECT-COMPUTER</KEYWORD1>\r
+ <KEYWORD1>OBJECT-STORAGE</KEYWORD1>\r
+ <KEYWORD1>OCCURS</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>OFF</KEYWORD1>\r
+ <KEYWORD1>OMITTED</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>OOSTACKPTR</KEYWORD1>\r
+ <KEYWORD1>OPEN</KEYWORD1>\r
+ <KEYWORD1>OPTIONAL</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>ORDER</KEYWORD1>\r
+ <KEYWORD1>ORGANIZATION</KEYWORD1>\r
+ <KEYWORD1>OTHER</KEYWORD1>\r
+ <KEYWORD1>OTHERWISE</KEYWORD1>\r
+ <KEYWORD1>OUTPUT</KEYWORD1>\r
+ <KEYWORD1>OVERFLOW</KEYWORD1>\r
+ <KEYWORD1>OVERLINE</KEYWORD1>\r
+\r
+ <KEYWORD1>PACKED-DECIMAL</KEYWORD1>\r
+ <KEYWORD1>PADDING</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>PAGE-COUNTER</KEYWORD1>\r
+ <KEYWORD1>PARAGRAPH</KEYWORD1>\r
+ <KEYWORD1>PASSWORD</KEYWORD1>\r
+ <KEYWORD1>PERFORM</KEYWORD1>\r
+ <KEYWORD1>PF</KEYWORD1>\r
+ <KEYWORD1>PH</KEYWORD1>\r
+ <KEYWORD1>PIC</KEYWORD1>\r
+ <KEYWORD1>PICTURE</KEYWORD1>\r
+ <KEYWORD1>PLUS</KEYWORD1>\r
+ <KEYWORD1>POINTER</KEYWORD1>\r
+ <KEYWORD1>POS</KEYWORD1>\r
+ <KEYWORD1>POSITION</KEYWORD1>\r
+ <KEYWORD1>POSITIONING</KEYWORD1>\r
+ <KEYWORD1>POSITIVE</KEYWORD1>\r
+ <KEYWORD1>PREVIOUS</KEYWORD1>\r
+ <KEYWORD1>PRINT</KEYWORD1>\r
+ <KEYWORD1>PRINT-SWITCH</KEYWORD1>\r
+ <KEYWORD1>PRINTER</KEYWORD1>\r
+ <KEYWORD1>PRINTER-1</KEYWORD1>\r
+ <KEYWORD1>PRINTING</KEYWORD1>\r
+ <KEYWORD1>PRIVATE</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE-POINTER</KEYWORD1>\r
+ <KEYWORD1>PROCEDURES</KEYWORD1>\r
+ <KEYWORD1>PROCEED</KEYWORD1>\r
+ <KEYWORD1>PROCESSING</KEYWORD1>\r
+ <KEYWORD1>PROGRAM</KEYWORD1>\r
+ <KEYWORD1>PROGRAM-ID</KEYWORD1>\r
+ <KEYWORD1>PROMPT</KEYWORD1>\r
+ <KEYWORD1>PROTECTED</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>PURGE</KEYWORD1>\r
+\r
+ <KEYWORD1>QUEUE</KEYWORD1>\r
+ <KEYWORD1>QUOTE</KEYWORD1>\r
+ <KEYWORD1>QUOTES</KEYWORD1>\r
+\r
+ <KEYWORD1>RANDOM</KEYWORD1>\r
+ <KEYWORD1>RANGE</KEYWORD1>\r
+ <KEYWORD1>RD</KEYWORD1>\r
+ <KEYWORD1>READ</KEYWORD1>\r
+ <KEYWORD1>READY</KEYWORD1>\r
+ <KEYWORD1>RECEIVE</KEYWORD1>\r
+ <KEYWORD1>RECORD</KEYWORD1>\r
+ <KEYWORD1>RECORD-OVERFLOW</KEYWORD1>\r
+ <KEYWORD1>RECORDING</KEYWORD1>\r
+ <KEYWORD1>RECORDS</KEYWORD1>\r
+ <KEYWORD1>REDEFINES</KEYWORD1>\r
+ <KEYWORD1>REEL</KEYWORD1>\r
+ <KEYWORD1>REFERENCE</KEYWORD1>\r
+ <KEYWORD1>REFERENCES</KEYWORD1>\r
+ <KEYWORD1>RELATIVE</KEYWORD1>\r
+ <KEYWORD1>RELEASE</KEYWORD1>\r
+ <KEYWORD1>RELOAD</KEYWORD1>\r
+ <KEYWORD1>REMAINDER</KEYWORD1>\r
+ <KEYWORD1>REMARKS</KEYWORD1>\r
+ <KEYWORD1>REMOVAL</KEYWORD1>\r
+ <KEYWORD1>RENAMES</KEYWORD1>\r
+ <KEYWORD1>REORG-CRITERIA</KEYWORD1>\r
+ <KEYWORD1>REPLACE</KEYWORD1>\r
+ <KEYWORD1>REPLACING</KEYWORD1>\r
+ <KEYWORD1>REPORT</KEYWORD1>\r
+ <KEYWORD1>REPORTING</KEYWORD1>\r
+ <KEYWORD1>REPORTS</KEYWORD1>\r
+ <KEYWORD1>REQUIRED</KEYWORD1>\r
+ <KEYWORD1>REREAD</KEYWORD1>\r
+ <KEYWORD1>RERUN</KEYWORD1>\r
+ <KEYWORD1>RESERVE</KEYWORD1>\r
+ <KEYWORD1>RESET</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>RETURN-CODE</KEYWORD1>\r
+ <KEYWORD1>RETURNING</KEYWORD1>\r
+ <KEYWORD1>REVERSE</KEYWORD1>\r
+ <KEYWORD1>REVERSE-VIDEO</KEYWORD1>\r
+ <KEYWORD1>REVERSED</KEYWORD1>\r
+ <KEYWORD1>REWIND</KEYWORD1>\r
+ <KEYWORD1>REWRITE</KEYWORD1>\r
+ <KEYWORD1>RF</KEYWORD1>\r
+ <KEYWORD1>RH</KEYWORD1>\r
+ <KEYWORD1>RIGHT</KEYWORD1>\r
+ <KEYWORD1>RIGHT-JUSTIFY</KEYWORD1>\r
+ <KEYWORD1>ROLLBACK</KEYWORD1>\r
+ <KEYWORD1>ROUNDED</KEYWORD1>\r
+ <KEYWORD1>RUN</KEYWORD1>\r
+\r
+ <KEYWORD1>S01</KEYWORD1>\r
+ <KEYWORD1>S02</KEYWORD1>\r
+ <KEYWORD1>S03</KEYWORD1>\r
+ <KEYWORD1>S04</KEYWORD1>\r
+ <KEYWORD1>S05</KEYWORD1>\r
+ <KEYWORD1>SAME</KEYWORD1>\r
+ <KEYWORD1>SCREEN</KEYWORD1>\r
+ <KEYWORD1>SD</KEYWORD1>\r
+ <KEYWORD1>SEARCH</KEYWORD1>\r
+ <KEYWORD1>SECTION</KEYWORD1>\r
+ <KEYWORD1>SECURE</KEYWORD1>\r
+ <KEYWORD1>SECURITY</KEYWORD1>\r
+ <KEYWORD1>SEEK</KEYWORD1>\r
+ <KEYWORD1>SEGMENT</KEYWORD1>\r
+ <KEYWORD1>SEGMENT-LIMIT</KEYWORD1>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>SELECTIVE</KEYWORD1>\r
+ <KEYWORD1>SEND</KEYWORD1>\r
+ <KEYWORD1>SENTENCE</KEYWORD1>\r
+ <KEYWORD1>SEPARATE</KEYWORD1>\r
+ <KEYWORD1>SEQUENCE</KEYWORD1>\r
+ <KEYWORD1>SEQUENTIAL</KEYWORD1>\r
+ <KEYWORD1>SERVICE</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SHIFT-IN</KEYWORD1>\r
+ <KEYWORD1>SHIFT-OUT</KEYWORD1>\r
+ <KEYWORD1>SIGN</KEYWORD1>\r
+ <KEYWORD1>SIZE</KEYWORD1>\r
+ <KEYWORD1>SKIP1</KEYWORD1>\r
+ <KEYWORD1>SKIP2</KEYWORD1>\r
+ <KEYWORD1>SKIP3</KEYWORD1>\r
+ <KEYWORD1>SORT</KEYWORD1>\r
+ <KEYWORD1>SORT-CONTROL</KEYWORD1>\r
+ <KEYWORD1>SORT-CORE-SIZE</KEYWORD1>\r
+ <KEYWORD1>SORT-FILE-SIZE</KEYWORD1>\r
+ <KEYWORD1>SORT-MERGE</KEYWORD1>\r
+ <KEYWORD1>SORT-MESSAGE</KEYWORD1>\r
+ <KEYWORD1>SORT-MODE-SIZE</KEYWORD1>\r
+ <KEYWORD1>SORT-OPTION</KEYWORD1>\r
+ <KEYWORD1>SORT-RETURN</KEYWORD1>\r
+ <KEYWORD1>SOURCE</KEYWORD1>\r
+ <KEYWORD1>SOURCE-COMPUTER</KEYWORD1>\r
+ <KEYWORD1>SPACE</KEYWORD1>\r
+ <KEYWORD1>SPACE-FILL</KEYWORD1>\r
+ <KEYWORD1>SPACES</KEYWORD1>\r
+ <KEYWORD1>SPECIAL-NAMES</KEYWORD1>\r
+ <KEYWORD1>STANDARD</KEYWORD1>\r
+ <KEYWORD1>STANDARD-1</KEYWORD1>\r
+ <KEYWORD1>STANDARD-2</KEYWORD1>\r
+ <KEYWORD1>START</KEYWORD1>\r
+ <KEYWORD1>STATUS</KEYWORD1>\r
+ <KEYWORD1>STOP</KEYWORD1>\r
+ <KEYWORD1>STORE</KEYWORD1>\r
+ <KEYWORD1>STRING</KEYWORD1>\r
+ <KEYWORD1>SUB-QUEUE-1</KEYWORD1>\r
+ <KEYWORD1>SUB-QUEUE-2</KEYWORD1>\r
+ <KEYWORD1>SUB-QUEUE-3</KEYWORD1>\r
+ <KEYWORD1>SUBTRACT</KEYWORD1>\r
+ <KEYWORD1>SUM</KEYWORD1>\r
+ <KEYWORD1>SUPER</KEYWORD1>\r
+ <KEYWORD1>SUPPRESS</KEYWORD1>\r
+ <KEYWORD1>SYMBOLIC</KEYWORD1>\r
+ <KEYWORD1>SYNC</KEYWORD1>\r
+ <KEYWORD1>SYNCHRONIZED</KEYWORD1>\r
+ <KEYWORD1>SYSIN</KEYWORD1>\r
+ <KEYWORD1>SYSIPT</KEYWORD1>\r
+ <KEYWORD1>SYSLST</KEYWORD1>\r
+ <KEYWORD1>SYSOUT</KEYWORD1>\r
+ <KEYWORD1>SYSPCH</KEYWORD1>\r
+ <KEYWORD1>SYSPUNCH</KEYWORD1>\r
+\r
+ <KEYWORD1>TAB</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TALLY</KEYWORD1>\r
+ <KEYWORD1>TALLYING</KEYWORD1>\r
+ <KEYWORD1>TAPE</KEYWORD1>\r
+ <KEYWORD1>TERMINAL</KEYWORD1>\r
+ <KEYWORD1>TERMINATE</KEYWORD1>\r
+ <KEYWORD1>TEST</KEYWORD1>\r
+ <KEYWORD1>TEXT</KEYWORD1>\r
+ <KEYWORD1>THAN</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>THROUGH</KEYWORD1>\r
+ <KEYWORD1>THRU</KEYWORD1>\r
+ <KEYWORD1>TIME</KEYWORD1>\r
+ <KEYWORD1>TIME-OF-DAY</KEYWORD1>\r
+ <KEYWORD1>TIME-OUT</KEYWORD1>\r
+ <KEYWORD1>TIMEOUT</KEYWORD1>\r
+ <KEYWORD1>TIMES</KEYWORD1>\r
+ <KEYWORD1>TITLE</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TOP</KEYWORD1>\r
+ <KEYWORD1>TOTALED</KEYWORD1>\r
+ <KEYWORD1>TOTALING</KEYWORD1>\r
+ <KEYWORD1>TRACE</KEYWORD1>\r
+ <KEYWORD1>TRACK-AREA</KEYWORD1>\r
+ <KEYWORD1>TRACK-LIMIT</KEYWORD1>\r
+ <KEYWORD1>TRACKS</KEYWORD1>\r
+ <KEYWORD1>TRAILING</KEYWORD1>\r
+ <KEYWORD1>TRAILING-SIGN</KEYWORD1>\r
+ <KEYWORD1>TRANSFORM</KEYWORD1>\r
+ <KEYWORD1>TRUE</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>TYPEDEF</KEYWORD1>\r
+\r
+ <KEYWORD1>UNDERLINE</KEYWORD1>\r
+ <KEYWORD1>UNEQUAL</KEYWORD1>\r
+ <KEYWORD1>UNIT</KEYWORD1>\r
+ <KEYWORD1>UNLOCK</KEYWORD1>\r
+ <KEYWORD1>UNSTRING</KEYWORD1>\r
+ <KEYWORD1>UNTIL</KEYWORD1>\r
+ <KEYWORD1>UP</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>UPON</KEYWORD1>\r
+ <KEYWORD1>UPPER</KEYWORD1>\r
+ <KEYWORD1>UPSI-0</KEYWORD1>\r
+ <KEYWORD1>UPSI-1</KEYWORD1>\r
+ <KEYWORD1>UPSI-2</KEYWORD1>\r
+ <KEYWORD1>UPSI-3</KEYWORD1>\r
+ <KEYWORD1>UPSI-4</KEYWORD1>\r
+ <KEYWORD1>UPSI-5</KEYWORD1>\r
+ <KEYWORD1>UPSI-6</KEYWORD1>\r
+ <KEYWORD1>UPSI-7</KEYWORD1>\r
+ <KEYWORD1>USAGE</KEYWORD1>\r
+ <KEYWORD1>USE</KEYWORD1>\r
+ <KEYWORD1>USER</KEYWORD1>\r
+ <KEYWORD1>USING</KEYWORD1>\r
+\r
+ <KEYWORD1>VALUE</KEYWORD1>\r
+ <KEYWORD1>VALUES</KEYWORD1>\r
+ <KEYWORD1>VARIABLE</KEYWORD1>\r
+ <KEYWORD1>VARYING</KEYWORD1>\r
+\r
+ <KEYWORD1>WAIT</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHEN-COMPILED</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WORDS</KEYWORD1>\r
+ <KEYWORD1>WORKING-STORAGE</KEYWORD1>\r
+ <KEYWORD1>WRITE</KEYWORD1>\r
+ <KEYWORD1>WRITE-ONLY</KEYWORD1>\r
+ <KEYWORD1>WRITE-VERIFY</KEYWORD1>\r
+\r
+ <KEYWORD1>ZERO</KEYWORD1>\r
+ <KEYWORD1>ZERO-FILL</KEYWORD1>\r
+ <KEYWORD1>ZEROES</KEYWORD1>\r
+ <KEYWORD1>ZEROS</KEYWORD1>\r
+\r
+ <KEYWORD2>ACOS</KEYWORD2>\r
+ <KEYWORD2>ANNUITY</KEYWORD2>\r
+ <KEYWORD2>ASIN</KEYWORD2>\r
+ <KEYWORD2>ATAN</KEYWORD2>\r
+ <KEYWORD2>CHAR</KEYWORD2>\r
+ <KEYWORD2>COS</KEYWORD2>\r
+ <KEYWORD2>CURRENT-DATE</KEYWORD2>\r
+ <KEYWORD2>DATE-OF-INTEGER</KEYWORD2>\r
+ <KEYWORD2>DAY-OF-INTEGER</KEYWORD2>\r
+ <KEYWORD2>FACTORIAL</KEYWORD2>\r
+ <KEYWORD2>INTEGER</KEYWORD2>\r
+ <KEYWORD2>INTEGER-OF-DATE</KEYWORD2>\r
+ <KEYWORD2>INTEGER-OF-DAY</KEYWORD2>\r
+ <KEYWORD2>INTEGER-PART</KEYWORD2>\r
+ <!-- <KEYWORD2>LENGTH</KEYWORD2> -->\r
+ <KEYWORD2>LOG</KEYWORD2>\r
+ <KEYWORD2>LOG10</KEYWORD2>\r
+ <KEYWORD2>LOWER-CASE</KEYWORD2>\r
+ <KEYWORD2>MAX</KEYWORD2>\r
+ <KEYWORD2>MEAN</KEYWORD2>\r
+ <KEYWORD2>MEDIAN</KEYWORD2>\r
+ <KEYWORD2>MIDRANGE</KEYWORD2>\r
+ <KEYWORD2>MIN</KEYWORD2>\r
+ <KEYWORD2>MOD</KEYWORD2>\r
+ <KEYWORD2>NUMVAL</KEYWORD2>\r
+ <KEYWORD2>NUMVAL-C</KEYWORD2>\r
+ <KEYWORD2>ORD</KEYWORD2>\r
+ <KEYWORD2>ORD-MAX</KEYWORD2>\r
+ <KEYWORD2>ORD-MIN</KEYWORD2>\r
+ <KEYWORD2>PRESENT-VALUE</KEYWORD2>\r
+ <KEYWORD2>RANDOM</KEYWORD2>\r
+ <KEYWORD2>RANGE</KEYWORD2>\r
+ <KEYWORD2>REM</KEYWORD2>\r
+ <KEYWORD2>REVERSE</KEYWORD2>\r
+ <KEYWORD2>SIN</KEYWORD2>\r
+ <KEYWORD2>SQRT</KEYWORD2>\r
+ <KEYWORD2>STANDARD-DEVIATION</KEYWORD2>\r
+ <KEYWORD2>SUM</KEYWORD2>\r
+ <KEYWORD2>TAN</KEYWORD2>\r
+ <KEYWORD2>UPPER-CASE</KEYWORD2>\r
+ <KEYWORD2>VARIANCE</KEYWORD2>\r
+ <KEYWORD2>WHEN-COMPILED</KEYWORD2>\r
+\r
+ <!-- Oracle/SQL - Reserved Words\r
+ <KEYWORD3>ACCESS</KEYWORD3>\r
+ <KEYWORD3>ADD</KEYWORD3>\r
+ <KEYWORD3>ALL</KEYWORD3>\r
+ <KEYWORD3>ALTER</KEYWORD3>\r
+ <KEYWORD3>AND</KEYWORD3>\r
+ <KEYWORD3>ANY</KEYWORD3>\r
+ <KEYWORD3>ARRAYLEN</KEYWORD3>\r
+ <KEYWORD3>AS</KEYWORD3>\r
+ <KEYWORD3>ASC</KEYWORD3>\r
+ <KEYWORD3>AUDIT</KEYWORD3>\r
+ <KEYWORD3>BETWEEN</KEYWORD3>\r
+ <KEYWORD3>BY</KEYWORD3>\r
+ <KEYWORD3>CHAR</KEYWORD3>\r
+ <KEYWORD3>CHECK</KEYWORD3>\r
+ <KEYWORD3>CLUSTER</KEYWORD3>\r
+ <KEYWORD3>COLUMN</KEYWORD3>\r
+ <KEYWORD3>COMMENT</KEYWORD3>\r
+ <KEYWORD3>COMPRESS</KEYWORD3>\r
+ <KEYWORD3>CONNECT</KEYWORD3>\r
+ <KEYWORD3>CREATE</KEYWORD3>\r
+ <KEYWORD3>CURRENT</KEYWORD3>\r
+ <KEYWORD3>DATE</KEYWORD3>\r
+ <KEYWORD3>DECIMAL</KEYWORD3>\r
+ <KEYWORD3>DEFAULT</KEYWORD3>\r
+ <KEYWORD3>DELETE</KEYWORD3>\r
+ <KEYWORD3>DESC</KEYWORD3>\r
+ <KEYWORD3>DISTINCT</KEYWORD3>\r
+ <KEYWORD3>DROP</KEYWORD3>\r
+ <KEYWORD3>ELSE</KEYWORD3>\r
+ <KEYWORD3>EXCLUSIVE</KEYWORD3>\r
+ <KEYWORD3>EXEC</KEYWORD3>\r
+ <KEYWORD3>END-EXEC</KEYWORD3>\r
+ <KEYWORD3>EXISTS</KEYWORD3>\r
+ <KEYWORD3>FILE</KEYWORD3>\r
+ <KEYWORD3>FLOAT</KEYWORD3>\r
+ <KEYWORD3>FOR</KEYWORD3>\r
+ <KEYWORD3>FROM</KEYWORD3>\r
+ <KEYWORD3>GRANT</KEYWORD3>\r
+ <KEYWORD3>GROUP</KEYWORD3>\r
+ <KEYWORD3>HAVING</KEYWORD3>\r
+ <KEYWORD3>IDENTIFIED</KEYWORD3>\r
+ <KEYWORD3>IMMEDIATE</KEYWORD3>\r
+ <KEYWORD3>IN</KEYWORD3>\r
+ <KEYWORD3>INCREMENT</KEYWORD3>\r
+ <KEYWORD3>INDEX</KEYWORD3>\r
+ <KEYWORD3>INITIAL</KEYWORD3>\r
+ <KEYWORD3>INSERT</KEYWORD3>\r
+ <KEYWORD3>INTEGER</KEYWORD3>\r
+ <KEYWORD3>INTERSECT</KEYWORD3>\r
+ <KEYWORD3>INTO</KEYWORD3>\r
+ <KEYWORD3>IS</KEYWORD3>\r
+ <KEYWORD3>LEVEL</KEYWORD3>\r
+ <KEYWORD3>LIKE</KEYWORD3>\r
+ <KEYWORD3>LOCK</KEYWORD3>\r
+ <KEYWORD3>LONG</KEYWORD3>\r
+ <KEYWORD3>MAXEXTENTS</KEYWORD3>\r
+ <KEYWORD3>MINUS</KEYWORD3>\r
+ <KEYWORD3>MODE</KEYWORD3>\r
+ <KEYWORD3>MODIFY</KEYWORD3>\r
+ <KEYWORD3>NOAUDIT</KEYWORD3>\r
+ <KEYWORD3>NOCOMPRESS</KEYWORD3>\r
+ <KEYWORD3>NOT</KEYWORD3>\r
+ <KEYWORD3>NOTFOUND</KEYWORD3>\r
+ <KEYWORD3>NOWAIT</KEYWORD3>\r
+ <KEYWORD3>NULL</KEYWORD3>\r
+ <KEYWORD3>NUMBER</KEYWORD3>\r
+ <KEYWORD3>OF</KEYWORD3>\r
+ <KEYWORD3>OFFLINE</KEYWORD3>\r
+ <KEYWORD3>ON</KEYWORD3>\r
+ <KEYWORD3>ONLINE</KEYWORD3>\r
+ <KEYWORD3>OPTION</KEYWORD3>\r
+ <KEYWORD3>OR</KEYWORD3>\r
+ <KEYWORD3>ORDER</KEYWORD3>\r
+ <KEYWORD3>PCTFREE</KEYWORD3>\r
+ <KEYWORD3>PRIOR</KEYWORD3>\r
+ <KEYWORD3>PRIVILEGES</KEYWORD3>\r
+ <KEYWORD3>PUBLIC</KEYWORD3>\r
+ <KEYWORD3>RAW</KEYWORD3>\r
+ <KEYWORD3>RENAME</KEYWORD3>\r
+ <KEYWORD3>RESOURCE</KEYWORD3>\r
+ <KEYWORD3>REVOKE</KEYWORD3>\r
+ <KEYWORD3>ROW</KEYWORD3>\r
+ <KEYWORD3>ROWID</KEYWORD3>\r
+ <KEYWORD3>ROWLABEL</KEYWORD3>\r
+ <KEYWORD3>ROWNUM</KEYWORD3>\r
+ <KEYWORD3>ROWS</KEYWORD3>\r
+ <KEYWORD3>START</KEYWORD3>\r
+ <KEYWORD3>SELECT</KEYWORD3>\r
+ <KEYWORD3>SESSION</KEYWORD3>\r
+ <KEYWORD3>SET</KEYWORD3>\r
+ <KEYWORD3>SHARE</KEYWORD3>\r
+ <KEYWORD3>SIZE</KEYWORD3>\r
+ <KEYWORD3>SMALLINT</KEYWORD3>\r
+ <KEYWORD3>SQLBUF</KEYWORD3>\r
+ <KEYWORD3>SUCCESSFUL</KEYWORD3>\r
+ <KEYWORD3>SYNONYM</KEYWORD3>\r
+ <KEYWORD3>SYSDATE</KEYWORD3>\r
+ <KEYWORD3>TABLE</KEYWORD3>\r
+ <KEYWORD3>THEN</KEYWORD3>\r
+ <KEYWORD3>TO</KEYWORD3>\r
+ <KEYWORD3>TRIGGER</KEYWORD3>\r
+ <KEYWORD3>UID</KEYWORD3>\r
+ <KEYWORD3>UNION</KEYWORD3>\r
+ <KEYWORD3>UNIQUE</KEYWORD3>\r
+ <KEYWORD3>UPDATE</KEYWORD3>\r
+ <KEYWORD3>USER</KEYWORD3>\r
+ <KEYWORD3>VALIDATE</KEYWORD3>\r
+ <KEYWORD3>VALUES</KEYWORD3>\r
+ <KEYWORD3>VARCHAR</KEYWORD3>\r
+ <KEYWORD3>VARCHAR2</KEYWORD3>\r
+ <KEYWORD3>VIEW</KEYWORD3>\r
+ <KEYWORD3>WHENEVER</KEYWORD3>\r
+ <KEYWORD3>WHERE</KEYWORD3>\r
+ <KEYWORD3>WITH</KEYWORD3>\r
+ -->\r
+\r
+ <!-- Oracle/SQL - Keywords\r
+ <KEYWORD3>ADMIN</KEYWORD3>\r
+ <KEYWORD3>AFTER</KEYWORD3>\r
+ <KEYWORD3>ALLOCATE</KEYWORD3>\r
+ <KEYWORD3>ANALYZE</KEYWORD3>\r
+ <KEYWORD3>ARCHIVE</KEYWORD3>\r
+ <KEYWORD3>ARCHIVELOG</KEYWORD3>\r
+ <KEYWORD3>AUTHORIZATION</KEYWORD3>\r
+ <KEYWORD3>AVG</KEYWORD3>\r
+ <KEYWORD3>BACKUP</KEYWORD3>\r
+ <KEYWORD3>BEGIN</KEYWORD3>\r
+ <KEYWORD3>BECOME</KEYWORD3>\r
+ <KEYWORD3>BEFORE</KEYWORD3>\r
+ <KEYWORD3>BLOCK</KEYWORD3>\r
+ <KEYWORD3>BODY</KEYWORD3>\r
+ <KEYWORD3>CACHE</KEYWORD3>\r
+ <KEYWORD3>CANCEL</KEYWORD3>\r
+ <KEYWORD3>CASCADE</KEYWORD3>\r
+ <KEYWORD3>CHANGE</KEYWORD3>\r
+ <KEYWORD3>CHARACTER</KEYWORD3>\r
+ <KEYWORD3>CHECKPOINT</KEYWORD3>\r
+ <KEYWORD3>CLOSE</KEYWORD3>\r
+ <KEYWORD3>COBOL</KEYWORD3>\r
+ <KEYWORD3>COMMIT</KEYWORD3>\r
+ <KEYWORD3>COMPILE</KEYWORD3>\r
+ <KEYWORD3>CONSTRAINT</KEYWORD3>\r
+ <KEYWORD3>CONSTRAINTS</KEYWORD3>\r
+ <KEYWORD3>CONTENTS</KEYWORD3>\r
+ <KEYWORD3>CONTINUE</KEYWORD3>\r
+ <KEYWORD3>CONTROLFILE</KEYWORD3>\r
+ <KEYWORD3>COUNT</KEYWORD3>\r
+ <KEYWORD3>DBA</KEYWORD3>\r
+ <KEYWORD3>CURSOR</KEYWORD3>\r
+ <KEYWORD3>CYCLE</KEYWORD3>\r
+ <KEYWORD3>DATABASE</KEYWORD3>\r
+ <KEYWORD3>DATAFILE</KEYWORD3>\r
+ <KEYWORD3>DEC</KEYWORD3>\r
+ <KEYWORD3>DECLARE</KEYWORD3>\r
+ <KEYWORD3>DISABLE</KEYWORD3>\r
+ <KEYWORD3>DISMOUNT</KEYWORD3>\r
+ <KEYWORD3>DOUBLE</KEYWORD3>\r
+ <KEYWORD3>DUMP</KEYWORD3>\r
+ <KEYWORD3>EACH</KEYWORD3>\r
+ <KEYWORD3>ENABLE</KEYWORD3>\r
+ <KEYWORD3>END</KEYWORD3>\r
+ <KEYWORD3>ESCAPE</KEYWORD3>\r
+ <KEYWORD3>EVENTS</KEYWORD3>\r
+ <KEYWORD3>EXCEPT</KEYWORD3>\r
+ <KEYWORD3>EXCEPTIONS</KEYWORD3>\r
+ <KEYWORD3>EXEC</KEYWORD3>\r
+ <KEYWORD3>EXPLAIN</KEYWORD3>\r
+ <KEYWORD3>EXECUTE</KEYWORD3>\r
+ <KEYWORD3>EXTENT</KEYWORD3>\r
+ <KEYWORD3>EXTERNALLY</KEYWORD3>\r
+ <KEYWORD3>FETCH</KEYWORD3>\r
+ <KEYWORD3>FLUSH</KEYWORD3>\r
+ <KEYWORD3>FREELIST</KEYWORD3>\r
+ <KEYWORD3>FREELISTS</KEYWORD3>\r
+ <KEYWORD3>FORCE</KEYWORD3>\r
+ <KEYWORD3>FOREIGN</KEYWORD3>\r
+ <KEYWORD3>FORTRAN</KEYWORD3>\r
+ <KEYWORD3>FOUND</KEYWORD3>\r
+ <KEYWORD3>FUNCTION</KEYWORD3>\r
+ <KEYWORD3>GO</KEYWORD3>\r
+ <KEYWORD3>GOTO</KEYWORD3>\r
+ <KEYWORD3>GROUPS</KEYWORD3>\r
+ <KEYWORD3>INCLUDING</KEYWORD3>\r
+ <KEYWORD3>INDICATOR</KEYWORD3>\r
+ <KEYWORD3>INITRANS</KEYWORD3>\r
+ <KEYWORD3>INSTANCE</KEYWORD3>\r
+ <KEYWORD3>INT</KEYWORD3>\r
+ <KEYWORD3>KEY</KEYWORD3>\r
+ <KEYWORD3>LANGUAGE</KEYWORD3>\r
+ <KEYWORD3>LAYER</KEYWORD3>\r
+ <KEYWORD3>LINK</KEYWORD3>\r
+ <KEYWORD3>LISTS</KEYWORD3>\r
+ <KEYWORD3>LOGFILE</KEYWORD3>\r
+ <KEYWORD3>MANAGE</KEYWORD3>\r
+ <KEYWORD3>MANUAL</KEYWORD3>\r
+ <KEYWORD3>MAX</KEYWORD3>\r
+ <KEYWORD3>MAXDATAFILES</KEYWORD3>\r
+ <KEYWORD3>MAXINSTANCES</KEYWORD3>\r
+ <KEYWORD3>MAXLOGFILES</KEYWORD3>\r
+ <KEYWORD3>MAXLOGHISTORY</KEYWORD3>\r
+ <KEYWORD3>MAXLOGMEMBERS</KEYWORD3>\r
+ <KEYWORD3>MAXTRANS</KEYWORD3>\r
+ <KEYWORD3>MAXVALUE</KEYWORD3>\r
+ <KEYWORD3>MIN</KEYWORD3>\r
+ <KEYWORD3>MINEXTENTS</KEYWORD3>\r
+ <KEYWORD3>MINVALUE</KEYWORD3>\r
+ <KEYWORD3>MODULE</KEYWORD3>\r
+ <KEYWORD3>MOUNT</KEYWORD3>\r
+ <KEYWORD3>NEXT</KEYWORD3>\r
+ <KEYWORD3>NEW</KEYWORD3>\r
+ <KEYWORD3>NOARCHIVELOG</KEYWORD3>\r
+ <KEYWORD3>NOCACHE</KEYWORD3>\r
+ <KEYWORD3>NOCYCLE</KEYWORD3>\r
+ <KEYWORD3>NOMAXVALUE</KEYWORD3>\r
+ <KEYWORD3>NOMINVALUE</KEYWORD3>\r
+ <KEYWORD3>NONE</KEYWORD3>\r
+ <KEYWORD3>NOORDER</KEYWORD3>\r
+ <KEYWORD3>NORESETLOGS</KEYWORD3>\r
+ <KEYWORD3>NORMAL</KEYWORD3>\r
+ <KEYWORD3>NOSORT</KEYWORD3>\r
+ <KEYWORD3>NUMERIC</KEYWORD3>\r
+ <KEYWORD3>OFF</KEYWORD3>\r
+ <KEYWORD3>OLD</KEYWORD3>\r
+ <KEYWORD3>ONLY</KEYWORD3>\r
+ <KEYWORD3>OPEN</KEYWORD3>\r
+ <KEYWORD3>OPTIMAL</KEYWORD3>\r
+ <KEYWORD3>OWN</KEYWORD3>\r
+ <KEYWORD3>PACKAGE</KEYWORD3>\r
+ <KEYWORD3>PARALLEL</KEYWORD3>\r
+ <KEYWORD3>PCTINCREASE</KEYWORD3>\r
+ <KEYWORD3>PCTUSED</KEYWORD3>\r
+ <KEYWORD3>PLAN</KEYWORD3>\r
+ <KEYWORD3>PLI</KEYWORD3>\r
+ <KEYWORD3>PRECISION</KEYWORD3>\r
+ <KEYWORD3>PRIMARY</KEYWORD3>\r
+ <KEYWORD3>PRIVATE</KEYWORD3>\r
+ <KEYWORD3>PROCEDURE</KEYWORD3>\r
+ <KEYWORD3>PROFILE</KEYWORD3>\r
+ <KEYWORD3>QUOTA</KEYWORD3>\r
+ <KEYWORD3>READ</KEYWORD3>\r
+ <KEYWORD3>REAL</KEYWORD3>\r
+ <KEYWORD3>RECOVER</KEYWORD3>\r
+ <KEYWORD3>REFERENCES</KEYWORD3>\r
+ <KEYWORD3>REFERENCING</KEYWORD3>\r
+ <KEYWORD3>RESETLOGS</KEYWORD3>\r
+ <KEYWORD3>RESTRICTED</KEYWORD3>\r
+ <KEYWORD3>REUSE</KEYWORD3>\r
+ <KEYWORD3>ROLE</KEYWORD3>\r
+ <KEYWORD3>ROLES</KEYWORD3>\r
+ <KEYWORD3>ROLLBACK</KEYWORD3>\r
+ <KEYWORD3>SAVEPOINT</KEYWORD3>\r
+ <KEYWORD3>SCHEMA</KEYWORD3>\r
+ <KEYWORD3>SCN</KEYWORD3>\r
+ <KEYWORD3>SECTION</KEYWORD3>\r
+ <KEYWORD3>SEGMENT</KEYWORD3>\r
+ <KEYWORD3>SEQUENCE</KEYWORD3>\r
+ <KEYWORD3>SHARED</KEYWORD3>\r
+ <KEYWORD3>SNAPSHOT</KEYWORD3>\r
+ <KEYWORD3>SOME</KEYWORD3>\r
+ <KEYWORD3>SORT</KEYWORD3>\r
+ <KEYWORD3>SQL</KEYWORD3>\r
+ <KEYWORD3>SQLCODE</KEYWORD3>\r
+ <KEYWORD3>SQLERROR</KEYWORD3>\r
+ <KEYWORD3>SQLSTATE</KEYWORD3>\r
+ <KEYWORD3>STATEMENT_ID</KEYWORD3>\r
+ <KEYWORD3>STATISTICS</KEYWORD3>\r
+ <KEYWORD3>STOP</KEYWORD3>\r
+ <KEYWORD3>STORAGE</KEYWORD3>\r
+ <KEYWORD3>SUM</KEYWORD3>\r
+ <KEYWORD3>SWITCH</KEYWORD3>\r
+ <KEYWORD3>SYSTEM</KEYWORD3>\r
+ <KEYWORD3>TABLES</KEYWORD3>\r
+ <KEYWORD3>TABLESPACE</KEYWORD3>\r
+ <KEYWORD3>TEMPORARY</KEYWORD3>\r
+ <KEYWORD3>THREAD</KEYWORD3>\r
+ <KEYWORD3>TIME</KEYWORD3>\r
+ <KEYWORD3>TRACING</KEYWORD3>\r
+ <KEYWORD3>TRANSACTION</KEYWORD3>\r
+ <KEYWORD3>TRIGGERS</KEYWORD3>\r
+ <KEYWORD3>TRUNCATE</KEYWORD3>\r
+ <KEYWORD3>UNDER</KEYWORD3>\r
+ <KEYWORD3>UNLIMITED</KEYWORD3>\r
+ <KEYWORD3>UNTIL</KEYWORD3>\r
+ <KEYWORD3>USE</KEYWORD3>\r
+ <KEYWORD3>USING</KEYWORD3>\r
+ <KEYWORD3>WHEN</KEYWORD3>\r
+ <KEYWORD3>WRITE</KEYWORD3>\r
+ <KEYWORD3>WORK</KEYWORD3>\r
+ -->\r
+\r
+ <LITERAL2>[COPY-PREFIX]</LITERAL2>\r
+ <LITERAL2>[COUNT]</LITERAL2>\r
+ <LITERAL2>[DISPLAY]</LITERAL2>\r
+ <LITERAL2>[EXECUTE]</LITERAL2>\r
+ <LITERAL2>[PG]</LITERAL2>\r
+ <LITERAL2>[PREFIX]</LITERAL2>\r
+ <LITERAL2>[PROGRAM]</LITERAL2>\r
+ <LITERAL2>[SPECIAL-PREFIX]</LITERAL2>\r
+ <LITERAL2>[TESTCASE]</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- CFML comment -->\r
+ <SPAN TYPE="COMMENT4">\r
+ <BEGIN><!---</BEGIN>\r
+ <END>---></END>\r
+ </SPAN>\r
+\r
+ <!-- CFSCRIPT multi-line comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- CFSCRIPT single-line comment -->\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- CFScript -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFSCRIPT">\r
+ <BEGIN><CFSCRIPT</BEGIN>\r
+ <END></CFSCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- CFML markup start tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">\r
+ <BEGIN><CF</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CFML markup end tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">\r
+ <BEGIN></CF</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <!-- CFML markup start tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">\r
+ <BEGIN><CF</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CFML markup end tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">\r
+ <BEGIN></CF</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CFML markup start tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CFSCRIPT">\r
+ <BEGIN><CFSCRIPT</BEGIN>\r
+ <END></CFSCRIPT></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="CFSCRIPT" DEFAULT="KEYWORD1" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- CFSCRIPT multi-line comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- CFSCRIPT single-line comment -->\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LABEL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="LITERAL2">(</SEQ>\r
+ <SEQ TYPE="LITERAL2">)</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">><</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">!!</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <FUNCTION>{</FUNCTION>\r
+ <FUNCTION>}</FUNCTION>\r
+ <FUNCTION>for</FUNCTION>\r
+ <FUNCTION>while</FUNCTION>\r
+ <FUNCTION>if</FUNCTION>\r
+ <FUNCTION>}else</FUNCTION>\r
+ <FUNCTION>}else{</FUNCTION>\r
+ <FUNCTION>if(</FUNCTION>\r
+ <FUNCTION>else</FUNCTION>\r
+ <FUNCTION>break</FUNCTION>\r
+\r
+ <FUNCTION>ArrayAppend</FUNCTION>\r
+ <FUNCTION>ArrayAvg</FUNCTION>\r
+ <FUNCTION>ArrayClear</FUNCTION>\r
+ <FUNCTION>ArrayDeleteAt</FUNCTION>\r
+ <FUNCTION>ArrayInsertAt</FUNCTION>\r
+ <FUNCTION>ArrayIsEmpty</FUNCTION>\r
+ <FUNCTION>ArrayLen</FUNCTION>\r
+ <FUNCTION>ArrayMax</FUNCTION>\r
+ <FUNCTION>ArrayMin</FUNCTION>\r
+ <FUNCTION>ArrayNew</FUNCTION>\r
+ <FUNCTION>ArrayPrepend</FUNCTION>\r
+ <FUNCTION>ArrayResize</FUNCTION>\r
+ <FUNCTION>ArraySet</FUNCTION>\r
+ <FUNCTION>ArraySort</FUNCTION>\r
+ <FUNCTION>ArraySum</FUNCTION>\r
+ <FUNCTION>ArraySwap</FUNCTION>\r
+ <FUNCTION>ArrayToList</FUNCTION>\r
+ <FUNCTION>IsArray</FUNCTION>\r
+ <FUNCTION>ListToArray</FUNCTION>\r
+\r
+ <FUNCTION>CreateDate</FUNCTION>\r
+ <FUNCTION>CreateDateTime</FUNCTION>\r
+ <FUNCTION>CreateODBCTime</FUNCTION>\r
+ <FUNCTION>CreateODBCDate</FUNCTION>\r
+ <FUNCTION>CreateODBCDateTime</FUNCTION>\r
+ <FUNCTION>CreateTime</FUNCTION>\r
+ <FUNCTION>CreateTimeSpan</FUNCTION>\r
+ <FUNCTION>DateAdd</FUNCTION>\r
+ <FUNCTION>DateCompare</FUNCTION>\r
+ <FUNCTION>DateDiff</FUNCTION>\r
+ <FUNCTION>DatePart</FUNCTION>\r
+ <FUNCTION>Day</FUNCTION>\r
+ <FUNCTION>DayOfWeek</FUNCTION>\r
+ <FUNCTION>DayOfWeekAsString</FUNCTION>\r
+ <FUNCTION>DayOfYear</FUNCTION>\r
+ <FUNCTION>DaysInMonth</FUNCTION>\r
+ <FUNCTION>DaysInYear</FUNCTION>\r
+ <FUNCTION>FirstDayOfMonth</FUNCTION>\r
+ <FUNCTION>Hour</FUNCTION>\r
+ <FUNCTION>Minute</FUNCTION>\r
+ <FUNCTION>Month</FUNCTION>\r
+ <FUNCTION>MonthAsString</FUNCTION>\r
+ <FUNCTION>Now</FUNCTION>\r
+ <FUNCTION>ParseDateTime</FUNCTION>\r
+ <FUNCTION>Quarter</FUNCTION>\r
+ <FUNCTION>Second</FUNCTION>\r
+ <FUNCTION>Week</FUNCTION>\r
+ <FUNCTION>Year</FUNCTION>\r
+\r
+ <FUNCTION>IsArray</FUNCTION>\r
+ <FUNCTION>IsAuthenticated</FUNCTION>\r
+ <FUNCTION>IsAuthorized</FUNCTION>\r
+ <FUNCTION>IsBoolean</FUNCTION>\r
+ <FUNCTION>IsDate</FUNCTION>\r
+ <FUNCTION>IsDebugMode</FUNCTION>\r
+ <FUNCTION>IsDefined</FUNCTION>\r
+ <FUNCTION>IsLeapYear</FUNCTION>\r
+ <FUNCTION>IsNumeric</FUNCTION>\r
+ <FUNCTION>IsNumericDate</FUNCTION>\r
+ <FUNCTION>IsQuery</FUNCTION>\r
+ <FUNCTION>IsSimpleValue</FUNCTION>\r
+ <FUNCTION>IsStruct</FUNCTION>\r
+\r
+ <FUNCTION>DateFormat</FUNCTION>\r
+ <FUNCTION>DecimalFormat</FUNCTION>\r
+ <FUNCTION>DollarFormat</FUNCTION>\r
+ <FUNCTION>FormatBaseN</FUNCTION>\r
+ <FUNCTION>HTMLCodeFormat</FUNCTION>\r
+ <FUNCTION>HTMLEditFormat</FUNCTION>\r
+ <FUNCTION>NumberFormat</FUNCTION>\r
+ <FUNCTION>ParagraphFormat</FUNCTION>\r
+ <FUNCTION>TimeFormat</FUNCTION>\r
+ <FUNCTION>YesNoFormat</FUNCTION>\r
+\r
+ <FUNCTION>DE</FUNCTION>\r
+ <FUNCTION>Evaluate</FUNCTION>\r
+ <FUNCTION>IIf</FUNCTION>\r
+ <FUNCTION>SetVariable</FUNCTION>\r
+\r
+ <FUNCTION>ArrayToList</FUNCTION>\r
+ <FUNCTION>ListAppend</FUNCTION>\r
+ <FUNCTION>ListChangeDelims</FUNCTION>\r
+ <FUNCTION>ListContains</FUNCTION>\r
+ <FUNCTION>ListContainsNoCase</FUNCTION>\r
+ <FUNCTION>ListDeleteAt</FUNCTION>\r
+ <FUNCTION>ListFind</FUNCTION>\r
+ <FUNCTION>ListFindNoCase</FUNCTION>\r
+ <FUNCTION>ListFirst</FUNCTION>\r
+ <FUNCTION>ListGetAt</FUNCTION>\r
+ <FUNCTION>ListInsertAt</FUNCTION>\r
+ <FUNCTION>ListLast</FUNCTION>\r
+ <FUNCTION>ListLen</FUNCTION>\r
+ <FUNCTION>ListPrepend</FUNCTION>\r
+ <FUNCTION>ListRest</FUNCTION>\r
+ <FUNCTION>ListSetAt</FUNCTION>\r
+ <FUNCTION>ListToArray</FUNCTION>\r
+\r
+ <FUNCTION>StructClear</FUNCTION>\r
+ <FUNCTION>StructCopy</FUNCTION>\r
+ <FUNCTION>StructCount</FUNCTION>\r
+ <FUNCTION>StructDelete</FUNCTION>\r
+ <FUNCTION>StructFind</FUNCTION>\r
+ <FUNCTION>StructInsert</FUNCTION>\r
+ <FUNCTION>StructIsEmpty</FUNCTION>\r
+ <FUNCTION>StructKeyExists</FUNCTION>\r
+ <FUNCTION>StructNew</FUNCTION>\r
+ <FUNCTION>StructUpdate</FUNCTION>\r
+\r
+ <FUNCTION>GetLocale</FUNCTION>\r
+ <FUNCTION>LSCurrencyFormat</FUNCTION>\r
+ <FUNCTION>LSDateFormat</FUNCTION>\r
+ <FUNCTION>LSIsCurrency</FUNCTION>\r
+ <FUNCTION>LSIsDate</FUNCTION>\r
+ <FUNCTION>LSIsNumeric</FUNCTION>\r
+ <FUNCTION>LSNumberFormat</FUNCTION>\r
+ <FUNCTION>LSParseCurrency</FUNCTION>\r
+ <FUNCTION>LSParseDateTime</FUNCTION>\r
+ <FUNCTION>LSParseNumber</FUNCTION>\r
+ <FUNCTION>LSTimeFormat</FUNCTION>\r
+ <FUNCTION>SetLocale</FUNCTION>\r
+\r
+ <FUNCTION>Abs</FUNCTION>\r
+ <FUNCTION>Atn</FUNCTION>\r
+ <FUNCTION>BitAnd</FUNCTION>\r
+ <FUNCTION>BitMaskClear</FUNCTION>\r
+ <FUNCTION>BitMaskRead</FUNCTION>\r
+ <FUNCTION>BitMaskSet</FUNCTION>\r
+ <FUNCTION>BitNot</FUNCTION>\r
+ <FUNCTION>BitOr</FUNCTION>\r
+ <FUNCTION>BitSHLN</FUNCTION>\r
+ <FUNCTION>BitSHRN</FUNCTION>\r
+ <FUNCTION>BitXor</FUNCTION>\r
+ <FUNCTION>Ceiling</FUNCTION>\r
+ <FUNCTION>Cos</FUNCTION>\r
+ <FUNCTION>DecrementValue</FUNCTION>\r
+ <FUNCTION>Exp</FUNCTION>\r
+ <FUNCTION>Fix</FUNCTION>\r
+ <FUNCTION>IncrementValue</FUNCTION>\r
+ <FUNCTION>InputBaseN</FUNCTION>\r
+ <FUNCTION>Int</FUNCTION>\r
+ <FUNCTION>Log</FUNCTION>\r
+ <FUNCTION>Log10</FUNCTION>\r
+ <FUNCTION>Max</FUNCTION>\r
+ <FUNCTION>Min</FUNCTION>\r
+ <FUNCTION>Pi</FUNCTION>\r
+ <FUNCTION>Rand</FUNCTION>\r
+ <FUNCTION>Randomize</FUNCTION>\r
+ <FUNCTION>RandRange</FUNCTION>\r
+ <FUNCTION>Round</FUNCTION>\r
+ <FUNCTION>Sgn</FUNCTION>\r
+ <FUNCTION>Sin</FUNCTION>\r
+ <FUNCTION>Sqr</FUNCTION>\r
+ <FUNCTION>Tan</FUNCTION>\r
+\r
+ <FUNCTION>Asc</FUNCTION>\r
+ <FUNCTION>Chr</FUNCTION>\r
+ <FUNCTION>CJustify</FUNCTION>\r
+ <FUNCTION>Compare</FUNCTION>\r
+ <FUNCTION>CompareNoCase</FUNCTION>\r
+ <FUNCTION>Find</FUNCTION>\r
+ <FUNCTION>FindNoCase</FUNCTION>\r
+ <FUNCTION>FindOneOf</FUNCTION>\r
+ <FUNCTION>GetToken</FUNCTION>\r
+ <FUNCTION>Insert</FUNCTION>\r
+ <FUNCTION>LCase</FUNCTION>\r
+ <FUNCTION>Left</FUNCTION>\r
+ <FUNCTION>Len</FUNCTION>\r
+ <FUNCTION>LJustify</FUNCTION>\r
+ <FUNCTION>LTrim</FUNCTION>\r
+ <FUNCTION>Mid</FUNCTION>\r
+ <FUNCTION>REFind</FUNCTION>\r
+ <FUNCTION>REFindNoCase</FUNCTION>\r
+ <FUNCTION>RemoveChars</FUNCTION>\r
+ <FUNCTION>RepeatString</FUNCTION>\r
+ <FUNCTION>Replace</FUNCTION>\r
+ <FUNCTION>ReplaceList</FUNCTION>\r
+ <FUNCTION>ReplaceNoCase</FUNCTION>\r
+ <FUNCTION>REReplace</FUNCTION>\r
+ <FUNCTION>REReplaceNoCase</FUNCTION>\r
+ <FUNCTION>Reverse</FUNCTION>\r
+ <FUNCTION>Right</FUNCTION>\r
+ <FUNCTION>RJustify</FUNCTION>\r
+ <FUNCTION>RTrim</FUNCTION>\r
+ <FUNCTION>SpanExcluding</FUNCTION>\r
+ <FUNCTION>SpanIncluding</FUNCTION>\r
+ <FUNCTION>Trim</FUNCTION>\r
+ <FUNCTION>UCase</FUNCTION>\r
+ <FUNCTION>Val</FUNCTION>\r
+\r
+ <FUNCTION>DirectoryExists</FUNCTION>\r
+ <FUNCTION>ExpandPath</FUNCTION>\r
+ <FUNCTION>FileExists</FUNCTION>\r
+ <FUNCTION>GetDirectoryFromPath</FUNCTION>\r
+ <FUNCTION>GetFileFromPath</FUNCTION>\r
+ <FUNCTION>GetTempDirectory</FUNCTION>\r
+ <FUNCTION>GetTempFile</FUNCTION>\r
+ <FUNCTION>GetTemplatePath</FUNCTION>\r
+\r
+ <FUNCTION>QueryAddRow</FUNCTION>\r
+ <FUNCTION>QueryNew</FUNCTION>\r
+ <FUNCTION>QuerySetCell</FUNCTION>\r
+\r
+ <FUNCTION>Decrypt</FUNCTION>\r
+ <FUNCTION>DeleteClientVariable</FUNCTION>\r
+ <FUNCTION>Encrypt</FUNCTION>\r
+ <FUNCTION>GetBaseTagData</FUNCTION>\r
+ <FUNCTION>GetBaseTagList</FUNCTION>\r
+ <FUNCTION>GetClientVariablesList</FUNCTION>\r
+ <FUNCTION>GetTickCount</FUNCTION>\r
+ <FUNCTION>PreserveSingleQuotes</FUNCTION>\r
+ <FUNCTION>QuotedValueList</FUNCTION>\r
+ <FUNCTION>StripCR</FUNCTION>\r
+ <FUNCTION>URLEncodedFormat</FUNCTION>\r
+ <FUNCTION>ValueList</FUNCTION>\r
+ <FUNCTION>WriteOutput</FUNCTION>\r
+\r
+ <FUNCTION>ParameterExists</FUNCTION>\r
+\r
+ <OPERATOR>IS</OPERATOR>\r
+ <OPERATOR>EQ</OPERATOR>\r
+ <OPERATOR>NEQ</OPERATOR>\r
+ <OPERATOR>GT</OPERATOR>\r
+ <OPERATOR>GTE</OPERATOR>\r
+ <OPERATOR>LT</OPERATOR>\r
+ <OPERATOR>LTE</OPERATOR>\r
+\r
+ <OPERATOR>LESS</OPERATOR>\r
+ <OPERATOR>GREATER</OPERATOR>\r
+ <OPERATOR>THAN</OPERATOR>\r
+\r
+ <OPERATOR>AND</OPERATOR>\r
+ <OPERATOR>OR</OPERATOR>\r
+ <OPERATOR>NOT</OPERATOR>\r
+ <OPERATOR>XOR</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="CFTAGS" DEFAULT="KEYWORD3">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="KEYWORD3">##</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>#</BEGIN>\r
+ <END>#</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>ArrayAppend</KEYWORD2>\r
+ <KEYWORD2>ArrayAvg</KEYWORD2>\r
+ <KEYWORD2>ArrayClear</KEYWORD2>\r
+ <KEYWORD2>ArrayDeleteAt</KEYWORD2>\r
+ <KEYWORD2>ArrayInsertAt</KEYWORD2>\r
+ <KEYWORD2>ArrayIsEmpty</KEYWORD2>\r
+ <KEYWORD2>ArrayLen</KEYWORD2>\r
+ <KEYWORD2>ArrayMax</KEYWORD2>\r
+ <KEYWORD2>ArrayMin</KEYWORD2>\r
+ <KEYWORD2>ArrayNew</KEYWORD2>\r
+ <KEYWORD2>ArrayPrepend</KEYWORD2>\r
+ <KEYWORD2>ArrayResize</KEYWORD2>\r
+ <KEYWORD2>ArraySet</KEYWORD2>\r
+ <KEYWORD2>ArraySort</KEYWORD2>\r
+ <KEYWORD2>ArraySum</KEYWORD2>\r
+ <KEYWORD2>ArraySwap</KEYWORD2>\r
+ <KEYWORD2>ArrayToList</KEYWORD2>\r
+ <KEYWORD2>IsArray</KEYWORD2>\r
+ <KEYWORD2>ListToArray</KEYWORD2>\r
+\r
+ <KEYWORD2>CreateDate</KEYWORD2>\r
+ <KEYWORD2>CreateDateTime</KEYWORD2>\r
+ <KEYWORD2>CreateODBCTime</KEYWORD2>\r
+ <KEYWORD2>CreateODBCDate</KEYWORD2>\r
+ <KEYWORD2>CreateODBCDateTime</KEYWORD2>\r
+ <KEYWORD2>CreateTime</KEYWORD2>\r
+ <KEYWORD2>CreateTimeSpan</KEYWORD2>\r
+ <KEYWORD2>DateAdd</KEYWORD2>\r
+ <KEYWORD2>DateCompare</KEYWORD2>\r
+ <KEYWORD2>DateDiff</KEYWORD2>\r
+ <KEYWORD2>DatePart</KEYWORD2>\r
+ <KEYWORD2>Day</KEYWORD2>\r
+ <KEYWORD2>DayOfWeek</KEYWORD2>\r
+ <KEYWORD2>DayOfWeekAsString</KEYWORD2>\r
+ <KEYWORD2>DayOfYear</KEYWORD2>\r
+ <KEYWORD2>DaysInMonth</KEYWORD2>\r
+ <KEYWORD2>DaysInYear</KEYWORD2>\r
+ <KEYWORD2>FirstDayOfMonth</KEYWORD2>\r
+ <KEYWORD2>Hour</KEYWORD2>\r
+ <KEYWORD2>Minute</KEYWORD2>\r
+ <KEYWORD2>Month</KEYWORD2>\r
+ <KEYWORD2>MonthAsString</KEYWORD2>\r
+ <KEYWORD2>Now</KEYWORD2>\r
+ <KEYWORD2>ParseDateTime</KEYWORD2>\r
+ <KEYWORD2>Quarter</KEYWORD2>\r
+ <KEYWORD2>Second</KEYWORD2>\r
+ <KEYWORD2>Week</KEYWORD2>\r
+ <KEYWORD2>Year</KEYWORD2>\r
+\r
+ <KEYWORD2>IsArray</KEYWORD2>\r
+ <KEYWORD2>IsAuthenticated</KEYWORD2>\r
+ <KEYWORD2>IsAuthorized</KEYWORD2>\r
+ <KEYWORD2>IsBoolean</KEYWORD2>\r
+ <KEYWORD2>IsDate</KEYWORD2>\r
+ <KEYWORD2>IsDebugMode</KEYWORD2>\r
+ <KEYWORD2>IsDefined</KEYWORD2>\r
+ <KEYWORD2>IsLeapYear</KEYWORD2>\r
+ <KEYWORD2>IsNumeric</KEYWORD2>\r
+ <KEYWORD2>IsNumericDate</KEYWORD2>\r
+ <KEYWORD2>IsQuery</KEYWORD2>\r
+ <KEYWORD2>IsSimpleValue</KEYWORD2>\r
+ <KEYWORD2>IsStruct</KEYWORD2>\r
+\r
+ <KEYWORD2>DateFormat</KEYWORD2>\r
+ <KEYWORD2>DecimalFormat</KEYWORD2>\r
+ <KEYWORD2>DollarFormat</KEYWORD2>\r
+ <KEYWORD2>FormatBaseN</KEYWORD2>\r
+ <KEYWORD2>HTMLCodeFormat</KEYWORD2>\r
+ <KEYWORD2>HTMLEditFormat</KEYWORD2>\r
+ <KEYWORD2>NumberFormat</KEYWORD2>\r
+ <KEYWORD2>ParagraphFormat</KEYWORD2>\r
+ <KEYWORD2>TimeFormat</KEYWORD2>\r
+ <KEYWORD2>YesNoFormat</KEYWORD2>\r
+\r
+ <KEYWORD2>DE</KEYWORD2>\r
+ <KEYWORD2>Evaluate</KEYWORD2>\r
+ <KEYWORD2>IIf</KEYWORD2>\r
+ <KEYWORD2>SetVariable</KEYWORD2>\r
+\r
+ <KEYWORD2>ArrayToList</KEYWORD2>\r
+ <KEYWORD2>ListAppend</KEYWORD2>\r
+ <KEYWORD2>ListChangeDelims</KEYWORD2>\r
+ <KEYWORD2>ListContains</KEYWORD2>\r
+ <KEYWORD2>ListContainsNoCase</KEYWORD2>\r
+ <KEYWORD2>ListDeleteAt</KEYWORD2>\r
+ <KEYWORD2>ListFind</KEYWORD2>\r
+ <KEYWORD2>ListFindNoCase</KEYWORD2>\r
+ <KEYWORD2>ListFirst</KEYWORD2>\r
+ <KEYWORD2>ListGetAt</KEYWORD2>\r
+ <KEYWORD2>ListInsertAt</KEYWORD2>\r
+ <KEYWORD2>ListLast</KEYWORD2>\r
+ <KEYWORD2>ListLen</KEYWORD2>\r
+ <KEYWORD2>ListPrepend</KEYWORD2>\r
+ <KEYWORD2>ListRest</KEYWORD2>\r
+ <KEYWORD2>ListSetAt</KEYWORD2>\r
+ <KEYWORD2>ListToArray</KEYWORD2>\r
+\r
+ <KEYWORD2>StructClear</KEYWORD2>\r
+ <KEYWORD2>StructCopy</KEYWORD2>\r
+ <KEYWORD2>StructCount</KEYWORD2>\r
+ <KEYWORD2>StructDelete</KEYWORD2>\r
+ <KEYWORD2>StructFind</KEYWORD2>\r
+ <KEYWORD2>StructInsert</KEYWORD2>\r
+ <KEYWORD2>StructIsEmpty</KEYWORD2>\r
+ <KEYWORD2>StructKeyExists</KEYWORD2>\r
+ <KEYWORD2>StructNew</KEYWORD2>\r
+ <KEYWORD2>StructUpdate</KEYWORD2>\r
+\r
+ <KEYWORD2>GetLocale</KEYWORD2>\r
+ <KEYWORD2>LSCurrencyFormat</KEYWORD2>\r
+ <KEYWORD2>LSDateFormat</KEYWORD2>\r
+ <KEYWORD2>LSIsCurrency</KEYWORD2>\r
+ <KEYWORD2>LSIsDate</KEYWORD2>\r
+ <KEYWORD2>LSIsNumeric</KEYWORD2>\r
+ <KEYWORD2>LSNumberFormat</KEYWORD2>\r
+ <KEYWORD2>LSParseCurrency</KEYWORD2>\r
+ <KEYWORD2>LSParseDateTime</KEYWORD2>\r
+ <KEYWORD2>LSParseNumber</KEYWORD2>\r
+ <KEYWORD2>LSTimeFormat</KEYWORD2>\r
+ <KEYWORD2>SetLocale</KEYWORD2>\r
+\r
+ <KEYWORD2>Abs</KEYWORD2>\r
+ <KEYWORD2>Atn</KEYWORD2>\r
+ <KEYWORD2>BitAnd</KEYWORD2>\r
+ <KEYWORD2>BitMaskClear</KEYWORD2>\r
+ <KEYWORD2>BitMaskRead</KEYWORD2>\r
+ <KEYWORD2>BitMaskSet</KEYWORD2>\r
+ <KEYWORD2>BitNot</KEYWORD2>\r
+ <KEYWORD2>BitOr</KEYWORD2>\r
+ <KEYWORD2>BitSHLN</KEYWORD2>\r
+ <KEYWORD2>BitSHRN</KEYWORD2>\r
+ <KEYWORD2>BitXor</KEYWORD2>\r
+ <KEYWORD2>Ceiling</KEYWORD2>\r
+ <KEYWORD2>Cos</KEYWORD2>\r
+ <KEYWORD2>DecrementValue</KEYWORD2>\r
+ <KEYWORD2>Exp</KEYWORD2>\r
+ <KEYWORD2>Fix</KEYWORD2>\r
+ <KEYWORD2>IncrementValue</KEYWORD2>\r
+ <KEYWORD2>InputBaseN</KEYWORD2>\r
+ <KEYWORD2>Int</KEYWORD2>\r
+ <KEYWORD2>Log</KEYWORD2>\r
+ <KEYWORD2>Log10</KEYWORD2>\r
+ <KEYWORD2>Max</KEYWORD2>\r
+ <KEYWORD2>Min</KEYWORD2>\r
+ <KEYWORD2>Pi</KEYWORD2>\r
+ <KEYWORD2>Rand</KEYWORD2>\r
+ <KEYWORD2>Randomize</KEYWORD2>\r
+ <KEYWORD2>RandRange</KEYWORD2>\r
+ <KEYWORD2>Round</KEYWORD2>\r
+ <KEYWORD2>Sgn</KEYWORD2>\r
+ <KEYWORD2>Sin</KEYWORD2>\r
+ <KEYWORD2>Sqr</KEYWORD2>\r
+ <KEYWORD2>Tan</KEYWORD2>\r
+\r
+ <KEYWORD2>Asc</KEYWORD2>\r
+ <KEYWORD2>Chr</KEYWORD2>\r
+ <KEYWORD2>CJustify</KEYWORD2>\r
+ <KEYWORD2>Compare</KEYWORD2>\r
+ <KEYWORD2>CompareNoCase</KEYWORD2>\r
+ <KEYWORD2>Find</KEYWORD2>\r
+ <KEYWORD2>FindNoCase</KEYWORD2>\r
+ <KEYWORD2>FindOneOf</KEYWORD2>\r
+ <KEYWORD2>GetToken</KEYWORD2>\r
+ <KEYWORD2>Insert</KEYWORD2>\r
+ <KEYWORD2>LCase</KEYWORD2>\r
+ <KEYWORD2>Left</KEYWORD2>\r
+ <KEYWORD2>Len</KEYWORD2>\r
+ <KEYWORD2>LJustify</KEYWORD2>\r
+ <KEYWORD2>LTrim</KEYWORD2>\r
+ <KEYWORD2>Mid</KEYWORD2>\r
+ <KEYWORD2>REFind</KEYWORD2>\r
+ <KEYWORD2>REFindNoCase</KEYWORD2>\r
+ <KEYWORD2>RemoveChars</KEYWORD2>\r
+ <KEYWORD2>RepeatString</KEYWORD2>\r
+ <KEYWORD2>Replace</KEYWORD2>\r
+ <KEYWORD2>ReplaceList</KEYWORD2>\r
+ <KEYWORD2>ReplaceNoCase</KEYWORD2>\r
+ <KEYWORD2>REReplace</KEYWORD2>\r
+ <KEYWORD2>REReplaceNoCase</KEYWORD2>\r
+ <KEYWORD2>Reverse</KEYWORD2>\r
+ <KEYWORD2>Right</KEYWORD2>\r
+ <KEYWORD2>RJustify</KEYWORD2>\r
+ <KEYWORD2>RTrim</KEYWORD2>\r
+ <KEYWORD2>SpanExcluding</KEYWORD2>\r
+ <KEYWORD2>SpanIncluding</KEYWORD2>\r
+ <KEYWORD2>Trim</KEYWORD2>\r
+ <KEYWORD2>UCase</KEYWORD2>\r
+ <KEYWORD2>Val</KEYWORD2>\r
+\r
+ <KEYWORD2>DirectoryExists</KEYWORD2>\r
+ <KEYWORD2>ExpandPath</KEYWORD2>\r
+ <KEYWORD2>FileExists</KEYWORD2>\r
+ <KEYWORD2>GetDirectoryFromPath</KEYWORD2>\r
+ <KEYWORD2>GetFileFromPath</KEYWORD2>\r
+ <KEYWORD2>GetTempDirectory</KEYWORD2>\r
+ <KEYWORD2>GetTempFile</KEYWORD2>\r
+ <KEYWORD2>GetTemplatePath</KEYWORD2>\r
+\r
+ <KEYWORD2>QueryAddRow</KEYWORD2>\r
+ <KEYWORD2>QueryNew</KEYWORD2>\r
+ <KEYWORD2>QuerySetCell</KEYWORD2>\r
+\r
+ <KEYWORD2>Decrypt</KEYWORD2>\r
+ <KEYWORD2>DeleteClientVariable</KEYWORD2>\r
+ <KEYWORD2>Encrypt</KEYWORD2>\r
+ <KEYWORD2>GetBaseTagData</KEYWORD2>\r
+ <KEYWORD2>GetBaseTagList</KEYWORD2>\r
+ <KEYWORD2>GetClientVariablesList</KEYWORD2>\r
+ <KEYWORD2>GetTickCount</KEYWORD2>\r
+ <KEYWORD2>PreserveSingleQuotes</KEYWORD2>\r
+ <KEYWORD2>QuotedValueList</KEYWORD2>\r
+ <KEYWORD2>StripCR</KEYWORD2>\r
+ <KEYWORD2>URLEncodedFormat</KEYWORD2>\r
+ <KEYWORD2>ValueList</KEYWORD2>\r
+ <KEYWORD2>WriteOutput</KEYWORD2>\r
+\r
+ <KEYWORD2>ParameterExists</KEYWORD2>\r
+\r
+ <OPERATOR>IS</OPERATOR>\r
+ <OPERATOR>EQ</OPERATOR>\r
+ <OPERATOR>NEQ</OPERATOR>\r
+ <OPERATOR>GT</OPERATOR>\r
+ <OPERATOR>GTE</OPERATOR>\r
+ <OPERATOR>LT</OPERATOR>\r
+ <OPERATOR>LTE</OPERATOR>\r
+\r
+ <OPERATOR>LESS</OPERATOR>\r
+ <OPERATOR>GREATER</OPERATOR>\r
+ <OPERATOR>THAN</OPERATOR>\r
+\r
+ <OPERATOR>AND</OPERATOR>\r
+ <OPERATOR>OR</OPERATOR>\r
+ <OPERATOR>NOT</OPERATOR>\r
+ <OPERATOR>XOR</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Extension of c.xml to add C++ specific syntax. -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="(?!^\s*(#|//)).*(\b(if|while|for)\s*\(.*\)|\b(else|do)\b)[^{;]*$" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^\s*((case\b.*|[\p{Alpha}_][\p{Alnum}_]*)\s*:(?!:)).*$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+ <RULES\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <EOL_SPAN TYPE="KEYWORD2" AT_WHITESPACE_END="TRUE" DELEGATE="CPP">#</EOL_SPAN>\r
+\r
+ <IMPORT DELEGATE="LEX"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+ <!-- Core C++ language -->\r
+ <RULES SET="LEX"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <!-- A hack not to mark namespace qualification like "std::"\r
+ as labels. -->\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+\r
+ <IMPORT DELEGATE="c::LEX"/>\r
+ </RULES>\r
+\r
+ <!-- Core C++ language -->\r
+ <RULES SET="CORE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <IMPORT DELEGATE="c::CORE"/>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD3>catch</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>const_cast</KEYWORD3>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD3>dynamic_cast</KEYWORD3>\r
+ <KEYWORD1>explicit</KEYWORD1>\r
+ <KEYWORD2>export</KEYWORD2>\r
+ <KEYWORD1>friend</KEYWORD1>\r
+ <KEYWORD3>mutable</KEYWORD3>\r
+ <KEYWORD2>namespace</KEYWORD2>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD3>operator</KEYWORD3>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD3>reinterpret_cast</KEYWORD3>\r
+ <KEYWORD3>static_assert</KEYWORD3>\r
+ <KEYWORD3>static_cast</KEYWORD3>\r
+ <KEYWORD3>template</KEYWORD3>\r
+ <LITERAL2>this</LITERAL2>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD3>typeid</KEYWORD3>\r
+ <KEYWORD3>typename</KEYWORD3>\r
+ <KEYWORD2>using</KEYWORD2>\r
+ <KEYWORD1>virtual</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Preprocessor specific rules -->\r
+ <RULES SET="CPP"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <EOL_SPAN_REGEXP HASH_CHAR="include" TYPE="MARKUP" DELEGATE="c::INCLUDE">include\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="define" TYPE="MARKUP" DELEGATE="DEFINE">define\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="endif" TYPE="MARKUP" DELEGATE="c::LEX">endif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="elif" TYPE="MARKUP" DELEGATE="c::CONDITION">elif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="if" TYPE="MARKUP" DELEGATE="c::CONDITION">if\b</EOL_SPAN_REGEXP>\r
+\r
+ <IMPORT DELEGATE="LEX"/>\r
+\r
+ <!-- Directives -->\r
+ <KEYWORDS>\r
+ <MARKUP>ifdef</MARKUP>\r
+ <MARKUP>ifndef</MARKUP>\r
+ <MARKUP>else</MARKUP>\r
+ <MARKUP>error</MARKUP>\r
+ <MARKUP>line</MARKUP>\r
+ <MARKUP>pragma</MARKUP>\r
+ <MARKUP>undef</MARKUP>\r
+ <MARKUP>warning</MARKUP>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- After #define directive -->\r
+ <!-- Almost same as the normal code,\r
+ except two additional operators # and ##. -->\r
+ <RULES SET="DEFINE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <IMPORT DELEGATE="LEX"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- DocComments may have XML in them -->\r
+ <EOL_SPAN TYPE="COMMENT3" DELEGATE="DOC_COMMENT">///</EOL_SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <!-- verbatim strings -->\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="FALSE" NO_ESCAPE="TRUE">\r
+ <BEGIN>@"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="KEYWORD2">#if</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#else</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#elif</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#endif</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#define</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#undef</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#warning</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#error</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#line</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#region</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#endregion</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>base</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>checked</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>delegate</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>explicit</KEYWORD1>\r
+ <KEYWORD1>extern</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>fixed</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implicit</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>internal</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>lock</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>operator</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>override</KEYWORD1>\r
+ <KEYWORD1>params</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>readonly</KEYWORD1>\r
+ <KEYWORD1>ref</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>sealed</KEYWORD1>\r
+ <KEYWORD1>sizeof</KEYWORD1>\r
+ <KEYWORD1>stackalloc</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>typeof</KEYWORD1>\r
+ <KEYWORD1>unchecked</KEYWORD1>\r
+ <KEYWORD1>unsafe</KEYWORD1>\r
+ <KEYWORD1>virtual</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>using</KEYWORD2>\r
+ <KEYWORD2>namespace</KEYWORD2>\r
+\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>enum</KEYWORD3>\r
+ <KEYWORD3>event</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>interface</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>object</KEYWORD3>\r
+ <KEYWORD3>sbyte</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>struct</KEYWORD3>\r
+ <KEYWORD3>uint</KEYWORD3>\r
+ <KEYWORD3>ulong</KEYWORD3>\r
+ <KEYWORD3>ushort</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>this</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="DOC_COMMENT" DEFAULT="COMMENT3" IGNORE_CASE="TRUE">\r
+ <!-- XML comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <!-- XML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="noWordSep" VALUE="-" />\r
+ <PROPERTY NAME="noWordSep" VALUE="_" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="TRUE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="-?[\p{Digit}]+(pt|pc|in|mm|cm|em|ex|px|ms|s|%)"\r
+ NO_WORD_SEP="-_%">\r
+\r
+ <!-- classes: -->\r
+ <MARK_FOLLOWING TYPE="LITERAL1">.</MARK_FOLLOWING>\r
+ <!-- IDs: -->\r
+ <MARK_FOLLOWING TYPE="LITERAL2">#</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+\r
+ <!-- TODO: selectors, see http://www.w3.org/TR/REC-CSS2/selector.html -->\r
+\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PSEUDO">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <!-- property blocks: -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="PROPERTIES">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <IMPORT DELEGATE="GLOBAL" />\r
+ <IMPORT DELEGATE="html::TAGS" />\r
+ </RULES>\r
+\r
+\r
+ <!-- Pseudo classes like ":active" -->\r
+ <RULES SET="PSEUDO">\r
+ <!-- Delegate back: -->\r
+ <SEQ TYPE="NULL" DELEGATE="MAIN"> </SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="MAIN">,</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PROPERTIES">{</SEQ>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="lang" TYPE="KEYWORD4">\r
+ <BEGIN>lang\s*\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="lang" TYPE="KEYWORD4">\r
+ <BEGIN>lang\s*\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- For delegating to PROPERTIES: -->\r
+ <IMPORT DELEGATE="GLOBAL" />\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD4>after</KEYWORD4>\r
+ <KEYWORD4>before</KEYWORD4>\r
+ <KEYWORD4>first-child</KEYWORD4>\r
+ <KEYWORD4>link</KEYWORD4>\r
+ <KEYWORD4>visited</KEYWORD4>\r
+ <KEYWORD4>active</KEYWORD4>\r
+ <KEYWORD4>hover</KEYWORD4>\r
+ <KEYWORD4>focus</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">\r
+ </RULES>\r
+\r
+ <!-- Properties: -->\r
+ <RULES SET="PROPERTIES" ESCAPE="\">\r
+ <!-- Delegate back -->\r
+ <SEQ TYPE="OPERATOR" DELEGATE="MAIN">}</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PROP_VALUE">:</SEQ>\r
+\r
+ <IMPORT DELEGATE="GLOBAL" />\r
+\r
+ <KEYWORDS>\r
+ <!-- CSS2 properties -->\r
+\r
+ <!-- Color and background properties -->\r
+ <KEYWORD2>background</KEYWORD2>\r
+ <KEYWORD2>background-attachment</KEYWORD2>\r
+ <KEYWORD2>background-color</KEYWORD2>\r
+ <KEYWORD2>background-image</KEYWORD2>\r
+ <KEYWORD2>background-position</KEYWORD2>\r
+ <KEYWORD2>background-repeat</KEYWORD2>\r
+ <KEYWORD2>color</KEYWORD2>\r
+\r
+ <!-- Font properties -->\r
+ <KEYWORD2>font</KEYWORD2>\r
+ <KEYWORD2>font-family</KEYWORD2>\r
+ <KEYWORD2>font-size</KEYWORD2>\r
+ <KEYWORD2>font-size-adjust</KEYWORD2>\r
+ <KEYWORD2>font-style</KEYWORD2>\r
+ <KEYWORD2>font-variant</KEYWORD2>\r
+ <KEYWORD2>font-weight</KEYWORD2>\r
+ <KEYWORD2>font-stretch</KEYWORD2>\r
+ <KEYWORD2>src</KEYWORD2>\r
+ <KEYWORD2>definition-src</KEYWORD2>\r
+ <KEYWORD2>unicode-range</KEYWORD2>\r
+ <KEYWORD2>panose-1</KEYWORD2>\r
+ <KEYWORD2>stemv</KEYWORD2>\r
+ <KEYWORD2>stemh</KEYWORD2>\r
+ <KEYWORD2>units-per-em</KEYWORD2>\r
+ <KEYWORD2>slope</KEYWORD2>\r
+ <KEYWORD2>cap-height</KEYWORD2>\r
+ <KEYWORD2>x-height</KEYWORD2>\r
+ <KEYWORD2>ascent</KEYWORD2>\r
+ <KEYWORD2>descent</KEYWORD2>\r
+ <KEYWORD2>baseline</KEYWORD2>\r
+ <KEYWORD2>centerline</KEYWORD2>\r
+ <KEYWORD2>mathline</KEYWORD2>\r
+ <KEYWORD2>topline</KEYWORD2>\r
+\r
+ <!-- Text properties -->\r
+ <KEYWORD2>letter-spacing</KEYWORD2>\r
+ <KEYWORD2>text-align</KEYWORD2>\r
+ <KEYWORD2>text-shadow</KEYWORD2>\r
+ <KEYWORD2>text-decoration</KEYWORD2>\r
+ <KEYWORD2>text-indent</KEYWORD2>\r
+ <KEYWORD2>text-transform</KEYWORD2>\r
+ <KEYWORD2>word-spacing</KEYWORD2>\r
+ <KEYWORD2>letter-spacing</KEYWORD2>\r
+ <KEYWORD2>white-space</KEYWORD2>\r
+\r
+ <!-- Box properties -->\r
+ <KEYWORD2>border</KEYWORD2>\r
+ <KEYWORD2>bottom</KEYWORD2>\r
+ <KEYWORD2>border-collapse</KEYWORD2>\r
+ <KEYWORD2>border-spacing</KEYWORD2>\r
+ <KEYWORD2>border-bottom</KEYWORD2>\r
+ <KEYWORD2>border-bottom-style</KEYWORD2>\r
+ <KEYWORD2>border-bottom-width</KEYWORD2>\r
+ <KEYWORD2>border-bottom-color</KEYWORD2>\r
+ <KEYWORD2>border-left</KEYWORD2>\r
+ <KEYWORD2>border-left-style</KEYWORD2>\r
+ <KEYWORD2>border-left-width</KEYWORD2>\r
+ <KEYWORD2>border-left-color</KEYWORD2>\r
+ <KEYWORD2>border-right</KEYWORD2>\r
+ <KEYWORD2>border-right-style</KEYWORD2>\r
+ <KEYWORD2>border-right-width</KEYWORD2>\r
+ <KEYWORD2>border-right-color</KEYWORD2>\r
+ <KEYWORD2>border-top</KEYWORD2>\r
+ <KEYWORD2>border-top-style</KEYWORD2>\r
+ <KEYWORD2>border-top-width</KEYWORD2>\r
+ <KEYWORD2>border-top-color</KEYWORD2>\r
+ <KEYWORD2>border-color</KEYWORD2>\r
+ <KEYWORD2>border-style</KEYWORD2>\r
+ <KEYWORD2>border-width</KEYWORD2>\r
+ <KEYWORD2>clear</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>height</KEYWORD2>\r
+ <KEYWORD2>margin</KEYWORD2>\r
+ <KEYWORD2>margin-bottom</KEYWORD2>\r
+ <KEYWORD2>margin-left</KEYWORD2>\r
+ <KEYWORD2>margin-right</KEYWORD2>\r
+ <KEYWORD2>margin-top</KEYWORD2>\r
+ <KEYWORD2>padding</KEYWORD2>\r
+ <KEYWORD2>padding-bottom</KEYWORD2>\r
+ <KEYWORD2>padding-left</KEYWORD2>\r
+ <KEYWORD2>padding-right</KEYWORD2>\r
+ <KEYWORD2>padding-top</KEYWORD2>\r
+ <KEYWORD2>clear</KEYWORD2>\r
+\r
+ <!-- Visual formatting properties -->\r
+ <KEYWORD2>display</KEYWORD2>\r
+ <KEYWORD2>position</KEYWORD2>\r
+ <KEYWORD2>top</KEYWORD2>\r
+ <KEYWORD2>right</KEYWORD2>\r
+ <KEYWORD2>bottom</KEYWORD2>\r
+ <KEYWORD2>left</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>z-index</KEYWORD2>\r
+ <KEYWORD2>direction</KEYWORD2>\r
+ <KEYWORD2>unicode-bidi</KEYWORD2>\r
+ <KEYWORD2>width</KEYWORD2>\r
+ <KEYWORD2>min-width</KEYWORD2>\r
+ <KEYWORD2>max-width</KEYWORD2>\r
+ <KEYWORD2>height</KEYWORD2>\r
+ <KEYWORD2>min-height</KEYWORD2>\r
+ <KEYWORD2>max-height</KEYWORD2>\r
+ <KEYWORD2>line-height</KEYWORD2>\r
+ <KEYWORD2>vertical-align</KEYWORD2>\r
+\r
+ <!-- Visual effects -->\r
+ <KEYWORD2>overflow</KEYWORD2>\r
+ <KEYWORD2>clip</KEYWORD2>\r
+ <KEYWORD2>visibility</KEYWORD2>\r
+\r
+ <!-- Page properties -->\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD2>marks</KEYWORD2>\r
+ <KEYWORD2>page-break-before</KEYWORD2>\r
+ <KEYWORD2>page-break-after</KEYWORD2>\r
+ <KEYWORD2>page-break-inside</KEYWORD2>\r
+ <KEYWORD2>page</KEYWORD2>\r
+ <KEYWORD2>orphans</KEYWORD2>\r
+ <KEYWORD2>widows</KEYWORD2>\r
+\r
+ <!-- Table properties -->\r
+ <KEYWORD2>caption-side</KEYWORD2>\r
+ <KEYWORD2>table-layout</KEYWORD2>\r
+ <KEYWORD2>border-collapse</KEYWORD2>\r
+ <KEYWORD2>border-spacing</KEYWORD2>\r
+ <KEYWORD2>empty-cells</KEYWORD2>\r
+ <KEYWORD2>speak-headers</KEYWORD2>\r
+\r
+ <!-- User interface -->\r
+ <KEYWORD2>cursor</KEYWORD2>\r
+ <KEYWORD2>outline</KEYWORD2>\r
+ <KEYWORD2>outline-width</KEYWORD2>\r
+ <KEYWORD2>outline-style</KEYWORD2>\r
+ <KEYWORD2>outline-color</KEYWORD2>\r
+\r
+ <!-- Aural properties -->\r
+ <KEYWORD2>azimuth</KEYWORD2>\r
+ <KEYWORD2>volume</KEYWORD2>\r
+ <KEYWORD2>speak</KEYWORD2>\r
+ <KEYWORD2>pause</KEYWORD2>\r
+ <KEYWORD2>pause-before</KEYWORD2>\r
+ <KEYWORD2>pause-after</KEYWORD2>\r
+ <KEYWORD2>cue</KEYWORD2>\r
+ <KEYWORD2>cue-before</KEYWORD2>\r
+ <KEYWORD2>cue-after</KEYWORD2>\r
+ <KEYWORD2>play-during</KEYWORD2>\r
+ <KEYWORD2>elevation</KEYWORD2>\r
+ <KEYWORD2>speech-rate</KEYWORD2>\r
+ <KEYWORD2>voice-family</KEYWORD2>\r
+ <KEYWORD2>pitch</KEYWORD2>\r
+ <KEYWORD2>pitch-range</KEYWORD2>\r
+ <KEYWORD2>stress</KEYWORD2>\r
+ <KEYWORD2>richness</KEYWORD2>\r
+ <KEYWORD2>speak-punctuation</KEYWORD2>\r
+ <KEYWORD2>speak-numeral</KEYWORD2>\r
+ <KEYWORD2>speak-header-cell</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <!-- Values: -->\r
+ <RULES SET="PROP_VALUE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="-?[\p{Digit}]+(pt|pc|in|mm|cm|em|ex|px|ms|s|%)"\r
+ NO_WORD_SEP="-_%"\r
+ ESCAPE="\">\r
+\r
+ <SPAN DELEGATE="LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- "functions" -->\r
+ <SPAN_REGEXP DELEGATE="LITERAL" HASH_CHARS="RU" TYPE="KEYWORD1">\r
+ <BEGIN>(rgb|url)\s*\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- <SEQ DELEGATE="PROP_VALUE_COLOR">#</SEQ> -->\r
+ <MARK_FOLLOWING TYPE="DIGIT">#</MARK_FOLLOWING>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="!" TYPE="KEYWORD2">!\s*important</SEQ_REGEXP>\r
+\r
+ <!-- proprietary IE function: -->\r
+ <SPAN_REGEXP TYPE="FUNCTION" DELEGATE="javascript::MAIN" HASH_CHAR="expression">\r
+ <BEGIN>expression\s*\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Delegate back: -->\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PROPERTIES">;</SEQ>\r
+ <SEQ TYPE="INVALID" DELEGATE="MAIN">}</SEQ> <!-- end properties block, but it's invalid -->\r
+\r
+ <IMPORT DELEGATE="GLOBAL" />\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD3>left</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>below</KEYWORD3>\r
+ <KEYWORD3>level</KEYWORD3>\r
+ <KEYWORD3>above</KEYWORD3>\r
+ <KEYWORD3>higher</KEYWORD3>\r
+ <KEYWORD3>lower</KEYWORD3>\r
+ <KEYWORD3>show</KEYWORD3>\r
+ <KEYWORD3>hide</KEYWORD3>\r
+ <KEYWORD3>normal</KEYWORD3>\r
+ <KEYWORD3>wider</KEYWORD3>\r
+ <KEYWORD3>narrower</KEYWORD3>\r
+ <KEYWORD3>ultra-condensed</KEYWORD3>\r
+ <KEYWORD3>extra-condensed</KEYWORD3>\r
+ <KEYWORD3>condensed</KEYWORD3>\r
+ <KEYWORD3>semi-condensed</KEYWORD3>\r
+ <KEYWORD3>semi-expanded</KEYWORD3>\r
+ <KEYWORD3>expanded</KEYWORD3>\r
+ <KEYWORD3>extra-expanded</KEYWORD3>\r
+ <KEYWORD3>ultra-expanded</KEYWORD3>\r
+ <KEYWORD3>normal</KEYWORD3>\r
+ <KEYWORD3>italic</KEYWORD3>\r
+ <KEYWORD3>oblique</KEYWORD3>\r
+ <KEYWORD3>normal</KEYWORD3>\r
+ <KEYWORD3>xx-small</KEYWORD3>\r
+ <KEYWORD3>x-small</KEYWORD3>\r
+ <KEYWORD3>small</KEYWORD3>\r
+ <KEYWORD3>large</KEYWORD3>\r
+ <KEYWORD3>x-large</KEYWORD3>\r
+ <KEYWORD3>xx-large</KEYWORD3>\r
+ <KEYWORD3>thin</KEYWORD3>\r
+ <KEYWORD3>thick</KEYWORD3>\r
+ <KEYWORD3>smaller</KEYWORD3>\r
+ <KEYWORD3>larger</KEYWORD3>\r
+ <KEYWORD3>small-caps</KEYWORD3>\r
+ <KEYWORD3>inherit</KEYWORD3>\r
+ <KEYWORD3>bold</KEYWORD3>\r
+ <KEYWORD3>bolder</KEYWORD3>\r
+ <KEYWORD3>lighter</KEYWORD3>\r
+ <KEYWORD3>inside</KEYWORD3>\r
+ <KEYWORD3>outside</KEYWORD3>\r
+ <KEYWORD3>disc</KEYWORD3>\r
+ <KEYWORD3>circle</KEYWORD3>\r
+ <KEYWORD3>square</KEYWORD3>\r
+ <KEYWORD3>decimal</KEYWORD3>\r
+ <KEYWORD3>decimal-leading-zero</KEYWORD3>\r
+ <KEYWORD3>lower-roman</KEYWORD3>\r
+ <KEYWORD3>upper-roman</KEYWORD3>\r
+ <KEYWORD3>lower-greek</KEYWORD3>\r
+ <KEYWORD3>lower-alpha</KEYWORD3>\r
+ <KEYWORD3>lower-latin</KEYWORD3>\r
+ <KEYWORD3>upper-alpha</KEYWORD3>\r
+ <KEYWORD3>upper-latin</KEYWORD3>\r
+ <KEYWORD3>hebrew</KEYWORD3>\r
+ <KEYWORD3>armenian</KEYWORD3>\r
+ <KEYWORD3>georgian</KEYWORD3>\r
+ <KEYWORD3>cjk-ideographic</KEYWORD3>\r
+ <KEYWORD3>hiragana</KEYWORD3>\r
+ <KEYWORD3>katakana</KEYWORD3>\r
+ <KEYWORD3>hiragana-iroha</KEYWORD3>\r
+ <KEYWORD3>katakana-iroha</KEYWORD3>\r
+ <KEYWORD3>crop</KEYWORD3>\r
+ <KEYWORD3>cross</KEYWORD3>\r
+ <KEYWORD3>invert</KEYWORD3>\r
+ <KEYWORD3>hidden</KEYWORD3>\r
+ <KEYWORD3>always</KEYWORD3>\r
+ <KEYWORD3>avoid</KEYWORD3>\r
+ <KEYWORD3>x-low</KEYWORD3>\r
+ <KEYWORD3>low</KEYWORD3>\r
+ <KEYWORD3>high</KEYWORD3>\r
+ <KEYWORD3>x-high</KEYWORD3>\r
+ <KEYWORD3>absolute</KEYWORD3>\r
+ <KEYWORD3>fixed</KEYWORD3>\r
+ <KEYWORD3>relative</KEYWORD3>\r
+ <KEYWORD3>static</KEYWORD3>\r
+ <KEYWORD3>portrait</KEYWORD3>\r
+ <KEYWORD3>landscape</KEYWORD3>\r
+ <KEYWORD3>spell-out</KEYWORD3>\r
+ <KEYWORD3>digits</KEYWORD3>\r
+ <KEYWORD3>continuous</KEYWORD3>\r
+ <KEYWORD3>x-slow</KEYWORD3>\r
+ <KEYWORD3>slow</KEYWORD3>\r
+ <KEYWORD3>fast</KEYWORD3>\r
+ <KEYWORD3>x-fast</KEYWORD3>\r
+ <KEYWORD3>faster</KEYWORD3>\r
+ <KEYWORD3>slower</KEYWORD3>\r
+ <KEYWORD3>underline</KEYWORD3>\r
+ <KEYWORD3>overline</KEYWORD3>\r
+ <KEYWORD3>line-through</KEYWORD3>\r
+ <KEYWORD3>blink</KEYWORD3>\r
+ <KEYWORD3>capitalize</KEYWORD3>\r
+ <KEYWORD3>uppercase</KEYWORD3>\r
+ <KEYWORD3>lowercase</KEYWORD3>\r
+ <KEYWORD3>embed</KEYWORD3>\r
+ <KEYWORD3>bidi-override</KEYWORD3>\r
+ <KEYWORD3>baseline</KEYWORD3>\r
+ <KEYWORD3>sub</KEYWORD3>\r
+ <KEYWORD3>super</KEYWORD3>\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>text-top</KEYWORD3>\r
+ <KEYWORD3>middle</KEYWORD3>\r
+ <KEYWORD3>bottom</KEYWORD3>\r
+ <KEYWORD3>text-bottom</KEYWORD3>\r
+ <KEYWORD3>visible</KEYWORD3>\r
+ <KEYWORD3>hidden</KEYWORD3>\r
+ <KEYWORD3>collapse</KEYWORD3>\r
+ <KEYWORD3>soft</KEYWORD3>\r
+ <KEYWORD3>loud</KEYWORD3>\r
+ <KEYWORD3>x-loud</KEYWORD3>\r
+ <KEYWORD3>pre</KEYWORD3>\r
+ <KEYWORD3>nowrap</KEYWORD3>\r
+ <KEYWORD3>dotted</KEYWORD3>\r
+ <KEYWORD3>dashed</KEYWORD3>\r
+ <KEYWORD3>solid</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>groove</KEYWORD3>\r
+ <KEYWORD3>ridge</KEYWORD3>\r
+ <KEYWORD3>inset</KEYWORD3>\r
+ <KEYWORD3>outset</KEYWORD3>\r
+ <KEYWORD3>once</KEYWORD3>\r
+ <KEYWORD3>both</KEYWORD3>\r
+ <KEYWORD3>silent</KEYWORD3>\r
+ <KEYWORD3>medium</KEYWORD3>\r
+ <KEYWORD3>mix</KEYWORD3>\r
+ <KEYWORD3>male</KEYWORD3>\r
+ <KEYWORD3>female</KEYWORD3>\r
+ <KEYWORD3>child</KEYWORD3>\r
+ <KEYWORD3>code</KEYWORD3>\r
+\r
+ <!-- measurement units -->\r
+ <KEYWORD3>left-side</KEYWORD3>\r
+ <KEYWORD3>far-left</KEYWORD3>\r
+ <KEYWORD3>center-left</KEYWORD3>\r
+ <KEYWORD3>center</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>center-right</KEYWORD3>\r
+ <KEYWORD3>far-right</KEYWORD3>\r
+ <KEYWORD3>right-side</KEYWORD3>\r
+ <KEYWORD3>justify</KEYWORD3>\r
+ <KEYWORD3>behind</KEYWORD3>\r
+ <KEYWORD3>leftwards</KEYWORD3>\r
+ <KEYWORD3>rightwards</KEYWORD3>\r
+ <KEYWORD3>inherit</KEYWORD3>\r
+ <KEYWORD3>scroll</KEYWORD3>\r
+ <KEYWORD3>fixed</KEYWORD3>\r
+ <KEYWORD3>transparent</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>repeat</KEYWORD3>\r
+ <KEYWORD3>repeat-x</KEYWORD3>\r
+ <KEYWORD3>repeat-y</KEYWORD3>\r
+ <KEYWORD3>no-repeat</KEYWORD3>\r
+ <KEYWORD3>collapse</KEYWORD3>\r
+ <KEYWORD3>separate</KEYWORD3>\r
+ <KEYWORD3>auto</KEYWORD3>\r
+ <KEYWORD3>open-quote</KEYWORD3>\r
+ <KEYWORD3>close-quote</KEYWORD3>\r
+ <KEYWORD3>no-open-quote</KEYWORD3>\r
+ <KEYWORD3>no-close-quote</KEYWORD3>\r
+ <KEYWORD3>cue-before</KEYWORD3>\r
+ <KEYWORD3>cue-after</KEYWORD3>\r
+ <KEYWORD3>crosshair</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>pointer</KEYWORD3>\r
+ <KEYWORD3>move</KEYWORD3>\r
+ <KEYWORD3>e-resize</KEYWORD3>\r
+ <KEYWORD3>ne-resize</KEYWORD3>\r
+ <KEYWORD3>nw-resize</KEYWORD3>\r
+ <KEYWORD3>n-resize</KEYWORD3>\r
+ <KEYWORD3>se-resize</KEYWORD3>\r
+ <KEYWORD3>sw-resize</KEYWORD3>\r
+ <KEYWORD3>s-resize</KEYWORD3>\r
+ <KEYWORD3>w-resize</KEYWORD3>\r
+ <KEYWORD3>text</KEYWORD3>\r
+ <KEYWORD3>wait</KEYWORD3>\r
+ <KEYWORD3>help</KEYWORD3>\r
+ <KEYWORD3>ltr</KEYWORD3>\r
+ <KEYWORD3>rtl</KEYWORD3>\r
+ <KEYWORD3>inline</KEYWORD3>\r
+ <KEYWORD3>block</KEYWORD3>\r
+ <KEYWORD3>list-item</KEYWORD3>\r
+ <KEYWORD3>run-in</KEYWORD3>\r
+ <KEYWORD3>compact</KEYWORD3>\r
+ <KEYWORD3>marker</KEYWORD3>\r
+ <KEYWORD3>table</KEYWORD3>\r
+ <KEYWORD3>inline-table</KEYWORD3>\r
+ <KEYWORD3>inline-block</KEYWORD3>\r
+ <KEYWORD3>table-row-group</KEYWORD3>\r
+ <KEYWORD3>table-header-group</KEYWORD3>\r
+ <KEYWORD3>table-footer-group</KEYWORD3>\r
+ <KEYWORD3>table-row</KEYWORD3>\r
+ <KEYWORD3>table-column-group</KEYWORD3>\r
+ <KEYWORD3>table-column</KEYWORD3>\r
+ <KEYWORD3>table-cell</KEYWORD3>\r
+ <KEYWORD3>table-caption</KEYWORD3>\r
+\r
+ <!-- Colors -->\r
+ <KEYWORD4>aliceblue</KEYWORD4>\r
+ <KEYWORD4>antiquewhite</KEYWORD4>\r
+ <KEYWORD4>aqua</KEYWORD4>\r
+ <KEYWORD4>aquamarine</KEYWORD4>\r
+ <KEYWORD4>azure</KEYWORD4>\r
+ <KEYWORD4>beige</KEYWORD4>\r
+ <KEYWORD4>bisque</KEYWORD4>\r
+ <KEYWORD4>black</KEYWORD4>\r
+ <KEYWORD4>blanchedalmond</KEYWORD4>\r
+ <KEYWORD4>blue</KEYWORD4>\r
+ <KEYWORD4>blueviolet</KEYWORD4>\r
+ <KEYWORD4>brown</KEYWORD4>\r
+ <KEYWORD4>burlywood</KEYWORD4>\r
+ <KEYWORD4>cadetblue</KEYWORD4>\r
+ <KEYWORD4>chartreuse</KEYWORD4>\r
+ <KEYWORD4>chocolate</KEYWORD4>\r
+ <KEYWORD4>coral</KEYWORD4>\r
+ <KEYWORD4>cornflowerblue</KEYWORD4>\r
+ <KEYWORD4>cornsilk</KEYWORD4>\r
+ <KEYWORD4>crimson</KEYWORD4>\r
+ <KEYWORD4>cyan</KEYWORD4>\r
+ <KEYWORD4>darkblue</KEYWORD4>\r
+ <KEYWORD4>darkcyan</KEYWORD4>\r
+ <KEYWORD4>darkgoldenrod</KEYWORD4>\r
+ <KEYWORD4>darkgray</KEYWORD4>\r
+ <KEYWORD4>darkgreen</KEYWORD4>\r
+ <KEYWORD4>darkgrey</KEYWORD4>\r
+ <KEYWORD4>darkkhaki</KEYWORD4>\r
+ <KEYWORD4>darkmagenta</KEYWORD4>\r
+ <KEYWORD4>darkolivegreen</KEYWORD4>\r
+ <KEYWORD4>darkorange</KEYWORD4>\r
+ <KEYWORD4>darkorchid</KEYWORD4>\r
+ <KEYWORD4>darkred</KEYWORD4>\r
+ <KEYWORD4>darksalmon</KEYWORD4>\r
+ <KEYWORD4>darkseagreen</KEYWORD4>\r
+ <KEYWORD4>darkslateblue</KEYWORD4>\r
+ <KEYWORD4>darkslategray</KEYWORD4>\r
+ <KEYWORD4>darkslategrey</KEYWORD4>\r
+ <KEYWORD4>darkturquoise</KEYWORD4>\r
+ <KEYWORD4>darkviolet</KEYWORD4>\r
+ <KEYWORD4>darkpink</KEYWORD4>\r
+ <KEYWORD4>deepskyblue</KEYWORD4>\r
+ <KEYWORD4>dimgray</KEYWORD4>\r
+ <KEYWORD4>dimgrey</KEYWORD4>\r
+ <KEYWORD4>dodgerblue</KEYWORD4>\r
+ <KEYWORD4>firebrick</KEYWORD4>\r
+ <KEYWORD4>floralwhite</KEYWORD4>\r
+ <KEYWORD4>forestgreen</KEYWORD4>\r
+ <KEYWORD4>fushia</KEYWORD4>\r
+ <KEYWORD4>gainsboro</KEYWORD4>\r
+ <KEYWORD4>ghostwhite</KEYWORD4>\r
+ <KEYWORD4>gold</KEYWORD4>\r
+ <KEYWORD4>goldenrod</KEYWORD4>\r
+ <KEYWORD4>gray</KEYWORD4>\r
+ <KEYWORD4>green</KEYWORD4>\r
+ <KEYWORD4>greenyellow</KEYWORD4>\r
+ <KEYWORD4>grey</KEYWORD4>\r
+ <KEYWORD4>honeydew</KEYWORD4>\r
+ <KEYWORD4>hotpink</KEYWORD4>\r
+ <KEYWORD4>indianred</KEYWORD4>\r
+ <KEYWORD4>indigo</KEYWORD4>\r
+ <KEYWORD4>ivory</KEYWORD4>\r
+ <KEYWORD4>khaki</KEYWORD4>\r
+ <KEYWORD4>lavender</KEYWORD4>\r
+ <KEYWORD4>lavenderblush</KEYWORD4>\r
+ <KEYWORD4>lawngreen</KEYWORD4>\r
+ <KEYWORD4>lemonchiffon</KEYWORD4>\r
+ <KEYWORD4>lightblue</KEYWORD4>\r
+ <KEYWORD4>lightcoral</KEYWORD4>\r
+ <KEYWORD4>lightcyan</KEYWORD4>\r
+ <KEYWORD4>lightgoldenrodyellow</KEYWORD4>\r
+ <KEYWORD4>lightgray</KEYWORD4>\r
+ <KEYWORD4>lightgreen</KEYWORD4>\r
+ <KEYWORD4>lightgrey</KEYWORD4>\r
+ <KEYWORD4>lightpink</KEYWORD4>\r
+ <KEYWORD4>lightsalmon</KEYWORD4>\r
+ <KEYWORD4>lightseagreen</KEYWORD4>\r
+ <KEYWORD4>lightskyblue</KEYWORD4>\r
+ <KEYWORD4>lightslategray</KEYWORD4>\r
+ <KEYWORD4>lightslategrey</KEYWORD4>\r
+ <KEYWORD4>lightsteelblue</KEYWORD4>\r
+ <KEYWORD4>lightyellow</KEYWORD4>\r
+ <KEYWORD4>lime</KEYWORD4>\r
+ <KEYWORD4>limegreen</KEYWORD4>\r
+ <KEYWORD4>linen</KEYWORD4>\r
+ <KEYWORD4>magenta</KEYWORD4>\r
+ <KEYWORD4>maroon</KEYWORD4>\r
+ <KEYWORD4>mediumaquamarine</KEYWORD4>\r
+ <KEYWORD4>mediumblue</KEYWORD4>\r
+ <KEYWORD4>mediumorchid</KEYWORD4>\r
+ <KEYWORD4>mediumpurple</KEYWORD4>\r
+ <KEYWORD4>mediumseagreen</KEYWORD4>\r
+ <KEYWORD4>mediumslateblue</KEYWORD4>\r
+ <KEYWORD4>mediumspringgreen</KEYWORD4>\r
+ <KEYWORD4>mediumturquoise</KEYWORD4>\r
+ <KEYWORD4>mediumvioletred</KEYWORD4>\r
+ <KEYWORD4>midnightblue</KEYWORD4>\r
+ <KEYWORD4>mintcream</KEYWORD4>\r
+ <KEYWORD4>mistyrose</KEYWORD4>\r
+ <KEYWORD4>mocassin</KEYWORD4>\r
+ <KEYWORD4>navawhite</KEYWORD4>\r
+ <KEYWORD4>navy</KEYWORD4>\r
+ <KEYWORD4>oldlace</KEYWORD4>\r
+ <KEYWORD4>olive</KEYWORD4>\r
+ <KEYWORD4>olidrab</KEYWORD4>\r
+ <KEYWORD4>orange</KEYWORD4>\r
+ <KEYWORD4>orangered</KEYWORD4>\r
+ <KEYWORD4>orchid</KEYWORD4>\r
+ <KEYWORD4>palegoldenrod</KEYWORD4>\r
+ <KEYWORD4>palegreen</KEYWORD4>\r
+ <KEYWORD4>paleturquoise</KEYWORD4>\r
+ <KEYWORD4>paletvioletred</KEYWORD4>\r
+ <KEYWORD4>papayawhip</KEYWORD4>\r
+ <KEYWORD4>peachpuff</KEYWORD4>\r
+ <KEYWORD4>peru</KEYWORD4>\r
+ <KEYWORD4>pink</KEYWORD4>\r
+ <KEYWORD4>plum</KEYWORD4>\r
+ <KEYWORD4>powderblue</KEYWORD4>\r
+ <KEYWORD4>purple</KEYWORD4>\r
+ <KEYWORD4>red</KEYWORD4>\r
+ <KEYWORD4>rosybrown</KEYWORD4>\r
+ <KEYWORD4>royalblue</KEYWORD4>\r
+ <KEYWORD4>saddlebrown</KEYWORD4>\r
+ <KEYWORD4>salmon</KEYWORD4>\r
+ <KEYWORD4>sandybrown</KEYWORD4>\r
+ <KEYWORD4>seagreen</KEYWORD4>\r
+ <KEYWORD4>seashell</KEYWORD4>\r
+ <KEYWORD4>sienna</KEYWORD4>\r
+ <KEYWORD4>silver</KEYWORD4>\r
+ <KEYWORD4>skyblue</KEYWORD4>\r
+ <KEYWORD4>slateblue</KEYWORD4>\r
+ <KEYWORD4>slategray</KEYWORD4>\r
+ <KEYWORD4>slategrey</KEYWORD4>\r
+ <KEYWORD4>snow</KEYWORD4>\r
+ <KEYWORD4>springgreen</KEYWORD4>\r
+ <KEYWORD4>steelblue</KEYWORD4>\r
+ <KEYWORD4>tan</KEYWORD4>\r
+ <KEYWORD4>teal</KEYWORD4>\r
+ <KEYWORD4>thistle</KEYWORD4>\r
+ <KEYWORD4>tomato</KEYWORD4>\r
+ <KEYWORD4>turquoise</KEYWORD4>\r
+ <KEYWORD4>violet</KEYWORD4>\r
+ <KEYWORD4>wheat</KEYWORD4>\r
+ <KEYWORD4>white</KEYWORD4>\r
+ <KEYWORD4>whitesmoke</KEYWORD4>\r
+ <KEYWORD4>yellow</KEYWORD4>\r
+ <KEYWORD4>yellowgreen</KEYWORD4>\r
+\r
+ <!-- "functions", here for autocomplete: -->\r
+ <KEYWORD1>rgb</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="GLOBAL">\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SPAN TYPE="NULL" DELEGATE="LITERAL">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <!-- Generated content, automatic listing -->\r
+ <KEYWORD2>content</KEYWORD2>\r
+ <KEYWORD2>quotes</KEYWORD2>\r
+ <KEYWORD2>counter-reset</KEYWORD2>\r
+ <KEYWORD2>counter-increment</KEYWORD2>\r
+ <KEYWORD2>marker-offset</KEYWORD2>\r
+ <KEYWORD2>list-style</KEYWORD2>\r
+ <KEYWORD2>list-style-image</KEYWORD2>\r
+ <KEYWORD2>list-style-position</KEYWORD2>\r
+ <KEYWORD2>list-style-type</KEYWORD2>\r
+\r
+ <KEYWORD2>@import</KEYWORD2>\r
+ <KEYWORD2>@media</KEYWORD2>\r
+ <KEYWORD2>@page</KEYWORD2>\r
+ <KEYWORD2>@font-face</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+\r
+Author: Jaco de Groot\r
+Version: 2.2 20070213\r
+\r
+Comma Separated Values specification used for this mode:\r
+\r
+A file containing table data where the fields are sperated by commas. Fields\r
+containing commas (,) or newlines must be quoted (surrounded by quotes (")).\r
+Quotes in quoted fields must be escaped with two quotes.\r
+\r
+Highlighted are:\r
+- Even columns\r
+- Commas seperating values\r
+- Quotes surrounding values\r
+- Escaped quotes are highlighted.\r
+\r
+It is also possible that semicolons are used instead of commas. Therefor the\r
+first rules check if the first separator found is a comma or a semicolon and\r
+then switch to the comma or semicolon rules.\r
+\r
+-->\r
+\r
+<MODE>\r
+\r
+ <!-- Switch rules -->\r
+\r
+ <RULES>\r
+ <SEQ TYPE="MARKUP" DELEGATE="ODD_QUOTED" AT_LINE_START="TRUE">"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN_QUOTED">,"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN_QUOTED">;"</SEQ>\r
+ <EOL_SPAN_REGEXP TYPE="MARKUP" HASH_CHAR="," DELEGATE="COMMA_LAST_COLUMN">,(?=[^,]*$)</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP TYPE="MARKUP" HASH_CHAR=";" DELEGATE="SEMICOLON_LAST_COLUMN">;(?=[^;]*$)</EOL_SPAN_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN">,</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN">;</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="ODD_QUOTED">\r
+ <SEQ TYPE="MARKUP" DELEGATE="ODD_QUOTED">""</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="COMMA_MAIN">"(?=,[^"][^,]*$)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="SEMICOLON_MAIN">"(?=;[^"][^;]*$)</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN_QUOTED">","</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN_QUOTED">";"</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""," DELEGATE="COMMA_MAIN">",$</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="";" DELEGATE="SEMICOLON_MAIN">";$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN">",</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN">";</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="MAIN">"$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="EVEN">"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES DEFAULT="COMMENT1" SET="EVEN">\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED">,"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED">;"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_MAIN">,</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_MAIN">;</SEQ>\r
+ </RULES>\r
+\r
+ <RULES DEFAULT="COMMENT1" SET="EVEN_QUOTED">\r
+ <SEQ TYPE="MARKUP" DELEGATE="EVEN_QUOTED">""</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED">","</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED">";"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_MAIN">",</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_MAIN">";</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="MAIN">"</SEQ>\r
+ </RULES>\r
+\r
+ <!-- Comma rules -->\r
+\r
+ <RULES SET="COMMA_MAIN">\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED" AT_LINE_START="TRUE">"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN_QUOTED">,"</SEQ>\r
+ <EOL_SPAN_REGEXP TYPE="MARKUP" HASH_CHAR="," DELEGATE="COMMA_LAST_COLUMN">,(?=[^,]*$)</EOL_SPAN_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN">,</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="COMMA_ODD_QUOTED">\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED">""</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="COMMA_MAIN">"(?=,[^"][^,]*$)</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN_QUOTED">","</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""," DELEGATE="COMMA_MAIN">",$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN">",</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="COMMA_MAIN">"$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN">"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="COMMA_EVEN" DEFAULT="COMMENT1">\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED">,"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_MAIN">,</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="COMMA_EVEN_QUOTED" DEFAULT="COMMENT1">\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_EVEN_QUOTED">""</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_ODD_QUOTED">","</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_MAIN">",</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="COMMA_MAIN">"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="COMMA_LAST_COLUMN" DEFAULT="COMMENT1">\r
+ </RULES>\r
+\r
+ <!-- Semicolon rules -->\r
+\r
+ <RULES SET="SEMICOLON_MAIN">\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED" AT_LINE_START="TRUE">"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN_QUOTED">;"</SEQ>\r
+ <EOL_SPAN_REGEXP TYPE="MARKUP" HASH_CHAR=";" DELEGATE="SEMICOLON_LAST_COLUMN">;(?=[^;]*$)</EOL_SPAN_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN">;</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SEMICOLON_ODD_QUOTED">\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED">""</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="SEMICOLON_MAIN">"(?=;[^"][^;]*$)</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN_QUOTED">";"</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="";" DELEGATE="SEMICOLON_MAIN">";$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN">";</SEQ>\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR=""" DELEGATE="SEMICOLON_MAIN">"$</SEQ_REGEXP>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN">"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SEMICOLON_EVEN" DEFAULT="COMMENT1">\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED">;"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_MAIN">;</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SEMICOLON_EVEN_QUOTED" DEFAULT="COMMENT1">\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_EVEN_QUOTED">""</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_ODD_QUOTED">";"</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_MAIN">";</SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="SEMICOLON_MAIN">"</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SEMICOLON_LAST_COLUMN" DEFAULT="COMMENT1">\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="cvs-commit" FILE="cvs-commit.xml"\r
+ FILE_NAME_GLOB="cvs*.tmp"/>\r
+-->\r
+\r
+<MODE>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <EOL_SPAN TYPE="COMMENT1" \r
+ DELEGATE="CHANGED" \r
+ AT_LINE_START="TRUE"\r
+ >CVS:</EOL_SPAN>\r
+ </RULES>\r
+ <RULES SET="CHANGED" DEFAULT="COMMENT2">\r
+ <SEQ TYPE="COMMENT1" AT_LINE_START="TRUE">CVS:</SEQ>\r
+ <SEQ TYPE="KEYWORD1">Committing in</SEQ>\r
+ <SEQ TYPE="KEYWORD1">Added Files:</SEQ>\r
+ <SEQ TYPE="KEYWORD1">Modified Files:</SEQ>\r
+ <SEQ TYPE="KEYWORD1">Removed Files:</SEQ>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[0-9a-fA-F_]+[uUlL]?|[0-9_]+(e[0-9_]*)?[uUlLdDfF]?)">\r
+\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Doxygen comment, Javadoc style -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Doxygen comment, Qt style -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="doxygen::DOXYGEN">\r
+ <BEGIN>/*!</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Nested comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="NESTED_COMMENT">\r
+ <BEGIN>/+</BEGIN>\r
+ <END>+/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <!-- Wysiwyg string literal -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" NO_ESCAPE="TRUE">\r
+ <BEGIN>r"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <!-- Alternate Wysiwyg string literal -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" NO_ESCAPE="TRUE">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+ <!-- Doublequoted string literal -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <!-- Hex string literal -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>x"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <!-- Character literal -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_WHITESPACE_END="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Annotation types -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">@</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD3>alias</KEYWORD3>\r
+ <KEYWORD4>align</KEYWORD4>\r
+ <KEYWORD2>asm</KEYWORD2>\r
+ <KEYWORD2>assert</KEYWORD2>\r
+ <KEYWORD3>auto</KEYWORD3>\r
+ <KEYWORD3>bit</KEYWORD3>\r
+ <KEYWORD4>body</KEYWORD4>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD3>cast</KEYWORD3>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD3>cent</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>cfloat</KEYWORD3>\r
+ <KEYWORD3>cdouble</KEYWORD3>\r
+ <KEYWORD3>creal</KEYWORD3>\r
+ <INVALID>const</INVALID>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD3>dchar</KEYWORD3>\r
+ <KEYWORD2>debug</KEYWORD2>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD4>delegate</KEYWORD4>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD2>deprecated</KEYWORD2>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD3>enum</KEYWORD3>\r
+ <KEYWORD2>export</KEYWORD2>\r
+ <KEYWORD2>extern</KEYWORD2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD4>function</KEYWORD4>\r
+ <INVALID>goto</INVALID>\r
+ <KEYWORD3>idouble</KEYWORD3>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD3>ifloat</KEYWORD3>\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <INVALID>in</INVALID>\r
+ <INVALID>inout</INVALID>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD2>interface</KEYWORD2>\r
+ <KEYWORD2>invariant</KEYWORD2>\r
+ <KEYWORD3>ireal</KEYWORD3>\r
+ <OPERATOR>is</OPERATOR>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD4>module</KEYWORD4>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <LITERAL2>null</LITERAL2>\r
+ <INVALID>out</INVALID>\r
+ <KEYWORD4>override</KEYWORD4>\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>pragma</KEYWORD2>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD3>real</KEYWORD3>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD3>struct</KEYWORD3>\r
+ <LITERAL2>super</LITERAL2>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD3>template</KEYWORD3>\r
+ <LITERAL2>this</LITERAL2>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <LITERAL2>true</LITERAL2>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD3>typedef</KEYWORD3>\r
+ <KEYWORD1>typeof</KEYWORD1>\r
+ <KEYWORD3>ubyte</KEYWORD3>\r
+ <KEYWORD3>ucent</KEYWORD3>\r
+ <KEYWORD3>uint</KEYWORD3>\r
+ <KEYWORD3>ulong</KEYWORD3>\r
+ <KEYWORD3>union</KEYWORD3>\r
+ <KEYWORD2>unittest</KEYWORD2>\r
+ <KEYWORD3>ushort</KEYWORD3>\r
+ <KEYWORD2>version</KEYWORD2>\r
+ <KEYWORD3>void</KEYWORD3>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD3>wchar</KEYWORD3>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD2>with</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ <RULES SET="NESTED_COMMENT" DEFAULT="COMMENT1" ESCAPE="\">\r
+ <SPAN TYPE="COMMENT1" DELEGATE="NESTED_COMMENT">\r
+ <BEGIN>/+</BEGIN>\r
+ <END>+/</END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="{% comment %}" />\r
+ <PROPERTY NAME="commentEnd" VALUE="{% endcomment %}" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <IMPORT DELEGATE="html::MAIN"/>\r
+\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN>{% comment %}</BEGIN>\r
+ <END>{% endcomment %}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="DJANGO_BLOCK">\r
+ <BEGIN>{%</BEGIN>\r
+ <END>%}</END>\r
+ </SPAN>\r
+ <!-- variable -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="DJANGO_VARIABLE">\r
+ <BEGIN>{{</BEGIN>\r
+ <END>}}</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="DJANGO_VARIABLE" DEFAULT="LITERAL4">\r
+ <IMPORT DELEGATE="DJANGO_CORE"/>\r
+ </RULES>\r
+\r
+ <RULES SET="DJANGO_BLOCK" DEFAULT="LITERAL4">\r
+ <IMPORT DELEGATE="DJANGO_CORE"/>\r
+ <KEYWORDS>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>block</KEYWORD1>\r
+ <KEYWORD1>blocktrans</KEYWORD1>\r
+ <KEYWORD1>by</KEYWORD1>\r
+ <KEYWORD1>endblock</KEYWORD1>\r
+ <KEYWORD1>endblocktrans</KEYWORD1>\r
+ <KEYWORD1>comment</KEYWORD1>\r
+ <KEYWORD1>endcomment</KEYWORD1>\r
+ <KEYWORD1>cycle</KEYWORD1>\r
+ <KEYWORD1>date</KEYWORD1>\r
+ <KEYWORD1>debug</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>filter</KEYWORD1>\r
+ <KEYWORD1>endfilter</KEYWORD1>\r
+ <KEYWORD1>firstof</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>endfor</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>endif</KEYWORD1>\r
+ <KEYWORD1>ifchanged</KEYWORD1>\r
+ <KEYWORD1>endifchanged</KEYWORD1>\r
+ <KEYWORD1>ifnotequal</KEYWORD1>\r
+ <KEYWORD1>endifnotequal</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>now</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>parsed</KEYWORD1>\r
+ <KEYWORD1>regroup</KEYWORD1>\r
+ <KEYWORD1>ssi</KEYWORD1>\r
+ <KEYWORD1>trans</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>widthratio</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="DJANGO_CORE">\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <KEYWORDS>\r
+ <LITERAL3>openblock</LITERAL3>\r
+ <LITERAL3>closeblock</LITERAL3>\r
+ <LITERAL3>openvariable</LITERAL3>\r
+ <LITERAL3>closevariable</LITERAL3>\r
+\r
+ <FUNCTION>add</FUNCTION>\r
+ <FUNCTION>addslashes</FUNCTION>\r
+ <FUNCTION>capfirst</FUNCTION>\r
+ <FUNCTION>center</FUNCTION>\r
+ <FUNCTION>cut</FUNCTION>\r
+ <FUNCTION>date</FUNCTION>\r
+ <FUNCTION>default</FUNCTION>\r
+ <FUNCTION>dictsort</FUNCTION>\r
+ <FUNCTION>dictsortreversed</FUNCTION>\r
+ <FUNCTION>divisibleby</FUNCTION>\r
+ <FUNCTION>escape</FUNCTION>\r
+ <FUNCTION>filesizeformat</FUNCTION>\r
+ <FUNCTION>first</FUNCTION>\r
+ <FUNCTION>fix_ampersands</FUNCTION>\r
+ <FUNCTION>floatformat</FUNCTION>\r
+ <FUNCTION>get_digit</FUNCTION>\r
+ <FUNCTION>join</FUNCTION>\r
+ <FUNCTION>length</FUNCTION>\r
+ <FUNCTION>length_is</FUNCTION>\r
+ <FUNCTION>linebreaks</FUNCTION>\r
+ <FUNCTION>linebreaksbr</FUNCTION>\r
+ <FUNCTION>linenumbers</FUNCTION>\r
+ <FUNCTION>ljust</FUNCTION>\r
+ <FUNCTION>lower</FUNCTION>\r
+ <FUNCTION>make_list</FUNCTION>\r
+ <FUNCTION>phone2numeric</FUNCTION>\r
+ <FUNCTION>pluralize</FUNCTION>\r
+ <FUNCTION>pprint</FUNCTION>\r
+ <FUNCTION>random</FUNCTION>\r
+ <FUNCTION>removetags</FUNCTION>\r
+ <FUNCTION>rjust</FUNCTION>\r
+ <FUNCTION>slice</FUNCTION>\r
+ <FUNCTION>slugify</FUNCTION>\r
+ <FUNCTION>stringformat</FUNCTION>\r
+ <FUNCTION>striptags</FUNCTION>\r
+ <FUNCTION>time</FUNCTION>\r
+ <FUNCTION>timesince</FUNCTION>\r
+ <FUNCTION>title</FUNCTION>\r
+ <FUNCTION>truncatewords</FUNCTION>\r
+ <FUNCTION>unordered_list</FUNCTION>\r
+ <FUNCTION>upper</FUNCTION>\r
+ <FUNCTION>urlencode</FUNCTION>\r
+ <FUNCTION>urlize</FUNCTION>\r
+ <FUNCTION>urlizetrunc</FUNCTION>\r
+ <FUNCTION>wordcount</FUNCTION>\r
+ <FUNCTION>wordwrap</FUNCTION>\r
+ <FUNCTION>yesno</FUNCTION>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE" MATCH_TYPE="OPERATOR">=</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE" MATCH_TYPE="OPERATOR">+=</MARK_PREVIOUS>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+ <KEYWORDS>\r
+ <KEYWORD2>YES</KEYWORD2>\r
+ <KEYWORD3>NO</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="DOXYGEN" DEFAULT="COMMENT3" IGNORE_CASE="TRUE">\r
+ <!-- so that *@param is highlighted -->\r
+ <SEQ TYPE="COMMENT3">*</SEQ>\r
+\r
+ <!-- HTML comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- Doxygen allows this -->\r
+ <SEQ TYPE="COMMENT3"><<</SEQ>\r
+ <SEQ TYPE="COMMENT3"><=</SEQ>\r
+ <SEQ TYPE="COMMENT3">< </SEQ>\r
+\r
+ <!-- HTML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS"\r
+ NO_LINE_BREAK="TRUE">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <LABEL>\a</LABEL>\r
+ <LABEL>\addindex</LABEL>\r
+ <LABEL>\addtogroup</LABEL>\r
+ <LABEL>\anchor</LABEL>\r
+ <LABEL>\arg</LABEL>\r
+ <LABEL>\attention</LABEL>\r
+ <LABEL>\author</LABEL>\r
+ <LABEL>\b</LABEL>\r
+ <LABEL>\brief</LABEL>\r
+ <LABEL>\bug</LABEL>\r
+ <LABEL>\c</LABEL>\r
+ <LABEL>\callgraph</LABEL>\r
+ <LABEL>\category</LABEL>\r
+ <LABEL>\class</LABEL>\r
+ <LABEL>\code</LABEL>\r
+ <LABEL>\copydoc</LABEL>\r
+ <LABEL>\date</LABEL>\r
+ <LABEL>\def</LABEL>\r
+ <LABEL>\defgroup</LABEL>\r
+ <LABEL>\deprecated</LABEL>\r
+ <LABEL>\dontinclude</LABEL>\r
+ <LABEL>\dot</LABEL>\r
+ <LABEL>\dotfile</LABEL>\r
+ <LABEL>\e</LABEL>\r
+ <LABEL>\else</LABEL>\r
+ <LABEL>\elseif</LABEL>\r
+ <LABEL>\em</LABEL>\r
+ <LABEL>\endcode</LABEL>\r
+ <LABEL>\enddot</LABEL>\r
+ <LABEL>\endhtmlonly</LABEL>\r
+ <LABEL>\endif</LABEL>\r
+ <LABEL>\endlatexonly</LABEL>\r
+ <LABEL>\endlink</LABEL>\r
+ <LABEL>\endmanonly</LABEL>\r
+ <LABEL>\endverbatim</LABEL>\r
+ <LABEL>\endxmlonly</LABEL>\r
+ <LABEL>\enum</LABEL>\r
+ <LABEL>\example</LABEL>\r
+ <LABEL>\exception</LABEL>\r
+ <LABEL>\f$</LABEL>\r
+ <LABEL>\f[</LABEL>\r
+ <LABEL>\f]</LABEL>\r
+ <LABEL>\file</LABEL>\r
+ <LABEL>\fn</LABEL>\r
+ <LABEL>\hideinitializer</LABEL>\r
+ <LABEL>\htmlinclude</LABEL>\r
+ <LABEL>\htmlonly</LABEL>\r
+ <LABEL>\if</LABEL>\r
+ <LABEL>\ifnot</LABEL>\r
+ <LABEL>\image</LABEL>\r
+ <LABEL>\include</LABEL>\r
+ <LABEL>\includelineno</LABEL>\r
+ <LABEL>\ingroup</LABEL>\r
+ <LABEL>\internal</LABEL>\r
+ <LABEL>\invariant</LABEL>\r
+ <LABEL>\interface</LABEL>\r
+ <LABEL>\latexonly</LABEL>\r
+ <LABEL>\li</LABEL>\r
+ <LABEL>\line</LABEL>\r
+ <LABEL>\link</LABEL>\r
+ <LABEL>\mainpage</LABEL>\r
+ <LABEL>\manonly</LABEL>\r
+ <LABEL>\n</LABEL>\r
+ <LABEL>\name</LABEL>\r
+ <LABEL>\namespace</LABEL>\r
+ <LABEL>\nosubgrouping</LABEL>\r
+ <LABEL>\note</LABEL>\r
+ <LABEL>\overload</LABEL>\r
+ <LABEL>\p</LABEL>\r
+ <LABEL>\package</LABEL>\r
+ <LABEL>\page</LABEL>\r
+ <LABEL>\par</LABEL>\r
+ <LABEL>\paragraph</LABEL>\r
+ <LABEL>\param</LABEL>\r
+ <LABEL>\param[in]</LABEL>\r
+ <LABEL>\param[out]</LABEL>\r
+ <LABEL>\param[in,out]</LABEL>\r
+ <LABEL>\post</LABEL>\r
+ <LABEL>\pre</LABEL>\r
+ <LABEL>\private</LABEL>\r
+ <LABEL>\privatesection</LABEL>\r
+ <LABEL>\property</LABEL>\r
+ <LABEL>\protected</LABEL>\r
+ <LABEL>\protectedsection</LABEL>\r
+ <LABEL>\protocol</LABEL>\r
+ <LABEL>\public</LABEL>\r
+ <LABEL>\publicsection</LABEL>\r
+ <LABEL>\ref</LABEL>\r
+ <LABEL>\relates</LABEL>\r
+ <LABEL>\relatesalso</LABEL>\r
+ <LABEL>\remarks</LABEL>\r
+ <LABEL>\return</LABEL>\r
+ <LABEL>\retval</LABEL>\r
+ <LABEL>\sa</LABEL>\r
+ <LABEL>\section</LABEL>\r
+ <LABEL>\showinitializer</LABEL>\r
+ <LABEL>\since</LABEL>\r
+ <LABEL>\skip</LABEL>\r
+ <LABEL>\skipline</LABEL>\r
+ <LABEL>\struct</LABEL>\r
+ <LABEL>\subsection</LABEL>\r
+ <LABEL>\subsubsection</LABEL>\r
+ <LABEL>\test</LABEL>\r
+ <LABEL>\throw</LABEL>\r
+ <LABEL>\todo</LABEL>\r
+ <LABEL>\typedef</LABEL>\r
+ <LABEL>\union</LABEL>\r
+ <LABEL>\until</LABEL>\r
+ <LABEL>\var</LABEL>\r
+ <LABEL>\verbatim</LABEL>\r
+ <LABEL>\verbinclude</LABEL>\r
+ <LABEL>\version</LABEL>\r
+ <LABEL>\warning</LABEL>\r
+ <LABEL>\weakgroup</LABEL>\r
+ <LABEL>\xmlonly</LABEL>\r
+ <LABEL>\xrefitem</LABEL>\r
+ <LABEL>\$</LABEL>\r
+ <LABEL>\@</LABEL>\r
+ <LABEL>\\</LABEL>\r
+ <LABEL>\&</LABEL>\r
+ <LABEL>\~</LABEL>\r
+ <LABEL>\<</LABEL>\r
+ <LABEL>\></LABEL>\r
+ <LABEL>\#</LABEL>\r
+ <LABEL>\%</LABEL>\r
+ <LABEL>@a</LABEL>\r
+ <LABEL>@addindex</LABEL>\r
+ <LABEL>@addtogroup</LABEL>\r
+ <LABEL>@anchor</LABEL>\r
+ <LABEL>@arg</LABEL>\r
+ <LABEL>@attention</LABEL>\r
+ <LABEL>@author</LABEL>\r
+ <LABEL>@b</LABEL>\r
+ <LABEL>@brief</LABEL>\r
+ <LABEL>@bug</LABEL>\r
+ <LABEL>@c</LABEL>\r
+ <LABEL>@callgraph</LABEL>\r
+ <LABEL>@category</LABEL>\r
+ <LABEL>@class</LABEL>\r
+ <LABEL>@code</LABEL>\r
+ <LABEL>@copydoc</LABEL>\r
+ <LABEL>@date</LABEL>\r
+ <LABEL>@def</LABEL>\r
+ <LABEL>@defgroup</LABEL>\r
+ <LABEL>@deprecated</LABEL>\r
+ <LABEL>@dontinclude</LABEL>\r
+ <LABEL>@dot</LABEL>\r
+ <LABEL>@dotfile</LABEL>\r
+ <LABEL>@e</LABEL>\r
+ <LABEL>@else</LABEL>\r
+ <LABEL>@elseif</LABEL>\r
+ <LABEL>@em</LABEL>\r
+ <LABEL>@endcode</LABEL>\r
+ <LABEL>@enddot</LABEL>\r
+ <LABEL>@endhtmlonly</LABEL>\r
+ <LABEL>@endif</LABEL>\r
+ <LABEL>@endlatexonly</LABEL>\r
+ <LABEL>@endlink</LABEL>\r
+ <LABEL>@endmanonly</LABEL>\r
+ <LABEL>@endverbatim</LABEL>\r
+ <LABEL>@endxmlonly</LABEL>\r
+ <LABEL>@enum</LABEL>\r
+ <LABEL>@example</LABEL>\r
+ <LABEL>@exception</LABEL>\r
+ <LABEL>@f$</LABEL>\r
+ <LABEL>@f[</LABEL>\r
+ <LABEL>@f]</LABEL>\r
+ <LABEL>@file</LABEL>\r
+ <LABEL>@fn</LABEL>\r
+ <LABEL>@hideinitializer</LABEL>\r
+ <LABEL>@htmlinclude</LABEL>\r
+ <LABEL>@htmlonly</LABEL>\r
+ <LABEL>@if</LABEL>\r
+ <LABEL>@ifnot</LABEL>\r
+ <LABEL>@image</LABEL>\r
+ <LABEL>@include</LABEL>\r
+ <LABEL>@includelineno</LABEL>\r
+ <LABEL>@ingroup</LABEL>\r
+ <LABEL>@internal</LABEL>\r
+ <LABEL>@invariant</LABEL>\r
+ <LABEL>@interface</LABEL>\r
+ <LABEL>@latexonly</LABEL>\r
+ <LABEL>@li</LABEL>\r
+ <LABEL>@line</LABEL>\r
+ <LABEL>@link</LABEL>\r
+ <LABEL>@mainpage</LABEL>\r
+ <LABEL>@manonly</LABEL>\r
+ <LABEL>@n</LABEL>\r
+ <LABEL>@name</LABEL>\r
+ <LABEL>@namespace</LABEL>\r
+ <LABEL>@nosubgrouping</LABEL>\r
+ <LABEL>@note</LABEL>\r
+ <LABEL>@overload</LABEL>\r
+ <LABEL>@p</LABEL>\r
+ <LABEL>@package</LABEL>\r
+ <LABEL>@page</LABEL>\r
+ <LABEL>@par</LABEL>\r
+ <LABEL>@paragraph</LABEL>\r
+ <LABEL>@param</LABEL>\r
+ <LABEL>@param[in]</LABEL>\r
+ <LABEL>@param[out]</LABEL>\r
+ <LABEL>@param[in,out]</LABEL>\r
+ <LABEL>@post</LABEL>\r
+ <LABEL>@pre</LABEL>\r
+ <LABEL>@private</LABEL>\r
+ <LABEL>@privatesection</LABEL>\r
+ <LABEL>@property</LABEL>\r
+ <LABEL>@protected</LABEL>\r
+ <LABEL>@protectedsection</LABEL>\r
+ <LABEL>@protocol</LABEL>\r
+ <LABEL>@public</LABEL>\r
+ <LABEL>@publicsection</LABEL>\r
+ <LABEL>@ref</LABEL>\r
+ <LABEL>@relates</LABEL>\r
+ <LABEL>@relatesalso</LABEL>\r
+ <LABEL>@remarks</LABEL>\r
+ <LABEL>@return</LABEL>\r
+ <LABEL>@retval</LABEL>\r
+ <LABEL>@sa</LABEL>\r
+ <LABEL>@section</LABEL>\r
+ <LABEL>@showinitializer</LABEL>\r
+ <LABEL>@since</LABEL>\r
+ <LABEL>@skip</LABEL>\r
+ <LABEL>@skipline</LABEL>\r
+ <LABEL>@struct</LABEL>\r
+ <LABEL>@subsection</LABEL>\r
+ <LABEL>@subsubsection</LABEL>\r
+ <LABEL>@test</LABEL>\r
+ <LABEL>@throw</LABEL>\r
+ <LABEL>@todo</LABEL>\r
+ <LABEL>@typedef</LABEL>\r
+ <LABEL>@union</LABEL>\r
+ <LABEL>@until</LABEL>\r
+ <LABEL>@var</LABEL>\r
+ <LABEL>@verbatim</LABEL>\r
+ <LABEL>@verbinclude</LABEL>\r
+ <LABEL>@version</LABEL>\r
+ <LABEL>@warning</LABEL>\r
+ <LABEL>@weakgroup</LABEL>\r
+ <LABEL>@xmlonly</LABEL>\r
+ <LABEL>@xrefitem</LABEL>\r
+ <LABEL>@$</LABEL>\r
+ <LABEL>@@</LABEL>\r
+ <LABEL>@\</LABEL>\r
+ <LABEL>@&</LABEL>\r
+ <LABEL>@~</LABEL>\r
+ <LABEL>@<</LABEL>\r
+ <LABEL>@></LABEL>\r
+ <LABEL>@#</LABEL>\r
+ <LABEL>@%</LABEL>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- DSSSL is the Document Style Semantics Specification Language,\r
+ used by the Jade SGML documentation generation tool -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- EOL comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- LISP stuff -->\r
+ <SEQ TYPE="NULL">'(</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL1">'</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- DSSSL stuff -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>$</BEGIN>\r
+ <END>$</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%</BEGIN>\r
+ <END>%</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2">#</MARK_FOLLOWING>\r
+\r
+ <!-- DTD Entity declarations -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::ENTITY-TAGS">\r
+ <BEGIN><!ENTITY</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CDATA sections -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::CDATA">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SEQ TYPE="NULL"><=</SEQ>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN></style-specification</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN></style-sheet</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN><style-specification</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN><external-specification</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN><style-sheet</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>cond</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>lambda</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>quote</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>let*</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>list</KEYWORD1>\r
+ <KEYWORD1>append</KEYWORD1>\r
+ <KEYWORD1>children</KEYWORD1>\r
+ <KEYWORD1>normalize</KEYWORD1>\r
+\r
+ <KEYWORD2>car</KEYWORD2>\r
+ <KEYWORD2>cdr</KEYWORD2>\r
+ <KEYWORD2>cons</KEYWORD2>\r
+ <KEYWORD2>node-list-first</KEYWORD2>\r
+ <KEYWORD2>node-list-rest</KEYWORD2>\r
+\r
+ <KEYWORD3>eq?</KEYWORD3>\r
+ <KEYWORD3>null?</KEYWORD3>\r
+ <KEYWORD3>pair?</KEYWORD3>\r
+ <KEYWORD3>zero?</KEYWORD3>\r
+ <KEYWORD3>equal?</KEYWORD3>\r
+ <KEYWORD3>node-list-empty?</KEYWORD3>\r
+\r
+ <FUNCTION>external-procedure</FUNCTION>\r
+ <FUNCTION>root</FUNCTION>\r
+ <FUNCTION>make</FUNCTION>\r
+ <FUNCTION>process-children</FUNCTION>\r
+ <FUNCTION>current-node</FUNCTION>\r
+ <FUNCTION>node</FUNCTION>\r
+ <FUNCTION>empty-sosofo</FUNCTION>\r
+ <FUNCTION>default</FUNCTION>\r
+ <FUNCTION>attribute-string</FUNCTION>\r
+ <FUNCTION>select-elements</FUNCTION>\r
+ <FUNCTION>with-mode</FUNCTION>\r
+ <FUNCTION>literal</FUNCTION>\r
+ <FUNCTION>process-node-list</FUNCTION>\r
+ <FUNCTION>element</FUNCTION>\r
+ <FUNCTION>mode</FUNCTION>\r
+ <FUNCTION>gi</FUNCTION>\r
+ <FUNCTION>sosofo-append</FUNCTION>\r
+ <FUNCTION>sequence</FUNCTION>\r
+\r
+ <LABEL>attributes:</LABEL>\r
+ <LABEL>gi:</LABEL>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Eiffel mode, by Slava Pestov. Based on EiffelTokenMarker by\r
+ Artur Biesiadowski -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- some of these should be marked OPERATOR -->\r
+ <!-- <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">=</SEQ>\r
+ <SEQ TYPE="NULL">!</SEQ>\r
+ <SEQ TYPE="NULL">>=</SEQ>\r
+ <SEQ TYPE="NULL"><=</SEQ>\r
+ <SEQ TYPE="NULL">+</SEQ>\r
+ <SEQ TYPE="NULL">-</SEQ>\r
+ <SEQ TYPE="NULL">/</SEQ>\r
+ <SEQ TYPE="NULL">*</SEQ>\r
+ <SEQ TYPE="NULL">></SEQ>\r
+ <SEQ TYPE="NULL"><</SEQ>\r
+ <SEQ TYPE="NULL">%</SEQ>\r
+ <SEQ TYPE="NULL">&</SEQ>\r
+ <SEQ TYPE="NULL">|</SEQ>\r
+ <SEQ TYPE="NULL">^</SEQ>\r
+ <SEQ TYPE="NULL">~</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ <SEQ TYPE="NULL">.</SEQ>\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">?</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ> -->\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>all</KEYWORD1>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>check</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>creation</KEYWORD1>\r
+ <KEYWORD1>debug</KEYWORD1>\r
+ <KEYWORD1>deferred</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elseif</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>ensure</KEYWORD1>\r
+ <KEYWORD1>expanded</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>external</KEYWORD1>\r
+ <KEYWORD1>feature</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>frozen</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implies</KEYWORD1>\r
+ <KEYWORD1>indexing</KEYWORD1>\r
+ <KEYWORD1>infix</KEYWORD1>\r
+ <KEYWORD1>inherit</KEYWORD1>\r
+ <KEYWORD1>inspect</KEYWORD1>\r
+ <KEYWORD1>invariant</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>like</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>obsolete</KEYWORD1>\r
+ <KEYWORD1>old</KEYWORD1>\r
+ <KEYWORD1>once</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>prefix</KEYWORD1>\r
+ <KEYWORD1>redefine</KEYWORD1>\r
+ <KEYWORD1>rename</KEYWORD1>\r
+ <KEYWORD1>require</KEYWORD1>\r
+ <KEYWORD1>rescue</KEYWORD1>\r
+ <KEYWORD1>retry</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>separate</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>undefine</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>variant</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>xor</KEYWORD1>\r
+\r
+ <LITERAL2>current</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>precursor</LITERAL2>\r
+ <LITERAL2>result</LITERAL2>\r
+ <LITERAL2>strip</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>unique</LITERAL2>\r
+ <LITERAL2>void</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+catalog entry:\r
+\r
+<MODE NAME="embperl" FILE="embperl.xml"\r
+ FILE_NAME_GLOB="*.epl"/>\r
+\r
+sidekick parser entry:\r
+mode.embperl.sidekick.parser=html\r
+\r
+xml completion entry:\r
+mode.embperl.xml.completion-info=jeditresource:/XML.jar!/xml/completion/html-complete.xml\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>[#</BEGIN>\r
+ <END>#]</END>\r
+ </SPAN>\r
+ <!-- output result -->\r
+ <SPAN DELEGATE="perl::MAIN" TYPE="LITERAL3">\r
+ <BEGIN>[+</BEGIN>\r
+ <END>+]</END>\r
+ </SPAN>\r
+ <!-- execute code -->\r
+ <SPAN DELEGATE="perl::MAIN" TYPE="LITERAL3">\r
+ <BEGIN>[-</BEGIN>\r
+ <END>-]</END>\r
+ </SPAN>\r
+ <!-- control flow -->\r
+ <SPAN DELEGATE="perl::MAIN" TYPE="LITERAL3">\r
+ <BEGIN>[$</BEGIN>\r
+ <END>$]</END>\r
+ </SPAN>\r
+ <!-- execute once -->\r
+ <SPAN DELEGATE="perl::MAIN" TYPE="LITERAL3">\r
+ <BEGIN>[!</BEGIN>\r
+ <END>!]</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="html::MAIN"/>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" ESCAPE="\">\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="LITERAL2" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="$"\r
+ TYPE="LITERAL3"\r
+ AT_WORD_START="TRUE"\r
+ >\$.\w*</SEQ_REGEXP>\r
+\r
+ <SEQ TYPE="LITERAL3">badarg</SEQ>\r
+ <SEQ TYPE="LITERAL3">nocookie</SEQ>\r
+ <SEQ TYPE="LITERAL3">false</SEQ>\r
+ <SEQ TYPE="LITERAL3">true</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR"><-</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <!--\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ -->\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <!-- div -->\r
+ <SEQ_REGEXP HASH_CHAR="div"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bdiv\b</SEQ_REGEXP>\r
+ <!-- rem -->\r
+ <SEQ_REGEXP HASH_CHAR="rem"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\brem\b</SEQ_REGEXP>\r
+ <!-- or -->\r
+ <SEQ_REGEXP HASH_CHAR="or"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bor\b</SEQ_REGEXP>\r
+ <!-- xor -->\r
+ <SEQ_REGEXP HASH_CHAR="xor"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bxor\b</SEQ_REGEXP>\r
+ <!-- bor -->\r
+ <SEQ_REGEXP HASH_CHAR="bor"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bbor\b</SEQ_REGEXP>\r
+ <!-- bxor -->\r
+ <SEQ_REGEXP HASH_CHAR="bxor"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bbxor\b</SEQ_REGEXP>\r
+ <!-- bsl -->\r
+ <SEQ_REGEXP HASH_CHAR="bsl"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bbsl\b</SEQ_REGEXP>\r
+ <!-- bsr -->\r
+ <SEQ_REGEXP HASH_CHAR="bsr"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bbsr\b</SEQ_REGEXP>\r
+ <!-- and -->\r
+ <SEQ_REGEXP HASH_CHAR="and"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\band\b</SEQ_REGEXP>\r
+ <!-- band -->\r
+ <SEQ_REGEXP HASH_CHAR="band"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bband\b</SEQ_REGEXP>\r
+ <!-- not -->\r
+ <SEQ_REGEXP HASH_CHAR="not"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bnot\b</SEQ_REGEXP>\r
+ <!-- bnot -->\r
+ <SEQ_REGEXP HASH_CHAR="bnot"\r
+ TYPE="OPERATOR"\r
+ AT_WORD_START="TRUE"\r
+ >\bbnot\b</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <!-- keywords -->\r
+ <KEYWORD1>after</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>cond</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>fun</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>query</KEYWORD1>\r
+ <KEYWORD1>receive</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+\r
+ <!-- built-in-functions BIFs -->\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>alive</KEYWORD2>\r
+ <KEYWORD2>apply</KEYWORD2>\r
+ <KEYWORD2>atom_to_list</KEYWORD2>\r
+ <KEYWORD2>binary_to_list</KEYWORD2>\r
+ <KEYWORD2>binary_to_term</KEYWORD2>\r
+ <KEYWORD2>concat_binary</KEYWORD2>\r
+ <KEYWORD2>date</KEYWORD2>\r
+ <KEYWORD2>disconnect_node</KEYWORD2>\r
+ <KEYWORD2>element</KEYWORD2>\r
+ <KEYWORD2>erase</KEYWORD2>\r
+ <KEYWORD2>exit</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>float_to_list</KEYWORD2>\r
+ <KEYWORD2>get</KEYWORD2>\r
+ <KEYWORD2>get_keys</KEYWORD2>\r
+ <KEYWORD2>group_leader</KEYWORD2>\r
+ <KEYWORD2>halt</KEYWORD2>\r
+ <KEYWORD2>hd</KEYWORD2>\r
+ <KEYWORD2>integer_to_list</KEYWORD2>\r
+ <KEYWORD2>is_alive</KEYWORD2>\r
+ <KEYWORD2>length</KEYWORD2>\r
+ <KEYWORD2>link</KEYWORD2>\r
+ <KEYWORD2>list_to_atom</KEYWORD2>\r
+ <KEYWORD2>list_to_binary</KEYWORD2>\r
+ <KEYWORD2>list_to_float</KEYWORD2>\r
+ <KEYWORD2>list_to_integer</KEYWORD2>\r
+ <KEYWORD2>list_to_pid</KEYWORD2>\r
+ <KEYWORD2>list_to_tuple</KEYWORD2>\r
+ <KEYWORD2>load_module</KEYWORD2>\r
+ <KEYWORD2>make_ref</KEYWORD2>\r
+ <KEYWORD2>monitor_node</KEYWORD2>\r
+ <KEYWORD2>node</KEYWORD2>\r
+ <KEYWORD2>nodes</KEYWORD2>\r
+ <KEYWORD2>now</KEYWORD2>\r
+ <KEYWORD2>open_port</KEYWORD2>\r
+ <KEYWORD2>pid_to_list</KEYWORD2>\r
+ <KEYWORD2>process_flag</KEYWORD2>\r
+ <KEYWORD2>process_info</KEYWORD2>\r
+ <KEYWORD2>process</KEYWORD2>\r
+ <KEYWORD2>put</KEYWORD2>\r
+ <KEYWORD2>register</KEYWORD2>\r
+ <KEYWORD2>registered</KEYWORD2>\r
+ <KEYWORD2>round</KEYWORD2>\r
+ <KEYWORD2>self</KEYWORD2>\r
+ <KEYWORD2>setelement</KEYWORD2>\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD2>spawn</KEYWORD2>\r
+ <KEYWORD2>spawn_link</KEYWORD2>\r
+ <KEYWORD2>split_binary</KEYWORD2>\r
+ <KEYWORD2>statistics</KEYWORD2>\r
+ <KEYWORD2>term_to_binary</KEYWORD2>\r
+ <KEYWORD2>throw</KEYWORD2>\r
+ <KEYWORD2>time</KEYWORD2>\r
+ <KEYWORD2>tl</KEYWORD2>\r
+ <KEYWORD2>trunc</KEYWORD2>\r
+ <KEYWORD2>tuple_to_list</KEYWORD2>\r
+ <KEYWORD2>unlink</KEYWORD2>\r
+ <KEYWORD2>unregister</KEYWORD2>\r
+ <KEYWORD2>whereis</KEYWORD2>\r
+\r
+ <!-- other BIFs -->\r
+ <KEYWORD2>atom</KEYWORD2>\r
+ <KEYWORD2>binary</KEYWORD2>\r
+ <KEYWORD2>constant</KEYWORD2>\r
+ <KEYWORD2>function</KEYWORD2>\r
+ <KEYWORD2>integer</KEYWORD2>\r
+ <KEYWORD2>list</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>pid</KEYWORD2>\r
+ <KEYWORD2>ports</KEYWORD2>\r
+ <KEYWORD2>port_close</KEYWORD2>\r
+ <KEYWORD2>port_info</KEYWORD2>\r
+ <KEYWORD2>reference</KEYWORD2>\r
+ <KEYWORD2>record</KEYWORD2>\r
+\r
+ <!-- erlang:BIFs -->\r
+ <KEYWORD2>check_process_code</KEYWORD2>\r
+ <KEYWORD2>delete_module</KEYWORD2>\r
+ <KEYWORD2>get_cookie</KEYWORD2>\r
+ <KEYWORD2>hash</KEYWORD2>\r
+ <KEYWORD2>math</KEYWORD2>\r
+ <KEYWORD2>module_loaded</KEYWORD2>\r
+ <KEYWORD2>preloaded</KEYWORD2>\r
+ <KEYWORD2>processes</KEYWORD2>\r
+ <KEYWORD2>purge_module</KEYWORD2>\r
+ <KEYWORD2>set_cookie</KEYWORD2>\r
+ <KEYWORD2>set_node</KEYWORD2>\r
+\r
+ <!-- math functions -->\r
+ <KEYWORD2>acos</KEYWORD2>\r
+ <KEYWORD2>asin</KEYWORD2>\r
+ <KEYWORD2>atan</KEYWORD2>\r
+ <KEYWORD2>atan2</KEYWORD2>\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>cosh</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>log10</KEYWORD2>\r
+ <KEYWORD2>pi</KEYWORD2>\r
+ <KEYWORD2>pow</KEYWORD2>\r
+ <KEYWORD2>power</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>sinh</KEYWORD2>\r
+ <KEYWORD2>sqrt</KEYWORD2>\r
+ <KEYWORD2>tan</KEYWORD2>\r
+ <KEYWORD2>tanh</KEYWORD2>\r
+\r
+ <!-- directives -->\r
+ <KEYWORD3>-behaviour</KEYWORD3>\r
+ <KEYWORD3>-compile</KEYWORD3>\r
+ <KEYWORD3>-define</KEYWORD3>\r
+ <KEYWORD3>-else</KEYWORD3>\r
+ <KEYWORD3>-endif</KEYWORD3>\r
+ <KEYWORD3>-export</KEYWORD3>\r
+ <KEYWORD3>-file</KEYWORD3>\r
+ <KEYWORD3>-ifdef</KEYWORD3>\r
+ <KEYWORD3>-ifndef</KEYWORD3>\r
+ <KEYWORD3>-import</KEYWORD3>\r
+ <KEYWORD3>-include</KEYWORD3>\r
+ <KEYWORD3>-include_lib</KEYWORD3>\r
+ <KEYWORD3>-module</KEYWORD3>\r
+ <KEYWORD3>-record</KEYWORD3>\r
+ <KEYWORD3>-undef</KEYWORD3>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="[{"/>\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="]}"/>\r
+ <PROPERTY NAME="indentNextLines" VALUE="^(:|M:|C:|PREDICATE:)[^;]*"/>\r
+ <PROPERTY NAME="unindentNextLines" VALUE="^.*;.*$"/>\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="true"/>\r
+ <PROPERTY NAME="commentStart" VALUE="("/>\r
+ <PROPERTY NAME="commentEnd" VALUE=")"/>\r
+ <PROPERTY NAME="lineComment" VALUE="!"/>\r
+ <PROPERTY NAME="noWordSep" VALUE="+-*=><;.?/'()%,_|"/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" ESCAPE="\" NO_WORD_SEP="+-*=><;.?/'()%,_"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="-?\d+([./]\d+)?">\r
+ <EOL_SPAN TYPE="COMMENT2" AT_WORD_START="TRUE"\r
+ DELEGATE="COMMENT">#! </EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_WORD_START="TRUE"\r
+ DELEGATE="COMMENT">! </EOL_SPAN>\r
+\r
+ <!-- parsing words -->\r
+ <SEQ_REGEXP TYPE="MARKUP"\r
+ HASH_CHAR="\"\r
+ AT_WORD_START="TRUE">\\\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="MARKUP"\r
+ HASH_CHAR=":"\r
+ AT_WORD_START="TRUE">:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="MARKUP"\r
+ HASH_CHAR="IN:"\r
+ AT_WORD_START="TRUE">IN:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="MARKUP"\r
+ HASH_CHAR="USE:"\r
+ AT_WORD_START="TRUE">USE:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL2"\r
+ HASH_CHAR="CHAR:"\r
+ AT_WORD_START="TRUE">CHAR:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL2"\r
+ HASH_CHAR="BIN:"\r
+ AT_WORD_START="TRUE">BIN:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL2"\r
+ HASH_CHAR="OCT:"\r
+ AT_WORD_START="TRUE">OCT:\s+(\S+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL2"\r
+ HASH_CHAR="HEX:"\r
+ AT_WORD_START="TRUE">HEX:\s+(\S+)</SEQ_REGEXP>\r
+\r
+ <SPAN TYPE="COMMENT3" DELEGATE="STACK_EFFECT" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>( </BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE"\r
+ DELEGATE="LITERAL">\r
+ <BEGIN>SBUF" </BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE"\r
+ DELEGATE="LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="USING">\r
+ <BEGIN>USING: </BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>>r</KEYWORD1>\r
+ <KEYWORD1>r></KEYWORD1>\r
+\r
+ <MARKUP>;</MARKUP>\r
+\r
+ <LITERAL3>t</LITERAL3>\r
+ <LITERAL4>f</LITERAL4>\r
+ \r
+ <COMMENT2>#!</COMMENT2>\r
+ <COMMENT1>!</COMMENT1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="STACK_EFFECT" DEFAULT="COMMENT4">\r
+ <SEQ TYPE="COMMENT3">--</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1">\r
+ </RULES>\r
+\r
+ <RULES SET="COMMENT" DEFAULT="COMMENT1">\r
+ </RULES>\r
+\r
+ <RULES SET="USING" DEFAULT="LITERAL2">\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>
+
+<!DOCTYPE MODE SYSTEM "xmode.dtd">
+
+<!-- fhtml (factor+html) mode -->
+
+<MODE>
+ <PROPS>
+ <PROPERTY NAME="commentStart" VALUE="<!--" />
+ <PROPERTY NAME="commentEnd" VALUE="-->" />
+ <PROPERTY NAME="commentStart" VALUE="<%#" />
+ <PROPERTY NAME="commentEnd" VALUE="%>" />
+ <PROPERTY NAME="tabSize" VALUE="4" />
+ <PROPERTY NAME="noTabs" VALUE="true" />
+ </PROPS>
+ <RULES IGNORE_CASE="TRUE">
+ <SPAN TYPE="MARKUP" DELEGATE="factor::MAIN">
+ <BEGIN><%</BEGIN>
+ <END>%></END>
+ </SPAN>
+
+ <IMPORT DELEGATE="html::MAIN" />
+ </RULES>
+</MODE>
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- RetroForth is one of the nicest Forth implementations, so we\r
+support that one. You can extend this to your own Forth's vocabulary\r
+easily. -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines" VALUE="^:[^;]*" />\r
+ <PROPERTY NAME="unindentNextLines" VALUE="^.*;$" />\r
+ <PROPERTY NAME="commentStart" VALUE="(" />\r
+ <PROPERTY NAME="commentEnd" VALUE=")" />\r
+ <PROPERTY NAME="lineComment" VALUE="|" />\r
+ <PROPERTY NAME="noWordSep" VALUE="+-*=><;.?/'()%,_|$" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE"\r
+ NO_WORD_SEP="+-*=><;.?/'"()%,_$"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="|-?\d+([./]\d+)?">\r
+\r
+ <EOL_SPAN TYPE="COMMENT1" AT_WORD_START="TRUE">| </EOL_SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="DIGIT" AT_WORD_START="TRUE">$</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL3" AT_WORD_START="TRUE">'</MARK_FOLLOWING>\r
+\r
+ <!-- parsing words -->\r
+ <SEQ_REGEXP TYPE="MARKUP"\r
+ HASH_CHAR=":"\r
+ AT_WORD_START="TRUE">:\s+(\S+)</SEQ_REGEXP>\r
+\r
+ <SPAN TYPE="COMMENT3" DELEGATE="STACK_EFFECT">\r
+ <BEGIN>( </BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE"\r
+ AT_WORD_START="TRUE">\r
+ <BEGIN>s"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE"\r
+ AT_WORD_START="TRUE">\r
+ <BEGIN>."</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="TRUE"\r
+ AT_WORD_START="TRUE">\r
+ <BEGIN>f"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL3" NO_LINE_BREAK="TRUE"\r
+ AT_WORD_START="TRUE">\r
+ <BEGIN>m"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL4" NO_LINE_BREAK="TRUE"\r
+ AT_WORD_START="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <MARKUP>;</MARKUP>\r
+ <MARKUP>;;</MARKUP>\r
+ <MARKUP>0;</MARKUP>\r
+\r
+ <KEYWORD1>swap</KEYWORD1>\r
+ <KEYWORD1>drop</KEYWORD1>\r
+ <KEYWORD1>dup</KEYWORD1>\r
+ <KEYWORD1>nip</KEYWORD1>\r
+ <KEYWORD1>over</KEYWORD1>\r
+ <KEYWORD1>rot</KEYWORD1>\r
+ <KEYWORD1>-rot</KEYWORD1>\r
+ <KEYWORD1>2dup</KEYWORD1>\r
+ <KEYWORD1>2drop</KEYWORD1>\r
+ <KEYWORD1>2over</KEYWORD1>\r
+ <KEYWORD1>2swap</KEYWORD1>\r
+ <KEYWORD1>>r</KEYWORD1>\r
+ <KEYWORD1>r></KEYWORD1>\r
+\r
+ <KEYWORD2>and</KEYWORD2>\r
+ <KEYWORD2>or</KEYWORD2>\r
+ <KEYWORD2>xor</KEYWORD2>\r
+ <KEYWORD2>>></KEYWORD2>\r
+ <KEYWORD2><<</KEYWORD2>\r
+ <KEYWORD2>not</KEYWORD2>\r
+ <KEYWORD2>+</KEYWORD2>\r
+ <KEYWORD2>*</KEYWORD2>\r
+ <KEYWORD2>negate</KEYWORD2>\r
+ <KEYWORD2>-</KEYWORD2>\r
+ <KEYWORD2>/</KEYWORD2>\r
+ <KEYWORD2>mod</KEYWORD2>\r
+ <KEYWORD2>/mod</KEYWORD2>\r
+ <KEYWORD2>*/</KEYWORD2>\r
+ <KEYWORD2>1+</KEYWORD2>\r
+ <KEYWORD2>1-</KEYWORD2>\r
+ <KEYWORD2>base</KEYWORD2>\r
+ <KEYWORD2>hex</KEYWORD2>\r
+ <KEYWORD2>decimal</KEYWORD2>\r
+ <KEYWORD2>binary</KEYWORD2>\r
+ <KEYWORD2>octal</KEYWORD2>\r
+\r
+ <KEYWORD3>@</KEYWORD3>\r
+ <KEYWORD3>!</KEYWORD3>\r
+ <KEYWORD3>c@</KEYWORD3>\r
+ <KEYWORD3>c!</KEYWORD3>\r
+ <KEYWORD3>+!</KEYWORD3>\r
+ <KEYWORD3>cell+</KEYWORD3>\r
+ <KEYWORD3>cells</KEYWORD3>\r
+ <KEYWORD3>char+</KEYWORD3>\r
+ <KEYWORD3>chars</KEYWORD3>\r
+\r
+ <KEYWORD4>[</KEYWORD4>\r
+ <KEYWORD4>]</KEYWORD4>\r
+ <KEYWORD4>create</KEYWORD4>\r
+ <KEYWORD4>does></KEYWORD4>\r
+ <KEYWORD4>variable</KEYWORD4>\r
+ <KEYWORD4>variable,</KEYWORD4>\r
+ <KEYWORD4>literal</KEYWORD4>\r
+ <KEYWORD4>last</KEYWORD4>\r
+ <KEYWORD4>1,</KEYWORD4>\r
+ <KEYWORD4>2,</KEYWORD4>\r
+ <KEYWORD4>3,</KEYWORD4>\r
+ <KEYWORD4>,</KEYWORD4>\r
+ <KEYWORD4>here</KEYWORD4>\r
+ <KEYWORD4>allot</KEYWORD4>\r
+ <KEYWORD4>parse</KEYWORD4>\r
+ <KEYWORD4>find</KEYWORD4>\r
+ <KEYWORD4>compile</KEYWORD4>\r
+\r
+ <OPERATOR>if</OPERATOR>\r
+ <OPERATOR>=if</OPERATOR>\r
+ <OPERATOR><if</OPERATOR>\r
+ <OPERATOR>>if</OPERATOR>\r
+ <OPERATOR><>if</OPERATOR>\r
+ <OPERATOR>then</OPERATOR>\r
+ <OPERATOR>repeat</OPERATOR>\r
+ <OPERATOR>until</OPERATOR>\r
+\r
+ <OPERATOR>forth</OPERATOR>\r
+ <OPERATOR>macro</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="STACK_EFFECT" DEFAULT="COMMENT4">\r
+ <SEQ TYPE="COMMENT3">--</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- FORTRAN edit mode\r
+ Version $Id: fortran.xml 10573 2007-09-14 02:04:59Z ezust $\r
+-->\r
+<!-- This is a mode for FORTRAN source files. In general, this supports\r
+common features of the F90 specification. This may however contain some\r
+platform or vendor specific keywords (in paticular COMPAQ(Digital) FORTRAN).\r
+-->\r
+<!-- Suggested catalog file entry:\r
+\r
+<MODE NAME="FORTRAN" FILE="FORTRAN.xml"\r
+ FILE_NAME_GLOB="*.{f,for,fort,f77,f90}" />\r
+ -->\r
+<MODE>\r
+ <PROPS>\r
+ <!-- To get the line comment inserted correctly at line start:\r
+ use the "toggle-line-comment"-action of TextTools plugin \r
+ with the active option "Insert line comments at start of line" -->\r
+ <PROPERTY NAME="lineComment" VALUE="C" />\r
+ \r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*((if\s*\(.*\)\s*then|else\s*|do\s*)*)" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+<!-- In fixed form, column 72 is the last column parsed, unless the\r
+\extend_source option is invoked -->\r
+ <!-- TERMINATE AT_CHAR="72" / -->\r
+\r
+<!-- comment either !, C, or * can be used as a comment in the first column\r
+in either free or fixed form FORTRAN-->\r
+<EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">C</EOL_SPAN>\r
+<EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">!</EOL_SPAN>\r
+<EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">*</EOL_SPAN>\r
+<EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>\r
+<EOL_SPAN TYPE="COMMENT2" AT_LINE_START="TRUE">D</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+<!-- Highlighted Operators -->\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">.lt.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.gt.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.eq.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.ne.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.le.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.ge.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.AND.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.OR.</SEQ>\r
+\r
+<KEYWORDS>\r
+<!-- unclassified keywords -->\r
+<KEYWORD1>INCLUDE</KEYWORD1>\r
+<!-- Program units and calling them -->\r
+<KEYWORD1>PROGRAM</KEYWORD1>\r
+<KEYWORD1>MODULE</KEYWORD1>\r
+<KEYWORD1>SUBROUTINE</KEYWORD1>\r
+<KEYWORD1>FUNCTION</KEYWORD1>\r
+<KEYWORD1>CONTAINS</KEYWORD1>\r
+<KEYWORD1>USE</KEYWORD1>\r
+<KEYWORD1>CALL</KEYWORD1>\r
+<KEYWORD1>RETURN</KEYWORD1>\r
+<!-- data types, declaration, and allocation keywords -->\r
+<KEYWORD1>IMPLICIT</KEYWORD1>\r
+<KEYWORD1>EXPLICIT</KEYWORD1>\r
+<KEYWORD1>NONE</KEYWORD1>\r
+<KEYWORD1>DATA</KEYWORD1>\r
+<KEYWORD1>PARAMETER</KEYWORD1>\r
+<KEYWORD1>ALLOCATE</KEYWORD1>\r
+<KEYWORD1>ALLOCATABLE</KEYWORD1>\r
+<KEYWORD1>ALLOCATED</KEYWORD1>\r
+<KEYWORD1>DEALLOCATE</KEYWORD1>\r
+<KEYWORD1>INTEGER</KEYWORD1>\r
+<KEYWORD1>REAL</KEYWORD1>\r
+<KEYWORD1>DOUBLE</KEYWORD1>\r
+<KEYWORD1>PRECISION</KEYWORD1>\r
+<KEYWORD1>COMPLEX</KEYWORD1>\r
+<KEYWORD1>LOGICAL</KEYWORD1>\r
+<KEYWORD1>CHARACTER</KEYWORD1>\r
+<KEYWORD1>DIMENSION</KEYWORD1>\r
+<KEYWORD1>KIND</KEYWORD1>\r
+<!-- FORTRAN Statements -->\r
+<KEYWORD1>CASE</KEYWORD1>\r
+<KEYWORD1>SELECT</KEYWORD1>\r
+<KEYWORD1>DEFAULT</KEYWORD1>\r
+<KEYWORD1>CONTINUE</KEYWORD1>\r
+<KEYWORD1>CYCLE</KEYWORD1>\r
+<KEYWORD1>DO</KEYWORD1>\r
+<KEYWORD1>WHILE</KEYWORD1>\r
+<KEYWORD1>ELSE</KEYWORD1>\r
+<KEYWORD1>IF</KEYWORD1>\r
+<KEYWORD1>ELSEIF</KEYWORD1>\r
+<KEYWORD1>THEN</KEYWORD1>\r
+<KEYWORD1>ELSEWHERE</KEYWORD1>\r
+<KEYWORD1>END</KEYWORD1>\r
+<KEYWORD1>ENDIF</KEYWORD1>\r
+<KEYWORD1>ENDDO</KEYWORD1>\r
+<KEYWORD1>FORALL</KEYWORD1>\r
+<KEYWORD1>WHERE</KEYWORD1>\r
+<KEYWORD1>EXIT</KEYWORD1>\r
+<KEYWORD1>GOTO</KEYWORD1>\r
+<KEYWORD1>PAUSE</KEYWORD1>\r
+<KEYWORD1>STOP</KEYWORD1>\r
+<!-- i/o keywords -->\r
+<KEYWORD1>BACKSPACE</KEYWORD1>\r
+<KEYWORD1>CLOSE</KEYWORD1>\r
+<KEYWORD1>ENDFILE</KEYWORD1>\r
+<KEYWORD1>INQUIRE</KEYWORD1>\r
+<KEYWORD1>OPEN</KEYWORD1>\r
+<KEYWORD1>PRINT</KEYWORD1>\r
+<KEYWORD1>READ</KEYWORD1>\r
+<KEYWORD1>REWIND</KEYWORD1>\r
+<KEYWORD1>WRITE</KEYWORD1>\r
+<KEYWORD1>FORMAT</KEYWORD1>\r
+<!-- Type conversion and utility functions -->\r
+<KEYWORD1>AIMAG</KEYWORD1>\r
+<KEYWORD1>AINT</KEYWORD1>\r
+<KEYWORD1>AMAX0</KEYWORD1>\r
+<KEYWORD1>AMIN0</KEYWORD1>\r
+<KEYWORD1>ANINT</KEYWORD1>\r
+<KEYWORD1>CEILING</KEYWORD1>\r
+<KEYWORD1>CMPLX</KEYWORD1>\r
+<KEYWORD1>CONJG</KEYWORD1>\r
+<KEYWORD1>DBLE</KEYWORD1>\r
+<KEYWORD1>DCMPLX</KEYWORD1>\r
+<KEYWORD1>DFLOAT</KEYWORD1>\r
+<KEYWORD1>DIM</KEYWORD1>\r
+<KEYWORD1>DPROD</KEYWORD1>\r
+<KEYWORD1>FLOAT</KEYWORD1>\r
+<KEYWORD1>FLOOR</KEYWORD1>\r
+<KEYWORD1>IFIX</KEYWORD1>\r
+<KEYWORD1>IMAG</KEYWORD1>\r
+<KEYWORD1>INT</KEYWORD1>\r
+<KEYWORD1>LOGICAL</KEYWORD1>\r
+<KEYWORD1>MODULO</KEYWORD1>\r
+<KEYWORD1>NINT</KEYWORD1>\r
+<KEYWORD1>REAL</KEYWORD1>\r
+<KEYWORD1>SIGN</KEYWORD1>\r
+<KEYWORD1>SNGL</KEYWORD1>\r
+<KEYWORD1>TRANSFER</KEYWORD1>\r
+<KEYWORD1>ZEXT</KEYWORD1>\r
+<!-- More Functions -->\r
+<KEYWORD1>ABS</KEYWORD1>\r
+<KEYWORD1>ACOS</KEYWORD1>\r
+<KEYWORD1>AIMAG</KEYWORD1>\r
+<KEYWORD1>AINT</KEYWORD1>\r
+<KEYWORD1>ALOG</KEYWORD1>\r
+<KEYWORD1>ALOG10</KEYWORD1>\r
+<KEYWORD1>AMAX0</KEYWORD1>\r
+<KEYWORD1>AMAX1</KEYWORD1>\r
+<KEYWORD1>AMIN0</KEYWORD1>\r
+<KEYWORD1>AMIN1</KEYWORD1>\r
+<KEYWORD1>AMOD</KEYWORD1>\r
+<KEYWORD1>ANINT</KEYWORD1>\r
+<KEYWORD1>ASIN</KEYWORD1>\r
+<KEYWORD1>ATAN</KEYWORD1>\r
+<KEYWORD1>ATAN2</KEYWORD1>\r
+<KEYWORD1>CABS</KEYWORD1>\r
+<KEYWORD1>CCOS</KEYWORD1>\r
+<KEYWORD1>CHAR</KEYWORD1>\r
+<KEYWORD1>CLOG</KEYWORD1>\r
+<KEYWORD1>CMPLX</KEYWORD1>\r
+<KEYWORD1>CONJG</KEYWORD1>\r
+<KEYWORD1>COS</KEYWORD1>\r
+<KEYWORD1>COSH</KEYWORD1>\r
+<KEYWORD1>CSIN</KEYWORD1>\r
+<KEYWORD1>CSQRT</KEYWORD1>\r
+<KEYWORD1>DABS</KEYWORD1>\r
+<KEYWORD1>DACOS</KEYWORD1>\r
+<KEYWORD1>DASIN</KEYWORD1>\r
+<KEYWORD1>DATAN</KEYWORD1>\r
+<KEYWORD1>DATAN2</KEYWORD1>\r
+<KEYWORD1>DBLE</KEYWORD1>\r
+<KEYWORD1>DCOS</KEYWORD1>\r
+<KEYWORD1>DCOSH</KEYWORD1>\r
+<KEYWORD1>DDIM</KEYWORD1>\r
+<KEYWORD1>DEXP</KEYWORD1>\r
+<KEYWORD1>DIM</KEYWORD1>\r
+<KEYWORD1>DINT</KEYWORD1>\r
+<KEYWORD1>DLOG</KEYWORD1>\r
+<KEYWORD1>DLOG10</KEYWORD1>\r
+<KEYWORD1>DMAX1</KEYWORD1>\r
+<KEYWORD1>DMIN1</KEYWORD1>\r
+<KEYWORD1>DMOD</KEYWORD1>\r
+<KEYWORD1>DNINT</KEYWORD1>\r
+<KEYWORD1>DPROD</KEYWORD1>\r
+<KEYWORD1>DREAL</KEYWORD1>\r
+<KEYWORD1>DSIGN</KEYWORD1>\r
+<KEYWORD1>DSIN</KEYWORD1>\r
+<KEYWORD1>DSINH</KEYWORD1>\r
+<KEYWORD1>DSQRT</KEYWORD1>\r
+<KEYWORD1>DTAN</KEYWORD1>\r
+<KEYWORD1>DTANH</KEYWORD1>\r
+<KEYWORD1>EXP</KEYWORD1>\r
+<KEYWORD1>FLOAT</KEYWORD1>\r
+<KEYWORD1>IABS</KEYWORD1>\r
+<KEYWORD1>ICHAR</KEYWORD1>\r
+<KEYWORD1>IDIM</KEYWORD1>\r
+<KEYWORD1>IDINT</KEYWORD1>\r
+<KEYWORD1>IDNINT</KEYWORD1>\r
+<KEYWORD1>IFIX</KEYWORD1>\r
+<KEYWORD1>INDEX</KEYWORD1>\r
+<KEYWORD1>INT</KEYWORD1>\r
+<KEYWORD1>ISIGN</KEYWORD1>\r
+<KEYWORD1>LEN</KEYWORD1>\r
+<KEYWORD1>LGE</KEYWORD1>\r
+<KEYWORD1>LGT</KEYWORD1>\r
+<KEYWORD1>LLE</KEYWORD1>\r
+<KEYWORD1>LLT</KEYWORD1>\r
+<KEYWORD1>LOG</KEYWORD1>\r
+<KEYWORD1>LOG10</KEYWORD1>\r
+<KEYWORD1>MAX</KEYWORD1>\r
+<KEYWORD1>MAX0</KEYWORD1>\r
+<KEYWORD1>MAX1</KEYWORD1>\r
+<KEYWORD1>MIN</KEYWORD1>\r
+<KEYWORD1>MIN0</KEYWORD1>\r
+<KEYWORD1>MIN1</KEYWORD1>\r
+<KEYWORD1>MOD</KEYWORD1>\r
+<KEYWORD1>NINT</KEYWORD1>\r
+<KEYWORD1>REAL</KEYWORD1>\r
+<KEYWORD1>SIGN</KEYWORD1>\r
+<KEYWORD1>SIN</KEYWORD1>\r
+<KEYWORD1>SINH</KEYWORD1>\r
+<KEYWORD1>SNGL</KEYWORD1>\r
+<KEYWORD1>SQRT</KEYWORD1>\r
+<KEYWORD1>TAN</KEYWORD1>\r
+<KEYWORD1>TANH</KEYWORD1>\r
+<!-- logical values -->\r
+<KEYWORD1>.false.</KEYWORD1>\r
+<KEYWORD1>.true.</KEYWORD1>\r
+\r
+</KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <!-- Created by Matthew J. Price (Matt@SoWaky.com) -->\r
+ <PROPS>\r
+ <PROPERTY NAME="blockComment" VALUE="&&" />\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|do\swhile|do\scase|try)\s*\(|else\s*|elseif\s*\|case|catch(|for\s*\(.*\))[^{;]*)" />\r
+\r
+ <PROPERTY NAME="lineComment" VALUE="&&" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- String Literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- conditional compilation -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#if</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#else</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#end</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#define</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#include</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Elif</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Else</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Endif</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#If</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Itsexpression</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Readclauses</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Region</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Section</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Undef</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#Wname</EOL_SPAN>\r
+\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="FALSE">&&</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_WHITESPACE_END="TRUE">*</EOL_SPAN>\r
+\r
+ <!-- Comparison operators -->\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <!-- See in keywords: is -->\r
+\r
+ <!-- Arithmetic operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <!-- See in keywords: mod -->\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+\r
+ <!-- Concatenation operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+\r
+ <!-- Logical operators -->\r
+ <!-- See in keywords: and, or, not, xor, eqv -->\r
+\r
+ <!-- EOL Continuation -->\r
+ <!-- <SEQ TYPE="NULL">_</SEQ>-->\r
+ <!-- Instruction separator -->\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <FUNCTION>Function</FUNCTION>\r
+ <FUNCTION>Procedure</FUNCTION>\r
+ <FUNCTION>EndFunc</FUNCTION>\r
+ <FUNCTION>EndProc</FUNCTION>\r
+\r
+ <!-- Conditional Statements -->\r
+ <KEYWORD3>if</KEYWORD3>\r
+ <KEYWORD3>then</KEYWORD3>\r
+ <KEYWORD3>else</KEYWORD3>\r
+ <KEYWORD3>elseif</KEYWORD3>\r
+ <KEYWORD3>select</KEYWORD3>\r
+ <KEYWORD3>case</KEYWORD3>\r
+\r
+ <!-- Loop Statements -->\r
+ <!-- For..Next -->\r
+ <KEYWORD3>for</KEYWORD3>\r
+ <KEYWORD3>to</KEYWORD3>\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>next</KEYWORD3>\r
+ <!-- For Each..Next -->\r
+ <KEYWORD3>each</KEYWORD3>\r
+ <KEYWORD3>in</KEYWORD3>\r
+ <!-- Do..Loop -->\r
+ <KEYWORD3>do</KEYWORD3>\r
+ <KEYWORD3>while</KEYWORD3>\r
+ <KEYWORD3>until</KEYWORD3>\r
+ <KEYWORD3>loop</KEYWORD3>\r
+ <!-- While..Wend -->\r
+ <KEYWORD3>wend</KEYWORD3>\r
+\r
+ <!-- Closing, Exit Statements -->\r
+ <KEYWORD3>exit</KEYWORD3>\r
+ <KEYWORD3>end</KEYWORD3>\r
+ <KEYWORD3>endif</KEYWORD3>\r
+\r
+ <!-- Methods, Functions, Class, Properties, Variables -->\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>property</KEYWORD3>\r
+ <KEYWORD3>get</KEYWORD3>\r
+ <KEYWORD3>let</KEYWORD3>\r
+ <KEYWORD3>set</KEYWORD3>\r
+\r
+ <!-- Parameters passing -->\r
+ <KEYWORD3>byval</KEYWORD3>\r
+ <KEYWORD3>byref</KEYWORD3>\r
+\r
+ <!-- Declaration -->\r
+ <KEYWORD3>const</KEYWORD3>\r
+ <KEYWORD3>dim</KEYWORD3>\r
+ <KEYWORD3>redim</KEYWORD3>\r
+ <KEYWORD3>preserve</KEYWORD3>\r
+ <KEYWORD3>as</KEYWORD3>\r
+\r
+ <!-- Object Assignement/Instantiation -->\r
+ <KEYWORD3>set</KEYWORD3>\r
+ <KEYWORD3>with</KEYWORD3>\r
+ <KEYWORD3>new</KEYWORD3>\r
+\r
+ <!-- Visibility -->\r
+ <KEYWORD3>public</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>private</KEYWORD3>\r
+\r
+ <!-- Comments -->\r
+ <KEYWORD3>rem</KEYWORD3>\r
+\r
+ <!-- Function Call - Dynamic Evaluation -->\r
+ <KEYWORD3>call</KEYWORD3>\r
+ <KEYWORD3>execute</KEYWORD3>\r
+ <KEYWORD3>eval</KEYWORD3>\r
+\r
+ <!-- Miscellaneous -->\r
+ <KEYWORD3>on</KEYWORD3>\r
+ <KEYWORD3>error</KEYWORD3>\r
+ <KEYWORD3>goto</KEYWORD3>\r
+ <KEYWORD3>resume</KEYWORD3>\r
+ <KEYWORD3>option</KEYWORD3>\r
+ <KEYWORD3>explicit</KEYWORD3>\r
+ <KEYWORD3>erase</KEYWORD3>\r
+ <KEYWORD3>randomize</KEYWORD3>\r
+\r
+ <!-- Operators -->\r
+ <!-- Comparison operators -->\r
+ <OPERATOR>is</OPERATOR>\r
+ <!-- Arithmetic operators -->\r
+ <OPERATOR>mod</OPERATOR>\r
+ <!-- Logical operators -->\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>xor</OPERATOR>\r
+ <OPERATOR>imp</OPERATOR>\r
+ <OPERATOR>?</OPERATOR>\r
+\r
+ <!-- Datatypes Constants/Literals -->\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+ <KEYWORD3>empty</KEYWORD3>\r
+ <KEYWORD3>nothing</KEYWORD3>\r
+ <KEYWORD3>null</KEYWORD3>\r
+\r
+ <!-- FoxPro's Methods -->\r
+ <KEYWORD3>Activate</KEYWORD3>\r
+ <KEYWORD3>ActivateCell</KEYWORD3>\r
+ <KEYWORD3>AddColumn</KEYWORD3>\r
+ <KEYWORD3>AddItem</KEYWORD3>\r
+ <KEYWORD3>AddListItem</KEYWORD3>\r
+ <KEYWORD3>AddObject</KEYWORD3>\r
+ <KEYWORD3>AfterCloseTables</KEYWORD3>\r
+ <KEYWORD3>AfterDock</KEYWORD3>\r
+ <KEYWORD3>AfterRowColChange</KEYWORD3>\r
+ <KEYWORD3>BeforeDock</KEYWORD3>\r
+ <KEYWORD3>BeforeOpenTables</KEYWORD3>\r
+ <KEYWORD3>BeforeRowColChange</KEYWORD3>\r
+ <KEYWORD3>Box</KEYWORD3>\r
+ <KEYWORD3>Circle</KEYWORD3>\r
+ <KEYWORD3>Clear</KEYWORD3>\r
+ <KEYWORD3>Click</KEYWORD3>\r
+ <KEYWORD3>CloneObject</KEYWORD3>\r
+ <KEYWORD3>CloseEditor</KEYWORD3>\r
+ <KEYWORD3>CloseTables</KEYWORD3>\r
+ <KEYWORD3>Cls</KEYWORD3>\r
+ <KEYWORD3>DblClick</KEYWORD3>\r
+ <KEYWORD3>Deactivate</KEYWORD3>\r
+ <KEYWORD3>Delete</KEYWORD3>\r
+ <KEYWORD3>DeleteColumn</KEYWORD3>\r
+ <KEYWORD3>Deleted</KEYWORD3>\r
+ <KEYWORD3>Destroy</KEYWORD3>\r
+ <KEYWORD3>Dock</KEYWORD3>\r
+ <KEYWORD3>DoScroll</KEYWORD3>\r
+ <KEYWORD3>DoVerb</KEYWORD3>\r
+ <KEYWORD3>DownClick</KEYWORD3>\r
+ <KEYWORD3>Drag</KEYWORD3>\r
+ <KEYWORD3>DragDrop</KEYWORD3>\r
+ <KEYWORD3>DragOver</KEYWORD3>\r
+ <KEYWORD3>Draw</KEYWORD3>\r
+ <KEYWORD3>DropDown</KEYWORD3>\r
+ <KEYWORD3>Error</KEYWORD3>\r
+ <KEYWORD3>ErrorMessage</KEYWORD3>\r
+ <KEYWORD3>FormatChange</KEYWORD3>\r
+ <KEYWORD3>GotFocus</KEYWORD3>\r
+ <KEYWORD3>Hide</KEYWORD3>\r
+ <KEYWORD3>IndexToItemId</KEYWORD3>\r
+ <KEYWORD3>Init</KEYWORD3>\r
+ <KEYWORD3>InteractiveChange</KEYWORD3>\r
+ <KEYWORD3>ItemIdToIndex</KEYWORD3>\r
+ <KEYWORD3>KeyPress</KEYWORD3>\r
+ <KEYWORD3>Line</KEYWORD3>\r
+ <KEYWORD3>Load</KEYWORD3>\r
+ <KEYWORD3>LostFocus</KEYWORD3>\r
+ <KEYWORD3>Message</KEYWORD3>\r
+ <KEYWORD3>MouseDown</KEYWORD3>\r
+ <KEYWORD3>MouseMove</KEYWORD3>\r
+ <KEYWORD3>MouseUp</KEYWORD3>\r
+ <KEYWORD3>Move</KEYWORD3>\r
+ <KEYWORD3>Moved</KEYWORD3>\r
+ <KEYWORD3>OpenEditor</KEYWORD3>\r
+ <KEYWORD3>OpenTables</KEYWORD3>\r
+ <KEYWORD3>Paint</KEYWORD3>\r
+ <KEYWORD3>Point</KEYWORD3>\r
+ <KEYWORD3>Print</KEYWORD3>\r
+ <KEYWORD3>ProgrammaticChange</KEYWORD3>\r
+ <KEYWORD3>PSet</KEYWORD3>\r
+ <KEYWORD3>QueryUnload</KEYWORD3>\r
+ <KEYWORD3>RangeHigh</KEYWORD3>\r
+ <KEYWORD3>RangeLow</KEYWORD3>\r
+ <KEYWORD3>ReadActivate</KEYWORD3>\r
+ <KEYWORD3>ReadDeactivate</KEYWORD3>\r
+ <KEYWORD3>ReadExpression</KEYWORD3>\r
+ <KEYWORD3>ReadMethod</KEYWORD3>\r
+ <KEYWORD3>ReadShow</KEYWORD3>\r
+ <KEYWORD3>ReadValid</KEYWORD3>\r
+ <KEYWORD3>ReadWhen</KEYWORD3>\r
+ <KEYWORD3>Refresh</KEYWORD3>\r
+ <KEYWORD3>Release</KEYWORD3>\r
+ <KEYWORD3>RemoveItem</KEYWORD3>\r
+ <KEYWORD3>RemoveListItem</KEYWORD3>\r
+ <KEYWORD3>RemoveObject</KEYWORD3>\r
+ <KEYWORD3>Requery</KEYWORD3>\r
+ <KEYWORD3>Reset</KEYWORD3>\r
+ <KEYWORD3>Resize</KEYWORD3>\r
+ <KEYWORD3>RightClick</KEYWORD3>\r
+ <KEYWORD3>SaveAs</KEYWORD3>\r
+ <KEYWORD3>SaveAsClass</KEYWORD3>\r
+ <KEYWORD3>Scrolled</KEYWORD3>\r
+ <KEYWORD3>SetAll</KEYWORD3>\r
+ <KEYWORD3>SetFocus</KEYWORD3>\r
+ <KEYWORD3>Show</KEYWORD3>\r
+ <KEYWORD3>TextHeight</KEYWORD3>\r
+ <KEYWORD3>TextWidth</KEYWORD3>\r
+ <KEYWORD3>Timer</KEYWORD3>\r
+ <KEYWORD3>UIEnable</KEYWORD3>\r
+ <KEYWORD3>UnDock</KEYWORD3>\r
+ <KEYWORD3>Unload</KEYWORD3>\r
+ <KEYWORD3>UpClick</KEYWORD3>\r
+ <KEYWORD3>Valid</KEYWORD3>\r
+ <KEYWORD3>When</KEYWORD3>\r
+ <KEYWORD3>WriteExpression</KEYWORD3>\r
+ <KEYWORD3>WriteMethod</KEYWORD3>\r
+ <KEYWORD3>ZOrder</KEYWORD3>\r
+ <KEYWORD3>DataToClip</KEYWORD3>\r
+ <KEYWORD3>DoCmd</KEYWORD3>\r
+ <KEYWORD3>MiddleClick</KEYWORD3>\r
+ <KEYWORD3>MouseWheel</KEYWORD3>\r
+ <KEYWORD3>RequestData</KEYWORD3>\r
+ <KEYWORD3>SetVar</KEYWORD3>\r
+ <KEYWORD3>ShowWhatsThis</KEYWORD3>\r
+ <KEYWORD3>WhatsThisMode</KEYWORD3>\r
+ <KEYWORD3>AddProperty</KEYWORD3>\r
+ <KEYWORD3>NewObject</KEYWORD3>\r
+ <KEYWORD3>CommandTargetExec</KEYWORD3>\r
+ <KEYWORD3>CommandTargetQueryStas</KEYWORD3>\r
+ <KEYWORD3>ContainerRelease</KEYWORD3>\r
+ <KEYWORD3>EnterFocus</KEYWORD3>\r
+ <KEYWORD3>ExitFocus</KEYWORD3>\r
+ <KEYWORD3>HideDoc</KEYWORD3>\r
+ <KEYWORD3>Run</KEYWORD3>\r
+ <KEYWORD3>ShowDoc</KEYWORD3>\r
+ <KEYWORD3>ClearData</KEYWORD3>\r
+ <KEYWORD3>GetData</KEYWORD3>\r
+ <KEYWORD3>GetFormat</KEYWORD3>\r
+ <KEYWORD3>SetData</KEYWORD3>\r
+ <KEYWORD3>SetFormat</KEYWORD3>\r
+ <KEYWORD3>OLECompleteDrag</KEYWORD3>\r
+ <KEYWORD3>OLEGiveFeedback</KEYWORD3>\r
+ <KEYWORD3>OLESetData</KEYWORD3>\r
+ <KEYWORD3>OLEStartDrag</KEYWORD3>\r
+ <KEYWORD3>OLEDrag</KEYWORD3>\r
+ <KEYWORD3>OLEDragDrop</KEYWORD3>\r
+ <KEYWORD3>OLEDragOver</KEYWORD3>\r
+ <KEYWORD3>SetMain</KEYWORD3>\r
+ <KEYWORD3>AfterBuild</KEYWORD3>\r
+ <KEYWORD3>BeforeBuild</KEYWORD3>\r
+ <KEYWORD3>QueryAddFile</KEYWORD3>\r
+ <KEYWORD3>QueryModifyFile</KEYWORD3>\r
+ <KEYWORD3>QueryRemoveFile</KEYWORD3>\r
+ <KEYWORD3>QueryRunFile</KEYWORD3>\r
+ <KEYWORD3>Add</KEYWORD3>\r
+ <KEYWORD3>AddToSCC</KEYWORD3>\r
+ <KEYWORD3>CheckIn</KEYWORD3>\r
+ <KEYWORD3>CheckOut</KEYWORD3>\r
+ <KEYWORD3>GetLatestVersion</KEYWORD3>\r
+ <KEYWORD3>RemoveFromSCC</KEYWORD3>\r
+ <KEYWORD3>UndoCheckOut</KEYWORD3>\r
+ <KEYWORD3>Modify</KEYWORD3>\r
+\r
+ <!-- FoxPro's Properties -->\r
+ <KEYWORD3>Accelerate</KEYWORD3>\r
+ <KEYWORD3>ActiveColumn</KEYWORD3>\r
+ <KEYWORD3>ActiveControl</KEYWORD3>\r
+ <KEYWORD3>ActiveForm</KEYWORD3>\r
+ <KEYWORD3>ActiveObjectId</KEYWORD3>\r
+ <KEYWORD3>ActivePage</KEYWORD3>\r
+ <KEYWORD3>ActiveRow</KEYWORD3>\r
+ <KEYWORD3>Alias</KEYWORD3>\r
+ <KEYWORD3>Alignment</KEYWORD3>\r
+ <KEYWORD3>AllowResize</KEYWORD3>\r
+ <KEYWORD3>AllowTabs</KEYWORD3>\r
+ <KEYWORD3>AlwaysOnTop</KEYWORD3>\r
+ <KEYWORD3>ATGetColors</KEYWORD3>\r
+ <KEYWORD3>ATListColors</KEYWORD3>\r
+ <KEYWORD3>AutoActivate</KEYWORD3>\r
+ <KEYWORD3>AutoCenter</KEYWORD3>\r
+ <KEYWORD3>AutoCloseTables</KEYWORD3>\r
+ <KEYWORD3>AutoOpenTables</KEYWORD3>\r
+ <KEYWORD3>AutoRelease</KEYWORD3>\r
+ <KEYWORD3>AutoSize</KEYWORD3>\r
+ <KEYWORD3>AvailNum</KEYWORD3>\r
+ <KEYWORD3>BackColor</KEYWORD3>\r
+ <KEYWORD3>BackStyle</KEYWORD3>\r
+ <KEYWORD3>BaseClass</KEYWORD3>\r
+ <KEYWORD3>BorderColor</KEYWORD3>\r
+ <KEYWORD3>BorderStyle</KEYWORD3>\r
+ <KEYWORD3>BorderWidth</KEYWORD3>\r
+ <KEYWORD3>Bound</KEYWORD3>\r
+ <KEYWORD3>BoundColumn</KEYWORD3>\r
+ <KEYWORD3>BrowseAlignment</KEYWORD3>\r
+ <KEYWORD3>BrowseCellMarg</KEYWORD3>\r
+ <KEYWORD3>BrowseDestWidth</KEYWORD3>\r
+ <KEYWORD3>BufferMode</KEYWORD3>\r
+ <KEYWORD3>BufferModeOverride</KEYWORD3>\r
+ <KEYWORD3>ButtonCount</KEYWORD3>\r
+ <KEYWORD3>ButtonIndex</KEYWORD3>\r
+ <KEYWORD3>Buttons</KEYWORD3>\r
+ <KEYWORD3>CanAccelerate</KEYWORD3>\r
+ <KEYWORD3>Cancel</KEYWORD3>\r
+ <KEYWORD3>CanGetFocus</KEYWORD3>\r
+ <KEYWORD3>CanLoseFocus</KEYWORD3>\r
+ <KEYWORD3>Caption</KEYWORD3>\r
+ <KEYWORD3>ChildAlias</KEYWORD3>\r
+ <KEYWORD3>ChildOrder</KEYWORD3>\r
+ <KEYWORD3>Class</KEYWORD3>\r
+ <KEYWORD3>ClassLibrary</KEYWORD3>\r
+ <KEYWORD3>ClipControls</KEYWORD3>\r
+ <KEYWORD3>ClipRect</KEYWORD3>\r
+ <KEYWORD3>Closable</KEYWORD3>\r
+ <KEYWORD3>ColorScheme</KEYWORD3>\r
+ <KEYWORD3>ColorSource</KEYWORD3>\r
+ <KEYWORD3>ColumnCount</KEYWORD3>\r
+ <KEYWORD3>ColumnHeaders</KEYWORD3>\r
+ <KEYWORD3>ColumnLines</KEYWORD3>\r
+ <KEYWORD3>ColumnOrder</KEYWORD3>\r
+ <KEYWORD3>Columns</KEYWORD3>\r
+ <KEYWORD3>ColumnWidths</KEYWORD3>\r
+ <KEYWORD3>Comment</KEYWORD3>\r
+ <KEYWORD3>ControlBox</KEYWORD3>\r
+ <KEYWORD3>ControlCount</KEYWORD3>\r
+ <KEYWORD3>ControlIndex</KEYWORD3>\r
+ <KEYWORD3>Controls</KEYWORD3>\r
+ <KEYWORD3>ControlSource</KEYWORD3>\r
+ <KEYWORD3>CurrentControl</KEYWORD3>\r
+ <KEYWORD3>CurrentX</KEYWORD3>\r
+ <KEYWORD3>CurrentY</KEYWORD3>\r
+ <KEYWORD3>CursorSource</KEYWORD3>\r
+ <KEYWORD3>Curvature</KEYWORD3>\r
+ <KEYWORD3>Database</KEYWORD3>\r
+ <KEYWORD3>DataSession</KEYWORD3>\r
+ <KEYWORD3>DataSessionId</KEYWORD3>\r
+ <KEYWORD3>DataSourceObj</KEYWORD3>\r
+ <KEYWORD3>DataType</KEYWORD3>\r
+ <KEYWORD3>Default</KEYWORD3>\r
+ <KEYWORD3>DefButton</KEYWORD3>\r
+ <KEYWORD3>DefButtonOrig</KEYWORD3>\r
+ <KEYWORD3>DefHeight</KEYWORD3>\r
+ <KEYWORD3>DefineWindows</KEYWORD3>\r
+ <KEYWORD3>DefLeft</KEYWORD3>\r
+ <KEYWORD3>DefTop</KEYWORD3>\r
+ <KEYWORD3>DefWidth</KEYWORD3>\r
+ <KEYWORD3>DeleteMark</KEYWORD3>\r
+ <KEYWORD3>Desktop</KEYWORD3>\r
+ <KEYWORD3>Dirty</KEYWORD3>\r
+ <KEYWORD3>DisabledBackColor</KEYWORD3>\r
+ <KEYWORD3>DisabledByEOF</KEYWORD3>\r
+ <KEYWORD3>DisabledForeColor</KEYWORD3>\r
+ <KEYWORD3>DisabledItemBackColor</KEYWORD3>\r
+ <KEYWORD3>DisabledItemForeColor</KEYWORD3>\r
+ <KEYWORD3>DisabledPicture</KEYWORD3>\r
+ <KEYWORD3>DisplayValue</KEYWORD3>\r
+ <KEYWORD3>DispPageHeight</KEYWORD3>\r
+ <KEYWORD3>DispPageWidth</KEYWORD3>\r
+ <KEYWORD3>Docked</KEYWORD3>\r
+ <KEYWORD3>DockPosition</KEYWORD3>\r
+ <KEYWORD3>DoCreate</KEYWORD3>\r
+ <KEYWORD3>DocumentFile</KEYWORD3>\r
+ <KEYWORD3>DownPicture</KEYWORD3>\r
+ <KEYWORD3>DragIcon</KEYWORD3>\r
+ <KEYWORD3>DragMode</KEYWORD3>\r
+ <KEYWORD3>DragState</KEYWORD3>\r
+ <KEYWORD3>DrawMode</KEYWORD3>\r
+ <KEYWORD3>DrawStyle</KEYWORD3>\r
+ <KEYWORD3>DrawWidth</KEYWORD3>\r
+ <KEYWORD3>DynamicAlignment</KEYWORD3>\r
+ <KEYWORD3>DynamicBackColor</KEYWORD3>\r
+ <KEYWORD3>DynamicCurrentControl</KEYWORD3>\r
+ <KEYWORD3>DynamicFontBold</KEYWORD3>\r
+ <KEYWORD3>DynamicFontItalic</KEYWORD3>\r
+ <KEYWORD3>DynamicFontName</KEYWORD3>\r
+ <KEYWORD3>DynamicFontOutline</KEYWORD3>\r
+ <KEYWORD3>DynamicFontShadow</KEYWORD3>\r
+ <KEYWORD3>DynamicFontSize</KEYWORD3>\r
+ <KEYWORD3>DynamicFontStrikethru</KEYWORD3>\r
+ <KEYWORD3>DynamicFontUnderline</KEYWORD3>\r
+ <KEYWORD3>DynamicForeColor</KEYWORD3>\r
+ <KEYWORD3>EditFlags</KEYWORD3>\r
+ <KEYWORD3>Enabled</KEYWORD3>\r
+ <KEYWORD3>EnabledByReadLock</KEYWORD3>\r
+ <KEYWORD3>EnvLevel</KEYWORD3>\r
+ <KEYWORD3>ErasePage</KEYWORD3>\r
+ <KEYWORD3>FillColor</KEYWORD3>\r
+ <KEYWORD3>FillStyle</KEYWORD3>\r
+ <KEYWORD3>Filter</KEYWORD3>\r
+ <KEYWORD3>FirstElement</KEYWORD3>\r
+ <KEYWORD3>FontBold</KEYWORD3>\r
+ <KEYWORD3>FontItalic</KEYWORD3>\r
+ <KEYWORD3>FontName</KEYWORD3>\r
+ <KEYWORD3>FontOutline</KEYWORD3>\r
+ <KEYWORD3>FontShadow</KEYWORD3>\r
+ <KEYWORD3>FontSize</KEYWORD3>\r
+ <KEYWORD3>FontStrikethru</KEYWORD3>\r
+ <KEYWORD3>FontUnderline</KEYWORD3>\r
+ <KEYWORD3>ForceFocus</KEYWORD3>\r
+ <KEYWORD3>ForeColor</KEYWORD3>\r
+ <KEYWORD3>Format</KEYWORD3>\r
+ <KEYWORD3>FormCount</KEYWORD3>\r
+ <KEYWORD3>FormIndex</KEYWORD3>\r
+ <KEYWORD3>FormPageCount</KEYWORD3>\r
+ <KEYWORD3>FormPageIndex</KEYWORD3>\r
+ <KEYWORD3>Forms</KEYWORD3>\r
+ <KEYWORD3>FoxFont</KEYWORD3>\r
+ <KEYWORD3>GoFirst</KEYWORD3>\r
+ <KEYWORD3>GoLast</KEYWORD3>\r
+ <KEYWORD3>GridLineColor</KEYWORD3>\r
+ <KEYWORD3>GridLines</KEYWORD3>\r
+ <KEYWORD3>GridLineWidth</KEYWORD3>\r
+ <KEYWORD3>HalfHeightCaption</KEYWORD3>\r
+ <KEYWORD3>HasClip</KEYWORD3>\r
+ <KEYWORD3>HeaderGap</KEYWORD3>\r
+ <KEYWORD3>HeaderHeight</KEYWORD3>\r
+ <KEYWORD3>Height</KEYWORD3>\r
+ <KEYWORD3>HelpContextID</KEYWORD3>\r
+ <KEYWORD3>HideSelection</KEYWORD3>\r
+ <KEYWORD3>Highlight</KEYWORD3>\r
+ <KEYWORD3>HostName</KEYWORD3>\r
+ <KEYWORD3>HotKey</KEYWORD3>\r
+ <KEYWORD3>HPROJ</KEYWORD3>\r
+ <KEYWORD3>HWnd</KEYWORD3>\r
+ <KEYWORD3>Icon</KEYWORD3>\r
+ <KEYWORD3>IgnoreInsert</KEYWORD3>\r
+ <KEYWORD3>Increment</KEYWORD3>\r
+ <KEYWORD3>IncrementalSearch</KEYWORD3>\r
+ <KEYWORD3>InitialSelectedAlias</KEYWORD3>\r
+ <KEYWORD3>InputMask</KEYWORD3>\r
+ <KEYWORD3>InResize</KEYWORD3>\r
+ <KEYWORD3>Interval</KEYWORD3>\r
+ <KEYWORD3>ItemBackColor</KEYWORD3>\r
+ <KEYWORD3>ItemData</KEYWORD3>\r
+ <KEYWORD3>ItemForeColor</KEYWORD3>\r
+ <KEYWORD3>ItemIDData</KEYWORD3>\r
+ <KEYWORD3>JustReadLocked</KEYWORD3>\r
+ <KEYWORD3>KeyboardHighValue</KEYWORD3>\r
+ <KEYWORD3>KeyboardLowValue</KEYWORD3>\r
+ <KEYWORD3>KeyPreview</KEYWORD3>\r
+ <KEYWORD3>Left</KEYWORD3>\r
+ <KEYWORD3>LeftColumn</KEYWORD3>\r
+ <KEYWORD3>LineSlant</KEYWORD3>\r
+ <KEYWORD3>LinkMaster</KEYWORD3>\r
+ <KEYWORD3>List</KEYWORD3>\r
+ <KEYWORD3>ListCount</KEYWORD3>\r
+ <KEYWORD3>ListIndex</KEYWORD3>\r
+ <KEYWORD3>ListItem</KEYWORD3>\r
+ <KEYWORD3>ListItemId</KEYWORD3>\r
+ <KEYWORD3>LockDataSource</KEYWORD3>\r
+ <KEYWORD3>LockScreen</KEYWORD3>\r
+ <KEYWORD3>Margin</KEYWORD3>\r
+ <KEYWORD3>MaxButton</KEYWORD3>\r
+ <KEYWORD3>MaxHeight</KEYWORD3>\r
+ <KEYWORD3>MaxLeft</KEYWORD3>\r
+ <KEYWORD3>MaxLength</KEYWORD3>\r
+ <KEYWORD3>MaxTop</KEYWORD3>\r
+ <KEYWORD3>MaxWidth</KEYWORD3>\r
+ <KEYWORD3>MDIForm</KEYWORD3>\r
+ <KEYWORD3>MemoWindow</KEYWORD3>\r
+ <KEYWORD3>MinButton</KEYWORD3>\r
+ <KEYWORD3>MinHeight</KEYWORD3>\r
+ <KEYWORD3>MinWidth</KEYWORD3>\r
+ <KEYWORD3>MousePointer</KEYWORD3>\r
+ <KEYWORD3>Movable</KEYWORD3>\r
+ <KEYWORD3>MoverBars</KEYWORD3>\r
+ <KEYWORD3>MultiSelect</KEYWORD3>\r
+ <KEYWORD3>Name</KEYWORD3>\r
+ <KEYWORD3>NapTime</KEYWORD3>\r
+ <KEYWORD3>NewIndex</KEYWORD3>\r
+ <KEYWORD3>NewItemId</KEYWORD3>\r
+ <KEYWORD3>NoDataOnLoad</KEYWORD3>\r
+ <KEYWORD3>NoDefine</KEYWORD3>\r
+ <KEYWORD3>NotifyContainer</KEYWORD3>\r
+ <KEYWORD3>NumberOfElements</KEYWORD3>\r
+ <KEYWORD3>OleClass</KEYWORD3>\r
+ <KEYWORD3>OleClassId</KEYWORD3>\r
+ <KEYWORD3>OleControlContainer</KEYWORD3>\r
+ <KEYWORD3>OleIDispatchIncoming</KEYWORD3>\r
+ <KEYWORD3>OleIDispatchOutgoing</KEYWORD3>\r
+ <KEYWORD3>OleIDispInValue</KEYWORD3>\r
+ <KEYWORD3>OleIDispOutValue</KEYWORD3>\r
+ <KEYWORD3>OLETypeAllowed</KEYWORD3>\r
+ <KEYWORD3>OneToMany</KEYWORD3>\r
+ <KEYWORD3>OnResize</KEYWORD3>\r
+ <KEYWORD3>OpenWindow</KEYWORD3>\r
+ <KEYWORD3>PageCount</KEYWORD3>\r
+ <KEYWORD3>PageHeight</KEYWORD3>\r
+ <KEYWORD3>PageOrder</KEYWORD3>\r
+ <KEYWORD3>Pages</KEYWORD3>\r
+ <KEYWORD3>PageWidth</KEYWORD3>\r
+ <KEYWORD3>Panel</KEYWORD3>\r
+ <KEYWORD3>PanelLink</KEYWORD3>\r
+ <KEYWORD3>Parent</KEYWORD3>\r
+ <KEYWORD3>ParentAlias</KEYWORD3>\r
+ <KEYWORD3>ParentClass</KEYWORD3>\r
+ <KEYWORD3>Partition</KEYWORD3>\r
+ <KEYWORD3>PasswordChar</KEYWORD3>\r
+ <KEYWORD3>Picture</KEYWORD3>\r
+ <KEYWORD3>ReadColors</KEYWORD3>\r
+ <KEYWORD3>ReadCycle</KEYWORD3>\r
+ <KEYWORD3>ReadFiller</KEYWORD3>\r
+ <KEYWORD3>ReadLock</KEYWORD3>\r
+ <KEYWORD3>ReadMouse</KEYWORD3>\r
+ <KEYWORD3>ReadOnly</KEYWORD3>\r
+ <KEYWORD3>ReadSave</KEYWORD3>\r
+ <KEYWORD3>ReadSize</KEYWORD3>\r
+ <KEYWORD3>ReadTimeout</KEYWORD3>\r
+ <KEYWORD3>RecordMark</KEYWORD3>\r
+ <KEYWORD3>RecordSource</KEYWORD3>\r
+ <KEYWORD3>RecordSourceType</KEYWORD3>\r
+ <KEYWORD3>Rect</KEYWORD3>\r
+ <KEYWORD3>RelationalExpr</KEYWORD3>\r
+ <KEYWORD3>RelativeColumn</KEYWORD3>\r
+ <KEYWORD3>RelativeRow</KEYWORD3>\r
+ <KEYWORD3>ReleaseErase</KEYWORD3>\r
+ <KEYWORD3>ReleaseType</KEYWORD3>\r
+ <KEYWORD3>ReleaseWindows</KEYWORD3>\r
+ <KEYWORD3>Resizable</KEYWORD3>\r
+ <KEYWORD3>RowHeight</KEYWORD3>\r
+ <KEYWORD3>RowSource</KEYWORD3>\r
+ <KEYWORD3>RowSourceType</KEYWORD3>\r
+ <KEYWORD3>ScaleMode</KEYWORD3>\r
+ <KEYWORD3>ScrollBars</KEYWORD3>\r
+ <KEYWORD3>Selected</KEYWORD3>\r
+ <KEYWORD3>SelectedBackColor</KEYWORD3>\r
+ <KEYWORD3>SelectedForeColor</KEYWORD3>\r
+ <KEYWORD3>SelectedID</KEYWORD3>\r
+ <KEYWORD3>SelectedItemBackColor</KEYWORD3>\r
+ <KEYWORD3>SelectedItemForeColor</KEYWORD3>\r
+ <KEYWORD3>SelectOnEntry</KEYWORD3>\r
+ <KEYWORD3>SelfEdit</KEYWORD3>\r
+ <KEYWORD3>SelLength</KEYWORD3>\r
+ <KEYWORD3>SelStart</KEYWORD3>\r
+ <KEYWORD3>SelText</KEYWORD3>\r
+ <KEYWORD3>ShowTips</KEYWORD3>\r
+ <KEYWORD3>Sizable</KEYWORD3>\r
+ <KEYWORD3>Skip</KEYWORD3>\r
+ <KEYWORD3>SkipForm</KEYWORD3>\r
+ <KEYWORD3>Sorted</KEYWORD3>\r
+ <KEYWORD3>SourceType</KEYWORD3>\r
+ <KEYWORD3>Sparse</KEYWORD3>\r
+ <KEYWORD3>SpecialEffect</KEYWORD3>\r
+ <KEYWORD3>SpinnerHighValue</KEYWORD3>\r
+ <KEYWORD3>SpinnerLowValue</KEYWORD3>\r
+ <KEYWORD3>StatusBarText</KEYWORD3>\r
+ <KEYWORD3>Stretch</KEYWORD3>\r
+ <KEYWORD3>Style</KEYWORD3>\r
+ <KEYWORD3>SystemRefCount</KEYWORD3>\r
+ <KEYWORD3>Tabhit</KEYWORD3>\r
+ <KEYWORD3>TabIndex</KEYWORD3>\r
+ <KEYWORD3>Tabs</KEYWORD3>\r
+ <KEYWORD3>TabStop</KEYWORD3>\r
+ <KEYWORD3>TabStretch</KEYWORD3>\r
+ <KEYWORD3>Tag</KEYWORD3>\r
+ <KEYWORD3>TerminateRead</KEYWORD3>\r
+ <KEYWORD3>ToolTipText</KEYWORD3>\r
+ <KEYWORD3>Top</KEYWORD3>\r
+ <KEYWORD3>TopIndex</KEYWORD3>\r
+ <KEYWORD3>TopItemId</KEYWORD3>\r
+ <KEYWORD3>UnlockDataSource</KEYWORD3>\r
+ <KEYWORD3>Value</KEYWORD3>\r
+ <KEYWORD3>ValueDirty</KEYWORD3>\r
+ <KEYWORD3>View</KEYWORD3>\r
+ <KEYWORD3>Visible</KEYWORD3>\r
+ <KEYWORD3>WasActive</KEYWORD3>\r
+ <KEYWORD3>WasOpen</KEYWORD3>\r
+ <KEYWORD3>Width</KEYWORD3>\r
+ <KEYWORD3>WindowList</KEYWORD3>\r
+ <KEYWORD3>WindowNTIList</KEYWORD3>\r
+ <KEYWORD3>WindowState</KEYWORD3>\r
+ <KEYWORD3>WindowType</KEYWORD3>\r
+ <KEYWORD3>WordWrap</KEYWORD3>\r
+ <KEYWORD3>ZOrderSet</KEYWORD3>\r
+ <KEYWORD3>AllowAddNew</KEYWORD3>\r
+ <KEYWORD3>AllowHeaderSizing</KEYWORD3>\r
+ <KEYWORD3>AllowRowSizing</KEYWORD3>\r
+ <KEYWORD3>Application</KEYWORD3>\r
+ <KEYWORD3>AutoVerbMenu</KEYWORD3>\r
+ <KEYWORD3>AutoYield</KEYWORD3>\r
+ <KEYWORD3>BoundTo</KEYWORD3>\r
+ <KEYWORD3>DateFormat</KEYWORD3>\r
+ <KEYWORD3>DateMark</KEYWORD3>\r
+ <KEYWORD3>DefaultFilePath</KEYWORD3>\r
+ <KEYWORD3>FullName</KEYWORD3>\r
+ <KEYWORD3>Hours</KEYWORD3>\r
+ <KEYWORD3>IMEMode</KEYWORD3>\r
+ <KEYWORD3>IntegralHeight</KEYWORD3>\r
+ <KEYWORD3>ItemTips</KEYWORD3>\r
+ <KEYWORD3>MouseIcon</KEYWORD3>\r
+ <KEYWORD3>NullDisplay</KEYWORD3>\r
+ <KEYWORD3>OLERequestPendingTimou</KEYWORD3>\r
+ <KEYWORD3>OLEServerBusyRaiseErro</KEYWORD3>\r
+ <KEYWORD3>OLEServerBusyTimout</KEYWORD3>\r
+ <KEYWORD3>OpenViews</KEYWORD3>\r
+ <KEYWORD3>RightToLeft</KEYWORD3>\r
+ <KEYWORD3>SDIForm</KEYWORD3>\r
+ <KEYWORD3>ShowWindow</KEYWORD3>\r
+ <KEYWORD3>SplitBar</KEYWORD3>\r
+ <KEYWORD3>StrictDateEntry</KEYWORD3>\r
+ <KEYWORD3>TabStyle</KEYWORD3>\r
+ <KEYWORD3>WhatsThisButton</KEYWORD3>\r
+ <KEYWORD3>WhatsThisHelp</KEYWORD3>\r
+ <KEYWORD3>WhatsThisHelpID</KEYWORD3>\r
+ <KEYWORD3>DisplayCount</KEYWORD3>\r
+ <KEYWORD3>ContinuousScroll</KEYWORD3>\r
+ <KEYWORD3>HscrollSmallChange</KEYWORD3>\r
+ <KEYWORD3>TitleBar</KEYWORD3>\r
+ <KEYWORD3>VscrollSmallChange</KEYWORD3>\r
+ <KEYWORD3>ViewPortTop</KEYWORD3>\r
+ <KEYWORD3>ViewPortLeft</KEYWORD3>\r
+ <KEYWORD3>ViewPortHeight</KEYWORD3>\r
+ <KEYWORD3>ViewPortWidth</KEYWORD3>\r
+ <KEYWORD3>SetViewPort</KEYWORD3>\r
+ <KEYWORD3>Scrolled</KEYWORD3>\r
+ <KEYWORD3>StartMode</KEYWORD3>\r
+ <KEYWORD3>ServerName</KEYWORD3>\r
+ <KEYWORD3>OLEDragMode</KEYWORD3>\r
+ <KEYWORD3>OLEDragPicture</KEYWORD3>\r
+ <KEYWORD3>OLEDropEffects</KEYWORD3>\r
+ <KEYWORD3>OLEDropHasData</KEYWORD3>\r
+ <KEYWORD3>OLEDropMode</KEYWORD3>\r
+ <KEYWORD3>ActiveProject</KEYWORD3>\r
+ <KEYWORD3>Projects</KEYWORD3>\r
+ <KEYWORD3>AutoIncrement</KEYWORD3>\r
+ <KEYWORD3>BuildDateTime</KEYWORD3>\r
+ <KEYWORD3>Debug</KEYWORD3>\r
+ <KEYWORD3>Encrypted</KEYWORD3>\r
+ <KEYWORD3>Files</KEYWORD3>\r
+ <KEYWORD3>HomeDir</KEYWORD3>\r
+ <KEYWORD3>MainClass</KEYWORD3>\r
+ <KEYWORD3>MainFile</KEYWORD3>\r
+ <KEYWORD3>ProjectHookClass</KEYWORD3>\r
+ <KEYWORD3>ProjectHookLibrary</KEYWORD3>\r
+ <KEYWORD3>SCCProvider</KEYWORD3>\r
+ <KEYWORD3>ServerHelpFile</KEYWORD3>\r
+ <KEYWORD3>ServerProject</KEYWORD3>\r
+ <KEYWORD3>TypeLibCLSID</KEYWORD3>\r
+ <KEYWORD3>TypeLibDesc</KEYWORD3>\r
+ <KEYWORD3>TypeLibName</KEYWORD3>\r
+ <KEYWORD3>VersionComments</KEYWORD3>\r
+ <KEYWORD3>VersionCompany</KEYWORD3>\r
+ <KEYWORD3>VersionCopyright</KEYWORD3>\r
+ <KEYWORD3>VersionDescription</KEYWORD3>\r
+ <KEYWORD3>VersionNumber</KEYWORD3>\r
+ <KEYWORD3>VersionProduct</KEYWORD3>\r
+ <KEYWORD3>VersionTrademarks</KEYWORD3>\r
+ <KEYWORD3>Item</KEYWORD3>\r
+ <KEYWORD3>CodePage</KEYWORD3>\r
+ <KEYWORD3>Description</KEYWORD3>\r
+ <KEYWORD3>FileClass</KEYWORD3>\r
+ <KEYWORD3>FileClassLibrary</KEYWORD3>\r
+ <KEYWORD3>LastModified</KEYWORD3>\r
+ <KEYWORD3>SCCStatus</KEYWORD3>\r
+ <KEYWORD3>CLSID</KEYWORD3>\r
+ <KEYWORD3>Instancing</KEYWORD3>\r
+ <KEYWORD3>ProgID</KEYWORD3>\r
+ <KEYWORD3>ServerClass</KEYWORD3>\r
+ <KEYWORD3>ServerClassLibrary</KEYWORD3>\r
+ <KEYWORD3>ThreadID</KEYWORD3>\r
+ <KEYWORD3>ProcessID</KEYWORD3>\r
+ <KEYWORD3>AddLineFeeds</KEYWORD3>\r
+\r
+ <!-- Other FoxPro's Keywords -->\r
+ <KEYWORD3>MULTILOCKS</KEYWORD3>\r
+ <KEYWORD3>FULLPATH</KEYWORD3>\r
+ <KEYWORD3>UNIQUE</KEYWORD3>\r
+ <KEYWORD3>CLASSLIB</KEYWORD3>\r
+ <KEYWORD3>LIBRARY</KEYWORD3>\r
+ <KEYWORD3>structure</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>production</KEYWORD3>\r
+ <KEYWORD3>path</KEYWORD3>\r
+ <KEYWORD3>date</KEYWORD3>\r
+ <KEYWORD3>datetime</KEYWORD3>\r
+ <KEYWORD3>rest</KEYWORD3>\r
+ <KEYWORD3>fields</KEYWORD3>\r
+ <KEYWORD3>array</KEYWORD3>\r
+ <KEYWORD3>free</KEYWORD3>\r
+ <KEYWORD3>structure</KEYWORD3>\r
+ <KEYWORD3>ASCENDING</KEYWORD3>\r
+ <KEYWORD3>window</KEYWORD3>\r
+ <KEYWORD3>nowait</KEYWORD3>\r
+ <KEYWORD3>between</KEYWORD3>\r
+ <KEYWORD3>dbf</KEYWORD3>\r
+ <KEYWORD3>noconsole</KEYWORD3>\r
+ <KEYWORD3>dif</KEYWORD3>\r
+ <KEYWORD3>xls</KEYWORD3>\r
+ <KEYWORD3>csv</KEYWORD3>\r
+ <KEYWORD3>delimited</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>decimal</KEYWORD3>\r
+ <KEYWORD3>additive</KEYWORD3>\r
+ <KEYWORD3>between</KEYWORD3>\r
+ <KEYWORD3>noupdate</KEYWORD3>\r
+\r
+ <KEYWORD3>Abs</KEYWORD3>\r
+ <KEYWORD3>Accept</KEYWORD3>\r
+ <KEYWORD3>Access</KEYWORD3>\r
+ <KEYWORD3>Aclass</KEYWORD3>\r
+ <KEYWORD3>Acopy</KEYWORD3>\r
+ <KEYWORD3>Acos</KEYWORD3>\r
+ <KEYWORD3>Adatabases</KEYWORD3>\r
+ <KEYWORD3>Adbobjects</KEYWORD3>\r
+ <KEYWORD3>Add</KEYWORD3>\r
+ <KEYWORD3>Addrelationtoenv</KEYWORD3>\r
+ <KEYWORD3>Addtabletoenv</KEYWORD3>\r
+ <KEYWORD3>Adel</KEYWORD3>\r
+ <KEYWORD3>Adir</KEYWORD3>\r
+ <KEYWORD3>Aelement</KEYWORD3>\r
+ <KEYWORD3>Aerror</KEYWORD3>\r
+ <KEYWORD3>Afields</KEYWORD3>\r
+ <KEYWORD3>Afont</KEYWORD3>\r
+ <KEYWORD3>Again</KEYWORD3>\r
+ <KEYWORD3>Ains</KEYWORD3>\r
+ <KEYWORD3>Ainstance</KEYWORD3>\r
+ <KEYWORD3>Alen</KEYWORD3>\r
+ <KEYWORD3>All</KEYWORD3>\r
+ <KEYWORD3>Alltrim</KEYWORD3>\r
+ <KEYWORD3>Alter</KEYWORD3>\r
+ <KEYWORD3>Amembers</KEYWORD3>\r
+ <KEYWORD3>Ansitooem</KEYWORD3>\r
+ <KEYWORD3>Append</KEYWORD3>\r
+ <KEYWORD3>Aprinters</KEYWORD3>\r
+ <KEYWORD3>Ascan</KEYWORD3>\r
+ <KEYWORD3>Aselobj</KEYWORD3>\r
+ <KEYWORD3>Asin</KEYWORD3>\r
+ <KEYWORD3>Asort</KEYWORD3>\r
+ <KEYWORD3>Assist</KEYWORD3>\r
+ <KEYWORD3>Asubscript</KEYWORD3>\r
+ <KEYWORD3>Asynchronous</KEYWORD3>\r
+ <KEYWORD3>Atan</KEYWORD3>\r
+ <KEYWORD3>Atc</KEYWORD3>\r
+ <KEYWORD3>Atcline</KEYWORD3>\r
+ <KEYWORD3>Atline</KEYWORD3>\r
+ <KEYWORD3>Atn2</KEYWORD3>\r
+ <KEYWORD3>Aused</KEYWORD3>\r
+ <KEYWORD3>Autoform</KEYWORD3>\r
+ <KEYWORD3>Autoreport</KEYWORD3>\r
+ <KEYWORD3>Average</KEYWORD3>\r
+ <KEYWORD3>Bar</KEYWORD3>\r
+ <KEYWORD3>BatchMode</KEYWORD3>\r
+ <KEYWORD3>BatchUpdateCount</KEYWORD3>\r
+ <KEYWORD3>Begin</KEYWORD3>\r
+ <KEYWORD3>Bell</KEYWORD3>\r
+ <KEYWORD3>BellSound</KEYWORD3>\r
+ <KEYWORD3>Bitand</KEYWORD3>\r
+ <KEYWORD3>Bitclear</KEYWORD3>\r
+ <KEYWORD3>Bitlshift</KEYWORD3>\r
+ <KEYWORD3>Bitnot</KEYWORD3>\r
+ <KEYWORD3>Bitor</KEYWORD3>\r
+ <KEYWORD3>Bitrshift</KEYWORD3>\r
+ <KEYWORD3>Bitset</KEYWORD3>\r
+ <KEYWORD3>Bittest</KEYWORD3>\r
+ <KEYWORD3>Bitxor</KEYWORD3>\r
+ <KEYWORD3>Bof</KEYWORD3>\r
+ <KEYWORD3>Bottom</KEYWORD3>\r
+ <KEYWORD3>Browse</KEYWORD3>\r
+ <KEYWORD3>BrowseRefresh</KEYWORD3>\r
+ <KEYWORD3>Buffering</KEYWORD3>\r
+ <KEYWORD3>Build</KEYWORD3>\r
+ <KEYWORD3>BuilderLock</KEYWORD3>\r
+ <KEYWORD3>By</KEYWORD3>\r
+ <KEYWORD3>Calculate</KEYWORD3>\r
+ <KEYWORD3>Call</KEYWORD3>\r
+ <KEYWORD3>Capslock</KEYWORD3>\r
+ <KEYWORD3>Case</KEYWORD3>\r
+ <KEYWORD3>Cd</KEYWORD3>\r
+ <KEYWORD3>Cdow</KEYWORD3>\r
+ <KEYWORD3>Ceiling</KEYWORD3>\r
+ <KEYWORD3>Central</KEYWORD3>\r
+ <KEYWORD3>Century</KEYWORD3>\r
+ <KEYWORD3>Change</KEYWORD3>\r
+ <KEYWORD3>Char</KEYWORD3>\r
+ <KEYWORD3>Chdir</KEYWORD3>\r
+ <KEYWORD3>Checkbox</KEYWORD3>\r
+ <KEYWORD3>Chr</KEYWORD3>\r
+ <KEYWORD3>Chrsaw</KEYWORD3>\r
+ <KEYWORD3>Chrtran</KEYWORD3>\r
+ <KEYWORD3>Close</KEYWORD3>\r
+ <KEYWORD3>Cmonth</KEYWORD3>\r
+ <KEYWORD3>Cntbar</KEYWORD3>\r
+ <KEYWORD3>Cntpad</KEYWORD3>\r
+ <KEYWORD3>Col</KEYWORD3>\r
+ <KEYWORD3>Column</KEYWORD3>\r
+ <KEYWORD3>ComboBox</KEYWORD3>\r
+ <KEYWORD3>CommandButton</KEYWORD3>\r
+ <KEYWORD3>CommandGroup</KEYWORD3>\r
+ <KEYWORD3>Compile</KEYWORD3>\r
+ <KEYWORD3>Completed</KEYWORD3>\r
+ <KEYWORD3>Compobj</KEYWORD3>\r
+ <KEYWORD3>Compute</KEYWORD3>\r
+ <KEYWORD3>Concat</KEYWORD3>\r
+ <KEYWORD3>ConnectBusy</KEYWORD3>\r
+ <KEYWORD3>ConnectHandle</KEYWORD3>\r
+ <KEYWORD3>ConnectName</KEYWORD3>\r
+ <KEYWORD3>ConnectString</KEYWORD3>\r
+ <KEYWORD3>ConnectTimeOut</KEYWORD3>\r
+ <KEYWORD3>Container</KEYWORD3>\r
+ <KEYWORD3>Continue</KEYWORD3>\r
+ <KEYWORD3>Control</KEYWORD3>\r
+ <KEYWORD3>Copy</KEYWORD3>\r
+ <KEYWORD3>Cos</KEYWORD3>\r
+ <KEYWORD3>Cot</KEYWORD3>\r
+ <KEYWORD3>Count</KEYWORD3>\r
+ <KEYWORD3>Cpconvert</KEYWORD3>\r
+ <KEYWORD3>Cpcurrent</KEYWORD3>\r
+ <KEYWORD3>CPDialog</KEYWORD3>\r
+ <KEYWORD3>Cpdbf</KEYWORD3>\r
+ <KEYWORD3>Cpnotrans</KEYWORD3>\r
+ <KEYWORD3>Create</KEYWORD3>\r
+ <KEYWORD3>Createobject</KEYWORD3>\r
+ <KEYWORD3>CrsBuffering</KEYWORD3>\r
+ <KEYWORD3>CrsFetchMemo</KEYWORD3>\r
+ <KEYWORD3>CrsFetchSize</KEYWORD3>\r
+ <KEYWORD3>CrsMaxRows</KEYWORD3>\r
+ <KEYWORD3>CrsMethodUsed</KEYWORD3>\r
+ <KEYWORD3>CrsNumBatch</KEYWORD3>\r
+ <KEYWORD3>CrsShareConnection</KEYWORD3>\r
+ <KEYWORD3>CrsUseMemoSize</KEYWORD3>\r
+ <KEYWORD3>CrsWhereClause</KEYWORD3>\r
+ <KEYWORD3>Ctod</KEYWORD3>\r
+ <KEYWORD3>Ctot</KEYWORD3>\r
+ <KEYWORD3>Curdate</KEYWORD3>\r
+ <KEYWORD3>Curdir</KEYWORD3>\r
+ <KEYWORD3>CurrLeft</KEYWORD3>\r
+ <KEYWORD3>CurrSymbol</KEYWORD3>\r
+ <KEYWORD3>Cursor</KEYWORD3>\r
+ <KEYWORD3>Curtime</KEYWORD3>\r
+ <KEYWORD3>Curval</KEYWORD3>\r
+ <KEYWORD3>Custom</KEYWORD3>\r
+ <KEYWORD3>DataEnvironment</KEYWORD3>\r
+ <KEYWORD3>Databases</KEYWORD3>\r
+ <KEYWORD3>Datetime</KEYWORD3>\r
+ <KEYWORD3>Day</KEYWORD3>\r
+ <KEYWORD3>Dayname</KEYWORD3>\r
+ <KEYWORD3>Dayofmonth</KEYWORD3>\r
+ <KEYWORD3>Dayofweek</KEYWORD3>\r
+ <KEYWORD3>Dayofyear</KEYWORD3>\r
+ <KEYWORD3>Dbalias</KEYWORD3>\r
+ <KEYWORD3>Dbused</KEYWORD3>\r
+ <KEYWORD3>DB_BufLockRow</KEYWORD3>\r
+ <KEYWORD3>DB_BufLockTable</KEYWORD3>\r
+ <KEYWORD3>DB_BufOff</KEYWORD3>\r
+ <KEYWORD3>DB_BufOptRow</KEYWORD3>\r
+ <KEYWORD3>DB_BufOptTable</KEYWORD3>\r
+ <KEYWORD3>DB_Complette</KEYWORD3>\r
+ <KEYWORD3>DB_DeleteInsert</KEYWORD3>\r
+ <KEYWORD3>DB_KeyAndModified</KEYWORD3>\r
+ <KEYWORD3>DB_KeyAndTimestamp</KEYWORD3>\r
+ <KEYWORD3>DB_KeyAndUpdatable</KEYWORD3>\r
+ <KEYWORD3>DB_LocalSQL</KEYWORD3>\r
+ <KEYWORD3>DB_NoPrompt</KEYWORD3>\r
+ <KEYWORD3>DB_Prompt</KEYWORD3>\r
+ <KEYWORD3>DB_RemoteSQL</KEYWORD3>\r
+ <KEYWORD3>DB_TransAuto</KEYWORD3>\r
+ <KEYWORD3>DB_TransManual</KEYWORD3>\r
+ <KEYWORD3>DB_TransNone</KEYWORD3>\r
+ <KEYWORD3>DB_Update</KEYWORD3>\r
+ <KEYWORD3>Ddeaborttrans</KEYWORD3>\r
+ <KEYWORD3>Ddeadvise</KEYWORD3>\r
+ <KEYWORD3>Ddeenabled</KEYWORD3>\r
+ <KEYWORD3>Ddeexecute</KEYWORD3>\r
+ <KEYWORD3>Ddeinitiate</KEYWORD3>\r
+ <KEYWORD3>Ddelasterror</KEYWORD3>\r
+ <KEYWORD3>Ddepoke</KEYWORD3>\r
+ <KEYWORD3>Dderequest</KEYWORD3>\r
+ <KEYWORD3>Ddesetoption</KEYWORD3>\r
+ <KEYWORD3>Ddesetservice</KEYWORD3>\r
+ <KEYWORD3>Ddesettopic</KEYWORD3>\r
+ <KEYWORD3>Ddeterminate</KEYWORD3>\r
+ <KEYWORD3>Declare</KEYWORD3>\r
+ <KEYWORD3>DefaultValue</KEYWORD3>\r
+ <KEYWORD3>Define</KEYWORD3>\r
+ <KEYWORD3>Degrees</KEYWORD3>\r
+ <KEYWORD3>DeleteTrigger</KEYWORD3>\r
+ <KEYWORD3>Desc</KEYWORD3>\r
+ <KEYWORD3>Description</KEYWORD3>\r
+ <KEYWORD3>Difference</KEYWORD3>\r
+ <KEYWORD3>Dimension</KEYWORD3>\r
+ <KEYWORD3>Dir</KEYWORD3>\r
+ <KEYWORD3>Directory</KEYWORD3>\r
+ <KEYWORD3>Diskspace</KEYWORD3>\r
+ <KEYWORD3>Display</KEYWORD3>\r
+ <KEYWORD3>DispLogin</KEYWORD3>\r
+ <KEYWORD3>DispWarnings</KEYWORD3>\r
+ <KEYWORD3>Distinct</KEYWORD3>\r
+ <KEYWORD3>Dmy</KEYWORD3>\r
+ <KEYWORD3>Do</KEYWORD3>\r
+ <KEYWORD3>Doc</KEYWORD3>\r
+ <KEYWORD3>Dow</KEYWORD3>\r
+ <KEYWORD3>Drop</KEYWORD3>\r
+ <KEYWORD3>Dtoc</KEYWORD3>\r
+ <KEYWORD3>Dtor</KEYWORD3>\r
+ <KEYWORD3>Dtos</KEYWORD3>\r
+ <KEYWORD3>Dtot</KEYWORD3>\r
+ <KEYWORD3>Edit</KEYWORD3>\r
+ <KEYWORD3>EditBox</KEYWORD3>\r
+ <KEYWORD3>Eject</KEYWORD3>\r
+ <KEYWORD3>Elif</KEYWORD3>\r
+ <KEYWORD3>Else</KEYWORD3>\r
+ <KEYWORD3>Empty</KEYWORD3>\r
+ <KEYWORD3>End</KEYWORD3>\r
+ <KEYWORD3>Endcase</KEYWORD3>\r
+ <KEYWORD3>Enddefine</KEYWORD3>\r
+ <KEYWORD3>Enddo</KEYWORD3>\r
+ <KEYWORD3>Endfor</KEYWORD3>\r
+ <KEYWORD3>Endif</KEYWORD3>\r
+ <KEYWORD3>Endprintjob</KEYWORD3>\r
+ <KEYWORD3>Endscan</KEYWORD3>\r
+ <KEYWORD3>Endtext</KEYWORD3>\r
+ <KEYWORD3>Endwith</KEYWORD3>\r
+ <KEYWORD3>Eof</KEYWORD3>\r
+ <KEYWORD3>Erase</KEYWORD3>\r
+ <KEYWORD3>Evaluate</KEYWORD3>\r
+ <KEYWORD3>Exact</KEYWORD3>\r
+ <KEYWORD3>Exclusive</KEYWORD3>\r
+ <KEYWORD3>Exit</KEYWORD3>\r
+ <KEYWORD3>Exp</KEYWORD3>\r
+ <KEYWORD3>Export</KEYWORD3>\r
+ <KEYWORD3>External</KEYWORD3>\r
+ <KEYWORD3>Fchsize</KEYWORD3>\r
+ <KEYWORD3>Fclose</KEYWORD3>\r
+ <KEYWORD3>Fcount</KEYWORD3>\r
+ <KEYWORD3>Fcreate</KEYWORD3>\r
+ <KEYWORD3>Feof</KEYWORD3>\r
+ <KEYWORD3>Ferror</KEYWORD3>\r
+ <KEYWORD3>FetchMemo</KEYWORD3>\r
+ <KEYWORD3>FetchSize</KEYWORD3>\r
+ <KEYWORD3>Fflush</KEYWORD3>\r
+ <KEYWORD3>Fgets</KEYWORD3>\r
+ <KEYWORD3>File</KEYWORD3>\r
+ <KEYWORD3>Filer</KEYWORD3>\r
+ <KEYWORD3>Find</KEYWORD3>\r
+ <KEYWORD3>Fklabel</KEYWORD3>\r
+ <KEYWORD3>Fkmax</KEYWORD3>\r
+ <KEYWORD3>Fldlist</KEYWORD3>\r
+ <KEYWORD3>Flock</KEYWORD3>\r
+ <KEYWORD3>Floor</KEYWORD3>\r
+ <KEYWORD3>Flush</KEYWORD3>\r
+ <KEYWORD3>FontClass</KEYWORD3>\r
+ <KEYWORD3>Fontmetric</KEYWORD3>\r
+ <KEYWORD3>Fopen</KEYWORD3>\r
+ <KEYWORD3>For</KEYWORD3>\r
+ <KEYWORD3>Form</KEYWORD3>\r
+ <KEYWORD3>FormsClass</KEYWORD3>\r
+ <KEYWORD3>Formset</KEYWORD3>\r
+ <KEYWORD3>FormSetClass</KEYWORD3>\r
+ <KEYWORD3>FormSetLib</KEYWORD3>\r
+ <KEYWORD3>FormsLib</KEYWORD3>\r
+ <KEYWORD3>Found</KEYWORD3>\r
+ <KEYWORD3>Foxcode</KEYWORD3>\r
+ <KEYWORD3>Foxdoc</KEYWORD3>\r
+ <KEYWORD3>Foxgen</KEYWORD3>\r
+ <KEYWORD3>Foxgraph</KEYWORD3>\r
+ <KEYWORD3>FoxPro</KEYWORD3>\r
+ <KEYWORD3>Foxview</KEYWORD3>\r
+ <KEYWORD3>Fputs</KEYWORD3>\r
+ <KEYWORD3>Fread</KEYWORD3>\r
+ <KEYWORD3>From</KEYWORD3>\r
+ <KEYWORD3>Fseek</KEYWORD3>\r
+ <KEYWORD3>Fsize</KEYWORD3>\r
+ <KEYWORD3>Fv</KEYWORD3>\r
+ <KEYWORD3>Fwrite</KEYWORD3>\r
+ <KEYWORD3>Gather</KEYWORD3>\r
+ <KEYWORD3>General</KEYWORD3>\r
+ <KEYWORD3>Getbar</KEYWORD3>\r
+ <KEYWORD3>Getcolor</KEYWORD3>\r
+ <KEYWORD3>Getcp</KEYWORD3>\r
+ <KEYWORD3>Getdir</KEYWORD3>\r
+ <KEYWORD3>Getenv</KEYWORD3>\r
+ <KEYWORD3>Getexpr</KEYWORD3>\r
+ <KEYWORD3>Getfile</KEYWORD3>\r
+ <KEYWORD3>Getfldstate</KEYWORD3>\r
+ <KEYWORD3>Getfont</KEYWORD3>\r
+ <KEYWORD3>Getnextmodified</KEYWORD3>\r
+ <KEYWORD3>Getobject</KEYWORD3>\r
+ <KEYWORD3>Getpad</KEYWORD3>\r
+ <KEYWORD3>Getpict</KEYWORD3>\r
+ <KEYWORD3>Getprinter</KEYWORD3>\r
+ <KEYWORD3>Go</KEYWORD3>\r
+ <KEYWORD3>Gomonth</KEYWORD3>\r
+ <KEYWORD3>Goto</KEYWORD3>\r
+ <KEYWORD3>Graph</KEYWORD3>\r
+ <KEYWORD3>Grid</KEYWORD3>\r
+ <KEYWORD3>GridHorz</KEYWORD3>\r
+ <KEYWORD3>GridShow</KEYWORD3>\r
+ <KEYWORD3>GridShowPos</KEYWORD3>\r
+ <KEYWORD3>GridSnap</KEYWORD3>\r
+ <KEYWORD3>GridVert</KEYWORD3>\r
+ <KEYWORD3>Header</KEYWORD3>\r
+ <KEYWORD3>Help</KEYWORD3>\r
+ <KEYWORD3>HelpOn</KEYWORD3>\r
+ <KEYWORD3>HelpTo</KEYWORD3>\r
+ <KEYWORD3>Hour</KEYWORD3>\r
+ <KEYWORD3>IdleTimeOut</KEYWORD3>\r
+ <KEYWORD3>Idxcollate</KEYWORD3>\r
+ <KEYWORD3>If</KEYWORD3>\r
+ <KEYWORD3>Ifdef</KEYWORD3>\r
+ <KEYWORD3>Ifndef</KEYWORD3>\r
+ <KEYWORD3>Iif</KEYWORD3>\r
+ <KEYWORD3>Image</KEYWORD3>\r
+ <KEYWORD3>Import</KEYWORD3>\r
+ <KEYWORD3>Include</KEYWORD3>\r
+ <KEYWORD3>Indbc</KEYWORD3>\r
+ <KEYWORD3>Index</KEYWORD3>\r
+ <KEYWORD3>Inkey</KEYWORD3>\r
+ <KEYWORD3>Inlist</KEYWORD3>\r
+ <KEYWORD3>Input</KEYWORD3>\r
+ <KEYWORD3>Insert</KEYWORD3>\r
+ <KEYWORD3>InsertTrigger</KEYWORD3>\r
+ <KEYWORD3>Insmode</KEYWORD3>\r
+ <KEYWORD3>Into</KEYWORD3>\r
+ <KEYWORD3>Isalpha</KEYWORD3>\r
+ <KEYWORD3>Iscolor</KEYWORD3>\r
+ <KEYWORD3>Isdigit</KEYWORD3>\r
+ <KEYWORD3>Isexclusive</KEYWORD3>\r
+ <KEYWORD3>Islower</KEYWORD3>\r
+ <KEYWORD3>Isnull</KEYWORD3>\r
+ <KEYWORD3>Isreadonly</KEYWORD3>\r
+ <KEYWORD3>Isupper</KEYWORD3>\r
+ <KEYWORD3>Join</KEYWORD3>\r
+ <KEYWORD3>Keyboard</KEYWORD3>\r
+ <KEYWORD3>KeyField</KEYWORD3>\r
+ <KEYWORD3>KeyFieldList</KEYWORD3>\r
+ <KEYWORD3>Keymatch</KEYWORD3>\r
+ <KEYWORD3>Label</KEYWORD3>\r
+ <KEYWORD3>Lastkey</KEYWORD3>\r
+ <KEYWORD3>LastProject</KEYWORD3>\r
+ <KEYWORD3>Lcase</KEYWORD3>\r
+ <KEYWORD3>Len</KEYWORD3>\r
+ <KEYWORD3>Length</KEYWORD3>\r
+ <KEYWORD3>Lineno</KEYWORD3>\r
+ <KEYWORD3>ListBox</KEYWORD3>\r
+ <KEYWORD3>Local</KEYWORD3>\r
+ <KEYWORD3>Locate</KEYWORD3>\r
+ <KEYWORD3>Locfile</KEYWORD3>\r
+ <KEYWORD3>Log</KEYWORD3>\r
+ <KEYWORD3>Log10</KEYWORD3>\r
+ <KEYWORD3>Logout</KEYWORD3>\r
+ <KEYWORD3>Lookup</KEYWORD3>\r
+ <KEYWORD3>Loop</KEYWORD3>\r
+ <KEYWORD3>Lower</KEYWORD3>\r
+ <KEYWORD3>Lparameters</KEYWORD3>\r
+ <KEYWORD3>Ltrim</KEYWORD3>\r
+ <KEYWORD3>Lupdate</KEYWORD3>\r
+ <KEYWORD3>Mail</KEYWORD3>\r
+ <KEYWORD3>MaxRecords</KEYWORD3>\r
+ <KEYWORD3>Mcol</KEYWORD3>\r
+ <KEYWORD3>Md</KEYWORD3>\r
+ <KEYWORD3>Mdown</KEYWORD3>\r
+ <KEYWORD3>Mdx</KEYWORD3>\r
+ <KEYWORD3>Mdy</KEYWORD3>\r
+ <KEYWORD3>Memlines</KEYWORD3>\r
+ <KEYWORD3>Memo</KEYWORD3>\r
+ <KEYWORD3>Menu</KEYWORD3>\r
+ <KEYWORD3>Messagebox</KEYWORD3>\r
+ <KEYWORD3>Minute</KEYWORD3>\r
+ <KEYWORD3>Mkdir</KEYWORD3>\r
+ <KEYWORD3>Mline</KEYWORD3>\r
+ <KEYWORD3>Modify</KEYWORD3>\r
+ <KEYWORD3>Month</KEYWORD3>\r
+ <KEYWORD3>Monthname</KEYWORD3>\r
+ <KEYWORD3>Mouse</KEYWORD3>\r
+ <KEYWORD3>Mrkbar</KEYWORD3>\r
+ <KEYWORD3>Mrkpad</KEYWORD3>\r
+ <KEYWORD3>Mrow</KEYWORD3>\r
+ <KEYWORD3>Mton</KEYWORD3>\r
+ <KEYWORD3>Mwindow</KEYWORD3>\r
+ <KEYWORD3>Native</KEYWORD3>\r
+ <KEYWORD3>Ndx</KEYWORD3>\r
+ <KEYWORD3>Network</KEYWORD3>\r
+ <KEYWORD3>Next</KEYWORD3>\r
+ <KEYWORD3>Nodefault</KEYWORD3>\r
+ <KEYWORD3>Normalize</KEYWORD3>\r
+ <KEYWORD3>Note</KEYWORD3>\r
+ <KEYWORD3>Now</KEYWORD3>\r
+ <KEYWORD3>Ntom</KEYWORD3>\r
+ <KEYWORD3>NullString</KEYWORD3>\r
+ <KEYWORD3>Numlock</KEYWORD3>\r
+ <KEYWORD3>Nvl</KEYWORD3>\r
+ <KEYWORD3>Objnum</KEYWORD3>\r
+ <KEYWORD3>Objref</KEYWORD3>\r
+ <KEYWORD3>Objtoclient</KEYWORD3>\r
+ <KEYWORD3>Objvar</KEYWORD3>\r
+ <KEYWORD3>Occurs</KEYWORD3>\r
+ <KEYWORD3>ODBChdbc</KEYWORD3>\r
+ <KEYWORD3>ODBChstmt</KEYWORD3>\r
+ <KEYWORD3>Oemtoansi</KEYWORD3>\r
+ <KEYWORD3>Off</KEYWORD3>\r
+ <KEYWORD3>Oldval</KEYWORD3>\r
+ <KEYWORD3>OleBaseControl</KEYWORD3>\r
+ <KEYWORD3>OleBoundControl</KEYWORD3>\r
+ <KEYWORD3>OleClassIDispOut</KEYWORD3>\r
+ <KEYWORD3>OleControl</KEYWORD3>\r
+ <KEYWORD3>On</KEYWORD3>\r
+ <KEYWORD3>Open</KEYWORD3>\r
+ <KEYWORD3>OptionButton</KEYWORD3>\r
+ <KEYWORD3>OptionGroup</KEYWORD3>\r
+ <KEYWORD3>Oracle</KEYWORD3>\r
+ <KEYWORD3>Order</KEYWORD3>\r
+ <KEYWORD3>Os</KEYWORD3>\r
+ <KEYWORD3>Otherwise</KEYWORD3>\r
+ <KEYWORD3>Pack</KEYWORD3>\r
+ <KEYWORD3>PacketSize</KEYWORD3>\r
+ <KEYWORD3>Padc</KEYWORD3>\r
+ <KEYWORD3>Padl</KEYWORD3>\r
+ <KEYWORD3>Padr</KEYWORD3>\r
+ <KEYWORD3>Page</KEYWORD3>\r
+ <KEYWORD3>PageFrame</KEYWORD3>\r
+ <KEYWORD3>Parameters</KEYWORD3>\r
+ <KEYWORD3>Payment</KEYWORD3>\r
+ <KEYWORD3>Pcol</KEYWORD3>\r
+ <KEYWORD3>Percent</KEYWORD3>\r
+ <KEYWORD3>Pi</KEYWORD3>\r
+ <KEYWORD3>Pivot</KEYWORD3>\r
+ <KEYWORD3>Play</KEYWORD3>\r
+ <KEYWORD3>Pop</KEYWORD3>\r
+ <KEYWORD3>Power</KEYWORD3>\r
+ <KEYWORD3>PrimaryKey</KEYWORD3>\r
+ <KEYWORD3>Printjob</KEYWORD3>\r
+ <KEYWORD3>Printstatus</KEYWORD3>\r
+ <KEYWORD3>Private</KEYWORD3>\r
+ <KEYWORD3>Prmbar</KEYWORD3>\r
+ <KEYWORD3>Prmpad</KEYWORD3>\r
+ <KEYWORD3>Program</KEYWORD3>\r
+ <KEYWORD3>ProjectClick</KEYWORD3>\r
+ <KEYWORD3>Proper</KEYWORD3>\r
+ <KEYWORD3>Protected</KEYWORD3>\r
+ <KEYWORD3>Prow</KEYWORD3>\r
+ <KEYWORD3>Prtinfo</KEYWORD3>\r
+ <KEYWORD3>Public</KEYWORD3>\r
+ <KEYWORD3>Push</KEYWORD3>\r
+ <KEYWORD3>Putfile</KEYWORD3>\r
+ <KEYWORD3>Pv</KEYWORD3>\r
+ <KEYWORD3>Qpr</KEYWORD3>\r
+ <KEYWORD3>Quater</KEYWORD3>\r
+ <KEYWORD3>QueryTimeOut</KEYWORD3>\r
+ <KEYWORD3>Quit</KEYWORD3>\r
+ <KEYWORD3>Radians</KEYWORD3>\r
+ <KEYWORD3>Rand</KEYWORD3>\r
+ <KEYWORD3>Rat</KEYWORD3>\r
+ <KEYWORD3>Ratline</KEYWORD3>\r
+ <KEYWORD3>Rd</KEYWORD3>\r
+ <KEYWORD3>Rdlevel</KEYWORD3>\r
+ <KEYWORD3>Read</KEYWORD3>\r
+ <KEYWORD3>Readkey</KEYWORD3>\r
+ <KEYWORD3>Recall</KEYWORD3>\r
+ <KEYWORD3>Reccount</KEYWORD3>\r
+ <KEYWORD3>RecentlyUsedFiles</KEYWORD3>\r
+ <KEYWORD3>Recno</KEYWORD3>\r
+ <KEYWORD3>Recsize</KEYWORD3>\r
+ <KEYWORD3>RectClass</KEYWORD3>\r
+ <KEYWORD3>Regional</KEYWORD3>\r
+ <KEYWORD3>Reindex</KEYWORD3>\r
+ <KEYWORD3>RelatedChild</KEYWORD3>\r
+ <KEYWORD3>RelatedTable</KEYWORD3>\r
+ <KEYWORD3>RelatedTag</KEYWORD3>\r
+ <KEYWORD3>Relation</KEYWORD3>\r
+ <KEYWORD3>Remove</KEYWORD3>\r
+ <KEYWORD3>Rename</KEYWORD3>\r
+ <KEYWORD3>Repeat</KEYWORD3>\r
+ <KEYWORD3>Replace</KEYWORD3>\r
+ <KEYWORD3>Replicate</KEYWORD3>\r
+ <KEYWORD3>Report</KEYWORD3>\r
+ <KEYWORD3>Reprocess</KEYWORD3>\r
+ <KEYWORD3>ResHeight</KEYWORD3>\r
+ <KEYWORD3>ResourceOn</KEYWORD3>\r
+ <KEYWORD3>ResourceTo</KEYWORD3>\r
+ <KEYWORD3>Restore</KEYWORD3>\r
+ <KEYWORD3>Resume</KEYWORD3>\r
+ <KEYWORD3>ResWidth</KEYWORD3>\r
+ <KEYWORD3>Retry</KEYWORD3>\r
+ <KEYWORD3>Return</KEYWORD3>\r
+ <KEYWORD3>Rgbscheme</KEYWORD3>\r
+ <KEYWORD3>Rlock</KEYWORD3>\r
+ <KEYWORD3>Rmdir</KEYWORD3>\r
+ <KEYWORD3>Rollback</KEYWORD3>\r
+ <KEYWORD3>Round</KEYWORD3>\r
+ <KEYWORD3>Rtod</KEYWORD3>\r
+ <KEYWORD3>Rtrim</KEYWORD3>\r
+ <KEYWORD3>RuleExpression</KEYWORD3>\r
+ <KEYWORD3>RuleText</KEYWORD3>\r
+ <KEYWORD3>Run</KEYWORD3>\r
+ <KEYWORD3>Runscript</KEYWORD3>\r
+ <KEYWORD3>Rview</KEYWORD3>\r
+ <KEYWORD3>Save</KEYWORD3>\r
+ <KEYWORD3>Safety</KEYWORD3>\r
+ <KEYWORD3>ScaleUnits</KEYWORD3>\r
+ <KEYWORD3>Scan</KEYWORD3>\r
+ <KEYWORD3>Scatter</KEYWORD3>\r
+ <KEYWORD3>Scols</KEYWORD3>\r
+ <KEYWORD3>Scroll</KEYWORD3>\r
+ <KEYWORD3>Sec</KEYWORD3>\r
+ <KEYWORD3>Second</KEYWORD3>\r
+ <KEYWORD3>Seek</KEYWORD3>\r
+ <KEYWORD3>Select</KEYWORD3>\r
+ <KEYWORD3>SendUpdates</KEYWORD3>\r
+ <KEYWORD3>Separator</KEYWORD3>\r
+ <KEYWORD3>Set</KEYWORD3>\r
+ <KEYWORD3>SetDefault</KEYWORD3>\r
+ <KEYWORD3>Setfldstate</KEYWORD3>\r
+ <KEYWORD3>Setup</KEYWORD3>\r
+ <KEYWORD3>Shape</KEYWORD3>\r
+ <KEYWORD3>Shared</KEYWORD3>\r
+ <KEYWORD3>ShareConnection</KEYWORD3>\r
+ <KEYWORD3>ShowOLEControls</KEYWORD3>\r
+ <KEYWORD3>ShowOLEInsertable</KEYWORD3>\r
+ <KEYWORD3>ShowVCXs</KEYWORD3>\r
+ <KEYWORD3>Sign</KEYWORD3>\r
+ <KEYWORD3>Sin</KEYWORD3>\r
+ <KEYWORD3>Size</KEYWORD3>\r
+ <KEYWORD3>Skpbar</KEYWORD3>\r
+ <KEYWORD3>Skppad</KEYWORD3>\r
+ <KEYWORD3>Sort</KEYWORD3>\r
+ <KEYWORD3>Soundex</KEYWORD3>\r
+ <KEYWORD3>SourceName</KEYWORD3>\r
+ <KEYWORD3>Spinner</KEYWORD3>\r
+ <KEYWORD3>SQLAsynchronous</KEYWORD3>\r
+ <KEYWORD3>SQLBatchMode</KEYWORD3>\r
+ <KEYWORD3>Sqlcommit</KEYWORD3>\r
+ <KEYWORD3>SQLConnectTimeOut</KEYWORD3>\r
+ <KEYWORD3>SQLDispLogin</KEYWORD3>\r
+ <KEYWORD3>SQLDispWarnings</KEYWORD3>\r
+ <KEYWORD3>SQLIdleTimeOut</KEYWORD3>\r
+ <KEYWORD3>Sqll</KEYWORD3>\r
+ <KEYWORD3>SQLQueryTimeOut</KEYWORD3>\r
+ <KEYWORD3>Sqlrollback</KEYWORD3>\r
+ <KEYWORD3>Sqlstringconnect</KEYWORD3>\r
+ <KEYWORD3>SQLTransactions</KEYWORD3>\r
+ <KEYWORD3>SQLWaitTime</KEYWORD3>\r
+ <KEYWORD3>Sqrt</KEYWORD3>\r
+ <KEYWORD3>Srows</KEYWORD3>\r
+ <KEYWORD3>StatusBar</KEYWORD3>\r
+ <KEYWORD3>Status</KEYWORD3>\r
+ <KEYWORD3>Store</KEYWORD3>\r
+ <KEYWORD3>Str</KEYWORD3>\r
+ <KEYWORD3>Strtran</KEYWORD3>\r
+ <KEYWORD3>Stuff</KEYWORD3>\r
+ <KEYWORD3>Substr</KEYWORD3>\r
+ <KEYWORD3>Substring</KEYWORD3>\r
+ <KEYWORD3>Sum</KEYWORD3>\r
+ <KEYWORD3>Suspend</KEYWORD3>\r
+ <KEYWORD3>Sys</KEYWORD3>\r
+ <KEYWORD3>Sysmetric</KEYWORD3>\r
+ <KEYWORD3>Table</KEYWORD3>\r
+ <KEYWORD3>TableRefresh</KEYWORD3>\r
+ <KEYWORD3>Tablerevert</KEYWORD3>\r
+ <KEYWORD3>Tableupdate</KEYWORD3>\r
+ <KEYWORD3>TabOrdering</KEYWORD3>\r
+ <KEYWORD3>Talk</KEYWORD3>\r
+ <KEYWORD3>Tan</KEYWORD3>\r
+ <KEYWORD3>Target</KEYWORD3>\r
+ <KEYWORD3>Text</KEYWORD3>\r
+ <KEYWORD3>TextBox</KEYWORD3>\r
+ <KEYWORD3>Timestamp</KEYWORD3>\r
+ <KEYWORD3>Timestampdiff</KEYWORD3>\r
+ <KEYWORD3>To</KEYWORD3>\r
+ <KEYWORD3>Toolbar</KEYWORD3>\r
+ <KEYWORD3>Total</KEYWORD3>\r
+ <KEYWORD3>Transaction</KEYWORD3>\r
+ <KEYWORD3>Transform</KEYWORD3>\r
+ <KEYWORD3>Trim</KEYWORD3>\r
+ <KEYWORD3>Truncate</KEYWORD3>\r
+ <KEYWORD3>Ttoc</KEYWORD3>\r
+ <KEYWORD3>Ttod</KEYWORD3>\r
+ <KEYWORD3>Txnlevel</KEYWORD3>\r
+ <KEYWORD3>Txtwidth</KEYWORD3>\r
+ <KEYWORD3>Type</KEYWORD3>\r
+ <KEYWORD3>Ucase</KEYWORD3>\r
+ <KEYWORD3>Undefine</KEYWORD3>\r
+ <KEYWORD3>Unlock</KEYWORD3>\r
+ <KEYWORD3>Unpack</KEYWORD3>\r
+ <KEYWORD3>Updatable</KEYWORD3>\r
+ <KEYWORD3>UpdatableFieldList</KEYWORD3>\r
+ <KEYWORD3>Update</KEYWORD3>\r
+ <KEYWORD3>Updated</KEYWORD3>\r
+ <KEYWORD3>UpdateName</KEYWORD3>\r
+ <KEYWORD3>UpdateNameList</KEYWORD3>\r
+ <KEYWORD3>UpdateTrigger</KEYWORD3>\r
+ <KEYWORD3>UpdateType</KEYWORD3>\r
+ <KEYWORD3>Upper</KEYWORD3>\r
+ <KEYWORD3>Upsizing</KEYWORD3>\r
+ <KEYWORD3>Use</KEYWORD3>\r
+ <KEYWORD3>Used</KEYWORD3>\r
+ <KEYWORD3>UseMemoSize</KEYWORD3>\r
+ <KEYWORD3>Val</KEYWORD3>\r
+ <KEYWORD3>Validate</KEYWORD3>\r
+ <KEYWORD3>Values</KEYWORD3>\r
+ <KEYWORD3>Varread</KEYWORD3>\r
+ <KEYWORD3>Version</KEYWORD3>\r
+ <KEYWORD3>Wait</KEYWORD3>\r
+ <KEYWORD3>WaitTime</KEYWORD3>\r
+ <KEYWORD3>Wborder</KEYWORD3>\r
+ <KEYWORD3>Wchild</KEYWORD3>\r
+ <KEYWORD3>Wcols</KEYWORD3>\r
+ <KEYWORD3>Week</KEYWORD3>\r
+ <KEYWORD3>Wexist</KEYWORD3>\r
+ <KEYWORD3>Wfont</KEYWORD3>\r
+ <KEYWORD3>Where</KEYWORD3>\r
+ <KEYWORD3>WhereType</KEYWORD3>\r
+ <KEYWORD3>While</KEYWORD3>\r
+ <KEYWORD3>Windcmd</KEYWORD3>\r
+ <KEYWORD3>Windhelp</KEYWORD3>\r
+ <KEYWORD3>Windmemo</KEYWORD3>\r
+ <KEYWORD3>Windmenu</KEYWORD3>\r
+ <KEYWORD3>Windmodify</KEYWORD3>\r
+ <KEYWORD3>Windquery</KEYWORD3>\r
+ <KEYWORD3>Windscreen</KEYWORD3>\r
+ <KEYWORD3>Windsnip</KEYWORD3>\r
+ <KEYWORD3>Windstproc</KEYWORD3>\r
+ <KEYWORD3>With</KEYWORD3>\r
+ <KEYWORD3>WizardPrompt</KEYWORD3>\r
+ <KEYWORD3>Wlast</KEYWORD3>\r
+ <KEYWORD3>Wlcol</KEYWORD3>\r
+ <KEYWORD3>Wlrow</KEYWORD3>\r
+ <KEYWORD3>Wmaximum</KEYWORD3>\r
+ <KEYWORD3>Wminimum</KEYWORD3>\r
+ <KEYWORD3>Wontop</KEYWORD3>\r
+ <KEYWORD3>Woutput</KEYWORD3>\r
+ <KEYWORD3>Wparent</KEYWORD3>\r
+ <KEYWORD3>Wread</KEYWORD3>\r
+ <KEYWORD3>Wrows</KEYWORD3>\r
+ <KEYWORD3>Wtitle</KEYWORD3>\r
+ <KEYWORD3>Wvisible</KEYWORD3>\r
+ <KEYWORD3>Year</KEYWORD3>\r
+ <KEYWORD3>Zap</KEYWORD3>\r
+ <KEYWORD3>[</KEYWORD3>\r
+ <KEYWORD3>]</KEYWORD3>\r
+ <KEYWORD3>^</KEYWORD3>\r
+ <KEYWORD3>_Alignment</KEYWORD3>\r
+ <KEYWORD3>_Asciicols</KEYWORD3>\r
+ <KEYWORD3>_Asciirows</KEYWORD3>\r
+ <KEYWORD3>_Assist</KEYWORD3>\r
+ <KEYWORD3>_Beautify</KEYWORD3>\r
+ <KEYWORD3>_Box</KEYWORD3>\r
+ <KEYWORD3>_Browser</KEYWORD3>\r
+ <KEYWORD3>_Builder</KEYWORD3>\r
+ <KEYWORD3>_Calcmem</KEYWORD3>\r
+ <KEYWORD3>_Calcvalue</KEYWORD3>\r
+ <KEYWORD3>_Cliptext</KEYWORD3>\r
+ <KEYWORD3>_Converter</KEYWORD3>\r
+ <KEYWORD3>_Curobj</KEYWORD3>\r
+ <KEYWORD3>_Dblclick</KEYWORD3>\r
+ <KEYWORD3>_Diarydate</KEYWORD3>\r
+ <KEYWORD3>_Dos</KEYWORD3>\r
+ <KEYWORD3>_Foxdoc</KEYWORD3>\r
+ <KEYWORD3>_Foxgraph</KEYWORD3>\r
+ <KEYWORD3>_Gengraph</KEYWORD3>\r
+ <KEYWORD3>_Genmenu</KEYWORD3>\r
+ <KEYWORD3>_Genpd</KEYWORD3>\r
+ <KEYWORD3>_Genscrn</KEYWORD3>\r
+ <KEYWORD3>_Genxtab</KEYWORD3>\r
+ <KEYWORD3>_Indent</KEYWORD3>\r
+ <KEYWORD3>_Lmargin</KEYWORD3>\r
+ <KEYWORD3>_Mac</KEYWORD3>\r
+ <KEYWORD3>_Mbrowse</KEYWORD3>\r
+ <KEYWORD3>_Mbr_appnd</KEYWORD3>\r
+ <KEYWORD3>_Mbr_cpart</KEYWORD3>\r
+ <KEYWORD3>_Mbr_delet</KEYWORD3>\r
+ <KEYWORD3>_Mbr_font</KEYWORD3>\r
+ <KEYWORD3>_Mbr_goto</KEYWORD3>\r
+ <KEYWORD3>_Mbr_grid</KEYWORD3>\r
+ <KEYWORD3>_Mbr_link</KEYWORD3>\r
+ <KEYWORD3>_Mbr_mode</KEYWORD3>\r
+ <KEYWORD3>_Mbr_mvfld</KEYWORD3>\r
+ <KEYWORD3>_Mbr_mvprt</KEYWORD3>\r
+ <KEYWORD3>_Mbr_seek</KEYWORD3>\r
+ <KEYWORD3>_Mbr_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mbr_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mbr_szfld</KEYWORD3>\r
+ <KEYWORD3>_Mdata</KEYWORD3>\r
+ <KEYWORD3>_Mda_appnd</KEYWORD3>\r
+ <KEYWORD3>_Mda_avg</KEYWORD3>\r
+ <KEYWORD3>_Mda_brow</KEYWORD3>\r
+ <KEYWORD3>_Mda_calc</KEYWORD3>\r
+ <KEYWORD3>_Mda_copy</KEYWORD3>\r
+ <KEYWORD3>_Mda_count</KEYWORD3>\r
+ <KEYWORD3>_Mda_label</KEYWORD3>\r
+ <KEYWORD3>_Mda_pack</KEYWORD3>\r
+ <KEYWORD3>_Mda_reprt</KEYWORD3>\r
+ <KEYWORD3>_Mda_rindx</KEYWORD3>\r
+ <KEYWORD3>_Mda_setup</KEYWORD3>\r
+ <KEYWORD3>_Mda_sort</KEYWORD3>\r
+ <KEYWORD3>_Mda_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mda_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mda_sp300</KEYWORD3>\r
+ <KEYWORD3>_Mda_sum</KEYWORD3>\r
+ <KEYWORD3>_Mda_total</KEYWORD3>\r
+ <KEYWORD3>_Mdiary</KEYWORD3>\r
+ <KEYWORD3>_Medit</KEYWORD3>\r
+ <KEYWORD3>_Med_clear</KEYWORD3>\r
+ <KEYWORD3>_Med_copy</KEYWORD3>\r
+ <KEYWORD3>_Med_cut</KEYWORD3>\r
+ <KEYWORD3>_Med_cvtst</KEYWORD3>\r
+ <KEYWORD3>_Med_find</KEYWORD3>\r
+ <KEYWORD3>_Med_finda</KEYWORD3>\r
+ <KEYWORD3>_Med_goto</KEYWORD3>\r
+ <KEYWORD3>_Med_insob</KEYWORD3>\r
+ <KEYWORD3>_Med_link</KEYWORD3>\r
+ <KEYWORD3>_Med_obj</KEYWORD3>\r
+ <KEYWORD3>_Med_paste</KEYWORD3>\r
+ <KEYWORD3>_Med_pref</KEYWORD3>\r
+ <KEYWORD3>_Med_pstlk</KEYWORD3>\r
+ <KEYWORD3>_Med_redo</KEYWORD3>\r
+ <KEYWORD3>_Med_repl</KEYWORD3>\r
+ <KEYWORD3>_Med_repla</KEYWORD3>\r
+ <KEYWORD3>_Med_slcta</KEYWORD3>\r
+ <KEYWORD3>_Med_sp100</KEYWORD3>\r
+ <KEYWORD3>_Med_sp200</KEYWORD3>\r
+ <KEYWORD3>_Med_sp300</KEYWORD3>\r
+ <KEYWORD3>_Med_sp400</KEYWORD3>\r
+ <KEYWORD3>_Med_sp500</KEYWORD3>\r
+ <KEYWORD3>_Med_undo</KEYWORD3>\r
+ <KEYWORD3>_Mfile</KEYWORD3>\r
+ <KEYWORD3>_Mfiler</KEYWORD3>\r
+ <KEYWORD3>_Mfirst</KEYWORD3>\r
+ <KEYWORD3>_Mfi_clall</KEYWORD3>\r
+ <KEYWORD3>_Mfi_close</KEYWORD3>\r
+ <KEYWORD3>_Mfi_export</KEYWORD3>\r
+ <KEYWORD3>_Mfi_import</KEYWORD3>\r
+ <KEYWORD3>_Mfi_new</KEYWORD3>\r
+ <KEYWORD3>_Mfi_open</KEYWORD3>\r
+ <KEYWORD3>_Mfi_pgset</KEYWORD3>\r
+ <KEYWORD3>_Mfi_prevu</KEYWORD3>\r
+ <KEYWORD3>_Mfi_print</KEYWORD3>\r
+ <KEYWORD3>_Mfi_quit</KEYWORD3>\r
+ <KEYWORD3>_Mfi_revrt</KEYWORD3>\r
+ <KEYWORD3>_Mfi_savas</KEYWORD3>\r
+ <KEYWORD3>_Mfi_save</KEYWORD3>\r
+ <KEYWORD3>_Mfi_send</KEYWORD3>\r
+ <KEYWORD3>_Mfi_setup</KEYWORD3>\r
+ <KEYWORD3>_Mfi_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mfi_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mfi_sp300</KEYWORD3>\r
+ <KEYWORD3>_Mfi_sp400</KEYWORD3>\r
+ <KEYWORD3>_Mlabel</KEYWORD3>\r
+ <KEYWORD3>_Mlast</KEYWORD3>\r
+ <KEYWORD3>_Mline</KEYWORD3>\r
+ <KEYWORD3>_Mmacro</KEYWORD3>\r
+ <KEYWORD3>_Mmbldr</KEYWORD3>\r
+ <KEYWORD3>_Mprog</KEYWORD3>\r
+ <KEYWORD3>_Mproj</KEYWORD3>\r
+ <KEYWORD3>_Mpr_beaut</KEYWORD3>\r
+ <KEYWORD3>_Mpr_cancl</KEYWORD3>\r
+ <KEYWORD3>_Mpr_compl</KEYWORD3>\r
+ <KEYWORD3>_Mpr_do</KEYWORD3>\r
+ <KEYWORD3>_Mpr_docum</KEYWORD3>\r
+ <KEYWORD3>_Mpr_formwz</KEYWORD3>\r
+ <KEYWORD3>_Mpr_gener</KEYWORD3>\r
+ <KEYWORD3>_Mpr_graph</KEYWORD3>\r
+ <KEYWORD3>_Mpr_resum</KEYWORD3>\r
+ <KEYWORD3>_Mpr_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mpr_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mpr_sp300</KEYWORD3>\r
+ <KEYWORD3>_Mpr_suspend</KEYWORD3>\r
+ <KEYWORD3>_Mrc_appnd</KEYWORD3>\r
+ <KEYWORD3>_Mrc_chnge</KEYWORD3>\r
+ <KEYWORD3>_Mrc_cont</KEYWORD3>\r
+ <KEYWORD3>_Mrc_delet</KEYWORD3>\r
+ <KEYWORD3>_Mrc_goto</KEYWORD3>\r
+ <KEYWORD3>_Mrc_locat</KEYWORD3>\r
+ <KEYWORD3>_Mrc_recal</KEYWORD3>\r
+ <KEYWORD3>_Mrc_repl</KEYWORD3>\r
+ <KEYWORD3>_Mrc_seek</KEYWORD3>\r
+ <KEYWORD3>_Mrc_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mrc_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mrecord</KEYWORD3>\r
+ <KEYWORD3>_Mreport</KEYWORD3>\r
+ <KEYWORD3>_Mrqbe</KEYWORD3>\r
+ <KEYWORD3>_Mscreen</KEYWORD3>\r
+ <KEYWORD3>_Msm_data</KEYWORD3>\r
+ <KEYWORD3>_Msm_edit</KEYWORD3>\r
+ <KEYWORD3>_Msm_file</KEYWORD3>\r
+ <KEYWORD3>_Msm_format</KEYWORD3>\r
+ <KEYWORD3>_Msm_prog</KEYWORD3>\r
+ <KEYWORD3>_Msm_recrd</KEYWORD3>\r
+ <KEYWORD3>_Msm_systm</KEYWORD3>\r
+ <KEYWORD3>_Msm_text</KEYWORD3>\r
+ <KEYWORD3>_Msm_tools</KEYWORD3>\r
+ <KEYWORD3>_Msm_view</KEYWORD3>\r
+ <KEYWORD3>_Msm_windo</KEYWORD3>\r
+ <KEYWORD3>_Mst_about</KEYWORD3>\r
+ <KEYWORD3>_Mst_ascii</KEYWORD3>\r
+ <KEYWORD3>_Mst_calcu</KEYWORD3>\r
+ <KEYWORD3>_Mst_captr</KEYWORD3>\r
+ <KEYWORD3>_Mst_dbase</KEYWORD3>\r
+ <KEYWORD3>_Mst_diary</KEYWORD3>\r
+ <KEYWORD3>_Mst_filer</KEYWORD3>\r
+ <KEYWORD3>_Mst_help</KEYWORD3>\r
+ <KEYWORD3>_Mst_hphow</KEYWORD3>\r
+ <KEYWORD3>_Mst_hpsch</KEYWORD3>\r
+ <KEYWORD3>_Mst_macro</KEYWORD3>\r
+ <KEYWORD3>_Mst_office</KEYWORD3>\r
+ <KEYWORD3>_Mst_puzzl</KEYWORD3>\r
+ <KEYWORD3>_Mst_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mst_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mst_sp300</KEYWORD3>\r
+ <KEYWORD3>_Mst_specl</KEYWORD3>\r
+ <KEYWORD3>_Msysmenu</KEYWORD3>\r
+ <KEYWORD3>_Msystem</KEYWORD3>\r
+ <KEYWORD3>_Mtable</KEYWORD3>\r
+ <KEYWORD3>_Mtb_appnd</KEYWORD3>\r
+ <KEYWORD3>_Mtb_cpart</KEYWORD3>\r
+ <KEYWORD3>_Mtb_delet</KEYWORD3>\r
+ <KEYWORD3>_Mtb_delrc</KEYWORD3>\r
+ <KEYWORD3>_Mtb_goto</KEYWORD3>\r
+ <KEYWORD3>_Mtb_link</KEYWORD3>\r
+ <KEYWORD3>_Mtb_mvfld</KEYWORD3>\r
+ <KEYWORD3>_Mtb_mvprt</KEYWORD3>\r
+ <KEYWORD3>_Mtb_props</KEYWORD3>\r
+ <KEYWORD3>_Mtb_recal</KEYWORD3>\r
+ <KEYWORD3>_Mtb_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mtb_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mtb_sp300</KEYWORD3>\r
+ <KEYWORD3>_Mtb_sp400</KEYWORD3>\r
+ <KEYWORD3>_Mtb_szfld</KEYWORD3>\r
+ <KEYWORD3>_Mwindow</KEYWORD3>\r
+ <KEYWORD3>_Mwizards</KEYWORD3>\r
+ <KEYWORD3>_Mwi_arran</KEYWORD3>\r
+ <KEYWORD3>_Mwi_clear</KEYWORD3>\r
+ <KEYWORD3>_Mwi_cmd</KEYWORD3>\r
+ <KEYWORD3>_Mwi_color</KEYWORD3>\r
+ <KEYWORD3>_Mwi_debug</KEYWORD3>\r
+ <KEYWORD3>_Mwi_hide</KEYWORD3>\r
+ <KEYWORD3>_Mwi_hidea</KEYWORD3>\r
+ <KEYWORD3>_Mwi_min</KEYWORD3>\r
+ <KEYWORD3>_Mwi_move</KEYWORD3>\r
+ <KEYWORD3>_Mwi_rotat</KEYWORD3>\r
+ <KEYWORD3>_Mwi_showa</KEYWORD3>\r
+ <KEYWORD3>_Mwi_size</KEYWORD3>\r
+ <KEYWORD3>_Mwi_sp100</KEYWORD3>\r
+ <KEYWORD3>_Mwi_sp200</KEYWORD3>\r
+ <KEYWORD3>_Mwi_toolb</KEYWORD3>\r
+ <KEYWORD3>_Mwi_trace</KEYWORD3>\r
+ <KEYWORD3>_Mwi_view</KEYWORD3>\r
+ <KEYWORD3>_Mwi_zoom</KEYWORD3>\r
+ <KEYWORD3>_Mwz_all</KEYWORD3>\r
+ <KEYWORD3>_Mwz_form</KEYWORD3>\r
+ <KEYWORD3>_Mwz_foxdoc</KEYWORD3>\r
+ <KEYWORD3>_Mwz_import</KEYWORD3>\r
+ <KEYWORD3>_Mwz_label</KEYWORD3>\r
+ <KEYWORD3>_Mwz_mail</KEYWORD3>\r
+ <KEYWORD3>_Mwz_pivot</KEYWORD3>\r
+ <KEYWORD3>_Mwz_query</KEYWORD3>\r
+ <KEYWORD3>_Mwz_reprt</KEYWORD3>\r
+ <KEYWORD3>_Mwz_setup</KEYWORD3>\r
+ <KEYWORD3>_Mwz_table</KEYWORD3>\r
+ <KEYWORD3>_Mwz_upsizing</KEYWORD3>\r
+ <KEYWORD3>_Netware</KEYWORD3>\r
+ <KEYWORD3>_Oracle</KEYWORD3>\r
+ <KEYWORD3>_Padvance</KEYWORD3>\r
+ <KEYWORD3>_Pageno</KEYWORD3>\r
+ <KEYWORD3>_Pbpage</KEYWORD3>\r
+ <KEYWORD3>_Pcolno</KEYWORD3>\r
+ <KEYWORD3>_Pcopies</KEYWORD3>\r
+ <KEYWORD3>_Pdparms</KEYWORD3>\r
+ <KEYWORD3>_Pdriver</KEYWORD3>\r
+ <KEYWORD3>_Pdsetup</KEYWORD3>\r
+ <KEYWORD3>_Pecode</KEYWORD3>\r
+ <KEYWORD3>_Peject</KEYWORD3>\r
+ <KEYWORD3>_Pepage</KEYWORD3>\r
+ <KEYWORD3>_Pform</KEYWORD3>\r
+ <KEYWORD3>_Plength</KEYWORD3>\r
+ <KEYWORD3>_Plineno</KEYWORD3>\r
+ <KEYWORD3>_Ploffset</KEYWORD3>\r
+ <KEYWORD3>_Ppitch</KEYWORD3>\r
+ <KEYWORD3>_Pquality</KEYWORD3>\r
+ <KEYWORD3>_Pretext</KEYWORD3>\r
+ <KEYWORD3>_Pscode</KEYWORD3>\r
+ <KEYWORD3>_Pspacing</KEYWORD3>\r
+ <KEYWORD3>_Pwait</KEYWORD3>\r
+ <KEYWORD3>_Rmargin</KEYWORD3>\r
+ <KEYWORD3>_Screen</KEYWORD3>\r
+ <KEYWORD3>_Shell</KEYWORD3>\r
+ <KEYWORD3>_Spellchk</KEYWORD3>\r
+ <KEYWORD3>_Sqlserver</KEYWORD3>\r
+ <KEYWORD3>_Startup</KEYWORD3>\r
+ <KEYWORD3>_Tabs</KEYWORD3>\r
+ <KEYWORD3>_Tally</KEYWORD3>\r
+ <KEYWORD3>_Text</KEYWORD3>\r
+ <KEYWORD3>_Throttle</KEYWORD3>\r
+ <KEYWORD3>_Transport</KEYWORD3>\r
+ <KEYWORD3>_Triggerlevel</KEYWORD3>\r
+ <KEYWORD3>_Unix</KEYWORD3>\r
+ <KEYWORD3>_Windows</KEYWORD3>\r
+ <KEYWORD3>_Wizard</KEYWORD3>\r
+ <KEYWORD3>_Wrap</KEYWORD3>\r
+ <KEYWORD3>French</KEYWORD3>\r
+ <KEYWORD3>German</KEYWORD3>\r
+ <KEYWORD3>Italian</KEYWORD3>\r
+ <KEYWORD3>Japan</KEYWORD3>\r
+ <KEYWORD3>Usa</KEYWORD3>\r
+ <KEYWORD3>Lparameter</KEYWORD3>\r
+ <KEYWORD3>This</KEYWORD3>\r
+ <KEYWORD3>Thisform</KEYWORD3>\r
+ <KEYWORD3>Thisformset</KEYWORD3>\r
+ <KEYWORD3>F</KEYWORD3>\r
+ <KEYWORD3>T</KEYWORD3>\r
+ <KEYWORD3>N</KEYWORD3>\r
+ <KEYWORD3>Y</KEYWORD3>\r
+ <KEYWORD3>OlePublic</KEYWORD3>\r
+ <KEYWORD3>Hidden</KEYWORD3>\r
+ <KEYWORD3>Each</KEYWORD3>\r
+ <KEYWORD3>DoEvents</KEYWORD3>\r
+ <KEYWORD3>Dll</KEYWORD3>\r
+ <KEYWORD3>Outer</KEYWORD3>\r
+ <KEYWORD3>At_c</KEYWORD3>\r
+ <KEYWORD3>Atcc</KEYWORD3>\r
+ <KEYWORD3>Ratc</KEYWORD3>\r
+ <KEYWORD3>Leftc</KEYWORD3>\r
+ <KEYWORD3>Rightc</KEYWORD3>\r
+ <KEYWORD3>Substrc</KEYWORD3>\r
+ <KEYWORD3>Stuffc</KEYWORD3>\r
+ <KEYWORD3>Lenc</KEYWORD3>\r
+ <KEYWORD3>Chrtranc</KEYWORD3>\r
+ <KEYWORD3>IsLeadByte</KEYWORD3>\r
+ <KEYWORD3>IMEStatus</KEYWORD3>\r
+ <KEYWORD3>Strconv</KEYWORD3>\r
+ <KEYWORD3>BinToC</KEYWORD3>\r
+ <KEYWORD3>CToBin</KEYWORD3>\r
+ <KEYWORD3>IsFLocked</KEYWORD3>\r
+ <KEYWORD3>IsRLocked</KEYWORD3>\r
+ <KEYWORD3>LoadPicture</KEYWORD3>\r
+ <KEYWORD3>SavePicture</KEYWORD3>\r
+ <KEYWORD3>Assert</KEYWORD3>\r
+ <KEYWORD3>DoDefault</KEYWORD3>\r
+ <KEYWORD3>_WebMenu</KEYWORD3>\r
+ <KEYWORD3>_scctext</KEYWORD3>\r
+ <KEYWORD3>_WebVFPHomePage</KEYWORD3>\r
+ <KEYWORD3>_WebVfpOnlineSupport</KEYWORD3>\r
+ <KEYWORD3>_WebDevOnly</KEYWORD3>\r
+ <KEYWORD3>_WebMsftHomePage</KEYWORD3>\r
+ <KEYWORD3>_Coverage</KEYWORD3>\r
+ <KEYWORD3>_vfp</KEYWORD3>\r
+ <KEYWORD3>Bintoc</KEYWORD3>\r
+ <KEYWORD3>Resources</KEYWORD3>\r
+ <KEYWORD3>Ctobin</KEYWORD3>\r
+ <KEYWORD3>Createoffline</KEYWORD3>\r
+ <KEYWORD3>Debugout</KEYWORD3>\r
+ <KEYWORD3>Doevents</KEYWORD3>\r
+ <KEYWORD3>Dropoffline</KEYWORD3>\r
+ <KEYWORD3>Each</KEYWORD3>\r
+ <KEYWORD3>Isflocked</KEYWORD3>\r
+ <KEYWORD3>Isrlocked</KEYWORD3>\r
+ <KEYWORD3>Loadpicture</KEYWORD3>\r
+ <KEYWORD3>Revertoffline</KEYWORD3>\r
+ <KEYWORD3>Savepicture</KEYWORD3>\r
+ <KEYWORD3>Asserts</KEYWORD3>\r
+ <KEYWORD3>Coverage</KEYWORD3>\r
+ <KEYWORD3>Eventtracking</KEYWORD3>\r
+ <KEYWORD3>DBGetProp</KEYWORD3>\r
+ <KEYWORD3>DBSetProp</KEYWORD3>\r
+ <KEYWORD3>CursorGetProp</KEYWORD3>\r
+ <KEYWORD3>CursorSetProp</KEYWORD3>\r
+ <KEYWORD3>Addbs</KEYWORD3>\r
+ <KEYWORD3>Agetclass</KEYWORD3>\r
+ <KEYWORD3>Agetfileversion</KEYWORD3>\r
+ <KEYWORD3>Alines</KEYWORD3>\r
+ <KEYWORD3>Amouseobj</KEYWORD3>\r
+ <KEYWORD3>Anetresources</KEYWORD3>\r
+ <KEYWORD3>Avcxclasses</KEYWORD3>\r
+ <KEYWORD3>Comclassinfo</KEYWORD3>\r
+ <KEYWORD3>Createobjectex</KEYWORD3>\r
+ <KEYWORD3>Defaultext</KEYWORD3>\r
+ <KEYWORD3>Drivetype</KEYWORD3>\r
+ <KEYWORD3>Filetostr</KEYWORD3>\r
+ <KEYWORD3>Forceext</KEYWORD3>\r
+ <KEYWORD3>Forcepath</KEYWORD3>\r
+ <KEYWORD3>Gethost</KEYWORD3>\r
+ <KEYWORD3>Indexseek</KEYWORD3>\r
+ <KEYWORD3>Ishosted</KEYWORD3>\r
+ <KEYWORD3>Justdrive</KEYWORD3>\r
+ <KEYWORD3>Justext</KEYWORD3>\r
+ <KEYWORD3>Justfname</KEYWORD3>\r
+ <KEYWORD3>Justpath</KEYWORD3>\r
+ <KEYWORD3>Juststem</KEYWORD3>\r
+ <KEYWORD3>Newobject</KEYWORD3>\r
+ <KEYWORD3>Olereturnerror</KEYWORD3>\r
+ <KEYWORD3>Strtofile</KEYWORD3>\r
+ <KEYWORD3>Vartype</KEYWORD3>\r
+ <KEYWORD3>_Coverage</KEYWORD3>\r
+ <KEYWORD3>_Gallery</KEYWORD3>\r
+ <KEYWORD3>_Genhtml</KEYWORD3>\r
+ <KEYWORD3>_Getexpr</KEYWORD3>\r
+ <KEYWORD3>_Include</KEYWORD3>\r
+ <KEYWORD3>_Runactivedoc</KEYWORD3>\r
+ <KEYWORD3>ProjectHook</KEYWORD3>\r
+ <KEYWORD3>ActiveDoc</KEYWORD3>\r
+ <KEYWORD3>HyperLink</KEYWORD3>\r
+ <KEYWORD3>Session</KEYWORD3>\r
+ <KEYWORD3>Mtdll</KEYWORD3>\r
+\r
+ <!-- New in Visual Foxpro 8.0 -->\r
+ <KEYWORD3>ADOCKTIP</KEYWORD3>\r
+ <KEYWORD3>ADirtip</KEYWORD3>\r
+ <KEYWORD3>ADockState</KEYWORD3>\r
+ <KEYWORD3>AEvents</KEYWORD3>\r
+ <KEYWORD3>AFONTTIP</KEYWORD3>\r
+ <KEYWORD3>ALanguage</KEYWORD3>\r
+ <KEYWORD3>AProcInfo</KEYWORD3>\r
+ <KEYWORD3>AStackInfo</KEYWORD3>\r
+ <KEYWORD3>ATagInfo</KEYWORD3>\r
+ <KEYWORD3>Adlls</KEYWORD3>\r
+ <KEYWORD3>Alentip</KEYWORD3>\r
+ <KEYWORD3>Amemberstip</KEYWORD3>\r
+ <KEYWORD3>Amemberstip2</KEYWORD3>\r
+ <KEYWORD3>Ascantip</KEYWORD3>\r
+ <KEYWORD3>Aselobjtip</KEYWORD3>\r
+ <KEYWORD3>Asessions</KEYWORD3>\r
+ <KEYWORD3>Asorttip</KEYWORD3>\r
+ <KEYWORD3>Asorttip2</KEYWORD3>\r
+ <KEYWORD3>BINDEVENTTIP</KEYWORD3>\r
+ <KEYWORD3>BindEvent</KEYWORD3>\r
+ <KEYWORD3>COMARRAYTIP</KEYWORD3>\r
+ <KEYWORD3>COMPROPTIP</KEYWORD3>\r
+ <KEYWORD3>Candidate</KEYWORD3>\r
+ <KEYWORD3>Cdx</KEYWORD3>\r
+ <KEYWORD3>ComArray</KEYWORD3>\r
+ <KEYWORD3>ComReturnError</KEYWORD3>\r
+ <KEYWORD3>Comprop</KEYWORD3>\r
+ <KEYWORD3>CreateBinary</KEYWORD3>\r
+ <KEYWORD3>CursorToXML</KEYWORD3>\r
+ <KEYWORD3>DIRTIP</KEYWORD3>\r
+ <KEYWORD3>Descending</KEYWORD3>\r
+ <KEYWORD3>DisplayPath</KEYWORD3>\r
+ <KEYWORD3>EditSource</KEYWORD3>\r
+ <KEYWORD3>EventHandler</KEYWORD3>\r
+ <KEYWORD3>Evl</KEYWORD3>\r
+ <KEYWORD3>ExecScript</KEYWORD3>\r
+ <KEYWORD3>FCREATETIP</KEYWORD3>\r
+ <KEYWORD3>FIELDTIP</KEYWORD3>\r
+ <KEYWORD3>FILETIP</KEYWORD3>\r
+ <KEYWORD3>FOPENTIP</KEYWORD3>\r
+ <KEYWORD3>FSEEKTIP</KEYWORD3>\r
+ <KEYWORD3>Fdate</KEYWORD3>\r
+ <KEYWORD3>Ftime</KEYWORD3>\r
+ <KEYWORD3>GetCursorAdapter</KEYWORD3>\r
+ <KEYWORD3>GetInterface</KEYWORD3>\r
+ <KEYWORD3>GetPem</KEYWORD3>\r
+ <KEYWORD3>GetWordCount</KEYWORD3>\r
+ <KEYWORD3>GetWordNum</KEYWORD3>\r
+ <KEYWORD3>InputBox</KEYWORD3>\r
+ <KEYWORD3>IsBlank</KEYWORD3>\r
+ <KEYWORD3>IsMouse</KEYWORD3>\r
+ <KEYWORD3>Like</KEYWORD3>\r
+ <KEYWORD3>Likec</KEYWORD3>\r
+ <KEYWORD3>Memory</KEYWORD3>\r
+ <KEYWORD3>Msgboxtip</KEYWORD3>\r
+ <KEYWORD3>Pcount</KEYWORD3>\r
+ <KEYWORD3>PemStatus</KEYWORD3>\r
+ <KEYWORD3>Popup</KEYWORD3>\r
+ <KEYWORD3>Quarter</KEYWORD3>\r
+ <KEYWORD3>RaiseEvent</KEYWORD3>\r
+ <KEYWORD3>RemoveProperty</KEYWORD3>\r
+ <KEYWORD3>SQLCancel</KEYWORD3>\r
+ <KEYWORD3>SQLColumns</KEYWORD3>\r
+ <KEYWORD3>SQLDisconnect</KEYWORD3>\r
+ <KEYWORD3>SQLExec</KEYWORD3>\r
+ <KEYWORD3>SQLGetProp</KEYWORD3>\r
+ <KEYWORD3>SQLMoreResults</KEYWORD3>\r
+ <KEYWORD3>SQLPrepare</KEYWORD3>\r
+ <KEYWORD3>SQLSetProp</KEYWORD3>\r
+ <KEYWORD3>SQLTables</KEYWORD3>\r
+ <KEYWORD3>STRTOFILETIP</KEYWORD3>\r
+ <KEYWORD3>Seconds</KEYWORD3>\r
+ <KEYWORD3>StrExTip</KEYWORD3>\r
+ <KEYWORD3>StrExtract</KEYWORD3>\r
+ <KEYWORD3>Strtrantip</KEYWORD3>\r
+ <KEYWORD3>Tagcount</KEYWORD3>\r
+ <KEYWORD3>Tagno</KEYWORD3>\r
+ <KEYWORD3>Textmerge</KEYWORD3>\r
+ <KEYWORD3>Try</KEYWORD3>\r
+ <KEYWORD3>UnBindEvents</KEYWORD3>\r
+ <KEYWORD3>WDockable</KEYWORD3>\r
+ <KEYWORD3>XMLTIP</KEYWORD3>\r
+ <KEYWORD3>XMLTIP2</KEYWORD3>\r
+ <KEYWORD3>XMLTIP3</KEYWORD3>\r
+ <KEYWORD3>XMLTIP4</KEYWORD3>\r
+ <KEYWORD3>XMLTIP5</KEYWORD3>\r
+ <KEYWORD3>XMLTIP6</KEYWORD3>\r
+ <KEYWORD3>XMLToCursor</KEYWORD3>\r
+ <KEYWORD3>XMLUpdategram</KEYWORD3>\r
+ <KEYWORD3>Blank</KEYWORD3>\r
+ <KEYWORD3>Catch</KEYWORD3>\r
+ <KEYWORD3>Dotip</KEYWORD3>\r
+ <KEYWORD3>EndTry</KEYWORD3>\r
+ <KEYWORD3>Finally</KEYWORD3>\r
+ <KEYWORD3>Implements</KEYWORD3>\r
+ <KEYWORD3>Opendatatip</KEYWORD3>\r
+ <KEYWORD3>Repltip</KEYWORD3>\r
+ <KEYWORD3>Throw</KEYWORD3>\r
+ <KEYWORD3>Usetip</KEYWORD3>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- A JEdit mode configuration file for FTL (FreeMarker Template Language)\r
+ Note that this version will only work with JEdit 4.1pre6 or later.\r
+ by Jonathan Revusky, revusky@users.sourceforge.net -->\r
+\r
+<MODE>\r
+ <RULES IGNORE_CASE="FALSE">\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><script</BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><Script</BEGIN>\r
+ <END></Script></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><style</BEGIN>\r
+ <END></style></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><Style</BEGIN>\r
+ <END></Style></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- XML/HTML comment -->\r
+ <SPAN TYPE="COMMENT2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- FTL markup starts here. -->\r
+\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="EXPRESSION">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="EXPRESSION">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP TYPE="KEYWORD1" HASH_CHAR="<#ftl" DELEGATE="EXPRESSION">\r
+ <BEGIN><#ftl\b</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP TYPE="KEYWORD1" DELEGATE="EXPRESSION" HASH_CHAR="<">\r
+ <BEGIN><#?(if|elseif|switch|foreach|list|case|assign|local|global|setting|include|import|stop|escape|macro|function|transform|call|visit|recurse)(\s|/|$)</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="</"\r
+ ></#?(assign|local|global|if|switch|foreach|list|escape|macro|function|transform|compress|noescape)></SEQ_REGEXP>\r
+\r
+ <SPAN_REGEXP TYPE="KEYWORD1" DELEGATE="INVALID" HASH_CHAR="<">\r
+ <BEGIN><#?(else|compress|noescape|default|break|flush|nested|t|rt|lt|return|recurse)\b</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP TYPE="KEYWORD1" DELEGATE="INVALID" HASH_CHAR="</@">\r
+ <BEGIN></@(([_@\p{Alpha}][_@\p{Alnum}]*)(\.[_@\p{Alpha}][_@\p{Alnum}]*)*?)?</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP TYPE="KEYWORD1" DELEGATE="EXPRESSION" HASH_CHAR="<@">\r
+ <BEGIN><@([_@\p{Alpha}][_@\p{Alnum}]*)(\.[_@\p{Alpha}][_@\p{Alnum}]*?)*</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><#--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="KEYWORD1"><stop></SEQ>\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><comment></BEGIN>\r
+ <END></comment></END>\r
+ </SPAN>\r
+ <SPAN TYPE="INVALID">\r
+ <BEGIN><#</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ <SPAN TYPE="INVALID">\r
+ <BEGIN></#</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- non-FTL markup -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="EXPRESSION"\r
+ DEFAULT="KEYWORD2"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ >\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><#--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="OPERATOR" DELEGATE="EXPRESSION">\r
+ <BEGIN>(</BEGIN><END>)</END>\r
+ </SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <!-- Builtins -->\r
+ <MARK_FOLLOWING TYPE="FUNCTION">?</MARK_FOLLOWING>\r
+ <KEYWORDS>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>using</KEYWORD1>\r
+ <OPERATOR>gt</OPERATOR>\r
+ <OPERATOR>gte</OPERATOR>\r
+ <OPERATOR>lt</OPERATOR>\r
+ <OPERATOR>lte</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="INQUOTE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="INQUOTE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ </RULES>\r
+\r
+\r
+ <!-- a ruleset for when we are within a quoted string within an SGML tag\r
+ It can contain FTL interpolations -->\r
+ <RULES SET="INQUOTE">\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="EXPRESSION">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="EXPRESSION">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- empty ruleset to delegate to for spots where any non-whitespace is invalid -->\r
+ <RULES SET="INVALID" DEFAULT="INVALID" />\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+<!--\r
+ ** jEdit edit mode for gettext catalogs (.po/.pot extension)\r
+ ** Use the ConfigurableFoldHandler plugin for optimal\r
+ ** results. =)\r
+-->\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="# " />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT2">#:</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1"># </EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">#.</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">#~</EOL_SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="COMMENT2">#,</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">%</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">@</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="QUOTED" >\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- keywords -->\r
+ <KEYWORDS>\r
+ <KEYWORD1>msgid</KEYWORD1>\r
+ <KEYWORD1>msgid_plural</KEYWORD1>\r
+ <KEYWORD1>msgstr</KEYWORD1>\r
+ <KEYWORD2>fuzzy</KEYWORD2>\r
+<!-- ** Ideally, we'd highlight the next msgstr differently\r
+ ** whenever fuzzy is encountered, but this doesn't seem\r
+ ** to be possible just yet.\r
+-->\r
+ <KEYWORD2>c-format</KEYWORD2>\r
+ <KEYWORD2>no-c-format</KEYWORD2>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="QUOTED" DEFAULT="LITERAL1">\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>\"</BEGIN>\r
+ <END>\"</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">%</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">@</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- COBOL mode, by Loren Charnley III -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE">\r
+\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+\r
+ <!-- Keywords -->\r
+ <KEYWORDS>\r
+\r
+ <!-- GNUplot Commands -->\r
+ <KEYWORD1>cd</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>fit</KEYWORD1>\r
+ <KEYWORD1>help</KEYWORD1>\r
+ <KEYWORD1>history</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>pause</KEYWORD1>\r
+ <KEYWORD1>plot</KEYWORD1>\r
+ <KEYWORD1>using</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>index</KEYWORD1>\r
+ <KEYWORD1>every</KEYWORD1>\r
+ <KEYWORD1>smooth</KEYWORD1>\r
+ <KEYWORD1>thru</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>pwd</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>replot</KEYWORD1>\r
+ <KEYWORD1>reread</KEYWORD1>\r
+ <KEYWORD1>reset</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>show</KEYWORD1>\r
+ <KEYWORD1>unset</KEYWORD1>\r
+ <KEYWORD1>shell</KEYWORD1>\r
+ <KEYWORD1>splot</KEYWORD1>\r
+ <KEYWORD1>system</KEYWORD1>\r
+ <KEYWORD1>test</KEYWORD1>\r
+ <KEYWORD1>unset</KEYWORD1>\r
+ <KEYWORD1>update</KEYWORD1>\r
+\r
+ <!-- GNUplot Functions -->\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>acos</KEYWORD2>\r
+ <KEYWORD2>acosh</KEYWORD2>\r
+ <KEYWORD2>arg</KEYWORD2>\r
+ <KEYWORD2>asin</KEYWORD2>\r
+ <KEYWORD2>asinh</KEYWORD2>\r
+ <KEYWORD2>atan</KEYWORD2>\r
+ <KEYWORD2>atan2</KEYWORD2>\r
+ <KEYWORD2>atanh</KEYWORD2>\r
+ <KEYWORD2>besj0</KEYWORD2>\r
+ <KEYWORD2>besj1</KEYWORD2>\r
+ <KEYWORD2>besy0</KEYWORD2>\r
+ <KEYWORD2>besy1</KEYWORD2>\r
+ <KEYWORD2>ceil</KEYWORD2>\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>cosh</KEYWORD2>\r
+ <KEYWORD2>erf</KEYWORD2>\r
+ <KEYWORD2>erfc</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>floor</KEYWORD2>\r
+ <KEYWORD2>gamma</KEYWORD2>\r
+ <KEYWORD2>ibeta</KEYWORD2>\r
+ <KEYWORD2>inverf</KEYWORD2>\r
+ <KEYWORD2>igamma</KEYWORD2>\r
+ <KEYWORD2>imag</KEYWORD2>\r
+ <KEYWORD2>invnorm</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>lambertw</KEYWORD2>\r
+ <KEYWORD2>lgamma</KEYWORD2>\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>log10</KEYWORD2>\r
+ <KEYWORD2>norm</KEYWORD2>\r
+ <KEYWORD2>rand</KEYWORD2>\r
+ <KEYWORD2>real</KEYWORD2>\r
+ <KEYWORD2>sgn</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>sinh</KEYWORD2>\r
+ <KEYWORD2>sqrt</KEYWORD2>\r
+ <KEYWORD2>tan</KEYWORD2>\r
+ <KEYWORD2>tanh</KEYWORD2>\r
+ <KEYWORD2>column</KEYWORD2>\r
+ <KEYWORD2>defined</KEYWORD2>\r
+ <KEYWORD2>tm_hour</KEYWORD2>\r
+ <KEYWORD2>tm_mday</KEYWORD2>\r
+ <KEYWORD2>tm_min</KEYWORD2>\r
+ <KEYWORD2>tm_mon</KEYWORD2>\r
+ <KEYWORD2>tm_sec</KEYWORD2>\r
+ <KEYWORD2>tm_wday</KEYWORD2>\r
+ <KEYWORD2>tm_yday</KEYWORD2>\r
+ <KEYWORD2>tm_year</KEYWORD2>\r
+ <KEYWORD2>valid</KEYWORD2>\r
+\r
+ <!-- GNUplot Built-in Variables -->\r
+ <KEYWORD3>angles</KEYWORD3>\r
+ <KEYWORD3>arrow</KEYWORD3>\r
+ <KEYWORD3>autoscale</KEYWORD3>\r
+ <KEYWORD3>bars</KEYWORD3>\r
+ <KEYWORD3>bmargin</KEYWORD3>\r
+ <KEYWORD3>border</KEYWORD3>\r
+ <KEYWORD3>boxwidth</KEYWORD3>\r
+ <KEYWORD3>clabel</KEYWORD3>\r
+ <KEYWORD3>clip</KEYWORD3>\r
+ <KEYWORD3>cntrparam</KEYWORD3>\r
+ <KEYWORD3>colorbox</KEYWORD3>\r
+ <KEYWORD3>contour</KEYWORD3>\r
+ <KEYWORD3>datafile </KEYWORD3>\r
+ <KEYWORD3>decimalsign</KEYWORD3>\r
+ <KEYWORD3>dgrid3d</KEYWORD3>\r
+ <KEYWORD3>dummy</KEYWORD3>\r
+ <KEYWORD3>encoding</KEYWORD3>\r
+ <KEYWORD3>fit</KEYWORD3>\r
+ <KEYWORD3>fontpath</KEYWORD3>\r
+ <KEYWORD3>format</KEYWORD3>\r
+ <KEYWORD3>functions</KEYWORD3>\r
+ <KEYWORD3>function</KEYWORD3>\r
+ <KEYWORD3>grid</KEYWORD3>\r
+ <KEYWORD3>hidden3d</KEYWORD3>\r
+ <KEYWORD3>historysize</KEYWORD3>\r
+ <KEYWORD3>isosamples</KEYWORD3>\r
+ <KEYWORD3>key</KEYWORD3>\r
+ <KEYWORD3>label</KEYWORD3>\r
+ <KEYWORD3>lmargin</KEYWORD3>\r
+ <KEYWORD3>loadpath</KEYWORD3>\r
+ <KEYWORD3>locale</KEYWORD3>\r
+ <KEYWORD3>logscale</KEYWORD3>\r
+ <KEYWORD3>mapping</KEYWORD3>\r
+ <KEYWORD3>margin</KEYWORD3>\r
+ <KEYWORD3>mouse</KEYWORD3>\r
+ <KEYWORD3>multiplot</KEYWORD3>\r
+ <KEYWORD3>mx2tics</KEYWORD3>\r
+ <KEYWORD3>mxtics</KEYWORD3>\r
+ <KEYWORD3>my2tics</KEYWORD3>\r
+ <KEYWORD3>mytics</KEYWORD3>\r
+ <KEYWORD3>mztics</KEYWORD3>\r
+ <KEYWORD3>offsets</KEYWORD3>\r
+ <KEYWORD3>origin</KEYWORD3>\r
+ <KEYWORD3>output</KEYWORD3>\r
+ <KEYWORD3>parametric</KEYWORD3>\r
+ <KEYWORD3>plot</KEYWORD3>\r
+ <KEYWORD3>pm3d</KEYWORD3>\r
+ <KEYWORD3>palette</KEYWORD3>\r
+ <KEYWORD3>pointsize</KEYWORD3>\r
+ <KEYWORD3>polar</KEYWORD3>\r
+ <KEYWORD3>print</KEYWORD3>\r
+ <KEYWORD3>rmargin</KEYWORD3>\r
+ <KEYWORD3>rrange</KEYWORD3>\r
+ <KEYWORD3>samples</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+ <KEYWORD3>style</KEYWORD3>\r
+ <KEYWORD3>surface</KEYWORD3>\r
+ <KEYWORD3>terminal</KEYWORD3>\r
+ <KEYWORD3>tics</KEYWORD3>\r
+ <KEYWORD3>ticslevel</KEYWORD3>\r
+ <KEYWORD3>ticscale</KEYWORD3>\r
+ <KEYWORD3>timestamp</KEYWORD3>\r
+ <KEYWORD3>timefmt</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>tmargin</KEYWORD3>\r
+ <KEYWORD3>trange</KEYWORD3>\r
+ <KEYWORD3>urange</KEYWORD3>\r
+ <KEYWORD3>variables</KEYWORD3>\r
+ <KEYWORD3>version</KEYWORD3>\r
+ <KEYWORD3>view</KEYWORD3>\r
+ <KEYWORD3>vrange</KEYWORD3>\r
+ <KEYWORD3>x2data</KEYWORD3>\r
+ <KEYWORD3>x2dtics</KEYWORD3>\r
+ <KEYWORD3>x2label</KEYWORD3>\r
+ <KEYWORD3>x2mtics</KEYWORD3>\r
+ <KEYWORD3>x2range</KEYWORD3>\r
+ <KEYWORD3>x2tics</KEYWORD3>\r
+ <KEYWORD3>x2zeroaxis</KEYWORD3>\r
+ <KEYWORD3>xdata</KEYWORD3>\r
+ <KEYWORD3>xdtics</KEYWORD3>\r
+ <KEYWORD3>xlabel</KEYWORD3>\r
+ <KEYWORD3>xmtics</KEYWORD3>\r
+ <KEYWORD3>xrange</KEYWORD3>\r
+ <KEYWORD3>xtics</KEYWORD3>\r
+ <KEYWORD3>xzeroaxis</KEYWORD3>\r
+ <KEYWORD3>y2data</KEYWORD3>\r
+ <KEYWORD3>y2dtics</KEYWORD3>\r
+ <KEYWORD3>y2label</KEYWORD3>\r
+ <KEYWORD3>y2mtics</KEYWORD3>\r
+ <KEYWORD3>y2range</KEYWORD3>\r
+ <KEYWORD3>y2tics</KEYWORD3>\r
+ <KEYWORD3>y2zeroaxis</KEYWORD3>\r
+ <KEYWORD3>ydata</KEYWORD3>\r
+ <KEYWORD3>ydtics</KEYWORD3>\r
+ <KEYWORD3>ylabel</KEYWORD3>\r
+ <KEYWORD3>ymtics</KEYWORD3>\r
+ <KEYWORD3>yrange</KEYWORD3>\r
+ <KEYWORD3>ytics</KEYWORD3>\r
+ <KEYWORD3>yzeroaxis</KEYWORD3>\r
+ <KEYWORD3>zdata</KEYWORD3>\r
+ <KEYWORD3>zdtics</KEYWORD3>\r
+ <KEYWORD3>cbdata</KEYWORD3>\r
+ <KEYWORD3>cbdtics</KEYWORD3>\r
+ <KEYWORD3>zero</KEYWORD3>\r
+ <KEYWORD3>zeroaxis</KEYWORD3>\r
+ <KEYWORD3>zlabel</KEYWORD3>\r
+ <KEYWORD3>zmtics</KEYWORD3>\r
+ <KEYWORD3>zrange</KEYWORD3>\r
+ <KEYWORD3>ztics</KEYWORD3>\r
+ <KEYWORD3>cblabel</KEYWORD3>\r
+ <KEYWORD3>cbmtics</KEYWORD3>\r
+ <KEYWORD3>cbrange</KEYWORD3>\r
+ <KEYWORD3>cbtics</KEYWORD3>\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="groovy" FILE="groovy.xml"\r
+ FILE_NAME_GLOB="*.{groovy,grv}"/>\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="FALSE">\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="GROOVYDOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- heredoc -->\r
+ <SPAN_REGEXP HASH_CHAR="<<<" TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN><![CDATA[<<<([\p{Alpha}_][\p{Alnum}_]*)\s*]]></BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SEQ TYPE="OPERATOR">=~</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+\r
+ <!-- workaround to stop "*" from being colorized\r
+ in import statements. -->\r
+ <SEQ TYPE="NULL">.*</SEQ>\r
+\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD1>strictfp</KEYWORD1>\r
+\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+\r
+ <!-- groovy keywords -->\r
+ <KEYWORD2>as</KEYWORD2>\r
+ <KEYWORD2>assert</KEYWORD2>\r
+ <KEYWORD2>def</KEYWORD2>\r
+ <KEYWORD2>mixin</KEYWORD2>\r
+ <KEYWORD2>property</KEYWORD2>\r
+ <KEYWORD2>test</KEYWORD2>\r
+ <KEYWORD2>using</KEYWORD2>\r
+ <KEYWORD2>in</KEYWORD2>\r
+\r
+ <!-- types -->\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>interface</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <!-- Groovy JDK stuff -->\r
+ <KEYWORD4>abs</KEYWORD4>\r
+ <KEYWORD4>any</KEYWORD4>\r
+ <KEYWORD4>append</KEYWORD4>\r
+ <KEYWORD4>asList</KEYWORD4>\r
+ <KEYWORD4>asWritable</KEYWORD4>\r
+ <KEYWORD4>call</KEYWORD4>\r
+ <KEYWORD4>collect</KEYWORD4>\r
+ <KEYWORD4>compareTo</KEYWORD4>\r
+ <KEYWORD4>count</KEYWORD4>\r
+ <KEYWORD4>div</KEYWORD4>\r
+ <KEYWORD4>dump</KEYWORD4>\r
+ <KEYWORD4>each</KEYWORD4>\r
+ <KEYWORD4>eachByte</KEYWORD4>\r
+ <KEYWORD4>eachFile</KEYWORD4>\r
+ <KEYWORD4>eachLine</KEYWORD4>\r
+ <KEYWORD4>every</KEYWORD4>\r
+ <KEYWORD4>find</KEYWORD4>\r
+ <KEYWORD4>findAll</KEYWORD4>\r
+ <KEYWORD4>flatten</KEYWORD4>\r
+ <KEYWORD4>getAt</KEYWORD4>\r
+ <KEYWORD4>getErr</KEYWORD4>\r
+ <KEYWORD4>getIn</KEYWORD4>\r
+ <KEYWORD4>getOut</KEYWORD4>\r
+ <KEYWORD4>getText</KEYWORD4>\r
+ <KEYWORD4>grep</KEYWORD4>\r
+ <KEYWORD4>immutable</KEYWORD4>\r
+ <KEYWORD4>inject</KEYWORD4>\r
+ <KEYWORD4>inspect</KEYWORD4>\r
+ <KEYWORD4>intersect</KEYWORD4>\r
+ <KEYWORD4>invokeMethods</KEYWORD4>\r
+ <KEYWORD4>isCase</KEYWORD4>\r
+ <KEYWORD4>join</KEYWORD4>\r
+ <KEYWORD4>leftShift</KEYWORD4>\r
+ <KEYWORD4>minus</KEYWORD4>\r
+ <KEYWORD4>multiply</KEYWORD4>\r
+ <KEYWORD4>newInputStream</KEYWORD4>\r
+ <KEYWORD4>newOutputStream</KEYWORD4>\r
+ <KEYWORD4>newPrintWriter</KEYWORD4>\r
+ <KEYWORD4>newReader</KEYWORD4>\r
+ <KEYWORD4>newWriter</KEYWORD4>\r
+ <KEYWORD4>next</KEYWORD4>\r
+ <KEYWORD4>plus</KEYWORD4>\r
+ <KEYWORD4>pop</KEYWORD4>\r
+ <KEYWORD4>power</KEYWORD4>\r
+ <KEYWORD4>previous</KEYWORD4>\r
+ <KEYWORD4>print</KEYWORD4>\r
+ <KEYWORD4>println</KEYWORD4>\r
+ <KEYWORD4>push</KEYWORD4>\r
+ <KEYWORD4>putAt</KEYWORD4>\r
+ <KEYWORD4>read</KEYWORD4>\r
+ <KEYWORD4>readBytes</KEYWORD4>\r
+ <KEYWORD4>readLines</KEYWORD4>\r
+ <KEYWORD4>reverse</KEYWORD4>\r
+ <KEYWORD4>reverseEach</KEYWORD4>\r
+ <KEYWORD4>round</KEYWORD4>\r
+ <KEYWORD4>size</KEYWORD4>\r
+ <KEYWORD4>sort</KEYWORD4>\r
+ <KEYWORD4>splitEachLine</KEYWORD4>\r
+ <KEYWORD4>step</KEYWORD4>\r
+ <KEYWORD4>subMap</KEYWORD4>\r
+ <KEYWORD4>times</KEYWORD4>\r
+ <KEYWORD4>toInteger</KEYWORD4>\r
+ <KEYWORD4>toList</KEYWORD4>\r
+ <KEYWORD4>tokenize</KEYWORD4>\r
+ <KEYWORD4>upto</KEYWORD4>\r
+ <KEYWORD4>waitForOrKill</KEYWORD4>\r
+ <KEYWORD4>withPrintWriter</KEYWORD4>\r
+ <KEYWORD4>withReader</KEYWORD4>\r
+ <KEYWORD4>withStream</KEYWORD4>\r
+ <KEYWORD4>withWriter</KEYWORD4>\r
+ <KEYWORD4>withWriterAppend</KEYWORD4>\r
+ <KEYWORD4>write</KEYWORD4>\r
+ <KEYWORD4>writeLine</KEYWORD4>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>super</LITERAL2>\r
+ <LITERAL2>this</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+\r
+ <!-- this is specific to groovy, treat like `this`? -->\r
+ <LITERAL3>it</LITERAL3>\r
+\r
+ <INVALID>goto</INVALID>\r
+ <INVALID>const</INVALID>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <RULES SET="GROOVYDOC" DEFAULT="COMMENT3" IGNORE_CASE="TRUE">\r
+ <!-- so that @link{...} is highlighted -->\r
+ <SEQ TYPE="COMMENT3">{</SEQ>\r
+\r
+ <!-- so that *@param is highlighted -->\r
+ <SEQ TYPE="COMMENT3">*</SEQ>\r
+\r
+ <!-- HTML comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- Javadoc allows this -->\r
+ <SEQ TYPE="COMMENT3"><<</SEQ>\r
+ <SEQ TYPE="COMMENT3"><=</SEQ>\r
+ <SEQ TYPE="COMMENT3">< </SEQ>\r
+\r
+ <!-- HTML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS"\r
+ NO_LINE_BREAK="TRUE">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LABEL">@</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Haskell mode by Kristian Ovaska (kristian.ovaska@helsinki.fi)\r
+ Based on Haskell 98\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="{-" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-}" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <!-- apparently, this is required... -->\r
+ <PROPERTY NAME="tabSize" VALUE="8" />\r
+ <PROPERTY NAME="indentSize" VALUE="8" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" ESCAPE="\">\r
+ <!-- Pragmas. -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>{-#</BEGIN>\r
+ <END>#-}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>{-</BEGIN>\r
+ <END>-}</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- ' causes problems because not all ' are character\r
+ definitions. I implemented an ugly and partial workaround. -->\r
+ <SEQ TYPE="LITERAL1">' '</SEQ>\r
+ <SEQ TYPE="LITERAL1">'!'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'"'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'$'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'%'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'/'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'('</SEQ>\r
+ <SEQ TYPE="LITERAL1">')'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'['</SEQ>\r
+ <SEQ TYPE="LITERAL1">']'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'+'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'-'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'*'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'='</SEQ>\r
+ <SEQ TYPE="LITERAL1">'/'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'^'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'.'</SEQ>\r
+ <SEQ TYPE="LITERAL1">','</SEQ>\r
+ <SEQ TYPE="LITERAL1">':'</SEQ>\r
+ <SEQ TYPE="LITERAL1">';'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'<'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'>'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'|'</SEQ>\r
+ <SEQ TYPE="LITERAL1">'@'</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+\r
+ <!-- Defining this as OPERATOR causes float numbers not to be\r
+ highlighted... Which is more important? -->\r
+ <!-- <SEQ TYPE="NULL">.</SEQ> -->\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved words. -->\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>data</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>deriving</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>infix</KEYWORD1>\r
+ <KEYWORD1>infixl</KEYWORD1>\r
+ <KEYWORD1>infixr</KEYWORD1>\r
+ <KEYWORD1>instance</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>module</KEYWORD1>\r
+ <KEYWORD1>newtype</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+ <KEYWORD1>_</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>qualified</KEYWORD1>\r
+ <KEYWORD1>hiding</KEYWORD1>\r
+\r
+ <KEYWORD3>Addr</KEYWORD3>\r
+ <KEYWORD3>Bool</KEYWORD3>\r
+ <KEYWORD3>Bounded</KEYWORD3>\r
+ <KEYWORD3>Char</KEYWORD3>\r
+ <KEYWORD3>Double</KEYWORD3>\r
+ <KEYWORD3>Either</KEYWORD3>\r
+ <KEYWORD3>Enum</KEYWORD3>\r
+ <KEYWORD3>Eq</KEYWORD3>\r
+ <KEYWORD3>FilePath</KEYWORD3>\r
+ <KEYWORD3>Float</KEYWORD3>\r
+ <KEYWORD3>Floating</KEYWORD3>\r
+ <KEYWORD3>Fractional</KEYWORD3>\r
+ <KEYWORD3>Functor</KEYWORD3>\r
+ <KEYWORD3>IO</KEYWORD3>\r
+ <KEYWORD3>IOError</KEYWORD3>\r
+ <KEYWORD3>IOResult</KEYWORD3>\r
+ <KEYWORD3>Int</KEYWORD3>\r
+ <KEYWORD3>Integer</KEYWORD3>\r
+ <KEYWORD3>Integral</KEYWORD3>\r
+ <KEYWORD3>Ix</KEYWORD3>\r
+ <KEYWORD3>Maybe</KEYWORD3>\r
+ <KEYWORD3>Monad</KEYWORD3>\r
+ <KEYWORD3>Num</KEYWORD3>\r
+ <KEYWORD3>Ord</KEYWORD3>\r
+ <KEYWORD3>Ordering</KEYWORD3>\r
+ <KEYWORD3>Ratio</KEYWORD3>\r
+ <KEYWORD3>Rational</KEYWORD3>\r
+ <KEYWORD3>Read</KEYWORD3>\r
+ <KEYWORD3>ReadS</KEYWORD3>\r
+ <KEYWORD3>Real</KEYWORD3>\r
+ <KEYWORD3>RealFloat</KEYWORD3>\r
+ <KEYWORD3>RealFrac</KEYWORD3>\r
+ <KEYWORD3>Show</KEYWORD3>\r
+ <KEYWORD3>ShowS</KEYWORD3>\r
+ <KEYWORD3>String</KEYWORD3>\r
+\r
+ <LITERAL2>:</LITERAL2>\r
+ <LITERAL2>EQ</LITERAL2>\r
+ <LITERAL2>False</LITERAL2>\r
+ <LITERAL2>GT</LITERAL2>\r
+ <LITERAL2>Just</LITERAL2>\r
+ <LITERAL2>LT</LITERAL2>\r
+ <LITERAL2>Left</LITERAL2>\r
+ <LITERAL2>Nothing</LITERAL2>\r
+ <LITERAL2>Right</LITERAL2>\r
+ <LITERAL2>True</LITERAL2>\r
+\r
+ <OPERATOR>quot</OPERATOR>\r
+ <OPERATOR>rem</OPERATOR>\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+ <OPERATOR>elem</OPERATOR>\r
+ <OPERATOR>notElem</OPERATOR>\r
+ <OPERATOR>seq</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Hex mode by Andre Kaplan.\r
+ To be used in conjunction with the Hex plugin.\r
+-->\r
+\r
+<MODE>\r
+ <RULES DEFAULT="LITERAL1">\r
+\r
+ <MARK_PREVIOUS\r
+ TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE"\r
+ >:</MARK_PREVIOUS>\r
+\r
+ <EOL_SPAN TYPE="KEYWORD2">;</EOL_SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+<!--\r
+DirectX FX Files Syntax Highlighting (Edit Mode) for jEdit\r
+Including: Preprocessor, HLSL and Shader Assembler up to shader version 3.0\r
+\r
+Author: Adam Sawicki\r
+- Homepage: http://regedit.gamedev.pl/\r
+- E-mail: sawickiap@poczta.onet.pl\r
+- IRC: #warsztat @ PolNet\r
+- Gadu-Gadu: 2272474\r
+\r
+-->\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=".,+-*/=<>?^&[]{}" />\r
+ \r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true" />\r
+ </PROPS>\r
+ \r
+ <RULES\r
+ ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="((0[xX][0-9a-fA-F]+|\d+)[uUIL]?|\d+([eE]\d*)?[hHfF]?)">\r
+ \r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+ <!-- preprocessor statements -->\r
+ <SEQ TYPE="KEYWORD2">##</SEQ>\r
+ <SEQ TYPE="KEYWORD2">#@</SEQ>\r
+ <EOL_SPAN TYPE="KEYWORD2" DELEGATE="Preprocessor">#</EOL_SPAN>\r
+ \r
+ <!-- asm -->\r
+ <SPAN AT_WORD_START="TRUE" EXCLUDE_MATCH="FALSE" TYPE="KEYWORD1" DELEGATE="Asm">\r
+ <BEGIN>asm</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN AT_WORD_START="TRUE" EXCLUDE_MATCH="FALSE" TYPE="KEYWORD1" DELEGATE="Asm">\r
+ <BEGIN>ASM</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN AT_WORD_START="TRUE" EXCLUDE_MATCH="FALSE" TYPE="KEYWORD1" DELEGATE="Asm">\r
+ <BEGIN>Asm</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN AT_WORD_START="TRUE" EXCLUDE_MATCH="FALSE" TYPE="KEYWORD1" DELEGATE="Asm">\r
+ <BEGIN>asm_fragment</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ \r
+ <!-- C style comment -->\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ \r
+ <!-- Operators - multi character -->\r
+ <SEQ TYPE="OPERATOR">++</SEQ>\r
+ <SEQ TYPE="OPERATOR">--</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+ <SEQ TYPE="OPERATOR"><<</SEQ>\r
+ <SEQ TYPE="OPERATOR"><<=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+ <SEQ TYPE="OPERATOR">>>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">...</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">*=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+=</SEQ>\r
+ <SEQ TYPE="OPERATOR">-=</SEQ>\r
+ <SEQ TYPE="OPERATOR">%=</SEQ>\r
+ <SEQ TYPE="OPERATOR">&=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|=</SEQ>\r
+ <SEQ TYPE="OPERATOR">^=</SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+\r
+ <!-- Operators - single characters -->\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ \r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" EXCLUDE_MATCH="TRUE">(</MARK_PREVIOUS>\r
+ \r
+ <!-- Swizzle operator for vectors/scalars (a.xyzw OR b.rgba), matrices (c._m00_m01 OR d._11_12) indexing -->\r
+ <SEQ_REGEXP TYPE="OPERATOR" HASH_CHAR=".">.(([xyzw]{1,4})|([rgba]{1,4})|((_m[0123][0123])+)|((_[1234][1234])+))(?!\p{Alnum})</SEQ_REGEXP>\r
+ \r
+ <!-- Atomic, but complex types -->\r
+ <SEQ_REGEXP TYPE="KEYWORD2" AT_WORD_START="TRUE" HASH_CHAR="bool">bool[1234](x[1234])?\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD2" AT_WORD_START="TRUE" HASH_CHAR="int">int[1234](x[1234])?\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD2" AT_WORD_START="TRUE" HASH_CHAR="half">half[1234](x[1234])?\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD2" AT_WORD_START="TRUE" HASH_CHAR="float">float[1234](x[1234])?\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD2" AT_WORD_START="TRUE" HASH_CHAR="double">double[1234](x[1234])?\b</SEQ_REGEXP>\r
+ \r
+ <!-- Semantics -->\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR=":">:\s*(register\s*\(\w+(\s*\,\s*\w+\s*)?\)|\w+)</SEQ_REGEXP>\r
+ \r
+ <KEYWORDS>\r
+ <!-- Control flow keywords -->\r
+ <KEYWORD1>discard</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>typedef</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ \r
+ <!-- Other keywords -->\r
+ <KEYWORD1>compile</KEYWORD1>\r
+ <KEYWORD1>compile_fragment</KEYWORD1>\r
+ <KEYWORD1>register</KEYWORD1>\r
+ <KEYWORD1>sampler_state</KEYWORD1>\r
+ <KEYWORD1>stateblock_state</KEYWORD1>\r
+ <KEYWORD1>technique</KEYWORD1>\r
+ <KEYWORD1>Technique</KEYWORD1>\r
+ <KEYWORD1>TECHNIQUE</KEYWORD1>\r
+ <KEYWORD1>pass</KEYWORD1>\r
+ <KEYWORD1>Pass</KEYWORD1>\r
+ <KEYWORD1>PASS</KEYWORD1>\r
+ <KEYWORD1>decl</KEYWORD1>\r
+ <KEYWORD1>Decl</KEYWORD1>\r
+ <KEYWORD1>DECL</KEYWORD1>\r
+ \r
+ <!-- Atomic type keywords -->\r
+ <KEYWORD2>void</KEYWORD2>\r
+ <KEYWORD2>bool</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>half</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>double</KEYWORD2>\r
+ <KEYWORD2>vector</KEYWORD2>\r
+ <KEYWORD2>matrix</KEYWORD2>\r
+ \r
+ <!-- Object type keywords -->\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>texture</KEYWORD3>\r
+ <KEYWORD3>texture1D</KEYWORD3>\r
+ <KEYWORD3>texture2D</KEYWORD3>\r
+ <KEYWORD3>texture3D</KEYWORD3>\r
+ <KEYWORD3>textureCUBE</KEYWORD3>\r
+ <KEYWORD3>sampler</KEYWORD3>\r
+ <KEYWORD3>sampler1D</KEYWORD3>\r
+ <KEYWORD3>sampler2D</KEYWORD3>\r
+ <KEYWORD3>sampler3D</KEYWORD3>\r
+ <KEYWORD3>samplerCUBE</KEYWORD3>\r
+ <KEYWORD3>pixelfragment</KEYWORD3>\r
+ <KEYWORD3>vertexfragment</KEYWORD3>\r
+ <KEYWORD3>pixelshader</KEYWORD3>\r
+ <KEYWORD3>vertexshader</KEYWORD3>\r
+ <KEYWORD3>stateblock</KEYWORD3>\r
+ <KEYWORD3>struct</KEYWORD3>\r
+\r
+ <!-- Usage keywords -->\r
+ <KEYWORD4>static</KEYWORD4>\r
+ <KEYWORD4>uniform</KEYWORD4>\r
+ <KEYWORD4>extern</KEYWORD4>\r
+ <KEYWORD4>volatile</KEYWORD4>\r
+ <KEYWORD4>inline</KEYWORD4>\r
+ <KEYWORD4>shared</KEYWORD4>\r
+ <KEYWORD4>const</KEYWORD4>\r
+ <KEYWORD4>row_major</KEYWORD4>\r
+ <KEYWORD4>column_major</KEYWORD4>\r
+ <KEYWORD4>in</KEYWORD4>\r
+ <KEYWORD4>inout</KEYWORD4>\r
+ <KEYWORD4>out</KEYWORD4> \r
+ \r
+ <!-- Literals -->\r
+ <LITERAL1>false</LITERAL1>\r
+ <LITERAL1>true</LITERAL1>\r
+ <LITERAL1>NULL</LITERAL1>\r
+ \r
+ <!-- Intrinsic functions -->\r
+ <LITERAL2>abs</LITERAL2>\r
+ <LITERAL2>acos</LITERAL2>\r
+ <LITERAL2>all</LITERAL2>\r
+ <LITERAL2>any</LITERAL2>\r
+ <LITERAL2>asin</LITERAL2>\r
+ <LITERAL2>atan</LITERAL2>\r
+ <LITERAL2>atan2</LITERAL2>\r
+ <LITERAL2>ceil</LITERAL2>\r
+ <LITERAL2>clamp</LITERAL2>\r
+ <LITERAL2>clip</LITERAL2>\r
+ <LITERAL2>cos</LITERAL2>\r
+ <LITERAL2>cosh</LITERAL2>\r
+ <LITERAL2>cross</LITERAL2>\r
+ <LITERAL2>D3DCOLORtoUBYTE4</LITERAL2>\r
+ <LITERAL2>ddx</LITERAL2>\r
+ <LITERAL2>ddy</LITERAL2>\r
+ <LITERAL2>degrees</LITERAL2>\r
+ <LITERAL2>determinant</LITERAL2>\r
+ <LITERAL2>distance</LITERAL2>\r
+ <LITERAL2>dot</LITERAL2>\r
+ <LITERAL2>exp</LITERAL2>\r
+ <LITERAL2>exp2</LITERAL2>\r
+ <LITERAL2>faceforward</LITERAL2>\r
+ <LITERAL2>floor</LITERAL2>\r
+ <LITERAL2>fmod</LITERAL2>\r
+ <LITERAL2>frac</LITERAL2>\r
+ <LITERAL2>frexp</LITERAL2>\r
+ <LITERAL2>fwidth</LITERAL2>\r
+ <LITERAL2>isfinite</LITERAL2>\r
+ <LITERAL2>isinf</LITERAL2>\r
+ <LITERAL2>isnan</LITERAL2>\r
+ <LITERAL2>ldexp</LITERAL2>\r
+ <LITERAL2>length</LITERAL2>\r
+ <LITERAL2>lerp</LITERAL2>\r
+ <LITERAL2>lit</LITERAL2>\r
+ <LITERAL2>log</LITERAL2>\r
+ <LITERAL2>log10</LITERAL2>\r
+ <LITERAL2>log2</LITERAL2>\r
+ <LITERAL2>max</LITERAL2>\r
+ <LITERAL2>min</LITERAL2>\r
+ <LITERAL2>modf</LITERAL2>\r
+ <LITERAL2>mul</LITERAL2>\r
+ <LITERAL2>noise</LITERAL2>\r
+ <LITERAL2>normalize</LITERAL2>\r
+ <LITERAL2>pow</LITERAL2>\r
+ <LITERAL2>radians</LITERAL2>\r
+ <LITERAL2>reflect</LITERAL2>\r
+ <LITERAL2>refract</LITERAL2>\r
+ <LITERAL2>round</LITERAL2>\r
+ <LITERAL2>rsqrt</LITERAL2>\r
+ <LITERAL2>saturate</LITERAL2>\r
+ <LITERAL2>sign</LITERAL2>\r
+ <LITERAL2>sin</LITERAL2>\r
+ <LITERAL2>sincos</LITERAL2>\r
+ <LITERAL2>sinh</LITERAL2>\r
+ <LITERAL2>smoothstep</LITERAL2>\r
+ <LITERAL2>sqrt</LITERAL2>\r
+ <LITERAL2>step</LITERAL2>\r
+ <LITERAL2>tan</LITERAL2>\r
+ <LITERAL2>tanh</LITERAL2>\r
+ <LITERAL2>transpose</LITERAL2>\r
+ \r
+ <!-- Intrinsic functions - sampling -->\r
+ <LITERAL3>tex1D</LITERAL3>\r
+ <LITERAL3>tex1Dgrad</LITERAL3>\r
+ <LITERAL3>tex1Dbias</LITERAL3>\r
+ <LITERAL3>tex1Dgrad</LITERAL3>\r
+ <LITERAL3>tex1Dlod</LITERAL3>\r
+ <LITERAL3>tex1Dproj</LITERAL3>\r
+ <LITERAL3>tex2D</LITERAL3>\r
+ <LITERAL3>tex2D</LITERAL3>\r
+ <LITERAL3>tex2Dbias</LITERAL3>\r
+ <LITERAL3>tex2Dgrad</LITERAL3>\r
+ <LITERAL3>tex2Dlod</LITERAL3>\r
+ <LITERAL3>tex2Dproj</LITERAL3>\r
+ <LITERAL3>tex3D</LITERAL3>\r
+ <LITERAL3>tex3D</LITERAL3>\r
+ <LITERAL3>tex3Dbias</LITERAL3>\r
+ <LITERAL3>tex3Dgrad</LITERAL3>\r
+ <LITERAL3>tex3Dlod</LITERAL3>\r
+ <LITERAL3>tex3Dproj</LITERAL3>\r
+ <LITERAL3>texCUBE</LITERAL3>\r
+ <LITERAL3>texCUBE</LITERAL3>\r
+ <LITERAL3>texCUBEbias</LITERAL3>\r
+ <LITERAL3>texCUBEgrad</LITERAL3>\r
+ <LITERAL3>texCUBElod</LITERAL3>\r
+ <LITERAL3>texCUBEproj</LITERAL3>\r
+\r
+ <!-- Reserved but unused words -->\r
+ <INVALID>auto</INVALID>\r
+ <INVALID>break</INVALID>\r
+ <INVALID>case</INVALID>\r
+ <INVALID>catch</INVALID>\r
+ <INVALID>char</INVALID>\r
+ <INVALID>class</INVALID>\r
+ <INVALID>const_cast</INVALID>\r
+ <INVALID>continue</INVALID>\r
+ <INVALID>default</INVALID>\r
+ <INVALID>delete</INVALID>\r
+ <INVALID>dynamic_cast</INVALID>\r
+ <INVALID>enum</INVALID>\r
+ <INVALID>explicit</INVALID>\r
+ <INVALID>friend</INVALID>\r
+ <INVALID>goto</INVALID>\r
+ <INVALID>long</INVALID>\r
+ <INVALID>mutable</INVALID>\r
+ <INVALID>namespace</INVALID>\r
+ <INVALID>new</INVALID>\r
+ <INVALID>operator</INVALID>\r
+ <INVALID>private</INVALID>\r
+ <INVALID>protected</INVALID>\r
+ <INVALID>public</INVALID>\r
+ <INVALID>reinterpret_cast</INVALID>\r
+ <INVALID>short</INVALID>\r
+ <INVALID>signed</INVALID>\r
+ <INVALID>sizeof</INVALID>\r
+ <INVALID>static_cast</INVALID>\r
+ <INVALID>switch</INVALID>\r
+ <INVALID>template</INVALID>\r
+ <INVALID>this</INVALID>\r
+ <INVALID>throw</INVALID>\r
+ <INVALID>try</INVALID>\r
+ <INVALID>typename</INVALID>\r
+ <INVALID>union</INVALID>\r
+ <INVALID>unsigned</INVALID>\r
+ <INVALID>using</INVALID>\r
+ <INVALID>virtual</INVALID>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="Include" DEFAULT="KEYWORD2" />\r
+\r
+ <RULES\r
+ SET="Preprocessor"\r
+ DEFAULT="KEYWORD2"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="((0x[[:xdigit:]]+|[[:digit:]]+)[uUIL]?|[[:digit:]]+([eE][[:digit:]]*)?[hHfF]?)">\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ \r
+ <!-- this is a hack so that #include <net/if.h> does not get the if highlighted -->\r
+ <EOL_SPAN TYPE="MARKUP" DELEGATE="Include">include</EOL_SPAN>\r
+ \r
+ <KEYWORDS>\r
+ <!-- Directives -->\r
+ <MARKUP>define</MARKUP>\r
+ <MARKUP>elif</MARKUP>\r
+ <MARKUP>else</MARKUP>\r
+ <MARKUP>endif</MARKUP>\r
+ <MARKUP>error</MARKUP>\r
+ <MARKUP>if</MARKUP>\r
+ <MARKUP>ifdef</MARKUP>\r
+ <MARKUP>ifndef</MARKUP>\r
+ <MARKUP>line</MARKUP>\r
+ <MARKUP>pragma</MARKUP>\r
+ <MARKUP>undef</MARKUP>\r
+ \r
+ <!-- Other -->\r
+ <LITERAL1>pack_matrix</LITERAL1>\r
+ <LITERAL1>warning</LITERAL1>\r
+ <LITERAL1>def</LITERAL1>\r
+ <LITERAL1>defined</LITERAL1>\r
+ <LITERAL1>D3DX</LITERAL1>\r
+ <LITERAL1>D3DX_VERSION</LITERAL1>\r
+ <LITERAL1>DIRECT3D</LITERAL1>\r
+ <LITERAL1>DIRECT3D_VERSION</LITERAL1>\r
+ <LITERAL1>__FILE__</LITERAL1>\r
+ <LITERAL1>__LINE__</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="Asm"\r
+ DEFAULT="NULL"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="((0x[[:xdigit:]]+|[[:digit:]]+)[uUIL]?|[[:digit:]]+([eE][[:digit:]]*)?[hHfF]?)">\r
+ \r
+ <!-- Starting... -->\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <!-- Comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;</EOL_SPAN>\r
+\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <!-- Swizzle operator -->\r
+ <SEQ_REGEXP TYPE="OPERATOR" HASH_CHAR=".">.(([xyzw]{1,4}))</SEQ_REGEXP>\r
+ \r
+ <!-- Instruction -->\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="abs">abs(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="add">add(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="bem">bem(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="break_comp">break_comp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="breakp">breakp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="callnz">callnz(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="cmp">cmp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="cnd">cnd(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="crs">crs(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dp2add">dp2add(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dp3">dp3(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dp4">dp4(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dst">dst(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dsx">dsx(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="dsy">dsy(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="else">else(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="endif">endif(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="endloop">endloop(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="endrep">endrep(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="exp">exp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="frc">frc(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="if">if(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="label">label(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="lit">lit(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="logp">logp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="loop">loop(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="lrp">lrp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="m3x2">m3x2(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="m3x3">m3x3(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="m3x4">m3x4(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="m4x3">m4x3(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="m4x4">m4x4(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="mad">mad(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="mov">mov(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="max">max(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="min">min(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="mova">mova(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="mul">mul(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="nop">nop(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="nrm">nrm(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="phase">phase(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="pow">pow(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="rcp">rcp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="rep">rep(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="ret">ret(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="rsq">rsq(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="setp_comp">setp_comp(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="sge">sge(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="sgn">sgn(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="sincos">sincos(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="slt">slt(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="sub">sub(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ <!-- (seen in preshader -->\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="FUNCTION" HASH_CHAR="neg">neg(_pp|_sat|_x2|_x4|_x8|_bx2|_d2|_d4|_d8)*\b</SEQ_REGEXP>\r
+ \r
+ <!-- Texturing instruction -->\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="KEYWORD2" HASH_CHAR="tex">tex\w*</SEQ_REGEXP>\r
+ \r
+ <!-- Main instruction -->\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="KEYWORD1" HASH_CHAR="ps">ps\w*</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="KEYWORD1" HASH_CHAR="vs">vs\w*</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="KEYWORD1" HASH_CHAR="def">def\w*</SEQ_REGEXP>\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" TYPE="KEYWORD1" HASH_CHAR="dcl">dcl\w*</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="noWordSep" VALUE="-" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="FALSE" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="DIRECTIVE">\r
+ <BEGIN><![CDATA[<(\w+)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <KEYWORDS>\r
+\r
+ <KEYWORD1>AcceptPathInfo</KEYWORD1>\r
+ <KEYWORD1>Action</KEYWORD1>\r
+ <KEYWORD1>AddAlt</KEYWORD1>\r
+ <KEYWORD1>AddAltByEncoding</KEYWORD1>\r
+ <KEYWORD1>AddAltByType</KEYWORD1>\r
+ <KEYWORD1>AddCharset</KEYWORD1>\r
+ <KEYWORD1>AddDefaultCharset</KEYWORD1>\r
+ <KEYWORD1>AddDescription</KEYWORD1>\r
+ <KEYWORD1>AddEncoding</KEYWORD1>\r
+ <KEYWORD1>AddHandler</KEYWORD1>\r
+ <KEYWORD1>AddIcon</KEYWORD1>\r
+ <KEYWORD1>AddIconByEncoding</KEYWORD1>\r
+ <KEYWORD1>AddIconByType</KEYWORD1>\r
+ <KEYWORD1>AddInputFilter</KEYWORD1>\r
+ <KEYWORD1>AddLanguage</KEYWORD1>\r
+ <KEYWORD1>AddOutputFilter</KEYWORD1>\r
+ <KEYWORD1>AddOutputFilterByType</KEYWORD1>\r
+ <KEYWORD1>AddType</KEYWORD1>\r
+ <KEYWORD1>Allow</KEYWORD1>\r
+ <KEYWORD1>Anonymous</KEYWORD1>\r
+ <KEYWORD1>Anonymous_Authoritative</KEYWORD1>\r
+ <KEYWORD1>Anonymous_LogEmail</KEYWORD1>\r
+ <KEYWORD1>Anonymous_MustGiveEmail</KEYWORD1>\r
+ <KEYWORD1>Anonymous_NoUserID</KEYWORD1>\r
+ <KEYWORD1>Anonymous_VerifyEmail</KEYWORD1>\r
+ <KEYWORD1>AuthAuthoritative</KEYWORD1>\r
+ <KEYWORD1>AuthDBMAuthoritative</KEYWORD1>\r
+ <KEYWORD1>AuthDBMGroupFile</KEYWORD1>\r
+ <KEYWORD1>AuthDBMType</KEYWORD1>\r
+ <KEYWORD1>AuthDBMUserFile</KEYWORD1>\r
+ <KEYWORD1>AuthDigestAlgorithm</KEYWORD1>\r
+ <KEYWORD1>AuthDigestDomain</KEYWORD1>\r
+ <KEYWORD1>AuthDigestFile</KEYWORD1>\r
+ <KEYWORD1>AuthDigestGroupFile</KEYWORD1>\r
+ <KEYWORD1>AuthDigestNonceFormat</KEYWORD1>\r
+ <KEYWORD1>AuthDigestNonceLifetime</KEYWORD1>\r
+ <KEYWORD1>AuthDigestQop</KEYWORD1>\r
+ <KEYWORD1>AuthGroupFile</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPAuthoritative</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPBindDN</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPBindPassword</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPCompareDNOnServer</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPDereferenceAliases</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPEnabled</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPFrontPageHack</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPGroupAttribute</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPGroupAttributeIsDN</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPRemoteUserIsDN</KEYWORD1>\r
+ <KEYWORD1>AuthLDAPUrl</KEYWORD1>\r
+ <KEYWORD1>AuthName</KEYWORD1>\r
+ <KEYWORD1>AuthType</KEYWORD1>\r
+ <KEYWORD1>AuthUserFile</KEYWORD1>\r
+ <KEYWORD1>BrowserMatch</KEYWORD1>\r
+ <KEYWORD1>BrowserMatchNoCase</KEYWORD1>\r
+ <KEYWORD1>CGIMapExtension</KEYWORD1>\r
+ <KEYWORD1>CharsetDefault</KEYWORD1>\r
+ <KEYWORD1>CharsetOptions</KEYWORD1>\r
+ <KEYWORD1>CharsetSourceEnc</KEYWORD1>\r
+ <KEYWORD1>CheckSpelling</KEYWORD1>\r
+ <KEYWORD1>ContentDigest</KEYWORD1>\r
+ <KEYWORD1>CookieDomain</KEYWORD1>\r
+ <KEYWORD1>CookieExpires</KEYWORD1>\r
+ <KEYWORD1>CookieName</KEYWORD1>\r
+ <KEYWORD1>CookieStyle</KEYWORD1>\r
+ <KEYWORD1>CookieTracking</KEYWORD1>\r
+ <KEYWORD1>DefaultIcon</KEYWORD1>\r
+ <KEYWORD1>DefaultLanguage</KEYWORD1>\r
+ <KEYWORD1>DefaultType</KEYWORD1>\r
+ <KEYWORD1>Deny</KEYWORD1>\r
+ <KEYWORD1>DirectoryIndex</KEYWORD1>\r
+ <KEYWORD1>DirectorySlash</KEYWORD1>\r
+ <KEYWORD1>EnableMMAP</KEYWORD1>\r
+ <KEYWORD1>EnableSendfile</KEYWORD1>\r
+ <KEYWORD1>ErrorDocument</KEYWORD1>\r
+ <KEYWORD1>Example</KEYWORD1>\r
+ <KEYWORD1>ExpiresActive</KEYWORD1>\r
+ <KEYWORD1>ExpiresByType</KEYWORD1>\r
+ <KEYWORD1>ExpiresDefault</KEYWORD1>\r
+ <KEYWORD1>FileETag</KEYWORD1>\r
+ <KEYWORD1>ForceLanguagePriority</KEYWORD1>\r
+ <KEYWORD1>ForceType</KEYWORD1>\r
+ <KEYWORD1>Header</KEYWORD1>\r
+ <KEYWORD1>HeaderName</KEYWORD1>\r
+ <KEYWORD1>ImapBase</KEYWORD1>\r
+ <KEYWORD1>ImapDefault</KEYWORD1>\r
+ <KEYWORD1>ImapMenu</KEYWORD1>\r
+ <KEYWORD1>IndexIgnore</KEYWORD1>\r
+ <KEYWORD1>IndexOptions</KEYWORD1>\r
+ <KEYWORD1>IndexOrderDefault</KEYWORD1>\r
+ <KEYWORD1>ISAPIAppendLogToErrors</KEYWORD1>\r
+ <KEYWORD1>ISAPIAppendLogToQuery</KEYWORD1>\r
+ <KEYWORD1>ISAPIFakeAsync</KEYWORD1>\r
+ <KEYWORD1>ISAPILogNotSupported</KEYWORD1>\r
+ <KEYWORD1>ISAPIReadAheadBuffer</KEYWORD1>\r
+ <KEYWORD1>LanguagePriority</KEYWORD1>\r
+ <KEYWORD1>LimitRequestBody</KEYWORD1>\r
+ <KEYWORD1>LimitXMLRequestBody</KEYWORD1>\r
+ <KEYWORD1>MetaDir</KEYWORD1>\r
+ <KEYWORD1>MetaFiles</KEYWORD1>\r
+ <KEYWORD1>MetaSuffix</KEYWORD1>\r
+ <KEYWORD1>MultiviewsMatch</KEYWORD1>\r
+ <KEYWORD1>Options</KEYWORD1>\r
+ <KEYWORD1>Order</KEYWORD1>\r
+ <KEYWORD1>PassEnv</KEYWORD1>\r
+ <KEYWORD1>ReadmeName</KEYWORD1>\r
+ <KEYWORD1>Redirect</KEYWORD1>\r
+ <KEYWORD1>RedirectMatch</KEYWORD1>\r
+ <KEYWORD1>RedirectPermanent</KEYWORD1>\r
+ <KEYWORD1>RedirectTemp</KEYWORD1>\r
+ <KEYWORD1>RemoveCharset</KEYWORD1>\r
+ <KEYWORD1>RemoveEncoding</KEYWORD1>\r
+ <KEYWORD1>RemoveHandler</KEYWORD1>\r
+ <KEYWORD1>RemoveInputFilter</KEYWORD1>\r
+ <KEYWORD1>RemoveLanguage</KEYWORD1>\r
+ <KEYWORD1>RemoveOutputFilter</KEYWORD1>\r
+ <KEYWORD1>RemoveType</KEYWORD1>\r
+ <KEYWORD1>RequestHeader</KEYWORD1>\r
+ <KEYWORD1>Require</KEYWORD1>\r
+ <KEYWORD1>RewriteBase</KEYWORD1>\r
+ <KEYWORD1>RewriteCond</KEYWORD1>\r
+ <KEYWORD1>RewriteEngine</KEYWORD1>\r
+ <KEYWORD1>RewriteOptions</KEYWORD1>\r
+ <KEYWORD1>RewriteRule</KEYWORD1>\r
+ <KEYWORD1>RLimitCPU</KEYWORD1>\r
+ <KEYWORD1>RLimitMEM</KEYWORD1>\r
+ <KEYWORD1>RLimitNPROC</KEYWORD1>\r
+ <KEYWORD1>Satisfy</KEYWORD1>\r
+ <KEYWORD1>ScriptInterpreterSource</KEYWORD1>\r
+ <KEYWORD1>ServerSignature</KEYWORD1>\r
+ <KEYWORD1>SetEnv</KEYWORD1>\r
+ <KEYWORD1>SetEnvIf</KEYWORD1>\r
+ <KEYWORD1>SetEnvIfNoCase</KEYWORD1>\r
+ <KEYWORD1>SetHandler</KEYWORD1>\r
+ <KEYWORD1>SetInputFilter</KEYWORD1>\r
+ <KEYWORD1>SetOutputFilter</KEYWORD1>\r
+ <KEYWORD1>SSIErrorMsg</KEYWORD1>\r
+ <KEYWORD1>SSITimeFormat</KEYWORD1>\r
+ <KEYWORD1>SSLCipherSuite</KEYWORD1>\r
+ <KEYWORD1>SSLOptions</KEYWORD1>\r
+ <KEYWORD1>SSLProxyCipherSuite</KEYWORD1>\r
+ <KEYWORD1>SSLProxyVerify</KEYWORD1>\r
+ <KEYWORD1>SSLProxyVerifyDepth</KEYWORD1>\r
+ <KEYWORD1>SSLRequire</KEYWORD1>\r
+ <KEYWORD1>SSLRequireSSL</KEYWORD1>\r
+ <KEYWORD1>SSLUserName</KEYWORD1>\r
+ <KEYWORD1>SSLVerifyClient</KEYWORD1>\r
+ <KEYWORD1>SSLVerifyDepth</KEYWORD1>\r
+ <KEYWORD1>UnsetEnv</KEYWORD1>\r
+ <KEYWORD1>XBitHack</KEYWORD1>\r
+\r
+ <LITERAL3>Basic</LITERAL3>\r
+ <LITERAL3>Digest</LITERAL3>\r
+ <LITERAL3>None</LITERAL3>\r
+ <LITERAL3>Off</LITERAL3>\r
+ <LITERAL3>On</LITERAL3>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="DIRECTIVE" DEFAULT="NULL" ESCAPE="\" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="DIRECTIVE">\r
+ <BEGIN><![CDATA[<(\w+)[^>]*>]]></BEGIN>\r
+ <END><![CDATA[</$1>]]></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <KEYWORDS>\r
+\r
+ <KEYWORD2>AcceptMutex</KEYWORD2>\r
+ <KEYWORD2>AcceptPathInfo</KEYWORD2>\r
+ <KEYWORD2>AccessFileName</KEYWORD2>\r
+ <KEYWORD2>Action</KEYWORD2>\r
+ <KEYWORD2>AddAlt</KEYWORD2>\r
+ <KEYWORD2>AddAltByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddAltByType</KEYWORD2>\r
+ <KEYWORD2>AddCharset</KEYWORD2>\r
+ <KEYWORD2>AddDefaultCharset</KEYWORD2>\r
+ <KEYWORD2>AddDescription</KEYWORD2>\r
+ <KEYWORD2>AddEncoding</KEYWORD2>\r
+ <KEYWORD2>AddHandler</KEYWORD2>\r
+ <KEYWORD2>AddIcon</KEYWORD2>\r
+ <KEYWORD2>AddIconByEncoding</KEYWORD2>\r
+ <KEYWORD2>AddIconByType</KEYWORD2>\r
+ <KEYWORD2>AddInputFilter</KEYWORD2>\r
+ <KEYWORD2>AddLanguage</KEYWORD2>\r
+ <KEYWORD2>AddModuleInfo</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilter</KEYWORD2>\r
+ <KEYWORD2>AddOutputFilterByType</KEYWORD2>\r
+ <KEYWORD2>AddType</KEYWORD2>\r
+ <KEYWORD2>Alias</KEYWORD2>\r
+ <KEYWORD2>AliasMatch</KEYWORD2>\r
+ <KEYWORD2>Allow</KEYWORD2>\r
+ <KEYWORD2>AllowCONNECT</KEYWORD2>\r
+ <KEYWORD2>AllowEncodedSlashes</KEYWORD2>\r
+ <KEYWORD2>AllowOverride</KEYWORD2>\r
+ <KEYWORD2>Anonymous</KEYWORD2>\r
+ <KEYWORD2>Anonymous_Authoritative</KEYWORD2>\r
+ <KEYWORD2>Anonymous_LogEmail</KEYWORD2>\r
+ <KEYWORD2>Anonymous_MustGiveEmail</KEYWORD2>\r
+ <KEYWORD2>Anonymous_NoUserID</KEYWORD2>\r
+ <KEYWORD2>Anonymous_VerifyEmail</KEYWORD2>\r
+ <KEYWORD2>AuthAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthDBMAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthDBMGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthDBMType</KEYWORD2>\r
+ <KEYWORD2>AuthDBMUserFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestAlgorithm</KEYWORD2>\r
+ <KEYWORD2>AuthDigestDomain</KEYWORD2>\r
+ <KEYWORD2>AuthDigestFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNcCheck</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNonceFormat</KEYWORD2>\r
+ <KEYWORD2>AuthDigestNonceLifetime</KEYWORD2>\r
+ <KEYWORD2>AuthDigestQop</KEYWORD2>\r
+ <KEYWORD2>AuthDigestShmemSize</KEYWORD2>\r
+ <KEYWORD2>AuthGroupFile</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPAuthoritative</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPBindDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPBindPassword</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPCharsetConfig</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPCompareDNOnServer</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPDereferenceAliases</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPEnabled</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPFrontPageHack</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPGroupAttribute</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPGroupAttributeIsDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPRemoteUserIsDN</KEYWORD2>\r
+ <KEYWORD2>AuthLDAPUrl</KEYWORD2>\r
+ <KEYWORD2>AuthName</KEYWORD2>\r
+ <KEYWORD2>AuthType</KEYWORD2>\r
+ <KEYWORD2>AuthUserFile</KEYWORD2>\r
+ <KEYWORD2>BS2000Account</KEYWORD2>\r
+ <KEYWORD2>BrowserMatch</KEYWORD2>\r
+ <KEYWORD2>BrowserMatchNoCase</KEYWORD2>\r
+ <KEYWORD2>CGIMapExtension</KEYWORD2>\r
+ <KEYWORD2>CacheDefaultExpire</KEYWORD2>\r
+ <KEYWORD2>CacheDirLength</KEYWORD2>\r
+ <KEYWORD2>CacheDirLevels</KEYWORD2>\r
+ <KEYWORD2>CacheDisable</KEYWORD2>\r
+ <KEYWORD2>CacheEnable</KEYWORD2>\r
+ <KEYWORD2>CacheExpiryCheck</KEYWORD2>\r
+ <KEYWORD2>CacheFile</KEYWORD2>\r
+ <KEYWORD2>CacheForceCompletion</KEYWORD2>\r
+ <KEYWORD2>CacheGcClean</KEYWORD2>\r
+ <KEYWORD2>CacheGcDaily</KEYWORD2>\r
+ <KEYWORD2>CacheGcInterval</KEYWORD2>\r
+ <KEYWORD2>CacheGcMemUsage</KEYWORD2>\r
+ <KEYWORD2>CacheGcUnused</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreCacheControl</KEYWORD2>\r
+ <KEYWORD2>CacheIgnoreNoLastMod</KEYWORD2>\r
+ <KEYWORD2>CacheLastModifiedFactor</KEYWORD2>\r
+ <KEYWORD2>CacheMaxExpire</KEYWORD2>\r
+ <KEYWORD2>CacheMaxFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheMinFileSize</KEYWORD2>\r
+ <KEYWORD2>CacheNegotiatedDocs</KEYWORD2>\r
+ <KEYWORD2>CacheRoot</KEYWORD2>\r
+ <KEYWORD2>CacheSize</KEYWORD2>\r
+ <KEYWORD2>CacheTimeMargin</KEYWORD2>\r
+ <KEYWORD2>CharsetDefault</KEYWORD2>\r
+ <KEYWORD2>CharsetOptions</KEYWORD2>\r
+ <KEYWORD2>CharsetSourceEnc</KEYWORD2>\r
+ <KEYWORD2>CheckSpelling</KEYWORD2>\r
+ <KEYWORD2>ChildPerUserID</KEYWORD2>\r
+ <KEYWORD2>ContentDigest</KEYWORD2>\r
+ <KEYWORD2>CookieDomain</KEYWORD2>\r
+ <KEYWORD2>CookieExpires</KEYWORD2>\r
+ <KEYWORD2>CookieLog</KEYWORD2>\r
+ <KEYWORD2>CookieName</KEYWORD2>\r
+ <KEYWORD2>CookieStyle</KEYWORD2>\r
+ <KEYWORD2>CookieTracking</KEYWORD2>\r
+ <KEYWORD2>CoreDumpDirectory</KEYWORD2>\r
+ <KEYWORD2>CustomLog</KEYWORD2>\r
+ <KEYWORD2>Dav</KEYWORD2>\r
+ <KEYWORD2>DavDepthInfinity</KEYWORD2>\r
+ <KEYWORD2>DavLockDB</KEYWORD2>\r
+ <KEYWORD2>DavMinTimeout</KEYWORD2>\r
+ <KEYWORD2>DefaultIcon</KEYWORD2>\r
+ <KEYWORD2>DefaultLanguage</KEYWORD2>\r
+ <KEYWORD2>DefaultType</KEYWORD2>\r
+ <KEYWORD2>DeflateBufferSize</KEYWORD2>\r
+ <KEYWORD2>DeflateCompressionLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateFilterNote</KEYWORD2>\r
+ <KEYWORD2>DeflateMemLevel</KEYWORD2>\r
+ <KEYWORD2>DeflateWindowSize</KEYWORD2>\r
+ <KEYWORD2>Deny</KEYWORD2>\r
+ <KEYWORD2>DirectoryIndex</KEYWORD2>\r
+ <KEYWORD1>DirectorySlash</KEYWORD1>\r
+ <KEYWORD2>DocumentRoot</KEYWORD2>\r
+ <KEYWORD2>EnableMMAP</KEYWORD2>\r
+ <KEYWORD2>EnableSendfile</KEYWORD2>\r
+ <KEYWORD2>ErrorDocument</KEYWORD2>\r
+ <KEYWORD2>ErrorLog</KEYWORD2>\r
+ <KEYWORD2>Example</KEYWORD2>\r
+ <KEYWORD2>ExpiresActive</KEYWORD2>\r
+ <KEYWORD2>ExpiresByType</KEYWORD2>\r
+ <KEYWORD2>ExpiresDefault</KEYWORD2>\r
+ <KEYWORD2>ExtFilterDefine</KEYWORD2>\r
+ <KEYWORD2>ExtFilterOptions</KEYWORD2>\r
+ <KEYWORD2>ExtendedStatus</KEYWORD2>\r
+ <KEYWORD2>FileETag</KEYWORD2>\r
+ <KEYWORD2>ForceLanguagePriority</KEYWORD2>\r
+ <KEYWORD2>ForceType</KEYWORD2>\r
+ <KEYWORD2>Group</KEYWORD2>\r
+ <KEYWORD2>Header</KEYWORD2>\r
+ <KEYWORD2>HeaderName</KEYWORD2>\r
+ <KEYWORD2>HostnameLookups</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToErrors</KEYWORD2>\r
+ <KEYWORD2>ISAPIAppendLogToQuery</KEYWORD2>\r
+ <KEYWORD2>ISAPICacheFile</KEYWORD2>\r
+ <KEYWORD2>ISAPIFakeAsync</KEYWORD2>\r
+ <KEYWORD2>ISAPILogNotSupported</KEYWORD2>\r
+ <KEYWORD2>ISAPIReadAheadBuffer</KEYWORD2>\r
+ <KEYWORD2>IdentityCheck</KEYWORD2>\r
+ <KEYWORD2>ImapBase</KEYWORD2>\r
+ <KEYWORD2>ImapDefault</KEYWORD2>\r
+ <KEYWORD2>ImapMenu</KEYWORD2>\r
+ <KEYWORD2>Include</KEYWORD2>\r
+ <KEYWORD2>IndexIgnore</KEYWORD2>\r
+ <KEYWORD2>IndexOptions</KEYWORD2>\r
+ <KEYWORD2>IndexOrderDefault</KEYWORD2>\r
+ <KEYWORD2>KeepAlive</KEYWORD2>\r
+ <KEYWORD2>KeepAliveTimeout</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheEntries</KEYWORD2>\r
+ <KEYWORD2>LDAPOpCacheTTL</KEYWORD2>\r
+ <KEYWORD2>LDAPSharedCacheSize</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCA</KEYWORD2>\r
+ <KEYWORD2>LDAPTrustedCAType</KEYWORD2>\r
+ <KEYWORD2>LanguagePriority</KEYWORD2>\r
+ <KEYWORD2>LimitInternalRecursion</KEYWORD2>\r
+ <KEYWORD2>LimitRequestBody</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFields</KEYWORD2>\r
+ <KEYWORD2>LimitRequestFieldsize</KEYWORD2>\r
+ <KEYWORD2>LimitRequestLine</KEYWORD2>\r
+ <KEYWORD2>LimitXMLRequestBody</KEYWORD2>\r
+ <KEYWORD2>Listen</KEYWORD2>\r
+ <KEYWORD2>ListenBacklog</KEYWORD2>\r
+ <KEYWORD2>LoadFile</KEYWORD2>\r
+ <KEYWORD2>LoadModule</KEYWORD2>\r
+ <KEYWORD2>LockFile</KEYWORD2>\r
+ <KEYWORD2>LogFormat</KEYWORD2>\r
+ <KEYWORD2>LogLevel</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectCount</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheMaxStreamingBuffer</KEYWORD2>\r
+ <KEYWORD2>MCacheMinObjectSize</KEYWORD2>\r
+ <KEYWORD2>MCacheRemovalAlgorithm</KEYWORD2>\r
+ <KEYWORD2>MCacheSize</KEYWORD2>\r
+ <KEYWORD2>MMapFile</KEYWORD2>\r
+ <KEYWORD2>MaxClients</KEYWORD2>\r
+ <KEYWORD2>MaxKeepAliveRequests</KEYWORD2>\r
+ <KEYWORD2>MaxMemFree</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerChild</KEYWORD2>\r
+ <KEYWORD2>MaxRequestsPerThread</KEYWORD2>\r
+ <KEYWORD2>MaxSpareServers</KEYWORD2>\r
+ <KEYWORD2>MaxSpareThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreads</KEYWORD2>\r
+ <KEYWORD2>MaxThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>MetaDir</KEYWORD2>\r
+ <KEYWORD2>MetaFiles</KEYWORD2>\r
+ <KEYWORD2>MetaSuffix</KEYWORD2>\r
+ <KEYWORD2>MimeMagicFile</KEYWORD2>\r
+ <KEYWORD2>MinSpareServers</KEYWORD2>\r
+ <KEYWORD2>MinSpareThreads</KEYWORD2>\r
+ <KEYWORD2>ModMimeUsePathInfo</KEYWORD2>\r
+ <KEYWORD2>MultiviewsMatch</KEYWORD2>\r
+ <KEYWORD2>NWSSLTrustedCerts</KEYWORD2>\r
+ <KEYWORD2>NameVirtualHost</KEYWORD2>\r
+ <KEYWORD2>NoProxy</KEYWORD2>\r
+ <KEYWORD2>NumServers</KEYWORD2>\r
+ <KEYWORD2>Options</KEYWORD2>\r
+ <KEYWORD2>Order</KEYWORD2>\r
+ <KEYWORD2>PassEnv</KEYWORD2>\r
+ <KEYWORD2>PidFile</KEYWORD2>\r
+ <KEYWORD2>ProtocolEcho</KEYWORD2>\r
+ <KEYWORD2>ProxyBadHeader</KEYWORD2>\r
+ <KEYWORD2>ProxyBlock</KEYWORD2>\r
+ <KEYWORD2>ProxyDomain</KEYWORD2>\r
+ <KEYWORD2>ProxyErrorOverride</KEYWORD2>\r
+ <KEYWORD2>ProxyIOBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyMaxForwards</KEYWORD2>\r
+ <KEYWORD2>ProxyPass</KEYWORD2>\r
+ <KEYWORD2>ProxyPassReverse</KEYWORD2>\r
+ <KEYWORD2>ProxyPreserveHost</KEYWORD2>\r
+ <KEYWORD2>ProxyReceiveBufferSize</KEYWORD2>\r
+ <KEYWORD2>ProxyRemote</KEYWORD2>\r
+ <KEYWORD2>ProxyRemoteMatch</KEYWORD2>\r
+ <KEYWORD2>ProxyRequests</KEYWORD2>\r
+ <KEYWORD2>ProxyTimeout</KEYWORD2>\r
+ <KEYWORD2>ProxyVia</KEYWORD2>\r
+ <KEYWORD2>RLimitCPU</KEYWORD2>\r
+ <KEYWORD2>RLimitMEM</KEYWORD2>\r
+ <KEYWORD2>RLimitNPROC</KEYWORD2>\r
+ <KEYWORD2>ReadmeName</KEYWORD2>\r
+ <KEYWORD2>Redirect</KEYWORD2>\r
+ <KEYWORD2>RedirectMatch</KEYWORD2>\r
+ <KEYWORD2>RedirectPermanent</KEYWORD2>\r
+ <KEYWORD2>RedirectTemp</KEYWORD2>\r
+ <KEYWORD2>RemoveCharset</KEYWORD2>\r
+ <KEYWORD2>RemoveEncoding</KEYWORD2>\r
+ <KEYWORD2>RemoveHandler</KEYWORD2>\r
+ <KEYWORD2>RemoveInputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveLanguage</KEYWORD2>\r
+ <KEYWORD2>RemoveOutputFilter</KEYWORD2>\r
+ <KEYWORD2>RemoveType</KEYWORD2>\r
+ <KEYWORD2>RequestHeader</KEYWORD2>\r
+ <KEYWORD2>Require</KEYWORD2>\r
+ <KEYWORD2>RewriteBase</KEYWORD2>\r
+ <KEYWORD2>RewriteCond</KEYWORD2>\r
+ <KEYWORD2>RewriteEngine</KEYWORD2>\r
+ <KEYWORD2>RewriteLock</KEYWORD2>\r
+ <KEYWORD2>RewriteLog</KEYWORD2>\r
+ <KEYWORD2>RewriteLogLevel</KEYWORD2>\r
+ <KEYWORD2>RewriteMap</KEYWORD2>\r
+ <KEYWORD2>RewriteOptions</KEYWORD2>\r
+ <KEYWORD2>RewriteRule</KEYWORD2>\r
+ <KEYWORD2>SSIEndTag</KEYWORD2>\r
+ <KEYWORD2>SSIErrorMsg</KEYWORD2>\r
+ <KEYWORD2>SSIStartTag</KEYWORD2>\r
+ <KEYWORD2>SSITimeFormat</KEYWORD2>\r
+ <KEYWORD2>SSIUndefinedEcho</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateChainFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLCertificateKeyFile</KEYWORD2>\r
+ <KEYWORD2>SSLCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLEngine</KEYWORD2>\r
+ <KEYWORD2>SSLMutex</KEYWORD2>\r
+ <KEYWORD2>SSLOptions</KEYWORD2>\r
+ <KEYWORD2>SSLPassPhraseDialog</KEYWORD2>\r
+ <KEYWORD2>SSLProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCACertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCARevocationPath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyCipherSuite</KEYWORD2>\r
+ <KEYWORD2>SSLProxyEngine</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificateFile</KEYWORD2>\r
+ <KEYWORD2>SSLProxyMachineCertificatePath</KEYWORD2>\r
+ <KEYWORD2>SSLProxyProtocol</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerify</KEYWORD2>\r
+ <KEYWORD2>SSLProxyVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>SSLRandomSeed</KEYWORD2>\r
+ <KEYWORD2>SSLRequire</KEYWORD2>\r
+ <KEYWORD2>SSLRequireSSL</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCache</KEYWORD2>\r
+ <KEYWORD2>SSLSessionCacheTimeout</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyClient</KEYWORD2>\r
+ <KEYWORD2>SSLVerifyDepth</KEYWORD2>\r
+ <KEYWORD2>Satisfy</KEYWORD2>\r
+ <KEYWORD2>ScoreBoardFile</KEYWORD2>\r
+ <KEYWORD2>Script</KEYWORD2>\r
+ <KEYWORD2>ScriptAlias</KEYWORD2>\r
+ <KEYWORD2>ScriptAliasMatch</KEYWORD2>\r
+ <KEYWORD2>ScriptInterpreterSource</KEYWORD2>\r
+ <KEYWORD2>ScriptLog</KEYWORD2>\r
+ <KEYWORD2>ScriptLogBuffer</KEYWORD2>\r
+ <KEYWORD2>ScriptLogLength</KEYWORD2>\r
+ <KEYWORD2>ScriptSock</KEYWORD2>\r
+ <KEYWORD2>SecureListen</KEYWORD2>\r
+ <KEYWORD2>SendBufferSize</KEYWORD2>\r
+ <KEYWORD2>ServerAdmin</KEYWORD2>\r
+ <KEYWORD2>ServerLimit</KEYWORD2>\r
+ <KEYWORD2>ServerName</KEYWORD2>\r
+ <KEYWORD2>ServerRoot</KEYWORD2>\r
+ <KEYWORD2>ServerSignature</KEYWORD2>\r
+ <KEYWORD2>ServerTokens</KEYWORD2>\r
+ <KEYWORD2>SetEnv</KEYWORD2>\r
+ <KEYWORD2>SetEnvIf</KEYWORD2>\r
+ <KEYWORD2>SetEnvIfNoCase</KEYWORD2>\r
+ <KEYWORD2>SetHandler</KEYWORD2>\r
+ <KEYWORD2>SetInputFilter</KEYWORD2>\r
+ <KEYWORD2>SetOutputFilter</KEYWORD2>\r
+ <KEYWORD2>StartServers</KEYWORD2>\r
+ <KEYWORD2>StartThreads</KEYWORD2>\r
+ <KEYWORD2>SuexecUserGroup</KEYWORD2>\r
+ <KEYWORD2>ThreadLimit</KEYWORD2>\r
+ <KEYWORD2>ThreadStackSize</KEYWORD2>\r
+ <KEYWORD2>ThreadsPerChild</KEYWORD2>\r
+ <KEYWORD2>TimeOut</KEYWORD2>\r
+ <KEYWORD2>TransferLog</KEYWORD2>\r
+ <KEYWORD2>TypesConfig</KEYWORD2>\r
+ <KEYWORD2>UnsetEnv</KEYWORD2>\r
+ <KEYWORD2>UseCanonicalName</KEYWORD2>\r
+ <KEYWORD2>User</KEYWORD2>\r
+ <KEYWORD2>UserDir</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRoot</KEYWORD2>\r
+ <KEYWORD2>VirtualDocumentRootIP</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAlias</KEYWORD2>\r
+ <KEYWORD2>VirtualScriptAliasIP</KEYWORD2>\r
+ <KEYWORD2>XBitHack</KEYWORD2>\r
+\r
+ <!-- Apache 1.x -->\r
+ <!-- using 4 for apache 1.x vs 2.x -->\r
+ <KEYWORD4>AddModule</KEYWORD4>\r
+ <KEYWORD4>ClearModuleList</KEYWORD4>\r
+\r
+ <!-- Subversion directives -->\r
+ <KEYWORD3>SVNPath</KEYWORD3>\r
+ <KEYWORD3>SVNParentPath</KEYWORD3>\r
+ <KEYWORD3>SVNIndexXSLT</KEYWORD3>\r
+\r
+ <!-- mod_python directives -->\r
+ <KEYWORD3>PythonHandler</KEYWORD3>\r
+ <KEYWORD3>PythonDebug</KEYWORD3>\r
+\r
+ <!-- mod_php -->\r
+ <KEYWORD3>php_value</KEYWORD3>\r
+ <!-- using 4 for apache 1.x vs 2.x -->\r
+ <KEYWORD4>php_flag</KEYWORD4>\r
+\r
+ <LITERAL2>All</LITERAL2>\r
+ <LITERAL2>ExecCGI</LITERAL2>\r
+ <LITERAL2>FollowSymLinks</LITERAL2>\r
+ <LITERAL2>Includes</LITERAL2>\r
+ <LITERAL2>IncludesNOEXEC</LITERAL2>\r
+ <LITERAL2>Indexes</LITERAL2>\r
+ <LITERAL2>MultiViews</LITERAL2>\r
+ <LITERAL2>None</LITERAL2>\r
+ <LITERAL2>Off</LITERAL2>\r
+ <LITERAL2>On</LITERAL2>\r
+ <LITERAL2>SymLinksIfOwnerMatch</LITERAL2>\r
+ <LITERAL2>from</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ESCAPE is not exactly right but it is needed to correctly\r
+ handle JavaScript in on* parameters -->\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- HTML/XHTML elements, taken from http://de.selfhtml.org/html/referenz/elemente.htm -->\r
+ <KEYWORD1>fieldset</KEYWORD1>\r
+ <KEYWORD1>a</KEYWORD1>\r
+ <KEYWORD1>abbr</KEYWORD1>\r
+ <KEYWORD1>acronym</KEYWORD1>\r
+ <KEYWORD1>address</KEYWORD1>\r
+ <KEYWORD1>applet</KEYWORD1>\r
+ <KEYWORD1>area</KEYWORD1>\r
+ <KEYWORD1>b</KEYWORD1>\r
+ <KEYWORD1>base</KEYWORD1>\r
+ <KEYWORD1>basefont</KEYWORD1>\r
+ <KEYWORD1>bdo</KEYWORD1>\r
+ <KEYWORD1>big</KEYWORD1>\r
+ <KEYWORD1>blockquote</KEYWORD1>\r
+ <KEYWORD1>body</KEYWORD1>\r
+ <KEYWORD1>br</KEYWORD1>\r
+ <KEYWORD1>button</KEYWORD1>\r
+ <KEYWORD1>caption</KEYWORD1>\r
+ <KEYWORD1>center</KEYWORD1>\r
+ <KEYWORD1>cite</KEYWORD1>\r
+ <KEYWORD1>code</KEYWORD1>\r
+ <KEYWORD1>col</KEYWORD1>\r
+ <KEYWORD1>colgroup</KEYWORD1>\r
+ <KEYWORD1>dd</KEYWORD1>\r
+ <KEYWORD1>del</KEYWORD1>\r
+ <KEYWORD1>dfn</KEYWORD1>\r
+ <KEYWORD1>dir</KEYWORD1>\r
+ <KEYWORD1>div</KEYWORD1>\r
+ <KEYWORD1>dl</KEYWORD1>\r
+ <KEYWORD1>dt</KEYWORD1>\r
+ <KEYWORD1>em</KEYWORD1>\r
+ <KEYWORD1>fieldset</KEYWORD1>\r
+ <KEYWORD1>font</KEYWORD1>\r
+ <KEYWORD1>form</KEYWORD1>\r
+ <KEYWORD1>frame</KEYWORD1>\r
+ <KEYWORD1>frameset</KEYWORD1>\r
+ <KEYWORD1>h1</KEYWORD1>\r
+ <KEYWORD1>h2</KEYWORD1>\r
+ <KEYWORD1>h3</KEYWORD1>\r
+ <KEYWORD1>h4</KEYWORD1>\r
+ <KEYWORD1>h5</KEYWORD1>\r
+ <KEYWORD1>h6</KEYWORD1>\r
+ <KEYWORD1>head</KEYWORD1>\r
+ <KEYWORD1>hr</KEYWORD1>\r
+ <KEYWORD1>html</KEYWORD1>\r
+ <KEYWORD1>i</KEYWORD1>\r
+ <KEYWORD1>iframe</KEYWORD1>\r
+ <KEYWORD1>img</KEYWORD1>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD1>ins</KEYWORD1>\r
+ <KEYWORD1>isindex</KEYWORD1>\r
+ <KEYWORD1>kbd</KEYWORD1>\r
+ <KEYWORD1>label</KEYWORD1>\r
+ <KEYWORD1>legend</KEYWORD1>\r
+ <KEYWORD1>li</KEYWORD1>\r
+ <KEYWORD1>link</KEYWORD1>\r
+ <KEYWORD1>map</KEYWORD1>\r
+ <KEYWORD1>menu</KEYWORD1>\r
+ <KEYWORD1>meta</KEYWORD1>\r
+ <KEYWORD1>noframes</KEYWORD1>\r
+ <KEYWORD1>noscript</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>ol</KEYWORD1>\r
+ <KEYWORD1>optgroup</KEYWORD1>\r
+ <KEYWORD1>option</KEYWORD1>\r
+ <KEYWORD1>p</KEYWORD1>\r
+ <KEYWORD1>param</KEYWORD1>\r
+ <KEYWORD1>pre</KEYWORD1>\r
+ <KEYWORD1>q</KEYWORD1>\r
+ <KEYWORD1>s</KEYWORD1>\r
+ <KEYWORD1>samp</KEYWORD1>\r
+ <KEYWORD1>script</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>small</KEYWORD1>\r
+ <KEYWORD1>span</KEYWORD1>\r
+ <KEYWORD1>strike</KEYWORD1>\r
+ <KEYWORD1>strong</KEYWORD1>\r
+ <KEYWORD1>style</KEYWORD1>\r
+ <KEYWORD1>sub</KEYWORD1>\r
+ <KEYWORD1>sup</KEYWORD1>\r
+ <KEYWORD1>table</KEYWORD1>\r
+ <KEYWORD1>tbody</KEYWORD1>\r
+ <KEYWORD1>td</KEYWORD1>\r
+ <KEYWORD1>textarea</KEYWORD1>\r
+ <KEYWORD1>tfoot</KEYWORD1>\r
+ <KEYWORD1>th</KEYWORD1>\r
+ <KEYWORD1>thead</KEYWORD1>\r
+ <KEYWORD1>title</KEYWORD1>\r
+ <KEYWORD1>tr</KEYWORD1>\r
+ <KEYWORD1>tt</KEYWORD1>\r
+ <KEYWORD1>u</KEYWORD1>\r
+ <KEYWORD1>ul</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="JAVASCRIPT" DEFAULT="MARKUP" IGNORE_CASE="TRUE">\r
+ <SEQ TYPE="MARKUP" DELEGATE="javascript::MAIN">></SEQ>\r
+ <!-- handle <SCRIPT SRC="..."> properly -->\r
+ <SEQ TYPE="MARKUP" DELEGATE="BACK_TO_HTML">SRC=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="BACK_TO_HTML" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="html::MAIN">></SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="css::MAIN">></SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- i4gl.xml -->\r
+<!-- Informix 4GL mode, by Jozsa Stefan, joozsa@flash.ro -->\r
+<!-- Based on 'reserved.Z' from www.iiug.org by J.Leffler -->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="{" />\r
+ <PROPERTY NAME="commentEnd" VALUE="}" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <PROPERTY NAME="noWordSep" VALUE="_" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <!-- <SEQ TYPE="NULL">(</SEQ> -->\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">.</SEQ>\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+\r
+ <!-- 4GL Reserved Keywords. -->\r
+ <!-- Many keywords because SQL is embeded in 4GL -->\r
+ <KEYWORD1>ABORT</KEYWORD1>\r
+ <KEYWORD1>ABS</KEYWORD1>\r
+ <KEYWORD1>ABSOLUTE</KEYWORD1>\r
+ <KEYWORD1>ACCEPT</KEYWORD1>\r
+ <KEYWORD1>ACCESS</KEYWORD1>\r
+ <KEYWORD1>ACOS</KEYWORD1>\r
+ <KEYWORD1>ADA</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>AFTER</KEYWORD1>\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>ALLOCATE</KEYWORD1>\r
+ <KEYWORD1>ALTER</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>ANSI</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>APPEND</KEYWORD1>\r
+ <KEYWORD1>ARG_VAL</KEYWORD1>\r
+ <KEYWORD1>ARRAY</KEYWORD1>\r
+ <KEYWORD1>ARR_COUNT</KEYWORD1>\r
+ <KEYWORD1>ARR_CURR</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>ASC</KEYWORD1>\r
+ <KEYWORD1>ASCENDING</KEYWORD1>\r
+ <KEYWORD1>ASCII</KEYWORD1>\r
+ <KEYWORD1>ASIN</KEYWORD1>\r
+ <KEYWORD1>AT</KEYWORD1>\r
+ <KEYWORD1>ATAN</KEYWORD1>\r
+ <KEYWORD1>ATAN2</KEYWORD1>\r
+ <KEYWORD1>ATTACH</KEYWORD1>\r
+ <KEYWORD1>ATTRIBUTE</KEYWORD1>\r
+ <KEYWORD1>ATTRIBUTES</KEYWORD1>\r
+ <KEYWORD1>AUDIT</KEYWORD1>\r
+ <KEYWORD1>AUTHORIZATION</KEYWORD1>\r
+ <KEYWORD1>AUTO</KEYWORD1>\r
+ <KEYWORD1>AUTONEXT</KEYWORD1>\r
+ <KEYWORD1>AVERAGE</KEYWORD1>\r
+ <KEYWORD1>AVG</KEYWORD1>\r
+ <KEYWORD1>BEFORE</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>BETWEEN</KEYWORD1>\r
+ <KEYWORD1>BLACK</KEYWORD1>\r
+ <KEYWORD1>BLINK</KEYWORD1>\r
+ <KEYWORD1>BLUE</KEYWORD1>\r
+ <KEYWORD1>BOLD</KEYWORD1>\r
+ <KEYWORD1>BORDER</KEYWORD1>\r
+ <KEYWORD1>BOTH</KEYWORD1>\r
+ <KEYWORD1>BOTTOM</KEYWORD1>\r
+ <KEYWORD1>BREAK</KEYWORD1>\r
+ <KEYWORD1>BUFFERED</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>BYTE</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>CASCADE</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>CHAR</KEYWORD1>\r
+ <KEYWORD1>CHARACTER</KEYWORD1>\r
+ <KEYWORD1>CHARACTER_LENGTH</KEYWORD1>\r
+ <KEYWORD1>CHAR_LENGTH</KEYWORD1>\r
+ <KEYWORD1>CHECK</KEYWORD1>\r
+ <KEYWORD1>CLASS_ORIGIN</KEYWORD1>\r
+ <KEYWORD1>CLEAR</KEYWORD1>\r
+ <KEYWORD1>CLIPPED</KEYWORD1>\r
+ <KEYWORD1>CLOSE</KEYWORD1>\r
+ <KEYWORD1>CLUSTER</KEYWORD1>\r
+ <KEYWORD1>COBOL</KEYWORD1>\r
+ <KEYWORD1>COLOR</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ <KEYWORD1>COLUMNS</KEYWORD1>\r
+ <KEYWORD1>COMMAND</KEYWORD1>\r
+ <KEYWORD1>COMMENT</KEYWORD1>\r
+ <KEYWORD1>COMMENTS</KEYWORD1>\r
+ <KEYWORD1>COMMIT</KEYWORD1>\r
+ <KEYWORD1>COMMITTED</KEYWORD1>\r
+ <KEYWORD1>COMPOSITES</KEYWORD1>\r
+ <KEYWORD1>COMPRESS</KEYWORD1>\r
+ <KEYWORD1>CONCURRENT</KEYWORD1>\r
+ <KEYWORD1>CONNECT</KEYWORD1>\r
+ <KEYWORD1>CONNECTION</KEYWORD1>\r
+ <KEYWORD1>CONNECTION_ALIAS</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINED</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINT</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINTS</KEYWORD1>\r
+ <KEYWORD1>CONSTRUCT</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONTROL</KEYWORD1>\r
+ <KEYWORD1>COS</KEYWORD1>\r
+ <KEYWORD1>COUNT</KEYWORD1>\r
+ <KEYWORD1>CREATE</KEYWORD1>\r
+ <KEYWORD1>CURRENT</KEYWORD1>\r
+ <KEYWORD1>CURSOR</KEYWORD1>\r
+ <KEYWORD1>CYAN</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>DATABASE</KEYWORD1>\r
+ <KEYWORD1>DATASKIP</KEYWORD1>\r
+ <KEYWORD1>DATE</KEYWORD1>\r
+ <KEYWORD1>DATETIME</KEYWORD1>\r
+ <KEYWORD1>DAY</KEYWORD1>\r
+ <KEYWORD1>DBA</KEYWORD1>\r
+ <KEYWORD1>DBINFO</KEYWORD1>\r
+ <KEYWORD1>DBSERVERNAME</KEYWORD1>\r
+ <KEYWORD1>DEALLOCATE</KEYWORD1>\r
+ <KEYWORD1>DEBUG</KEYWORD1>\r
+ <KEYWORD1>DEC</KEYWORD1>\r
+ <KEYWORD1>DECIMAL</KEYWORD1>\r
+ <KEYWORD1>DECLARE</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>DEFAULTS</KEYWORD1>\r
+ <KEYWORD1>DEFER</KEYWORD1>\r
+ <KEYWORD1>DEFERRED</KEYWORD1>\r
+ <KEYWORD1>DEFINE</KEYWORD1>\r
+ <KEYWORD1>DELETE</KEYWORD1>\r
+ <KEYWORD1>DELIMITER</KEYWORD1>\r
+ <KEYWORD1>DELIMITERS</KEYWORD1>\r
+ <KEYWORD1>DESC</KEYWORD1>\r
+ <KEYWORD1>DESCENDING</KEYWORD1>\r
+ <KEYWORD1>DESCRIBE</KEYWORD1>\r
+ <KEYWORD1>DESCRIPTOR</KEYWORD1>\r
+ <KEYWORD1>DETACH</KEYWORD1>\r
+ <KEYWORD1>DIAGNOSTICS</KEYWORD1>\r
+ <KEYWORD1>DIM</KEYWORD1>\r
+ <KEYWORD1>DIRTY</KEYWORD1>\r
+ <KEYWORD1>DISABLED</KEYWORD1>\r
+ <KEYWORD1>DISCONNECT</KEYWORD1>\r
+ <KEYWORD1>DISPLAY</KEYWORD1>\r
+ <KEYWORD1>DISTINCT</KEYWORD1>\r
+ <KEYWORD1>DISTRIBUTIONS</KEYWORD1>\r
+ <KEYWORD1>DO</KEYWORD1>\r
+ <KEYWORD1>DORMANT</KEYWORD1>\r
+ <KEYWORD1>DOUBLE</KEYWORD1>\r
+ <KEYWORD1>DOWN</KEYWORD1>\r
+ <KEYWORD1>DOWNSHIFT</KEYWORD1>\r
+ <KEYWORD1>DROP</KEYWORD1>\r
+ <KEYWORD1>EACH</KEYWORD1>\r
+ <KEYWORD1>ELIF</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ENABLED</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ENTRY</KEYWORD1>\r
+ <KEYWORD1>ERROR</KEYWORD1>\r
+ <KEYWORD1>ERRORLOG</KEYWORD1>\r
+ <KEYWORD1>ERR_GET</KEYWORD1>\r
+ <KEYWORD1>ERR_PRINT</KEYWORD1>\r
+ <KEYWORD1>ERR_QUIT</KEYWORD1>\r
+ <KEYWORD1>ESC</KEYWORD1>\r
+ <KEYWORD1>ESCAPE</KEYWORD1>\r
+ <KEYWORD1>EVERY</KEYWORD1>\r
+ <KEYWORD1>EXCEPTION</KEYWORD1>\r
+ <KEYWORD1>EXCLUSIVE</KEYWORD1>\r
+ <KEYWORD1>EXEC</KEYWORD1>\r
+ <KEYWORD1>EXECUTE</KEYWORD1>\r
+ <KEYWORD1>EXISTS</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>EXP</KEYWORD1>\r
+ <KEYWORD1>EXPLAIN</KEYWORD1>\r
+ <KEYWORD1>EXPRESSION</KEYWORD1>\r
+ <KEYWORD1>EXTEND</KEYWORD1>\r
+ <KEYWORD1>EXTENT</KEYWORD1>\r
+ <KEYWORD1>EXTERN</KEYWORD1>\r
+ <KEYWORD1>EXTERNAL</KEYWORD1>\r
+ <KEYWORD1>F1</KEYWORD1>\r
+ <KEYWORD1>F10</KEYWORD1>\r
+ <KEYWORD1>F11</KEYWORD1>\r
+ <KEYWORD1>F12</KEYWORD1>\r
+ <KEYWORD1>F13</KEYWORD1>\r
+ <KEYWORD1>F14</KEYWORD1>\r
+ <KEYWORD1>F15</KEYWORD1>\r
+ <KEYWORD1>F16</KEYWORD1>\r
+ <KEYWORD1>F17</KEYWORD1>\r
+ <KEYWORD1>F18</KEYWORD1>\r
+ <KEYWORD1>F19</KEYWORD1>\r
+ <KEYWORD1>F2</KEYWORD1>\r
+ <KEYWORD1>F20</KEYWORD1>\r
+ <KEYWORD1>F21</KEYWORD1>\r
+ <KEYWORD1>F22</KEYWORD1>\r
+ <KEYWORD1>F23</KEYWORD1>\r
+ <KEYWORD1>F24</KEYWORD1>\r
+ <KEYWORD1>F25</KEYWORD1>\r
+ <KEYWORD1>F26</KEYWORD1>\r
+ <KEYWORD1>F27</KEYWORD1>\r
+ <KEYWORD1>F28</KEYWORD1>\r
+ <KEYWORD1>F29</KEYWORD1>\r
+ <KEYWORD1>F3</KEYWORD1>\r
+ <KEYWORD1>F30</KEYWORD1>\r
+ <KEYWORD1>F31</KEYWORD1>\r
+ <KEYWORD1>F32</KEYWORD1>\r
+ <KEYWORD1>F33</KEYWORD1>\r
+ <KEYWORD1>F34</KEYWORD1>\r
+ <KEYWORD1>F35</KEYWORD1>\r
+ <KEYWORD1>F36</KEYWORD1>\r
+ <KEYWORD1>F37</KEYWORD1>\r
+ <KEYWORD1>F38</KEYWORD1>\r
+ <KEYWORD1>F39</KEYWORD1>\r
+ <KEYWORD1>F4</KEYWORD1>\r
+ <KEYWORD1>F40</KEYWORD1>\r
+ <KEYWORD1>F41</KEYWORD1>\r
+ <KEYWORD1>F42</KEYWORD1>\r
+ <KEYWORD1>F43</KEYWORD1>\r
+ <KEYWORD1>F44</KEYWORD1>\r
+ <KEYWORD1>F45</KEYWORD1>\r
+ <KEYWORD1>F46</KEYWORD1>\r
+ <KEYWORD1>F47</KEYWORD1>\r
+ <KEYWORD1>F48</KEYWORD1>\r
+ <KEYWORD1>F49</KEYWORD1>\r
+ <KEYWORD1>F5</KEYWORD1>\r
+ <KEYWORD1>F50</KEYWORD1>\r
+ <KEYWORD1>F51</KEYWORD1>\r
+ <KEYWORD1>F52</KEYWORD1>\r
+ <KEYWORD1>F53</KEYWORD1>\r
+ <KEYWORD1>F54</KEYWORD1>\r
+ <KEYWORD1>F55</KEYWORD1>\r
+ <KEYWORD1>F56</KEYWORD1>\r
+ <KEYWORD1>F57</KEYWORD1>\r
+ <KEYWORD1>F58</KEYWORD1>\r
+ <KEYWORD1>F59</KEYWORD1>\r
+ <KEYWORD1>F6</KEYWORD1>\r
+ <KEYWORD1>F60</KEYWORD1>\r
+ <KEYWORD1>F61</KEYWORD1>\r
+ <KEYWORD1>F62</KEYWORD1>\r
+ <KEYWORD1>F63</KEYWORD1>\r
+ <KEYWORD1>F64</KEYWORD1>\r
+ <KEYWORD1>F7</KEYWORD1>\r
+ <KEYWORD1>F8</KEYWORD1>\r
+ <KEYWORD1>F9</KEYWORD1>\r
+ <KEYWORD1>FALSE</KEYWORD1>\r
+ <KEYWORD1>FETCH</KEYWORD1>\r
+ <KEYWORD1>FGL_GETENV</KEYWORD1>\r
+ <KEYWORD1>FGL_KEYVAL</KEYWORD1>\r
+ <KEYWORD1>FGL_LASTKEY</KEYWORD1>\r
+ <KEYWORD1>FIELD</KEYWORD1>\r
+ <KEYWORD1>FIELD_TOUCHED</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILLFACTOR</KEYWORD1>\r
+ <KEYWORD1>FILTERING</KEYWORD1>\r
+ <KEYWORD1>FINISH</KEYWORD1>\r
+ <KEYWORD1>FIRST</KEYWORD1>\r
+ <KEYWORD1>FLOAT</KEYWORD1>\r
+ <KEYWORD1>FLUSH</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FOREACH</KEYWORD1>\r
+ <KEYWORD1>FOREIGN</KEYWORD1>\r
+ <KEYWORD1>FORM</KEYWORD1>\r
+ <KEYWORD1>FORMAT</KEYWORD1>\r
+ <KEYWORD1>FORMONLY</KEYWORD1>\r
+ <KEYWORD1>FORTRAN</KEYWORD1>\r
+ <KEYWORD1>FOUND</KEYWORD1>\r
+ <KEYWORD1>FRACTION</KEYWORD1>\r
+ <KEYWORD1>FRAGMENT</KEYWORD1>\r
+ <KEYWORD1>FREE</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+ <KEYWORD1>GET_FLDBUF</KEYWORD1>\r
+ <KEYWORD1>GLOBAL</KEYWORD1>\r
+ <KEYWORD1>GLOBALS</KEYWORD1>\r
+ <KEYWORD1>GO</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>GRANT</KEYWORD1>\r
+ <KEYWORD1>GREEN</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>HAVING</KEYWORD1>\r
+ <KEYWORD1>HEADER</KEYWORD1>\r
+ <KEYWORD1>HELP</KEYWORD1>\r
+ <KEYWORD1>HEX</KEYWORD1>\r
+ <KEYWORD1>HIDE</KEYWORD1>\r
+ <KEYWORD1>HIGH</KEYWORD1>\r
+ <KEYWORD1>HOLD</KEYWORD1>\r
+ <KEYWORD1>HOUR</KEYWORD1>\r
+ <KEYWORD1>IDATA</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>ILENGTH</KEYWORD1>\r
+ <KEYWORD1>IMMEDIATE</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>INDEXES</KEYWORD1>\r
+ <KEYWORD1>INDICATOR</KEYWORD1>\r
+ <KEYWORD1>INFIELD</KEYWORD1>\r
+ <KEYWORD1>INIT</KEYWORD1>\r
+ <KEYWORD1>INITIALIZE</KEYWORD1>\r
+ <KEYWORD1>INPUT</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INSTRUCTIONS</KEYWORD1>\r
+ <KEYWORD1>INT</KEYWORD1>\r
+ <KEYWORD1>INTEGER</KEYWORD1>\r
+ <KEYWORD1>INTERRUPT</KEYWORD1>\r
+ <KEYWORD1>INTERVAL</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>INT_FLAG</KEYWORD1>\r
+ <KEYWORD1>INVISIBLE</KEYWORD1>\r
+ <KEYWORD1>IS</KEYWORD1>\r
+ <KEYWORD1>ISAM</KEYWORD1>\r
+ <KEYWORD1>ISOLATION</KEYWORD1>\r
+ <KEYWORD1>ITYPE</KEYWORD1>\r
+ <KEYWORD1>KEY</KEYWORD1>\r
+ <KEYWORD1>LABEL</KEYWORD1>\r
+ <KEYWORD1>LANGUAGE</KEYWORD1>\r
+ <KEYWORD1>LAST</KEYWORD1>\r
+ <KEYWORD1>LEADING</KEYWORD1>\r
+ <KEYWORD1>LEFT</KEYWORD1>\r
+ <KEYWORD1>LENGTH</KEYWORD1>\r
+ <KEYWORD1>LET</KEYWORD1>\r
+ <KEYWORD1>LIKE</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LINENO</KEYWORD1>\r
+ <KEYWORD1>LINES</KEYWORD1>\r
+ <KEYWORD1>LOAD</KEYWORD1>\r
+ <KEYWORD1>LOCATE</KEYWORD1>\r
+ <KEYWORD1>LOCK</KEYWORD1>\r
+ <KEYWORD1>LOG</KEYWORD1>\r
+ <KEYWORD1>LOG10</KEYWORD1>\r
+ <KEYWORD1>LOGN</KEYWORD1>\r
+ <KEYWORD1>LONG</KEYWORD1>\r
+ <KEYWORD1>LOW</KEYWORD1>\r
+ <KEYWORD1>MAGENTA</KEYWORD1>\r
+ <KEYWORD1>MAIN</KEYWORD1>\r
+ <KEYWORD1>MARGIN</KEYWORD1>\r
+ <KEYWORD1>MATCHES</KEYWORD1>\r
+ <KEYWORD1>MAX</KEYWORD1>\r
+ <KEYWORD1>MDY</KEYWORD1>\r
+ <KEYWORD1>MEDIUM</KEYWORD1>\r
+ <KEYWORD1>MEMORY</KEYWORD1>\r
+ <KEYWORD1>MENU</KEYWORD1>\r
+ <KEYWORD1>MESSAGE</KEYWORD1>\r
+ <KEYWORD1>MESSAGE_LENGTH</KEYWORD1>\r
+ <KEYWORD1>MESSAGE_TEXT</KEYWORD1>\r
+ <KEYWORD1>MIN</KEYWORD1>\r
+ <KEYWORD1>MINUTE</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>MODE</KEYWORD1>\r
+ <KEYWORD1>MODIFY</KEYWORD1>\r
+ <KEYWORD1>MODULE</KEYWORD1>\r
+ <KEYWORD1>MONEY</KEYWORD1>\r
+ <KEYWORD1>MONTH</KEYWORD1>\r
+ <KEYWORD1>MORE</KEYWORD1>\r
+ <KEYWORD1>NAME</KEYWORD1>\r
+ <KEYWORD1>NCHAR</KEYWORD1>\r
+ <KEYWORD1>NEED</KEYWORD1>\r
+ <KEYWORD1>NEW</KEYWORD1>\r
+ <KEYWORD1>NEXT</KEYWORD1>\r
+ <KEYWORD1>NEXTPAGE</KEYWORD1>\r
+ <KEYWORD1>NO</KEYWORD1>\r
+ <KEYWORD1>NOCR</KEYWORD1>\r
+ <KEYWORD1>NOENTRY</KEYWORD1>\r
+ <KEYWORD1>NONE</KEYWORD1>\r
+ <KEYWORD1>NORMAL</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NOTFOUND</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>NULLABLE</KEYWORD1>\r
+ <KEYWORD1>NUMBER</KEYWORD1>\r
+ <KEYWORD1>NUMERIC</KEYWORD1>\r
+ <KEYWORD1>NUM_ARGS</KEYWORD1>\r
+ <KEYWORD1>NVARCHAR</KEYWORD1>\r
+ <KEYWORD1>OCTET_LENGTH</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>OFF</KEYWORD1>\r
+ <KEYWORD1>OLD</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>ONLY</KEYWORD1>\r
+ <KEYWORD1>OPEN</KEYWORD1>\r
+ <KEYWORD1>OPTIMIZATION</KEYWORD1>\r
+ <KEYWORD1>OPTION</KEYWORD1>\r
+ <KEYWORD1>OPTIONS</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>ORDER</KEYWORD1>\r
+ <KEYWORD1>OTHERWISE</KEYWORD1>\r
+ <KEYWORD1>OUTER</KEYWORD1>\r
+ <KEYWORD1>OUTPUT</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>PAGENO</KEYWORD1>\r
+ <KEYWORD1>PASCAL</KEYWORD1>\r
+ <KEYWORD1>PAUSE</KEYWORD1>\r
+ <KEYWORD1>PDQPRIORITY</KEYWORD1>\r
+ <KEYWORD1>PERCENT</KEYWORD1>\r
+ <KEYWORD1>PICTURE</KEYWORD1>\r
+ <KEYWORD1>PIPE</KEYWORD1>\r
+ <KEYWORD1>PLI</KEYWORD1>\r
+ <KEYWORD1>POW</KEYWORD1>\r
+ <KEYWORD1>PRECISION</KEYWORD1>\r
+ <KEYWORD1>PREPARE</KEYWORD1>\r
+ <KEYWORD1>PREVIOUS</KEYWORD1>\r
+ <KEYWORD1>PREVPAGE</KEYWORD1>\r
+ <KEYWORD1>PRIMARY</KEYWORD1>\r
+ <KEYWORD1>PRINT</KEYWORD1>\r
+ <KEYWORD1>PRINTER</KEYWORD1>\r
+ <KEYWORD1>PRIOR</KEYWORD1>\r
+ <KEYWORD1>PRIVATE</KEYWORD1>\r
+ <KEYWORD1>PRIVILEGES</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>PROGRAM</KEYWORD1>\r
+ <KEYWORD1>PROMPT</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>PUT</KEYWORD1>\r
+ <KEYWORD1>QUIT</KEYWORD1>\r
+ <KEYWORD1>QUIT_FLAG</KEYWORD1>\r
+ <KEYWORD1>RAISE</KEYWORD1>\r
+ <KEYWORD1>RANGE</KEYWORD1>\r
+ <KEYWORD1>READ</KEYWORD1>\r
+ <KEYWORD1>READONLY</KEYWORD1>\r
+ <KEYWORD1>REAL</KEYWORD1>\r
+ <KEYWORD1>RECORD</KEYWORD1>\r
+ <KEYWORD1>RECOVER</KEYWORD1>\r
+ <KEYWORD1>RED</KEYWORD1>\r
+ <KEYWORD1>REFERENCES</KEYWORD1>\r
+ <KEYWORD1>REFERENCING</KEYWORD1>\r
+ <KEYWORD1>REGISTER</KEYWORD1>\r
+ <KEYWORD1>RELATIVE</KEYWORD1>\r
+ <KEYWORD1>REMAINDER</KEYWORD1>\r
+ <KEYWORD1>REMOVE</KEYWORD1>\r
+ <KEYWORD1>RENAME</KEYWORD1>\r
+ <KEYWORD1>REOPTIMIZATION</KEYWORD1>\r
+ <KEYWORD1>REPEATABLE</KEYWORD1>\r
+ <KEYWORD1>REPORT</KEYWORD1>\r
+ <KEYWORD1>REQUIRED</KEYWORD1>\r
+ <KEYWORD1>RESOLUTION</KEYWORD1>\r
+ <KEYWORD1>RESOURCE</KEYWORD1>\r
+ <KEYWORD1>RESTRICT</KEYWORD1>\r
+ <KEYWORD1>RESUME</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>RETURNED_SQLSTATE</KEYWORD1>\r
+ <KEYWORD1>RETURNING</KEYWORD1>\r
+ <KEYWORD1>REVERSE</KEYWORD1>\r
+ <KEYWORD1>REVOKE</KEYWORD1>\r
+ <KEYWORD1>RIGHT</KEYWORD1>\r
+ <KEYWORD1>ROBIN</KEYWORD1>\r
+ <KEYWORD1>ROLE</KEYWORD1>\r
+ <KEYWORD1>ROLLBACK</KEYWORD1>\r
+ <KEYWORD1>ROLLFORWARD</KEYWORD1>\r
+ <KEYWORD1>ROOT</KEYWORD1>\r
+ <KEYWORD1>ROUND</KEYWORD1>\r
+ <KEYWORD1>ROW</KEYWORD1>\r
+ <KEYWORD1>ROWID</KEYWORD1>\r
+ <KEYWORD1>ROWIDS</KEYWORD1>\r
+ <KEYWORD1>ROWS</KEYWORD1>\r
+ <KEYWORD1>ROW_COUNT</KEYWORD1>\r
+ <KEYWORD1>RUN</KEYWORD1>\r
+ <KEYWORD1>SCALE</KEYWORD1>\r
+ <KEYWORD1>SCHEMA</KEYWORD1>\r
+ <KEYWORD1>SCREEN</KEYWORD1>\r
+ <KEYWORD1>SCROLL</KEYWORD1>\r
+ <KEYWORD1>SCR_LINE</KEYWORD1>\r
+ <KEYWORD1>SECOND</KEYWORD1>\r
+ <KEYWORD1>SECTION</KEYWORD1>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>SERIAL</KEYWORD1>\r
+ <KEYWORD1>SERIALIZABLE</KEYWORD1>\r
+ <KEYWORD1>SERVER_NAME</KEYWORD1>\r
+ <KEYWORD1>SESSION</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SET_COUNT</KEYWORD1>\r
+ <KEYWORD1>SHARE</KEYWORD1>\r
+ <KEYWORD1>SHORT</KEYWORD1>\r
+ <KEYWORD1>SHOW</KEYWORD1>\r
+ <KEYWORD1>SITENAME</KEYWORD1>\r
+ <KEYWORD1>SIZE</KEYWORD1>\r
+ <KEYWORD1>SIZEOF</KEYWORD1>\r
+ <KEYWORD1>SKIP</KEYWORD1>\r
+ <KEYWORD1>SLEEP</KEYWORD1>\r
+ <KEYWORD1>SMALLFLOAT</KEYWORD1>\r
+ <KEYWORD1>SMALLINT</KEYWORD1>\r
+ <KEYWORD1>SOME</KEYWORD1>\r
+ <KEYWORD1>SPACE</KEYWORD1>\r
+ <KEYWORD1>SPACES</KEYWORD1>\r
+ <KEYWORD1>SQL</KEYWORD1>\r
+ <KEYWORD1>SQLAWARN</KEYWORD1>\r
+ <KEYWORD1>SQLCA</KEYWORD1>\r
+ <KEYWORD1>SQLCODE</KEYWORD1>\r
+ <KEYWORD1>SQLERRD</KEYWORD1>\r
+ <KEYWORD1>SQLERRM</KEYWORD1>\r
+ <KEYWORD1>SQLERROR</KEYWORD1>\r
+ <KEYWORD1>SQLERRP</KEYWORD1>\r
+ <KEYWORD1>SQLSTATE</KEYWORD1>\r
+ <KEYWORD1>SQLWARNING</KEYWORD1>\r
+ <KEYWORD1>SQRT</KEYWORD1>\r
+ <KEYWORD1>STABILITY</KEYWORD1>\r
+ <KEYWORD1>START</KEYWORD1>\r
+ <KEYWORD1>STARTLOG</KEYWORD1>\r
+ <KEYWORD1>STATIC</KEYWORD1>\r
+ <KEYWORD1>STATISTICS</KEYWORD1>\r
+ <KEYWORD1>STATUS</KEYWORD1>\r
+ <KEYWORD1>STDEV</KEYWORD1>\r
+ <KEYWORD1>STEP</KEYWORD1>\r
+ <KEYWORD1>STOP</KEYWORD1>\r
+ <KEYWORD1>STRING</KEYWORD1>\r
+ <KEYWORD1>STRUCT</KEYWORD1>\r
+ <KEYWORD1>SUBCLASS_ORIGIN</KEYWORD1>\r
+ <KEYWORD1>SUM</KEYWORD1>\r
+ <KEYWORD1>SWITCH</KEYWORD1>\r
+ <KEYWORD1>SYNONYM</KEYWORD1>\r
+ <KEYWORD1>SYSTEM</KEYWORD1>\r
+ <KEYWORD1>SysBlobs</KEYWORD1>\r
+ <KEYWORD1>SysChecks</KEYWORD1>\r
+ <KEYWORD1>SysColAuth</KEYWORD1>\r
+ <KEYWORD1>SysColDepend</KEYWORD1>\r
+ <KEYWORD1>SysColumns</KEYWORD1>\r
+ <KEYWORD1>SysConstraints</KEYWORD1>\r
+ <KEYWORD1>SysDefaults</KEYWORD1>\r
+ <KEYWORD1>SysDepend</KEYWORD1>\r
+ <KEYWORD1>SysDistrib</KEYWORD1>\r
+ <KEYWORD1>SysFragAuth</KEYWORD1>\r
+ <KEYWORD1>SysFragments</KEYWORD1>\r
+ <KEYWORD1>SysIndexes</KEYWORD1>\r
+ <KEYWORD1>SysObjState</KEYWORD1>\r
+ <KEYWORD1>SysOpClstr</KEYWORD1>\r
+ <KEYWORD1>SysProcAuth</KEYWORD1>\r
+ <KEYWORD1>SysProcBody</KEYWORD1>\r
+ <KEYWORD1>SysProcPlan</KEYWORD1>\r
+ <KEYWORD1>SysProcedures</KEYWORD1>\r
+ <KEYWORD1>SysReferences</KEYWORD1>\r
+ <KEYWORD1>SysRoleAuth</KEYWORD1>\r
+ <KEYWORD1>SysSynTable</KEYWORD1>\r
+ <KEYWORD1>SysSynonyms</KEYWORD1>\r
+ <KEYWORD1>SysTabAuth</KEYWORD1>\r
+ <KEYWORD1>SysTables</KEYWORD1>\r
+ <KEYWORD1>SysTrigBody</KEYWORD1>\r
+ <KEYWORD1>SysTriggers</KEYWORD1>\r
+ <KEYWORD1>SysUsers</KEYWORD1>\r
+ <KEYWORD1>SysViews</KEYWORD1>\r
+ <KEYWORD1>SysViolations</KEYWORD1>\r
+ <KEYWORD1>TAB</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TABLES</KEYWORD1>\r
+ <KEYWORD1>TAN</KEYWORD1>\r
+ <KEYWORD1>TEMP</KEYWORD1>\r
+ <KEYWORD1>TEXT</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>THROUGH</KEYWORD1>\r
+ <KEYWORD1>THRU</KEYWORD1>\r
+ <KEYWORD1>TIME</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TODAY</KEYWORD1>\r
+ <KEYWORD1>TOP</KEYWORD1>\r
+ <KEYWORD1>TOTAL</KEYWORD1>\r
+ <KEYWORD1>TRACE</KEYWORD1>\r
+ <KEYWORD1>TRAILER</KEYWORD1>\r
+ <KEYWORD1>TRAILING</KEYWORD1>\r
+ <KEYWORD1>TRANSACTION</KEYWORD1>\r
+ <KEYWORD1>TRIGGER</KEYWORD1>\r
+ <KEYWORD1>TRIGGERS</KEYWORD1>\r
+ <KEYWORD1>TRIM</KEYWORD1>\r
+ <KEYWORD1>TRUE</KEYWORD1>\r
+ <KEYWORD1>TRUNC</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>TYPEDEF</KEYWORD1>\r
+ <KEYWORD1>UNCOMMITTED</KEYWORD1>\r
+ <KEYWORD1>UNCONSTRAINED</KEYWORD1>\r
+ <KEYWORD1>UNDERLINE</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>UNIQUE</KEYWORD1>\r
+ <KEYWORD1>UNITS</KEYWORD1>\r
+ <KEYWORD1>UNLOAD</KEYWORD1>\r
+ <KEYWORD1>UNLOCK</KEYWORD1>\r
+ <KEYWORD1>UNSIGNED</KEYWORD1>\r
+ <KEYWORD1>UP</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>UPSHIFT</KEYWORD1>\r
+ <KEYWORD1>USER</KEYWORD1>\r
+ <KEYWORD1>USING</KEYWORD1>\r
+ <KEYWORD1>VALIDATE</KEYWORD1>\r
+ <KEYWORD1>VALUE</KEYWORD1>\r
+ <KEYWORD1>VALUES</KEYWORD1>\r
+ <KEYWORD1>VARCHAR</KEYWORD1>\r
+ <KEYWORD1>VARIABLES</KEYWORD1>\r
+ <KEYWORD1>VARIANCE</KEYWORD1>\r
+ <KEYWORD1>VARYING</KEYWORD1>\r
+ <KEYWORD1>VERIFY</KEYWORD1>\r
+ <KEYWORD1>VIEW</KEYWORD1>\r
+ <KEYWORD1>VIOLATIONS</KEYWORD1>\r
+ <KEYWORD1>WAIT</KEYWORD1>\r
+ <KEYWORD1>WAITING</KEYWORD1>\r
+ <KEYWORD1>WARNING</KEYWORD1>\r
+ <KEYWORD1>WEEKDAY</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHENEVER</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WHITE</KEYWORD1>\r
+ <KEYWORD1>WINDOW</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WITHOUT</KEYWORD1>\r
+ <KEYWORD1>WORDWRAP</KEYWORD1>\r
+ <KEYWORD1>WORK</KEYWORD1>\r
+ <KEYWORD1>WRAP</KEYWORD1>\r
+ <KEYWORD1>WRITE</KEYWORD1>\r
+ <KEYWORD1>YEAR</KEYWORD1>\r
+ <KEYWORD1>YELLOW</KEYWORD1>\r
+ <KEYWORD1>ZEROFILL</KEYWORD1>\r
+\r
+\r
+ <!-- special, keywords/literals -->\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>TRUE</LITERAL2>\r
+\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Icon mode by Silas Smith (smiths@cs.arizona.edu) -->\r
+<!-- Updated 08/07/2003 -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE="|.\\:,+-*/=?^!@%<>&" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- string literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- cset literals -->\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">~===</SEQ>\r
+ <SEQ TYPE="OPERATOR">===</SEQ>\r
+ <SEQ TYPE="OPERATOR">|||</SEQ> <!-- list concatenation -->\r
+\r
+ <!-- lexical operators -->\r
+ <SEQ TYPE="OPERATOR">>>=</SEQ> <!-- ">>=" -->\r
+ <SEQ TYPE="OPERATOR">>></SEQ> <!-- ">>" -->\r
+ <SEQ TYPE="OPERATOR"><<=</SEQ> <!-- "<<=" -->\r
+ <SEQ TYPE="OPERATOR"><<</SEQ> <!-- "<<" -->\r
+ <SEQ TYPE="OPERATOR">~==</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+\r
+ <!-- set operators -->\r
+ <SEQ TYPE="OPERATOR">++</SEQ> <!-- union -->\r
+ <SEQ TYPE="OPERATOR">**</SEQ> <!-- intersection -->\r
+ <SEQ TYPE="OPERATOR">--</SEQ> <!-- difference -->\r
+\r
+ <SEQ TYPE="OPERATOR"><-></SEQ> <!-- "<->" -->\r
+ <SEQ TYPE="OPERATOR"><-</SEQ> <!-- "<-" -->\r
+ <SEQ TYPE="OPERATOR">op:=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">~=</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=:</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">-:</SEQ>\r
+ <SEQ TYPE="OPERATOR">+:</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">not</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+\r
+ <!-- numerical operators -->\r
+ <!-- NOTE: '*' defined above -->\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>by</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>create</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>every</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>initial</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>break</KEYWORD2>\r
+ <KEYWORD2>end</KEYWORD2>\r
+ <KEYWORD2>fail</KEYWORD2>\r
+ <KEYWORD2>global</KEYWORD2>\r
+ <KEYWORD2>invocable</KEYWORD2>\r
+ <KEYWORD2>link</KEYWORD2>\r
+ <KEYWORD2>local</KEYWORD2>\r
+ <KEYWORD2>procedure</KEYWORD2>\r
+ <KEYWORD2>record</KEYWORD2>\r
+ <KEYWORD2>return</KEYWORD2>\r
+ <KEYWORD2>static</KEYWORD2>\r
+ <KEYWORD2>suspend</KEYWORD2>\r
+\r
+ <KEYWORD3>&allocated</KEYWORD3>\r
+ <KEYWORD3>&ascii</KEYWORD3>\r
+ <KEYWORD3>&clock</KEYWORD3>\r
+ <KEYWORD3>&collections</KEYWORD3>\r
+ <KEYWORD3>&cset</KEYWORD3>\r
+ <KEYWORD3>&current</KEYWORD3>\r
+ <KEYWORD3>&date</KEYWORD3>\r
+ <KEYWORD3>&dateline</KEYWORD3>\r
+ <KEYWORD3>&digits</KEYWORD3>\r
+ <KEYWORD3>&dump</KEYWORD3>\r
+ <KEYWORD3>&e</KEYWORD3>\r
+ <KEYWORD3>&error</KEYWORD3>\r
+ <KEYWORD3>&errornumber</KEYWORD3>\r
+ <KEYWORD3>&errortext</KEYWORD3>\r
+ <KEYWORD3>&errorvalue</KEYWORD3>\r
+ <KEYWORD3>&errout</KEYWORD3>\r
+ <KEYWORD3>&fail</KEYWORD3>\r
+ <KEYWORD3>&features</KEYWORD3>\r
+ <KEYWORD3>&file</KEYWORD3>\r
+ <KEYWORD3>&host</KEYWORD3>\r
+ <KEYWORD3>&input</KEYWORD3>\r
+ <KEYWORD3>&lcase</KEYWORD3>\r
+ <KEYWORD3>&letters</KEYWORD3>\r
+ <KEYWORD3>&level</KEYWORD3>\r
+ <KEYWORD3>&line</KEYWORD3>\r
+ <KEYWORD3>&main</KEYWORD3>\r
+ <KEYWORD3>&null</KEYWORD3>\r
+ <KEYWORD3>&output</KEYWORD3>\r
+ <KEYWORD3>&phi</KEYWORD3>\r
+ <KEYWORD3>&pi</KEYWORD3>\r
+ <KEYWORD3>&pos</KEYWORD3>\r
+ <KEYWORD3>&progname</KEYWORD3>\r
+ <KEYWORD3>&random</KEYWORD3>\r
+ <KEYWORD3>&regions</KEYWORD3>\r
+ <KEYWORD3>&source</KEYWORD3>\r
+ <KEYWORD3>&storage</KEYWORD3>\r
+ <KEYWORD3>&subject</KEYWORD3>\r
+ <KEYWORD3>&time</KEYWORD3>\r
+ <KEYWORD3>&trace</KEYWORD3>\r
+ <KEYWORD3>&ucase</KEYWORD3>\r
+ <KEYWORD3>&version</KEYWORD3>\r
+\r
+ <!-- preprocessor directives -->\r
+ <KEYWORD3>$define</KEYWORD3>\r
+ <KEYWORD3>$else</KEYWORD3>\r
+ <KEYWORD3>$endif</KEYWORD3>\r
+ <KEYWORD3>$error</KEYWORD3>\r
+ <KEYWORD3>$ifdef</KEYWORD3>\r
+ <KEYWORD3>$ifndef</KEYWORD3>\r
+ <KEYWORD3>$include</KEYWORD3>\r
+ <KEYWORD3>$line</KEYWORD3>\r
+ <KEYWORD3>$undef</KEYWORD3>\r
+\r
+ <!-- predefined prepocessor symbols -->\r
+ <KEYWORD3>_MACINTOSH</KEYWORD3>\r
+ <KEYWORD3>_MS_WINDOWS_NT</KEYWORD3>\r
+ <KEYWORD3>_MS_WINDOWS</KEYWORD3>\r
+ <KEYWORD3>_MSDOS_386</KEYWORD3>\r
+ <KEYWORD3>_MSDOS</KEYWORD3>\r
+ <KEYWORD3>_OS2</KEYWORD3>\r
+ <KEYWORD3>_PIPES</KEYWORD3>\r
+ <KEYWORD3>_PRESENTATION_MGR</KEYWORD3>\r
+ <KEYWORD3>_SYSTEM_FUNCTION</KEYWORD3>\r
+ <KEYWORD3>_UNIX</KEYWORD3>\r
+ <KEYWORD3>_VMS</KEYWORD3>\r
+ <KEYWORD3>_WINDOW_FUNCTIONS</KEYWORD3>\r
+ <KEYWORD3>_X_WINDOW_SYSTEM</KEYWORD3>\r
+\r
+ <KEYWORD4>co-expression</KEYWORD4>\r
+ <KEYWORD4>cset</KEYWORD4>\r
+ <KEYWORD4>file</KEYWORD4>\r
+ <KEYWORD4>integer</KEYWORD4>\r
+ <KEYWORD4>list</KEYWORD4>\r
+ <KEYWORD4>null</KEYWORD4>\r
+ <KEYWORD4>real</KEYWORD4>\r
+ <KEYWORD4>set</KEYWORD4>\r
+ <KEYWORD4>string</KEYWORD4>\r
+ <KEYWORD4>table</KEYWORD4>\r
+ <KEYWORD4>window</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- IDL mode, by Slava Pestov\r
+ based on Java mode by Mike Dillon and IDLTokenMarker by Juha Lindfors -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="boxComment" VALUE="*" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE">\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <!-- some of these should be marked OPERATOR -->\r
+ <!-- <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">=</SEQ>\r
+ <SEQ TYPE="NULL">!</SEQ>\r
+ <SEQ TYPE="NULL">>=</SEQ>\r
+ <SEQ TYPE="NULL"><=</SEQ>\r
+ <SEQ TYPE="NULL">+</SEQ>\r
+ <SEQ TYPE="NULL">-</SEQ>\r
+ <SEQ TYPE="NULL">/</SEQ>\r
+ <SEQ TYPE="NULL">*</SEQ>\r
+ <SEQ TYPE="NULL">></SEQ>\r
+ <SEQ TYPE="NULL"><</SEQ>\r
+ <SEQ TYPE="NULL">%</SEQ>\r
+ <SEQ TYPE="NULL">&</SEQ>\r
+ <SEQ TYPE="NULL">|</SEQ>\r
+ <SEQ TYPE="NULL">^</SEQ>\r
+ <SEQ TYPE="NULL">~</SEQ>\r
+ <SEQ TYPE="NULL">.</SEQ>\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">?</SEQ> -->\r
+\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD3>any</KEYWORD3>\r
+ <KEYWORD1>attribute</KEYWORD1>\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>context</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>enum</KEYWORD3>\r
+ <KEYWORD1>exception</KEYWORD1>\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <KEYWORD1>fixed</KEYWORD1>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>inout</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD1>module</KEYWORD1>\r
+ <KEYWORD3>Object</KEYWORD3>\r
+ <KEYWORD3>octet</KEYWORD3>\r
+ <KEYWORD1>oneway</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>raises</KEYWORD1>\r
+ <KEYWORD1>readonly</KEYWORD1>\r
+ <KEYWORD3>sequence</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>struct</KEYWORD3>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <LITERAL2>TRUE</LITERAL2>\r
+ <KEYWORD3>typedef</KEYWORD3>\r
+ <KEYWORD3>unsigned</KEYWORD3>\r
+ <KEYWORD3>union</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+ <KEYWORD3>wchar</KEYWORD3>\r
+ <KEYWORD3>wstring</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <!-- Syntax highlighting mode for the Inform language. You can find out more about inform at\r
+ http://www.gnelson.demon.co.uk/inform.html\r
+ And an inform language guide at\r
+ http://www.gnelson.demon.co.uk/dman/index.html\r
+ -->\r
+ <PROPS>\r
+ <!--\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ -->\r
+ <PROPERTY NAME="lineComment" VALUE="!" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{[" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}]" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+\r
+ <PROPERTY NAME="filenameGlob" VALUE="*.(inf|h)" />\r
+ </PROPS>\r
+\r
+ <RULES\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(\$[\p{XDigit}]|[\p{Digit}])">\r
+ <EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>\r
+\r
+ <!-- strings can span lines -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="InformInnerText">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- preprocessor statements -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>\r
+\r
+ <!-- special sequences that require special highlighting -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">~=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">.&</SEQ>\r
+ <SEQ TYPE="OPERATOR">.#</SEQ>\r
+ <SEQ TYPE="OPERATOR">--></SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">::</MARK_PREVIOUS>\r
+\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="FALSE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <!-- operators -->\r
+ <KEYWORD1>has</KEYWORD1>\r
+ <KEYWORD1>hasnt</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>notin</KEYWORD1>\r
+ <KEYWORD1>ofclass</KEYWORD1>\r
+ <KEYWORD1>provides</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+\r
+ <!-- text-base conversion functions -->\r
+ <LITERAL2>char</LITERAL2>\r
+ <LITERAL2>string</LITERAL2>\r
+ <LITERAL2>address</LITERAL2>\r
+ <LITERAL2>name</LITERAL2>\r
+ <LITERAL2>a</LITERAL2>\r
+ <LITERAL2>an</LITERAL2>\r
+ <LITERAL2>the</LITERAL2>\r
+ <LITERAL2>The</LITERAL2>\r
+ <LITERAL2>property</LITERAL2>\r
+ <LITERAL2>object</LITERAL2>\r
+\r
+ <!-- language semantics -->\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>give</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>inversion</KEYWORD1>\r
+ <KEYWORD1>jump</KEYWORD1>\r
+ <KEYWORD1>move</KEYWORD1>\r
+ <KEYWORD2>to</KEYWORD2>\r
+ <KEYWORD1>objectloop</KEYWORD1>\r
+ <KEYWORD1>remove</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>rfalse</KEYWORD1>\r
+ <KEYWORD1>rtrue</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- class keyworks -->\r
+ <KEYWORD1>with</KEYWORD1>\r
+<!-- <KEYWORD1>has</KEYWORD1> -->\r
+\r
+ <!-- built-in functions -->\r
+ <FUNCTION>new_line</FUNCTION>\r
+ <FUNCTION>print</FUNCTION>\r
+ <FUNCTION>print_ret</FUNCTION>\r
+ <FUNCTION>box</FUNCTION>\r
+ <FUNCTION>font</FUNCTION>\r
+ <KEYWORD2>on</KEYWORD2>\r
+ <KEYWORD2>off</KEYWORD2>\r
+ <FUNCTION>quit</FUNCTION>\r
+ <FUNCTION>read</FUNCTION>\r
+ <FUNCTION>restore</FUNCTION>\r
+ <FUNCTION>save</FUNCTION>\r
+ <FUNCTION>spaces</FUNCTION>\r
+ <FUNCTION>style</FUNCTION>\r
+ <KEYWORD2>roman</KEYWORD2>\r
+ <KEYWORD2>bold</KEYWORD2>\r
+ <KEYWORD2>underline</KEYWORD2>\r
+ <KEYWORD2>reverse</KEYWORD2>\r
+ <KEYWORD2>fixed</KEYWORD2>\r
+ <FUNCTION>score</FUNCTION>\r
+ <FUNCTION>time</FUNCTION>\r
+\r
+ <!-- Top-level keyworks -->\r
+ <KEYWORD3>Abbreviate</KEYWORD3>\r
+ <KEYWORD3>Array</KEYWORD3>\r
+ <KEYWORD3>Attribute</KEYWORD3>\r
+ <KEYWORD3>Class</KEYWORD3>\r
+ <KEYWORD3>Constant</KEYWORD3>\r
+ <KEYWORD3>Default</KEYWORD3>\r
+ <KEYWORD3>End</KEYWORD3>\r
+ <KEYWORD3>Endif</KEYWORD3>\r
+ <KEYWORD3>Extend</KEYWORD3>\r
+ <KEYWORD3>Global</KEYWORD3>\r
+ <KEYWORD3>Ifdef</KEYWORD3>\r
+ <KEYWORD3>Ifndef</KEYWORD3>\r
+ <KEYWORD3>Ifnot</KEYWORD3>\r
+ <KEYWORD3>Iftrue</KEYWORD3>\r
+ <KEYWORD3>Iffalse</KEYWORD3>\r
+ <KEYWORD3>Import</KEYWORD3>\r
+ <KEYWORD3>Include</KEYWORD3>\r
+ <KEYWORD3>Link</KEYWORD3>\r
+ <KEYWORD3>Lowstring</KEYWORD3>\r
+ <KEYWORD3>Message</KEYWORD3>\r
+ <KEYWORD3>Object</KEYWORD3>\r
+ <KEYWORD3>Property</KEYWORD3>\r
+ <KEYWORD3>Replace</KEYWORD3>\r
+ <KEYWORD3>Serial</KEYWORD3>\r
+ <KEYWORD3>Switches</KEYWORD3>\r
+ <KEYWORD3>Statusline</KEYWORD3>\r
+ <KEYWORD3>System_file</KEYWORD3>\r
+ <KEYWORD3>Verb</KEYWORD3>\r
+ <KEYWORD3>private</KEYWORD3>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>super</LITERAL2>\r
+ <LITERAL2>self</LITERAL2>\r
+\r
+ <INVALID>this</INVALID>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ <RULES SET="InformInnerText" IGNORE_CASE="FALSE" DEFAULT="LITERAL1">\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+\r
+ <!-- escaping the @ symbol -->\r
+ <SEQ TYPE="LITERAL2">@@</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+ <RULES HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="KEYWORD2" AT_LINE_START="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">#</EOL_SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE" MATCH_TYPE="OPERATOR">=</MARK_PREVIOUS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+ <RULES HIGHLIGHT_DIGITS="FALSE">\r
+\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE" DELEGATE="pascal::MAIN">[code]</SEQ>\r
+\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Setup]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Types]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Components]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Tasks]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Dirs]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Files]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Icons]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[INI]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[InstallDelete]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Languages]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Messages]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[CustomMessages]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[LangOptions]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Registry]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[Run]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[UninstallRun]</SEQ>\r
+ <SEQ TYPE="KEYWORD2" AT_LINE_START="TRUE">[UninstallDelete]</SEQ>\r
+\r
+ <!-- pre-processor directives -->\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#define </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#dim </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#undef </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#include </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#emit </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#expr </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#insert </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#append </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#if </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#elif </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#else </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#endif</EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#ifexist </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#ifnexist </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#ifdef </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#for </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#sub </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#endsub</EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#pragma </EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">#error </EOL_SPAN>\r
+ <SPAN TYPE="LITERAL4">\r
+ <BEGIN>{#</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2">%</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="STRING">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="STRING">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <!-- variable -->\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">#</EOL_SPAN>\r
+\r
+ <!--\r
+ <MARK_PREVIOUS TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE" MATCH_TYPE="CONTEXT"">=</MARK_PREVIOUS>\r
+ -->\r
+\r
+ <KEYWORDS>\r
+ <!-- [Setup] -->\r
+ <!-- compiler -->\r
+ <KEYWORD1>Compression</KEYWORD1>\r
+ <KEYWORD1>DiskClusterSize</KEYWORD1>\r
+ <KEYWORD1>DiskSliceSize</KEYWORD1>\r
+ <KEYWORD1>DiskSpanning</KEYWORD1>\r
+ <KEYWORD1>Encryption</KEYWORD1>\r
+ <KEYWORD1>InternalCompressLevel</KEYWORD1>\r
+ <KEYWORD1>MergeDuplicateFiles</KEYWORD1>\r
+ <KEYWORD1>OutputBaseFilename</KEYWORD1>\r
+ <KEYWORD1>OutputDir</KEYWORD1>\r
+ <KEYWORD1>ReserveBytes</KEYWORD1>\r
+ <KEYWORD1>SlicesPerDisk</KEYWORD1>\r
+ <KEYWORD1>SolidCompression</KEYWORD1>\r
+ <KEYWORD1>SourceDir</KEYWORD1>\r
+ <KEYWORD1>UseSetupLdr</KEYWORD1>\r
+ <KEYWORD1>VersionInfoCompany</KEYWORD1>\r
+ <KEYWORD1>VersionInfoDescription</KEYWORD1>\r
+ <KEYWORD1>VersionInfoTextVersion</KEYWORD1>\r
+ <KEYWORD1>VersionInfoVersion</KEYWORD1>\r
+ <!-- installer, functional -->\r
+ <KEYWORD1>AllowCancelDuringInstall</KEYWORD1>\r
+ <KEYWORD1>AllowNoIcons</KEYWORD1>\r
+ <KEYWORD1>AllowRootDirectory</KEYWORD1>\r
+ <KEYWORD1>AllowUNCPath</KEYWORD1>\r
+ <KEYWORD1>AlwaysRestart</KEYWORD1>\r
+ <KEYWORD1>AlwaysShowComponentsList</KEYWORD1>\r
+ <KEYWORD1>AlwaysShowDirOnReadyPage</KEYWORD1>\r
+ <KEYWORD1>AlwaysShowGroupOnReadyPage</KEYWORD1>\r
+ <KEYWORD1>AlwaysUsePersonalGroup</KEYWORD1>\r
+ <KEYWORD1>AppendDefaultDirName</KEYWORD1>\r
+ <KEYWORD1>AppendDefaultGroupName</KEYWORD1>\r
+ <KEYWORD1>AppComments</KEYWORD1>\r
+ <KEYWORD1>AppContact</KEYWORD1>\r
+ <KEYWORD1>AppId</KEYWORD1>\r
+ <KEYWORD1>AppModifyPath</KEYWORD1>\r
+ <KEYWORD1>AppMutex</KEYWORD1>\r
+ <KEYWORD1>AppName</KEYWORD1>\r
+ <KEYWORD1>AppPublisher</KEYWORD1>\r
+ <KEYWORD1>AppPublisherURL</KEYWORD1>\r
+ <KEYWORD1>AppReadmeFile</KEYWORD1>\r
+ <KEYWORD1>AppSupportURL</KEYWORD1>\r
+ <KEYWORD1>AppUpdatesURL</KEYWORD1>\r
+ <KEYWORD1>AppVersion</KEYWORD1>\r
+ <KEYWORD1>AppVerName</KEYWORD1>\r
+ <KEYWORD1>ChangesAssociations</KEYWORD1>\r
+ <KEYWORD1>CreateAppDir</KEYWORD1>\r
+ <KEYWORD1>CreateUninstallRegKey</KEYWORD1>\r
+ <KEYWORD1>DefaultDirName</KEYWORD1>\r
+ <KEYWORD1>DefaultGroupName</KEYWORD1>\r
+ <KEYWORD1>DefaultUserInfoName</KEYWORD1>\r
+ <KEYWORD1>DefaultUserInfoOrg</KEYWORD1>\r
+ <KEYWORD1>DefaultUserInfoSerial</KEYWORD1>\r
+ <KEYWORD1>DirExistsWarning</KEYWORD1>\r
+ <KEYWORD1>DisableDirPage</KEYWORD1>\r
+ <KEYWORD1>DisableFinishedPage</KEYWORD1>\r
+ <KEYWORD1>DisableProgramGroupPage</KEYWORD1>\r
+ <KEYWORD1>DisableReadyMemo</KEYWORD1>\r
+ <KEYWORD1>DisableReadyPage</KEYWORD1>\r
+ <KEYWORD1>DisableStartupPrompt</KEYWORD1>\r
+ <KEYWORD1>EnableDirDoesntExistWarning</KEYWORD1>\r
+ <KEYWORD1>ExtraDiskSpaceRequired</KEYWORD1>\r
+ <KEYWORD1>InfoAfterFile</KEYWORD1>\r
+ <KEYWORD1>InfoBeforeFile</KEYWORD1>\r
+ <KEYWORD1>LanguageDetectionMethod</KEYWORD1>\r
+ <KEYWORD1>LicenseFile</KEYWORD1>\r
+ <KEYWORD1>MinVersion</KEYWORD1>\r
+ <KEYWORD1>OnlyBelowVersion</KEYWORD1>\r
+ <KEYWORD1>Password</KEYWORD1>\r
+ <KEYWORD1>PrivilegesRequired</KEYWORD1>\r
+ <KEYWORD1>RestartIfNeededByRun</KEYWORD1>\r
+ <KEYWORD1>ShowLanguageDialog</KEYWORD1>\r
+ <KEYWORD1>TimeStampRounding</KEYWORD1>\r
+ <KEYWORD1>TimeStampsInUTC</KEYWORD1>\r
+ <KEYWORD1>TouchDate</KEYWORD1>\r
+ <KEYWORD1>TouchTime</KEYWORD1>\r
+ <KEYWORD1>Uninstallable</KEYWORD1>\r
+ <KEYWORD1>UninstallDisplayIcon</KEYWORD1>\r
+ <KEYWORD1>UninstallDisplayName</KEYWORD1>\r
+ <KEYWORD1>UninstallFilesDir</KEYWORD1>\r
+ <KEYWORD1>UninstallLogMode</KEYWORD1>\r
+ <KEYWORD1>UninstallRestartComputer</KEYWORD1>\r
+ <KEYWORD1>UpdateUninstallLogAppName</KEYWORD1>\r
+ <KEYWORD1>UsePreviousAppDir</KEYWORD1>\r
+ <KEYWORD1>UsePreviousGroup</KEYWORD1>\r
+ <KEYWORD1>UsePreviousSetupType</KEYWORD1>\r
+ <KEYWORD1>UsePreviousTasks</KEYWORD1>\r
+ <KEYWORD1>UsePreviousUserInfo</KEYWORD1>\r
+ <KEYWORD1>UserInfoPage</KEYWORD1>\r
+ <!-- installer, cosmetic -->\r
+ <KEYWORD1>AppCopyright</KEYWORD1>\r
+ <KEYWORD1>BackColor</KEYWORD1>\r
+ <KEYWORD1>BackColor2</KEYWORD1>\r
+ <KEYWORD1>BackColorDirection</KEYWORD1>\r
+ <KEYWORD1>BackSolid</KEYWORD1>\r
+ <KEYWORD1>FlatComponentsList</KEYWORD1>\r
+ <KEYWORD1>SetupIconFile</KEYWORD1>\r
+ <KEYWORD1>ShowComponentSizes</KEYWORD1>\r
+ <KEYWORD1>ShowTasksTreeLines</KEYWORD1>\r
+ <KEYWORD1>UninstallStyle</KEYWORD1>\r
+ <KEYWORD1>WindowShowCaption</KEYWORD1>\r
+ <KEYWORD1>WindowStartMaximized</KEYWORD1>\r
+ <KEYWORD1>WindowResizable</KEYWORD1>\r
+ <KEYWORD1>WindowVisible</KEYWORD1>\r
+ <KEYWORD1>WizardImageBackColor</KEYWORD1>\r
+ <KEYWORD1>WizardImageFile</KEYWORD1>\r
+ <KEYWORD1>WizardImageStretch</KEYWORD1>\r
+ <KEYWORD1>WizardSmallImageBackColor</KEYWORD1>\r
+ <KEYWORD1>WizardSmallImageFile</KEYWORD1>\r
+ <KEYWORD1>UninstallIconFile</KEYWORD1>\r
+\r
+ <!-- parameters -->\r
+ <KEYWORD4>AfterInstall</KEYWORD4>\r
+ <KEYWORD4>Attribs</KEYWORD4>\r
+ <KEYWORD4>BeforeInstall</KEYWORD4>\r
+ <KEYWORD4>Check</KEYWORD4>\r
+ <KEYWORD4>Comment</KEYWORD4>\r
+ <KEYWORD4>Components</KEYWORD4>\r
+ <KEYWORD4>CopyMode</KEYWORD4>\r
+ <KEYWORD4>Description</KEYWORD4>\r
+ <KEYWORD4>DestDir</KEYWORD4>\r
+ <KEYWORD4>DestName</KEYWORD4>\r
+ <KEYWORD4>Excludes</KEYWORD4>\r
+ <KEYWORD4>ExtraDiskSpaceRequired</KEYWORD4>\r
+ <KEYWORD4>Filename</KEYWORD4>\r
+ <KEYWORD4>Flags</KEYWORD4>\r
+ <KEYWORD4>FontInstall</KEYWORD4>\r
+ <KEYWORD4>GroupDescription</KEYWORD4>\r
+ <KEYWORD4>HotKey</KEYWORD4>\r
+ <KEYWORD4>IconFilename</KEYWORD4>\r
+ <KEYWORD4>IconIndex</KEYWORD4>\r
+ <KEYWORD4>InfoBeforeFile</KEYWORD4>\r
+ <KEYWORD4>InfoAfterFile</KEYWORD4>\r
+ <KEYWORD4>Key</KEYWORD4>\r
+ <!--<KEYWORD4>LicenseFile</KEYWORD4>-->\r
+ <KEYWORD4>MessagesFile</KEYWORD4>\r
+ <KEYWORD4>Name</KEYWORD4>\r
+ <KEYWORD4>Parameters</KEYWORD4>\r
+ <KEYWORD4>Permissions</KEYWORD4>\r
+ <KEYWORD4>Root</KEYWORD4>\r
+ <KEYWORD4>RunOnceId</KEYWORD4>\r
+ <KEYWORD4>Section</KEYWORD4>\r
+ <KEYWORD4>Source</KEYWORD4>\r
+ <KEYWORD4>StatusMsg</KEYWORD4>\r
+ <KEYWORD4>String</KEYWORD4>\r
+ <KEYWORD4>Subkey</KEYWORD4>\r
+ <KEYWORD4>Tasks</KEYWORD4>\r
+ <KEYWORD4>Type</KEYWORD4>\r
+ <KEYWORD4>Types</KEYWORD4>\r
+ <KEYWORD4>ValueType</KEYWORD4>\r
+ <KEYWORD4>ValueName</KEYWORD4>\r
+ <KEYWORD4>ValueData</KEYWORD4>\r
+ <KEYWORD4>WorkingDir</KEYWORD4>\r
+\r
+ <!-- flags -->\r
+ <LITERAL3>allowunsafefiles</LITERAL3>\r
+ <LITERAL3>checkedonce</LITERAL3>\r
+ <LITERAL3>closeonexit</LITERAL3>\r
+ <LITERAL3>compact</LITERAL3>\r
+ <LITERAL3>comparetimestamp</LITERAL3>\r
+ <LITERAL3>confirmoverwrite</LITERAL3>\r
+ <LITERAL3>createkeyifdoesntexist</LITERAL3>\r
+ <LITERAL3>createonlyiffileexists</LITERAL3>\r
+ <LITERAL3>createvalueifdoesntexist</LITERAL3>\r
+ <LITERAL3>deleteafterinstall</LITERAL3>\r
+ <LITERAL3>deletekey</LITERAL3>\r
+ <LITERAL3>deletevalue</LITERAL3>\r
+ <LITERAL3>desktopicon</LITERAL3>\r
+ <LITERAL3>dirifempty</LITERAL3>\r
+ <LITERAL3>disablenouninstallwarning</LITERAL3>\r
+ <LITERAL3>dontcloseonexit</LITERAL3>\r
+ <LITERAL3>dontcopy</LITERAL3>\r
+ <LITERAL3>dontcreatekey</LITERAL3>\r
+ <LITERAL3>dontinheritcheck</LITERAL3>\r
+ <LITERAL3>dontverifychecksum</LITERAL3>\r
+ <LITERAL3>exclusive</LITERAL3>\r
+ <LITERAL3>external</LITERAL3>\r
+ <LITERAL3>files</LITERAL3>\r
+ <LITERAL3>filesandordirs</LITERAL3>\r
+ <LITERAL3>fixed</LITERAL3>\r
+ <LITERAL3>fontisnttruetype</LITERAL3>\r
+ <LITERAL3>full</LITERAL3>\r
+ <LITERAL3>ignoreversion</LITERAL3>\r
+ <LITERAL3>iscustom</LITERAL3>\r
+ <LITERAL3>isreadme</LITERAL3>\r
+ <LITERAL3>hidden</LITERAL3>\r
+ <LITERAL3>hidewizard</LITERAL3>\r
+ <LITERAL3>modify</LITERAL3>\r
+ <LITERAL3>nocompression</LITERAL3>\r
+ <LITERAL3>noencryption</LITERAL3>\r
+ <LITERAL3>noerror</LITERAL3>\r
+ <LITERAL3>noregerror</LITERAL3>\r
+ <LITERAL3>nowait</LITERAL3>\r
+ <LITERAL3>onlyifdestfileexists</LITERAL3>\r
+ <LITERAL3>onlyifdoesntexist</LITERAL3>\r
+ <LITERAL3>overwritereadonly</LITERAL3>\r
+ <LITERAL3>postinstall</LITERAL3>\r
+ <LITERAL3>preservestringtype</LITERAL3>\r
+ <LITERAL3>promptifolder</LITERAL3>\r
+ <LITERAL3>quicklaunchicon</LITERAL3>\r
+ <LITERAL3>read</LITERAL3>\r
+ <LITERAL3>readonly</LITERAL3>\r
+ <LITERAL3>readexec</LITERAL3>\r
+ <LITERAL3>recursesubdirs</LITERAL3>\r
+ <LITERAL3>regserver</LITERAL3>\r
+ <LITERAL3>regtypelib</LITERAL3>\r
+ <LITERAL3>replacesameversion</LITERAL3>\r
+ <LITERAL3>restart</LITERAL3>\r
+ <LITERAL3>restartreplace</LITERAL3>\r
+ <LITERAL3>runhidden</LITERAL3>\r
+ <LITERAL3>runmaximized</LITERAL3>\r
+ <LITERAL3>runminimized</LITERAL3>\r
+ <LITERAL3>sharedfile</LITERAL3>\r
+ <LITERAL3>shellexec</LITERAL3>\r
+ <LITERAL3>skipifnotsilent</LITERAL3>\r
+ <LITERAL3>skipifsilent</LITERAL3>\r
+ <LITERAL3>skipifdoesntexist</LITERAL3>\r
+ <LITERAL3>skipifsourcedoesntexist</LITERAL3>\r
+ <LITERAL3>sortfilesbyextension</LITERAL3>\r
+ <LITERAL3>system</LITERAL3>\r
+ <LITERAL3>touch</LITERAL3>\r
+ <LITERAL3>unchecked</LITERAL3>\r
+ <LITERAL3>uninsalwaysuninstall</LITERAL3>\r
+ <LITERAL3>uninsclearvalue</LITERAL3>\r
+ <LITERAL3>uninsdeleteentry</LITERAL3>\r
+ <LITERAL3>uninsdeletekey</LITERAL3>\r
+ <LITERAL3>uninsdeletekeyifempty</LITERAL3>\r
+ <LITERAL3>uninsdeletesection</LITERAL3>\r
+ <LITERAL3>uninsdeletesectionifempty</LITERAL3>\r
+ <LITERAL3>uninsdeletevalue</LITERAL3>\r
+ <LITERAL3>uninsneveruninstall</LITERAL3>\r
+ <LITERAL3>uninsremovereadonly</LITERAL3>\r
+ <LITERAL3>uninsrestartdelete</LITERAL3>\r
+ <LITERAL3>useapppaths</LITERAL3>\r
+ <LITERAL3>waituntilidle</LITERAL3>\r
+\r
+ <!-- registry root keys -->\r
+ <LITERAL3>HKCR</LITERAL3>\r
+ <LITERAL3>HKCU</LITERAL3>\r
+ <LITERAL3>HKLM</LITERAL3>\r
+ <LITERAL3>HKU</LITERAL3>\r
+ <LITERAL3>HKCC</LITERAL3>\r
+\r
+ <!-- registry value types -->\r
+ <LITERAL3>none</LITERAL3>\r
+ <LITERAL3>string</LITERAL3>\r
+ <LITERAL3>expandsz</LITERAL3>\r
+ <LITERAL3>multisz</LITERAL3>\r
+ <LITERAL3>dword</LITERAL3>\r
+ <LITERAL3>binary</LITERAL3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="STRING" DEFAULT="LITERAL1" IGNORE_CASE="TRUE">\r
+ <!-- pre-processor constant -->\r
+ <SPAN TYPE="LITERAL4">\r
+ <BEGIN>{#</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <!-- constant -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="CONSTANT">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="CONSTANT" DEFAULT="KEYWORD3">\r
+ <MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="CONTEXT">code:</MARK_FOLLOWING>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ </RULES>\r
+\r
+ <!-- pre-processor directives -->\r
+ <RULES SET="DIRECTIVE" DEFAULT="LITERAL4" IGNORE_CASE="TRUE">\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- pre-processor defined functions -->\r
+ <KEYWORDS>\r
+ <FUNCTION>Defined</FUNCTION>\r
+ <FUNCTION>TypeOf</FUNCTION>\r
+ <FUNCTION>GetFileVersion</FUNCTION>\r
+ <FUNCTION>GetStringFileInfo</FUNCTION>\r
+ <FUNCTION>Int</FUNCTION>\r
+ <FUNCTION>Str</FUNCTION>\r
+ <FUNCTION>FileExists</FUNCTION>\r
+ <FUNCTION>FileSize</FUNCTION>\r
+ <FUNCTION>ReadIni</FUNCTION>\r
+ <FUNCTION>WriteIni</FUNCTION>\r
+ <FUNCTION>ReadReg</FUNCTION>\r
+ <FUNCTION>Exec</FUNCTION>\r
+ <FUNCTION>Copy</FUNCTION>\r
+ <FUNCTION>Pos</FUNCTION>\r
+ <FUNCTION>RPos</FUNCTION>\r
+ <FUNCTION>Len</FUNCTION>\r
+ <FUNCTION>SaveToFile</FUNCTION>\r
+ <FUNCTION>Find</FUNCTION>\r
+ <FUNCTION>SetupSetting</FUNCTION>\r
+ <FUNCTION>SetSetupSetting</FUNCTION>\r
+ <FUNCTION>LowerCase</FUNCTION>\r
+ <FUNCTION>EntryCount</FUNCTION>\r
+ <FUNCTION>GetEnv</FUNCTION>\r
+ <FUNCTION>DeleteFile</FUNCTION>\r
+ <FUNCTION>CopyFile</FUNCTION>\r
+ <FUNCTION>FindFirst</FUNCTION>\r
+ <FUNCTION>FindNext</FUNCTION>\r
+ <FUNCTION>FindClose</FUNCTION>\r
+ <FUNCTION>FindGetFileName</FUNCTION>\r
+ <FUNCTION>FileOpen</FUNCTION>\r
+ <FUNCTION>FileRead</FUNCTION>\r
+ <FUNCTION>FileReset</FUNCTION>\r
+ <FUNCTION>FileEof</FUNCTION>\r
+ <FUNCTION>FileClose</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- INTERLIS mode (www.interlis.ch) by Claude Eisenhut (ce@eisenhutinformatik.ch). -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="blockComment" VALUE="!!" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE">\r
+ <!-- Normal comments. -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">!!</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- Explanations. -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>//</BEGIN>\r
+ <END>//</END>\r
+ </SPAN>\r
+\r
+ <!-- INTERLIS 1 -->\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR"><-</SEQ>\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <!-- INTERLIS 2.1 -->\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">--</SEQ>\r
+ <SEQ TYPE="OPERATOR">-<#></SEQ>\r
+ <SEQ TYPE="OPERATOR">-<></SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ \r
+ <KEYWORDS>\r
+ <!-- INTERLIS 1 -->\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>ARCS</KEYWORD1>\r
+ <KEYWORD1>AREA</KEYWORD1>\r
+ <KEYWORD1>BASE</KEYWORD1>\r
+ <KEYWORD1>BLANK</KEYWORD1>\r
+ <KEYWORD1>CODE</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONTOUR</KEYWORD1>\r
+ <KEYWORD1>COORD2</KEYWORD1>\r
+ <KEYWORD1>COORD3</KEYWORD1>\r
+ <KEYWORD1>DATE</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>DEGREES</KEYWORD1>\r
+ <KEYWORD1>DERIVATIVES</KEYWORD1>\r
+ <KEYWORD1>DIM1</KEYWORD1>\r
+ <KEYWORD1>DIM2</KEYWORD1>\r
+ <KEYWORD1>DOMAIN</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>FIX</KEYWORD1>\r
+ <KEYWORD1>FONT</KEYWORD1>\r
+ <KEYWORD1>FORMAT</KEYWORD1>\r
+ <KEYWORD1>FREE</KEYWORD1>\r
+ <KEYWORD1>GRADS</KEYWORD1>\r
+ <KEYWORD1>HALIGNMENT</KEYWORD1>\r
+ <KEYWORD1>I16</KEYWORD1>\r
+ <KEYWORD1>I32</KEYWORD1>\r
+ <KEYWORD1>IDENT</KEYWORD1>\r
+ <KEYWORD1>LINEATTR</KEYWORD1>\r
+ <KEYWORD1>LINESIZE</KEYWORD1>\r
+ <KEYWORD1>MODEL</KEYWORD1>\r
+ <KEYWORD1>NO</KEYWORD1>\r
+ <KEYWORD1>OPTIONAL</KEYWORD1>\r
+ <KEYWORD1>OVERLAPS</KEYWORD1>\r
+ <KEYWORD1>PERIPHERY</KEYWORD1>\r
+ <KEYWORD1>POLYLINE</KEYWORD1>\r
+ <KEYWORD1>RADIANS</KEYWORD1>\r
+ <KEYWORD1>STRAIGHTS</KEYWORD1>\r
+ <KEYWORD1>SURFACE</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TEXT</KEYWORD1>\r
+ <KEYWORD1>TID</KEYWORD1>\r
+ <KEYWORD1>TIDSIZE</KEYWORD1>\r
+ <KEYWORD1>TOPIC</KEYWORD1>\r
+ <KEYWORD1>TRANSFER</KEYWORD1>\r
+ <KEYWORD1>UNDEFINED</KEYWORD1>\r
+ <KEYWORD1>VALIGNMENT</KEYWORD1>\r
+ <KEYWORD1>VERTEX</KEYWORD1>\r
+ <KEYWORD1>VERTEXINFO</KEYWORD1>\r
+ <KEYWORD1>VIEW</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WITHOUT</KEYWORD1>\r
+\r
+ <!-- INTERLIS 2.3 -->\r
+ <KEYWORD1>ABSTRACT</KEYWORD1>\r
+ <KEYWORD1>ACCORDING</KEYWORD1>\r
+ <KEYWORD1>AGGREGATES</KEYWORD1>\r
+ <KEYWORD1>AGGREGATION</KEYWORD1>\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>ANYCLASS</KEYWORD1>\r
+ <KEYWORD1>ANYSTRUCTURE</KEYWORD1>\r
+ <KEYWORD1>ARCS</KEYWORD1>\r
+ <KEYWORD1>AREA</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>ASSOCIATION</KEYWORD1>\r
+ <KEYWORD1>AT</KEYWORD1>\r
+ <KEYWORD1>ATTRIBUTE</KEYWORD1>\r
+ <KEYWORD1>ATTRIBUTES</KEYWORD1>\r
+ <KEYWORD1>BAG</KEYWORD1>\r
+ <KEYWORD1>BASE</KEYWORD1>\r
+ <KEYWORD1>BASED</KEYWORD1>\r
+ <KEYWORD1>BASKET</KEYWORD1>\r
+ <KEYWORD1>BINARY</KEYWORD1>\r
+ <KEYWORD1>BLACKBOX</KEYWORD1>\r
+ <KEYWORD1>BOOLEAN</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>CARDINALITY</KEYWORD1>\r
+ <KEYWORD1>CIRCULAR</KEYWORD1>\r
+ <KEYWORD1>CLASS</KEYWORD1>\r
+ <KEYWORD1>CLOCKWISE</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINT</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINTS</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONTINUOUS</KEYWORD1>\r
+ <KEYWORD1>CONTRACTED</KEYWORD1>\r
+ <KEYWORD1>COORD</KEYWORD1>\r
+ <KEYWORD1>COUNTERCLOCKWISE</KEYWORD1>\r
+ <KEYWORD1>DEFINED</KEYWORD1>\r
+ <KEYWORD1>DEPENDS</KEYWORD1>\r
+ <KEYWORD1>DERIVED</KEYWORD1>\r
+ <KEYWORD1>DIRECTED</KEYWORD1>\r
+ <KEYWORD1>DOMAIN</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ENUMTREEVAL</KEYWORD1>\r
+ <KEYWORD1>ENUMVAL</KEYWORD1>\r
+ <KEYWORD1>EQUAL</KEYWORD1>\r
+ <KEYWORD1>EXISTENCE</KEYWORD1>\r
+ <KEYWORD1>EXTENDED</KEYWORD1>\r
+ <KEYWORD1>EXTENDS</KEYWORD1>\r
+ <KEYWORD1>EXTERNAL</KEYWORD1>\r
+ <KEYWORD1>FINAL</KEYWORD1>\r
+ <KEYWORD1>FIRST</KEYWORD1>\r
+ <KEYWORD1>FORM</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+ <KEYWORD1>GRAPHIC</KEYWORD1>\r
+ <KEYWORD1>HALIGNMENT</KEYWORD1>\r
+ <KEYWORD1>HIDING</KEYWORD1>\r
+ <KEYWORD1>IMPORTS</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INHERITANCE</KEYWORD1>\r
+ <KEYWORD1>INSPECTION</KEYWORD1>\r
+ <KEYWORD1>INTERLIS</KEYWORD1>\r
+ <KEYWORD1>JOIN</KEYWORD1>\r
+ <KEYWORD1>LAST</KEYWORD1>\r
+ <KEYWORD1>LINE</KEYWORD1>\r
+ <KEYWORD1>LIST</KEYWORD1>\r
+ <KEYWORD1>LNBASE</KEYWORD1>\r
+ <KEYWORD1>LOCAL</KEYWORD1>\r
+ <KEYWORD1>MANDATORY</KEYWORD1>\r
+ <KEYWORD1>METAOBJECT</KEYWORD1>\r
+ <KEYWORD1>MODEL</KEYWORD1>\r
+ <KEYWORD1>MTEXT</KEYWORD1>\r
+ <KEYWORD1>NAME</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NO</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>NUMERIC</KEYWORD1>\r
+ <KEYWORD1>OBJECT</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>OID</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>ORDERED</KEYWORD1>\r
+ <KEYWORD1>OTHERS</KEYWORD1>\r
+ <KEYWORD1>OVERLAPS</KEYWORD1>\r
+ <KEYWORD1>PARAMETER</KEYWORD1>\r
+ <KEYWORD1>PARENT</KEYWORD1>\r
+ <KEYWORD1>PI</KEYWORD1>\r
+ <KEYWORD1>POLYLINE</KEYWORD1>\r
+ <KEYWORD1>PROJECTION</KEYWORD1>\r
+ <KEYWORD1>REFERENCE</KEYWORD1>\r
+ <KEYWORD1>REFSYSTEM</KEYWORD1>\r
+ <KEYWORD1>REQUIRED</KEYWORD1>\r
+ <KEYWORD1>RESTRICTED</KEYWORD1>\r
+ <KEYWORD1>ROTATION</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SIGN</KEYWORD1>\r
+ <KEYWORD1>STRAIGHTS</KEYWORD1>\r
+ <KEYWORD1>STRUCTURE</KEYWORD1>\r
+ <KEYWORD1>SUBDIVISION</KEYWORD1>\r
+ <KEYWORD1>SURFACE</KEYWORD1>\r
+ <KEYWORD1>SYMBOLOGY</KEYWORD1>\r
+ <KEYWORD1>TEXT</KEYWORD1>\r
+ <KEYWORD1>THATAREA</KEYWORD1>\r
+ <KEYWORD1>THIS</KEYWORD1>\r
+ <KEYWORD1>THISAREA</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TOPIC</KEYWORD1>\r
+ <KEYWORD1>TRANSIENT</KEYWORD1>\r
+ <KEYWORD1>TRANSLATION</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>UNDEFINED</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>UNIQUE</KEYWORD1>\r
+ <KEYWORD1>UNIT</KEYWORD1>\r
+ <KEYWORD1>UNQUALIFIED</KEYWORD1>\r
+ <KEYWORD1>URI</KEYWORD1>\r
+ <KEYWORD1>VALIGNMENT</KEYWORD1>\r
+ <KEYWORD1>VERSION</KEYWORD1>\r
+ <KEYWORD1>VERTEX</KEYWORD1>\r
+ <KEYWORD1>VIEW</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WITHOUT</KEYWORD1>\r
+ \r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- @RisingSun//XML//1.0//EN________________________________________________\r
+ \r
+ JEdit syntax mode for Io\r
+\r
+ ..........................................................................\r
+\r
+ File name : io.xml\r
+ Description : JEdit syntax file for the Io programming language\r
+ Related links : <http://www.iolanguage.com>, <http://www.jedit.org>\r
+\r
+ ..........................................................................\r
+ Author : Sébastien Pierre <spierre@type-z.org>\r
+ ..........................................................................\r
+\r
+ Creation date : 05-May-2003\r
+ Last revision : 19-May-2003\r
+ Revision : 1.1\r
+ History : \r
+ 19-May-2003 Added primitives highlighting.\r
+ 05-May-2003 First release\r
+ \r
+ ..................................................................... -->\r
+\r
+<!-- ________________________________________________________D O C T Y P E -->\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- ____________________________________________D O C U M E N T _ R O O T -->\r
+<MODE>\r
+\r
+ <!-- Properties_______________________________________________________ -->\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentStart" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <!-- FIXME: There may be a problem with this redefinition of\r
+ lineComment-->\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE=")" />\r
+ </PROPS>\r
+\r
+ <!-- Rules____________________________________________________________ -->\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- Comments_____________________________________________________ -->\r
+\r
+ <!-- Shell-like comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+\r
+ <!-- C-like comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Strings______________________________________________________ -->\r
+\r
+ <!-- Single quotes -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- Triple quotes -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>"""</BEGIN>\r
+ <END>"""</END>\r
+ </SPAN>\r
+\r
+ <!-- Operatiors___________________________________________________ -->\r
+\r
+ <SEQ TYPE="OPERATOR">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">@@</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+\r
+ <!-- Keywords_____________________________________________________ -->\r
+\r
+ <KEYWORDS>\r
+\r
+ <!-- Io primitives -->\r
+ <KEYWORD1>Block</KEYWORD1>\r
+ <KEYWORD1>Buffer</KEYWORD1>\r
+ <KEYWORD1>CFunction</KEYWORD1>\r
+ <KEYWORD1>Date</KEYWORD1>\r
+ <KEYWORD1>Duration</KEYWORD1>\r
+ <KEYWORD1>File</KEYWORD1>\r
+ <KEYWORD1>Future</KEYWORD1>\r
+ <KEYWORD1>List</KEYWORD1>\r
+ <KEYWORD1>LinkedList</KEYWORD1>\r
+ <KEYWORD1>Map</KEYWORD1>\r
+ <KEYWORD1>Nop</KEYWORD1>\r
+ <KEYWORD1>Message</KEYWORD1>\r
+ <KEYWORD1>Nil</KEYWORD1>\r
+ <KEYWORD1>Number</KEYWORD1>\r
+ <KEYWORD1>Object</KEYWORD1>\r
+ <KEYWORD1>String</KEYWORD1>\r
+ <KEYWORD1>WeakLink</KEYWORD1>\r
+\r
+ <!-- Io lambda-like primitives -->\r
+ <KEYWORD1>block</KEYWORD1>\r
+ <KEYWORD1>method</KEYWORD1>\r
+\r
+ <!-- Io control primitives -->\r
+ <KEYWORD2>while</KEYWORD2>\r
+ <KEYWORD2>foreach</KEYWORD2>\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2>\r
+ <KEYWORD2>do</KEYWORD2>\r
+\r
+ <!-- Io basic messages -->\r
+ <KEYWORD3>super</KEYWORD3>\r
+ <KEYWORD3>self</KEYWORD3>\r
+ <KEYWORD3>clone</KEYWORD3>\r
+ <KEYWORD3>proto</KEYWORD3>\r
+ <KEYWORD3>setSlot</KEYWORD3>\r
+ <KEYWORD3>hasSlot</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>write</KEYWORD3>\r
+ <KEYWORD3>print</KEYWORD3>\r
+ <KEYWORD3>forward</KEYWORD3>\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
+<!-- EOF-UNIX/iso-8895-1__________________________@RisingSun//XML//1.0//EN -->\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0[lL]?|[1-9]\d{0,9}(\d{0,9}[lL])?|0[xX]\p{XDigit}{1,8}(\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\.[0-9]*|\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))">\r
+\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <!-- workaround to stop "*" from being colorized\r
+ in import statements. -->\r
+ <SEQ TYPE="NULL">.*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_WHITESPACE_END="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Annotation types -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">@</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>import</KEYWORD2>\r
+\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>interface</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <FUNCTION>assert</FUNCTION>\r
+ <KEYWORD1>strictfp</KEYWORD1>\r
+\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>super</LITERAL2>\r
+ <LITERAL2>this</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+\r
+ <INVALID>goto</INVALID>\r
+ <INVALID>const</INVALID>\r
+\r
+ <!-- Java 1.5 -->\r
+ <KEYWORD3>enum</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="JAVADOC" DEFAULT="COMMENT3" IGNORE_CASE="TRUE">\r
+\r
+ <!-- so that *@param is highlighted -->\r
+ <SEQ TYPE="COMMENT3">*</SEQ>\r
+\r
+ <!-- Javadoc ignores tags inside <pre> -->\r
+ <!-- XXX no it doesn't -->\r
+ <!-- SPAN TYPE="MARKUP" DELEGATE="JAVADOC_PRE">\r
+ <BEGIN><pre></BEGIN>\r
+ <END></pre></END>\r
+ </SPAN -->\r
+\r
+ <!-- HTML comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- Javadoc allows this -->\r
+ <SEQ TYPE="COMMENT3"><<</SEQ>\r
+ <SEQ TYPE="COMMENT3"><=</SEQ>\r
+ <SEQ TYPE="COMMENT3">< </SEQ>\r
+\r
+ <!-- HTML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS"\r
+ NO_LINE_BREAK="TRUE">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- so that @link{...} is highlighted -->\r
+ <!-- XXX: this is wrong, {@link ..} is correct, see below -->\r
+ <!--<SEQ TYPE="COMMENT3">{</SEQ>-->\r
+\r
+ <SPAN_REGEXP TYPE="LABEL" HASH_CHAR="{@" NO_WORD_BREAK="FALSE" DELEGATE="JAVADOC_PARAM">\r
+ <BEGIN>\{@(link|linkplain|docRoot|code|literal)\s</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- for the common usage of the cvs keyword $Id: java.xml 9228 2007-03-27 22:01:25Z ezust $ -->\r
+ <SPAN_REGEXP TYPE="LABEL" HASH_CHAR="@version" NO_WORD_BREAK="FALSE" DELEGATE="JAVADOC_PARAM">\r
+ <BEGIN>@version\s+\$</BEGIN>\r
+ <END>$</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- This works only when you use the same whitespace before and after the param's name,\r
+ eg. a tab before and after, but mixing space and tab won't work.\r
+ The reason is that you can't enter a regexp in END, except for the backreference operator $n -->\r
+ <SPAN_REGEXP TYPE="LABEL" HASH_CHAR="@" NO_WORD_BREAK="FALSE" DELEGATE="JAVADOC_PARAM">\r
+ <BEGIN>@(?:param|throws|exception|serialField)(\s)</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <!-- Note: the labels in comments are handled by SPANs above -->\r
+\r
+ <!-- Official javadoc tags:\r
+ http://java.sun.com/j2se/1.5/docs/tooldocs/windows/javadoc.html#javadoctags -->\r
+ <LABEL>@author</LABEL>\r
+ <LABEL>@deprecated</LABEL>\r
+ <!--<LABEL>@docRoot</LABEL>-->\r
+ <!--<LABEL>@exception</LABEL>-->\r
+ <LABEL>{@inheritDoc}</LABEL>\r
+ <!--<LABEL>@link</LABEL>-->\r
+ <!--<LABEL>@linkplain</LABEL>-->\r
+ <!--<LABEL>@param</LABEL>-->\r
+ <LABEL>@return</LABEL>\r
+ <LABEL>@see</LABEL>\r
+ <LABEL>@serial</LABEL>\r
+ <LABEL>@serialData</LABEL>\r
+ <!--<LABEL>@serialField</LABEL>-->\r
+ <LABEL>@since</LABEL>\r
+ <!--<LABEL>@throws</LABEL>-->\r
+ <LABEL>{@value}</LABEL>\r
+ <LABEL>@version</LABEL>\r
+\r
+ <!-- new in 1.5 -->\r
+ <!--<LABEL>@code</LABEL>-->\r
+ <!--<LABEL>@literal</LABEL>-->\r
+\r
+ <!-- SUNs proposed tags:\r
+ http://java.sun.com/j2se/javadoc/proposed-tags.html -->\r
+ <KEYWORD2>@category</KEYWORD2>\r
+ <KEYWORD2>@example</KEYWORD2>\r
+ <KEYWORD2>@exclude</KEYWORD2>\r
+ <KEYWORD2>@index</KEYWORD2>\r
+ <KEYWORD2>@internal</KEYWORD2>\r
+ <KEYWORD2>@obsolete</KEYWORD2>\r
+ <KEYWORD2>@threadsafety</KEYWORD2>\r
+ <KEYWORD2>@tutorial</KEYWORD2>\r
+ <KEYWORD2>@todo</KEYWORD2>\r
+\r
+ <!-- Custom tags -->\r
+ <KEYWORD4>@access</KEYWORD4>\r
+ <KEYWORD4>@beaninfo</KEYWORD4>\r
+ <KEYWORD4>@bon</KEYWORD4>\r
+ <KEYWORD4>@bug</KEYWORD4>\r
+ <KEYWORD4>@complexity</KEYWORD4>\r
+ <KEYWORD4>@design</KEYWORD4>\r
+ <KEYWORD4>@ensures</KEYWORD4>\r
+ <KEYWORD4>@equivalent</KEYWORD4>\r
+ <KEYWORD4>@generates</KEYWORD4>\r
+ <KEYWORD4>@guard</KEYWORD4>\r
+ <KEYWORD4>@hides</KEYWORD4>\r
+ <KEYWORD4>@history</KEYWORD4>\r
+ <KEYWORD4>@idea</KEYWORD4>\r
+ <KEYWORD4>@invariant</KEYWORD4>\r
+ <KEYWORD4>@modifies</KEYWORD4>\r
+ <KEYWORD4>@overrides</KEYWORD4>\r
+ <KEYWORD4>@post</KEYWORD4>\r
+ <KEYWORD4>@pre</KEYWORD4>\r
+ <KEYWORD4>@references</KEYWORD4>\r
+ <KEYWORD4>@requires</KEYWORD4>\r
+ <KEYWORD4>@review</KEYWORD4>\r
+ <KEYWORD4>@spec</KEYWORD4>\r
+ <KEYWORD4>@uses</KEYWORD4>\r
+ <KEYWORD4>@values</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- just a dummy which makes use of the default token type COMMENT4 for highlighting the word after @param in javadoc -->\r
+ <RULES SET="JAVADOC_PARAM" DEFAULT="COMMENT4" IGNORE_CASE="TRUE" />\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE">\r
+ <IMPORT DELEGATE="java::MAIN"/>\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD1>EOF</KEYWORD1>\r
+ <KEYWORD1>IGNORE_CASE</KEYWORD1>\r
+ <KEYWORD1>JAVACODE</KEYWORD1>\r
+ <KEYWORD1>LOOKAHEAD</KEYWORD1>\r
+ <KEYWORD1>MORE</KEYWORD1>\r
+ <KEYWORD1>PARSER_BEGIN</KEYWORD1>\r
+ <KEYWORD1>PARSER_END</KEYWORD1>\r
+ <KEYWORD1>SKIP</KEYWORD1>\r
+ <KEYWORD1>SPECIAL_TOKEN</KEYWORD1>\r
+ <KEYWORD1>TOKEN</KEYWORD1>\r
+ <KEYWORD1>TOKEN_MGR_DECLS</KEYWORD1>\r
+ <KEYWORD1>options</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- JavaScript mode by Andre Kaplan -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <!-- The rest of the javascript info -->\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN_REGEXP HASH_CHARS="ABCDEFGHIJKLMNOPQRSTUVWXYZ_" TYPE="FUNCTION" DELEGATE="FUNCTION_PARAMS">\r
+ <BEGIN>[A-Za-z_][\w_-]*\s*\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Keep brackets together: -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="MAIN">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="COMMENT2">//--></SEQ>\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="COMMENT1"><!--</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- ECMAScript keywords -->\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <LITERAL2>this</LITERAL2>\r
+ <KEYWORD1>typeof</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD3>void</KEYWORD3>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+\r
+ <!--ECMAScript keywords-->\r
+ <!-- Reserved for future use\r
+ (some are already used in some Javascript Engines)\r
+ -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>debugger</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD1>enum</KEYWORD1>\r
+ <KEYWORD2>export</KEYWORD2>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+\r
+ <KEYWORD3>short</KEYWORD3>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <LITERAL2>super</LITERAL2>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+\r
+ <!-- Intrinsic Objects (Good idea not to use these names!!)-->\r
+ <KEYWORD3>Array</KEYWORD3>\r
+ <KEYWORD3>Boolean</KEYWORD3>\r
+ <KEYWORD3>Date</KEYWORD3>\r
+ <KEYWORD3>Function</KEYWORD3>\r
+ <KEYWORD3>Global</KEYWORD3>\r
+ <KEYWORD3>Math</KEYWORD3>\r
+ <KEYWORD3>Number</KEYWORD3>\r
+ <KEYWORD3>Object</KEYWORD3>\r
+ <KEYWORD3>RegExp</KEYWORD3><!-- Not ECMA -->\r
+ <KEYWORD3>String</KEYWORD3>\r
+\r
+ <!-- Literals -->\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+\r
+ <LITERAL2>NaN</LITERAL2>\r
+ <LITERAL2>Infinity</LITERAL2>\r
+\r
+ <!-- Global functions -->\r
+ <LITERAL2>eval</LITERAL2>\r
+ <LITERAL2>parseInt</LITERAL2>\r
+ <LITERAL2>parseFloat</LITERAL2>\r
+ <LITERAL2>escape</LITERAL2>\r
+ <LITERAL2>unescape</LITERAL2>\r
+ <LITERAL2>isNaN</LITERAL2>\r
+ <LITERAL2>isFinite</LITERAL2>\r
+\r
+ <!-- Comment/Uncomment your favorite ADO Constants-->\r
+\r
+ <!-- ADO Constants-->\r
+\r
+ <!-- CursorTypeEnum Values -->\r
+ <LITERAL2>adOpenForwardOnly</LITERAL2>\r
+ <LITERAL2>adOpenKeyset</LITERAL2>\r
+ <LITERAL2>adOpenDynamic</LITERAL2>\r
+ <LITERAL2>adOpenStatic</LITERAL2>\r
+\r
+ <!-- CursorOptionEnum Values -->\r
+<!-- <LITERAL2>adHoldRecords</LITERAL2>\r
+ <LITERAL2>adMovePrevious</LITERAL2>\r
+ <LITERAL2>adAddNew</LITERAL2>\r
+ <LITERAL2>adDelete</LITERAL2>\r
+ <LITERAL2>adUpdate</LITERAL2>\r
+ <LITERAL2>adBookmark</LITERAL2>\r
+ <LITERAL2>adApproxPosition</LITERAL2>\r
+ <LITERAL2>adUpdateBatch</LITERAL2>\r
+ <LITERAL2>adResync</LITERAL2>\r
+ <LITERAL2>adNotify</LITERAL2>\r
+ <LITERAL2>adFind</LITERAL2>\r
+ <LITERAL2>adSeek</LITERAL2>\r
+ <LITERAL2>adIndex</LITERAL2>\r
+-->\r
+ <!-- LockTypeEnum Values -->\r
+ <LITERAL2>adLockReadOnly</LITERAL2>\r
+ <LITERAL2>adLockPessimistic</LITERAL2>\r
+ <LITERAL2>adLockOptimistic</LITERAL2>\r
+ <LITERAL2>adLockBatchOptimistic</LITERAL2>\r
+\r
+ <!-- ExecuteOptionEnum Values -->\r
+ <LITERAL2>adRunAsync</LITERAL2>\r
+ <LITERAL2>adAsyncExecute</LITERAL2>\r
+ <LITERAL2>adAsyncFetch</LITERAL2>\r
+ <LITERAL2>adAsyncFetchNonBlocking</LITERAL2>\r
+ <LITERAL2>adExecuteNoRecords</LITERAL2>\r
+\r
+ <!-- ConnectOptionEnum Values -->\r
+<!-- <LITERAL2>adAsyncConnect</LITERAL2>\r
+-->\r
+ <!-- ObjectStateEnum Values -->\r
+ <LITERAL2>adStateClosed</LITERAL2>\r
+ <LITERAL2>adStateOpen</LITERAL2>\r
+ <LITERAL2>adStateConnecting</LITERAL2>\r
+ <LITERAL2>adStateExecuting</LITERAL2>\r
+ <LITERAL2>adStateFetching</LITERAL2>\r
+\r
+ <!-- CursorLocationEnum Values -->\r
+ <LITERAL2>adUseServer</LITERAL2>\r
+ <LITERAL2>adUseClient</LITERAL2>\r
+\r
+ <!-- DataTypeEnum Values -->\r
+ <LITERAL2>adEmpty</LITERAL2>\r
+ <LITERAL2>adTinyInt</LITERAL2>\r
+ <LITERAL2>adSmallInt</LITERAL2>\r
+ <LITERAL2>adInteger</LITERAL2>\r
+ <LITERAL2>adBigInt</LITERAL2>\r
+ <LITERAL2>adUnsignedTinyInt</LITERAL2>\r
+ <LITERAL2>adUnsignedSmallInt</LITERAL2>\r
+ <LITERAL2>adUnsignedInt</LITERAL2>\r
+ <LITERAL2>adUnsignedBigInt</LITERAL2>\r
+ <LITERAL2>adSingle</LITERAL2>\r
+ <LITERAL2>adDouble</LITERAL2>\r
+ <LITERAL2>adCurrency</LITERAL2>\r
+ <LITERAL2>adDecimal</LITERAL2>\r
+ <LITERAL2>adNumeric</LITERAL2>\r
+ <LITERAL2>adBoolean</LITERAL2>\r
+ <LITERAL2>adError</LITERAL2>\r
+ <LITERAL2>adUserDefined</LITERAL2>\r
+ <LITERAL2>adVariant</LITERAL2>\r
+ <LITERAL2>adIDispatch</LITERAL2>\r
+ <LITERAL2>adIUnknown</LITERAL2>\r
+ <LITERAL2>adGUID</LITERAL2>\r
+ <LITERAL2>adDate</LITERAL2>\r
+ <LITERAL2>adDBDate</LITERAL2>\r
+ <LITERAL2>adDBTime</LITERAL2>\r
+ <LITERAL2>adDBTimeStamp</LITERAL2>\r
+ <LITERAL2>adBSTR</LITERAL2>\r
+ <LITERAL2>adChar</LITERAL2>\r
+ <LITERAL2>adVarChar</LITERAL2>\r
+ <LITERAL2>adLongVarChar</LITERAL2>\r
+ <LITERAL2>adWChar</LITERAL2>\r
+ <LITERAL2>adVarWChar</LITERAL2>\r
+ <LITERAL2>adLongVarWChar</LITERAL2>\r
+ <LITERAL2>adBinary</LITERAL2>\r
+ <LITERAL2>adVarBinary</LITERAL2>\r
+ <LITERAL2>adLongVarBinary</LITERAL2>\r
+ <LITERAL2>adChapter</LITERAL2>\r
+ <LITERAL2>adFileTime</LITERAL2>\r
+ <LITERAL2>adDBFileTime</LITERAL2>\r
+ <LITERAL2>adPropVariant</LITERAL2>\r
+ <LITERAL2>adVarNumeric</LITERAL2>\r
+\r
+ <!-- FieldAttributeEnum Values -->\r
+<!-- <LITERAL2>adFldMayDefer</LITERAL2>\r
+ <LITERAL2>adFldUpdatable</LITERAL2>\r
+ <LITERAL2>adFldUnknownUpdatable</LITERAL2>\r
+ <LITERAL2>adFldFixed</LITERAL2>\r
+ <LITERAL2>adFldIsNullable</LITERAL2>\r
+ <LITERAL2>adFldMayBeNull</LITERAL2>\r
+ <LITERAL2>adFldLong</LITERAL2>\r
+ <LITERAL2>adFldRowID</LITERAL2>\r
+ <LITERAL2>adFldRowVersion</LITERAL2>\r
+ <LITERAL2>adFldCacheDeferred</LITERAL2>\r
+ <LITERAL2>adFldKeyColumn</LITERAL2>\r
+-->\r
+\r
+ <!-- EditModeEnum Values -->\r
+<!-- <LITERAL2>adEditNone</LITERAL2>\r
+ <LITERAL2>adEditInProgress</LITERAL2>\r
+ <LITERAL2>adEditAdd</LITERAL2>\r
+ <LITERAL2>adEditDelete</LITERAL2>\r
+-->\r
+ <!-- RecordStatusEnum Values -->\r
+<!-- <LITERAL2>adRecOK</LITERAL2>\r
+ <LITERAL2>adRecNew</LITERAL2>\r
+ <LITERAL2>adRecModified</LITERAL2>\r
+ <LITERAL2>adRecDeleted</LITERAL2>\r
+ <LITERAL2>adRecUnmodified</LITERAL2>\r
+ <LITERAL2>adRecInvalid</LITERAL2>\r
+ <LITERAL2>adRecMultipleChanges</LITERAL2>\r
+ <LITERAL2>adRecPendingChanges</LITERAL2>\r
+ <LITERAL2>adRecCanceled</LITERAL2>\r
+ <LITERAL2>adRecCantRelease</LITERAL2>\r
+ <LITERAL2>adRecConcurrencyViolation</LITERAL2>\r
+ <LITERAL2>adRecIntegrityViolation</LITERAL2>\r
+ <LITERAL2>adRecMaxChangesExceeded</LITERAL2>\r
+ <LITERAL2>adRecObjectOpen</LITERAL2>\r
+ <LITERAL2>adRecOutOfMemory</LITERAL2>\r
+ <LITERAL2>adRecPermissionDenied</LITERAL2>\r
+ <LITERAL2>adRecSchemaViolation</LITERAL2>\r
+ <LITERAL2>adRecDBDeleted</LITERAL2>\r
+-->\r
+ <!-- GetRowsOptionEnum Values -->\r
+<!-- <LITERAL2>adGetRowsRest</LITERAL2>\r
+-->\r
+\r
+ <!-- PositionEnum Values -->\r
+<!-- <LITERAL2>adPosUnknown</LITERAL2>\r
+ <LITERAL2>adPosBOF</LITERAL2>\r
+ <LITERAL2>adPosEOF</LITERAL2>\r
+-->\r
+\r
+ <!-- enum Values -->\r
+<!-- <LITERAL2>adBookmarkCurrent</LITERAL2>\r
+ <LITERAL2>adBookmarkFirst</LITERAL2>\r
+ <LITERAL2>adBookmarkLast</LITERAL2>\r
+-->\r
+ <!-- MarshalOptionsEnum Values -->\r
+<!-- <LITERAL2>adMarshalAll</LITERAL2>\r
+ <LITERAL2>adMarshalModifiedOnly</LITERAL2>\r
+-->\r
+ <!-- AffectEnum Values -->\r
+<!-- <LITERAL2>adAffectCurrent</LITERAL2>\r
+ <LITERAL2>adAffectGroup</LITERAL2>\r
+ <LITERAL2>adAffectAll</LITERAL2>\r
+ <LITERAL2>adAffectAllChapters</LITERAL2>\r
+-->\r
+\r
+ <!-- ResyncEnum Values -->\r
+<!-- <LITERAL2>adResyncUnderlyingValues</LITERAL2>\r
+ <LITERAL2>adResyncAllValues</LITERAL2>\r
+-->\r
+ <!-- CompareEnum Values -->\r
+<!-- <LITERAL2>adCompareLessThan</LITERAL2>\r
+ <LITERAL2>adCompareEqual</LITERAL2>\r
+ <LITERAL2>adCompareGreaterThan</LITERAL2>\r
+ <LITERAL2>adCompareNotEqual</LITERAL2>\r
+ <LITERAL2>adCompareNotComparable</LITERAL2>\r
+-->\r
+ <!-- FilterGroupEnum Values -->\r
+<!-- <LITERAL2>adFilterNone</LITERAL2>\r
+ <LITERAL2>adFilterPendingRecords</LITERAL2>\r
+ <LITERAL2>adFilterAffectedRecords</LITERAL2>\r
+ <LITERAL2>adFilterFetchedRecords</LITERAL2>\r
+ <LITERAL2>adFilterPredicate</LITERAL2>\r
+ <LITERAL2>adFilterConflictingRecords</LITERAL2>\r
+-->\r
+ <!-- SearchDirectionEnum Values -->\r
+<!-- <LITERAL2>adSearchForward</LITERAL2>\r
+ <LITERAL2>adSearchBackward</LITERAL2>\r
+-->\r
+\r
+ <!-- PersistFormatEnum Values -->\r
+ <LITERAL2>adPersistADTG</LITERAL2>\r
+ <LITERAL2>adPersistXML</LITERAL2>\r
+\r
+ <!-- StringFormatEnum Values -->\r
+<!-- <LITERAL2>adStringXML</LITERAL2>\r
+ <LITERAL2>adStringHTML</LITERAL2>\r
+ <LITERAL2>adClipString</LITERAL2>\r
+-->\r
+ <!-- ConnectPromptEnum Values -->\r
+<!-- <LITERAL2>adPromptAlways</LITERAL2>\r
+ <LITERAL2>adPromptComplete</LITERAL2>\r
+ <LITERAL2>adPromptCompleteRequired</LITERAL2>\r
+ <LITERAL2>adPromptNever</LITERAL2>\r
+-->\r
+ <!-- ConnectModeEnum Values -->\r
+<!-- <LITERAL2>adModeUnknown</LITERAL2>\r
+ <LITERAL2>adModeRead</LITERAL2>\r
+ <LITERAL2>adModeWrite</LITERAL2>\r
+ <LITERAL2>adModeReadWrite</LITERAL2>\r
+ <LITERAL2>adModeShareDenyRead</LITERAL2>\r
+ <LITERAL2>adModeShareDenyWrite</LITERAL2>\r
+ <LITERAL2>adModeShareExclusive</LITERAL2>\r
+ <LITERAL2>adModeShareDenyNone</LITERAL2>\r
+-->\r
+ <!-- IsolationLevelEnum Values -->\r
+<!-- <LITERAL2>adXactUnspecified</LITERAL2>\r
+ <LITERAL2>adXactChaos</LITERAL2>\r
+ <LITERAL2>adXactReadUncommitted</LITERAL2>\r
+ <LITERAL2>adXactBrowse</LITERAL2>\r
+ <LITERAL2>adXactCursorStability</LITERAL2>\r
+ <LITERAL2>adXactReadCommitted</LITERAL2>\r
+ <LITERAL2>adXactRepeatableRead</LITERAL2>\r
+ <LITERAL2>adXactSerializable</LITERAL2>\r
+ <LITERAL2>adXactIsolated</LITERAL2>\r
+-->\r
+ <!-- XactAttributeEnum Values -->\r
+<!-- <LITERAL2>adXactCommitRetaining</LITERAL2>\r
+ <LITERAL2>adXactAbortRetaining</LITERAL2>\r
+-->\r
+ <!-- PropertyAttributesEnum Values -->\r
+<!-- <LITERAL2>adPropNotSupported</LITERAL2>\r
+ <LITERAL2>adPropRequired</LITERAL2>\r
+ <LITERAL2>adPropOptional</LITERAL2>\r
+ <LITERAL2>adPropRead</LITERAL2>\r
+ <LITERAL2>adPropWrite</LITERAL2>\r
+-->\r
+ <!-- ErrorValueEnum Values -->\r
+<!-- <LITERAL2>adErrInvalidArgument</LITERAL2>\r
+ <LITERAL2>adErrNoCurrentRecord</LITERAL2>\r
+ <LITERAL2>adErrIllegalOperation</LITERAL2>\r
+ <LITERAL2>adErrInTransaction</LITERAL2>\r
+ <LITERAL2>adErrFeatureNotAvailable</LITERAL2>\r
+ <LITERAL2>adErrItemNotFound</LITERAL2>\r
+ <LITERAL2>adErrObjectInCollection</LITERAL2>\r
+ <LITERAL2>adErrObjectNotSet</LITERAL2>\r
+ <LITERAL2>adErrDataConversion</LITERAL2>\r
+ <LITERAL2>adErrObjectClosed</LITERAL2>\r
+ <LITERAL2>adErrObjectOpen</LITERAL2>\r
+ <LITERAL2>adErrProviderNotFound</LITERAL2>\r
+ <LITERAL2>adErrBoundToCommand</LITERAL2>\r
+ <LITERAL2>adErrInvalidParamInfo</LITERAL2>\r
+ <LITERAL2>adErrInvalidConnection</LITERAL2>\r
+ <LITERAL2>adErrNotReentrant</LITERAL2>\r
+ <LITERAL2>adErrStillExecuting</LITERAL2>\r
+ <LITERAL2>adErrOperationCancelled</LITERAL2>\r
+ <LITERAL2>adErrStillConnecting</LITERAL2>\r
+ <LITERAL2>adErrNotExecuting</LITERAL2>\r
+ <LITERAL2>adErrUnsafeOperation</LITERAL2>\r
+-->\r
+ <!-- ParameterAttributesEnum Values -->\r
+ <LITERAL2>adParamSigned</LITERAL2>\r
+ <LITERAL2>adParamNullable</LITERAL2>\r
+ <LITERAL2>adParamLong</LITERAL2>\r
+\r
+ <!-- ParameterDirectionEnum Values -->\r
+ <LITERAL2>adParamUnknown</LITERAL2>\r
+ <LITERAL2>adParamInput</LITERAL2>\r
+ <LITERAL2>adParamOutput</LITERAL2>\r
+ <LITERAL2>adParamInputOutput</LITERAL2>\r
+ <LITERAL2>adParamReturnValue</LITERAL2>\r
+\r
+ <!-- CommandTypeEnum Values -->\r
+ <LITERAL2>adCmdUnknown</LITERAL2>\r
+ <LITERAL2>adCmdText</LITERAL2>\r
+ <LITERAL2>adCmdTable</LITERAL2>\r
+ <LITERAL2>adCmdStoredProc</LITERAL2>\r
+ <LITERAL2>adCmdFile</LITERAL2>\r
+ <LITERAL2>adCmdTableDirect</LITERAL2>\r
+\r
+ <!-- EventStatusEnum Values -->\r
+<!-- <LITERAL2>adStatusOK</LITERAL2>\r
+ <LITERAL2>adStatusErrorsOccurred</LITERAL2>\r
+ <LITERAL2>adStatusCantDeny</LITERAL2>\r
+ <LITERAL2>adStatusCancel</LITERAL2>\r
+ <LITERAL2>adStatusUnwantedEvent</LITERAL2>\r
+-->\r
+ <!-- EventReasonEnum Values -->\r
+<!-- <LITERAL2>adRsnAddNew</LITERAL2>\r
+ <LITERAL2>adRsnDelete</LITERAL2>\r
+ <LITERAL2>adRsnUpdate</LITERAL2>\r
+ <LITERAL2>adRsnUndoUpdate</LITERAL2>\r
+ <LITERAL2>adRsnUndoAddNew</LITERAL2>\r
+ <LITERAL2>adRsnUndoDelete</LITERAL2>\r
+ <LITERAL2>adRsnRequery</LITERAL2>\r
+ <LITERAL2>adRsnResynch</LITERAL2>\r
+ <LITERAL2>adRsnClose</LITERAL2>\r
+ <LITERAL2>adRsnMove</LITERAL2>\r
+ <LITERAL2>adRsnFirstChange</LITERAL2>\r
+ <LITERAL2>adRsnMoveFirst</LITERAL2>\r
+ <LITERAL2>adRsnMoveNext</LITERAL2>\r
+ <LITERAL2>adRsnMovePrevious</LITERAL2>\r
+ <LITERAL2>adRsnMoveLast</LITERAL2>\r
+-->\r
+ <!-- SchemaEnum Values -->\r
+<!-- <LITERAL2>adSchemaProviderSpecific</LITERAL2>\r
+ <LITERAL2>adSchemaAsserts</LITERAL2>\r
+ <LITERAL2>adSchemaCatalogs</LITERAL2>\r
+ <LITERAL2>adSchemaCharacterSets</LITERAL2>\r
+ <LITERAL2>adSchemaCollations</LITERAL2>\r
+ <LITERAL2>adSchemaColumns</LITERAL2>\r
+ <LITERAL2>adSchemaCheckConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaConstraintColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaConstraintTableUsage</LITERAL2>\r
+ <LITERAL2>adSchemaKeyColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaReferentialConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaTableConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaColumnsDomainUsage</LITERAL2>\r
+ <LITERAL2>adSchemaIndexes</LITERAL2>\r
+ <LITERAL2>adSchemaColumnPrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaTablePrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaUsagePrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaProcedures</LITERAL2>\r
+ <LITERAL2>adSchemaSchemata</LITERAL2>\r
+ <LITERAL2>adSchemaSQLLanguages</LITERAL2>\r
+ <LITERAL2>adSchemaStatistics</LITERAL2>\r
+ <LITERAL2>adSchemaTables</LITERAL2>\r
+ <LITERAL2>adSchemaTranslations</LITERAL2>\r
+ <LITERAL2>adSchemaProviderTypes</LITERAL2>\r
+ <LITERAL2>adSchemaViews</LITERAL2>\r
+ <LITERAL2>adSchemaViewColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaViewTableUsage</LITERAL2>\r
+ <LITERAL2>adSchemaProcedureParameters</LITERAL2>\r
+ <LITERAL2>adSchemaForeignKeys</LITERAL2>\r
+ <LITERAL2>adSchemaPrimaryKeys</LITERAL2>\r
+ <LITERAL2>adSchemaProcedureColumns</LITERAL2>\r
+ <LITERAL2>adSchemaDBInfoKeywords</LITERAL2>\r
+ <LITERAL2>adSchemaDBInfoLiterals</LITERAL2>\r
+ <LITERAL2>adSchemaCubes</LITERAL2>\r
+ <LITERAL2>adSchemaDimensions</LITERAL2>\r
+ <LITERAL2>adSchemaHierarchies</LITERAL2>\r
+ <LITERAL2>adSchemaLevels</LITERAL2>\r
+ <LITERAL2>adSchemaMeasures</LITERAL2>\r
+ <LITERAL2>adSchemaProperties</LITERAL2>\r
+ <LITERAL2>adSchemaMembers</LITERAL2>\r
+-->\r
+ <!-- SeekEnum Values -->\r
+<!-- <LITERAL2>adSeekFirstEQ</LITERAL2>\r
+ <LITERAL2>adSeekLastEQ</LITERAL2>\r
+ <LITERAL2>adSeekAfterEQ</LITERAL2>\r
+ <LITERAL2>adSeekAfter</LITERAL2>\r
+ <LITERAL2>adSeekBeforeEQ</LITERAL2>\r
+ <LITERAL2>adSeekBefore</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_UPDATECRITERIA_ENUM Values -->\r
+<!-- <LITERAL2>adCriteriaKey</LITERAL2>\r
+ <LITERAL2>adCriteriaAllCols</LITERAL2>\r
+ <LITERAL2>adCriteriaUpdCols</LITERAL2>\r
+ <LITERAL2>adCriteriaTimeStamp</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_ASYNCTHREADPRIORITY_ENUM Values -->\r
+<!-- <LITERAL2>adPriorityLowest</LITERAL2>\r
+ <LITERAL2>adPriorityBelowNormal</LITERAL2>\r
+ <LITERAL2>adPriorityNormal</LITERAL2>\r
+ <LITERAL2>adPriorityAboveNormal</LITERAL2>\r
+ <LITERAL2>adPriorityHighest</LITERAL2>\r
+-->\r
+ <!-- CEResyncEnum Values -->\r
+<!-- <LITERAL2>adResyncNone</LITERAL2>\r
+ <LITERAL2>adResyncAutoIncrement</LITERAL2>\r
+ <LITERAL2>adResyncConflicts</LITERAL2>\r
+ <LITERAL2>adResyncUpdates</LITERAL2>\r
+ <LITERAL2>adResyncInserts</LITERAL2>\r
+ <LITERAL2>adResyncAll</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_AUTORECALC_ENUM Values -->\r
+<!-- <LITERAL2>adRecalcUpFront</LITERAL2>\r
+ <LITERAL2>adRecalcAlways</LITERAL2>\r
+-->\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="FUNCTION_PARAMS">\r
+ <!-- Keep brackets together: -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="MAIN">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <IMPORT DELEGATE="MAIN" />\r
+ <!-- <SEQ TYPE="OPERATOR">)</SEQ> -->\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- \r
+ JCL edit mode by Bill McMilleon (bill@mcmilleon.com)\r
+ March 19, 2003\r
+\r
+ Suggested catalog file entry:\r
+\r
+ <MODE NAME="JCL" FILE="JCL.xml"\r
+ FILE_NAME_GLOB="*.{jcl}" />\r
+\r
+-->\r
+ \r
+ \r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+\r
+ \r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+\r
+<!-- In fixed form, column 72 is the last column parsed, unless the\r
+\extend_source option is invoked -->\r
+ <!-- TERMINATE AT_CHAR="72" / -->\r
+\r
+\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">//*</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+<!-- Highlighted Operators -->\r
+<SEQ TYPE="OPERATOR">=</SEQ>\r
+<SEQ TYPE="OPERATOR"><</SEQ>\r
+<SEQ TYPE="OPERATOR">></SEQ>\r
+<SEQ TYPE="OPERATOR">&</SEQ>\r
+<SEQ TYPE="OPERATOR">|</SEQ>\r
+<SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+<KEYWORDS>\r
+ <KEYWORD2>COMMAND</KEYWORD2>\r
+ <KEYWORD2>CNTL</KEYWORD2>\r
+ <KEYWORD2>DD</KEYWORD2>\r
+ <KEYWORD2>ENCNTL</KEYWORD2>\r
+ <KEYWORD2>EXEC</KEYWORD2>\r
+ <KEYWORD2>IF</KEYWORD2>\r
+ <KEYWORD2>THEN</KEYWORD2>\r
+ <KEYWORD2>ELSE</KEYWORD2>\r
+ <KEYWORD2>ENDIF</KEYWORD2>\r
+ <KEYWORD2>INCLUDE</KEYWORD2>\r
+ <KEYWORD2>JCLIB</KEYWORD2>\r
+ <KEYWORD2>JOB</KEYWORD2>\r
+ <KEYWORD2>MSG</KEYWORD2>\r
+ <KEYWORD2>OUTPUT</KEYWORD2>\r
+ <KEYWORD2>PEND</KEYWORD2>\r
+ <KEYWORD2>PROC</KEYWORD2>\r
+ <KEYWORD2>SET</KEYWORD2>\r
+ <KEYWORD2>XMIT</KEYWORD2>\r
+</KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ JHTML mode by Will Sargent <wsargent@atg.com>\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <!-- Indent droplets and oparams -->\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE="\s*(<\s*(droplet|oparam))\s+.*" />\r
+ <!-- Sadly, there doesn't seem to be a way to\r
+ undent when we see a /oparam> tag... -->\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- Allow for Dynamo SSI -->\r
+ <SPAN TYPE="NULL">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- Embedded Java -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">\r
+ <BEGIN><java></BEGIN>\r
+ <END></java></END>\r
+ </SPAN>\r
+\r
+ <!-- Don't know how to do this correctly.\r
+ <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">\r
+ <BEGIN><java type=</BEGIN>\r
+ <END></java></END>\r
+ </SPAN>\r
+ -->\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- All markup defaults to JHTML. -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JHTML">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="JHTML" DEFAULT="MARKUP">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="MARKUP">/</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>importbean</KEYWORD1>\r
+ <KEYWORD1>droplet</KEYWORD1>\r
+ <KEYWORD1>param</KEYWORD1>\r
+ <KEYWORD1>oparam</KEYWORD1>\r
+ <KEYWORD1>valueof</KEYWORD1>\r
+ <KEYWORD1>setvalue</KEYWORD1>\r
+ <KEYWORD1>servlet</KEYWORD1>\r
+ <KEYWORD2>bean</KEYWORD2>\r
+ <KEYWORD2>submitvalue</KEYWORD2>\r
+ <KEYWORD2>declareparam</KEYWORD2>\r
+ <KEYWORD2>synchronized</KEYWORD2>\r
+ <KEYWORD2>priority</KEYWORD2>\r
+\r
+ <!-- standard converters -->\r
+ <KEYWORD2>converter</KEYWORD2>\r
+ <KEYWORD2>date</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <KEYWORD2>required</KEYWORD2>\r
+ <KEYWORD2>nullable</KEYWORD2>\r
+ <KEYWORD2>currency</KEYWORD2>\r
+ <KEYWORD2>currencyConversion</KEYWORD2>\r
+ <KEYWORD2>euro</KEYWORD2>\r
+ <KEYWORD2>locale</KEYWORD2>\r
+ <KEYWORD2>symbol</KEYWORD2>\r
+\r
+ <!-- Can't use this because of image src... -->\r
+ <!-- <KEYWORD2>src</KEYWORD2> -->\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="ATTRVALUE" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- backticks are java -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- Allow param: and bean: properties to be marked up -->\r
+ <SEQ TYPE="LABEL">param:</SEQ>\r
+ <SEQ TYPE="LABEL">bean:</SEQ>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- Brackets -->\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>cat</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>create</KEYWORD1>\r
+ <KEYWORD1>delall</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>dirs</KEYWORD1>\r
+ <KEYWORD1>equal</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>first</KEYWORD1>\r
+ <KEYWORD1>forname</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>getprop</KEYWORD1>\r
+ <KEYWORD1>glob</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>mkdir</KEYWORD1>\r
+ <KEYWORD1>mkdirs</KEYWORD1>\r
+ <KEYWORD1>note</KEYWORD1>\r
+ <KEYWORD1>patsubst</KEYWORD1>\r
+ <KEYWORD1>rename</KEYWORD1>\r
+ <KEYWORD1>rest</KEYWORD1>\r
+ <KEYWORD1>subst</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD2>@</KEYWORD2>\r
+ <KEYWORD2>?</KEYWORD2>\r
+ <KEYWORD2><</KEYWORD2>\r
+ <KEYWORD2>%</KEYWORD2>\r
+ <KEYWORD3>include</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<%--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="--%>" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- JSP comment -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><%--</BEGIN>\r
+ <END>--%></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP directive -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="DIRECTIVES">\r
+ <BEGIN><%@</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="DIRECTIVES">\r
+ <BEGIN><jsp:directive></BEGIN>\r
+ <END></jsp:directive></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><jsp:expression></BEGIN>\r
+ <END></jsp:expression></END>\r
+ </SPAN>\r
+\r
+\r
+ <!-- JSP scriptlet code block -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%!</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><jsp:declaration></BEGIN>\r
+ <END></jsp:declaration></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP scriptlet -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><jsp:scriptlet></BEGIN>\r
+ <END></jsp:scriptlet></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="EL">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ </RULES>\r
+ <RULES SET="COMMENT" DEFAULT="COMMENT1" IGNORE_CASE="TRUE">\r
+ <!-- JSP comment -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><%--</BEGIN>\r
+ <END>--%></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP scriptlet -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+ <RULES SET="DIRECTIVES" DEFAULT="MARKUP">\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="MARKUP">/</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>taglib</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <KEYWORD1>page</KEYWORD1>\r
+ <KEYWORD1>tag</KEYWORD1>\r
+ <KEYWORD1>tagAttribute</KEYWORD1>\r
+ <KEYWORD1>tagVariable</KEYWORD1>\r
+\r
+ <KEYWORD2>language</KEYWORD2>\r
+ <KEYWORD2>session</KEYWORD2>\r
+ <KEYWORD2>contentType</KEYWORD2>\r
+ <KEYWORD2>charset</KEYWORD2>\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <KEYWORD2>buffer</KEYWORD2>\r
+ <KEYWORD2>autoflush</KEYWORD2>\r
+ <KEYWORD2>isThreadSafe</KEYWORD2>\r
+ <KEYWORD2>info</KEYWORD2>\r
+ <KEYWORD2>errorPage</KEYWORD2>\r
+ <KEYWORD2>isErrorpage</KEYWORD2>\r
+ <KEYWORD2>extends</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>uri</KEYWORD2>\r
+ <KEYWORD2>prefix</KEYWORD2>\r
+ <KEYWORD2>method</KEYWORD2>\r
+ <KEYWORD2>name</KEYWORD2>\r
+ <KEYWORD2>default</KEYWORD2>\r
+ <KEYWORD2>required</KEYWORD2>\r
+ <KEYWORD2>rtexprvalue</KEYWORD2>\r
+ <KEYWORD2>id</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>scope</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP">\r
+ <!-- JSP comment -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><%--</BEGIN>\r
+ <END>--%></END>\r
+ </SPAN>\r
+\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS+JSP">\r
+ <BEGIN>style='</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS+JSP">\r
+ <BEGIN>style="</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="MARKUP">/</SEQ>\r
+ <MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="OPERATOR">:</MARK_FOLLOWING>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ </RULES>\r
+\r
+\r
+\r
+ <RULES SET="CSS+JSP" DEFAULT="LITERAL1">\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="EL">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="css::MAIN"/>\r
+ </RULES>\r
+\r
+ <RULES SET="ATTRVALUE" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="EL">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SEQ TYPE="LITERAL1" DELEGATE="JAVASCRIPT+JSP">javascript:</SEQ>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="JAVASCRIPT+JSP">\r
+ <!-- JSP scriptlet expression -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="java::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="EL">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="javascript::MAIN"/>\r
+ </RULES>\r
+\r
+ <RULES SET="EL" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0[lL]?|[1-9]\d{0,9}(\d{0,9}[lL])?|0[xX]\p{XDigit}{1,8}(\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\.[0-9]*|\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))">\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ <IMPORT DELEGATE="java::MAIN"/>\r
+ </RULES>\r
+</MODE>\r
+<!-- :noTabs=false: -->
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- jEdit LaTeX mode, by Thomas Alspaugh alspaugh@ics.uci.edu -->\r
+<!-- v1.2 2004May30 -->\r
+<!-- Based upon BibTeX mode by Nils Krahnstoever and tex mode by unknown author.\r
+ Generated automatically from a summary of Lamport \r
+ "LaTeX : A document preparation system : User guide and reference manual",\r
+ 1994 (LaTeX2e) edition, using a Perl script. \r
+ -->\r
+<!-- Catalog entry (suggested)\r
+<MODE NAME="LaTeX" FILE="latex.xml"\r
+ FILE_NAME_GLOB="*.{tex,ltx,latex}" />\r
+ -->\r
+<!-- latex.xml is generated automatically from a summary of Lamport \r
+ "LaTeX : A document preparation system : User guide and reference manual",\r
+ 1994 (LaTeX2e) edition, using a collection of editing scripts.\r
+ -->\r
+<!-- Version history\r
+ v1.1 2004Mar23\r
+ v1.2 2004Jun09\r
+ Single-character accents such as \" accept arguments not in {}.\r
+ Changed to be produced using a single Perl script.\r
+ -->\r
+<!--\r
+ COMMENT1 % comments.\r
+ INVALID characters or strings that are not valid in the context.\r
+ KEYWORD1 commands or declarations with arguments\r
+ KEYWORD2 commands or declarations without arguments\r
+ KEYWORD3 counters\r
+ KEYWORD4 unrecognized commands or declarations\r
+ MARKUP environments (other than those that change rulesets)\r
+ -->\r
+<!-- Not as it should be:\r
+ - Highlighting does not account for balancing of braces {}; the next } \r
+ closes a command.\r
+ - \ensuremath{} should balance braces but does not (the first } closes it).\r
+ - #1, #2, ... are only valid in \newcommand{} but are not limited to there.\r
+ - Commands inside ``'' and `' quoted strings should be highlighted.\r
+ -->\r
+ \r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%" />\r
+ <PROPERTY NAME="noWordSep" VALUE="\"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE"> <!-- SET="NormalMode" -->\r
+ <SEQ TYPE="LABEL">__NormalMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <!-- "", `', and ``'' quoting. -->\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL4"><BEGIN>``</BEGIN><END>''</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL3"><BEGIN>`</BEGIN><END>'</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL1"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <!-- Lone quote characters " and ` are not valid. -->\r
+ <SEQ TYPE="INVALID">"</SEQ>\r
+ <SEQ TYPE="INVALID">`</SEQ>\r
+\r
+ <!-- # is only valid as #n inside command definitions. -->\r
+ <SEQ TYPE="FUNCTION">#1</SEQ>\r
+ <SEQ TYPE="FUNCTION">#2</SEQ>\r
+ <SEQ TYPE="FUNCTION">#3</SEQ>\r
+ <SEQ TYPE="FUNCTION">#4</SEQ>\r
+ <SEQ TYPE="FUNCTION">#5</SEQ>\r
+ <SEQ TYPE="FUNCTION">#6</SEQ>\r
+ <SEQ TYPE="FUNCTION">#7</SEQ>\r
+ <SEQ TYPE="FUNCTION">#8</SEQ>\r
+ <SEQ TYPE="FUNCTION">#9</SEQ>\r
+\r
+ <!-- \begin{verbatim} ... \end{verbatim} -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="VERBATIM">\r
+ <BEGIN>\begin{verbatim}</BEGIN>\r
+ <END>\end{verbatim}</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="INVALID">\tabs</SEQ>\r
+ <SEQ TYPE="INVALID">\tabset</SEQ>\r
+ <SEQ TYPE="INVALID">\tabsdone</SEQ>\r
+ <SEQ TYPE="INVALID">\cleartabs</SEQ>\r
+ <SEQ TYPE="INVALID">\settabs</SEQ>\r
+ <SEQ TYPE="INVALID">\tabalign</SEQ>\r
+ <SEQ TYPE="INVALID">\+</SEQ>\r
+ <SEQ TYPE="INVALID">\pageno</SEQ>\r
+ <SEQ TYPE="INVALID">\headline</SEQ>\r
+ <SEQ TYPE="INVALID">\footline</SEQ>\r
+ <SEQ TYPE="INVALID">\normalbottom</SEQ>\r
+ <SEQ TYPE="INVALID">\folio</SEQ>\r
+ <SEQ TYPE="INVALID">\nopagenumbers</SEQ>\r
+ <SEQ TYPE="INVALID">\advancepageno</SEQ>\r
+ <SEQ TYPE="INVALID">\pagebody</SEQ>\r
+ <SEQ TYPE="INVALID">\plainoutput</SEQ>\r
+ <SEQ TYPE="INVALID">\pagecontents</SEQ>\r
+ <SEQ TYPE="INVALID">\makeheadline</SEQ>\r
+ <SEQ TYPE="INVALID">\makefootline</SEQ>\r
+ <SEQ TYPE="INVALID">\dosupereject</SEQ>\r
+ <SEQ TYPE="INVALID">\footstrut</SEQ>\r
+ <SEQ TYPE="INVALID">\vfootnote</SEQ>\r
+ <SEQ TYPE="INVALID">\topins</SEQ>\r
+ <SEQ TYPE="INVALID">\topinsert</SEQ>\r
+ <SEQ TYPE="INVALID">\midinsert</SEQ>\r
+ <SEQ TYPE="INVALID">\pageinsert</SEQ>\r
+ <SEQ TYPE="INVALID">\endinsert</SEQ>\r
+ <SEQ TYPE="INVALID">\fivei</SEQ>\r
+ <SEQ TYPE="INVALID">\fiverm</SEQ>\r
+ <SEQ TYPE="INVALID">\fivesy</SEQ>\r
+ <SEQ TYPE="INVALID">\fivebf</SEQ>\r
+ <SEQ TYPE="INVALID">\seveni</SEQ>\r
+ <SEQ TYPE="INVALID">\sevenbf</SEQ>\r
+ <SEQ TYPE="INVALID">\sevensy</SEQ>\r
+ <SEQ TYPE="INVALID">\teni</SEQ>\r
+ <SEQ TYPE="INVALID">\oldstyle</SEQ>\r
+ <SEQ TYPE="INVALID">\eqalign</SEQ>\r
+ <SEQ TYPE="INVALID">\eqalignno</SEQ>\r
+ <SEQ TYPE="INVALID">\leqalignno</SEQ>\r
+ <SEQ TYPE="INVALID">$$</SEQ>\r
+ <SEQ TYPE="INVALID">\beginsection</SEQ>\r
+ <SEQ TYPE="INVALID">\bye</SEQ>\r
+ <SEQ TYPE="INVALID">\magnification</SEQ>\r
+ <SEQ TYPE="INVALID">#</SEQ>\r
+ <SEQ TYPE="INVALID">&</SEQ>\r
+ <SEQ TYPE="INVALID">_</SEQ>\r
+ <SEQ TYPE="INVALID">\~</SEQ>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>$</BEGIN><END>$</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\(</BEGIN><END>\)</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\[</BEGIN><END>\]</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\begin{math}</BEGIN><END>\end{math}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\begin{displaymath}</BEGIN><END>\end{displaymath}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\begin{equation}</BEGIN><END>\end{equation}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="MathMode"><BEGIN>\ensuremath{</BEGIN><END>}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="ArrayMode"><BEGIN>\begin{eqnarray}</BEGIN><END>\end{eqnarray}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="ArrayMode"><BEGIN>\begin{eqnarray*}</BEGIN><END>\end{eqnarray*}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="TabularMode"><BEGIN>\begin{tabular}</BEGIN><END>\end{tabular}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="TabularMode"><BEGIN>\begin{tabular*}</BEGIN><END>\end{tabular*}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="TabbingMode"><BEGIN>\begin{tabbing}</BEGIN><END>\end{tabbing}</END></SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="PictureMode"><BEGIN>\begin{picture}</BEGIN><END>\end{picture}</END></SPAN>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="KEYWORD1">}</SEQ>\r
+ <SEQ TYPE="KEYWORD1">{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">totalnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">topnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">tocdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">secnumdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">dbltopnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD1">]</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\~{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\~</SEQ>\r
+ <SEQ TYPE="OPERATOR">\}</SEQ>\r
+ <SEQ TYPE="OPERATOR">\|</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\width</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\whiledo{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\v{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb*</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\value{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\v</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\u{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usecounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upshape</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\unboldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\u</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\t{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typeout{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\twocolumn[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twocolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ttfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\totalheight</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\today</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\title{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tiny</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thispagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thinlines</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicklines</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thanks{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textup{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\texttt{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsl{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsf{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsc{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textrm{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textnormal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textmd{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textit{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textcolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textbf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tableofcontents</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabcolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabbingsep</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\t</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\symbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\suppressfloats[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\suppressfloats</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stretch{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stepcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\small</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\slshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sloppy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sffamily</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settowidth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settoheight{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settodepth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptsize</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\scalebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\sbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\savebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rp,am{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rotatebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rmfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\rightmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\reversemarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ref{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\refstepcounter</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\raisebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedleft</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\qbeziermax</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\providecommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\protect</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\printindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pounds</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\partopsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part*{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\par</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pageref{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagenumbering{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\onecolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalsize</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalmarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalfont</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nopagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nopagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nonfrenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nolinebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nolinebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\noindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nocite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newtheorem{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newsavebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\newpage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\medskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mdseries</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markright{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markboth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparpush</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\maketitle</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\makelabel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeglossary</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\listparindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoftables</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoffigures</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listfiles</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\linewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linethickness{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\linebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\lengthtest{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginvi</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargini</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\large</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\label{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\jot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\itshape</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\item[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\item</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\isodd{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\intextsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\input{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\index{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\indent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\include{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includeonly{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ifthenelse{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hyphenation{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\huge</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\height</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\glossary{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fussy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\frenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fragile</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotesize</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnotesep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnoterule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotemark[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotemark</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fnsymbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fill</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fcolorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxrule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\equal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ensuremath{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\end{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\emph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\d{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\doublerulesep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\depth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\definecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddag</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltopfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltextfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\date{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dag</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\d</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\c{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\copyright</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnseprule</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\color{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\colorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\clearpage</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cleardoublepage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\centering</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\c</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\b{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boolean{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliography{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliographystyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bibindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bfseries</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\begin{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselinestretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselineskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\b</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\author{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraystgretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arrayrulewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraycolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\arabic{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\appendix</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\alph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addvspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtolength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocontents{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addcontentsline{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\`{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\`</SEQ>\r
+ <SEQ TYPE="OPERATOR">\_</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\^{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\^</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\*[</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\*</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\TeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\S</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Roman{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\P</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Large</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LaTeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LARGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\H{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Huge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\H</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Alph{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\@</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\={</SEQ>\r
+ <SEQ TYPE="OPERATOR">\=</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\.{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\.</SEQ>\r
+ <SEQ TYPE="OPERATOR">\-</SEQ>\r
+ <SEQ TYPE="OPERATOR">\,</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\'{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\'</SEQ>\r
+ <SEQ TYPE="OPERATOR">\&</SEQ>\r
+ <SEQ TYPE="OPERATOR">\%</SEQ>\r
+ <SEQ TYPE="OPERATOR">\$</SEQ>\r
+ <SEQ TYPE="OPERATOR">\#</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\"{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\"</SEQ>\r
+ <SEQ TYPE="OPERATOR">\ </SEQ>\r
+ <SEQ TYPE="KEYWORD1">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">---</SEQ>\r
+ <SEQ TYPE="OPERATOR">--</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- NormalMode -->\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="MathMode">\r
+ <SEQ TYPE="LABEL">__MathMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ <SEQ TYPE="KEYWORD1">}</SEQ>\r
+ <SEQ TYPE="KEYWORD1">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\zeta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\xi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wp</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\widetilde{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\widehat{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\veebar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vee</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vec{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vdots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartheta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsupsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsupsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsubsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsubsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varrho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varpropto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varpi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varphi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varnothing</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varkappa</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varepsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\urcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upuparrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\uplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upharpoonright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upharpoonleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ulcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twoheadrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twoheadleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\trianglerighteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\trianglelefteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\top</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\times</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\tilde{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicksim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thickapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\theta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\therefore</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\text{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\textstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tau</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tanh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tan</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\swarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\surd</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sum</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succcurlyeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succ</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\star</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stackrel{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\square</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsupseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsupset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsubseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsubset</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\sqrt{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqcap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sphericalangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\spadesuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smile</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallsmile</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallsetminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallfrown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sinh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\simeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\shortparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\shortmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sharp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\setminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\searrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptscriptstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rtimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\risingdotseq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightthreetimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightsquigarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightharpoonup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightharpoondown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightarrowtail</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right]</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\lfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\lceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\langle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\right[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right/</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\psi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\propto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prime</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\preceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\preccurlyeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prec</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pmod{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pmb{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pm</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pitchfork</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\phi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\perp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\partial</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\parallel</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\overline{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\otimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ominus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\omega</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oint</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\odot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nwarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nu</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntrianglerighteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntrianglelefteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsupseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsupseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsucceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsucc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsubseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nshortparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nshortmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\npreceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nprec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\notin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ni</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nexists</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\neq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\neg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nearrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ncong</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\natural</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nabla</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nVDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nRightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nLeftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nLeftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\multimap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mu</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\models</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\min</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\measuredangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\max</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathtt{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathsf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mathrm{~~ </SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathit{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathcal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathbf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mapsto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lvertneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ltimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lrcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lozenge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\looparrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\looparrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longmapsto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\log</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ln</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lll</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\llcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ll</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\limsup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\liminf</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesssim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesseqqgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesseqgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftthreetimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightsquigarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftleftarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftharpoonup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftharpoondown</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\lefteqn{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftarrowtail</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left]</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\lfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\lceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\langle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\left[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left/</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ldots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lambda</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ker</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\kappa</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\jmath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\jmath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\iota</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\intercal</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\int</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\infty</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\inf</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\in</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\imath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\imath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hookrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hookleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hom</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\heartsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hbar</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hat{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gvertneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtreqqless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtreqless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\grave{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gimel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ggg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gcd</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\frown</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\frak{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\frac{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\forall</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\flat</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fallingdotseq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\exp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\exists</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\equiv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqslantless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqslantgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\epsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ensuremath{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\end{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\emptyset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ell</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downharpoonright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downharpoonleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downdownarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doublebarwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\dot{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dotplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doteqdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\divideontimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\div</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\displaystyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\digamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diamondsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diamond</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diagup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diagdown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\det</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\delta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\deg</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ddot{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddagger</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\daleth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dagger</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curvearrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curvearrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlywedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyvee</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyeqsucc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyeqprec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\csc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\coth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cosh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cos</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\coprod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cong</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\complement</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\clubsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circleddash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledast</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledS</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circlearrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circlearrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circ</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\chi</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\check{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\centerdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cdots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bumpeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bullet</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\breve{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxtimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bowtie</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bot</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boldsymbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bmod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacksquare</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacklozenge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigvee</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\biguplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigtriangleup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigtriangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigstar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigsqcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigotimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigoplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigodot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\between</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\beth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\beta</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\begin{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\because</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bar{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\barwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backsimeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backprime</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\asymp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ast</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arctan</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arcsin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arccos</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\approxeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\approx</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\angle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\angle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\amalg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\alpha</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\aleph</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\acute{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Xi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Vvdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Vdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Upsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Theta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Supset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Subset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Sigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Rsh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Rightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Re</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Psi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Pr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Pi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Phi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Omega</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lsh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Leftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Leftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lambda</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Im</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Gamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Game</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Finv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Delta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Cup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Cap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Bumpeq</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Bbb{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Bbbk</SEQ>\r
+ <SEQ TYPE="OPERATOR">\;</SEQ>\r
+ <SEQ TYPE="OPERATOR">\:</SEQ>\r
+ <SEQ TYPE="OPERATOR">\,</SEQ>\r
+ <SEQ TYPE="OPERATOR">\!</SEQ>\r
+ <SEQ TYPE="OPERATOR">'</SEQ>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="ArrayMode"><BEGIN>\begin{array}</BEGIN><END>\end{array}</END></SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- MathMode -->\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="ArrayMode">\r
+ <SEQ TYPE="LABEL">__ArrayMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ <SEQ TYPE="KEYWORD1">}</SEQ>\r
+ <SEQ TYPE="KEYWORD1">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\zeta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\xi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wp</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\widetilde{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\widehat{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\wedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vline</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\veebar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vee</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vec{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vdots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartriangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vartheta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsupsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsupsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsubsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsubsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varsigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varrho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varpropto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varpi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varphi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varnothing</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varkappa</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\varepsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\urcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upuparrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\uplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upharpoonright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upharpoonleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ulcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twoheadrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twoheadleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\trianglerighteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\trianglelefteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\triangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\top</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\times</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\tilde{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicksim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thickapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\theta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\therefore</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\text{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\textstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tau</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tanh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tan</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\swarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\surd</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\supset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sum</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succcurlyeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\succ</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subsetneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subsetneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\subset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\star</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stackrel{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\square</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsupseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsupset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsubseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqsubset</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\sqrt{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sqcap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sphericalangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\spadesuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smile</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallsmile</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallsetminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallfrown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sinh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\simeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\shortparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\shortmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sharp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\setminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\searrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptscriptstyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rtimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\risingdotseq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightthreetimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightsquigarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightleftarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightharpoonup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightharpoondown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightarrowtail</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right]</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\rangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\lfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\lceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\langle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right\(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\right[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right/</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\right(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\psi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\propto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prime</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\preceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\preccurlyeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\precapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\prec</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pmod{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pmb{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pm</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pitchfork</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\phi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\perp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\partial</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\parallel</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\overline{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\otimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ominus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\omega</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oint</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\odot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nwarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nvDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nu</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntrianglerighteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntrianglelefteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ntriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsupseteqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsupseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsucceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsucc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsubseteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nshortparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nshortmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\npreceq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nprec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nparallel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\notin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nmid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ni</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ngeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nexists</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\neq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\neg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nearrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ncong</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\natural</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nabla</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nVDash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nRightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nLeftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nLeftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\multimap</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\multicolumn{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mu</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\models</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\min</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mid</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mho</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\measuredangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\max</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathtt{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathsf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mathrm{~~ </SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathit{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathcal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mathbf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mapsto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lvertneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ltimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lrcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lozenge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\looparrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\looparrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longmapsto</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\longleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\log</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ln</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lll</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\llcorner</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ll</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\limsup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\liminf</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesssim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesseqqgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lesseqgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lessapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftthreetimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightsquigarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightharpoons</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftleftarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftharpoonup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftharpoondown</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\lefteqn{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftarrowtail</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\leftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left]</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\rangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\lfloor</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\lceil</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\langle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left\(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\left[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left/</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\left(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ldots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\lambda</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ker</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\kappa</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\jmath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\jmath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\iota</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\intercal</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\int</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\infty</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\inf</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\in</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\imath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\imath</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hookrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hookleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hom</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hline</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\heartsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hbar</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hat{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gvertneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtreqqless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtreqless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gtrapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\grave{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gneqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gneq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gnapprox</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gimel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ggg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geqslant</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geqq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\geq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gcd</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\gamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\frown</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\frak{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\frac{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\forall</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\flat</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fallingdotseq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\exp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\exists</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\equiv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqslantless</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqslantgtr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\eqcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\epsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ensuremath{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\end{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\emptyset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ell</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downharpoonright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downharpoonleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downdownarrows</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doublebarwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\dot{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dotplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doteqdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\doteq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\divideontimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\div</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\displaystyle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\digamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diamondsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diamond</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diagup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\diagdown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\det</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\delta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\deg</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ddot{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddagger</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dashleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\daleth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dagger</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curvearrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curvearrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlywedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyvee</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyeqsucc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\curlyeqprec</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\csc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\coth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cosh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cos</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\coprod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cong</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\complement</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\clubsuit</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cline{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circleddash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledast</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circledS</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circlearrowright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circlearrowleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\circ</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\chi</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\check{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\centerdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cdots</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bumpeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bullet</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\breve{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxtimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxminus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\boxdot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bowtie</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bot</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boldsymbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bmod</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangleright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangleleft</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacktriangle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacksquare</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\blacklozenge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigvee</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\biguplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigtriangleup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigtriangledown</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigstar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigsqcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigotimes</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigoplus</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigodot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcirc</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigcap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\between</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\beth</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\beta</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\begin{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\because</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bar{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\barwedge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backslash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backsimeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backsim</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\backprime</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\asymp</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ast</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arctan</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arcsin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\arccos</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\approxeq</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\approx</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\angle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\angle</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\amalg</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\alpha</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\aleph</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\acute{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Xi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Vvdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Vdash</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Upsilon</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Updownarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Uparrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Theta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Supset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Subset</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Sigma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Rsh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Rightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Re</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Psi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Pr</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Pi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Phi</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Omega</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lsh</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longleftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Longleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lleftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Leftrightarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Leftarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Lambda</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Im</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Gamma</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Game</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Finv</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Downarrow</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Delta</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Cup</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Cap</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Bumpeq</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Bbb{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Bbbk</SEQ>\r
+ <SEQ TYPE="OPERATOR">\;</SEQ>\r
+ <SEQ TYPE="OPERATOR">\:</SEQ>\r
+ <SEQ TYPE="OPERATOR">\,</SEQ>\r
+ <SEQ TYPE="OPERATOR">\!</SEQ>\r
+ <SEQ TYPE="OPERATOR">'</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- ArrayMode -->\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="TabularMode">\r
+ <SEQ TYPE="LABEL">__TabularMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <!-- "", `', and ``'' quoting. -->\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL4"><BEGIN>``</BEGIN><END>''</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL3"><BEGIN>`</BEGIN><END>'</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL1"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <!-- Lone quote characters " and ` are not valid. -->\r
+ <SEQ TYPE="INVALID">"</SEQ>\r
+ <SEQ TYPE="INVALID">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="KEYWORD1">}</SEQ>\r
+ <SEQ TYPE="KEYWORD1">{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">totalnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">topnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">tocdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">secnumdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">dbltopnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD1">]</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\~{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\~</SEQ>\r
+ <SEQ TYPE="OPERATOR">\}</SEQ>\r
+ <SEQ TYPE="OPERATOR">\|</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\width</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\whiledo{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\v{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vline</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb*</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\value{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\v</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\u{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usecounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upshape</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\unboldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\u</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\t{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typeout{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\twocolumn[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twocolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ttfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\totalheight</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\today</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\title{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tiny</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thispagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thinlines</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicklines</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thanks{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textup{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\texttt{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsl{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsf{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsc{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textrm{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textnormal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textmd{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textit{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textcolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textbf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tableofcontents</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabcolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabbingsep</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\t</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\symbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\suppressfloats[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\suppressfloats</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stretch{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stepcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\small</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\slshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sloppy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sffamily</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settowidth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settoheight{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settodepth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptsize</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\scalebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\sbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\savebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rp,am{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rotatebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rmfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\rightmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\reversemarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ref{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\refstepcounter</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\raisebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedleft</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\qbeziermax</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\providecommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\protect</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\printindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pounds</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\partopsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part*{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\par</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pageref{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagenumbering{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\onecolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalsize</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalmarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalfont</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nopagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nopagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nonfrenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nolinebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nolinebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\noindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nocite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newtheorem{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newsavebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\newpage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\multicolumn{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\medskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mdseries</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markright{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markboth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparpush</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\maketitle</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\makelabel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeglossary</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\listparindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoftables</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoffigures</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listfiles</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\linewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linethickness{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\linebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\lengthtest{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginvi</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargini</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\large</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\label{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\jot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\itshape</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\item[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\item</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\isodd{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\intextsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\input{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\index{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\indent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\include{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includeonly{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ifthenelse{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hyphenation{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\huge</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hline</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\height</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\glossary{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fussy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\frenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fragile</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotesize</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnotesep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnoterule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotemark[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotemark</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fnsymbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fill</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fcolorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxrule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\equal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ensuremath{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\end{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\emph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\d{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\doublerulesep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\depth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\definecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddag</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltopfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltextfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\date{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dag</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\d</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\c{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\copyright</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnseprule</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\color{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\colorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cline{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\clearpage</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cleardoublepage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\centering</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\c</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\b{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boolean{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliography{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliographystyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bibindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bfseries</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\begin{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselinestretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselineskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\b</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\author{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraystgretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arrayrulewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraycolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\arabic{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\appendix</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\alph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addvspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtolength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocontents{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addcontentsline{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\`{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\`</SEQ>\r
+ <SEQ TYPE="OPERATOR">\_</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\^{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\^</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\*[</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\*</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\TeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\S</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Roman{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\P</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Large</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LaTeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LARGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\H{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Huge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\H</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Alph{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\@</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\={</SEQ>\r
+ <SEQ TYPE="OPERATOR">\=</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\.{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\.</SEQ>\r
+ <SEQ TYPE="OPERATOR">\-</SEQ>\r
+ <SEQ TYPE="OPERATOR">\,</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\'{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\'</SEQ>\r
+ <SEQ TYPE="OPERATOR">\&</SEQ>\r
+ <SEQ TYPE="OPERATOR">\%</SEQ>\r
+ <SEQ TYPE="OPERATOR">\$</SEQ>\r
+ <SEQ TYPE="OPERATOR">\#</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\"{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\"</SEQ>\r
+ <SEQ TYPE="OPERATOR">\ </SEQ>\r
+ <SEQ TYPE="KEYWORD1">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">---</SEQ>\r
+ <SEQ TYPE="OPERATOR">--</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- TabularMode -->\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="TabbingMode">\r
+ <SEQ TYPE="LABEL">__TabbingMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <!-- "", `', and ``'' quoting. -->\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL4"><BEGIN>``</BEGIN><END>''</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL3"><BEGIN>`</BEGIN><END>'</END></SPAN>\r
+ <SPAN NO_LINE_BREAK="FALSE" TYPE="LITERAL1"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+ <!-- Lone quote characters " and ` are not valid. -->\r
+ <SEQ TYPE="INVALID">"</SEQ>\r
+ <SEQ TYPE="INVALID">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="KEYWORD1">}</SEQ>\r
+ <SEQ TYPE="KEYWORD1">{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">totalnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">topnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">tocdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">secnumdepth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">dbltopnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD1">]</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\~{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\~</SEQ>\r
+ <SEQ TYPE="OPERATOR">\}</SEQ>\r
+ <SEQ TYPE="OPERATOR">\|</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\width</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\whiledo{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\v{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\vspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\vfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb*</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\verb</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\value{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\v</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\u{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usepackage[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usecounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\usebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\upshape</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\unboldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\u</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\t{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typeout{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\typein[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\twocolumn[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\twocolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ttfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\totalheight</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\topfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\today</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\title{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tiny</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thispagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thinlines</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicklines</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\thanks{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textup{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\texttt{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsl{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsf{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textsc{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textrm{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textnormal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textmd{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textit{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\textfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textcolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\textbf{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\tableofcontents</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabcolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\tabbingsep</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\t</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\symbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\suppressfloats[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\suppressfloats</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsubsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subsection*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\subparagraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stretch{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\stepcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\smallskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\small</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\slshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sloppy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\sffamily</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settowidth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settoheight{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\settodepth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\setcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\section*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scshape</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\scriptsize</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\scalebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\sbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\savebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rule[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rp,am{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\rotatebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\rmfamily</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\rightmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\reversemarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\resizebox*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\renewcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ref{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\refstepcounter</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\raisebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedright</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\raggedleft</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\qbeziermax</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pushtabs</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\providecommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\protect</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\printindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pounds</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\poptabs</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\partopsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\part*{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\parindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\parbox[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\paragraph*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\par</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagestyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pageref{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagenumbering{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\pagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\pagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\onecolumn</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalsize</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalmarginpar</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\normalfont</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nopagebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nopagebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nonfrenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nolinebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\nolinebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\noindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\nocite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newtheorem{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newsavebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\newpage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newlength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newenvironment{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\newcommand{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\medskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\mdseries</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\mbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\mathindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markright{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\markboth{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\marginparpush</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\marginpar[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\maketitle</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\makelabel</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeindex</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makeglossary</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\makebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\listparindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoftables</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listoffigures</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\listfiles</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\linewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linethickness{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linebreak[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\linebreak</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\lengthtest{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginvi</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiv</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginiii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmarginii</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargini</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\leftmargin</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\large</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\label{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\labelsep</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\kill</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\jot</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\itshape</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\itemindent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\item[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\item</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\isodd{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\intextsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\input{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\index{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\indent</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\include{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includeonly{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\includegraphics*[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ifthenelse{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hyphenation{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\huge</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\hspace*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\hfill</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\height</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\glossary{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fussy</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\frenchspacing</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\framebox[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fragile</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotetext[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotesize</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnotesep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\footnoterule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnotemark[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\footnotemark</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\footnote[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fnsymbol{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\floatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\fill</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fcolorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\fbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\fboxrule</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\equal{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\ensuremath{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\enlargethispage*{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\end{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\emph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\d{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\doublerulesep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\documentclass[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\depth</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\definecolor{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\ddag</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltopfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dbltextfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatsep</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\dblfloatpagefraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\date{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\dag</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\d</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\c{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\copyright</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnwidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnseprule</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\columnsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\color{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\colorbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\clearpage</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\cleardoublepage</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\cite[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\chapter*{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\centering</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\caption[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\c</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\b{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomnumber</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bottomfraction</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boolean{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\boldmath{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bigskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliography{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\bibliographystyle{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\bibindent</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\bfseries</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\belowdisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\begin{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselinestretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\baselineskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\b</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\author{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraystgretch</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arrayrulewidth</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\arraycolsep</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\arabic{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\appendix</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\alph{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addvspace{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtolength{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocounter{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addtocontents{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\addcontentsline{</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayskip</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\abovedisplayshortskip</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\a`</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\a=</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\a'</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\`{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\`</SEQ>\r
+ <SEQ TYPE="OPERATOR">\`</SEQ>\r
+ <SEQ TYPE="OPERATOR">\_</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\^{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\^</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\*[</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\*</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\TeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\S</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Roman{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\P</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Large</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LaTeX</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\LARGE</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\H{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\Huge</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\H</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\Alph{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\@</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\={</SEQ>\r
+ <SEQ TYPE="OPERATOR">\=</SEQ>\r
+ <SEQ TYPE="OPERATOR">\=</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\.{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\.</SEQ>\r
+ <SEQ TYPE="OPERATOR">\-</SEQ>\r
+ <SEQ TYPE="OPERATOR">\-</SEQ>\r
+ <SEQ TYPE="OPERATOR">\,</SEQ>\r
+ <SEQ TYPE="OPERATOR">\+</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\'{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\'</SEQ>\r
+ <SEQ TYPE="OPERATOR">\'</SEQ>\r
+ <SEQ TYPE="OPERATOR">\<</SEQ>\r
+ <SEQ TYPE="OPERATOR">\></SEQ>\r
+ <SEQ TYPE="OPERATOR">\&</SEQ>\r
+ <SEQ TYPE="OPERATOR">\%</SEQ>\r
+ <SEQ TYPE="OPERATOR">\$</SEQ>\r
+ <SEQ TYPE="OPERATOR">\#</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\"{</SEQ>\r
+ <SEQ TYPE="OPERATOR">\"</SEQ>\r
+ <SEQ TYPE="OPERATOR">\ </SEQ>\r
+ <SEQ TYPE="KEYWORD1">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">---</SEQ>\r
+ <SEQ TYPE="OPERATOR">--</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- TabbingMode -->\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="PictureMode">\r
+ <SEQ TYPE="LABEL">__PictureMode__</SEQ>\r
+\r
+ <!-- % comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ <SEQ TYPE="KEYWORD2">\vector(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thinlines</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\thicklines</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\shortstack{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\shortstack[</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\savebox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\qbezier[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\qbezier(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\put(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\oval[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\oval(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\multiput(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\makebox(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\linethickness{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\line(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\graphpaper[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\graphpaper(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\frame{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">\framebox(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\dashbox{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\circle{</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\circle*{</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">\</MARK_FOLLOWING>\r
+\r
+ </RULES> <!-- PictureMode -->\r
+\r
+ <RULES SET="VERBATIM" DEFAULT="NULL" />\r
+\r
+</MODE>\r
+\r
+<!-- normal mode 351 -->\r
+<!-- math mode 301 -->\r
+<!-- amsmath 216 -->\r
+<!-- array mode 5 -->\r
+<!-- tabbing mode 14 -->\r
+<!-- picture mode 22 -->\r
+<!-- counters 0 -->\r
+<!-- environments 30 -->\r
+<!-- invalid 47 -->\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- LilyPond (www.lilypond.org) mode by Bertalan Fodor <lilypondtool@organum.hu> & others at http://lily4jedit.sf.net\r
+ Requires jEdit 4.3pre6 or compatible\r
+Recommended jEdit/modes/catalog entry:\r
+ <MODE NAME="lilypond" FILE="lilypond.xml"\r
+ FILE_NAME_GLOB="*.ly" />\r
+\r
+-->\r
+\r
+<MODE>\r
+<PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="%{" />\r
+ <PROPERTY NAME="commentEnd" VALUE="%}" />\r
+ <PROPERTY NAME="lineComment" VALUE="%" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE="=" />\r
+</PROPS>\r
+\r
+<RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE">\r
+\r
+ <SPAN TYPE="COMMENT2" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>%{</BEGIN><END>%}</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <SEQ TYPE="DIGIT">\breve</SEQ>\r
+ <SEQ TYPE="DIGIT">\longa</SEQ>\r
+ <SEQ TYPE="DIGIT">\maxima</SEQ>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" AT_WHITESPACE_END="TRUE">=</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" AT_WHITESPACE_END="TRUE"> =</MARK_PREVIOUS>\r
+ <SEQ TYPE="MARKUP">{</SEQ>\r
+ <SEQ TYPE="MARKUP">}</SEQ>\r
+ <SEQ TYPE="MARKUP">[</SEQ>\r
+ <SEQ TYPE="MARKUP">]</SEQ>\r
+ <SEQ TYPE="MARKUP"><<</SEQ>\r
+ <SEQ TYPE="MARKUP">>></SEQ>\r
+ <SEQ TYPE="NULL">-<</SEQ>\r
+ <SEQ TYPE="NULL">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ_REGEXP HASH_CHAR=""" TYPE = "LITERAL1">"(\\"|[^\\"]|\\)+"</SEQ_REGEXP>\r
+ <SPAN TYPE="LITERAL1"><BEGIN>"</BEGIN><END>"</END></SPAN>\r
+\r
+<!-- Less can be more: Notes are simple black.\r
+ Now digits are highlighted.\r
+ Octave jumps now are as highlighted as markup. -->\r
+\r
+ <!--octave-->\r
+ <SEQ TYPE="MARKUP">'</SEQ>\r
+ <SEQ TYPE="MARKUP">,</SEQ>\r
+\r
+ <!-- rests and skip -->\r
+\r
+ <SEQ_REGEXP TYPE="LITERAL4" AT_WORD_START="TRUE" HASH_CHARS="rRs">[rRs]\d*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL4" AT_WORD_START="TRUE" HASH_CHAR="R">R\d*\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="LITERAL4" AT_WORD_START="TRUE" HASH_CHAR="s">s\d*\b</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="DIGIT" AT_WORD_START="FALSE" HASH_CHARS="1234567890">\d+\b</SEQ_REGEXP>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL3" MATCH_TYPE="OPERATOR">.</MARK_FOLLOWING>\r
+\r
+<!-- Generated part follows -->\r
+<!-- internal commands -->\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\override">\\override\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\version">\\version\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\include">\\include\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\invalid">\\invalid\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\addquote">\\addquote\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\alternative">\\alternative\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\book">\\book\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\~">\\~\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\mark">\\mark\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\default">\\default\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\key">\\key\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\skip">\\skip\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\octave">\\octave\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\partial">\\partial\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\time">\\time\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\change">\\change\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\consists">\\consists\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\remove">\\remove\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\accepts">\\accepts\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\defaultchild">\\defaultchild\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\denies">\\denies\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\alias">\\alias\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\type">\\type\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\description">\\description\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\name">\\name\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\context">\\context\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\grobdescriptions">\\grobdescriptions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\markup">\\markup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\header">\\header\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\notemode">\\notemode\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\drummode">\\drummode\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\figuremode">\\figuremode\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\chordmode">\\chordmode\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\lyricmode">\\lyricmode\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\drums">\\drums\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\figures">\\figures\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\chords">\\chords\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\lyrics">\\lyrics\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\once">\\once\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\revert">\\revert\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\set">\\set\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\unset">\\unset\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\addlyrics">\\addlyrics\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\objectid">\\objectid\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\with">\\with\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\rest">\\rest\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\paper">\\paper\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\midi">\\midi\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\layout">\\layout\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\new">\\new\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\times">\\times\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\transpose">\\transpose\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\tag">\\tag\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\relative">\\relative\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\renameinput">\\renameinput\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\repeat">\\repeat\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\lyricsto">\\lyricsto\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\score">\\score\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\sequential">\\sequential\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\simultaneous">\\simultaneous\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\longa">\\longa\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\breve">\\breve\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\maxima">\\maxima\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD1" HASH_CHAR="\tempo">\\tempo\b</SEQ_REGEXP>\r
+<!-- identifiers -->\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\AncientRemoveEmptyStaffContext">\\AncientRemoveEmptyStaffContext\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\RemoveEmptyRhythmicStaffContext">\\RemoveEmptyRhythmicStaffContext\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\RemoveEmptyStaffContext">\\RemoveEmptyStaffContext\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\accent">\\accent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\aeolian">\\aeolian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\afterGraceFraction">\\afterGraceFraction\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\aikenHeads">\\aikenHeads\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\allowPageTurn">\\allowPageTurn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\arpeggio">\\arpeggio\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\arpeggioBracket">\\arpeggioBracket\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\arpeggioDown">\\arpeggioDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\arpeggioNeutral">\\arpeggioNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\arpeggioUp">\\arpeggioUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\autoBeamOff">\\autoBeamOff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\autoBeamOn">\\autoBeamOn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\between-system-padding">\\between-system-padding\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\between-system-space">\\between-system-space\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bigger">\\bigger\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\blackTriangleMarkup">\\blackTriangleMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bookTitleMarkup">\\bookTitleMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bracketCloseSymbol">\\bracketCloseSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bracketOpenSymbol">\\bracketOpenSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\break">\\break\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\breve">\\breve\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cadenzaOff">\\cadenzaOff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cadenzaOn">\\cadenzaOn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\center">\\center\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\chordmodifiers">\\chordmodifiers\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cm">\\cm\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\coda">\\coda\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cr">\\cr\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cresc">\\cresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\decr">\\decr\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dim">\\dim\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dorian">\\dorian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dotsDown">\\dotsDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dotsNeutral">\\dotsNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dotsUp">\\dotsUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\down">\\down\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\downbow">\\downbow\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\downmordent">\\downmordent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\downprall">\\downprall\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\drumPitchNames">\\drumPitchNames\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dutchPitchnames">\\dutchPitchnames\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dynamicDown">\\dynamicDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dynamicNeutral">\\dynamicNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\dynamicUp">\\dynamicUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\emptyText">\\emptyText\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\endcr">\\endcr\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\endcresc">\\endcresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\enddecr">\\enddecr\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\enddim">\\enddim\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\endincipit">\\endincipit\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\escapedBiggerSymbol">\\escapedBiggerSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\escapedExclamationSymbol">\\escapedExclamationSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\escapedParenthesisCloseSymbol">\\escapedParenthesisCloseSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\escapedParenthesisOpenSymbol">\\escapedParenthesisOpenSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\escapedSmallerSymbol">\\escapedSmallerSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\espressivo">\\espressivo\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\evenHeaderMarkup">\\evenHeaderMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\f">\\f\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fatText">\\fatText\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fermata">\\fermata\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fermataMarkup">\\fermataMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ff">\\ff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fff">\\fff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ffff">\\ffff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\first-page-number">\\first-page-number\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\flageolet">\\flageolet\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fp">\\fp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\frenchChords">\\frenchChords\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fullJazzExceptions">\\fullJazzExceptions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\fz">\\fz\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\germanChords">\\germanChords\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\glissando">\\glissando\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\harmonic">\\harmonic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\hideNotes">\\hideNotes\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\hideStaffSwitch">\\hideStaffSwitch\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ignatzekExceptionMusic">\\ignatzekExceptionMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ignatzekExceptions">\\ignatzekExceptions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\improvisationOff">\\improvisationOff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\improvisationOn">\\improvisationOn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\in">\\in\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\input-encoding">\\input-encoding\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\instrument-definitions">\\instrument-definitions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ionian">\\ionian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\italianChords">\\italianChords\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\laissezVibrer">\\laissezVibrer\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\left">\\left\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\lheel">\\lheel\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\lineprall">\\lineprall\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\locrian">\\locrian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\longa">\\longa\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\longfermata">\\longfermata\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ltoe">\\ltoe\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\lydian">\\lydian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\major">\\major\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\marcato">\\marcato\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\maxima">\\maxima\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\melisma">\\melisma\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\melismaEnd">\\melismaEnd\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\mf">\\mf\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\midiDrumPitches">\\midiDrumPitches\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\minor">\\minor\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\mixolydian">\\mixolydian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\mm">\\mm\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\mordent">\\mordent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\mp">\\mp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\newSpacingSection">\\newSpacingSection\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\noBeam">\\noBeam\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\noBreak">\\noBreak\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\noPageBreak">\\noPageBreak\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\noPageTurn">\\noPageTurn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\normalsize">\\normalsize\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\oddFooterMarkup">\\oddFooterMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\oddHeaderMarkup">\\oddHeaderMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\oneVoice">\\oneVoice\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\open">\\open\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\output-scale">\\output-scale\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\p">\\p\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\page-top-space">\\page-top-space\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pageBreak">\\pageBreak\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pageTurn">\\pageTurn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\parenthesisCloseSymbol">\\parenthesisCloseSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\parenthesisOpenSymbol">\\parenthesisOpenSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\partialJazzExceptions">\\partialJazzExceptions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\partialJazzMusic">\\partialJazzMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\phrasingSlurDown">\\phrasingSlurDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\phrasingSlurNeutral">\\phrasingSlurNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\phrasingSlurUp">\\phrasingSlurUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\phrygian">\\phrygian\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pipeSymbol">\\pipeSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pitchnames">\\pitchnames\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\portato">\\portato\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pp">\\pp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ppp">\\ppp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pppp">\\pppp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ppppp">\\ppppp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\prall">\\prall\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pralldown">\\pralldown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\prallmordent">\\prallmordent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\prallprall">\\prallprall\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\prallup">\\prallup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\print-first-page-number">\\print-first-page-number\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\print-page-number">\\print-page-number\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pt">\\pt\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ragged-bottom">\\ragged-bottom\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\ragged-last-bottom">\\ragged-last-bottom\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\repeatTie">\\repeatTie\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\reverseturn">\\reverseturn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\rfz">\\rfz\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\rheel">\\rheel\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\right">\\right\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\rtoe">\\rtoe\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sacredHarpHeads">\\sacredHarpHeads\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\scoreTitleMarkup">\\scoreTitleMarkup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\segno">\\segno\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\semiGermanChords">\\semiGermanChords\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setDefaultDurationToQuarter">\\setDefaultDurationToQuarter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setEasyHeads">\\setEasyHeads\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setHairpinCresc">\\setHairpinCresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setHairpinDecresc">\\setHairpinDecresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setHairpinDim">\\setHairpinDim\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setTextCresc">\\setTextCresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setTextDecresc">\\setTextDecresc\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\setTextDim">\\setTextDim\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sf">\\sf\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sff">\\sff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sfp">\\sfp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sfz">\\sfz\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shiftOff">\\shiftOff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shiftOn">\\shiftOn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shiftOnn">\\shiftOnn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shiftOnnn">\\shiftOnnn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shortfermata">\\shortfermata\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\showStaffSwitch">\\showStaffSwitch\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\signumcongruentiae">\\signumcongruentiae\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slashSeparator">\\slashSeparator\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurDashed">\\slurDashed\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurDotted">\\slurDotted\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurDown">\\slurDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurNeutral">\\slurNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurSolid">\\slurSolid\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\slurUp">\\slurUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\small">\\small\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\smaller">\\smaller\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sostenutoDown">\\sostenutoDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sostenutoUp">\\sostenutoUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sp">\\sp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\spp">\\spp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\staccatissimo">\\staccatissimo\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\staccato">\\staccato\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\start">\\start\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startAcciaccaturaMusic">\\startAcciaccaturaMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startAppoggiaturaMusic">\\startAppoggiaturaMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startGraceMusic">\\startGraceMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startGroup">\\startGroup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startStaff">\\startStaff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startTextSpan">\\startTextSpan\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\startTrillSpan">\\startTrillSpan\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stemDown">\\stemDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stemNeutral">\\stemNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stemUp">\\stemUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stop">\\stop\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopAcciaccaturaMusic">\\stopAcciaccaturaMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopAppoggiaturaMusic">\\stopAppoggiaturaMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopGraceMusic">\\stopGraceMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopGroup">\\stopGroup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopStaff">\\stopStaff\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopTextSpan">\\stopTextSpan\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopTrillSpan">\\stopTrillSpan\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\stopped">\\stopped\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sustainDown">\\sustainDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\sustainUp">\\sustainUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tagline">\\tagline\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tenuto">\\tenuto\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\textSpannerDown">\\textSpannerDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\textSpannerNeutral">\\textSpannerNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\textSpannerUp">\\textSpannerUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\thumb">\\thumb\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieDashed">\\tieDashed\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieDotted">\\tieDotted\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieDown">\\tieDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieNeutral">\\tieNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieSolid">\\tieSolid\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tieUp">\\tieUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tildeSymbol">\\tildeSymbol\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tiny">\\tiny\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\treCorde">\\treCorde\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\trill">\\trill\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tupletDown">\\tupletDown\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tupletNeutral">\\tupletNeutral\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tupletUp">\\tupletUp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\turn">\\turn\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\unHideNotes">\\unHideNotes\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\unaCorda">\\unaCorda\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\unit">\\unit\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\up">\\up\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\upbow">\\upbow\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\upmordent">\\upmordent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\upprall">\\upprall\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\varcoda">\\varcoda\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\verylongfermata">\\verylongfermata\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\voiceFour">\\voiceFour\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\voiceOne">\\voiceOne\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\voiceThree">\\voiceThree\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\voiceTwo">\\voiceTwo\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\whiteTriangleMarkup">\\whiteTriangleMarkup\b</SEQ_REGEXP>\r
+<!-- music functions -->\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\acciaccatura">\\acciaccatura\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\addInstrumentDefinition">\\addInstrumentDefinition\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\addquote">\\addquote\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\afterGrace">\\afterGrace\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\applyContext">\\applyContext\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\applyMusic">\\applyMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\applyOutput">\\applyOutput\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\appoggiatura">\\appoggiatura\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\assertBeamQuant">\\assertBeamQuant\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\assertBeamSlope">\\assertBeamSlope\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\autochange">\\autochange\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\balloonGrobText">\\balloonGrobText\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\balloonText">\\balloonText\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bar">\\bar\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\barNumberCheck">\\barNumberCheck\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\bendAfter">\\bendAfter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\breathe">\\breathe\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\clef">\\clef\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\compressMusic">\\compressMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\cueDuring">\\cueDuring\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\displayLilyMusic">\\displayLilyMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\displayMusic">\\displayMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\featherDurations">\\featherDurations\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\grace">\\grace\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\includePageLayoutFile">\\includePageLayoutFile\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\instrumentSwitch">\\instrumentSwitch\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\keepWithTag">\\keepWithTag\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\killCues">\\killCues\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\makeClusters">\\makeClusters\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\musicMap">\\musicMap\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\octave">\\octave\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\oldaddlyrics">\\oldaddlyrics\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\overrideProperty">\\overrideProperty\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\parallelMusic">\\parallelMusic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\parenthesize">\\parenthesize\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\partcombine">\\partcombine\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\pitchedTrill">\\pitchedTrill\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\quoteDuring">\\quoteDuring\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\removeWithTag">\\removeWithTag\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\resetRelativeOctave">\\resetRelativeOctave\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\rightHandFinger">\\rightHandFinger\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\scoreTweak">\\scoreTweak\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\shiftDurations">\\shiftDurations\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\spacingTweaks">\\spacingTweaks\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tag">\\tag\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\transposedCueDuring">\\transposedCueDuring\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\transposition">\\transposition\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\tweak">\\tweak\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\unfoldRepeats">\\unfoldRepeats\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="\withMusicProperty">\\withMusicProperty\b</SEQ_REGEXP>\r
+<!-- markup commands -->\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\arrow-head">\\arrow-head\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\beam">\\beam\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\bigger">\\bigger\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\bold">\\bold\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\box">\\box\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\bracket">\\bracket\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\bracketed-y-column">\\bracketed-y-column\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\caps">\\caps\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\center-align">\\center-align\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\char">\\char\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\circle">\\circle\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\column">\\column\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\combine">\\combine\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\dir-column">\\dir-column\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\doubleflat">\\doubleflat\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\doublesharp">\\doublesharp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\draw-circle">\\draw-circle\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\dynamic">\\dynamic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\epsfile">\\epsfile\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fill-line">\\fill-line\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\filled-box">\\filled-box\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\finger">\\finger\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\flat">\\flat\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fontCaps">\\fontCaps\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fontsize">\\fontsize\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fraction">\\fraction\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fret-diagram">\\fret-diagram\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fret-diagram-terse">\\fret-diagram-terse\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fret-diagram-verbose">\\fret-diagram-verbose\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\fromproperty">\\fromproperty\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\general-align">\\general-align\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\halign">\\halign\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\hbracket">\\hbracket\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\hcenter">\\hcenter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\hcenter-in">\\hcenter-in\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\hspace">\\hspace\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\huge">\\huge\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\italic">\\italic\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\justify">\\justify\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\justify-field">\\justify-field\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\justify-string">\\justify-string\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\large">\\large\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\left-align">\\left-align\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\line">\\line\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\lookup">\\lookup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\lower">\\lower\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\magnify">\\magnify\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\markalphabet">\\markalphabet\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\markletter">\\markletter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\medium">\\medium\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\musicglyph">\\musicglyph\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\natural">\\natural\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\normal-size-sub">\\normal-size-sub\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\normal-size-super">\\normal-size-super\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\normal-text">\\normal-text\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\normalsize">\\normalsize\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\note">\\note\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\note-by-number">\\note-by-number\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\null">\\null\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\number">\\number\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\on-the-fly">\\on-the-fly\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\override">\\override\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\pad-around">\\pad-around\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\pad-markup">\\pad-markup\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\pad-to-box">\\pad-to-box\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\pad-x">\\pad-x\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\postscript">\\postscript\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\put-adjacent">\\put-adjacent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\raise">\\raise\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\right-align">\\right-align\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\roman">\\roman\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\rotate">\\rotate\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\sans">\\sans\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\score">\\score\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\semiflat">\\semiflat\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\semisharp">\\semisharp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\sesquiflat">\\sesquiflat\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\sesquisharp">\\sesquisharp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\sharp">\\sharp\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\simple">\\simple\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\slashed-digit">\\slashed-digit\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\small">\\small\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\smallCaps">\\smallCaps\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\smaller">\\smaller\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\stencil">\\stencil\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\strut">\\strut\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\sub">\\sub\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\super">\\super\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\teeny">\\teeny\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\text">\\text\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\tied-lyric">\\tied-lyric\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\tiny">\\tiny\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\translate">\\translate\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\translate-scaled">\\translate-scaled\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\transparent">\\transparent\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\triangle">\\triangle\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\typewriter">\\typewriter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\upright">\\upright\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\vcenter">\\vcenter\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\verbatim-file">\\verbatim-file\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\whiteout">\\whiteout\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\with-color">\\with-color\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\with-dimensions">\\with-dimensions\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\with-url">\\with-url\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\wordwrap">\\wordwrap\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\wordwrap-field">\\wordwrap-field\b</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="\wordwrap-string">\\wordwrap-string\b</SEQ_REGEXP>\r
+<MARK_FOLLOWING TYPE="FUNCTION">\</MARK_FOLLOWING>\r
+<KEYWORDS>\r
+ <KEYWORD2>staff-spacing-interface</KEYWORD2>\r
+ <KEYWORD2>text-script-interface</KEYWORD2>\r
+ <KEYWORD2>Ottava_spanner_engraver</KEYWORD2>\r
+ <KEYWORD2>Figured_bass_engraver</KEYWORD2>\r
+ <KEYWORD2>Lyrics</KEYWORD2>\r
+ <KEYWORD2>Separating_line_group_engraver</KEYWORD2>\r
+ <KEYWORD2>cluster-interface</KEYWORD2>\r
+ <KEYWORD2>Glissando_engraver</KEYWORD2>\r
+ <KEYWORD2>key-signature-interface</KEYWORD2>\r
+ <KEYWORD2>clef-interface</KEYWORD2>\r
+ <KEYWORD2>VaticanaVoice</KEYWORD2>\r
+ <KEYWORD2>Rest_collision_engraver</KEYWORD2>\r
+ <KEYWORD2>Grace_engraver</KEYWORD2>\r
+ <KEYWORD2>grid-point-interface</KEYWORD2>\r
+ <KEYWORD2>Measure_grouping_engraver</KEYWORD2>\r
+ <KEYWORD2>Laissez_vibrer_engraver</KEYWORD2>\r
+ <KEYWORD2>Script_row_engraver</KEYWORD2>\r
+ <KEYWORD2>bass-figure-alignment-interface</KEYWORD2>\r
+ <KEYWORD2>Note_head_line_engraver</KEYWORD2>\r
+ <KEYWORD2>ottava-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>rhythmic-head-interface</KEYWORD2>\r
+ <KEYWORD2>Accidental_engraver</KEYWORD2>\r
+ <KEYWORD2>Mark_engraver</KEYWORD2>\r
+ <KEYWORD2>hara-kiri-group-interface</KEYWORD2>\r
+ <KEYWORD2>Instrument_name_engraver</KEYWORD2>\r
+ <KEYWORD2>Vaticana_ligature_engraver</KEYWORD2>\r
+ <KEYWORD2>Page_turn_engraver</KEYWORD2>\r
+ <KEYWORD2>staff-symbol-interface</KEYWORD2>\r
+ <KEYWORD2>Beam_performer</KEYWORD2>\r
+ <KEYWORD2>accidental-suggestion-interface</KEYWORD2>\r
+ <KEYWORD2>Key_engraver</KEYWORD2>\r
+ <KEYWORD2>GrandStaff</KEYWORD2>\r
+ <KEYWORD2>multi-measure-interface</KEYWORD2>\r
+ <KEYWORD2>rest-collision-interface</KEYWORD2>\r
+ <KEYWORD2>Dot_column_engraver</KEYWORD2>\r
+ <KEYWORD2>MensuralVoice</KEYWORD2>\r
+ <KEYWORD2>TabStaff</KEYWORD2>\r
+ <KEYWORD2>Pitched_trill_engraver</KEYWORD2>\r
+ <KEYWORD2>line-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>Time_signature_performer</KEYWORD2>\r
+ <KEYWORD2>lyric-interface</KEYWORD2>\r
+ <KEYWORD2>StaffGroup</KEYWORD2>\r
+ <KEYWORD2>text-interface</KEYWORD2>\r
+ <KEYWORD2>slur-interface</KEYWORD2>\r
+ <KEYWORD2>Drum_note_performer</KEYWORD2>\r
+ <KEYWORD2>TabVoice</KEYWORD2>\r
+ <KEYWORD2>measure-grouping-interface</KEYWORD2>\r
+ <KEYWORD2>stanza-number-interface</KEYWORD2>\r
+ <KEYWORD2>self-alignment-interface</KEYWORD2>\r
+ <KEYWORD2>Span_arpeggio_engraver</KEYWORD2>\r
+ <KEYWORD2>system-interface</KEYWORD2>\r
+ <KEYWORD2>Engraver</KEYWORD2>\r
+ <KEYWORD2>RhythmicStaff</KEYWORD2>\r
+ <KEYWORD2>font-interface</KEYWORD2>\r
+ <KEYWORD2>fret-diagram-interface</KEYWORD2>\r
+ <KEYWORD2>Grace_spacing_engraver</KEYWORD2>\r
+ <KEYWORD2>Bar_engraver</KEYWORD2>\r
+ <KEYWORD2>Dynamic_engraver</KEYWORD2>\r
+ <KEYWORD2>Grob_pq_engraver</KEYWORD2>\r
+ <KEYWORD2>Default_bar_line_engraver</KEYWORD2>\r
+ <KEYWORD2>Swallow_performer</KEYWORD2>\r
+ <KEYWORD2>script-column-interface</KEYWORD2>\r
+ <KEYWORD2>Piano_pedal_performer</KEYWORD2>\r
+ <KEYWORD2>metronome-mark-interface</KEYWORD2>\r
+ <KEYWORD2>melody-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>FretBoards</KEYWORD2>\r
+ <KEYWORD2>spacing-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>Control_track_performer</KEYWORD2>\r
+ <KEYWORD2>Break_align_engraver</KEYWORD2>\r
+ <KEYWORD2>paper-column-interface</KEYWORD2>\r
+ <KEYWORD2>PianoStaff</KEYWORD2>\r
+ <KEYWORD2>Breathing_sign_engraver</KEYWORD2>\r
+ <KEYWORD2>accidental-placement-interface</KEYWORD2>\r
+ <KEYWORD2>Tuplet_engraver</KEYWORD2>\r
+ <KEYWORD2>stroke-finger-interface</KEYWORD2>\r
+ <KEYWORD2>side-position-interface</KEYWORD2>\r
+ <KEYWORD2>note-name-interface</KEYWORD2>\r
+ <KEYWORD2>bar-line-interface</KEYWORD2>\r
+ <KEYWORD2>lyric-extender-interface</KEYWORD2>\r
+ <KEYWORD2>Staff</KEYWORD2>\r
+ <KEYWORD2>GregorianTranscriptionStaff</KEYWORD2>\r
+ <KEYWORD2>Rest_swallow_translator</KEYWORD2>\r
+ <KEYWORD2>dynamic-text-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>arpeggio-interface</KEYWORD2>\r
+ <KEYWORD2>Cluster_spanner_engraver</KEYWORD2>\r
+ <KEYWORD2>Collision_engraver</KEYWORD2>\r
+ <KEYWORD2>accidental-interface</KEYWORD2>\r
+ <KEYWORD2>rest-interface</KEYWORD2>\r
+ <KEYWORD2>Tab_note_heads_engraver</KEYWORD2>\r
+ <KEYWORD2>dots-interface</KEYWORD2>\r
+ <KEYWORD2>staff-symbol-referencer-interface</KEYWORD2>\r
+ <KEYWORD2>ambitus-interface</KEYWORD2>\r
+ <KEYWORD2>bass-figure-interface</KEYWORD2>\r
+ <KEYWORD2>vaticana-ligature-interface</KEYWORD2>\r
+ <KEYWORD2>ledgered-interface</KEYWORD2>\r
+ <KEYWORD2>item-interface</KEYWORD2>\r
+ <KEYWORD2>Tie_performer</KEYWORD2>\r
+ <KEYWORD2>volta-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>vertically-spaceable-interface</KEYWORD2>\r
+ <KEYWORD2>ledger-line-interface</KEYWORD2>\r
+ <KEYWORD2>Chord_tremolo_engraver</KEYWORD2>\r
+ <KEYWORD2>note-column-interface</KEYWORD2>\r
+ <KEYWORD2>DrumVoice</KEYWORD2>\r
+ <KEYWORD2>axis-group-interface</KEYWORD2>\r
+ <KEYWORD2>Ledger_line_engraver</KEYWORD2>\r
+ <KEYWORD2>Slash_repeat_engraver</KEYWORD2>\r
+ <KEYWORD2>ligature-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>Pitch_squash_engraver</KEYWORD2>\r
+ <KEYWORD2>Instrument_switch_engraver</KEYWORD2>\r
+ <KEYWORD2>Voice</KEYWORD2>\r
+ <KEYWORD2>Script_column_engraver</KEYWORD2>\r
+ <KEYWORD2>Volta_engraver</KEYWORD2>\r
+ <KEYWORD2>Stanza_number_align_engraver</KEYWORD2>\r
+ <KEYWORD2>Vertical_align_engraver</KEYWORD2>\r
+ <KEYWORD2>span-bar-interface</KEYWORD2>\r
+ <KEYWORD2>Staff_collecting_engraver</KEYWORD2>\r
+ <KEYWORD2>Ligature_bracket_engraver</KEYWORD2>\r
+ <KEYWORD2>Time_signature_engraver</KEYWORD2>\r
+ <KEYWORD2>Beam_engraver</KEYWORD2>\r
+ <KEYWORD2>Note_name_engraver</KEYWORD2>\r
+ <KEYWORD2>Note_heads_engraver</KEYWORD2>\r
+ <KEYWORD2>Forbid_line_break_engraver</KEYWORD2>\r
+ <KEYWORD2>spacing-options-interface</KEYWORD2>\r
+ <KEYWORD2>spacing-interface</KEYWORD2>\r
+ <KEYWORD2>Span_dynamic_performer</KEYWORD2>\r
+ <KEYWORD2>piano-pedal-script-interface</KEYWORD2>\r
+ <KEYWORD2>MensuralStaff</KEYWORD2>\r
+ <KEYWORD2>Global</KEYWORD2>\r
+ <KEYWORD2>trill-pitch-accidental-interface</KEYWORD2>\r
+ <KEYWORD2>grob-interface</KEYWORD2>\r
+ <KEYWORD2>Horizontal_bracket_engraver</KEYWORD2>\r
+ <KEYWORD2>Grid_line_span_engraver</KEYWORD2>\r
+ <KEYWORD2>NoteNames</KEYWORD2>\r
+ <KEYWORD2>piano-pedal-interface</KEYWORD2>\r
+ <KEYWORD2>Axis_group_engraver</KEYWORD2>\r
+ <KEYWORD2>Staff_symbol_engraver</KEYWORD2>\r
+ <KEYWORD2>stem-interface</KEYWORD2>\r
+ <KEYWORD2>Slur_engraver</KEYWORD2>\r
+ <KEYWORD2>pitched-trill-interface</KEYWORD2>\r
+ <KEYWORD2>tie-column-interface</KEYWORD2>\r
+ <KEYWORD2>stem-tremolo-interface</KEYWORD2>\r
+ <KEYWORD2>Grid_point_engraver</KEYWORD2>\r
+ <KEYWORD2>System_start_delimiter_engraver</KEYWORD2>\r
+ <KEYWORD2>Completion_heads_engraver</KEYWORD2>\r
+ <KEYWORD2>Drum_notes_engraver</KEYWORD2>\r
+ <KEYWORD2>Swallow_engraver</KEYWORD2>\r
+ <KEYWORD2>Slur_performer</KEYWORD2>\r
+ <KEYWORD2>lyric-hyphen-interface</KEYWORD2>\r
+ <KEYWORD2>Clef_engraver</KEYWORD2>\r
+ <KEYWORD2>dynamic-interface</KEYWORD2>\r
+ <KEYWORD2>Score</KEYWORD2>\r
+ <KEYWORD2>Output_property_engraver</KEYWORD2>\r
+ <KEYWORD2>Repeat_tie_engraver</KEYWORD2>\r
+ <KEYWORD2>Rest_engraver</KEYWORD2>\r
+ <KEYWORD2>break-aligned-interface</KEYWORD2>\r
+ <KEYWORD2>String_number_engraver</KEYWORD2>\r
+ <KEYWORD2>only-prebreak-interface</KEYWORD2>\r
+ <KEYWORD2>Lyric_engraver</KEYWORD2>\r
+ <KEYWORD2>Tempo_performer</KEYWORD2>\r
+ <KEYWORD2>Parenthesis_engraver</KEYWORD2>\r
+ <KEYWORD2>Repeat_acknowledge_engraver</KEYWORD2>\r
+ <KEYWORD2>mensural-ligature-interface</KEYWORD2>\r
+ <KEYWORD2>align-interface</KEYWORD2>\r
+ <KEYWORD2>Stanza_number_engraver</KEYWORD2>\r
+ <KEYWORD2>system-start-delimiter-interface</KEYWORD2>\r
+ <KEYWORD2>lyric-syllable-interface</KEYWORD2>\r
+ <KEYWORD2>bend-after-interface</KEYWORD2>\r
+ <KEYWORD2>dynamic-line-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>Staff_performer</KEYWORD2>\r
+ <KEYWORD2>Bar_number_engraver</KEYWORD2>\r
+ <KEYWORD2>Fretboard_engraver</KEYWORD2>\r
+ <KEYWORD2>tablature-interface</KEYWORD2>\r
+ <KEYWORD2>Fingering_engraver</KEYWORD2>\r
+ <KEYWORD2>chord-name-interface</KEYWORD2>\r
+ <KEYWORD2>Note_swallow_translator</KEYWORD2>\r
+ <KEYWORD2>Chord_name_engraver</KEYWORD2>\r
+ <KEYWORD2>note-head-interface</KEYWORD2>\r
+ <KEYWORD2>breathing-sign-interface</KEYWORD2>\r
+ <KEYWORD2>Extender_engraver</KEYWORD2>\r
+ <KEYWORD2>Ambitus_engraver</KEYWORD2>\r
+ <KEYWORD2>DrumStaff</KEYWORD2>\r
+ <KEYWORD2>dot-column-interface</KEYWORD2>\r
+ <KEYWORD2>Lyric_performer</KEYWORD2>\r
+ <KEYWORD2>enclosing-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>Trill_spanner_engraver</KEYWORD2>\r
+ <KEYWORD2>Key_performer</KEYWORD2>\r
+ <KEYWORD2>Vertically_spaced_contexts_engraver</KEYWORD2>\r
+ <KEYWORD2>hairpin-interface</KEYWORD2>\r
+ <KEYWORD2>Hyphen_engraver</KEYWORD2>\r
+ <KEYWORD2>Dots_engraver</KEYWORD2>\r
+ <KEYWORD2>multi-measure-rest-interface</KEYWORD2>\r
+ <KEYWORD2>break-alignment-align-interface</KEYWORD2>\r
+ <KEYWORD2>Multi_measure_rest_engraver</KEYWORD2>\r
+ <KEYWORD2>InnerStaffGroup</KEYWORD2>\r
+ <KEYWORD2>text-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>Grace_beam_engraver</KEYWORD2>\r
+ <KEYWORD2>separation-item-interface</KEYWORD2>\r
+ <KEYWORD2>Balloon_engraver</KEYWORD2>\r
+ <KEYWORD2>Translator</KEYWORD2>\r
+ <KEYWORD2>separation-spanner-interface</KEYWORD2>\r
+ <KEYWORD2>Tweak_engraver</KEYWORD2>\r
+ <KEYWORD2>Devnull</KEYWORD2>\r
+ <KEYWORD2>Bend_after_engraver</KEYWORD2>\r
+ <KEYWORD2>Spacing_engraver</KEYWORD2>\r
+ <KEYWORD2>Piano_pedal_align_engraver</KEYWORD2>\r
+ <KEYWORD2>system-start-text-interface</KEYWORD2>\r
+ <KEYWORD2>parentheses-interface</KEYWORD2>\r
+ <KEYWORD2>Melisma_translator</KEYWORD2>\r
+ <KEYWORD2>ChoirStaff</KEYWORD2>\r
+ <KEYWORD2>Span_bar_engraver</KEYWORD2>\r
+ <KEYWORD2>Text_engraver</KEYWORD2>\r
+ <KEYWORD2>GregorianTranscriptionVoice</KEYWORD2>\r
+ <KEYWORD2>Timing_translator</KEYWORD2>\r
+ <KEYWORD2>script-interface</KEYWORD2>\r
+ <KEYWORD2>semi-tie-interface</KEYWORD2>\r
+ <KEYWORD2>Percent_repeat_engraver</KEYWORD2>\r
+ <KEYWORD2>Tab_staff_symbol_engraver</KEYWORD2>\r
+ <KEYWORD2>line-interface</KEYWORD2>\r
+ <KEYWORD2>rhythmic-grob-interface</KEYWORD2>\r
+ <KEYWORD2>Dynamic_performer</KEYWORD2>\r
+ <KEYWORD2>note-spacing-interface</KEYWORD2>\r
+ <KEYWORD2>spanner-interface</KEYWORD2>\r
+ <KEYWORD2>break-alignment-interface</KEYWORD2>\r
+ <KEYWORD2>tuplet-number-interface</KEYWORD2>\r
+ <KEYWORD2>Rhythmic_column_engraver</KEYWORD2>\r
+ <KEYWORD2>cluster-beacon-interface</KEYWORD2>\r
+ <KEYWORD2>horizontal-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>Mensural_ligature_engraver</KEYWORD2>\r
+ <KEYWORD2>ChordNames</KEYWORD2>\r
+ <KEYWORD2>gregorian-ligature-interface</KEYWORD2>\r
+ <KEYWORD2>Melody_engraver</KEYWORD2>\r
+ <KEYWORD2>ligature-interface</KEYWORD2>\r
+ <KEYWORD2>Paper_column_engraver</KEYWORD2>\r
+ <KEYWORD2>FiguredBass</KEYWORD2>\r
+ <KEYWORD2>grace-spacing-interface</KEYWORD2>\r
+ <KEYWORD2>tie-interface</KEYWORD2>\r
+ <KEYWORD2>New_fingering_engraver</KEYWORD2>\r
+ <KEYWORD2>Script_engraver</KEYWORD2>\r
+ <KEYWORD2>Metronome_mark_engraver</KEYWORD2>\r
+ <KEYWORD2>string-number-interface</KEYWORD2>\r
+ <KEYWORD2>Hara_kiri_engraver</KEYWORD2>\r
+ <KEYWORD2>grid-line-interface</KEYWORD2>\r
+ <KEYWORD2>Skip_event_swallow_translator</KEYWORD2>\r
+ <KEYWORD2>Auto_beam_engraver</KEYWORD2>\r
+ <KEYWORD2>spaceable-grob-interface</KEYWORD2>\r
+ <KEYWORD2>Font_size_engraver</KEYWORD2>\r
+ <KEYWORD2>figured-bass-continuation-interface</KEYWORD2>\r
+ <KEYWORD2>semi-tie-column-interface</KEYWORD2>\r
+ <KEYWORD2>CueVoice</KEYWORD2>\r
+ <KEYWORD2>Phrasing_slur_engraver</KEYWORD2>\r
+ <KEYWORD2>InnerChoirStaff</KEYWORD2>\r
+ <KEYWORD2>Arpeggio_engraver</KEYWORD2>\r
+ <KEYWORD2>mark-interface</KEYWORD2>\r
+ <KEYWORD2>VaticanaStaff</KEYWORD2>\r
+ <KEYWORD2>piano-pedal-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>beam-interface</KEYWORD2>\r
+ <KEYWORD2>Note_performer</KEYWORD2>\r
+ <KEYWORD2>custos-interface</KEYWORD2>\r
+ <KEYWORD2>percent-repeat-interface</KEYWORD2>\r
+ <KEYWORD2>time-signature-interface</KEYWORD2>\r
+ <KEYWORD2>Custos_engraver</KEYWORD2>\r
+ <KEYWORD2>Part_combine_engraver</KEYWORD2>\r
+ <KEYWORD2>Piano_pedal_engraver</KEYWORD2>\r
+ <KEYWORD2>tuplet-bracket-interface</KEYWORD2>\r
+ <KEYWORD2>Stem_engraver</KEYWORD2>\r
+ <KEYWORD2>finger-interface</KEYWORD2>\r
+ <KEYWORD2>note-collision-interface</KEYWORD2>\r
+ <KEYWORD2>Text_spanner_engraver</KEYWORD2>\r
+ <KEYWORD2>text-balloon-interface</KEYWORD2>\r
+ <KEYWORD2>Tie_engraver</KEYWORD2>\r
+ <KEYWORD2>Figured_bass_position_engraver</KEYWORD2>\r
+</KEYWORDS>\r
+<!-- Generated part ended -->\r
+\r
+</RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="#| " />\r
+ <PROPERTY NAME="commentEnd" VALUE=" |#" />\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ <PROPERTY NAME="noWordSep" VALUE="_-+?:" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="multipleBracketIndent" VALUE="true" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ ESCAPE="\"\r
+ NO_WORD_SEP="_-+?:"\r
+ DIGIT_RE="-?\d+([./]\d+)?"\r
+ >\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>#|</BEGIN>\r
+ <END>|#</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="NULL">'(</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL1">'</MARK_FOLLOWING>\r
+\r
+ <MARK_FOLLOWING AT_WORD_START="TRUE" TYPE="KEYWORD4">&</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <!--\r
+ Based on convention discussed here:\r
+ http://www.gigamonkeys.com/book/syntax-and-semantics.html\r
+ -->\r
+ <EOL_SPAN TYPE="COMMENT4">;;;;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT3">;;;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!--\r
+ keywords from j\r
+ (http://armedbear-j.sourceforge.net/)\r
+ Duplicates removed; KEYWORD1 and KEYWORD2 \r
+ better aligned with Emacs Lisp mode\r
+ Missing Common Lisp symbols added; now 970 symbols total\r
+ 2004-01-22 dsh\r
+ -->\r
+ <KEYWORDS>\r
+ <KEYWORD1>defclass</KEYWORD1>\r
+ <KEYWORD1>defconstant</KEYWORD1>\r
+ <KEYWORD1>defgeneric</KEYWORD1>\r
+ <KEYWORD1>define-compiler-macro</KEYWORD1>\r
+ <KEYWORD1>define-condition</KEYWORD1>\r
+ <KEYWORD1>define-method-combination</KEYWORD1>\r
+ <KEYWORD1>define-modify-macro</KEYWORD1>\r
+ <KEYWORD1>define-setf-expander</KEYWORD1>\r
+ <KEYWORD1>define-symbol-macro</KEYWORD1>\r
+ <KEYWORD1>defmacro</KEYWORD1>\r
+ <KEYWORD1>defmethod</KEYWORD1>\r
+ <KEYWORD1>defpackage</KEYWORD1>\r
+ <KEYWORD1>defparameter</KEYWORD1>\r
+ <KEYWORD1>defsetf</KEYWORD1>\r
+ <KEYWORD1>defstruct</KEYWORD1>\r
+ <KEYWORD1>deftype</KEYWORD1>\r
+ <KEYWORD1>defun</KEYWORD1>\r
+ <KEYWORD1>defvar</KEYWORD1>\r
+\r
+ <KEYWORD2>abort</KEYWORD2>\r
+ <KEYWORD2>assert</KEYWORD2>\r
+ <KEYWORD2>block</KEYWORD2>\r
+ <KEYWORD2>break</KEYWORD2>\r
+ <KEYWORD2>case</KEYWORD2>\r
+ <KEYWORD2>catch</KEYWORD2>\r
+ <KEYWORD2>ccase</KEYWORD2>\r
+ <KEYWORD2>cerror</KEYWORD2>\r
+ <KEYWORD2>cond</KEYWORD2>\r
+ <KEYWORD2>ctypecase</KEYWORD2>\r
+ <KEYWORD2>declaim</KEYWORD2>\r
+ <KEYWORD2>declare</KEYWORD2>\r
+ <KEYWORD2>do</KEYWORD2>\r
+ <KEYWORD2>do*</KEYWORD2>\r
+ <KEYWORD2>do-all-symbols</KEYWORD2>\r
+ <KEYWORD2>do-external-symbols</KEYWORD2>\r
+ <KEYWORD2>do-symbols</KEYWORD2>\r
+ <KEYWORD2>dolist</KEYWORD2>\r
+ <KEYWORD2>dotimes</KEYWORD2>\r
+ <KEYWORD2>ecase</KEYWORD2>\r
+ <KEYWORD2>error</KEYWORD2>\r
+ <KEYWORD2>etypecase</KEYWORD2>\r
+ <KEYWORD2>eval-when</KEYWORD2>\r
+ <KEYWORD2>flet</KEYWORD2>\r
+ <KEYWORD2>handler-bind</KEYWORD2>\r
+ <KEYWORD2>handler-case</KEYWORD2>\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>ignore-errors</KEYWORD2>\r
+ <KEYWORD2>in-package</KEYWORD2>\r
+ <KEYWORD2>labels</KEYWORD2>\r
+ <KEYWORD2>lambda</KEYWORD2>\r
+ <KEYWORD2>let</KEYWORD2>\r
+ <KEYWORD2>let*</KEYWORD2>\r
+ <KEYWORD2>locally</KEYWORD2>\r
+ <KEYWORD2>loop</KEYWORD2>\r
+ <KEYWORD2>macrolet</KEYWORD2>\r
+ <KEYWORD2>multiple-value-bind</KEYWORD2>\r
+ <KEYWORD2>proclaim</KEYWORD2>\r
+ <KEYWORD2>prog</KEYWORD2>\r
+ <KEYWORD2>prog*</KEYWORD2>\r
+ <KEYWORD2>prog1</KEYWORD2>\r
+ <KEYWORD2>prog2</KEYWORD2>\r
+ <KEYWORD2>progn</KEYWORD2>\r
+ <KEYWORD2>progv</KEYWORD2>\r
+ <KEYWORD2>provide</KEYWORD2>\r
+ <KEYWORD2>require</KEYWORD2>\r
+ <KEYWORD2>restart-bind</KEYWORD2>\r
+ <KEYWORD2>restart-case</KEYWORD2>\r
+ <KEYWORD2>restart-name</KEYWORD2>\r
+ <KEYWORD2>return</KEYWORD2>\r
+ <KEYWORD2>return-from</KEYWORD2>\r
+ <KEYWORD2>signal</KEYWORD2>\r
+ <KEYWORD2>symbol-macrolet</KEYWORD2>\r
+ <KEYWORD2>tagbody</KEYWORD2>\r
+ <KEYWORD2>the</KEYWORD2>\r
+ <KEYWORD2>throw</KEYWORD2>\r
+ <KEYWORD2>typecase</KEYWORD2>\r
+ <KEYWORD2>unless</KEYWORD2>\r
+ <KEYWORD2>unwind-protect</KEYWORD2>\r
+ <KEYWORD2>when</KEYWORD2>\r
+ <KEYWORD2>with-accessors</KEYWORD2>\r
+ <KEYWORD2>with-compilation-unit</KEYWORD2>\r
+ <KEYWORD2>with-condition-restarts</KEYWORD2>\r
+ <KEYWORD2>with-hash-table-iterator</KEYWORD2>\r
+ <KEYWORD2>with-input-from-string</KEYWORD2>\r
+ <KEYWORD2>with-open-file</KEYWORD2>\r
+ <KEYWORD2>with-open-stream</KEYWORD2>\r
+ <KEYWORD2>with-output-to-string</KEYWORD2>\r
+ <KEYWORD2>with-package-iterator</KEYWORD2>\r
+ <KEYWORD2>with-simple-restart</KEYWORD2>\r
+ <KEYWORD2>with-slots</KEYWORD2>\r
+ <KEYWORD2>with-standard-io-syntax</KEYWORD2>\r
+\r
+ <KEYWORD3>*</KEYWORD3>\r
+ <KEYWORD3>**</KEYWORD3>\r
+ <KEYWORD3>***</KEYWORD3>\r
+ <KEYWORD3>*break-on-signals*</KEYWORD3>\r
+ <KEYWORD3>*compile-file-pathname*</KEYWORD3>\r
+ <KEYWORD3>*compile-file-truename*</KEYWORD3>\r
+ <KEYWORD3>*compile-print*</KEYWORD3>\r
+ <KEYWORD3>*compile-verbose*</KEYWORD3>\r
+ <KEYWORD3>*debug-io*</KEYWORD3>\r
+ <KEYWORD3>*debugger-hook*</KEYWORD3>\r
+ <KEYWORD3>*default-pathname-defaults*</KEYWORD3>\r
+ <KEYWORD3>*error-output*</KEYWORD3>\r
+ <KEYWORD3>*features*</KEYWORD3>\r
+ <KEYWORD3>*gensym-counter*</KEYWORD3>\r
+ <KEYWORD3>*load-pathname*</KEYWORD3>\r
+ <KEYWORD3>*load-print*</KEYWORD3>\r
+ <KEYWORD3>*load-truename*</KEYWORD3>\r
+ <KEYWORD3>*load-verbose*</KEYWORD3>\r
+ <KEYWORD3>*macroexpand-hook*</KEYWORD3>\r
+ <KEYWORD3>*modules*</KEYWORD3>\r
+ <KEYWORD3>*package*</KEYWORD3>\r
+ <KEYWORD3>*print-array*</KEYWORD3>\r
+ <KEYWORD3>*print-base*</KEYWORD3>\r
+ <KEYWORD3>*print-case*</KEYWORD3>\r
+ <KEYWORD3>*print-circle*</KEYWORD3>\r
+ <KEYWORD3>*print-escape*</KEYWORD3>\r
+ <KEYWORD3>*print-gensym*</KEYWORD3>\r
+ <KEYWORD3>*print-length*</KEYWORD3>\r
+ <KEYWORD3>*print-level*</KEYWORD3>\r
+ <KEYWORD3>*print-lines*</KEYWORD3>\r
+ <KEYWORD3>*print-miser-width*</KEYWORD3>\r
+ <KEYWORD3>*print-pprint-dispatch*</KEYWORD3>\r
+ <KEYWORD3>*print-pretty*</KEYWORD3>\r
+ <KEYWORD3>*print-radix*</KEYWORD3>\r
+ <KEYWORD3>*print-readably*</KEYWORD3>\r
+ <KEYWORD3>*print-right-margin*</KEYWORD3>\r
+ <KEYWORD3>*query-io*</KEYWORD3>\r
+ <KEYWORD3>*random-state*</KEYWORD3>\r
+ <KEYWORD3>*read-base*</KEYWORD3>\r
+ <KEYWORD3>*read-default-float-format*</KEYWORD3>\r
+ <KEYWORD3>*read-eval*</KEYWORD3>\r
+ <KEYWORD3>*read-suppress*</KEYWORD3>\r
+ <KEYWORD3>*readtable*</KEYWORD3>\r
+ <KEYWORD3>*standard-input*</KEYWORD3>\r
+ <KEYWORD3>*standard-output*</KEYWORD3>\r
+ <KEYWORD3>*terminal-io*</KEYWORD3>\r
+ <KEYWORD3>*trace-output*</KEYWORD3>\r
+ <KEYWORD3>+</KEYWORD3>\r
+ <KEYWORD3>++</KEYWORD3>\r
+ <KEYWORD3>+++</KEYWORD3>\r
+ <KEYWORD3>-</KEYWORD3>\r
+ <KEYWORD3>/</KEYWORD3>\r
+ <KEYWORD3>//</KEYWORD3>\r
+ <KEYWORD3>///</KEYWORD3>\r
+ <KEYWORD3>/=</KEYWORD3>\r
+ <KEYWORD3>1+</KEYWORD3>\r
+ <KEYWORD3>1-</KEYWORD3>\r
+ <KEYWORD3><</KEYWORD3>\r
+ <KEYWORD3><=</KEYWORD3>\r
+ <KEYWORD3>=</KEYWORD3>\r
+ <KEYWORD3>></KEYWORD3>\r
+ <KEYWORD3>>=</KEYWORD3>\r
+ <KEYWORD3>abs</KEYWORD3>\r
+ <KEYWORD3>acons</KEYWORD3>\r
+ <KEYWORD3>acos</KEYWORD3>\r
+ <KEYWORD3>acosh</KEYWORD3>\r
+ <KEYWORD3>add-method</KEYWORD3>\r
+ <KEYWORD3>adjoin</KEYWORD3>\r
+ <KEYWORD3>adjust-array</KEYWORD3>\r
+ <KEYWORD3>adjustable-array-p</KEYWORD3>\r
+ <KEYWORD3>allocate-instance</KEYWORD3>\r
+ <KEYWORD3>alpha-char-p</KEYWORD3>\r
+ <KEYWORD3>alphanumericp</KEYWORD3>\r
+ <KEYWORD3>and</KEYWORD3>\r
+ <KEYWORD3>append</KEYWORD3>\r
+ <KEYWORD3>apply</KEYWORD3>\r
+ <KEYWORD3>apropos</KEYWORD3>\r
+ <KEYWORD3>apropos-list</KEYWORD3>\r
+ <KEYWORD3>aref</KEYWORD3>\r
+ <KEYWORD3>arithmetic-error</KEYWORD3>\r
+ <KEYWORD3>arithmetic-error-operands</KEYWORD3>\r
+ <KEYWORD3>arithmetic-error-operation</KEYWORD3>\r
+ <KEYWORD3>array</KEYWORD3>\r
+ <KEYWORD3>array-dimension</KEYWORD3>\r
+ <KEYWORD3>array-dimension-limit</KEYWORD3>\r
+ <KEYWORD3>array-dimensions</KEYWORD3>\r
+ <KEYWORD3>array-displacement</KEYWORD3>\r
+ <KEYWORD3>array-element-type</KEYWORD3>\r
+ <KEYWORD3>array-has-fill-pointer-p</KEYWORD3>\r
+ <KEYWORD3>array-in-bounds-p</KEYWORD3>\r
+ <KEYWORD3>array-rank</KEYWORD3>\r
+ <KEYWORD3>array-rank-limit</KEYWORD3>\r
+ <KEYWORD3>array-row-major-index</KEYWORD3>\r
+ <KEYWORD3>array-total-size</KEYWORD3>\r
+ <KEYWORD3>array-total-size-limit</KEYWORD3>\r
+ <KEYWORD3>arrayp</KEYWORD3>\r
+ <KEYWORD3>ash</KEYWORD3>\r
+ <KEYWORD3>asin</KEYWORD3>\r
+ <KEYWORD3>asinh</KEYWORD3>\r
+ <KEYWORD3>assoc</KEYWORD3>\r
+ <KEYWORD3>assoc-if</KEYWORD3>\r
+ <KEYWORD3>assoc-if-not</KEYWORD3>\r
+ <KEYWORD3>atan</KEYWORD3>\r
+ <KEYWORD3>atanh</KEYWORD3>\r
+ <KEYWORD3>atom</KEYWORD3>\r
+ <KEYWORD3>base-char</KEYWORD3>\r
+ <KEYWORD3>base-string</KEYWORD3>\r
+ <KEYWORD3>bignum</KEYWORD3>\r
+ <KEYWORD3>bit</KEYWORD3>\r
+ <KEYWORD3>bit-and</KEYWORD3>\r
+ <KEYWORD3>bit-andc1</KEYWORD3>\r
+ <KEYWORD3>bit-andc2</KEYWORD3>\r
+ <KEYWORD3>bit-eqv</KEYWORD3>\r
+ <KEYWORD3>bit-ior</KEYWORD3>\r
+ <KEYWORD3>bit-nand</KEYWORD3>\r
+ <KEYWORD3>bit-nor</KEYWORD3>\r
+ <KEYWORD3>bit-not</KEYWORD3>\r
+ <KEYWORD3>bit-orc1</KEYWORD3>\r
+ <KEYWORD3>bit-orc2</KEYWORD3>\r
+ <KEYWORD3>bit-vector</KEYWORD3>\r
+ <KEYWORD3>bit-vector-p</KEYWORD3>\r
+ <KEYWORD3>bit-xor</KEYWORD3>\r
+ <KEYWORD3>boole</KEYWORD3>\r
+ <KEYWORD3>boole-1</KEYWORD3>\r
+ <KEYWORD3>boole-2</KEYWORD3>\r
+ <KEYWORD3>boole-and</KEYWORD3>\r
+ <KEYWORD3>boole-andc1</KEYWORD3>\r
+ <KEYWORD3>boole-andc2</KEYWORD3>\r
+ <KEYWORD3>boole-c1</KEYWORD3>\r
+ <KEYWORD3>boole-c2</KEYWORD3>\r
+ <KEYWORD3>boole-clr</KEYWORD3>\r
+ <KEYWORD3>boole-eqv</KEYWORD3>\r
+ <KEYWORD3>boole-ior</KEYWORD3>\r
+ <KEYWORD3>boole-nand</KEYWORD3>\r
+ <KEYWORD3>boole-nor</KEYWORD3>\r
+ <KEYWORD3>boole-orc1</KEYWORD3>\r
+ <KEYWORD3>boole-orc2</KEYWORD3>\r
+ <KEYWORD3>boole-set</KEYWORD3>\r
+ <KEYWORD3>boole-xor</KEYWORD3>\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>both-case-p</KEYWORD3>\r
+ <KEYWORD3>boundp</KEYWORD3>\r
+ <KEYWORD3>broadcast-stream</KEYWORD3>\r
+ <KEYWORD3>broadcast-stream-streams</KEYWORD3>\r
+ <KEYWORD3>built-in-class</KEYWORD3>\r
+ <KEYWORD3>butlast</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>byte-position</KEYWORD3>\r
+ <KEYWORD3>byte-size</KEYWORD3>\r
+ <KEYWORD3>caaaar</KEYWORD3>\r
+ <KEYWORD3>caaadr</KEYWORD3>\r
+ <KEYWORD3>caaar</KEYWORD3>\r
+ <KEYWORD3>caadar</KEYWORD3>\r
+ <KEYWORD3>caaddr</KEYWORD3>\r
+ <KEYWORD3>caadr</KEYWORD3>\r
+ <KEYWORD3>caar</KEYWORD3>\r
+ <KEYWORD3>cadaar</KEYWORD3>\r
+ <KEYWORD3>cadadr</KEYWORD3>\r
+ <KEYWORD3>cadar</KEYWORD3>\r
+ <KEYWORD3>caddar</KEYWORD3>\r
+ <KEYWORD3>cadddr</KEYWORD3>\r
+ <KEYWORD3>caddr</KEYWORD3>\r
+ <KEYWORD3>cadr</KEYWORD3>\r
+ <KEYWORD3>call-arguments-limit</KEYWORD3>\r
+ <KEYWORD3>call-method</KEYWORD3>\r
+ <KEYWORD3>call-next-method</KEYWORD3>\r
+ <KEYWORD3>car</KEYWORD3>\r
+ <KEYWORD3>cdaaar</KEYWORD3>\r
+ <KEYWORD3>cdaadr</KEYWORD3>\r
+ <KEYWORD3>cdaar</KEYWORD3>\r
+ <KEYWORD3>cdadar</KEYWORD3>\r
+ <KEYWORD3>cdaddr</KEYWORD3>\r
+ <KEYWORD3>cdadr</KEYWORD3>\r
+ <KEYWORD3>cdar</KEYWORD3>\r
+ <KEYWORD3>cddaar</KEYWORD3>\r
+ <KEYWORD3>cddadr</KEYWORD3>\r
+ <KEYWORD3>cddar</KEYWORD3>\r
+ <KEYWORD3>cdddar</KEYWORD3>\r
+ <KEYWORD3>cddddr</KEYWORD3>\r
+ <KEYWORD3>cdddr</KEYWORD3>\r
+ <KEYWORD3>cddr</KEYWORD3>\r
+ <KEYWORD3>cdr</KEYWORD3>\r
+ <KEYWORD3>ceiling</KEYWORD3>\r
+ <KEYWORD3>cell-error</KEYWORD3>\r
+ <KEYWORD3>cell-error-name</KEYWORD3>\r
+ <KEYWORD3>change-class</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>char-code</KEYWORD3>\r
+ <KEYWORD3>char-code-limit</KEYWORD3>\r
+ <KEYWORD3>char-downcase</KEYWORD3>\r
+ <KEYWORD3>char-equal</KEYWORD3>\r
+ <KEYWORD3>char-greaterp</KEYWORD3>\r
+ <KEYWORD3>char-int</KEYWORD3>\r
+ <KEYWORD3>char-lessp</KEYWORD3>\r
+ <KEYWORD3>char-name</KEYWORD3>\r
+ <KEYWORD3>char-not-equal</KEYWORD3>\r
+ <KEYWORD3>char-not-greaterp</KEYWORD3>\r
+ <KEYWORD3>char-not-lessp</KEYWORD3>\r
+ <KEYWORD3>char-upcase</KEYWORD3>\r
+ <KEYWORD3>char/=</KEYWORD3>\r
+ <KEYWORD3>char></KEYWORD3>\r
+ <KEYWORD3>char>=</KEYWORD3>\r
+ <KEYWORD3>char<</KEYWORD3>\r
+ <KEYWORD3>char<=</KEYWORD3>\r
+ <KEYWORD3>char=</KEYWORD3>\r
+ <KEYWORD3>character</KEYWORD3>\r
+ <KEYWORD3>characterp</KEYWORD3>\r
+ <KEYWORD3>check-type</KEYWORD3>\r
+ <KEYWORD3>cis</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>class-name</KEYWORD3>\r
+ <KEYWORD3>class-of</KEYWORD3>\r
+ <KEYWORD3>clear-input</KEYWORD3>\r
+ <KEYWORD3>clear-output</KEYWORD3>\r
+ <KEYWORD3>close</KEYWORD3>\r
+ <KEYWORD3>clrhash</KEYWORD3>\r
+ <KEYWORD3>code-char</KEYWORD3>\r
+ <KEYWORD3>coerce</KEYWORD3>\r
+ <KEYWORD3>compilation-speed</KEYWORD3>\r
+ <KEYWORD3>compile</KEYWORD3>\r
+ <KEYWORD3>compile-file</KEYWORD3>\r
+ <KEYWORD3>compile-file-pathname</KEYWORD3>\r
+ <KEYWORD3>compiled-function</KEYWORD3>\r
+ <KEYWORD3>compiled-function-p</KEYWORD3>\r
+ <KEYWORD3>compiler-macro</KEYWORD3>\r
+ <KEYWORD3>compiler-macro-function</KEYWORD3>\r
+ <KEYWORD3>complement</KEYWORD3>\r
+ <KEYWORD3>complex</KEYWORD3>\r
+ <KEYWORD3>complexp</KEYWORD3>\r
+ <KEYWORD3>compute-applicable-methods</KEYWORD3>\r
+ <KEYWORD3>compute-restarts</KEYWORD3>\r
+ <KEYWORD3>concatenate</KEYWORD3>\r
+ <KEYWORD3>concatenated-stream</KEYWORD3>\r
+ <KEYWORD3>concatenated-stream-streams</KEYWORD3>\r
+ <KEYWORD3>condition</KEYWORD3>\r
+ <KEYWORD3>conjugate</KEYWORD3>\r
+ <KEYWORD3>cons</KEYWORD3>\r
+ <KEYWORD3>consp</KEYWORD3>\r
+ <KEYWORD3>constantly</KEYWORD3>\r
+ <KEYWORD3>constantp</KEYWORD3>\r
+ <KEYWORD3>continue</KEYWORD3>\r
+ <KEYWORD3>control-error</KEYWORD3>\r
+ <KEYWORD3>copy-alist</KEYWORD3>\r
+ <KEYWORD3>copy-list</KEYWORD3>\r
+ <KEYWORD3>copy-pprint-dispatch</KEYWORD3>\r
+ <KEYWORD3>copy-readtable</KEYWORD3>\r
+ <KEYWORD3>copy-seq</KEYWORD3>\r
+ <KEYWORD3>copy-structure</KEYWORD3>\r
+ <KEYWORD3>copy-symbol</KEYWORD3>\r
+ <KEYWORD3>copy-tree</KEYWORD3>\r
+ <KEYWORD3>cos</KEYWORD3>\r
+ <KEYWORD3>cosh</KEYWORD3>\r
+ <KEYWORD3>count</KEYWORD3>\r
+ <KEYWORD3>count-if</KEYWORD3>\r
+ <KEYWORD3>count-if-not</KEYWORD3>\r
+ <KEYWORD3>debug</KEYWORD3>\r
+ <KEYWORD3>decf</KEYWORD3>\r
+ <KEYWORD3>declaration</KEYWORD3>\r
+ <KEYWORD3>decode-float</KEYWORD3>\r
+ <KEYWORD3>decode-universal-time</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>delete-duplicates</KEYWORD3>\r
+ <KEYWORD3>delete-file</KEYWORD3>\r
+ <KEYWORD3>delete-if</KEYWORD3>\r
+ <KEYWORD3>delete-if-not</KEYWORD3>\r
+ <KEYWORD3>delete-package</KEYWORD3>\r
+ <KEYWORD3>denominator</KEYWORD3>\r
+ <KEYWORD3>deposit-field</KEYWORD3>\r
+ <KEYWORD3>describe</KEYWORD3>\r
+ <KEYWORD3>describe-object</KEYWORD3>\r
+ <KEYWORD3>destructuring-bind</KEYWORD3>\r
+ <KEYWORD3>digit-char</KEYWORD3>\r
+ <KEYWORD3>digit-char-p</KEYWORD3>\r
+ <KEYWORD3>directory</KEYWORD3>\r
+ <KEYWORD3>directory-namestring</KEYWORD3>\r
+ <KEYWORD3>disassemble</KEYWORD3>\r
+ <KEYWORD3>division-by-zero</KEYWORD3>\r
+ <KEYWORD3>documentation</KEYWORD3>\r
+ <KEYWORD3>double-float</KEYWORD3>\r
+ <KEYWORD3>double-float-epsilon</KEYWORD3>\r
+ <KEYWORD3>double-float-negative-epsilon</KEYWORD3>\r
+ <KEYWORD3>dpb</KEYWORD3>\r
+ <KEYWORD3>dribble</KEYWORD3>\r
+ <KEYWORD3>dynamic-extent</KEYWORD3>\r
+ <KEYWORD3>echo-stream</KEYWORD3>\r
+ <KEYWORD3>echo-stream-input-stream</KEYWORD3>\r
+ <KEYWORD3>echo-stream-output-stream</KEYWORD3>\r
+ <KEYWORD3>ed</KEYWORD3>\r
+ <KEYWORD3>eighth</KEYWORD3>\r
+ <KEYWORD3>elt</KEYWORD3>\r
+ <KEYWORD3>encode-universal-time</KEYWORD3>\r
+ <KEYWORD3>end-of-file</KEYWORD3>\r
+ <KEYWORD3>endp</KEYWORD3>\r
+ <KEYWORD3>enough-namestring</KEYWORD3>\r
+ <KEYWORD3>ensure-directories-exist</KEYWORD3>\r
+ <KEYWORD3>ensure-generic-function</KEYWORD3>\r
+ <KEYWORD3>eq</KEYWORD3>\r
+ <KEYWORD3>eql</KEYWORD3>\r
+ <KEYWORD3>equal</KEYWORD3>\r
+ <KEYWORD3>equalp</KEYWORD3>\r
+ <KEYWORD3>eval</KEYWORD3>\r
+ <KEYWORD3>evenp</KEYWORD3>\r
+ <KEYWORD3>every</KEYWORD3>\r
+ <KEYWORD3>exp</KEYWORD3>\r
+ <KEYWORD3>export</KEYWORD3>\r
+ <KEYWORD3>expt</KEYWORD3>\r
+ <KEYWORD3>extended-char</KEYWORD3>\r
+ <KEYWORD3>fboundp</KEYWORD3>\r
+ <KEYWORD3>fceiling</KEYWORD3>\r
+ <KEYWORD3>fdefinition</KEYWORD3>\r
+ <KEYWORD3>ffloor</KEYWORD3>\r
+ <KEYWORD3>fifth</KEYWORD3>\r
+ <KEYWORD3>file-author</KEYWORD3>\r
+ <KEYWORD3>file-error</KEYWORD3>\r
+ <KEYWORD3>file-error-pathname</KEYWORD3>\r
+ <KEYWORD3>file-length</KEYWORD3>\r
+ <KEYWORD3>file-namestring</KEYWORD3>\r
+ <KEYWORD3>file-position</KEYWORD3>\r
+ <KEYWORD3>file-stream</KEYWORD3>\r
+ <KEYWORD3>file-string-length</KEYWORD3>\r
+ <KEYWORD3>file-write-date</KEYWORD3>\r
+ <KEYWORD3>fill</KEYWORD3>\r
+ <KEYWORD3>fill-pointer</KEYWORD3>\r
+ <KEYWORD3>find</KEYWORD3>\r
+ <KEYWORD3>find-all-symbols</KEYWORD3>\r
+ <KEYWORD3>find-class</KEYWORD3>\r
+ <KEYWORD3>find-if</KEYWORD3>\r
+ <KEYWORD3>find-if-not</KEYWORD3>\r
+ <KEYWORD3>find-method</KEYWORD3>\r
+ <KEYWORD3>find-package</KEYWORD3>\r
+ <KEYWORD3>find-restart</KEYWORD3>\r
+ <KEYWORD3>find-symbol</KEYWORD3>\r
+ <KEYWORD3>finish-output</KEYWORD3>\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>fixnum</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>float-digits</KEYWORD3>\r
+ <KEYWORD3>float-precision</KEYWORD3>\r
+ <KEYWORD3>float-radix</KEYWORD3>\r
+ <KEYWORD3>float-sign</KEYWORD3>\r
+ <KEYWORD3>floating-point-inexact</KEYWORD3>\r
+ <KEYWORD3>floating-point-invalid-operation</KEYWORD3>\r
+ <KEYWORD3>floating-point-overflow</KEYWORD3>\r
+ <KEYWORD3>floating-point-underflow</KEYWORD3>\r
+ <KEYWORD3>floatp</KEYWORD3>\r
+ <KEYWORD3>floor</KEYWORD3>\r
+ <KEYWORD3>fmakunbound</KEYWORD3>\r
+ <KEYWORD3>force-output</KEYWORD3>\r
+ <KEYWORD3>format</KEYWORD3>\r
+ <KEYWORD3>formatter</KEYWORD3>\r
+ <KEYWORD3>fourth</KEYWORD3>\r
+ <KEYWORD3>fresh-line</KEYWORD3>\r
+ <KEYWORD3>fround</KEYWORD3>\r
+ <KEYWORD3>ftruncate</KEYWORD3>\r
+ <KEYWORD3>ftype</KEYWORD3>\r
+ <KEYWORD3>funcall</KEYWORD3>\r
+ <KEYWORD3>function</KEYWORD3>\r
+ <KEYWORD3>function-keywords</KEYWORD3>\r
+ <KEYWORD3>function-lambda-expression</KEYWORD3>\r
+ <KEYWORD3>functionp</KEYWORD3>\r
+ <KEYWORD3>gcd</KEYWORD3>\r
+ <KEYWORD3>generic-function</KEYWORD3>\r
+ <KEYWORD3>gensym</KEYWORD3>\r
+ <KEYWORD3>gentemp</KEYWORD3>\r
+ <KEYWORD3>get</KEYWORD3>\r
+ <KEYWORD3>get-decoded-time</KEYWORD3>\r
+ <KEYWORD3>get-dispatch-macro-character</KEYWORD3>\r
+ <KEYWORD3>get-internal-real-time</KEYWORD3>\r
+ <KEYWORD3>get-internal-run-time</KEYWORD3>\r
+ <KEYWORD3>get-macro-character</KEYWORD3>\r
+ <KEYWORD3>get-output-stream-string</KEYWORD3>\r
+ <KEYWORD3>get-properties</KEYWORD3>\r
+ <KEYWORD3>get-setf-expansion</KEYWORD3>\r
+ <KEYWORD3>get-universal-time</KEYWORD3>\r
+ <KEYWORD3>getf</KEYWORD3>\r
+ <KEYWORD3>gethash</KEYWORD3>\r
+ <KEYWORD3>go</KEYWORD3>\r
+ <KEYWORD3>graphic-char-p</KEYWORD3>\r
+ <KEYWORD3>hash-table</KEYWORD3>\r
+ <KEYWORD3>hash-table-count</KEYWORD3>\r
+ <KEYWORD3>hash-table-p</KEYWORD3>\r
+ <KEYWORD3>hash-table-rehash-size</KEYWORD3>\r
+ <KEYWORD3>hash-table-rehash-threshold</KEYWORD3>\r
+ <KEYWORD3>hash-table-size</KEYWORD3>\r
+ <KEYWORD3>hash-table-test</KEYWORD3>\r
+ <KEYWORD3>host-namestring</KEYWORD3>\r
+ <KEYWORD3>identity</KEYWORD3>\r
+ <KEYWORD3>ignorable</KEYWORD3>\r
+ <KEYWORD3>ignore</KEYWORD3>\r
+ <KEYWORD3>imagpart</KEYWORD3>\r
+ <KEYWORD3>import</KEYWORD3>\r
+ <KEYWORD3>incf</KEYWORD3>\r
+ <KEYWORD3>initialize-instance</KEYWORD3>\r
+ <KEYWORD3>inline</KEYWORD3>\r
+ <KEYWORD3>input-stream-p</KEYWORD3>\r
+ <KEYWORD3>inspect</KEYWORD3>\r
+ <KEYWORD3>integer</KEYWORD3>\r
+ <KEYWORD3>integer-decode-float</KEYWORD3>\r
+ <KEYWORD3>integer-length</KEYWORD3>\r
+ <KEYWORD3>integerp</KEYWORD3>\r
+ <KEYWORD3>interactive-stream-p</KEYWORD3>\r
+ <KEYWORD3>intern</KEYWORD3>\r
+ <KEYWORD3>internal-time-units-per-second</KEYWORD3>\r
+ <KEYWORD3>intersection</KEYWORD3>\r
+ <KEYWORD3>invalid-method-error</KEYWORD3>\r
+ <KEYWORD3>invoke-debugger</KEYWORD3>\r
+ <KEYWORD3>invoke-restart</KEYWORD3>\r
+ <KEYWORD3>invoke-restart-interactively</KEYWORD3>\r
+ <KEYWORD3>isqrt</KEYWORD3>\r
+ <KEYWORD3>keyword</KEYWORD3>\r
+ <KEYWORD3>keywordp</KEYWORD3>\r
+ <KEYWORD3>lambda-list-keywords</KEYWORD3>\r
+ <KEYWORD3>lambda-parameters-limit</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>lcm</KEYWORD3>\r
+ <KEYWORD3>ldb</KEYWORD3>\r
+ <KEYWORD3>ldb-test</KEYWORD3>\r
+ <KEYWORD3>ldiff</KEYWORD3>\r
+ <KEYWORD3>least-negative-double-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-long-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-normalized-double-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-normalized-long-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-normalized-short-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-normalized-single-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-short-float</KEYWORD3>\r
+ <KEYWORD3>least-negative-single-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-double-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-long-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-normalized-double-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-normalized-long-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-normalized-short-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-normalized-single-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-short-float</KEYWORD3>\r
+ <KEYWORD3>least-positive-single-float</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>lisp-implementation-type</KEYWORD3>\r
+ <KEYWORD3>lisp-implementation-version</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>list*</KEYWORD3>\r
+ <KEYWORD3>list-all-packages</KEYWORD3>\r
+ <KEYWORD3>list-length</KEYWORD3>\r
+ <KEYWORD3>listen</KEYWORD3>\r
+ <KEYWORD3>listp</KEYWORD3>\r
+ <KEYWORD3>load</KEYWORD3>\r
+ <KEYWORD3>load-logical-pathname-translations</KEYWORD3>\r
+ <KEYWORD3>load-time-value</KEYWORD3>\r
+ <KEYWORD3>log</KEYWORD3>\r
+ <KEYWORD3>logand</KEYWORD3>\r
+ <KEYWORD3>logandc1</KEYWORD3>\r
+ <KEYWORD3>logandc2</KEYWORD3>\r
+ <KEYWORD3>logbitp</KEYWORD3>\r
+ <KEYWORD3>logcount</KEYWORD3>\r
+ <KEYWORD3>logeqv</KEYWORD3>\r
+ <KEYWORD3>logical-pathname</KEYWORD3>\r
+ <KEYWORD3>logical-pathname-translations</KEYWORD3>\r
+ <KEYWORD3>logior</KEYWORD3>\r
+ <KEYWORD3>lognand</KEYWORD3>\r
+ <KEYWORD3>lognor</KEYWORD3>\r
+ <KEYWORD3>lognot</KEYWORD3>\r
+ <KEYWORD3>logorc1</KEYWORD3>\r
+ <KEYWORD3>logorc2</KEYWORD3>\r
+ <KEYWORD3>logtest</KEYWORD3>\r
+ <KEYWORD3>logxor</KEYWORD3>\r
+ <KEYWORD3>long-float</KEYWORD3>\r
+ <KEYWORD3>long-float-epsilon</KEYWORD3>\r
+ <KEYWORD3>long-float-negative-epsilon</KEYWORD3>\r
+ <KEYWORD3>long-site-name</KEYWORD3>\r
+ <KEYWORD3>loop-finish</KEYWORD3>\r
+ <KEYWORD3>lower-case-p</KEYWORD3>\r
+ <KEYWORD3>machine-instance</KEYWORD3>\r
+ <KEYWORD3>machine-type</KEYWORD3>\r
+ <KEYWORD3>machine-version</KEYWORD3>\r
+ <KEYWORD3>macro-function</KEYWORD3>\r
+ <KEYWORD3>macroexpand</KEYWORD3>\r
+ <KEYWORD3>macroexpand-1</KEYWORD3>\r
+ <KEYWORD3>make-array</KEYWORD3>\r
+ <KEYWORD3>make-broadcast-stream</KEYWORD3>\r
+ <KEYWORD3>make-concatenated-stream</KEYWORD3>\r
+ <KEYWORD3>make-condition</KEYWORD3>\r
+ <KEYWORD3>make-dispatch-macro-character</KEYWORD3>\r
+ <KEYWORD3>make-echo-stream</KEYWORD3>\r
+ <KEYWORD3>make-hash-table</KEYWORD3>\r
+ <KEYWORD3>make-instance</KEYWORD3>\r
+ <KEYWORD3>make-instances-obsolete</KEYWORD3>\r
+ <KEYWORD3>make-list</KEYWORD3>\r
+ <KEYWORD3>make-load-form</KEYWORD3>\r
+ <KEYWORD3>make-load-form-saving-slots</KEYWORD3>\r
+ <KEYWORD3>make-method</KEYWORD3>\r
+ <KEYWORD3>make-package</KEYWORD3>\r
+ <KEYWORD3>make-pathname</KEYWORD3>\r
+ <KEYWORD3>make-random-state</KEYWORD3>\r
+ <KEYWORD3>make-sequence</KEYWORD3>\r
+ <KEYWORD3>make-string</KEYWORD3>\r
+ <KEYWORD3>make-string-input-stream</KEYWORD3>\r
+ <KEYWORD3>make-string-output-stream</KEYWORD3>\r
+ <KEYWORD3>make-symbol</KEYWORD3>\r
+ <KEYWORD3>make-synonym-stream</KEYWORD3>\r
+ <KEYWORD3>make-two-way-stream</KEYWORD3>\r
+ <KEYWORD3>makunbound</KEYWORD3>\r
+ <KEYWORD3>map</KEYWORD3>\r
+ <KEYWORD3>map-into</KEYWORD3>\r
+ <KEYWORD3>mapc</KEYWORD3>\r
+ <KEYWORD3>mapcan</KEYWORD3>\r
+ <KEYWORD3>mapcar</KEYWORD3>\r
+ <KEYWORD3>mapcon</KEYWORD3>\r
+ <KEYWORD3>maphash</KEYWORD3>\r
+ <KEYWORD3>mapl</KEYWORD3>\r
+ <KEYWORD3>maplist</KEYWORD3>\r
+ <KEYWORD3>mask-field</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>member</KEYWORD3>\r
+ <KEYWORD3>member-if</KEYWORD3>\r
+ <KEYWORD3>member-if-not</KEYWORD3>\r
+ <KEYWORD3>merge</KEYWORD3>\r
+ <KEYWORD3>merge-pathnames</KEYWORD3>\r
+ <KEYWORD3>method</KEYWORD3>\r
+ <KEYWORD3>method-combination</KEYWORD3>\r
+ <KEYWORD3>method-combination-error</KEYWORD3>\r
+ <KEYWORD3>method-qualifiers</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>minusp</KEYWORD3>\r
+ <KEYWORD3>mismatch</KEYWORD3>\r
+ <KEYWORD3>mod</KEYWORD3>\r
+ <KEYWORD3>most-negative-double-float</KEYWORD3>\r
+ <KEYWORD3>most-negative-fixnum</KEYWORD3>\r
+ <KEYWORD3>most-negative-long-float</KEYWORD3>\r
+ <KEYWORD3>most-negative-short-float</KEYWORD3>\r
+ <KEYWORD3>most-negative-single-float</KEYWORD3>\r
+ <KEYWORD3>most-positive-double-float</KEYWORD3>\r
+ <KEYWORD3>most-positive-fixnum</KEYWORD3>\r
+ <KEYWORD3>most-positive-long-float</KEYWORD3>\r
+ <KEYWORD3>most-positive-short-float</KEYWORD3>\r
+ <KEYWORD3>most-positive-single-float</KEYWORD3>\r
+ <KEYWORD3>muffle-warning</KEYWORD3>\r
+ <KEYWORD3>multiple-value-call</KEYWORD3>\r
+ <KEYWORD3>multiple-value-list</KEYWORD3>\r
+ <KEYWORD3>multiple-value-prog1</KEYWORD3>\r
+ <KEYWORD3>multiple-value-setq</KEYWORD3>\r
+ <KEYWORD3>multiple-values-limit</KEYWORD3>\r
+ <KEYWORD3>name-char</KEYWORD3>\r
+ <KEYWORD3>namestring</KEYWORD3>\r
+ <KEYWORD3>nbutlast</KEYWORD3>\r
+ <KEYWORD3>nconc</KEYWORD3>\r
+ <KEYWORD3>next-method-p</KEYWORD3>\r
+ <KEYWORD3>nintersection</KEYWORD3>\r
+ <KEYWORD3>ninth</KEYWORD3>\r
+ <KEYWORD3>no-applicable-method</KEYWORD3>\r
+ <KEYWORD3>no-next-method</KEYWORD3>\r
+ <KEYWORD3>not</KEYWORD3>\r
+ <KEYWORD3>notany</KEYWORD3>\r
+ <KEYWORD3>notevery</KEYWORD3>\r
+ <KEYWORD3>notinline</KEYWORD3>\r
+ <KEYWORD3>nreconc</KEYWORD3>\r
+ <KEYWORD3>nreverse</KEYWORD3>\r
+ <KEYWORD3>nset-difference</KEYWORD3>\r
+ <KEYWORD3>nset-exclusive-or</KEYWORD3>\r
+ <KEYWORD3>nstring-capitalize</KEYWORD3>\r
+ <KEYWORD3>nstring-downcase</KEYWORD3>\r
+ <KEYWORD3>nstring-upcase</KEYWORD3>\r
+ <KEYWORD3>nsublis</KEYWORD3>\r
+ <KEYWORD3>nsubst</KEYWORD3>\r
+ <KEYWORD3>nsubst-if</KEYWORD3>\r
+ <KEYWORD3>nsubst-if-not</KEYWORD3>\r
+ <KEYWORD3>nsubstitute</KEYWORD3>\r
+ <KEYWORD3>nsubstitute-if</KEYWORD3>\r
+ <KEYWORD3>nsubstitute-if-not</KEYWORD3>\r
+ <KEYWORD3>nth</KEYWORD3>\r
+ <KEYWORD3>nth-value</KEYWORD3>\r
+ <KEYWORD3>nthcdr</KEYWORD3>\r
+ <KEYWORD3>null</KEYWORD3>\r
+ <KEYWORD3>number</KEYWORD3>\r
+ <KEYWORD3>numberp</KEYWORD3>\r
+ <KEYWORD3>numerator</KEYWORD3>\r
+ <KEYWORD3>nunion</KEYWORD3>\r
+ <KEYWORD3>oddp</KEYWORD3>\r
+ <KEYWORD3>open</KEYWORD3>\r
+ <KEYWORD3>open-stream-p</KEYWORD3>\r
+ <KEYWORD3>optimize</KEYWORD3>\r
+ <KEYWORD3>or</KEYWORD3>\r
+ <KEYWORD3>otherwise</KEYWORD3>\r
+ <KEYWORD3>output-stream-p</KEYWORD3>\r
+ <KEYWORD3>package</KEYWORD3>\r
+ <KEYWORD3>package-error</KEYWORD3>\r
+ <KEYWORD3>package-error-package</KEYWORD3>\r
+ <KEYWORD3>package-name</KEYWORD3>\r
+ <KEYWORD3>package-nicknames</KEYWORD3>\r
+ <KEYWORD3>package-shadowing-symbols</KEYWORD3>\r
+ <KEYWORD3>package-use-list</KEYWORD3>\r
+ <KEYWORD3>package-used-by-list</KEYWORD3>\r
+ <KEYWORD3>packagep</KEYWORD3>\r
+ <KEYWORD3>pairlis</KEYWORD3>\r
+ <KEYWORD3>parse-error</KEYWORD3>\r
+ <KEYWORD3>parse-integer</KEYWORD3>\r
+ <KEYWORD3>parse-namestring</KEYWORD3>\r
+ <KEYWORD3>pathname</KEYWORD3>\r
+ <KEYWORD3>pathname-device</KEYWORD3>\r
+ <KEYWORD3>pathname-directory</KEYWORD3>\r
+ <KEYWORD3>pathname-host</KEYWORD3>\r
+ <KEYWORD3>pathname-match-p</KEYWORD3>\r
+ <KEYWORD3>pathname-name</KEYWORD3>\r
+ <KEYWORD3>pathname-type</KEYWORD3>\r
+ <KEYWORD3>pathname-version</KEYWORD3>\r
+ <KEYWORD3>pathnamep</KEYWORD3>\r
+ <KEYWORD3>peek-char</KEYWORD3>\r
+ <KEYWORD3>phase</KEYWORD3>\r
+ <KEYWORD3>pi</KEYWORD3>\r
+ <KEYWORD3>plusp</KEYWORD3>\r
+ <KEYWORD3>pop</KEYWORD3>\r
+ <KEYWORD3>position</KEYWORD3>\r
+ <KEYWORD3>position-if</KEYWORD3>\r
+ <KEYWORD3>position-if-not</KEYWORD3>\r
+ <KEYWORD3>pprint</KEYWORD3>\r
+ <KEYWORD3>pprint-dispatch</KEYWORD3>\r
+ <KEYWORD3>pprint-exit-if-list-exhausted</KEYWORD3>\r
+ <KEYWORD3>pprint-fill</KEYWORD3>\r
+ <KEYWORD3>pprint-indent</KEYWORD3>\r
+ <KEYWORD3>pprint-linear</KEYWORD3>\r
+ <KEYWORD3>pprint-logical-block</KEYWORD3>\r
+ <KEYWORD3>pprint-newline</KEYWORD3>\r
+ <KEYWORD3>pprint-pop</KEYWORD3>\r
+ <KEYWORD3>pprint-tab</KEYWORD3>\r
+ <KEYWORD3>pprint-tabular</KEYWORD3>\r
+ <KEYWORD3>prin1</KEYWORD3>\r
+ <KEYWORD3>prin1-to-string</KEYWORD3>\r
+ <KEYWORD3>princ</KEYWORD3>\r
+ <KEYWORD3>princ-to-string</KEYWORD3>\r
+ <KEYWORD3>print</KEYWORD3>\r
+ <KEYWORD3>print-not-readable</KEYWORD3>\r
+ <KEYWORD3>print-not-readable-object</KEYWORD3>\r
+ <KEYWORD3>print-object</KEYWORD3>\r
+ <KEYWORD3>print-unreadable-object</KEYWORD3>\r
+ <KEYWORD3>probe-file</KEYWORD3>\r
+ <KEYWORD3>program-error</KEYWORD3>\r
+ <KEYWORD3>psetf</KEYWORD3>\r
+ <KEYWORD3>psetq</KEYWORD3>\r
+ <KEYWORD3>push</KEYWORD3>\r
+ <KEYWORD3>pushnew</KEYWORD3>\r
+ <KEYWORD3>quote</KEYWORD3>\r
+ <KEYWORD3>random</KEYWORD3>\r
+ <KEYWORD3>random-state</KEYWORD3>\r
+ <KEYWORD3>random-state-p</KEYWORD3>\r
+ <KEYWORD3>rassoc</KEYWORD3>\r
+ <KEYWORD3>rassoc-if</KEYWORD3>\r
+ <KEYWORD3>rassoc-if-not</KEYWORD3>\r
+ <KEYWORD3>ratio</KEYWORD3>\r
+ <KEYWORD3>rational</KEYWORD3>\r
+ <KEYWORD3>rationalize</KEYWORD3>\r
+ <KEYWORD3>rationalp</KEYWORD3>\r
+ <KEYWORD3>read</KEYWORD3>\r
+ <KEYWORD3>read-byte</KEYWORD3>\r
+ <KEYWORD3>read-char</KEYWORD3>\r
+ <KEYWORD3>read-char-no-hang</KEYWORD3>\r
+ <KEYWORD3>read-delimited-list</KEYWORD3>\r
+ <KEYWORD3>read-from-string</KEYWORD3>\r
+ <KEYWORD3>read-line</KEYWORD3>\r
+ <KEYWORD3>read-preserving-whitespace</KEYWORD3>\r
+ <KEYWORD3>read-sequence</KEYWORD3>\r
+ <KEYWORD3>reader-error</KEYWORD3>\r
+ <KEYWORD3>readtable</KEYWORD3>\r
+ <KEYWORD3>readtable-case</KEYWORD3>\r
+ <KEYWORD3>readtablep</KEYWORD3>\r
+ <KEYWORD3>real</KEYWORD3>\r
+ <KEYWORD3>realp</KEYWORD3>\r
+ <KEYWORD3>realpart</KEYWORD3>\r
+ <KEYWORD3>reduce</KEYWORD3>\r
+ <KEYWORD3>reinitialize-instance</KEYWORD3>\r
+ <KEYWORD3>rem</KEYWORD3>\r
+ <KEYWORD3>remf</KEYWORD3>\r
+ <KEYWORD3>remhash</KEYWORD3>\r
+ <KEYWORD3>remove</KEYWORD3>\r
+ <KEYWORD3>remove-duplicates</KEYWORD3>\r
+ <KEYWORD3>remove-if</KEYWORD3>\r
+ <KEYWORD3>remove-if-not</KEYWORD3>\r
+ <KEYWORD3>remove-method</KEYWORD3>\r
+ <KEYWORD3>remprop</KEYWORD3>\r
+ <KEYWORD3>rename-file</KEYWORD3>\r
+ <KEYWORD3>rename-package</KEYWORD3>\r
+ <KEYWORD3>replace</KEYWORD3>\r
+ <KEYWORD3>rest</KEYWORD3>\r
+ <KEYWORD3>restart</KEYWORD3>\r
+ <KEYWORD3>revappend</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>room</KEYWORD3>\r
+ <KEYWORD3>rotatef</KEYWORD3>\r
+ <KEYWORD3>round</KEYWORD3>\r
+ <KEYWORD3>row-major-aref</KEYWORD3>\r
+ <KEYWORD3>rplaca</KEYWORD3>\r
+ <KEYWORD3>rplacd</KEYWORD3>\r
+ <KEYWORD3>safety</KEYWORD3>\r
+ <KEYWORD3>satisfies</KEYWORD3>\r
+ <KEYWORD3>sbit</KEYWORD3>\r
+ <KEYWORD3>scale-float</KEYWORD3>\r
+ <KEYWORD3>schar</KEYWORD3>\r
+ <KEYWORD3>search</KEYWORD3>\r
+ <KEYWORD3>second</KEYWORD3>\r
+ <KEYWORD3>sequence</KEYWORD3>\r
+ <KEYWORD3>serious-condition</KEYWORD3>\r
+ <KEYWORD3>set</KEYWORD3>\r
+ <KEYWORD3>set-difference</KEYWORD3>\r
+ <KEYWORD3>set-dispatch-macro-character</KEYWORD3>\r
+ <KEYWORD3>set-exclusive-or</KEYWORD3>\r
+ <KEYWORD3>set-macro-character</KEYWORD3>\r
+ <KEYWORD3>set-pprint-dispatch</KEYWORD3>\r
+ <KEYWORD3>set-syntax-from-char</KEYWORD3>\r
+ <KEYWORD3>setf</KEYWORD3>\r
+ <KEYWORD3>setq</KEYWORD3>\r
+ <KEYWORD3>seventh</KEYWORD3>\r
+ <KEYWORD3>shadow</KEYWORD3>\r
+ <KEYWORD3>shadowing-import</KEYWORD3>\r
+ <KEYWORD3>shared-initialize</KEYWORD3>\r
+ <KEYWORD3>shiftf</KEYWORD3>\r
+ <KEYWORD3>short-float</KEYWORD3>\r
+ <KEYWORD3>short-float-epsilon</KEYWORD3>\r
+ <KEYWORD3>short-float-negative-epsilon</KEYWORD3>\r
+ <KEYWORD3>short-site-name</KEYWORD3>\r
+ <KEYWORD3>signed-byte</KEYWORD3>\r
+ <KEYWORD3>signum</KEYWORD3>\r
+ <KEYWORD3>simple-array</KEYWORD3>\r
+ <KEYWORD3>simple-base-string</KEYWORD3>\r
+ <KEYWORD3>simple-bit-vector</KEYWORD3>\r
+ <KEYWORD3>simple-bit-vector-p</KEYWORD3>\r
+ <KEYWORD3>simple-condition</KEYWORD3>\r
+ <KEYWORD3>simple-condition-format-arguments</KEYWORD3>\r
+ <KEYWORD3>simple-condition-format-control</KEYWORD3>\r
+ <KEYWORD3>simple-error</KEYWORD3>\r
+ <KEYWORD3>simple-string</KEYWORD3>\r
+ <KEYWORD3>simple-string-p</KEYWORD3>\r
+ <KEYWORD3>simple-type-error</KEYWORD3>\r
+ <KEYWORD3>simple-vector</KEYWORD3>\r
+ <KEYWORD3>simple-vector-p</KEYWORD3>\r
+ <KEYWORD3>simple-warning</KEYWORD3>\r
+ <KEYWORD3>sin</KEYWORD3>\r
+ <KEYWORD3>single-float</KEYWORD3>\r
+ <KEYWORD3>single-float-epsilon</KEYWORD3>\r
+ <KEYWORD3>single-float-negative-epsilon</KEYWORD3>\r
+ <KEYWORD3>sinh</KEYWORD3>\r
+ <KEYWORD3>sixth</KEYWORD3>\r
+ <KEYWORD3>sleep</KEYWORD3>\r
+ <KEYWORD3>slot-boundp</KEYWORD3>\r
+ <KEYWORD3>slot-exists-p</KEYWORD3>\r
+ <KEYWORD3>slot-makunbound</KEYWORD3>\r
+ <KEYWORD3>slot-missing</KEYWORD3>\r
+ <KEYWORD3>slot-unbound</KEYWORD3>\r
+ <KEYWORD3>slot-value</KEYWORD3>\r
+ <KEYWORD3>software-type</KEYWORD3>\r
+ <KEYWORD3>software-version</KEYWORD3>\r
+ <KEYWORD3>some</KEYWORD3>\r
+ <KEYWORD3>sort</KEYWORD3>\r
+ <KEYWORD3>space</KEYWORD3>\r
+ <KEYWORD3>special</KEYWORD3>\r
+ <KEYWORD3>special-operator-p</KEYWORD3>\r
+ <KEYWORD3>speed</KEYWORD3>\r
+ <KEYWORD3>sqrt</KEYWORD3>\r
+ <KEYWORD3>stable-sort</KEYWORD3>\r
+ <KEYWORD3>standard</KEYWORD3>\r
+ <KEYWORD3>standard-char</KEYWORD3>\r
+ <KEYWORD3>standard-char-p</KEYWORD3>\r
+ <KEYWORD3>standard-class</KEYWORD3>\r
+ <KEYWORD3>standard-generic-function</KEYWORD3>\r
+ <KEYWORD3>standard-method</KEYWORD3>\r
+ <KEYWORD3>standard-object</KEYWORD3>\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>storage-condition</KEYWORD3>\r
+ <KEYWORD3>store-value</KEYWORD3>\r
+ <KEYWORD3>stream</KEYWORD3>\r
+ <KEYWORD3>stream-element-type</KEYWORD3>\r
+ <KEYWORD3>stream-error</KEYWORD3>\r
+ <KEYWORD3>stream-error-stream</KEYWORD3>\r
+ <KEYWORD3>stream-external-format</KEYWORD3>\r
+ <KEYWORD3>streamp</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>string-capitalize</KEYWORD3>\r
+ <KEYWORD3>string-downcase</KEYWORD3>\r
+ <KEYWORD3>string-equal</KEYWORD3>\r
+ <KEYWORD3>string-greaterp</KEYWORD3>\r
+ <KEYWORD3>string-left-trim</KEYWORD3>\r
+ <KEYWORD3>string-lessp</KEYWORD3>\r
+ <KEYWORD3>string-not-equal</KEYWORD3>\r
+ <KEYWORD3>string-not-greaterp</KEYWORD3>\r
+ <KEYWORD3>string-not-lessp</KEYWORD3>\r
+ <KEYWORD3>string-right-trim</KEYWORD3>\r
+ <KEYWORD3>string-stream</KEYWORD3>\r
+ <KEYWORD3>string-trim</KEYWORD3>\r
+ <KEYWORD3>string-upcase</KEYWORD3>\r
+ <KEYWORD3>string/=</KEYWORD3>\r
+ <KEYWORD3>string<</KEYWORD3>\r
+ <KEYWORD3>string<=</KEYWORD3>\r
+ <KEYWORD3>string=</KEYWORD3>\r
+ <KEYWORD3>string></KEYWORD3>\r
+ <KEYWORD3>string>=</KEYWORD3>\r
+ <KEYWORD3>stringp</KEYWORD3>\r
+ <KEYWORD3>structure</KEYWORD3>\r
+ <KEYWORD3>structure-class</KEYWORD3>\r
+ <KEYWORD3>structure-object</KEYWORD3>\r
+ <KEYWORD3>style-warning</KEYWORD3>\r
+ <KEYWORD3>sublis</KEYWORD3>\r
+ <KEYWORD3>subseq</KEYWORD3>\r
+ <KEYWORD3>subsetp</KEYWORD3>\r
+ <KEYWORD3>subst</KEYWORD3>\r
+ <KEYWORD3>subst-if</KEYWORD3>\r
+ <KEYWORD3>subst-if-not</KEYWORD3>\r
+ <KEYWORD3>substitute</KEYWORD3>\r
+ <KEYWORD3>substitute-if</KEYWORD3>\r
+ <KEYWORD3>substitute-if-not</KEYWORD3>\r
+ <KEYWORD3>subtypep</KEYWORD3>\r
+ <KEYWORD3>svref</KEYWORD3>\r
+ <KEYWORD3>sxhash</KEYWORD3>\r
+ <KEYWORD3>symbol</KEYWORD3>\r
+ <KEYWORD3>symbol-function</KEYWORD3>\r
+ <KEYWORD3>symbol-name</KEYWORD3>\r
+ <KEYWORD3>symbol-package</KEYWORD3>\r
+ <KEYWORD3>symbol-plist</KEYWORD3>\r
+ <KEYWORD3>symbol-value</KEYWORD3>\r
+ <KEYWORD3>symbolp</KEYWORD3>\r
+ <KEYWORD3>synonym-stream</KEYWORD3>\r
+ <KEYWORD3>synonym-stream-symbol</KEYWORD3>\r
+ <KEYWORD3>tailp</KEYWORD3>\r
+ <KEYWORD3>tan</KEYWORD3>\r
+ <KEYWORD3>tanh</KEYWORD3>\r
+ <KEYWORD3>tenth</KEYWORD3>\r
+ <KEYWORD3>terpri</KEYWORD3>\r
+ <KEYWORD3>third</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>trace</KEYWORD3>\r
+ <KEYWORD3>translate-logical-pathname</KEYWORD3>\r
+ <KEYWORD3>translate-pathname</KEYWORD3>\r
+ <KEYWORD3>tree-equal</KEYWORD3>\r
+ <KEYWORD3>truename</KEYWORD3>\r
+ <KEYWORD3>truncate</KEYWORD3>\r
+ <KEYWORD3>two-way-stream</KEYWORD3>\r
+ <KEYWORD3>two-way-stream-input-stream</KEYWORD3>\r
+ <KEYWORD3>two-way-stream-output-stream</KEYWORD3>\r
+ <KEYWORD3>type-error-datum</KEYWORD3>\r
+ <KEYWORD3>type-error-expected-type</KEYWORD3>\r
+ <KEYWORD3>type-error</KEYWORD3>\r
+ <KEYWORD3>type-of</KEYWORD3>\r
+ <KEYWORD3>typep</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>unbound-slot-instance</KEYWORD3>\r
+ <KEYWORD3>unbound-slot</KEYWORD3>\r
+ <KEYWORD3>unbound-variable</KEYWORD3>\r
+ <KEYWORD3>undefined-function</KEYWORD3>\r
+ <KEYWORD3>unexport</KEYWORD3>\r
+ <KEYWORD3>unintern</KEYWORD3>\r
+ <KEYWORD3>union</KEYWORD3>\r
+ <KEYWORD3>unread-char</KEYWORD3>\r
+ <KEYWORD3>unsigned-byte</KEYWORD3>\r
+ <KEYWORD3>untrace</KEYWORD3>\r
+ <KEYWORD3>unuse-package</KEYWORD3>\r
+ <KEYWORD3>update-instance-for-different-class</KEYWORD3>\r
+ <KEYWORD3>update-instance-for-redefined-class</KEYWORD3>\r
+ <KEYWORD3>upgraded-array-element-type</KEYWORD3>\r
+ <KEYWORD3>upgraded-complex-part-type</KEYWORD3>\r
+ <KEYWORD3>upper-case-p</KEYWORD3>\r
+ <KEYWORD3>use-package</KEYWORD3>\r
+ <KEYWORD3>use-value</KEYWORD3>\r
+ <KEYWORD3>user-homedir-pathname</KEYWORD3>\r
+ <KEYWORD3>values</KEYWORD3>\r
+ <KEYWORD3>values-list</KEYWORD3>\r
+ <KEYWORD3>variable</KEYWORD3>\r
+ <KEYWORD3>vector</KEYWORD3>\r
+ <KEYWORD3>vector-pop</KEYWORD3>\r
+ <KEYWORD3>vector-push</KEYWORD3>\r
+ <KEYWORD3>vector-push-extend</KEYWORD3>\r
+ <KEYWORD3>vectorp</KEYWORD3>\r
+ <KEYWORD3>warn</KEYWORD3>\r
+ <KEYWORD3>warning</KEYWORD3>\r
+ <KEYWORD3>wild-pathname-p</KEYWORD3>\r
+ <KEYWORD3>write</KEYWORD3>\r
+ <KEYWORD3>write-byte</KEYWORD3>\r
+ <KEYWORD3>write-char</KEYWORD3>\r
+ <KEYWORD3>write-line</KEYWORD3>\r
+ <KEYWORD3>write-sequence</KEYWORD3>\r
+ <KEYWORD3>write-string</KEYWORD3>\r
+ <KEYWORD3>write-to-string</KEYWORD3>\r
+ <KEYWORD3>y-or-n-p</KEYWORD3>\r
+ <KEYWORD3>yes-or-no-p</KEYWORD3>\r
+ <KEYWORD3>zerop</KEYWORD3>\r
+\r
+ <LITERAL2>t</LITERAL2>\r
+ <LITERAL2>nil</LITERAL2>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Literate Haskell mode by Cameron Morrison (c.morrison@iinet.net.au)\r
+ Modified version of the Haskell mode by Kristian Ovaska (kristian.ovaska@helsinki.fi)\r
+ Based on Haskell 98\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="{-" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-}" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <!-- apparently, this is required... -->\r
+ <PROPERTY NAME="tabSize" VALUE="8" />\r
+ <PROPERTY NAME="indentSize" VALUE="8" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" DEFAULT="COMMENT4">\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" TYPE="FUNCTION" DELEGATE="haskell::MAIN">></EOL_SPAN>\r
+ <!-- for LaTeX-style -->\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT3">%</EOL_SPAN>\r
+ <SPAN TYPE="LITERAL3" DELEGATE="haskell::MAIN">\r
+ <BEGIN>\begin{code}</BEGIN>\r
+ <END>\end{code}</END>\r
+ </SPAN>\r
+ <!--\r
+ <EOL_SPAN_REGEXP HASH_CHAR="\" AT_LINE_START="TRUE"\r
+ DELEGATE="latex::MAIN" TYPE="KEYWORD1"\r
+ >\\\w+</EOL_SPAN_REGEXP>\r
+ -->\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ lotos.xml K. J. Turner <kjt@cs.stir.ac.uk> 24th April 2003\r
+\r
+ LOTOS (Language Of Temporal Ordering Specification) is an ISO standard\r
+ (8807) for a formal specification language used in communications and system\r
+ specification generally.\r
+\r
+ This mode does not (yet) deal with ISO 15437 (E-LOTOS, Enhanced LOTOS).\r
+\r
+ Auto-indentation occurs if the following are at the start of a line\r
+ (ignoring leading white space): "let", "library", "process", "specification",\r
+ "type", , ">>". This also happens if the following appear on their own (i.e.\r
+ also ignoring trailing white space): "(", "[]", "[>", "||" "|||", "|[...]|",\r
+ "[...]->".\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="(*"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="*)"/>\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE="\s*(let|library|process|specification|type|>>).*|\s*(\(|\[\]|\[>|\|\||\|\|\||\|\[.*\]\||\[.*\]\s*->)\s*"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <!-- Comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(*</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+\r
+ <!-- Standard Operators -->\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+ <SEQ TYPE="OPERATOR">[></SEQ>\r
+ <SEQ TYPE="OPERATOR">|||</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ <SEQ TYPE="OPERATOR">|[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]|</SEQ>\r
+ <SEQ TYPE="OPERATOR">[]</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved Words -->\r
+ <KEYWORD1>accept</KEYWORD1>\r
+ <KEYWORD1>actualizedby</KEYWORD1>\r
+ <KEYWORD1>any</KEYWORD1>\r
+ <KEYWORD1>behavior</KEYWORD1>\r
+ <KEYWORD1>behaviour</KEYWORD1>\r
+ <KEYWORD1>choice</KEYWORD1>\r
+ <KEYWORD1>endlib</KEYWORD1>\r
+ <KEYWORD1>endproc</KEYWORD1>\r
+ <KEYWORD1>endspec</KEYWORD1>\r
+ <KEYWORD1>endtype</KEYWORD1>\r
+ <KEYWORD1>eqns</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>forall</KEYWORD1>\r
+ <KEYWORD1>formaleqns</KEYWORD1>\r
+ <KEYWORD1>formalopns</KEYWORD1>\r
+ <KEYWORD1>formalsorts</KEYWORD1>\r
+ <KEYWORD1>hide</KEYWORD1>\r
+ <KEYWORD1>i</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>library</KEYWORD1>\r
+ <KEYWORD1>noexit</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>ofsort</KEYWORD1>\r
+ <KEYWORD1>opnnames</KEYWORD1>\r
+ <KEYWORD1>opns</KEYWORD1>\r
+ <KEYWORD1>par</KEYWORD1>\r
+ <KEYWORD1>process</KEYWORD1>\r
+ <KEYWORD1>renamedby</KEYWORD1>\r
+ <KEYWORD1>sortnames</KEYWORD1>\r
+ <KEYWORD1>sorts</KEYWORD1>\r
+ <KEYWORD1>specification</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>using</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+\r
+ <!-- Standard Library Sorts -->\r
+ <KEYWORD2>Bit</KEYWORD2>\r
+ <KEYWORD2>BitString</KEYWORD2>\r
+ <KEYWORD2>Bool</KEYWORD2>\r
+ <KEYWORD2>DecDigit</KEYWORD2>\r
+ <KEYWORD2>DecString</KEYWORD2>\r
+ <KEYWORD2>Element</KEYWORD2>\r
+ <KEYWORD2>FBool</KEYWORD2>\r
+ <KEYWORD2>HexDigit</KEYWORD2>\r
+ <KEYWORD2>HexString</KEYWORD2>\r
+ <KEYWORD2>OctDigit</KEYWORD2>\r
+ <KEYWORD2>Octet</KEYWORD2>\r
+ <KEYWORD2>OctString</KEYWORD2>\r
+ <KEYWORD2>Nat</KEYWORD2>\r
+ <KEYWORD2>NonEmptyString</KEYWORD2>\r
+ <KEYWORD2>OctetString</KEYWORD2>\r
+ <KEYWORD2>Set</KEYWORD2>\r
+ <KEYWORD2>String</KEYWORD2>\r
+\r
+ <!-- Standard Library Types (where differing from Sorts) -->\r
+ <KEYWORD2>BasicNaturalNumber</KEYWORD2>\r
+ <KEYWORD2>BasicNonEmptyString</KEYWORD2>\r
+ <KEYWORD2>BitNatRepr</KEYWORD2>\r
+ <KEYWORD2>Boolean</KEYWORD2>\r
+ <KEYWORD2>FBoolean</KEYWORD2>\r
+ <KEYWORD2>DecNatRepr</KEYWORD2>\r
+ <KEYWORD2>HexNatRepr</KEYWORD2>\r
+ <KEYWORD2>NatRepresentations</KEYWORD2>\r
+ <KEYWORD2>NaturalNumber</KEYWORD2>\r
+ <KEYWORD2>OctNatRepr</KEYWORD2>\r
+ <KEYWORD2>RicherNonEmptyString</KEYWORD2>\r
+ <KEYWORD2>String0</KEYWORD2>\r
+ <KEYWORD2>String1</KEYWORD2>\r
+\r
+ <!-- Standard Library Literals -->\r
+ <LITERAL1>false</LITERAL1>\r
+ <LITERAL1>true</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- Lua 5.0 Mode, written by Philipp Janda -->\r
+\r
+<!-- TODO:\r
+ * Autoindent screws up, if { or ( gets typed after the indentNextLines trigger\r
+ -> This is very annoying, so I disabled the automatic indenting in this case!\r
+ -> It should be fixed if you set doubleBracketIndent to "true", but I keep it\r
+ disabled anyway since it is not that useful if you don't have an unindent!\r
+ * Should I use FUNCTION and OPERATOR tags inside of <KEYWORDS>??!!\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <!-- Comments -->\r
+ <PROPERTY NAME="lineComment" VALUE="--"/>\r
+ <PROPERTY NAME="commentStart" VALUE="--[["/>\r
+ <PROPERTY NAME="commentEnd" VALUE="]]"/>\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*"/>\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{"/>\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}"/>\r
+ <!--\r
+ <PROPERTY NAME="indentNextLines" VALUE=".*((then|else|do|function)).*"/>\r
+ -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="true"/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" NO_WORD_SEP="_:." HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="[\p{Digit}]*(\.[\p{Digit}]*)?([eE][+-]?[\p{Digit}]*)?">\r
+ <!-- Multiline comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>--[[</BEGIN>\r
+ <END>]]</END>\r
+ </SPAN>\r
+ <!-- Single line comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">#!</EOL_SPAN>\r
+ <!-- Simple string literals -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <!-- Multiline string literals -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>[[</BEGIN>\r
+ <END>]]</END>\r
+ </SPAN>\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">~=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <!-- Function calls and definitions -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">{</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">"</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">"</SEQ>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">'</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">'</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Keywords -->\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>elseif</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD3>nil</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <!-- Builtin functions or special names -->\r
+ <KEYWORD2>assert</KEYWORD2>\r
+ <KEYWORD2>collectgarbage</KEYWORD2>\r
+ <KEYWORD2>dofile</KEYWORD2>\r
+ <KEYWORD2>error</KEYWORD2>\r
+ <KEYWORD2>_G</KEYWORD2>\r
+ <KEYWORD2>getfenv</KEYWORD2>\r
+ <KEYWORD2>getmetatable</KEYWORD2>\r
+ <KEYWORD2>gcinfo</KEYWORD2>\r
+ <KEYWORD2>ipairs</KEYWORD2>\r
+ <KEYWORD2>loadfile</KEYWORD2>\r
+ <KEYWORD2>loadlib</KEYWORD2>\r
+ <KEYWORD2>loadstring</KEYWORD2>\r
+ <KEYWORD2>next</KEYWORD2>\r
+ <KEYWORD2>pairs</KEYWORD2>\r
+ <KEYWORD2>pcall</KEYWORD2>\r
+ <KEYWORD2>print</KEYWORD2>\r
+ <KEYWORD2>rawequal</KEYWORD2>\r
+ <KEYWORD2>rawget</KEYWORD2>\r
+ <KEYWORD2>rawset</KEYWORD2>\r
+ <KEYWORD2>require</KEYWORD2>\r
+ <KEYWORD2>setfenv</KEYWORD2>\r
+ <KEYWORD2>setmetatable</KEYWORD2>\r
+ <KEYWORD2>tonumber</KEYWORD2>\r
+ <KEYWORD2>tostring</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>unpack</KEYWORD2>\r
+ <KEYWORD2>xpcall</KEYWORD2>\r
+ <KEYWORD2>_VERSION</KEYWORD2>\r
+ <KEYWORD2>LUA_PATH</KEYWORD2>\r
+ <KEYWORD2>_LOADED</KEYWORD2>\r
+ <KEYWORD2>_REQUIREDNAME</KEYWORD2>\r
+ <KEYWORD2>_ALERT</KEYWORD2>\r
+ <KEYWORD2>_ERRORMESSAGE</KEYWORD2>\r
+ <KEYWORD2>_PROMPT</KEYWORD2>\r
+ <KEYWORD2>__add</KEYWORD2>\r
+ <KEYWORD2>__sub</KEYWORD2>\r
+ <KEYWORD2>__mul</KEYWORD2>\r
+ <KEYWORD2>__div</KEYWORD2>\r
+ <KEYWORD2>__pow</KEYWORD2>\r
+ <KEYWORD2>__unm</KEYWORD2>\r
+ <KEYWORD2>__concat</KEYWORD2>\r
+ <KEYWORD2>__eq</KEYWORD2>\r
+ <KEYWORD2>__lt</KEYWORD2>\r
+ <KEYWORD2>__le</KEYWORD2>\r
+ <KEYWORD2>__index</KEYWORD2>\r
+ <KEYWORD2>__newindex</KEYWORD2>\r
+ <KEYWORD2>__call</KEYWORD2>\r
+ <KEYWORD2>__metatable</KEYWORD2>\r
+ <KEYWORD2>__mode</KEYWORD2>\r
+ <KEYWORD2>__tostring</KEYWORD2>\r
+ <KEYWORD2>__fenv</KEYWORD2>\r
+ <KEYWORD2>...</KEYWORD2>\r
+ <KEYWORD2>arg</KEYWORD2>\r
+ <KEYWORD2>coroutine.create</KEYWORD2>\r
+ <KEYWORD2>coroutine.resume</KEYWORD2>\r
+ <KEYWORD2>coroutine.status</KEYWORD2>\r
+ <KEYWORD2>coroutine.wrap</KEYWORD2>\r
+ <KEYWORD2>coroutine.yield</KEYWORD2>\r
+ <KEYWORD2>string.byte</KEYWORD2>\r
+ <KEYWORD2>string.char</KEYWORD2>\r
+ <KEYWORD2>string.dump</KEYWORD2>\r
+ <KEYWORD2>string.find</KEYWORD2>\r
+ <KEYWORD2>string.len</KEYWORD2>\r
+ <KEYWORD2>string.lower</KEYWORD2>\r
+ <KEYWORD2>string.rep</KEYWORD2>\r
+ <KEYWORD2>string.sub</KEYWORD2>\r
+ <KEYWORD2>string.upper</KEYWORD2>\r
+ <KEYWORD2>string.format</KEYWORD2>\r
+ <KEYWORD2>string.gfind</KEYWORD2>\r
+ <KEYWORD2>string.gsub</KEYWORD2>\r
+ <KEYWORD2>table.concat</KEYWORD2>\r
+ <KEYWORD2>table.foreach</KEYWORD2>\r
+ <KEYWORD2>table.foreachi</KEYWORD2>\r
+ <KEYWORD2>table.getn</KEYWORD2>\r
+ <KEYWORD2>table.sort</KEYWORD2>\r
+ <KEYWORD2>table.insert</KEYWORD2>\r
+ <KEYWORD2>table.remove</KEYWORD2>\r
+ <KEYWORD2>table.setn</KEYWORD2>\r
+ <KEYWORD2>math.abs</KEYWORD2>\r
+ <KEYWORD2>math.acos</KEYWORD2>\r
+ <KEYWORD2>math.asin</KEYWORD2>\r
+ <KEYWORD2>math.atan</KEYWORD2>\r
+ <KEYWORD2>math.atan2</KEYWORD2>\r
+ <KEYWORD2>math.ceil</KEYWORD2>\r
+ <KEYWORD2>math.cos</KEYWORD2>\r
+ <KEYWORD2>math.deg</KEYWORD2>\r
+ <KEYWORD2>math.exp</KEYWORD2>\r
+ <KEYWORD2>math.floor</KEYWORD2>\r
+ <KEYWORD2>math.log</KEYWORD2>\r
+ <KEYWORD2>math.log10</KEYWORD2>\r
+ <KEYWORD2>math.max</KEYWORD2>\r
+ <KEYWORD2>math.min</KEYWORD2>\r
+ <KEYWORD2>math.mod</KEYWORD2>\r
+ <KEYWORD2>math.pow</KEYWORD2>\r
+ <KEYWORD2>math.rad</KEYWORD2>\r
+ <KEYWORD2>math.sin</KEYWORD2>\r
+ <KEYWORD2>math.sqrt</KEYWORD2>\r
+ <KEYWORD2>math.tan</KEYWORD2>\r
+ <KEYWORD2>math.frexp</KEYWORD2>\r
+ <KEYWORD2>math.ldexp</KEYWORD2>\r
+ <KEYWORD2>math.random</KEYWORD2>\r
+ <KEYWORD2>math.randomseed</KEYWORD2>\r
+ <KEYWORD2>math.pi</KEYWORD2>\r
+ <KEYWORD2>io.close</KEYWORD2>\r
+ <KEYWORD2>io.flush</KEYWORD2>\r
+ <KEYWORD2>io.input</KEYWORD2>\r
+ <KEYWORD2>io.lines</KEYWORD2>\r
+ <KEYWORD2>io.open</KEYWORD2>\r
+ <KEYWORD2>io.read</KEYWORD2>\r
+ <KEYWORD2>io.tmpfile</KEYWORD2>\r
+ <KEYWORD2>io.type</KEYWORD2>\r
+ <KEYWORD2>io.write</KEYWORD2>\r
+ <KEYWORD2>io.stdin</KEYWORD2>\r
+ <KEYWORD2>io.stdout</KEYWORD2>\r
+ <KEYWORD2>io.stderr</KEYWORD2>\r
+ <KEYWORD2>os.clock</KEYWORD2>\r
+ <KEYWORD2>os.date</KEYWORD2>\r
+ <KEYWORD2>os.difftime</KEYWORD2>\r
+ <KEYWORD2>os.execute</KEYWORD2>\r
+ <KEYWORD2>os.exit</KEYWORD2>\r
+ <KEYWORD2>os.getenv</KEYWORD2>\r
+ <KEYWORD2>os.remove</KEYWORD2>\r
+ <KEYWORD2>os.rename</KEYWORD2>\r
+ <KEYWORD2>os.setlocale</KEYWORD2>\r
+ <KEYWORD2>os.time</KEYWORD2>\r
+ <KEYWORD2>os.tmpname</KEYWORD2>\r
+ <KEYWORD2>debug.debug</KEYWORD2>\r
+ <KEYWORD2>debug.gethook</KEYWORD2>\r
+ <KEYWORD2>debug.getinfo</KEYWORD2>\r
+ <KEYWORD2>debug.getlocal</KEYWORD2>\r
+ <KEYWORD2>debug.getupvalue</KEYWORD2>\r
+ <KEYWORD2>debug.setlocal</KEYWORD2>\r
+ <KEYWORD2>debug.setupvalue</KEYWORD2>\r
+ <KEYWORD2>debug.sethook</KEYWORD2>\r
+ <KEYWORD2>debug.traceback</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=">" />\r
+ <PROPERTY NAME="noWordSep" VALUE="-_" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE" NO_WORD_SEP="-_:)">\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT3">>>></EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">>></EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">></EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">| </EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">:</EOL_SPAN>\r
+ <SEQ TYPE="COMMENT2" DELEGATE="SIGNATURE"\r
+ AT_LINE_START="TRUE">-- </SEQ>\r
+ <SEQ TYPE="KEYWORD1">:-)</SEQ>\r
+ <SEQ TYPE="KEYWORD1">:-(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">:)</SEQ>\r
+ <SEQ TYPE="KEYWORD1">:(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">;-)</SEQ>\r
+ <SEQ TYPE="KEYWORD1">;-(</SEQ>\r
+ <SEQ TYPE="KEYWORD1">;)</SEQ>\r
+ <SEQ TYPE="KEYWORD1">;(</SEQ>\r
+ <MARK_PREVIOUS AT_LINE_START="TRUE" TYPE="LABEL">:</MARK_PREVIOUS>\r
+ </RULES>\r
+ <RULES SET="SIGNATURE" DEFAULT="COMMENT2"/>\r
+ <RULES SET="HEADER" DEFAULT="MARKUP">\r
+ <SPAN NO_LINE_BREAK="TRUE" TYPE="KEYWORD2">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Function calls -->\r
+ <SPAN_REGEXP TYPE="FUNCTION" HASH_CHAR="$" DELEGATE="MAIN">\r
+ <BEGIN>\$\([a-zA-Z][\w-]* </BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- $(...) variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>$(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+=</SEQ>\r
+ <SEQ TYPE="OPERATOR">?=</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>subst</KEYWORD1>\r
+ <KEYWORD1>addprefix</KEYWORD1>\r
+ <KEYWORD1>addsuffix</KEYWORD1>\r
+ <KEYWORD1>basename</KEYWORD1>\r
+ <KEYWORD1>dir</KEYWORD1>\r
+ <KEYWORD1>filter</KEYWORD1>\r
+ <KEYWORD1>filter-out</KEYWORD1>\r
+ <KEYWORD1>findstring</KEYWORD1>\r
+ <KEYWORD1>firstword</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>notdir</KEYWORD1>\r
+ <KEYWORD1>origin</KEYWORD1>\r
+ <KEYWORD1>patsubst</KEYWORD1>\r
+ <KEYWORD1>shell</KEYWORD1>\r
+ <KEYWORD1>sort</KEYWORD1>\r
+ <KEYWORD1>strip</KEYWORD1>\r
+ <KEYWORD1>suffix</KEYWORD1>\r
+ <KEYWORD1>wildcard</KEYWORD1>\r
+ <KEYWORD1>word</KEYWORD1>\r
+ <KEYWORD1>words</KEYWORD1>\r
+ <KEYWORD1>ifeq</KEYWORD1>\r
+ <KEYWORD1>ifneq</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>endif</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>endef</KEYWORD1>\r
+ <KEYWORD1>ifdef</KEYWORD1>\r
+ <KEYWORD1>ifndef</KEYWORD1>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="VARIABLE" ESCAPE="\" IGNORE_CASE="FALSE"\r
+ DEFAULT="KEYWORD2">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- $(...) variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>$(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Maple mode, by Jack Perry jeperry@eos.ncsu.edu -->\r
+<!-- Based on commands for Maple 7 -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+ \r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">@@</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+ <SEQ TYPE="OPERATOR">:-</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved words -->\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>xor</KEYWORD1>\r
+ <KEYWORD1>union</KEYWORD1>\r
+ <KEYWORD1>intersect</KEYWORD1>\r
+ <KEYWORD1>minus</KEYWORD1>\r
+ <KEYWORD1>mod</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>assuming</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>by</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>description</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>done</KEYWORD1>\r
+ <KEYWORD1>elif</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>error</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>fi</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implies</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>module</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>od</KEYWORD1>\r
+ <KEYWORD1>option</KEYWORD1>\r
+ <KEYWORD1>options</KEYWORD1>\r
+ <KEYWORD1>proc</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>subset</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- Standard library functions -->\r
+ <FUNCTION>about</FUNCTION>\r
+ <FUNCTION>ans</FUNCTION>\r
+ <FUNCTION>add</FUNCTION>\r
+ <FUNCTION>addcoords</FUNCTION>\r
+ <FUNCTION>additionally</FUNCTION>\r
+ <FUNCTION>addproperty</FUNCTION>\r
+ <FUNCTION>addressof</FUNCTION>\r
+ <FUNCTION>AFactor</FUNCTION>\r
+ <FUNCTION>AFactors</FUNCTION>\r
+ <FUNCTION>AIrreduc</FUNCTION>\r
+ <FUNCTION>AiryAi</FUNCTION>\r
+ <FUNCTION>AiryAiZeros</FUNCTION>\r
+ <FUNCTION>AiryBi</FUNCTION>\r
+ <FUNCTION>AiryBiZeros</FUNCTION>\r
+ <FUNCTION>algebraic</FUNCTION>\r
+ <FUNCTION>algsubs</FUNCTION>\r
+ <FUNCTION>alias</FUNCTION>\r
+ <FUNCTION>allvalues</FUNCTION>\r
+ <FUNCTION>anames</FUNCTION>\r
+ <FUNCTION>AngerJ</FUNCTION>\r
+ <FUNCTION>antihermitian</FUNCTION>\r
+ <FUNCTION>antisymm</FUNCTION>\r
+ <FUNCTION>apply</FUNCTION>\r
+ <FUNCTION>applyop</FUNCTION>\r
+ <FUNCTION>applyrule</FUNCTION>\r
+ <FUNCTION>arccos</FUNCTION>\r
+ <FUNCTION>arccosh</FUNCTION>\r
+ <FUNCTION>arccot</FUNCTION>\r
+ <FUNCTION>arccoth</FUNCTION>\r
+ <FUNCTION>arccsc</FUNCTION>\r
+ <FUNCTION>arccsch</FUNCTION>\r
+ <FUNCTION>arcsec</FUNCTION>\r
+ <FUNCTION>arcsech</FUNCTION>\r
+ <FUNCTION>arcsin</FUNCTION>\r
+ <FUNCTION>arcsinh</FUNCTION>\r
+ <FUNCTION>arctan</FUNCTION>\r
+ <FUNCTION>arctanh</FUNCTION>\r
+ <FUNCTION>argument</FUNCTION>\r
+ <FUNCTION>Array</FUNCTION>\r
+ <FUNCTION>array</FUNCTION>\r
+ <FUNCTION>ArrayDims</FUNCTION>\r
+ <FUNCTION>ArrayElems</FUNCTION>\r
+ <FUNCTION>ArrayIndFns</FUNCTION>\r
+ <FUNCTION>ArrayOptions</FUNCTION>\r
+ <FUNCTION>assign</FUNCTION>\r
+ <FUNCTION>assigned</FUNCTION>\r
+ <FUNCTION>asspar</FUNCTION>\r
+ <FUNCTION>assume</FUNCTION>\r
+ <FUNCTION>asympt</FUNCTION>\r
+ <FUNCTION>attributes</FUNCTION>\r
+ <FUNCTION>band</FUNCTION>\r
+ <FUNCTION>Berlekamp</FUNCTION>\r
+ <FUNCTION>bernoulli</FUNCTION>\r
+ <FUNCTION>bernstein</FUNCTION>\r
+ <FUNCTION>BesselI</FUNCTION>\r
+ <FUNCTION>BesselJ</FUNCTION>\r
+ <FUNCTION>BesselJZeros</FUNCTION>\r
+ <FUNCTION>BesselK</FUNCTION>\r
+ <FUNCTION>BesselY</FUNCTION>\r
+ <FUNCTION>BesselYZeros</FUNCTION>\r
+ <FUNCTION>Beta</FUNCTION>\r
+ <FUNCTION>branches</FUNCTION>\r
+ <FUNCTION>C</FUNCTION>\r
+ <FUNCTION>cat</FUNCTION>\r
+ <FUNCTION>ceil</FUNCTION>\r
+ <FUNCTION>changecoords</FUNCTION>\r
+ <FUNCTION>charfcn</FUNCTION>\r
+ <FUNCTION>ChebyshevT</FUNCTION>\r
+ <FUNCTION>ChebyShevU</FUNCTION>\r
+ <FUNCTION>CheckArgs</FUNCTION>\r
+ <FUNCTION>Chi</FUNCTION>\r
+ <FUNCTION>chrem</FUNCTION>\r
+ <FUNCTION>Ci</FUNCTION>\r
+ <FUNCTION>close</FUNCTION>\r
+ <FUNCTION>coeff</FUNCTION>\r
+ <FUNCTION>coeffs</FUNCTION>\r
+ <FUNCTION>coeftayl</FUNCTION>\r
+ <FUNCTION>collect</FUNCTION>\r
+ <FUNCTION>combine</FUNCTION>\r
+ <FUNCTION>comparray</FUNCTION>\r
+ <FUNCTION>compiletable</FUNCTION>\r
+ <FUNCTION>compoly</FUNCTION>\r
+ <FUNCTION>CompSeq</FUNCTION>\r
+ <FUNCTION>conjugate</FUNCTION>\r
+ <FUNCTION>constant</FUNCTION>\r
+ <FUNCTION>Content</FUNCTION>\r
+ <FUNCTION>content</FUNCTION>\r
+ <FUNCTION>convergs</FUNCTION>\r
+ <FUNCTION>convert</FUNCTION>\r
+ <FUNCTION>coords</FUNCTION>\r
+ <FUNCTION>copy</FUNCTION>\r
+ <FUNCTION>CopySign</FUNCTION>\r
+ <FUNCTION>cos</FUNCTION>\r
+ <FUNCTION>cosh</FUNCTION>\r
+ <FUNCTION>cot</FUNCTION>\r
+ <FUNCTION>coth</FUNCTION>\r
+ <FUNCTION>coulditbe</FUNCTION>\r
+ <FUNCTION>csc</FUNCTION>\r
+ <FUNCTION>csch</FUNCTION>\r
+ <FUNCTION>csgn</FUNCTION>\r
+ <FUNCTION>currentdir</FUNCTION>\r
+ <FUNCTION>curry</FUNCTION>\r
+ <FUNCTION>CylinderD</FUNCTION>\r
+ <FUNCTION>CylinderU</FUNCTION>\r
+ <FUNCTION>CylinderV</FUNCTION>\r
+ <FUNCTION>D</FUNCTION>\r
+ <FUNCTION>dawson</FUNCTION>\r
+ <FUNCTION>Default0</FUNCTION>\r
+ <FUNCTION>DefaultOverflow</FUNCTION>\r
+ <FUNCTION>DefaultUnderflow</FUNCTION>\r
+ <FUNCTION>define</FUNCTION>\r
+ <FUNCTION>define_external</FUNCTION>\r
+ <FUNCTION>degree</FUNCTION>\r
+ <FUNCTION>denom</FUNCTION>\r
+ <FUNCTION>depends</FUNCTION>\r
+ <FUNCTION>DESol</FUNCTION>\r
+ <FUNCTION>Det</FUNCTION>\r
+ <FUNCTION>diagon</FUNCTION>\r
+ <FUNCTION>Diff</FUNCTION>\r
+ <FUNCTION>diff</FUNCTION>\r
+ <FUNCTION>diffop</FUNCTION>\r
+ <FUNCTION>Digits</FUNCTION>\r
+ <FUNCTION>dilog</FUNCTION>\r
+ <FUNCTION>dinterp</FUNCTION>\r
+ <FUNCTION>Dirac</FUNCTION>\r
+ <FUNCTION>disassemble</FUNCTION>\r
+ <FUNCTION>discont</FUNCTION>\r
+ <FUNCTION>discrim</FUNCTION>\r
+ <FUNCTION>dismantle</FUNCTION>\r
+ <FUNCTION>DistDeg</FUNCTION>\r
+ <FUNCTION>Divide</FUNCTION>\r
+ <FUNCTION>divide</FUNCTION>\r
+ <FUNCTION>dsolve</FUNCTION>\r
+ <FUNCTION>efficiency</FUNCTION>\r
+ <FUNCTION>Ei</FUNCTION>\r
+ <FUNCTION>Eigenvals</FUNCTION>\r
+ <FUNCTION>eliminate</FUNCTION>\r
+ <FUNCTION>ellipsoid</FUNCTION>\r
+ <FUNCTION>EllipticCE</FUNCTION>\r
+ <FUNCTION>EllipticCK</FUNCTION>\r
+ <FUNCTION>EllipticCPi</FUNCTION>\r
+ <FUNCTION>EllipticE</FUNCTION>\r
+ <FUNCTION>EllipticF</FUNCTION>\r
+ <FUNCTION>EllipticK</FUNCTION>\r
+ <FUNCTION>EllipticModulus</FUNCTION>\r
+ <FUNCTION>EllipticNome</FUNCTION>\r
+ <FUNCTION>EllipticPi</FUNCTION>\r
+ <FUNCTION>elliptic_int</FUNCTION>\r
+ <FUNCTION>entries</FUNCTION>\r
+ <FUNCTION>erf</FUNCTION>\r
+ <FUNCTION>erfc</FUNCTION>\r
+ <FUNCTION>erfi</FUNCTION>\r
+ <FUNCTION>euler</FUNCTION>\r
+ <FUNCTION>eulermac</FUNCTION>\r
+ <FUNCTION>Eval</FUNCTION>\r
+ <FUNCTION>eval</FUNCTION>\r
+ <FUNCTION>evala</FUNCTION>\r
+ <FUNCTION>evalapply</FUNCTION>\r
+ <FUNCTION>evalb</FUNCTION>\r
+ <FUNCTION>evalc</FUNCTION>\r
+ <FUNCTION>evalf</FUNCTION>\r
+ <FUNCTION>evalfint</FUNCTION>\r
+ <FUNCTION>evalhf</FUNCTION>\r
+ <FUNCTION>evalm</FUNCTION>\r
+ <FUNCTION>evaln</FUNCTION>\r
+ <FUNCTION>evalr</FUNCTION>\r
+ <FUNCTION>evalrC</FUNCTION>\r
+ <FUNCTION>events</FUNCTION>\r
+ <FUNCTION>Excel</FUNCTION>\r
+ <FUNCTION>exists</FUNCTION>\r
+ <FUNCTION>exp</FUNCTION>\r
+ <FUNCTION>Expand</FUNCTION>\r
+ <FUNCTION>expand</FUNCTION>\r
+ <FUNCTION>expandoff</FUNCTION>\r
+ <FUNCTION>expandon</FUNCTION>\r
+ <FUNCTION>exports</FUNCTION>\r
+ <FUNCTION>extract</FUNCTION>\r
+ <FUNCTION>extrema</FUNCTION>\r
+ <FUNCTION>Factor</FUNCTION>\r
+ <FUNCTION>factor</FUNCTION>\r
+ <FUNCTION>Factors</FUNCTION>\r
+ <FUNCTION>factors</FUNCTION>\r
+ <FUNCTION>fclose</FUNCTION>\r
+ <FUNCTION>fdiscont</FUNCTION>\r
+ <FUNCTION>feof</FUNCTION>\r
+ <FUNCTION>fflush</FUNCTION>\r
+ <FUNCTION>FFT</FUNCTION>\r
+ <FUNCTION>filepos</FUNCTION>\r
+ <FUNCTION>fixdiv</FUNCTION>\r
+ <FUNCTION>float</FUNCTION>\r
+ <FUNCTION>floor</FUNCTION>\r
+ <FUNCTION>fnormal</FUNCTION>\r
+ <FUNCTION>fold</FUNCTION>\r
+ <FUNCTION>fopen</FUNCTION>\r
+ <FUNCTION>forall</FUNCTION>\r
+ <FUNCTION>forget</FUNCTION>\r
+ <FUNCTION>fprintf</FUNCTION>\r
+ <FUNCTION>frac</FUNCTION>\r
+ <FUNCTION>freeze</FUNCTION>\r
+ <FUNCTION>frem</FUNCTION>\r
+ <FUNCTION>fremove</FUNCTION>\r
+ <FUNCTION>FresnelC</FUNCTION>\r
+ <FUNCTION>Fresnelf</FUNCTION>\r
+ <FUNCTION>Fresnelg</FUNCTION>\r
+ <FUNCTION>FresnelS</FUNCTION>\r
+ <FUNCTION>FromInert</FUNCTION>\r
+ <FUNCTION>frontend</FUNCTION>\r
+ <FUNCTION>fscanf</FUNCTION>\r
+ <FUNCTION>fsolve</FUNCTION>\r
+ <FUNCTION>galois</FUNCTION>\r
+ <FUNCTION>GAMMA</FUNCTION>\r
+ <FUNCTION>GaussAGM</FUNCTION>\r
+ <FUNCTION>Gausselim</FUNCTION>\r
+ <FUNCTION>Gaussjord</FUNCTION>\r
+ <FUNCTION>gc</FUNCTION>\r
+ <FUNCTION>Gcd</FUNCTION>\r
+ <FUNCTION>gcd</FUNCTION>\r
+ <FUNCTION>Gcdex</FUNCTION>\r
+ <FUNCTION>gcdex</FUNCTION>\r
+ <FUNCTION>GegenbauerC</FUNCTION>\r
+ <FUNCTION>genpoly</FUNCTION>\r
+ <FUNCTION>getenv</FUNCTION>\r
+ <FUNCTION>GetResultDataType</FUNCTION>\r
+ <FUNCTION>GetResultShape</FUNCTION>\r
+ <FUNCTION>GF</FUNCTION>\r
+ <FUNCTION>Greek</FUNCTION>\r
+ <FUNCTION>HankelH1</FUNCTION>\r
+ <FUNCTION>HankelH2</FUNCTION>\r
+ <FUNCTION>harmonic</FUNCTION>\r
+ <FUNCTION>has</FUNCTION>\r
+ <FUNCTION>hasfun</FUNCTION>\r
+ <FUNCTION>hasoption</FUNCTION>\r
+ <FUNCTION>hastype</FUNCTION>\r
+ <FUNCTION>heap</FUNCTION>\r
+ <FUNCTION>Heaviside</FUNCTION>\r
+ <FUNCTION>Hermite</FUNCTION>\r
+ <FUNCTION>HermiteH</FUNCTION>\r
+ <FUNCTION>hermitian</FUNCTION>\r
+ <FUNCTION>Hessenberg</FUNCTION>\r
+ <FUNCTION>hfarray</FUNCTION>\r
+ <FUNCTION>history</FUNCTION>\r
+ <FUNCTION>hypergeom</FUNCTION>\r
+ <FUNCTION>icontent</FUNCTION>\r
+ <FUNCTION>identity</FUNCTION>\r
+ <FUNCTION>IEEEdiffs</FUNCTION>\r
+ <FUNCTION>ifactor</FUNCTION>\r
+ <FUNCTION>ifactors</FUNCTION>\r
+ <FUNCTION>iFFT</FUNCTION>\r
+ <FUNCTION>igcd</FUNCTION>\r
+ <FUNCTION>igcdex</FUNCTION>\r
+ <FUNCTION>ilcm</FUNCTION>\r
+ <FUNCTION>ilog10</FUNCTION>\r
+ <FUNCTION>ilog2</FUNCTION>\r
+ <FUNCTION>ilog</FUNCTION>\r
+ <FUNCTION>Im</FUNCTION>\r
+ <FUNCTION>implicitdiff</FUNCTION>\r
+ <FUNCTION>ImportMatrix</FUNCTION>\r
+ <FUNCTION>ImportVector</FUNCTION>\r
+ <FUNCTION>indets</FUNCTION>\r
+ <FUNCTION>index</FUNCTION>\r
+ <FUNCTION>indexed</FUNCTION>\r
+ <FUNCTION>indices</FUNCTION>\r
+ <FUNCTION>inifcn</FUNCTION>\r
+ <FUNCTION>ininame</FUNCTION>\r
+ <FUNCTION>initialcondition</FUNCTION>\r
+ <FUNCTION>initialize</FUNCTION>\r
+ <FUNCTION>insert</FUNCTION>\r
+ <FUNCTION>int</FUNCTION>\r
+ <FUNCTION>intat</FUNCTION>\r
+ <FUNCTION>interface</FUNCTION>\r
+ <FUNCTION>Interp</FUNCTION>\r
+ <FUNCTION>interp</FUNCTION>\r
+ <FUNCTION>Inverse</FUNCTION>\r
+ <FUNCTION>invfunc</FUNCTION>\r
+ <FUNCTION>invztrans</FUNCTION>\r
+ <FUNCTION>iostatus</FUNCTION>\r
+ <FUNCTION>iperfpow</FUNCTION>\r
+ <FUNCTION>iquo</FUNCTION>\r
+ <FUNCTION>iratrecon</FUNCTION>\r
+ <FUNCTION>irem</FUNCTION>\r
+ <FUNCTION>iroot</FUNCTION>\r
+ <FUNCTION>Irreduc</FUNCTION>\r
+ <FUNCTION>irreduc</FUNCTION>\r
+ <FUNCTION>is</FUNCTION>\r
+ <FUNCTION>iscont</FUNCTION>\r
+ <FUNCTION>isdifferential</FUNCTION>\r
+ <FUNCTION>IsMatrixShape</FUNCTION>\r
+ <FUNCTION>isolate</FUNCTION>\r
+ <FUNCTION>isolve</FUNCTION>\r
+ <FUNCTION>ispoly</FUNCTION>\r
+ <FUNCTION>isprime</FUNCTION>\r
+ <FUNCTION>isqrfree</FUNCTION>\r
+ <FUNCTION>isqrt</FUNCTION>\r
+ <FUNCTION>issqr</FUNCTION>\r
+ <FUNCTION>ithprime</FUNCTION>\r
+ <FUNCTION>JacobiAM</FUNCTION>\r
+ <FUNCTION>JacobiCD</FUNCTION>\r
+ <FUNCTION>JacobiCN</FUNCTION>\r
+ <FUNCTION>JacobiCS</FUNCTION>\r
+ <FUNCTION>JacobiDC</FUNCTION>\r
+ <FUNCTION>JacobiDN</FUNCTION>\r
+ <FUNCTION>JacobiDS</FUNCTION>\r
+ <FUNCTION>JacobiNC</FUNCTION>\r
+ <FUNCTION>JacobiND</FUNCTION>\r
+ <FUNCTION>JacobiNS</FUNCTION>\r
+ <FUNCTION>JacobiP</FUNCTION>\r
+ <FUNCTION>JacobiSC</FUNCTION>\r
+ <FUNCTION>JacobiSD</FUNCTION>\r
+ <FUNCTION>JacobiSN</FUNCTION>\r
+ <FUNCTION>JacobiTheta1</FUNCTION>\r
+ <FUNCTION>JacobiTheta2</FUNCTION>\r
+ <FUNCTION>JacobiTheta3</FUNCTION>\r
+ <FUNCTION>JacobiTheta4</FUNCTION>\r
+ <FUNCTION>JacobiZeta</FUNCTION>\r
+ <FUNCTION>KelvinBei</FUNCTION>\r
+ <FUNCTION>KelvinBer</FUNCTION>\r
+ <FUNCTION>KelvinHei</FUNCTION>\r
+ <FUNCTION>KelvinHer</FUNCTION>\r
+ <FUNCTION>KelvinKei</FUNCTION>\r
+ <FUNCTION>KelvinKer</FUNCTION>\r
+ <FUNCTION>KummerM</FUNCTION>\r
+ <FUNCTION>KummerU</FUNCTION>\r
+ <FUNCTION>LaguerreL</FUNCTION>\r
+ <FUNCTION>LambertW</FUNCTION>\r
+ <FUNCTION>latex</FUNCTION>\r
+ <FUNCTION>lattice</FUNCTION>\r
+ <FUNCTION>lcm</FUNCTION>\r
+ <FUNCTION>Lcm</FUNCTION>\r
+ <FUNCTION>lcoeff</FUNCTION>\r
+ <FUNCTION>leadterm</FUNCTION>\r
+ <FUNCTION>LegendreP</FUNCTION>\r
+ <FUNCTION>LegendreQ</FUNCTION>\r
+ <FUNCTION>length</FUNCTION>\r
+ <FUNCTION>LerchPhi</FUNCTION>\r
+ <FUNCTION>lexorder</FUNCTION>\r
+ <FUNCTION>lhs</FUNCTION>\r
+ <FUNCTION>CLi</FUNCTION>\r
+ <FUNCTION>Limit</FUNCTION>\r
+ <FUNCTION>limit</FUNCTION>\r
+ <FUNCTION>Linsolve</FUNCTION>\r
+ <FUNCTION>ln</FUNCTION>\r
+ <FUNCTION>lnGAMMA</FUNCTION>\r
+ <FUNCTION>log</FUNCTION>\r
+ <FUNCTION>log10</FUNCTION>\r
+ <FUNCTION>LommelS1</FUNCTION>\r
+ <FUNCTION>Lommels2</FUNCTION>\r
+ <FUNCTION>lprint</FUNCTION>\r
+ <FUNCTION>map</FUNCTION>\r
+ <FUNCTION>map2</FUNCTION>\r
+ <FUNCTION>Maple_floats</FUNCTION>\r
+ <FUNCTION>match</FUNCTION>\r
+ <FUNCTION>MatlabMatrix</FUNCTION>\r
+ <FUNCTION>Matrix</FUNCTION>\r
+ <FUNCTION>matrix</FUNCTION>\r
+ <FUNCTION>MatrixOptions</FUNCTION>\r
+ <FUNCTION>max</FUNCTION>\r
+ <FUNCTION>maximize</FUNCTION>\r
+ <FUNCTION>maxnorm</FUNCTION>\r
+ <FUNCTION>maxorder</FUNCTION>\r
+ <FUNCTION>MeijerG</FUNCTION>\r
+ <FUNCTION>member</FUNCTION>\r
+ <FUNCTION>min</FUNCTION>\r
+ <FUNCTION>minimize</FUNCTION>\r
+ <FUNCTION>mkdir</FUNCTION>\r
+ <FUNCTION>ModifiedMeijerG</FUNCTION>\r
+ <FUNCTION>modp</FUNCTION>\r
+ <FUNCTION>modp1</FUNCTION>\r
+ <FUNCTION>modp2</FUNCTION>\r
+ <FUNCTION>modpol</FUNCTION>\r
+ <FUNCTION>mods</FUNCTION>\r
+ <FUNCTION>module</FUNCTION>\r
+ <FUNCTION>MOLS</FUNCTION>\r
+ <FUNCTION>msolve</FUNCTION>\r
+ <FUNCTION>mtaylor</FUNCTION>\r
+ <FUNCTION>mul</FUNCTION>\r
+ <FUNCTION>NextAfter</FUNCTION>\r
+ <FUNCTION>nextprime</FUNCTION>\r
+ <FUNCTION>nops</FUNCTION>\r
+ <FUNCTION>norm</FUNCTION>\r
+ <FUNCTION>norm</FUNCTION>\r
+ <FUNCTION>Normal</FUNCTION>\r
+ <FUNCTION>normal</FUNCTION>\r
+ <FUNCTION>nprintf</FUNCTION>\r
+ <FUNCTION>Nullspace</FUNCTION>\r
+ <FUNCTION>numboccur</FUNCTION>\r
+ <FUNCTION>numer</FUNCTION>\r
+ <FUNCTION>NumericClass</FUNCTION>\r
+ <FUNCTION>NumericEvent</FUNCTION>\r
+ <FUNCTION>NumericEventHandler</FUNCTION>\r
+ <FUNCTION>NumericException</FUNCTION>\r
+ <FUNCTION>numerics</FUNCTION>\r
+ <FUNCTION>NumericStatus</FUNCTION>\r
+ <FUNCTION>odetest</FUNCTION>\r
+ <FUNCTION>op</FUNCTION>\r
+ <FUNCTION>open</FUNCTION>\r
+ <FUNCTION>order</FUNCTION>\r
+ <FUNCTION>OrderedNE</FUNCTION>\r
+ <FUNCTION>parse</FUNCTION>\r
+ <FUNCTION>patmatch</FUNCTION>\r
+ <FUNCTION>pclose</FUNCTION>\r
+ <FUNCTION>PDEplot_options</FUNCTION>\r
+ <FUNCTION>pdesolve</FUNCTION>\r
+ <FUNCTION>pdetest</FUNCTION>\r
+ <FUNCTION>pdsolve</FUNCTION>\r
+ <FUNCTION>piecewise</FUNCTION>\r
+ <FUNCTION>plot</FUNCTION>\r
+ <FUNCTION>plot3d</FUNCTION>\r
+ <FUNCTION>plotsetup</FUNCTION>\r
+ <FUNCTION>pochhammer</FUNCTION>\r
+ <FUNCTION>pointto</FUNCTION>\r
+ <FUNCTION>poisson</FUNCTION>\r
+ <FUNCTION>polar</FUNCTION>\r
+ <FUNCTION>polylog</FUNCTION>\r
+ <FUNCTION>polynom</FUNCTION>\r
+ <FUNCTION>Power</FUNCTION>\r
+ <FUNCTION>Powmod</FUNCTION>\r
+ <FUNCTION>powmod</FUNCTION>\r
+ <FUNCTION>Prem</FUNCTION>\r
+ <FUNCTION>prem</FUNCTION>\r
+ <FUNCTION>Preprocessor</FUNCTION>\r
+ <FUNCTION>prevprime</FUNCTION>\r
+ <FUNCTION>Primitive</FUNCTION>\r
+ <FUNCTION>Primpart</FUNCTION>\r
+ <FUNCTION>primpart</FUNCTION>\r
+ <FUNCTION>print</FUNCTION>\r
+ <FUNCTION>printf</FUNCTION>\r
+ <FUNCTION>ProbSplit</FUNCTION>\r
+ <FUNCTION>procbody</FUNCTION>\r
+ <FUNCTION>ProcessOptions</FUNCTION>\r
+ <FUNCTION>procmake</FUNCTION>\r
+ <FUNCTION>Product</FUNCTION>\r
+ <FUNCTION>product</FUNCTION>\r
+ <FUNCTION>proot</FUNCTION>\r
+ <FUNCTION>property</FUNCTION>\r
+ <FUNCTION>protect</FUNCTION>\r
+ <FUNCTION>Psi</FUNCTION>\r
+ <FUNCTION>psqrt</FUNCTION>\r
+ <FUNCTION>queue</FUNCTION>\r
+ <FUNCTION>Quo</FUNCTION>\r
+ <FUNCTION>quo</FUNCTION>\r
+ <FUNCTION>radfield</FUNCTION>\r
+ <FUNCTION>radnormal</FUNCTION>\r
+ <FUNCTION>radsimp</FUNCTION>\r
+ <FUNCTION>rand</FUNCTION>\r
+ <FUNCTION>randomize</FUNCTION>\r
+ <FUNCTION>Randpoly</FUNCTION>\r
+ <FUNCTION>randpoly</FUNCTION>\r
+ <FUNCTION>Randprime</FUNCTION>\r
+ <FUNCTION>range</FUNCTION>\r
+ <FUNCTION>ratinterp</FUNCTION>\r
+ <FUNCTION>rationalize</FUNCTION>\r
+ <FUNCTION>Ratrecon</FUNCTION>\r
+ <FUNCTION>ratrecon</FUNCTION>\r
+ <FUNCTION>Re</FUNCTION>\r
+ <FUNCTION>readbytes</FUNCTION>\r
+ <FUNCTION>readdata</FUNCTION>\r
+ <FUNCTION>readlib</FUNCTION>\r
+ <FUNCTION>readline</FUNCTION>\r
+ <FUNCTION>readstat</FUNCTION>\r
+ <FUNCTION>realroot</FUNCTION>\r
+ <FUNCTION>Record</FUNCTION>\r
+ <FUNCTION>Reduce</FUNCTION>\r
+ <FUNCTION>references</FUNCTION>\r
+ <FUNCTION>release</FUNCTION>\r
+ <FUNCTION>Rem</FUNCTION>\r
+ <FUNCTION>rem</FUNCTION>\r
+ <FUNCTION>remove</FUNCTION>\r
+ <FUNCTION>repository</FUNCTION>\r
+ <FUNCTION>requires</FUNCTION>\r
+ <FUNCTION>residue</FUNCTION>\r
+ <FUNCTION>RESol</FUNCTION>\r
+ <FUNCTION>Resultant</FUNCTION>\r
+ <FUNCTION>resultant</FUNCTION>\r
+ <FUNCTION>rhs</FUNCTION>\r
+ <FUNCTION>rmdir</FUNCTION>\r
+ <FUNCTION>root</FUNCTION>\r
+ <FUNCTION>rootbound</FUNCTION>\r
+ <FUNCTION>RootOf</FUNCTION>\r
+ <FUNCTION>Roots</FUNCTION>\r
+ <FUNCTION>roots</FUNCTION>\r
+ <FUNCTION>round</FUNCTION>\r
+ <FUNCTION>Rounding</FUNCTION>\r
+ <FUNCTION>rsolve</FUNCTION>\r
+ <FUNCTION>rtable</FUNCTION>\r
+ <FUNCTION>rtable_algebra</FUNCTION>\r
+ <FUNCTION>rtable_dims</FUNCTION>\r
+ <FUNCTION>rtable_elems</FUNCTION>\r
+ <FUNCTION>rtable_indfns</FUNCTION>\r
+ <FUNCTION>rtable_options</FUNCTION>\r
+ <FUNCTION>rtable_printf</FUNCTION>\r
+ <FUNCTION>rtable_scanf</FUNCTION>\r
+ <FUNCTION>SampleRTable</FUNCTION>\r
+ <FUNCTION>savelib</FUNCTION>\r
+ <FUNCTION>Scale10</FUNCTION>\r
+ <FUNCTION>Scale2</FUNCTION>\r
+ <FUNCTION>scalar</FUNCTION>\r
+ <FUNCTION>scan</FUNCTION>\r
+ <FUNCTION>scanf</FUNCTION>\r
+ <FUNCTION>SearchText</FUNCTION>\r
+ <FUNCTION>searchtext</FUNCTION>\r
+ <FUNCTION>sec</FUNCTION>\r
+ <FUNCTION>sech</FUNCTION>\r
+ <FUNCTION>select</FUNCTION>\r
+ <FUNCTION>selectfun</FUNCTION>\r
+ <FUNCTION>selectremove</FUNCTION>\r
+ <FUNCTION>seq</FUNCTION>\r
+ <FUNCTION>series</FUNCTION>\r
+ <FUNCTION>setattribute</FUNCTION>\r
+ <FUNCTION>SFloatExponent</FUNCTION>\r
+ <FUNCTION>SFloatMantissa</FUNCTION>\r
+ <FUNCTION>shale</FUNCTION>\r
+ <FUNCTION>Shi</FUNCTION>\r
+ <FUNCTION>showprofile</FUNCTION>\r
+ <FUNCTION>showtime</FUNCTION>\r
+ <FUNCTION>Si</FUNCTION>\r
+ <FUNCTION>sign</FUNCTION>\r
+ <FUNCTION>signum</FUNCTION>\r
+ <FUNCTION>Simplify</FUNCTION>\r
+ <FUNCTION>simplify</FUNCTION>\r
+ <FUNCTION>sin</FUNCTION>\r
+ <FUNCTION>sinh</FUNCTION>\r
+ <FUNCTION>singular</FUNCTION>\r
+ <FUNCTION>sinterp</FUNCTION>\r
+ <FUNCTION>smartplot3d</FUNCTION>\r
+ <FUNCTION>Smith</FUNCTION>\r
+ <FUNCTION>solve</FUNCTION>\r
+ <FUNCTION>solvefor</FUNCTION>\r
+ <FUNCTION>sort</FUNCTION>\r
+ <FUNCTION>sparse</FUNCTION>\r
+ <FUNCTION>spec_eval_rule</FUNCTION>\r
+ <FUNCTION>spline</FUNCTION>\r
+ <FUNCTION>spreadsheet</FUNCTION>\r
+ <FUNCTION>SPrem</FUNCTION>\r
+ <FUNCTION>sprem</FUNCTION>\r
+ <FUNCTION>sprintf</FUNCTION>\r
+ <FUNCTION>Sqrfree</FUNCTION>\r
+ <FUNCTION>sqrfree</FUNCTION>\r
+ <FUNCTION>sqrt</FUNCTION>\r
+ <FUNCTION>sscanf</FUNCTION>\r
+ <FUNCTION>Ssi</FUNCTION>\r
+ <FUNCTION>ssystem</FUNCTION>\r
+ <FUNCTION>storage</FUNCTION>\r
+ <FUNCTION>string</FUNCTION>\r
+ <FUNCTION>StruveH</FUNCTION>\r
+ <FUNCTION>StruveL</FUNCTION>\r
+ <FUNCTION>sturm</FUNCTION>\r
+ <FUNCTION>sturmseq</FUNCTION>\r
+ <FUNCTION>subs</FUNCTION>\r
+ <FUNCTION>subsindets</FUNCTION>\r
+ <FUNCTION>subsop</FUNCTION>\r
+ <FUNCTION>substring</FUNCTION>\r
+ <FUNCTION>subtype</FUNCTION>\r
+ <FUNCTION>Sum</FUNCTION>\r
+ <FUNCTION>sum</FUNCTION>\r
+ <FUNCTION>surd</FUNCTION>\r
+ <FUNCTION>Svd</FUNCTION>\r
+ <FUNCTION>symmdiff</FUNCTION>\r
+ <FUNCTION>symmetric</FUNCTION>\r
+ <FUNCTION>syntax</FUNCTION>\r
+ <FUNCTION>system</FUNCTION>\r
+ <FUNCTION>table</FUNCTION>\r
+ <FUNCTION>tan</FUNCTION>\r
+ <FUNCTION>tang</FUNCTION>\r
+ <FUNCTION>taylor</FUNCTION>\r
+ <FUNCTION>testeq</FUNCTION>\r
+ <FUNCTION>testfloat</FUNCTION>\r
+ <FUNCTION>TEXT</FUNCTION>\r
+ <FUNCTION>thaw</FUNCTION>\r
+ <FUNCTION>thiele</FUNCTION>\r
+ <FUNCTION>time</FUNCTION>\r
+ <FUNCTION>timelimit</FUNCTION>\r
+ <FUNCTION>ToInert</FUNCTION>\r
+ <FUNCTION>TopologicalSort</FUNCTION>\r
+ <FUNCTION>traperror</FUNCTION>\r
+ <FUNCTION>triangular</FUNCTION>\r
+ <FUNCTION>trigsubs</FUNCTION>\r
+ <FUNCTION>trunc</FUNCTION>\r
+ <FUNCTION>type</FUNCTION>\r
+ <FUNCTION>typematch</FUNCTION>\r
+ <FUNCTION>unames</FUNCTION>\r
+ <FUNCTION>unapply</FUNCTION>\r
+ <FUNCTION>unassign</FUNCTION>\r
+ <FUNCTION>undefined</FUNCTION>\r
+ <FUNCTION>unit</FUNCTION>\r
+ <FUNCTION>Unordered</FUNCTION>\r
+ <FUNCTION>unprotect</FUNCTION>\r
+ <FUNCTION>update</FUNCTION>\r
+ <FUNCTION>UseHardwareFloats</FUNCTION>\r
+ <FUNCTION>userinfo</FUNCTION>\r
+ <FUNCTION>value</FUNCTION>\r
+ <FUNCTION>Vector</FUNCTION>\r
+ <FUNCTION>vector</FUNCTION>\r
+ <FUNCTION>verify</FUNCTION>\r
+ <FUNCTION>WeierstrassP</FUNCTION>\r
+ <FUNCTION>WeberE</FUNCTION>\r
+ <FUNCTION>WeierstrassPPrime</FUNCTION>\r
+ <FUNCTION>WeierstrassSigma</FUNCTION>\r
+ <FUNCTION>WeierstrassZeta</FUNCTION>\r
+ <FUNCTION>whattype</FUNCTION>\r
+ <FUNCTION>WhittakerM</FUNCTION>\r
+ <FUNCTION>WhittakerW</FUNCTION>\r
+ <FUNCTION>with</FUNCTION>\r
+ <FUNCTION>worksheet</FUNCTION>\r
+ <FUNCTION>writebytes</FUNCTION>\r
+ <FUNCTION>writedata</FUNCTION>\r
+ <FUNCTION>writeline</FUNCTION>\r
+ <FUNCTION>writestat</FUNCTION>\r
+ <FUNCTION>writeto</FUNCTION>\r
+ <FUNCTION>zero</FUNCTION>\r
+ <FUNCTION>Zeta</FUNCTION>\r
+ <FUNCTION>zip</FUNCTION>\r
+ <FUNCTION>ztrans</FUNCTION>\r
+\r
+ <!-- Initially known names -->\r
+ <LITERAL2>Catalan</LITERAL2>\r
+ <LITERAL2>constants</LITERAL2>\r
+ <LITERAL2>Digits</LITERAL2>\r
+ <LITERAL2>FAIL</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>gamma</LITERAL2>\r
+ <LITERAL2>I</LITERAL2>\r
+ <LITERAL2>infinity</LITERAL2>\r
+ <LITERAL2>integrate</LITERAL2>\r
+ <LITERAL2>lasterror</LITERAL2>\r
+ <LITERAL2>libname</LITERAL2>\r
+ <LITERAL2>`mod`</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>Order</LITERAL2>\r
+ <LITERAL2>Pi</LITERAL2>\r
+ <LITERAL2>printlevel</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>undefined</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- SML MODE by Ingmar Stein -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="(*"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="*)"/>\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(*</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+\r
+ <!-- character literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>#"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- string literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- built-in operators -->\r
+\r
+ <!-- infix precedence 7 -->\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <!-- infix precedence 6 -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+\r
+ <!-- infix precedence 5 -->\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+\r
+ <!-- infix precedence 4 -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+\r
+ <!-- infix precedence 3 -->\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+\r
+ <!-- reserved words -->\r
+ <!-- <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">:></SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">...</SEQ>\r
+ <SEQ TYPE="NULL">_</SEQ>\r
+ <SEQ TYPE="NULL">|</SEQ>\r
+ <SEQ TYPE="NULL">=></SEQ>\r
+ <SEQ TYPE="NULL">-></SEQ>\r
+ <SEQ TYPE="NULL">#</SEQ> -->\r
+\r
+ <KEYWORDS>\r
+ <!-- built-in operators -->\r
+\r
+ <!-- infix precedence 7 -->\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+\r
+ <!-- infix precedence 3 -->\r
+ <OPERATOR>o</OPERATOR>\r
+\r
+ <!-- infix precedence 0 -->\r
+ <OPERATOR>before</OPERATOR>\r
+\r
+ <!-- reserved words -->\r
+ <KEYWORD1>abstype</KEYWORD1>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>andalso</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>datatype</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>eqtype</KEYWORD1>\r
+ <KEYWORD1>exception</KEYWORD1>\r
+ <KEYWORD1>fn</KEYWORD1>\r
+ <KEYWORD1>fun</KEYWORD1>\r
+ <KEYWORD1>functor</KEYWORD1>\r
+ <KEYWORD1>handle</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <KEYWORD1>infix</KEYWORD1>\r
+ <KEYWORD1>infixr</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>nonfix</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>op</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>orelse</KEYWORD1>\r
+ <KEYWORD1>raise</KEYWORD1>\r
+ <KEYWORD1>rec</KEYWORD1>\r
+ <KEYWORD1>sharing</KEYWORD1>\r
+ <KEYWORD1>sig</KEYWORD1>\r
+ <KEYWORD1>signature</KEYWORD1>\r
+ <KEYWORD1>struct</KEYWORD1>\r
+ <KEYWORD1>structure</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>val</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>withtype</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- built-in types -->\r
+ <KEYWORD3>array</KEYWORD3>\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>exn</KEYWORD3>\r
+ <KEYWORD3>frag</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>option</KEYWORD3>\r
+ <KEYWORD3>order</KEYWORD3>\r
+ <KEYWORD3>real</KEYWORD3>\r
+ <KEYWORD3>ref</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>substring</KEYWORD3>\r
+ <KEYWORD3>unit</KEYWORD3>\r
+ <KEYWORD3>vector</KEYWORD3>\r
+ <KEYWORD3>word</KEYWORD3>\r
+ <KEYWORD3>word8</KEYWORD3>\r
+\r
+ <!-- build-in exception constructors -->\r
+ <KEYWORD2>Bind</KEYWORD2>\r
+ <KEYWORD2>Chr</KEYWORD2>\r
+ <KEYWORD2>Domain</KEYWORD2>\r
+ <KEYWORD2>Div</KEYWORD2>\r
+ <KEYWORD2>Fail</KEYWORD2>\r
+ <KEYWORD2>Graphic</KEYWORD2>\r
+ <KEYWORD2>Interrupt</KEYWORD2>\r
+ <KEYWORD2>Io</KEYWORD2>\r
+ <KEYWORD2>Match</KEYWORD2>\r
+ <KEYWORD2>Option</KEYWORD2>\r
+ <KEYWORD2>Ord</KEYWORD2>\r
+ <KEYWORD2>Overflow</KEYWORD2>\r
+ <KEYWORD2>Size</KEYWORD2>\r
+ <KEYWORD2>Subscript</KEYWORD2>\r
+ <KEYWORD2>SysErr</KEYWORD2>\r
+\r
+ <!-- built-in literals -->\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>QUOTE</LITERAL2>\r
+ <LITERAL2>ANTIQUOTE</LITERAL2>\r
+ <LITERAL2>nil</LITERAL2>\r
+ <LITERAL2>NONE</LITERAL2>\r
+ <LITERAL2>SOME</LITERAL2>\r
+ <LITERAL2>LESS</LITERAL2>\r
+ <LITERAL2>EQUAL</LITERAL2>\r
+ <LITERAL2>GREATER</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Modula-3 mode, by Marcio Marchini mqm@magma.ca -->\r
+<!-- See http://www.research.compaq.com/SRC/m3defn/html/syntax.html -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="(*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*)" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <!-- Compiler directives. -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><*</BEGIN>\r
+ <END>*></END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(*</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>DO</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>REPEAT</KEYWORD1>\r
+ <KEYWORD1>UNTIL</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>GENERIC</KEYWORD1>\r
+ <KEYWORD1>OBJECT</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>UNTRACED</KEYWORD1>\r
+ <KEYWORD1>ARRAY</KEYWORD1>\r
+ <KEYWORD1>ELSIF</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>REVEAL</KEYWORD1>\r
+ <KEYWORD1>VALUE</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>IMPORT</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>ROOT</KEYWORD1>\r
+ <KEYWORD1>VAR</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>EVAL</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>OVERRIDES</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>BITS</KEYWORD1>\r
+ <KEYWORD1>EXCEPT</KEYWORD1>\r
+ <KEYWORD1>INTERFACE</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>BRANDED</KEYWORD1>\r
+ <KEYWORD1>EXCEPTION</KEYWORD1>\r
+ <KEYWORD1>LOCK</KEYWORD1>\r
+ <KEYWORD1>RAISE</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>LOOP</KEYWORD1>\r
+ <KEYWORD1>RAISES</KEYWORD1>\r
+ <KEYWORD1>TRY</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>EXPORTS</KEYWORD1>\r
+ <KEYWORD1>METHODS</KEYWORD1>\r
+ <KEYWORD1>READONLY</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>CONST</KEYWORD1>\r
+ <KEYWORD1>FINALLY</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>RECORD</KEYWORD1>\r
+ <KEYWORD1>TYPECASE</KEYWORD1>\r
+ <KEYWORD1>DIV</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>MODULE</KEYWORD1>\r
+ <KEYWORD1>REF</KEYWORD1>\r
+ <KEYWORD1>UNSAFE</KEYWORD1>\r
+\r
+ <!-- Reserved identifiers -->\r
+ <LITERAL2>ABS</LITERAL2>\r
+ <LITERAL2>BYTESIZE</LITERAL2>\r
+ <LITERAL2>EXTENDED</LITERAL2>\r
+ <LITERAL2>INTEGER</LITERAL2>\r
+ <LITERAL2>MIN</LITERAL2>\r
+ <LITERAL2>NUMBER</LITERAL2>\r
+ <LITERAL2>TEXT</LITERAL2>\r
+ <LITERAL2>ADDRESS</LITERAL2>\r
+ <LITERAL2>CARDINAL</LITERAL2>\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <LITERAL2>ISTYPE</LITERAL2>\r
+ <LITERAL2>MUTEX</LITERAL2>\r
+ <LITERAL2>ORD</LITERAL2>\r
+ <LITERAL2>TRUE</LITERAL2>\r
+ <LITERAL2>ADR</LITERAL2>\r
+ <LITERAL2>CEILING</LITERAL2>\r
+ <LITERAL2>FIRST</LITERAL2>\r
+ <LITERAL2>LAST</LITERAL2>\r
+ <LITERAL2>NARROW</LITERAL2>\r
+ <LITERAL2>REAL</LITERAL2>\r
+ <LITERAL2>TRUNC</LITERAL2>\r
+ <LITERAL2>ADRSIZE</LITERAL2>\r
+ <LITERAL2>CHAR</LITERAL2>\r
+ <LITERAL2>FLOAT</LITERAL2>\r
+ <LITERAL2>LONGREAL</LITERAL2>\r
+ <LITERAL2>NEW</LITERAL2>\r
+ <LITERAL2>REFANY</LITERAL2>\r
+ <LITERAL2>TYPECODE</LITERAL2>\r
+ <LITERAL2>BITSIZE</LITERAL2>\r
+ <LITERAL2>DEC</LITERAL2>\r
+ <LITERAL2>FLOOR</LITERAL2>\r
+ <LITERAL2>LOOPHOLE</LITERAL2>\r
+ <LITERAL2>NIL</LITERAL2>\r
+ <LITERAL2>ROUND</LITERAL2>\r
+ <LITERAL2>VAL</LITERAL2>\r
+ <LITERAL2>BOOLEAN</LITERAL2>\r
+ <LITERAL2>DISPOSE</LITERAL2>\r
+ <LITERAL2>INC</LITERAL2>\r
+ <LITERAL2>MAX</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>SUBARRAY</LITERAL2>\r
+ \r
+ <!-- Standard interfaces -->\r
+ <!-- http://www.research.compaq.com/SRC/m3defn/html/intfs.html -->\r
+ <KEYWORD2>Text</KEYWORD2>\r
+ <KEYWORD2>Thread</KEYWORD2>\r
+ <KEYWORD2>Word</KEYWORD2>\r
+ <KEYWORD2>Real</KEYWORD2>\r
+ <KEYWORD2>LongReal</KEYWORD2>\r
+ <KEYWORD2>ExtendedReal</KEYWORD2>\r
+ <KEYWORD2>RealFloat</KEYWORD2>\r
+ <KEYWORD2>LongFloat</KEYWORD2>\r
+ <KEYWORD2>ExtendedFloat</KEYWORD2>\r
+ <KEYWORD2>FloatMode</KEYWORD2>\r
+\r
+ <!-- Recommended interfaces -->\r
+ <!-- http://www.research.compaq.com/SRC/m3defn/html/intfs.html -->\r
+ <KEYWORD3>Fmt</KEYWORD3>\r
+ <KEYWORD3>Lex</KEYWORD3>\r
+ <KEYWORD3>Pickle</KEYWORD3>\r
+ <KEYWORD3>Table</KEYWORD3>\r
+ \r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="##" />\r
+ <PROPERTY NAME="wrap" VALUE="soft" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="FALSE" IGNORE_CASE="FALSE">\r
+\r
+ <!-- comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">##</EOL_SPAN>\r
+\r
+ <!-- directive -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#pragma</EOL_SPAN>\r
+\r
+ <!-- macro -->\r
+ <SPAN TYPE="KEYWORD4">\r
+ <BEGIN>[[</BEGIN>\r
+ <END>]]</END>\r
+ </SPAN>\r
+\r
+ <!-- term definition -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR=' '\r
+ AT_LINE_START='TRUE'\r
+ TYPE="LABEL"\r
+ >\s+(?:\(|\)|\w)[\p{Alnum}\p{Blank}.()]+::</SEQ_REGEXP>\r
+\r
+ <!-- smileys -->\r
+ <!-- not on by default because it slows things down a bit\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\sB\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:\)\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\;\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:D\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\%lt;\:\(\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\sX\-\(\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:o\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:\(\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\/\!\\\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\%lt;\!\b\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\(\!\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:\-\?\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\:\b\:\b\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\%\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\@\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\|\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\;\)\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\(\.\/\)\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{OK\}\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{X\}\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{i\}\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{1\}\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{2\}\s</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=' ' AT_LINE_START='FALSE' TYPE="LITERAL3">\s\{3\}\s</SEQ_REGEXP>\r
+ -->\r
+\r
+ <!-- code or literal -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>{{{</BEGIN>\r
+ <END>}}}</END>\r
+ </SPAN>\r
+\r
+ <!-- code or literal -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- bold or italic -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="''"\r
+ TYPE="LITERAL1"\r
+ >('{2,5})[^']+\1[^']</SEQ_REGEXP>\r
+\r
+ <!-- horizontal rule -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="----"\r
+ TYPE="LITERAL4"\r
+ >-{4,}</SEQ_REGEXP>\r
+\r
+ <!-- section header -->\r
+ <SPAN_REGEXP\r
+ HASH_CHAR="="\r
+ TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE"\r
+ >\r
+ <BEGIN>(={1,5}) </BEGIN>\r
+ <END> $1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- implicit WikiWords - a bit of a hack, but I can't think of a better way... -->\r
+ <SEQ_REGEXP HASH_CHARS="ABCDEFGHIJKLMNOPQRSTUVWXYZ" AT_WORD_START="TRUE" TYPE="KEYWORD2">[A-Z][a-z]+[A-Z][a-zA-Z]+</SEQ_REGEXP>\r
+\r
+ <!-- explicit WikiWord -->\r
+ <SPAN TYPE="KEYWORD2">\r
+ <BEGIN>["</BEGIN>\r
+ <END>"]</END>\r
+ </SPAN>\r
+\r
+ <!-- url -->\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!--\r
+ IBM WebSphere MQ Scripting (MQSC)\r
+ - by Aaron Bell <aaron@clockworklogic.co.uk>\r
+ - accurate for WebSphere MQ 5.2.\r
+ - ensure your LITERAL1 and LITERAL2 colours are set differently.\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <!-- asterisks are comments -->\r
+ <PROPERTY NAME="lineComment" VALUE="*"/>\r
+ </PROPS>\r
+ <!-- ignore case, highlight numbers -->\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- lines beginning with asterisk are comments -->\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">*</EOL_SPAN>\r
+\r
+ <!-- brackets on one line delimit parameter values, don't parse -->\r
+ <!-- case 1: string values using apostrophe marks -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" MATCH_TYPE="OPERATOR">\r
+ <BEGIN>('</BEGIN>\r
+ <END>')</END>\r
+ </SPAN>\r
+ <!-- case 2: literal values and object names -->\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE" MATCH_TYPE="OPERATOR">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- line continuation symbol -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- KEYWORD1 are core MQSC commands -->\r
+ <KEYWORD1>all</KEYWORD1><!-- as in DIS Q(X) ALL -->\r
+ <KEYWORD1>alter</KEYWORD1>\r
+ <KEYWORD1>alt</KEYWORD1>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>def</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>display</KEYWORD1>\r
+ <KEYWORD1>dis</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>like</KEYWORD1><!-- as in DEF Q(X) LIKE(Y) -->\r
+ <KEYWORD1>ping</KEYWORD1>\r
+ <KEYWORD1>refresh</KEYWORD1>\r
+ <KEYWORD1>ref</KEYWORD1>\r
+ <KEYWORD1>replace</KEYWORD1><!-- as in DEF Q(X) REPLACE -->\r
+ <KEYWORD1>reset</KEYWORD1>\r
+ <KEYWORD1>resolve</KEYWORD1>\r
+ <KEYWORD1>resume</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>suspend</KEYWORD1>\r
+\r
+ <!-- KEYWORD2 are object types -->\r
+ <KEYWORD2>channel</KEYWORD2>\r
+ <KEYWORD2>chl</KEYWORD2>\r
+ <KEYWORD2>chstatus</KEYWORD2>\r
+ <KEYWORD2>chst</KEYWORD2>\r
+ <KEYWORD2>clusqmgr</KEYWORD2>\r
+ <KEYWORD2>process</KEYWORD2>\r
+ <KEYWORD2>proc</KEYWORD2>\r
+ <KEYWORD2>namelist</KEYWORD2>\r
+ <KEYWORD2>nl</KEYWORD2>\r
+ <KEYWORD2>qalias</KEYWORD2>\r
+ <KEYWORD2>qa</KEYWORD2>\r
+ <KEYWORD2>qcluster</KEYWORD2>\r
+ <KEYWORD2>qc</KEYWORD2>\r
+ <KEYWORD2>qlocal</KEYWORD2>\r
+ <KEYWORD2>ql</KEYWORD2>\r
+ <KEYWORD2>qmodel</KEYWORD2>\r
+ <KEYWORD2>qm</KEYWORD2>\r
+ <KEYWORD2>qmgr</KEYWORD2>\r
+ <KEYWORD2>qremote</KEYWORD2>\r
+ <KEYWORD2>qr</KEYWORD2>\r
+ <KEYWORD2>queue</KEYWORD2>\r
+\r
+ <!-- MARKUP are object attributes -->\r
+ <MARKUP>altdate</MARKUP>\r
+ <MARKUP>alttime</MARKUP>\r
+ <MARKUP>applicid</MARKUP>\r
+ <MARKUP>appltype</MARKUP>\r
+ <MARKUP>authorev</MARKUP>\r
+ <MARKUP>batches</MARKUP>\r
+ <MARKUP>batchint</MARKUP>\r
+ <MARKUP>batchsz</MARKUP>\r
+ <MARKUP>boqname</MARKUP>\r
+ <MARKUP>bothresh</MARKUP>\r
+ <MARKUP>bufsrcvd</MARKUP>\r
+ <MARKUP>bufssent</MARKUP>\r
+ <MARKUP>bytsrcvd</MARKUP>\r
+ <MARKUP>bytssent</MARKUP>\r
+ <MARKUP>ccsid</MARKUP>\r
+ <MARKUP>chad</MARKUP>\r
+ <MARKUP>chadev</MARKUP>\r
+ <MARKUP>chadexit</MARKUP>\r
+ <MARKUP>channel</MARKUP>\r
+ <MARKUP>chltype</MARKUP>\r
+ <MARKUP>chstada</MARKUP>\r
+ <MARKUP>chstati</MARKUP>\r
+ <MARKUP>clusdate</MARKUP>\r
+ <MARKUP>clusinfo</MARKUP>\r
+ <MARKUP>clusnl</MARKUP>\r
+ <MARKUP>clusqmgr</MARKUP>\r
+ <MARKUP>clusqt</MARKUP>\r
+ <MARKUP>cluster</MARKUP>\r
+ <MARKUP>clustime</MARKUP>\r
+ <MARKUP>clwldata</MARKUP>\r
+ <MARKUP>clwlexit</MARKUP>\r
+ <MARKUP>clwlwen</MARKUP>\r
+ <MARKUP>cmdlevel</MARKUP>\r
+ <MARKUP>commandq</MARKUP>\r
+ <MARKUP>conname</MARKUP>\r
+ <MARKUP>convert</MARKUP>\r
+ <MARKUP>crdate</MARKUP>\r
+ <MARKUP>crtime</MARKUP>\r
+ <MARKUP>curdepth</MARKUP>\r
+ <MARKUP>curluwid</MARKUP>\r
+ <MARKUP>curmsgs</MARKUP>\r
+ <MARKUP>curseqno</MARKUP>\r
+ <MARKUP>deadq</MARKUP>\r
+ <MARKUP>defbind</MARKUP>\r
+ <MARKUP>defprty</MARKUP>\r
+ <MARKUP>defpsist</MARKUP>\r
+ <MARKUP>defsopt</MARKUP>\r
+ <MARKUP>deftype</MARKUP>\r
+ <MARKUP>defxmitq</MARKUP>\r
+ <MARKUP>descr</MARKUP>\r
+ <MARKUP>discint</MARKUP>\r
+ <MARKUP>distl</MARKUP>\r
+ <MARKUP>envrdata</MARKUP>\r
+ <MARKUP>get</MARKUP>\r
+ <MARKUP>hardenbo</MARKUP>\r
+ <MARKUP>hbint</MARKUP>\r
+ <MARKUP>indoubt</MARKUP>\r
+ <MARKUP>inhibtev</MARKUP>\r
+ <MARKUP>initq</MARKUP>\r
+ <MARKUP>ipprocs</MARKUP>\r
+ <MARKUP>jobname</MARKUP>\r
+ <MARKUP>localev</MARKUP>\r
+ <MARKUP>longrts</MARKUP>\r
+ <MARKUP>longrty</MARKUP>\r
+ <MARKUP>longtmr</MARKUP>\r
+ <MARKUP>lstluwid</MARKUP>\r
+ <MARKUP>lstmsgda</MARKUP>\r
+ <MARKUP>lstmsgti</MARKUP>\r
+ <MARKUP>lstseqno</MARKUP>\r
+ <MARKUP>maxdepth</MARKUP>\r
+ <MARKUP>maxhands</MARKUP>\r
+ <MARKUP>maxmsgl</MARKUP>\r
+ <MARKUP>maxprty</MARKUP>\r
+ <MARKUP>maxumsgs</MARKUP>\r
+ <MARKUP>mcaname</MARKUP>\r
+ <MARKUP>mcastat</MARKUP>\r
+ <MARKUP>mcatype</MARKUP>\r
+ <MARKUP>mcauser</MARKUP>\r
+ <MARKUP>modename</MARKUP>\r
+ <MARKUP>mrdata</MARKUP>\r
+ <MARKUP>mrexit</MARKUP>\r
+ <MARKUP>mrrty</MARKUP>\r
+ <MARKUP>mrtmr</MARKUP>\r
+ <MARKUP>msgdata</MARKUP>\r
+ <MARKUP>msgdlvsq</MARKUP>\r
+ <MARKUP>msgexit</MARKUP>\r
+ <MARKUP>msgs</MARKUP>\r
+ <MARKUP>namcount</MARKUP>\r
+ <MARKUP>names</MARKUP>\r
+ <MARKUP>netprty</MARKUP>\r
+ <MARKUP>npmspeed</MARKUP>\r
+ <MARKUP>opprocs</MARKUP>\r
+ <MARKUP>password</MARKUP>\r
+ <MARKUP>perfmev</MARKUP>\r
+ <MARKUP>platform</MARKUP>\r
+ <MARKUP>process</MARKUP>\r
+ <MARKUP>put</MARKUP>\r
+ <MARKUP>putaut</MARKUP>\r
+ <MARKUP>qdepthhi</MARKUP>\r
+ <MARKUP>qdepthlo</MARKUP>\r
+ <MARKUP>qdphiev</MARKUP>\r
+ <MARKUP>qdploev</MARKUP>\r
+ <MARKUP>qdpmaxev</MARKUP>\r
+ <MARKUP>qmid</MARKUP>\r
+ <MARKUP>qmname</MARKUP>\r
+ <MARKUP>qmtype</MARKUP>\r
+ <MARKUP>qsvciev</MARKUP>\r
+ <MARKUP>qsvcint</MARKUP>\r
+ <MARKUP>qtype</MARKUP>\r
+ <MARKUP>rcvdata</MARKUP>\r
+ <MARKUP>rcvexit</MARKUP>\r
+ <MARKUP>remoteev</MARKUP>\r
+ <MARKUP>repos</MARKUP>\r
+ <MARKUP>reposnl</MARKUP>\r
+ <MARKUP>retintvl</MARKUP>\r
+ <MARKUP>rname</MARKUP>\r
+ <MARKUP>rqmname</MARKUP>\r
+ <MARKUP>scope</MARKUP>\r
+ <MARKUP>scydata</MARKUP>\r
+ <MARKUP>scyexit</MARKUP>\r
+ <MARKUP>senddata</MARKUP>\r
+ <MARKUP>sendexit</MARKUP>\r
+ <MARKUP>seqwrap</MARKUP>\r
+ <MARKUP>share</MARKUP>\r
+ <MARKUP>shortrts</MARKUP>\r
+ <MARKUP>shortrty</MARKUP>\r
+ <MARKUP>shorttmr</MARKUP>\r
+ <MARKUP>status</MARKUP>\r
+ <MARKUP>stopreq</MARKUP>\r
+ <MARKUP>strstpev</MARKUP>\r
+ <MARKUP>suspend</MARKUP>\r
+ <MARKUP>syncpt</MARKUP>\r
+ <MARKUP>targq</MARKUP>\r
+ <MARKUP>tpname</MARKUP>\r
+ <MARKUP>trigdata</MARKUP>\r
+ <MARKUP>trigdpth</MARKUP>\r
+ <MARKUP>trigger</MARKUP>\r
+ <MARKUP>trigint</MARKUP>\r
+ <MARKUP>trigmpri</MARKUP>\r
+ <MARKUP>trigtype</MARKUP>\r
+ <MARKUP>trptype</MARKUP>\r
+ <MARKUP>type</MARKUP>\r
+ <MARKUP>usage</MARKUP>\r
+ <MARKUP>userdata</MARKUP>\r
+ <MARKUP>userid</MARKUP>\r
+ <MARKUP>xmitq</MARKUP>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="myghty" FILE="myghty.xml"\r
+ FILE_NAME_GLOB="*.myt"/>\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT2" AT_LINE_START="TRUE">#</EOL_SPAN>\r
+ <!-- <SEQ TYPE="LITERAL4" AT_LINE_END="TRUE">\</SEQ> -->\r
+\r
+ <!-- attr block (python) -->\r
+ <SPAN DELEGATE="MYGHTY" TYPE="LITERAL4">\r
+ <BEGIN><%attr></BEGIN>\r
+ <END></%attr></END>\r
+ </SPAN>\r
+\r
+ <!-- def, closure, method -->\r
+ <SPAN_REGEXP HASH_CHAR="<%" TYPE="LITERAL4" DELEGATE="DEF">\r
+ <BEGIN><%(def|closure|method)</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="</%" TYPE="LITERAL4"></%(def|closure|method)></SEQ_REGEXP>\r
+\r
+ <!-- doc block -->\r
+ <SPAN TYPE="COMMENT4">\r
+ <BEGIN><%doc></BEGIN>\r
+ <END></%doc></END>\r
+ </SPAN>\r
+\r
+ <!-- flags block (python) -->\r
+ <SPAN DELEGATE="MYGHTY" TYPE="LITERAL4">\r
+ <BEGIN><%flags></BEGIN>\r
+ <END></%flags></END>\r
+ </SPAN>\r
+\r
+ <!-- python block -->\r
+ <SPAN_REGEXP HASH_CHAR="<%python" DELEGATE="MYGHTY" TYPE="LITERAL4">\r
+ <BEGIN><%python[^>]*></BEGIN>\r
+ <END></%python></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- python block aliases - don't take args -->\r
+ <SPAN_REGEXP HASH_CHAR="<%" DELEGATE="MYGHTY" TYPE="LITERAL4">\r
+ <BEGIN><%(args|cleanup|filter|global|init|once|requestlocal|requestonce|shared|threadlocal|threadonce)></BEGIN>\r
+ <END></%$1></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- text block -->\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN><%text></BEGIN>\r
+ <END></%text></END>\r
+ </SPAN>\r
+\r
+ <!-- calling component -->\r
+ <SEQ TYPE="LITERAL4"></&></SEQ>\r
+ <SPAN_REGEXP HASH_CHAR="<&" TYPE="LITERAL4" DELEGATE="MYGHTY">\r
+ <BEGIN><&[|]?</BEGIN>\r
+ <END>&></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- substitutions -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="MYGHTY">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN \r
+ AT_LINE_START="TRUE" \r
+ DELEGATE="MYGHTY" \r
+ TYPE="LITERAL4">%</EOL_SPAN>\r
+\r
+ <IMPORT DELEGATE="html::MAIN"/>\r
+\r
+ <KEYWORDS>\r
+ <!-- only here for complete-word -->\r
+ <NULL>args</NULL>\r
+ <NULL>attr</NULL>\r
+ <NULL>cleanup</NULL>\r
+ <NULL>closure</NULL>\r
+ <NULL>def</NULL>\r
+ <NULL>doc</NULL>\r
+ <NULL>filter</NULL>\r
+ <NULL>flags</NULL>\r
+ <NULL>global</NULL>\r
+ <NULL>init</NULL>\r
+ <NULL>method</NULL>\r
+ <NULL>once</NULL>\r
+ <NULL>python</NULL>\r
+ <NULL>requestlocal</NULL>\r
+ <NULL>requestonce</NULL>\r
+ <NULL>shared</NULL>\r
+ <NULL>threadlocal</NULL>\r
+ <NULL>threadonce</NULL>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES IGNORE_CASE="FALSE" SET="MYGHTY">\r
+ <!-- alias for MODULE -->\r
+ <SEQ TYPE="KEYWORD4">@</SEQ>\r
+ <IMPORT DELEGATE="python::MAIN"/>\r
+ <KEYWORDS>\r
+ <KEYWORD4>ARGS</KEYWORD4>\r
+ <KEYWORD4>MODULE</KEYWORD4>\r
+ <KEYWORD4>SELF</KEYWORD4>\r
+ <KEYWORD4>m</KEYWORD4>\r
+ <!-- request -->\r
+ <KEYWORD4>r</KEYWORD4>\r
+ <!-- session -->\r
+ <KEYWORD4>s</KEYWORD4>\r
+ <!-- URL encode -->\r
+ <KEYWORD4>u</KEYWORD4>\r
+ <!-- HTML encode -->\r
+ <KEYWORD4>h</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- only exists to color component name like a function -->\r
+ <RULES IGNORE_CASE="TRUE" SET="DEF" DEFAULT="FUNCTION">\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE" ESCAPE="\">\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ \r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>ALTER</KEYWORD1>\r
+ <KEYWORD1>ANALYZE</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>ASC</KEYWORD1>\r
+ <KEYWORD1>ASENSITIVE</KEYWORD1>\r
+ <KEYWORD1>BEFORE</KEYWORD1>\r
+ <KEYWORD1>BETWEEN</KEYWORD1>\r
+ <KEYWORD1>BIGINT</KEYWORD1>\r
+ <KEYWORD1>BINARY</KEYWORD1>\r
+ <KEYWORD1>BLOB</KEYWORD1>\r
+ <KEYWORD1>BOTH</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>CASCADE</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>CHANGE</KEYWORD1>\r
+ <KEYWORD1>CHAR</KEYWORD1>\r
+ <KEYWORD1>CHARACTER</KEYWORD1>\r
+ <KEYWORD1>CHECK</KEYWORD1>\r
+ <KEYWORD1>COLLATE</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ <KEYWORD1>CONDITION</KEYWORD1>\r
+ <KEYWORD1>CONNECTION</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINT</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONVERT</KEYWORD1>\r
+ <KEYWORD1>CREATE</KEYWORD1>\r
+ <KEYWORD1>CROSS</KEYWORD1>\r
+ <KEYWORD1>CURRENT_DATE</KEYWORD1>\r
+ <KEYWORD1>CURRENT_TIME</KEYWORD1>\r
+ <KEYWORD1>CURRENT_TIMESTAMP</KEYWORD1>\r
+ <KEYWORD1>CURRENT_USER</KEYWORD1>\r
+ <KEYWORD1>CURSOR</KEYWORD1>\r
+ <KEYWORD1>DATABASE</KEYWORD1>\r
+ <KEYWORD1>DATABASES</KEYWORD1>\r
+ <KEYWORD1>DAY_HOUR</KEYWORD1>\r
+ <KEYWORD1>DAY_MICROSECOND</KEYWORD1>\r
+ <KEYWORD1>DAY_MINUTE</KEYWORD1>\r
+ <KEYWORD1>DAY_SECOND</KEYWORD1>\r
+ <KEYWORD1>DEC</KEYWORD1>\r
+ <KEYWORD1>DECIMAL</KEYWORD1>\r
+ <KEYWORD1>DECLARE</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>DELAYED</KEYWORD1>\r
+ <KEYWORD1>DELETE</KEYWORD1>\r
+ <KEYWORD1>DESC</KEYWORD1>\r
+ <KEYWORD1>DESCRIBE</KEYWORD1>\r
+ <KEYWORD1>DETERMINISTIC</KEYWORD1>\r
+ <KEYWORD1>DISTINCT</KEYWORD1>\r
+ <KEYWORD1>DISTINCTROW</KEYWORD1>\r
+ <KEYWORD1>DIV</KEYWORD1>\r
+ <KEYWORD1>DOUBLE</KEYWORD1>\r
+ <KEYWORD1>DROP</KEYWORD1>\r
+ <KEYWORD1>DUAL</KEYWORD1>\r
+ <KEYWORD1>EACH</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ELSEIF</KEYWORD1>\r
+ <KEYWORD1>ENCLOSED</KEYWORD1>\r
+ <KEYWORD1>ESCAPED</KEYWORD1>\r
+ <KEYWORD1>EXISTS</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>EXPLAIN</KEYWORD1>\r
+ <KEYWORD1>FALSE</KEYWORD1>\r
+ <KEYWORD1>FETCH</KEYWORD1>\r
+ <KEYWORD1>FLOAT</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FORCE</KEYWORD1>\r
+ <KEYWORD1>FOREIGN</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FULLTEXT</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>GRANT</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>HAVING</KEYWORD1>\r
+ <KEYWORD1>HIGH_PRIORITY</KEYWORD1>\r
+ <KEYWORD1>HOUR_MICROSECOND</KEYWORD1>\r
+ <KEYWORD1>HOUR_MINUTE</KEYWORD1>\r
+ <KEYWORD1>HOUR_SECOND</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>IGNORE</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>INFILE</KEYWORD1>\r
+ <KEYWORD1>INNER</KEYWORD1>\r
+ <KEYWORD1>INOUT</KEYWORD1>\r
+ <KEYWORD1>INSENSITIVE</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INT</KEYWORD1>\r
+ <KEYWORD1>INTEGER</KEYWORD1>\r
+ <KEYWORD1>INTERVAL</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>IS</KEYWORD1>\r
+ <KEYWORD1>ITERATE</KEYWORD1>\r
+ <KEYWORD1>JOIN</KEYWORD1>\r
+ <KEYWORD1>KEY</KEYWORD1>\r
+ <KEYWORD1>KEYS</KEYWORD1>\r
+ <KEYWORD1>KILL</KEYWORD1>\r
+ <KEYWORD1>LEADING</KEYWORD1>\r
+ <KEYWORD1>LEAVE</KEYWORD1>\r
+ <KEYWORD1>LEFT</KEYWORD1>\r
+ <KEYWORD1>LIKE</KEYWORD1>\r
+ <KEYWORD1>LIMIT</KEYWORD1>\r
+ <KEYWORD1>LINES</KEYWORD1>\r
+ <KEYWORD1>LOAD</KEYWORD1>\r
+ <KEYWORD1>LOCALTIME</KEYWORD1>\r
+ <KEYWORD1>LOCALTIMESTAMP</KEYWORD1>\r
+ <KEYWORD1>LOCK</KEYWORD1>\r
+ <KEYWORD1>LONG</KEYWORD1>\r
+ <KEYWORD1>LONGBLOB</KEYWORD1>\r
+ <KEYWORD1>LONGTEXT</KEYWORD1>\r
+ <KEYWORD1>LOOP</KEYWORD1>\r
+ <KEYWORD1>LOW_PRIORITY</KEYWORD1>\r
+ <KEYWORD1>MATCH</KEYWORD1>\r
+ <KEYWORD1>MEDIUMBLOB</KEYWORD1>\r
+ <KEYWORD1>MEDIUMINT</KEYWORD1>\r
+ <KEYWORD1>MEDIUMTEXT</KEYWORD1>\r
+ <KEYWORD1>MIDDLEINT</KEYWORD1>\r
+ <KEYWORD1>MINUTE_MICROSECOND</KEYWORD1>\r
+ <KEYWORD1>MINUTE_SECOND</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>MODIFIES</KEYWORD1>\r
+ <KEYWORD1>NATURAL</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NO_WRITE_TO_BINLOG</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>NUMERIC</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>OPTIMIZE</KEYWORD1>\r
+ <KEYWORD1>OPTION</KEYWORD1>\r
+ <KEYWORD1>OPTIONALLY</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>ORDER</KEYWORD1>\r
+ <KEYWORD1>OUT</KEYWORD1>\r
+ <KEYWORD1>OUTER</KEYWORD1>\r
+ <KEYWORD1>OUTFILE</KEYWORD1>\r
+ <KEYWORD1>PRECISION</KEYWORD1>\r
+ <KEYWORD1>PRIMARY</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>PURGE</KEYWORD1>\r
+ <KEYWORD1>READ</KEYWORD1>\r
+ <KEYWORD1>READS</KEYWORD1>\r
+ <KEYWORD1>REAL</KEYWORD1>\r
+ <KEYWORD1>REFERENCES</KEYWORD1>\r
+ <KEYWORD1>REGEXP</KEYWORD1>\r
+ <KEYWORD1>RENAME</KEYWORD1>\r
+ <KEYWORD1>REPEAT</KEYWORD1>\r
+ <KEYWORD1>REPLACE</KEYWORD1>\r
+ <KEYWORD1>REQUIRE</KEYWORD1>\r
+ <KEYWORD1>RESTRICT</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>REVOKE</KEYWORD1>\r
+ <KEYWORD1>RIGHT</KEYWORD1>\r
+ <KEYWORD1>RLIKE</KEYWORD1>\r
+ <KEYWORD1>SCHEMA</KEYWORD1>\r
+ <KEYWORD1>SCHEMAS</KEYWORD1>\r
+ <KEYWORD1>SECOND_MICROSECOND</KEYWORD1>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>SENSITIVE</KEYWORD1>\r
+ <KEYWORD1>SEPARATOR</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SHOW</KEYWORD1>\r
+ <KEYWORD1>SMALLINT</KEYWORD1>\r
+ <KEYWORD1>SONAME</KEYWORD1>\r
+ <KEYWORD1>SPATIAL</KEYWORD1>\r
+ <KEYWORD1>SPECIFIC</KEYWORD1>\r
+ <KEYWORD1>SQL</KEYWORD1>\r
+ <KEYWORD1>SQLEXCEPTION</KEYWORD1>\r
+ <KEYWORD1>SQLSTATE</KEYWORD1>\r
+ <KEYWORD1>SQLWARNING</KEYWORD1>\r
+ <KEYWORD1>SQL_BIG_RESULT</KEYWORD1>\r
+ <KEYWORD1>SQL_CALC_FOUND_ROWS</KEYWORD1>\r
+ <KEYWORD1>SQL_SMALL_RESULT</KEYWORD1>\r
+ <KEYWORD1>SSL</KEYWORD1>\r
+ <KEYWORD1>STARTING</KEYWORD1>\r
+ <KEYWORD1>STRAIGHT_JOIN</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TERMINATED</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>TINYBLOB</KEYWORD1>\r
+ <KEYWORD1>TINYINT</KEYWORD1>\r
+ <KEYWORD1>TINYTEXT</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TRAILING</KEYWORD1>\r
+ <KEYWORD1>TRIGGER</KEYWORD1>\r
+ <KEYWORD1>TRUE</KEYWORD1>\r
+ <KEYWORD1>UNDO</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>UNIQUE</KEYWORD1>\r
+ <KEYWORD1>UNLOCK</KEYWORD1>\r
+ <KEYWORD1>UNSIGNED</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>USAGE</KEYWORD1>\r
+ <KEYWORD1>USE</KEYWORD1>\r
+ <KEYWORD1>USING</KEYWORD1>\r
+ <KEYWORD1>UTC_DATE</KEYWORD1>\r
+ <KEYWORD1>UTC_TIME</KEYWORD1>\r
+ <KEYWORD1>UTC_TIMESTAMP</KEYWORD1>\r
+ <KEYWORD1>VALUES</KEYWORD1>\r
+ <KEYWORD1>VARBINARY</KEYWORD1>\r
+ <KEYWORD1>VARCHAR</KEYWORD1>\r
+ <KEYWORD1>VARCHARACTER</KEYWORD1>\r
+ <KEYWORD1>VARYING</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WRITE</KEYWORD1>\r
+ <KEYWORD1>XOR</KEYWORD1>\r
+ <KEYWORD1>YEAR_MONTH</KEYWORD1>\r
+ <KEYWORD1>ZEROFILL</KEYWORD1>\r
+ \r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE="\s*(if|loop|do|else|select|otherwise|catch|finally|class|method|properties)(.*)"/>\r
+ <!-- VALUE="\s*(((if|while)\s*\(|else\s*(\{|$)|else\s+if\s*\(|case\s+.+:|default:)[^;]*|for\s*\(.*)" -->\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Documentation comment -->\r
+ <SPAN TYPE="COMMENT2" DELEGATE="java::JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <!-- workaround to stop "*" from being colorized\r
+ in import statements. -->\r
+ <SEQ TYPE="NULL">.*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <KEYWORDS>\r
+\r
+ <FUNCTION>abbrev</FUNCTION>\r
+ <FUNCTION>abs</FUNCTION>\r
+ <FUNCTION>b2x</FUNCTION>\r
+ <FUNCTION>center</FUNCTION>\r
+ <FUNCTION>centre</FUNCTION>\r
+ <FUNCTION>changestr</FUNCTION>\r
+ <FUNCTION>charAt</FUNCTION>\r
+ <FUNCTION>compare</FUNCTION>\r
+ <FUNCTION>copies</FUNCTION>\r
+ <FUNCTION>copyIndexed</FUNCTION>\r
+ <FUNCTION>countstr</FUNCTION>\r
+ <FUNCTION>c2d</FUNCTION>\r
+ <FUNCTION>c2x</FUNCTION>\r
+ <FUNCTION>datatype</FUNCTION>\r
+ <FUNCTION>delstr</FUNCTION>\r
+ <FUNCTION>delword</FUNCTION>\r
+ <FUNCTION>d2c</FUNCTION>\r
+ <FUNCTION>d2X</FUNCTION>\r
+ <FUNCTION>equals</FUNCTION>\r
+ <FUNCTION>exists</FUNCTION>\r
+ <FUNCTION>format</FUNCTION>\r
+ <FUNCTION>hashCode</FUNCTION>\r
+ <FUNCTION>insert</FUNCTION>\r
+ <FUNCTION>lastpos</FUNCTION>\r
+ <FUNCTION>left</FUNCTION>\r
+ <FUNCTION>length</FUNCTION>\r
+ <FUNCTION>lower</FUNCTION>\r
+ <FUNCTION>max</FUNCTION>\r
+ <FUNCTION>min</FUNCTION>\r
+ <FUNCTION>nop</FUNCTION>\r
+ <FUNCTION>overlay</FUNCTION>\r
+ <FUNCTION>parse</FUNCTION>\r
+ <FUNCTION>pos</FUNCTION>\r
+ <FUNCTION>reverse</FUNCTION>\r
+ <FUNCTION>right</FUNCTION>\r
+ <FUNCTION>say</FUNCTION>\r
+ <FUNCTION>sequence</FUNCTION>\r
+ <FUNCTION>sign</FUNCTION>\r
+ <FUNCTION>space</FUNCTION>\r
+ <FUNCTION>strip</FUNCTION>\r
+ <FUNCTION>substr</FUNCTION>\r
+ <FUNCTION>subword</FUNCTION>\r
+ <FUNCTION>toCharArray</FUNCTION>\r
+ <FUNCTION>toString</FUNCTION>\r
+ <FUNCTION>toboolean</FUNCTION>\r
+ <FUNCTION>tobyte</FUNCTION>\r
+ <FUNCTION>tochar</FUNCTION>\r
+ <FUNCTION>todouble</FUNCTION>\r
+ <FUNCTION>tofloat</FUNCTION>\r
+ <FUNCTION>toint</FUNCTION>\r
+ <FUNCTION>tolong</FUNCTION>\r
+ <FUNCTION>toshort</FUNCTION>\r
+ <FUNCTION>trunc</FUNCTION>\r
+ <FUNCTION>translate</FUNCTION>\r
+ <FUNCTION>upper</FUNCTION>\r
+ <FUNCTION>verify</FUNCTION>\r
+ <FUNCTION>word</FUNCTION>\r
+ <FUNCTION>wordindex</FUNCTION>\r
+ <FUNCTION>wordlength</FUNCTION>\r
+ <FUNCTION>wordpos</FUNCTION>\r
+ <FUNCTION>words</FUNCTION>\r
+ <FUNCTION>x2b</FUNCTION>\r
+ <FUNCTION>x2c</FUNCTION>\r
+ <FUNCTION>x2d</FUNCTION>\r
+\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>dependent</KEYWORD1>\r
+ <KEYWORD1>adapter</KEYWORD1>\r
+ <KEYWORD1>deprecated</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>uses</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+\r
+ <KEYWORD1>method</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>returns</KEYWORD1>\r
+ <KEYWORD1>signals</KEYWORD1>\r
+\r
+ <KEYWORD1>properties</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>inheritable</KEYWORD1>\r
+ <KEYWORD1>constant</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>volatile</KEYWORD1>\r
+ <KEYWORD1>unused</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>indirect</KEYWORD1>\r
+\r
+ <KEYWORD2>do</KEYWORD2>\r
+ <KEYWORD2>label</KEYWORD2>\r
+ <KEYWORD2>protect</KEYWORD2>\r
+ <KEYWORD2>catch</KEYWORD2>\r
+ <KEYWORD2>finally</KEYWORD2>\r
+ <KEYWORD2>end</KEYWORD2>\r
+ <KEYWORD2>signal</KEYWORD2>\r
+\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>then</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2>\r
+ <KEYWORD2>select</KEYWORD2>\r
+ <KEYWORD2>case</KEYWORD2>\r
+ <KEYWORD2>when</KEYWORD2>\r
+ <KEYWORD2>otherwise</KEYWORD2>\r
+\r
+ <KEYWORD2>loop</KEYWORD2>\r
+ <KEYWORD2>forever</KEYWORD2>\r
+ <KEYWORD2>for</KEYWORD2>\r
+ <KEYWORD2>to</KEYWORD2>\r
+ <KEYWORD2>by</KEYWORD2>\r
+ <KEYWORD2>over</KEYWORD2>\r
+ <KEYWORD2>until</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2>\r
+ <KEYWORD2>leave</KEYWORD2>\r
+ <KEYWORD2>iterate</KEYWORD2>\r
+\r
+ <KEYWORD2>return</KEYWORD2>\r
+ <KEYWORD2>exit</KEYWORD2>\r
+\r
+ <KEYWORD3>ask</KEYWORD3>\r
+ <KEYWORD3>digits</KEYWORD3>\r
+ <KEYWORD3>form</KEYWORD3>\r
+ <KEYWORD3>null</KEYWORD3>\r
+ <KEYWORD3>source</KEYWORD3>\r
+ <KEYWORD3>this</KEYWORD3>\r
+ <KEYWORD3>super</KEYWORD3>\r
+ <KEYWORD3>parent</KEYWORD3>\r
+ <KEYWORD3>sourceline</KEYWORD3>\r
+ <KEYWORD3>version</KEYWORD3>\r
+\r
+ <KEYWORD3>trace</KEYWORD3>\r
+ <KEYWORD3>var</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>results</KEYWORD3>\r
+ <KEYWORD3>off</KEYWORD3>\r
+ <KEYWORD3>methods</KEYWORD3>\r
+\r
+ <KEYWORD3>package</KEYWORD3>\r
+ <KEYWORD3>import</KEYWORD3>\r
+ <KEYWORD3>numeric</KEYWORD3>\r
+ <KEYWORD3>scientific</KEYWORD3>\r
+ <KEYWORD3>engineering</KEYWORD3>\r
+\r
+ <LITERAL2>options</LITERAL2>\r
+ <LITERAL2>comments</LITERAL2>\r
+ <LITERAL2>nocomments</LITERAL2>\r
+ <LITERAL2>keep</LITERAL2>\r
+ <LITERAL2>nokeep</LITERAL2>\r
+ <LITERAL2>compact</LITERAL2>\r
+ <LITERAL2>nocompact</LITERAL2>\r
+ <LITERAL2>console</LITERAL2>\r
+ <LITERAL2>noconsole</LITERAL2>\r
+ <LITERAL2>decimal</LITERAL2>\r
+ <LITERAL2>nodecimal</LITERAL2>\r
+ <LITERAL2>explicit</LITERAL2>\r
+ <LITERAL2>noexplicit</LITERAL2>\r
+ <LITERAL2>java</LITERAL2>\r
+ <LITERAL2>nojava</LITERAL2>\r
+ <LITERAL2>savelog</LITERAL2>\r
+ <LITERAL2>nosavelog</LITERAL2>\r
+\r
+ <LITERAL2>sourcedir</LITERAL2>\r
+ <LITERAL2>nosourcedir</LITERAL2>\r
+ <LITERAL2>symbols</LITERAL2>\r
+ <LITERAL2>nosymbols</LITERAL2>\r
+ <LITERAL2>utf8</LITERAL2>\r
+ <LITERAL2>noutf8</LITERAL2>\r
+\r
+ <LITERAL2>notrace</LITERAL2>\r
+ <LITERAL2>binary</LITERAL2>\r
+ <LITERAL2>nobinary</LITERAL2>\r
+ <LITERAL2>crossref</LITERAL2>\r
+ <LITERAL2>nocrossref</LITERAL2>\r
+ <LITERAL2>diag</LITERAL2>\r
+ <LITERAL2>nodiag</LITERAL2>\r
+ <LITERAL2>format</LITERAL2>\r
+ <LITERAL2>noformat</LITERAL2>\r
+ <LITERAL2>logo</LITERAL2>\r
+ <LITERAL2>nologo</LITERAL2>\r
+ <LITERAL2>replace</LITERAL2>\r
+ <LITERAL2>noreplace</LITERAL2>\r
+\r
+ <LITERAL2>strictassign</LITERAL2>\r
+ <LITERAL2>nostrictassign</LITERAL2>\r
+ <LITERAL2>strictcase</LITERAL2>\r
+ <LITERAL2>nostrictcase</LITERAL2>\r
+ <LITERAL2>strictargs</LITERAL2>\r
+ <LITERAL2>nostrictargs</LITERAL2>\r
+ <LITERAL2>strictimport</LITERAL2>\r
+ <LITERAL2>nostrictimport</LITERAL2>\r
+ <LITERAL2>strictsignal</LITERAL2>\r
+ <LITERAL2>nostrictsignal</LITERAL2>\r
+ <LITERAL2>strictprops</LITERAL2>\r
+ <LITERAL2>nostrictprops</LITERAL2>\r
+\r
+ <LITERAL2>verbose</LITERAL2>\r
+ <LITERAL2>noverbose</LITERAL2>\r
+ <LITERAL2>verbose0</LITERAL2>\r
+ <LITERAL2>verbose1</LITERAL2>\r
+ <LITERAL2>verbose2</LITERAL2>\r
+ <LITERAL2>verbose3</LITERAL2>\r
+ <LITERAL2>verbose4</LITERAL2>\r
+ <LITERAL2>verbose5</LITERAL2>\r
+\r
+ <LABEL>boolean</LABEL>\r
+ <LABEL>char</LABEL>\r
+ <LABEL>byte</LABEL>\r
+ <LABEL>short</LABEL>\r
+ <LABEL>int</LABEL>\r
+ <LABEL>long</LABEL>\r
+ <LABEL>float</LABEL>\r
+ <LABEL>double</LABEL>\r
+ <LABEL>Boolean</LABEL>\r
+ <LABEL>Character</LABEL>\r
+ <LABEL>Byte</LABEL>\r
+ <LABEL>Short</LABEL>\r
+ <LABEL>Integer</LABEL>\r
+ <LABEL>Long</LABEL>\r
+ <LABEL>Float</LABEL>\r
+ <LABEL>Double</LABEL>\r
+ <LABEL>BigDecimal</LABEL>\r
+ <LABEL>BigInteger</LABEL>\r
+ <LABEL>String</LABEL>\r
+ <LABEL>Rexx</LABEL>\r
+\r
+ <LABEL>StringBuffer</LABEL>\r
+ <LABEL>Object</LABEL>\r
+ <LABEL>Number</LABEL>\r
+ <LABEL>ArrayList</LABEL>\r
+ <LABEL>Calendar</LABEL>\r
+ <LABEL>Date</LABEL>\r
+ <LABEL>HashMap</LABEL>\r
+ <LABEL>HashSet</LABEL>\r
+ <LABEL>Hashtable</LABEL>\r
+ <LABEL>LinkedHashMap</LABEL>\r
+ <LABEL>LinkedHashSet</LABEL>\r
+ <LABEL>TreeMap</LABEL>\r
+ <LABEL>TreeSet</LABEL>\r
+ <LABEL>Vector</LABEL>\r
+ <LABEL>ConcurrentModificationException</LABEL>\r
+\r
+ <LABEL>BufferedInputStream</LABEL>\r
+ <LABEL>BufferedOutputStream</LABEL>\r
+ <LABEL>BufferedReader</LABEL>\r
+ <LABEL>BufferedWriter</LABEL>\r
+ <LABEL>ByteArrayInputStream</LABEL>\r
+ <LABEL>ByteArrayOutputStream</LABEL>\r
+ <LABEL>CharArrayReader</LABEL>\r
+ <LABEL>CharArrayWriter</LABEL>\r
+ <LABEL>DataInputStream</LABEL>\r
+ <LABEL>DataOutputStream</LABEL>\r
+ <LABEL>File</LABEL>\r
+ <LABEL>FileDescriptor</LABEL>\r
+ <LABEL>FileInputStream</LABEL>\r
+ <LABEL>FileOutputStream</LABEL>\r
+ <LABEL>FilePermission</LABEL>\r
+ <LABEL>FileReader</LABEL>\r
+ <LABEL>FileWriter</LABEL>\r
+ <LABEL>FilterInputStream</LABEL>\r
+ <LABEL>FilterOutputStream</LABEL>\r
+ <LABEL>FilterReader</LABEL>\r
+ <LABEL>FilterWriter</LABEL>\r
+ <LABEL>InputStream</LABEL>\r
+ <LABEL>InputStreamReader</LABEL>\r
+ <LABEL>LineNumberInputStream</LABEL>\r
+ <LABEL>LineNumberReader</LABEL>\r
+ <LABEL>ObjectInputStream</LABEL>\r
+ <LABEL>ObjectOutputStream</LABEL>\r
+ <LABEL>OutputStream</LABEL>\r
+ <LABEL>OutputStreamWriter</LABEL>\r
+ <LABEL>PipedInputStream</LABEL>\r
+ <LABEL>PipedOutputStream</LABEL>\r
+ <LABEL>PipedReader</LABEL>\r
+ <LABEL>PipedWriter</LABEL>\r
+ <LABEL>PrintStream</LABEL>\r
+ <LABEL>PrintWriter</LABEL>\r
+ <LABEL>PushbackInputStream</LABEL>\r
+ <LABEL>PushbackReader</LABEL>\r
+ <LABEL>RandomAccessFile</LABEL>\r
+ <LABEL>Reader</LABEL>\r
+ <LABEL>SequenceInputStream</LABEL>\r
+ <LABEL>StreamTokenizer</LABEL>\r
+ <LABEL>StringBufferInputStream</LABEL>\r
+ <LABEL>StringReader</LABEL>\r
+ <LABEL>StringWriter</LABEL>\r
+ <LABEL>Writer</LABEL>\r
+\r
+ <!-- Commonly used (=java.lang.* and java.io.*) Exceptions -->\r
+ <MARKUP>ArithmeticException</MARKUP>\r
+ <MARKUP>ArrayIndexOutOfBoundsException</MARKUP>\r
+ <MARKUP>ArrayStoreException</MARKUP>\r
+ <MARKUP>ClassCastException</MARKUP>\r
+ <MARKUP>ClassNotFoundException</MARKUP>\r
+ <MARKUP>CloneNotSupportedException</MARKUP>\r
+ <MARKUP>Exception</MARKUP>\r
+ <MARKUP>IllegalAccessException</MARKUP>\r
+ <MARKUP>IllegalArgumentException</MARKUP>\r
+ <MARKUP>IllegalMonitorStateException</MARKUP>\r
+ <MARKUP>IllegalStateException</MARKUP>\r
+ <MARKUP>IllegalThreadStateException</MARKUP>\r
+ <MARKUP>IndexOutOfBoundsException</MARKUP>\r
+ <MARKUP>InstantiationException</MARKUP>\r
+ <MARKUP>InterruptedException</MARKUP>\r
+ <MARKUP>NegativeArraySizeException</MARKUP>\r
+ <MARKUP>NoSuchFieldException</MARKUP>\r
+ <MARKUP>NoSuchMethodException</MARKUP>\r
+ <MARKUP>NullPointerException</MARKUP>\r
+ <MARKUP>NumberFormatException</MARKUP>\r
+ <MARKUP>RuntimeException</MARKUP>\r
+ <MARKUP>SecurityException</MARKUP>\r
+ <MARKUP>StringIndexOutOfBoundsException</MARKUP>\r
+ <MARKUP>UnsupportedOperationException</MARKUP>\r
+\r
+ <MARKUP>CharConversionException</MARKUP>\r
+ <MARKUP>EOFException</MARKUP>\r
+ <MARKUP>FileNotFoundException</MARKUP>\r
+ <MARKUP>InterruptedIOException</MARKUP>\r
+ <MARKUP>InvalidClassException</MARKUP>\r
+ <MARKUP>InvalidObjectException</MARKUP>\r
+ <MARKUP>IOException</MARKUP>\r
+ <MARKUP>NotActiveException</MARKUP>\r
+ <MARKUP>NotSerializableException</MARKUP>\r
+ <MARKUP>ObjectStreamException</MARKUP>\r
+ <MARKUP>OptionalDataException</MARKUP>\r
+ <MARKUP>StreamCorruptedException</MARKUP>\r
+ <MARKUP>SyncFailedException</MARKUP>\r
+ <MARKUP>UnsupportedEncodingException</MARKUP>\r
+ <MARKUP>UTFDataFormatException</MARKUP>\r
+ <MARKUP>WriteAbortedException</MARKUP>\r
+\r
+ <!-- all rmi functions need to signal this -->\r
+ <MARKUP>RemoteException</MARKUP>\r
+\r
+ <!-- Rexx specific Exception -->\r
+ <MARKUP>BadArgumentException</MARKUP>\r
+ <MARKUP>BadColumnException</MARKUP>\r
+ <MARKUP>BadNumericException</MARKUP>\r
+ <MARKUP>DivideException</MARKUP>\r
+ <MARKUP>ExponentOverflowException</MARKUP>\r
+ <MARKUP>NoOtherwiseException</MARKUP>\r
+ <MARKUP>NotCharacterException</MARKUP>\r
+ <MARKUP>NotLogicException</MARKUP>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- preprocessor statements -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#</EOL_SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>__event_src</KEYWORD1>\r
+ <KEYWORD1>__sensor</KEYWORD1>\r
+ <KEYWORD1>__type</KEYWORD1>\r
+ <KEYWORD1>abs</KEYWORD1>\r
+ <KEYWORD1>aquire</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>monitor</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>sign</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>sub</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>task</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD2>asm</KEYWORD2>\r
+ <KEYWORD2>inline</KEYWORD2>\r
+\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+\r
+ <LITERAL2>SENSOR_1</LITERAL2>\r
+ <LITERAL2>SENSOR_2</LITERAL2>\r
+ <LITERAL2>SENSOR_3</LITERAL2>\r
+\r
+ <LITERAL2>SENSOR_TYPE_NONE</LITERAL2>\r
+ <LITERAL2>SENSOR_TYPE_TOUCH</LITERAL2>\r
+ <LITERAL2>SENSOR_TYPE_TEMPERATURE</LITERAL2>\r
+ <LITERAL2>SENSOR_TYPE_LIGHT</LITERAL2>\r
+ <LITERAL2>SENSOR_TYPE_ROTATION</LITERAL2>\r
+\r
+ <LITERAL2>SENSOR_MODE_RAW</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_BOOL</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_EDGE</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_PULSE</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_PERCENT</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_FAHRENHEIT</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_CELSIUS</LITERAL2>\r
+ <LITERAL2>SENSOR_MODE_ROTATION</LITERAL2>\r
+\r
+ <LITERAL2>SENSOR_TOUCH</LITERAL2>\r
+ <LITERAL2>SENSOR_LIGHT</LITERAL2>\r
+ <LITERAL2>SENSOR_EDGE</LITERAL2>\r
+ <LITERAL2>SENSOR_PULSE</LITERAL2>\r
+ <LITERAL2>SENSOR_FAHRENHEIT</LITERAL2>\r
+ <LITERAL2>SENSOR_CELSIUS</LITERAL2>\r
+ <LITERAL2>SENSOR_ROTATION</LITERAL2>\r
+\r
+ <LITERAL2>OUT_A</LITERAL2>\r
+ <LITERAL2>OUT_B</LITERAL2>\r
+ <LITERAL2>OUT_C</LITERAL2>\r
+\r
+ <LITERAL2>OUT_OFF</LITERAL2>\r
+ <LITERAL2>OUT_ON</LITERAL2>\r
+ <LITERAL2>OUT_FLOAT</LITERAL2>\r
+\r
+ <LITERAL2>OUT_FWD</LITERAL2>\r
+ <LITERAL2>OUT_REV</LITERAL2>\r
+ <LITERAL2>OUT_TOOGLE</LITERAL2>\r
+\r
+ <LITERAL2>OUT_FULL</LITERAL2>\r
+ <LITERAL2>OUT_HALF</LITERAL2>\r
+ <LITERAL2>OUT_LOW</LITERAL2>\r
+\r
+ <LITERAL2>SOUND_CLICK</LITERAL2>\r
+ <LITERAL2>SOUND_DOUBLE_BEEP</LITERAL2>\r
+ <LITERAL2>SOUND_DOWN</LITERAL2>\r
+ <LITERAL2>SOUND_UP</LITERAL2>\r
+ <LITERAL2>SOUND_LOW_BEEP</LITERAL2>\r
+ <LITERAL2>SOUND_FAST_UP</LITERAL2>\r
+\r
+ <LITERAL2>DISPLAY_WATCH</LITERAL2>\r
+ <LITERAL2>DISPLAY_OUT_A</LITERAL2>\r
+ <LITERAL2>DISPLAY_OUT_B</LITERAL2>\r
+ <LITERAL2>DISPLAY_OUT_C</LITERAL2>\r
+ <LITERAL2>DISPLAY_SENSOR_1</LITERAL2>\r
+ <LITERAL2>DISPLAY_SENSOR_2</LITERAL2>\r
+ <LITERAL2>DISPLAY_SENSOR_3</LITERAL2>\r
+\r
+ <LITERAL2>TX_POWER_LO</LITERAL2>\r
+ <LITERAL2>TX_POWER_HI</LITERAL2>\r
+\r
+ <LITERAL2>SERIAL_COMM_DEFAULT</LITERAL2>\r
+ <LITERAL2>SERIAL_COMM_4800</LITERAL2>\r
+ <LITERAL2>SERIAL_COMM_DUTY25</LITERAL2>\r
+ <LITERAL2>SERIAL_COMM_76KHZ</LITERAL2>\r
+\r
+ <LITERAL2>SERIAL_PACKET_PREAMBLE</LITERAL2>\r
+ <LITERAL2>SERIAL_PACKET_DEFAULT</LITERAL2>\r
+ <LITERAL2>SERIAL_PACKET_NEGATED</LITERAL2>\r
+ <LITERAL2>SERIAL_PACKET_CHECKSUM</LITERAL2>\r
+ <LITERAL2>SERIAL_PACKET_RCX</LITERAL2>\r
+ <LITERAL2>SERIAL_PACKET_</LITERAL2>\r
+\r
+ <LITERAL2>ACQUIRE_OUT_A</LITERAL2>\r
+ <LITERAL2>ACQUIRE_OUT_B</LITERAL2>\r
+ <LITERAL2>ACQUIRE_OUT_C</LITERAL2>\r
+ <LITERAL2>ACQUIRE_SOUND</LITERAL2>\r
+ <LITERAL2>ACQUIRE_USER_1</LITERAL2>\r
+ <LITERAL2>ACQUIRE_USER_2</LITERAL2>\r
+ <LITERAL2>ACQUIRE_USER_3</LITERAL2>\r
+ <LITERAL2>ACQUIRE_USER_4</LITERAL2>\r
+\r
+ <LITERAL2>EVENT_TYPE_PRESSED</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_RELEASED</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_PULSE</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_EDGE</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_FASTCHANGE</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_LOW</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_NORMAL</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_HIGH</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_CLICK</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_DOUBLECLICK</LITERAL2>\r
+ <LITERAL2>EVENT_TYPE_MESSAGE</LITERAL2>\r
+\r
+ <LITERAL2>EVENT_1_PRESSED</LITERAL2>\r
+ <LITERAL2>EVENT_1_RELEASED</LITERAL2>\r
+ <LITERAL2>EVENT_2_PRESSED</LITERAL2>\r
+ <LITERAL2>EVENT_2_RELEASED</LITERAL2>\r
+ <LITERAL2>EVENT_LIGHT_HIGH</LITERAL2>\r
+ <LITERAL2>EVENT_LIGHT_NORMAL</LITERAL2>\r
+ <LITERAL2>EVENT_LIGHT_LOW</LITERAL2>\r
+ <LITERAL2>EVENT_LIGHT_CLICK</LITERAL2>\r
+ <LITERAL2>EVENT_LIGHT_DOUBLECLICK</LITERAL2>\r
+ <LITERAL2>EVENT_COUNTER_0</LITERAL2>\r
+ <LITERAL2>EVENT_COUNTER_1</LITERAL2>\r
+ <LITERAL2>EVENT_TIMER_0</LITERAL2>\r
+ <LITERAL2>EVENT_TIMER_1</LITERAL2>\r
+ <LITERAL2>EVENT_TIMER_2</LITERAL2>\r
+ <LITERAL2>EVENT_MESSAGE</LITERAL2>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+Nullsoft Scriptable Installation System mode by Ryan Grove 2003\r
+Updated by Uwe (donovaly@users.sourceforge.net) 2007\r
+Updated for 4.3pre9 by Alan Ezust 2007\r
+$Id: nsis2.xml 9932 2007-07-06 15:44:46Z Vampire0 $\r
+\r
+This file should be accurate as of the version of NSIS 2.25. If I've left something out, please let me know.\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*(.*:|(function\s+.*)|(section\s+.*)|(subsection\s+.*))" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" ESCAPE="$\" HIGHLIGHT_DIGITS="TRUE" DEFAULT="NULL">\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">::</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="NSIS_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="NSIS_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="NSIS_LITERAL">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <!-- Deprecated stuff -->\r
+ <INVALID>dim</INVALID>\r
+ <INVALID>uninstallexename</INVALID>\r
+\r
+ <!-- Global variables -->\r
+ <KEYWORD3>$0</KEYWORD3>\r
+ <KEYWORD3>$1</KEYWORD3>\r
+ <KEYWORD3>$2</KEYWORD3>\r
+ <KEYWORD3>$3</KEYWORD3>\r
+ <KEYWORD3>$4</KEYWORD3>\r
+ <KEYWORD3>$5</KEYWORD3>\r
+ <KEYWORD3>$6</KEYWORD3>\r
+ <KEYWORD3>$7</KEYWORD3>\r
+ <KEYWORD3>$8</KEYWORD3>\r
+ <KEYWORD3>$9</KEYWORD3>\r
+ <KEYWORD3>$INSTDIR</KEYWORD3>\r
+ <KEYWORD3>$OUTDIR</KEYWORD3>\r
+ <KEYWORD3>$CMDLINE</KEYWORD3>\r
+ <KEYWORD3>$LANGUAGE</KEYWORD3>\r
+\r
+ <!-- Local variables -->\r
+ <KEYWORD3>$R0</KEYWORD3>\r
+ <KEYWORD3>$R1</KEYWORD3>\r
+ <KEYWORD3>$R2</KEYWORD3>\r
+ <KEYWORD3>$R3</KEYWORD3>\r
+ <KEYWORD3>$R4</KEYWORD3>\r
+ <KEYWORD3>$R5</KEYWORD3>\r
+ <KEYWORD3>$R6</KEYWORD3>\r
+ <KEYWORD3>$R7</KEYWORD3>\r
+ <KEYWORD3>$R8</KEYWORD3>\r
+ <KEYWORD3>$R9</KEYWORD3>\r
+\r
+ <!-- Constants -->\r
+ <LITERAL3>ARCHIVE</LITERAL3>\r
+ <LITERAL3>CENTER</LITERAL3>\r
+ <LITERAL3>CONTROL</LITERAL3>\r
+ <LITERAL3>CUR</LITERAL3>\r
+ <LITERAL3>EXT</LITERAL3>\r
+ <LITERAL3>F1</LITERAL3>\r
+ <LITERAL3>F2</LITERAL3>\r
+ <LITERAL3>F3</LITERAL3>\r
+ <LITERAL3>F4</LITERAL3>\r
+ <LITERAL3>F5</LITERAL3>\r
+ <LITERAL3>F6</LITERAL3>\r
+ <LITERAL3>F7</LITERAL3>\r
+ <LITERAL3>F8</LITERAL3>\r
+ <LITERAL3>F9</LITERAL3>\r
+ <LITERAL3>F10</LITERAL3>\r
+ <LITERAL3>F11</LITERAL3>\r
+ <LITERAL3>F12</LITERAL3>\r
+ <LITERAL3>F13</LITERAL3>\r
+ <LITERAL3>F14</LITERAL3>\r
+ <LITERAL3>F15</LITERAL3>\r
+ <LITERAL3>F16</LITERAL3>\r
+ <LITERAL3>F17</LITERAL3>\r
+ <LITERAL3>F18</LITERAL3>\r
+ <LITERAL3>F19</LITERAL3>\r
+ <LITERAL3>F20</LITERAL3>\r
+ <LITERAL3>F21</LITERAL3>\r
+ <LITERAL3>F22</LITERAL3>\r
+ <LITERAL3>F23</LITERAL3>\r
+ <LITERAL3>F24</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_ARCHIVE</LITERAL3>\r
+ <LITERAL3>MB_ABORTRETRYIGNORE</LITERAL3>\r
+ <LITERAL3>RIGHT</LITERAL3>\r
+ <LITERAL3>RO</LITERAL3>\r
+ <LITERAL3>SET</LITERAL3>\r
+ <LITERAL3>SHIFT</LITERAL3>\r
+ <LITERAL3>SW_SHOWMAXIMIZED</LITERAL3>\r
+ <LITERAL3>SW_SHOWMINIMIZED</LITERAL3>\r
+ <LITERAL3>SW_SHOWNORMAL</LITERAL3>\r
+ <LITERAL3>a</LITERAL3>\r
+ <LITERAL3>all</LITERAL3>\r
+ <LITERAL3>alwaysoff</LITERAL3>\r
+ <LITERAL3>auto</LITERAL3>\r
+ <LITERAL3>both</LITERAL3>\r
+ <LITERAL3>bottom</LITERAL3>\r
+ <LITERAL3>bzip2</LITERAL3>\r
+ <LITERAL3>checkbox</LITERAL3>\r
+ <LITERAL3>colored</LITERAL3>\r
+ <LITERAL3>components</LITERAL3>\r
+ <LITERAL3>current</LITERAL3>\r
+ <LITERAL3>custom</LITERAL3>\r
+ <LITERAL3>directory</LITERAL3>\r
+ <LITERAL3>false</LITERAL3>\r
+ <LITERAL3>force</LITERAL3>\r
+ <LITERAL3>hide</LITERAL3>\r
+ <LITERAL3>ifnewer</LITERAL3>\r
+ <LITERAL3>instfiles</LITERAL3>\r
+ <LITERAL3>license</LITERAL3>\r
+ <LITERAL3>listonly</LITERAL3>\r
+ <LITERAL3>manual</LITERAL3>\r
+ <LITERAL3>nevershow</LITERAL3>\r
+ <LITERAL3>none</LITERAL3>\r
+ <LITERAL3>off</LITERAL3>\r
+ <LITERAL3>on</LITERAL3>\r
+ <LITERAL3>r</LITERAL3>\r
+ <LITERAL3>radiobuttons</LITERAL3>\r
+ <LITERAL3>show</LITERAL3>\r
+ <LITERAL3>silent</LITERAL3>\r
+ <LITERAL3>silentlog</LITERAL3>\r
+ <LITERAL3>smooth</LITERAL3>\r
+ <LITERAL3>textonly</LITERAL3>\r
+ <LITERAL3>top</LITERAL3>\r
+ <LITERAL3>true</LITERAL3>\r
+ <LITERAL3>try</LITERAL3>\r
+ <LITERAL3>uninstConfirm</LITERAL3>\r
+ <LITERAL3>w</LITERAL3>\r
+ <LITERAL3>zlib</LITERAL3>\r
+ <LITERAL3>$$</LITERAL3>\r
+ <LITERAL3>$DESKTOP</LITERAL3>\r
+ <LITERAL3>$EXEDIR</LITERAL3>\r
+ <LITERAL3>$HWNDPARENT</LITERAL3>\r
+ <LITERAL3>$PLUGINSDIR</LITERAL3>\r
+ <LITERAL3>$PROGRAMFILES</LITERAL3>\r
+ <LITERAL3>$QUICKLAUNCH</LITERAL3>\r
+ <LITERAL3>$SMPROGRAMS</LITERAL3>\r
+ <LITERAL3>$SMSTARTUP</LITERAL3>\r
+ <LITERAL3>$STARTMENU</LITERAL3>\r
+ <LITERAL3>$SYSDIR</LITERAL3>\r
+ <LITERAL3>$TEMP</LITERAL3>\r
+ <LITERAL3>$WINDIR</LITERAL3>\r
+ <LITERAL3>$\n</LITERAL3>\r
+ <LITERAL3>$\r</LITERAL3>\r
+ <LITERAL3>${NSISDIR}</LITERAL3>\r
+ <LITERAL3>ALT</LITERAL3>\r
+ <LITERAL3>END</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_HIDDEN</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_NORMAL</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_OFFLINE</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_READONLY</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_SYSTEM</LITERAL3>\r
+ <LITERAL3>FILE_ATTRIBUTE_TEMPORARY</LITERAL3>\r
+ <LITERAL3>HIDDEN</LITERAL3>\r
+ <LITERAL3>HKCC</LITERAL3>\r
+ <LITERAL3>HKCR</LITERAL3>\r
+ <LITERAL3>HKCU</LITERAL3>\r
+ <LITERAL3>HKDD</LITERAL3>\r
+ <LITERAL3>HKLM</LITERAL3>\r
+ <LITERAL3>HKPD</LITERAL3>\r
+ <LITERAL3>HKU</LITERAL3>\r
+ <LITERAL3>SHCTX</LITERAL3>\r
+ <LITERAL3>IDABORT</LITERAL3>\r
+ <LITERAL3>IDCANCEL</LITERAL3>\r
+ <LITERAL3>IDIGNORE</LITERAL3>\r
+ <LITERAL3>IDNO</LITERAL3>\r
+ <LITERAL3>IDOK</LITERAL3>\r
+ <LITERAL3>IDRETRY</LITERAL3>\r
+ <LITERAL3>IDYES</LITERAL3>\r
+ <LITERAL3>LEFT</LITERAL3>\r
+ <LITERAL3>MB_DEFBUTTON1</LITERAL3>\r
+ <LITERAL3>MB_DEFBUTTON2</LITERAL3>\r
+ <LITERAL3>MB_DEFBUTTON3</LITERAL3>\r
+ <LITERAL3>MB_DEFBUTTON4</LITERAL3>\r
+ <LITERAL3>MB_ICONEXCLAMATION</LITERAL3>\r
+ <LITERAL3>MB_ICONINFORMATION</LITERAL3>\r
+ <LITERAL3>MB_ICONQUESTION</LITERAL3>\r
+ <LITERAL3>MB_ICONSTOP</LITERAL3>\r
+ <LITERAL3>MB_OK</LITERAL3>\r
+ <LITERAL3>MB_OKCANCEL</LITERAL3>\r
+ <LITERAL3>MB_RETRYCANCEL</LITERAL3>\r
+ <LITERAL3>MB_RIGHT</LITERAL3>\r
+ <LITERAL3>MB_SETFOREGROUND</LITERAL3>\r
+ <LITERAL3>MB_TOPMOST</LITERAL3>\r
+ <LITERAL3>MB_YESNO</LITERAL3>\r
+ <LITERAL3>MB_YESNOCANCEL</LITERAL3>\r
+ <LITERAL3>NORMAL</LITERAL3>\r
+ <LITERAL3>OFFLINE</LITERAL3>\r
+ <LITERAL3>READONLY</LITERAL3>\r
+ <LITERAL3>SYSTEM</LITERAL3>\r
+ <LITERAL3>TEMPORARY</LITERAL3>\r
+\r
+ <!-- Command flags -->\r
+ <KEYWORD4>/0</KEYWORD4>\r
+ <KEYWORD4>/COMPONENTSONLYONCUSTOM</KEYWORD4>\r
+ <KEYWORD4>/CUSTOMSTRING</KEYWORD4>\r
+ <KEYWORD4>/FILESONLY</KEYWORD4>\r
+ <KEYWORD4>/IMGID</KEYWORD4>\r
+ <KEYWORD4>/ITALIC</KEYWORD4>\r
+ <KEYWORD4>/LANG</KEYWORD4>\r
+ <KEYWORD4>/NOCUSTOM</KEYWORD4>\r
+ <KEYWORD4>/NOUNLOAD</KEYWORD4>\r
+ <KEYWORD4>/REBOOTOK</KEYWORD4>\r
+ <KEYWORD4>/RESIZETOFIT</KEYWORD4>\r
+ <KEYWORD4>/RTL</KEYWORD4>\r
+ <KEYWORD4>/SHORT</KEYWORD4>\r
+ <KEYWORD4>/SILENT</KEYWORD4>\r
+ <KEYWORD4>/STRIKE</KEYWORD4>\r
+ <KEYWORD4>/TIMEOUT</KEYWORD4>\r
+ <KEYWORD4>/TRIM</KEYWORD4>\r
+ <KEYWORD4>/UNDERLINE</KEYWORD4>\r
+ <KEYWORD4>/a</KEYWORD4>\r
+ <KEYWORD4>/e</KEYWORD4>\r
+ <KEYWORD4>/ifempty</KEYWORD4>\r
+ <KEYWORD4>/nonfatal</KEYWORD4>\r
+ <KEYWORD4>/oname</KEYWORD4>\r
+ <KEYWORD4>/r</KEYWORD4>\r
+ <KEYWORD4>/windows</KEYWORD4>\r
+\r
+ <!-- Compiler utility commands -->\r
+ <KEYWORD2>!addincludedir</KEYWORD2>\r
+ <KEYWORD2>!addplugindir</KEYWORD2>\r
+ <KEYWORD2>!define</KEYWORD2>\r
+ <KEYWORD2>!include</KEYWORD2>\r
+ <KEYWORD2>!cd</KEYWORD2>\r
+ <KEYWORD2>!echo</KEYWORD2>\r
+ <KEYWORD2>!error</KEYWORD2>\r
+ <KEYWORD2>!insertmacro</KEYWORD2>\r
+ <KEYWORD2>!packhdr</KEYWORD2>\r
+ <KEYWORD2>!system</KEYWORD2>\r
+ <KEYWORD2>!warning</KEYWORD2>\r
+ <KEYWORD2>!undef</KEYWORD2>\r
+ <KEYWORD2>!verbose</KEYWORD2>\r
+\r
+ <!-- Conditional compilation -->\r
+ <KEYWORD1>!ifdef</KEYWORD1>\r
+ <KEYWORD1>!ifndef</KEYWORD1>\r
+ <KEYWORD1>!if</KEYWORD1>\r
+ <KEYWORD1>!else</KEYWORD1>\r
+ <KEYWORD1>!endif</KEYWORD1>\r
+ <KEYWORD1>!macro</KEYWORD1>\r
+ <KEYWORD1>!macroend</KEYWORD1>\r
+\r
+ <!-- Keywords -->\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>functionend</KEYWORD1>\r
+ <KEYWORD1>section</KEYWORD1>\r
+ <KEYWORD1>sectionend</KEYWORD1>\r
+ <KEYWORD1>subsection</KEYWORD1>\r
+ <KEYWORD1>subsectionend</KEYWORD1>\r
+\r
+ <!-- Instructions -->\r
+ <KEYWORD2>addbrandingimage</KEYWORD2>\r
+ <KEYWORD2>addsize</KEYWORD2>\r
+ <KEYWORD2>allowrootdirinstall</KEYWORD2>\r
+ <KEYWORD2>allowskipfiles</KEYWORD2>\r
+ <KEYWORD2>autoclosewindow</KEYWORD2>\r
+ <KEYWORD2>bggradient</KEYWORD2>\r
+ <KEYWORD2>brandingtext</KEYWORD2>\r
+ <KEYWORD2>bringtofront</KEYWORD2>\r
+ <KEYWORD2>callinstdll</KEYWORD2>\r
+ <KEYWORD2>caption</KEYWORD2>\r
+ <KEYWORD2>changeui</KEYWORD2>\r
+ <KEYWORD2>checkbitmap</KEYWORD2>\r
+ <KEYWORD2>completedtext</KEYWORD2>\r
+ <KEYWORD2>componenttext</KEYWORD2>\r
+ <KEYWORD2>copyfiles</KEYWORD2>\r
+ <KEYWORD2>crccheck</KEYWORD2>\r
+ <KEYWORD2>createdirectory</KEYWORD2>\r
+ <KEYWORD2>createfont</KEYWORD2>\r
+ <KEYWORD2>createshortcut</KEYWORD2>\r
+ <KEYWORD2>delete</KEYWORD2>\r
+ <KEYWORD2>deleteinisec</KEYWORD2>\r
+ <KEYWORD2>deleteinistr</KEYWORD2>\r
+ <KEYWORD2>deleteregkey</KEYWORD2>\r
+ <KEYWORD2>deleteregvalue</KEYWORD2>\r
+ <KEYWORD2>detailprint</KEYWORD2>\r
+ <KEYWORD2>detailsbuttontext</KEYWORD2>\r
+ <KEYWORD2>dirshow</KEYWORD2>\r
+ <KEYWORD2>dirtext</KEYWORD2>\r
+ <KEYWORD2>enumregkey</KEYWORD2>\r
+ <KEYWORD2>enumregvalue</KEYWORD2>\r
+ <KEYWORD2>exch</KEYWORD2>\r
+ <KEYWORD2>exec</KEYWORD2>\r
+ <KEYWORD2>execshell</KEYWORD2>\r
+ <KEYWORD2>execwait</KEYWORD2>\r
+ <KEYWORD2>expandenvstrings</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>fileclose</KEYWORD2>\r
+ <KEYWORD2>fileerrortext</KEYWORD2>\r
+ <KEYWORD2>fileopen</KEYWORD2>\r
+ <KEYWORD2>fileread</KEYWORD2>\r
+ <KEYWORD2>filereadbyte</KEYWORD2>\r
+ <KEYWORD2>fileseek</KEYWORD2>\r
+ <KEYWORD2>filewrite</KEYWORD2>\r
+ <KEYWORD2>filewritebyte</KEYWORD2>\r
+ <KEYWORD2>findclose</KEYWORD2>\r
+ <KEYWORD2>findfirst</KEYWORD2>\r
+ <KEYWORD2>findnext</KEYWORD2>\r
+ <KEYWORD2>findwindow</KEYWORD2>\r
+ <KEYWORD2>flushini</KEYWORD2>\r
+ <KEYWORD2>getcurinsttype</KEYWORD2>\r
+ <KEYWORD2>getcurrentaddress</KEYWORD2>\r
+ <KEYWORD2>getdlgitem</KEYWORD2>\r
+ <KEYWORD2>getdllversion</KEYWORD2>\r
+ <KEYWORD2>getdllversionlocal</KEYWORD2>\r
+ <KEYWORD2>getfiletime</KEYWORD2>\r
+ <KEYWORD2>getfiletimelocal</KEYWORD2>\r
+ <KEYWORD2>getfullpathname</KEYWORD2>\r
+ <KEYWORD2>getfunctionaddress</KEYWORD2>\r
+ <KEYWORD2>getlabeladdress</KEYWORD2>\r
+ <KEYWORD2>gettempfilename</KEYWORD2>\r
+ <KEYWORD2>getwindowtext</KEYWORD2>\r
+ <KEYWORD2>hidewindow</KEYWORD2>\r
+ <KEYWORD2>icon</KEYWORD2>\r
+ <KEYWORD2>initpluginsdir</KEYWORD2>\r
+ <KEYWORD2>installbuttontext</KEYWORD2>\r
+ <KEYWORD2>installcolors</KEYWORD2>\r
+ <KEYWORD2>installdir</KEYWORD2>\r
+ <KEYWORD2>installdirregkey</KEYWORD2>\r
+ <KEYWORD2>instprogressflags</KEYWORD2>\r
+ <KEYWORD2>insttype</KEYWORD2>\r
+ <KEYWORD2>insttypegettext</KEYWORD2>\r
+ <KEYWORD2>insttypesettext</KEYWORD2>\r
+ <KEYWORD2>intfmt</KEYWORD2>\r
+ <KEYWORD2>intop</KEYWORD2>\r
+ <KEYWORD2>langstring</KEYWORD2>\r
+ <KEYWORD2>langstringup</KEYWORD2>\r
+ <KEYWORD2>licensebkcolor</KEYWORD2>\r
+ <KEYWORD2>licensedata</KEYWORD2>\r
+ <KEYWORD2>licenseforceselection</KEYWORD2>\r
+ <KEYWORD2>licensetext</KEYWORD2>\r
+ <KEYWORD2>loadlanguagefile</KEYWORD2>\r
+ <KEYWORD2>loadlanguagefile</KEYWORD2>\r
+ <KEYWORD2>logset</KEYWORD2>\r
+ <KEYWORD2>logtext</KEYWORD2>\r
+ <KEYWORD2>miscbuttontext</KEYWORD2>\r
+ <KEYWORD2>name</KEYWORD2>\r
+ <KEYWORD2>nop</KEYWORD2>\r
+ <KEYWORD2>outfile</KEYWORD2>\r
+ <KEYWORD2>page</KEYWORD2>\r
+ <KEYWORD2>plugindir</KEYWORD2>\r
+ <KEYWORD2>pop</KEYWORD2>\r
+ <KEYWORD2>push</KEYWORD2>\r
+ <KEYWORD2>readenvstr</KEYWORD2>\r
+ <KEYWORD2>readinistr</KEYWORD2>\r
+ <KEYWORD2>readregdword</KEYWORD2>\r
+ <KEYWORD2>readregstr</KEYWORD2>\r
+ <KEYWORD2>regdll</KEYWORD2>\r
+ <KEYWORD2>rename</KEYWORD2>\r
+ <KEYWORD2>reservefile</KEYWORD2>\r
+ <KEYWORD2>rmdir</KEYWORD2>\r
+ <KEYWORD2>searchpath</KEYWORD2>\r
+ <KEYWORD2>sectiongetflags</KEYWORD2>\r
+ <KEYWORD2>sectiongetinsttypes</KEYWORD2>\r
+ <KEYWORD2>sectiongetsize</KEYWORD2>\r
+ <KEYWORD2>sectiongettext</KEYWORD2>\r
+ <KEYWORD2>sectionin</KEYWORD2>\r
+ <KEYWORD2>sectionsetflags</KEYWORD2>\r
+ <KEYWORD2>sectionsetinsttypes</KEYWORD2>\r
+ <KEYWORD2>sectionsetsize</KEYWORD2>\r
+ <KEYWORD2>sectionsettext</KEYWORD2>\r
+ <KEYWORD2>sendmessage</KEYWORD2>\r
+ <KEYWORD2>setautoclose</KEYWORD2>\r
+ <KEYWORD2>setbkcolor</KEYWORD2>\r
+ <KEYWORD2>setbrandingimage</KEYWORD2>\r
+ <KEYWORD2>setcompress</KEYWORD2>\r
+ <KEYWORD2>setcompressor</KEYWORD2>\r
+ <KEYWORD2>setcurinsttype</KEYWORD2>\r
+ <KEYWORD2>setdatablockoptimize</KEYWORD2>\r
+ <KEYWORD2>setdatesave</KEYWORD2>\r
+ <KEYWORD2>setdetailsprint</KEYWORD2>\r
+ <KEYWORD2>setdetailsview</KEYWORD2>\r
+ <KEYWORD2>setfileattributes</KEYWORD2>\r
+ <KEYWORD2>setfont</KEYWORD2>\r
+ <KEYWORD2>setoutpath</KEYWORD2>\r
+ <KEYWORD2>setoverwrite</KEYWORD2>\r
+ <KEYWORD2>setpluginunload</KEYWORD2>\r
+ <KEYWORD2>setrebootflag</KEYWORD2>\r
+ <KEYWORD2>setshellvarcontext</KEYWORD2>\r
+ <KEYWORD2>setstaticbkcolor</KEYWORD2>\r
+ <KEYWORD2>setwindowlong</KEYWORD2>\r
+ <KEYWORD2>showinstdetails</KEYWORD2>\r
+ <KEYWORD2>showuninstdetails</KEYWORD2>\r
+ <KEYWORD2>showwindow</KEYWORD2>\r
+ <KEYWORD2>silentinstall</KEYWORD2>\r
+ <KEYWORD2>silentuninstall</KEYWORD2>\r
+ <KEYWORD2>sleep</KEYWORD2>\r
+ <KEYWORD2>spacetexts</KEYWORD2>\r
+ <KEYWORD2>strcpy</KEYWORD2>\r
+ <KEYWORD2>strlen</KEYWORD2>\r
+ <KEYWORD2>subcaption</KEYWORD2>\r
+ <KEYWORD2>uninstallbuttontext</KEYWORD2>\r
+ <KEYWORD2>uninstallcaption</KEYWORD2>\r
+ <KEYWORD2>uninstallicon</KEYWORD2>\r
+ <KEYWORD2>uninstallsubcaption</KEYWORD2>\r
+ <KEYWORD2>uninstalltext</KEYWORD2>\r
+ <KEYWORD2>uninstpage</KEYWORD2>\r
+ <KEYWORD2>unregdll</KEYWORD2>\r
+ <KEYWORD2>var</KEYWORD2>\r
+ <KEYWORD2>viaddversionkey</KEYWORD2>\r
+ <KEYWORD2>videscription</KEYWORD2>\r
+ <KEYWORD2>vicompanyname</KEYWORD2>\r
+ <KEYWORD2>vicomments</KEYWORD2>\r
+ <KEYWORD2>vilegalcopyrights</KEYWORD2>\r
+ <KEYWORD2>vilegaltrademarks</KEYWORD2>\r
+ <KEYWORD2>viproductname</KEYWORD2>\r
+ <KEYWORD2>viproductversion</KEYWORD2>\r
+ <KEYWORD2>windowicon</KEYWORD2>\r
+ <KEYWORD2>writeinistr</KEYWORD2>\r
+ <KEYWORD2>writeregbin</KEYWORD2>\r
+ <KEYWORD2>writeregdword</KEYWORD2>\r
+ <KEYWORD2>writeregexpandstr</KEYWORD2>\r
+ <KEYWORD2>writeregstr</KEYWORD2>\r
+ <KEYWORD2>writeuninstaller</KEYWORD2>\r
+ <KEYWORD2>xpstyle</KEYWORD2>\r
+\r
+ <!-- Flow control instructions -->\r
+ <KEYWORD1>abort</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>clearerrors</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>ifabort</KEYWORD1>\r
+ <KEYWORD1>iferrors</KEYWORD1>\r
+ <KEYWORD1>iffileexists</KEYWORD1>\r
+ <KEYWORD1>ifrebootflag</KEYWORD1>\r
+ <KEYWORD1>intcmp</KEYWORD1>\r
+ <KEYWORD1>intcmpu</KEYWORD1>\r
+ <KEYWORD1>iswindow</KEYWORD1>\r
+ <KEYWORD1>messagebox</KEYWORD1>\r
+ <KEYWORD1>reboot</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>seterrors</KEYWORD1>\r
+ <KEYWORD1>strcmp</KEYWORD1>\r
+\r
+ <!-- Callback functions -->\r
+ <KEYWORD3>.onguiinit</KEYWORD3>\r
+ <KEYWORD3>.oninit</KEYWORD3>\r
+ <KEYWORD3>.oninstfailed</KEYWORD3>\r
+ <KEYWORD3>.oninstsuccess</KEYWORD3>\r
+ <KEYWORD3>.onmouseoversection</KEYWORD3>\r
+ <KEYWORD3>.onselchange</KEYWORD3>\r
+ <KEYWORD3>.onuserabort</KEYWORD3>\r
+ <KEYWORD3>.onverifyinstdir</KEYWORD3>\r
+ <KEYWORD3>un.onguiinit</KEYWORD3>\r
+ <KEYWORD3>un.oninit</KEYWORD3>\r
+ <KEYWORD3>un.onuninstfailed</KEYWORD3>\r
+ <KEYWORD3>un.onuninstsuccess</KEYWORD3>\r
+ <KEYWORD3>un.onuserabort</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="NSIS_LITERAL" DEFAULT="LITERAL1" NO_WORD_SEP="-{}_">\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Extension of c.xml to handle Objective-C keywords. -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+ <RULES\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <EOL_SPAN TYPE="KEYWORD2" AT_WHITESPACE_END="TRUE" DELEGATE="CPP">#</EOL_SPAN>\r
+\r
+ <IMPORT DELEGATE="c::LEX"/>\r
+ <IMPORT DELEGATE="c::CORE"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+ <!-- Core language -->\r
+ <RULES SET="CORE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <KEYWORDS>\r
+ <!-- Types (Objective C) -->\r
+ <KEYWORD3>id</KEYWORD3>\r
+ <KEYWORD3>Class</KEYWORD3>\r
+ <KEYWORD3>SEL</KEYWORD3>\r
+ <KEYWORD3>IMP</KEYWORD3>\r
+ <KEYWORD3>BOOL</KEYWORD3>\r
+\r
+ <!-- Keywords (Objective C) -->\r
+ <KEYWORD1>oneway</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>inout</KEYWORD1>\r
+ <KEYWORD1>bycopy</KEYWORD1>\r
+ <KEYWORD1>byref</KEYWORD1>\r
+ <KEYWORD1>self</KEYWORD1>\r
+ <KEYWORD1>super</KEYWORD1>\r
+\r
+ <!-- Preprocessor Directives (Objective C)-->\r
+ <KEYWORD1>@interface</KEYWORD1>\r
+ <KEYWORD1>@implementation</KEYWORD1>\r
+ <KEYWORD1>@protocol</KEYWORD1>\r
+ <KEYWORD1>@end</KEYWORD1>\r
+ <KEYWORD1>@private</KEYWORD1>\r
+ <KEYWORD1>@protected</KEYWORD1>\r
+ <KEYWORD1>@public</KEYWORD1>\r
+ <KEYWORD1>@class</KEYWORD1>\r
+ <KEYWORD1>@selector</KEYWORD1>\r
+ <KEYWORD1>@endcode</KEYWORD1>\r
+ <KEYWORD1>@defs</KEYWORD1>\r
+\r
+ <LITERAL2>TRUE</LITERAL2>\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <LITERAL2>YES</LITERAL2>\r
+ <LITERAL2>NO</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ <LITERAL2>nil</LITERAL2>\r
+ <LITERAL2>Nil</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Preprocessor specific rules -->\r
+ <RULES SET="CPP"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+\r
+ <EOL_SPAN_REGEXP HASH_CHAR="include" TYPE="MARKUP" DELEGATE="c::INCLUDE">include\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="import" TYPE="MARKUP" DELEGATE="c::INCLUDE">import\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="define" TYPE="MARKUP" DELEGATE="DEFINE">define\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="endif" TYPE="MARKUP" DELEGATE="c::LEX">endif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="elif" TYPE="MARKUP" DELEGATE="c::CONDITION">elif\b</EOL_SPAN_REGEXP>\r
+ <EOL_SPAN_REGEXP HASH_CHAR="if" TYPE="MARKUP" DELEGATE="c::CONDITION">if\b</EOL_SPAN_REGEXP>\r
+\r
+ <IMPORT DELEGATE="LEX"/>\r
+\r
+ <!-- Directives -->\r
+ <KEYWORDS>\r
+ <MARKUP>ifdef</MARKUP>\r
+ <MARKUP>ifndef</MARKUP>\r
+ <MARKUP>else</MARKUP>\r
+ <MARKUP>error</MARKUP>\r
+ <MARKUP>line</MARKUP>\r
+ <MARKUP>pragma</MARKUP>\r
+ <MARKUP>undef</MARKUP>\r
+ <MARKUP>warning</MARKUP>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- After #define directive -->\r
+ <!-- Almost same as the normal code,\r
+ except two additional operators # and ##. -->\r
+ <RULES SET="DEFINE"\r
+ ESCAPE="\" IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[0-9][0-9a-zA-Z]*">\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <IMPORT DELEGATE="c::LEX"/>\r
+ <IMPORT DELEGATE="c::CORE"/>\r
+ <IMPORT DELEGATE="CORE"/>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE="\s*(if|loop|do|else|select|otherwise|catch|finally|class|method|properties)(.*)"/>\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- preprocessor statements -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#</EOL_SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION">::</MARK_PREVIOUS>\r
+\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>Address</KEYWORD1>\r
+ <KEYWORD1>Arg</KEYWORD1>\r
+ <KEYWORD1>Call</KEYWORD1>\r
+ <KEYWORD1>Do</KEYWORD1>\r
+ <KEYWORD1>Drop</KEYWORD1>\r
+ <KEYWORD1>Exit</KEYWORD1>\r
+ <KEYWORD1>Expose</KEYWORD1>\r
+ <KEYWORD1>Forward</KEYWORD1>\r
+ <KEYWORD1>Guard</KEYWORD1>\r
+ <KEYWORD1>If</KEYWORD1>\r
+ <KEYWORD1>Interpret</KEYWORD1>\r
+ <KEYWORD1>Iterate</KEYWORD1>\r
+ <KEYWORD1>Leave</KEYWORD1>\r
+ <KEYWORD1>Nop</KEYWORD1>\r
+ <KEYWORD1>Numeric</KEYWORD1>\r
+ <KEYWORD1>Parse</KEYWORD1>\r
+ <KEYWORD1>Procedure</KEYWORD1>\r
+ <KEYWORD1>pull</KEYWORD1>\r
+ <KEYWORD1>Push</KEYWORD1>\r
+ <KEYWORD1>Queue</KEYWORD1>\r
+ <KEYWORD1>Raise</KEYWORD1>\r
+ <KEYWORD1>reply</KEYWORD1>\r
+ <KEYWORD1>Return</KEYWORD1>\r
+ <KEYWORD1>Say</KEYWORD1>\r
+ <KEYWORD1>Seleect</KEYWORD1>\r
+ <KEYWORD1>Signal</KEYWORD1>\r
+ <KEYWORD1>Trace</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>Class</KEYWORD1>\r
+ <KEYWORD1>Method</KEYWORD1>\r
+ <KEYWORD1>Requires</KEYWORD1>\r
+ <KEYWORD1>Routine</KEYWORD1>\r
+ <KEYWORD1>Result</KEYWORD1>\r
+ <KEYWORD1>RC</KEYWORD1>\r
+ <KEYWORD1>Self</KEYWORD1>\r
+ <KEYWORD1>Sigl</KEYWORD1>\r
+ <KEYWORD1>Super</KEYWORD1>\r
+ <KEYWORD2>Abbrev</KEYWORD2>\r
+ <KEYWORD2>Abs</KEYWORD2>\r
+ <KEYWORD2>Address</KEYWORD2>\r
+ <KEYWORD2>Arg</KEYWORD2>\r
+ <KEYWORD2>Beep</KEYWORD2>\r
+ <KEYWORD2>BitAnd</KEYWORD2>\r
+ <KEYWORD2>BitOr</KEYWORD2>\r
+ <KEYWORD2>BitXor</KEYWORD2>\r
+ <KEYWORD2>B2X</KEYWORD2>\r
+ <KEYWORD2>Center</KEYWORD2>\r
+ <KEYWORD2>ChangeStr</KEYWORD2>\r
+ <KEYWORD2>CharIn</KEYWORD2>\r
+ <KEYWORD2>CharOut</KEYWORD2>\r
+ <KEYWORD2>Chars</KEYWORD2>\r
+ <KEYWORD2>Compare</KEYWORD2>\r
+ <KEYWORD2>Consition</KEYWORD2>\r
+ <KEYWORD2>Copies</KEYWORD2>\r
+ <KEYWORD2>CountStr</KEYWORD2>\r
+ <KEYWORD2>C2D</KEYWORD2>\r
+ <KEYWORD2>C2X</KEYWORD2>\r
+ <KEYWORD2>DataType</KEYWORD2>\r
+ <KEYWORD2>Date</KEYWORD2>\r
+ <KEYWORD2>DelStr</KEYWORD2>\r
+ <KEYWORD2>DelWord</KEYWORD2>\r
+ <KEYWORD2>Digits</KEYWORD2>\r
+ <KEYWORD2>Directory</KEYWORD2>\r
+ <KEYWORD2>D2C</KEYWORD2>\r
+ <KEYWORD2>D2X</KEYWORD2>\r
+ <KEYWORD2>ErrorText</KEYWORD2>\r
+ <KEYWORD2>FileSpec</KEYWORD2>\r
+ <KEYWORD2>Form</KEYWORD2>\r
+ <KEYWORD2>Format</KEYWORD2>\r
+ <KEYWORD2>Fuzz</KEYWORD2>\r
+ <KEYWORD2>Insert</KEYWORD2>\r
+ <KEYWORD2>LastPos</KEYWORD2>\r
+ <KEYWORD2>Left</KEYWORD2>\r
+ <KEYWORD2>Length</KEYWORD2>\r
+ <KEYWORD2>LineIn</KEYWORD2>\r
+ <KEYWORD2>LineOut</KEYWORD2>\r
+ <KEYWORD2>Lines</KEYWORD2>\r
+ <KEYWORD2>Max</KEYWORD2>\r
+ <KEYWORD2>Min</KEYWORD2>\r
+ <KEYWORD2>Overlay</KEYWORD2>\r
+ <KEYWORD2>Pos</KEYWORD2>\r
+ <KEYWORD2>Queued</KEYWORD2>\r
+ <KEYWORD2>Random</KEYWORD2>\r
+ <KEYWORD2>Reverse</KEYWORD2>\r
+ <KEYWORD2>Right</KEYWORD2>\r
+ <KEYWORD2>Sign</KEYWORD2>\r
+ <KEYWORD2>SourceLine</KEYWORD2>\r
+ <KEYWORD2>Space</KEYWORD2>\r
+ <KEYWORD2>Stream</KEYWORD2>\r
+ <KEYWORD2>Strip</KEYWORD2>\r
+ <KEYWORD2>SubStr</KEYWORD2>\r
+ <KEYWORD2>SubWord</KEYWORD2>\r
+ <KEYWORD2>Symbol</KEYWORD2>\r
+ <KEYWORD2>Time</KEYWORD2>\r
+ <KEYWORD2>Trace</KEYWORD2>\r
+ <KEYWORD2>Translate</KEYWORD2>\r
+ <KEYWORD2>Trunc</KEYWORD2>\r
+ <KEYWORD2>Value</KEYWORD2>\r
+ <KEYWORD2>Var</KEYWORD2>\r
+ <KEYWORD2>Verify</KEYWORD2>\r
+ <KEYWORD2>Word</KEYWORD2>\r
+ <KEYWORD2>WordIndex</KEYWORD2>\r
+ <KEYWORD2>WordLength</KEYWORD2>\r
+ <KEYWORD2>WordPos</KEYWORD2>\r
+ <KEYWORD2>Words</KEYWORD2>\r
+ <KEYWORD2>XRange</KEYWORD2>\r
+ <KEYWORD2>X2B</KEYWORD2>\r
+ <KEYWORD2>X2C</KEYWORD2>\r
+ <KEYWORD2>X2D</KEYWORD2>\r
+ <KEYWORD2>RxFuncAdd</KEYWORD2>\r
+ <KEYWORD2>RxFuncDrop</KEYWORD2>\r
+ <KEYWORD2>RxFuncQuery</KEYWORD2>\r
+ <KEYWORD2>RxMessageBox</KEYWORD2>\r
+ <KEYWORD2>RxWinExec</KEYWORD2>\r
+ <KEYWORD2>SysAddRexxMacro</KEYWORD2>\r
+ <KEYWORD2>SysBootDrive</KEYWORD2>\r
+ <KEYWORD2>SysClearRexxMacroSpace</KEYWORD2>\r
+ <KEYWORD2>SysCloseEventSem</KEYWORD2>\r
+ <KEYWORD2>SysCloseMutexSem</KEYWORD2>\r
+ <KEYWORD2>SysCls</KEYWORD2>\r
+ <KEYWORD2>SysCreateEventSem</KEYWORD2>\r
+ <KEYWORD2>SysCreateMutexSem</KEYWORD2>\r
+ <KEYWORD2>SysCurPos</KEYWORD2>\r
+ <KEYWORD2>SysCurState</KEYWORD2>\r
+ <KEYWORD2>SysDriveInfo</KEYWORD2>\r
+ <KEYWORD2>SysDriveMap</KEYWORD2>\r
+ <KEYWORD2>SysDropFuncs</KEYWORD2>\r
+ <KEYWORD2>SysDropRexxMacro</KEYWORD2>\r
+ <KEYWORD2>SysDumpVariables</KEYWORD2>\r
+ <KEYWORD2>SysFileDelete</KEYWORD2>\r
+ <KEYWORD2>SysFileSearch</KEYWORD2>\r
+ <KEYWORD2>SysFileSystemType</KEYWORD2>\r
+ <KEYWORD2>SysFileTree</KEYWORD2>\r
+ <KEYWORD2>SysFromUnicode</KEYWORD2>\r
+ <KEYWORD2>SysToUnicode</KEYWORD2>\r
+ <KEYWORD2>SysGetErrortext</KEYWORD2>\r
+ <KEYWORD2>SysGetFileDateTime</KEYWORD2>\r
+ <KEYWORD2>SysGetKey</KEYWORD2>\r
+ <KEYWORD2>SysIni</KEYWORD2>\r
+ <KEYWORD2>SysLoadFuncs</KEYWORD2>\r
+ <KEYWORD2>SysLoadRexxMacroSpace</KEYWORD2>\r
+ <KEYWORD2>SysMkDir</KEYWORD2>\r
+ <KEYWORD2>SysOpenEventSem</KEYWORD2>\r
+ <KEYWORD2>SysOpenMutexSem</KEYWORD2>\r
+ <KEYWORD2>SysPostEventSem</KEYWORD2>\r
+ <KEYWORD2>SysPulseEventSem</KEYWORD2>\r
+ <KEYWORD2>SysQueryProcess</KEYWORD2>\r
+ <KEYWORD2>SysQueryRexxMacro</KEYWORD2>\r
+ <KEYWORD2>SysReleaseMutexSem</KEYWORD2>\r
+ <KEYWORD2>SysReorderRexxMacro</KEYWORD2>\r
+ <KEYWORD2>SysRequestMutexSem</KEYWORD2>\r
+ <KEYWORD2>SysResetEventSem</KEYWORD2>\r
+ <KEYWORD2>SysRmDir</KEYWORD2>\r
+ <KEYWORD2>SysSaveRexxMacroSpace</KEYWORD2>\r
+ <KEYWORD2>SysSearchPath</KEYWORD2>\r
+ <KEYWORD2>SysSetFileDateTime</KEYWORD2>\r
+ <KEYWORD2>SysSetPriority</KEYWORD2>\r
+ <KEYWORD2>SysSleep</KEYWORD2>\r
+ <KEYWORD2>SysStemCopy</KEYWORD2>\r
+ <KEYWORD2>SysStemDelete</KEYWORD2>\r
+ <KEYWORD2>SysStemInsert</KEYWORD2>\r
+ <KEYWORD2>SysStemSort</KEYWORD2>\r
+ <KEYWORD2>SysSwitchSession</KEYWORD2>\r
+ <KEYWORD2>SysSystemDirectory</KEYWORD2>\r
+ <KEYWORD2>SysTempFileName</KEYWORD2>\r
+ <KEYWORD2>SysTextScreenRead</KEYWORD2>\r
+ <KEYWORD2>SysTextScreenSize</KEYWORD2>\r
+ <KEYWORD2>SysUtilVersion</KEYWORD2>\r
+ <KEYWORD2>SysVersion</KEYWORD2>\r
+ <KEYWORD2>SysVolumeLabel</KEYWORD2>\r
+ <KEYWORD2>SysWaitEventSem</KEYWORD2>\r
+ <KEYWORD2>SysWaitNamedPipe</KEYWORD2>\r
+ <KEYWORD2>SysWinDecryptFile</KEYWORD2>\r
+ <KEYWORD2>SysWinEncryptFile</KEYWORD2>\r
+ <KEYWORD2>SysWinVer</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Occam mode by Rick Beton. -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="" />\r
+ <PROPERTY NAME="blockComment" VALUE="" />\r
+ <PROPERTY NAME="noWordSep" VALUE="." />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <!-- Normal comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <!-- Compiler directives. -->\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+ <SEQ TYPE="OPERATOR"><<</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">/\</SEQ>\r
+ <SEQ TYPE="OPERATOR">\/</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Structure keywords -->\r
+ <KEYWORD1>ALT</KEYWORD1>\r
+ <KEYWORD1>ASM</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>INLINE</KEYWORD1>\r
+ <KEYWORD1>PAR</KEYWORD1>\r
+ <KEYWORD1>PLACED</KEYWORD1>\r
+ <KEYWORD1>PRI</KEYWORD1>\r
+ <KEYWORD1>PROC</KEYWORD1>\r
+ <KEYWORD1>RESULT</KEYWORD1>\r
+ <KEYWORD1>SEQ</KEYWORD1>\r
+ <KEYWORD1>VALOF</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ \r
+ <!-- main keywords -->\r
+ <KEYWORD2>AT</KEYWORD2>\r
+ <KEYWORD2>ELSE</KEYWORD2>\r
+ <KEYWORD2>FOR</KEYWORD2>\r
+ <KEYWORD2>FROM</KEYWORD2>\r
+ <KEYWORD2>IS</KEYWORD2>\r
+ <KEYWORD2>PLACE</KEYWORD2>\r
+ <KEYWORD2>PORT</KEYWORD2>\r
+ <KEYWORD2>PROTOCOL</KEYWORD2>\r
+ <KEYWORD2>SKIP</KEYWORD2>\r
+ <KEYWORD2>STOP</KEYWORD2>\r
+ <KEYWORD2>VAL</KEYWORD2>\r
+\r
+ <!-- type and conversion keywords -->\r
+ <KEYWORD2>AFTER</KEYWORD2>\r
+ <KEYWORD2>AND</KEYWORD2>\r
+ <KEYWORD2>ANY</KEYWORD2>\r
+ <KEYWORD2>BITAND</KEYWORD2>\r
+ <KEYWORD2>BITNOT</KEYWORD2>\r
+ <KEYWORD2>BITOR</KEYWORD2>\r
+ <KEYWORD2>BOOL</KEYWORD2>\r
+ <KEYWORD2>BYTE</KEYWORD2>\r
+ <KEYWORD2>BYTESIN</KEYWORD2>\r
+ <KEYWORD2>CHAN</KEYWORD2>\r
+ <KEYWORD2>DATA</KEYWORD2>\r
+ <KEYWORD2>INT</KEYWORD2>\r
+ <KEYWORD2>INT32</KEYWORD2>\r
+ <KEYWORD2>INT16</KEYWORD2>\r
+ <KEYWORD2>INT64</KEYWORD2>\r
+ <KEYWORD2>MINUS</KEYWORD2>\r
+ <KEYWORD2>MOSTNEG</KEYWORD2>\r
+ <KEYWORD2>MOSTPOS</KEYWORD2>\r
+ <KEYWORD2>NOT</KEYWORD2>\r
+ <KEYWORD2>PLUS</KEYWORD2>\r
+ <KEYWORD2>OF</KEYWORD2>\r
+ <KEYWORD2>OFFSETOF</KEYWORD2>\r
+ <KEYWORD2>OR</KEYWORD2>\r
+ <KEYWORD2>PACKED</KEYWORD2>\r
+ <KEYWORD2>REAL32</KEYWORD2>\r
+ <KEYWORD2>REAL64</KEYWORD2>\r
+ <KEYWORD2>RECORD</KEYWORD2>\r
+ <KEYWORD2>REM</KEYWORD2>\r
+ <KEYWORD2>RESHAPES</KEYWORD2>\r
+ <KEYWORD2>RETYPES</KEYWORD2>\r
+ <KEYWORD2>ROUND</KEYWORD2>\r
+ <KEYWORD2>SIZE</KEYWORD2>\r
+ <KEYWORD2>TIMER</KEYWORD2>\r
+ <KEYWORD2>TIMES</KEYWORD2>\r
+ <KEYWORD2>TRUNC</KEYWORD2>\r
+ <KEYWORD2>TYPE</KEYWORD2>\r
+\r
+ <!-- Occam3 and extensions to occam2.1 -->\r
+ <KEYWORD2>BUCKET</KEYWORD2>\r
+ <KEYWORD2>CLAIM</KEYWORD2>\r
+ <KEYWORD2>ENROLL</KEYWORD2>\r
+ <KEYWORD2>EVENT</KEYWORD2>\r
+ <KEYWORD2>FALL</KEYWORD2>\r
+ <KEYWORD2>FLUSH</KEYWORD2>\r
+ <KEYWORD2>GRANT</KEYWORD2>\r
+ <KEYWORD2>INITIAL</KEYWORD2>\r
+ <KEYWORD2>RESOURCE</KEYWORD2>\r
+ <KEYWORD2>SEMAPHORE</KEYWORD2>\r
+ <KEYWORD2>SHARED</KEYWORD2>\r
+ <KEYWORD2>SYNC</KEYWORD2>\r
+ \r
+ <!-- arithmetic & trigonometric functions -->\r
+ <KEYWORD3>LONGADD</KEYWORD3>\r
+ <KEYWORD3>LONGSUB</KEYWORD3>\r
+ <KEYWORD3>ASHIFTRIGHT</KEYWORD3>\r
+ <KEYWORD3>ASHIFTLEFT</KEYWORD3>\r
+ <KEYWORD3>ROTATERIGHT</KEYWORD3>\r
+ <KEYWORD3>ROTATELEFT</KEYWORD3>\r
+ <KEYWORD3>LONGSUM</KEYWORD3>\r
+ <KEYWORD3>LONGDIFF</KEYWORD3>\r
+ <KEYWORD3>LONGPROD</KEYWORD3>\r
+ <KEYWORD3>LONGDIV</KEYWORD3>\r
+ <KEYWORD3>SHIFTLEFT</KEYWORD3>\r
+ <KEYWORD3>SHIFTRIGHT</KEYWORD3>\r
+ <KEYWORD3>NORMALISE</KEYWORD3>\r
+ <KEYWORD3>ABS</KEYWORD3>\r
+ <KEYWORD3>DABS</KEYWORD3>\r
+ <KEYWORD3>SCALEB</KEYWORD3>\r
+ <KEYWORD3>DSCALEB</KEYWORD3>\r
+ <KEYWORD3>COPYSIGN</KEYWORD3>\r
+ <KEYWORD3>DCOPYSIGN</KEYWORD3>\r
+ <KEYWORD3>SQRT</KEYWORD3>\r
+ <KEYWORD3>DSQRT</KEYWORD3>\r
+ <KEYWORD3>MINUSX</KEYWORD3>\r
+ <KEYWORD3>DMINUSX</KEYWORD3>\r
+ <KEYWORD3>NEXTAFTER</KEYWORD3>\r
+ <KEYWORD3>DNEXTAFTER</KEYWORD3>\r
+ <KEYWORD3>MULBY2</KEYWORD3>\r
+ <KEYWORD3>DMULBY2</KEYWORD3>\r
+ <KEYWORD3>DIVBY2</KEYWORD3>\r
+ <KEYWORD3>DDIVBY2</KEYWORD3>\r
+ <KEYWORD3>LOGB</KEYWORD3>\r
+ <KEYWORD3>DLOGB</KEYWORD3>\r
+ <KEYWORD3>ISNAN</KEYWORD3>\r
+ <KEYWORD3>DISNAN</KEYWORD3>\r
+ <KEYWORD3>NOTFINITE</KEYWORD3>\r
+ <KEYWORD3>DNOTFINITE</KEYWORD3>\r
+ <KEYWORD3>ORDERED</KEYWORD3>\r
+ <KEYWORD3>DORDERED</KEYWORD3>\r
+ <KEYWORD3>FLOATING.UNPACK</KEYWORD3>\r
+ <KEYWORD3>DFLOATING.UNPACK</KEYWORD3>\r
+ <KEYWORD3>ARGUMENT.REDUCE</KEYWORD3>\r
+ <KEYWORD3>DARGUMENT.REDUCE</KEYWORD3>\r
+ <KEYWORD3>FPINT</KEYWORD3>\r
+ <KEYWORD3>DFPINT</KEYWORD3>\r
+ <KEYWORD3>REAL32OP</KEYWORD3>\r
+ <KEYWORD3>REAL64OP</KEYWORD3>\r
+ <KEYWORD3>IEEE32OP</KEYWORD3>\r
+ <KEYWORD3>IEEE64OP</KEYWORD3>\r
+ <KEYWORD3>REAL32REM</KEYWORD3>\r
+ <KEYWORD3>REAL64REM</KEYWORD3>\r
+ <KEYWORD3>IEEE32REM</KEYWORD3>\r
+ <KEYWORD3>IEEE64REM</KEYWORD3>\r
+ <KEYWORD3>REAL32EQ</KEYWORD3>\r
+ <KEYWORD3>REAL64EQ</KEYWORD3>\r
+ <KEYWORD3>REAL32GT</KEYWORD3>\r
+ <KEYWORD3>REAL64GT</KEYWORD3>\r
+ <KEYWORD3>IEEECOMPARE</KEYWORD3>\r
+ <KEYWORD3>DIEEECOMPARE</KEYWORD3>\r
+ <KEYWORD3>ALOG</KEYWORD3>\r
+ <KEYWORD3>DALOG</KEYWORD3>\r
+ <KEYWORD3>ALOG10</KEYWORD3>\r
+ <KEYWORD3>DALOG10</KEYWORD3>\r
+ <KEYWORD3>EXP</KEYWORD3>\r
+ <KEYWORD3>DEXP</KEYWORD3>\r
+ <KEYWORD3>TAN</KEYWORD3>\r
+ <KEYWORD3>DTAN</KEYWORD3>\r
+ <KEYWORD3>SIN</KEYWORD3>\r
+ <KEYWORD3>DSIN</KEYWORD3>\r
+ <KEYWORD3>ASIN</KEYWORD3>\r
+ <KEYWORD3>DASIN</KEYWORD3>\r
+ <KEYWORD3>COS</KEYWORD3>\r
+ <KEYWORD3>DCOS</KEYWORD3>\r
+ <KEYWORD3>SINH</KEYWORD3>\r
+ <KEYWORD3>DSINH</KEYWORD3>\r
+ <KEYWORD3>COSH</KEYWORD3>\r
+ <KEYWORD3>DCOSH</KEYWORD3>\r
+ <KEYWORD3>TANH</KEYWORD3>\r
+ <KEYWORD3>DTANH</KEYWORD3>\r
+ <KEYWORD3>ATAN</KEYWORD3>\r
+ <KEYWORD3>DATAN</KEYWORD3>\r
+ <KEYWORD3>ATAN2</KEYWORD3>\r
+ <KEYWORD3>DATAN2</KEYWORD3>\r
+ <KEYWORD3>RAN</KEYWORD3>\r
+ <KEYWORD3>DRAN</KEYWORD3>\r
+ <KEYWORD3>POWER</KEYWORD3>\r
+ <KEYWORD3>DPOWER</KEYWORD3>\r
+\r
+ <!-- basic data conversion functions -->\r
+ <KEYWORD3>INTTOSTRING</KEYWORD3>\r
+ <KEYWORD3>INT16TOSTRING</KEYWORD3>\r
+ <KEYWORD3>INT32TOSTRING</KEYWORD3>\r
+ <KEYWORD3>INT64TOSTRING</KEYWORD3>\r
+ <KEYWORD3>STRINGTOINT</KEYWORD3>\r
+ <KEYWORD3>STRINGTOINT16</KEYWORD3>\r
+ <KEYWORD3>STRINGTOINT32</KEYWORD3>\r
+ <KEYWORD3>STRINGTOINT64</KEYWORD3>\r
+ <KEYWORD3>HEXTOSTRING</KEYWORD3>\r
+ <KEYWORD3>HEX16TOSTRING</KEYWORD3>\r
+ <KEYWORD3>HEX32TOSTRING</KEYWORD3>\r
+ <KEYWORD3>HEX64TOSTRING</KEYWORD3>\r
+ <KEYWORD3>STRINGTOHEX</KEYWORD3>\r
+ <KEYWORD3>STRINGTOHEX16</KEYWORD3>\r
+ <KEYWORD3>STRINGTOHEX32</KEYWORD3>\r
+ <KEYWORD3>STRINGTOHEX64</KEYWORD3>\r
+ <KEYWORD3>STRINGTOREAL32</KEYWORD3>\r
+ <KEYWORD3>STRINGTOREAL64</KEYWORD3>\r
+ <KEYWORD3>REAL32TOSTRING</KEYWORD3>\r
+ <KEYWORD3>REAL64TOSTRING</KEYWORD3>\r
+ <KEYWORD3>STRINGTOBOOL</KEYWORD3>\r
+ <KEYWORD3>BOOLTOSTRING</KEYWORD3>\r
+ <KEYWORD3>RESCHEDULE</KEYWORD3>\r
+ <KEYWORD3>ASSERT</KEYWORD3>\r
+\r
+ <!-- preprocessor directives\r
+ #INCLUDE\r
+ #USE\r
+ #OPTION\r
+ #PRAGMA\r
+ #COMMENT\r
+ -->\r
+\r
+ <LITERAL2>FALSE</LITERAL2>\r
+ <LITERAL2>TRUE</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- contributed by Lionel Fiol <lio-sand@ifrance.com> -->\r
+<!-- 09/NOV/2001: add automatic indentation properties -->\r
+<!-- correct and add some keywords -->\r
+<!-- reorganize all keywords (sorted) -->\r
+<!-- 20/APR/2004: all keywords are now in lower case -->\r
+<!-- 06/MAY/2004: add specific patterns for invalid literals -->\r
+<!-- 06/JUN/2004: add '.' (dot) in the noWordSep property -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*((PROCESS|MARKUP|EXTERNAL|DOCUMENT|DTD|ELEMENT|FIND|TRANSLATE)((-|\s).*|\s*)|(DO|ELSE|REPEAT|MATCH|CASE|USING|GROUP|DEFINE|MACRO)(\s+.*|\s*))" />\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ <PROPERTY NAME="noWordSep" VALUE=".-_" />\r
+ </PROPS>\r
+ <RULES ESCAPE="%" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#!</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+ <!-- Literals -->\r
+ <SPAN_REGEXP HASH_CHAR='"' NO_LINE_BREAK="TRUE" TYPE="INVALID">\r
+ <BEGIN>"((?!$)[^"])*$</BEGIN>\r
+ <END>$</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN_REGEXP HASH_CHAR="'" NO_LINE_BREAK="TRUE" TYPE="INVALID">\r
+ <BEGIN>'((?!$)[^'])*$</BEGIN>\r
+ <END>$</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <!-- two next lines were removed as they conflict with the noWordSep property -->\r
+ <!-- <SEQ TYPE="OPERATOR">-</SEQ> -->\r
+ <!-- <SEQ TYPE="OPERATOR">_</SEQ> -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <!-- Keywords -->\r
+ <KEYWORDS>\r
+ <KEYWORD2>#additional-info</KEYWORD2>\r
+ <KEYWORD2>#appinfo</KEYWORD2>\r
+ <KEYWORD2>#args</KEYWORD2>\r
+ <KEYWORD2>#capacity</KEYWORD2>\r
+ <KEYWORD2>#charset</KEYWORD2>\r
+ <KEYWORD2>#class</KEYWORD2>\r
+ <KEYWORD2>#command-line-names</KEYWORD2>\r
+ <KEYWORD2>#console</KEYWORD2>\r
+ <KEYWORD2>#current-input</KEYWORD2>\r
+ <KEYWORD2>#current-output</KEYWORD2>\r
+ <KEYWORD2>#data</KEYWORD2>\r
+ <KEYWORD2>#doctype</KEYWORD2>\r
+ <KEYWORD2>#document</KEYWORD2>\r
+ <KEYWORD2>#dtd</KEYWORD2>\r
+ <KEYWORD2>#empty</KEYWORD2>\r
+ <KEYWORD2>#error</KEYWORD2>\r
+ <KEYWORD2>#error-code</KEYWORD2>\r
+ <KEYWORD2>#external-exception</KEYWORD2>\r
+ <KEYWORD2>#file-name</KEYWORD2>\r
+ <KEYWORD2>#first</KEYWORD2>\r
+ <KEYWORD2>#group</KEYWORD2>\r
+ <KEYWORD2>#implied</KEYWORD2>\r
+ <KEYWORD2>#item</KEYWORD2>\r
+ <KEYWORD2>#language-version</KEYWORD2>\r
+ <KEYWORD2>#last</KEYWORD2>\r
+ <KEYWORD2>#libpath</KEYWORD2>\r
+ <KEYWORD2>#library</KEYWORD2>\r
+ <KEYWORD2>#libvalue</KEYWORD2>\r
+ <KEYWORD2>#line-number</KEYWORD2>\r
+ <KEYWORD2>#main-input</KEYWORD2>\r
+ <KEYWORD2>#main-output</KEYWORD2>\r
+ <KEYWORD2>#markup-error-count</KEYWORD2>\r
+ <KEYWORD2>#markup-error-total</KEYWORD2>\r
+ <KEYWORD2>#markup-parser</KEYWORD2>\r
+ <KEYWORD2>#markup-warning-count</KEYWORD2>\r
+ <KEYWORD2>#markup-warning-total</KEYWORD2>\r
+ <KEYWORD2>#message</KEYWORD2>\r
+ <KEYWORD2>#none</KEYWORD2>\r
+ <KEYWORD2>#output</KEYWORD2>\r
+ <KEYWORD2>#platform-info</KEYWORD2>\r
+ <KEYWORD2>#process-input</KEYWORD2>\r
+ <KEYWORD2>#process-output</KEYWORD2>\r
+ <KEYWORD2>#program-error</KEYWORD2>\r
+ <KEYWORD2>#recovery-info</KEYWORD2>\r
+ <KEYWORD2>#sgml</KEYWORD2>\r
+ <KEYWORD2>#sgml-error-count</KEYWORD2>\r
+ <KEYWORD2>#sgml-error-total</KEYWORD2>\r
+ <KEYWORD2>#sgml-warning-count</KEYWORD2>\r
+ <KEYWORD2>#sgml-warning-total</KEYWORD2>\r
+ <KEYWORD2>#suppress</KEYWORD2>\r
+ <KEYWORD2>#syntax</KEYWORD2>\r
+ <KEYWORD2>#!</KEYWORD2>\r
+ <OPERATOR>abs</OPERATOR>\r
+ <KEYWORD1>activate</KEYWORD1>\r
+ <OPERATOR>active</OPERATOR>\r
+ <KEYWORD2>after</KEYWORD2>\r
+ <KEYWORD1>again</KEYWORD1>\r
+ <KEYWORD2>ancestor</KEYWORD2>\r
+ <KEYWORD2>and</KEYWORD2>\r
+ <KEYWORD2>another</KEYWORD2>\r
+ <KEYWORD1>always</KEYWORD1>\r
+ <OPERATOR>and</OPERATOR>\r
+ <KEYWORD3>any</KEYWORD3>\r
+ <KEYWORD3>any-text</KEYWORD3>\r
+ <KEYWORD2>arg</KEYWORD2>\r
+ <OPERATOR>as</OPERATOR>\r
+ <KEYWORD1>assert</KEYWORD1>\r
+ <KEYWORD2>attached</KEYWORD2>\r
+ <KEYWORD2>attribute</KEYWORD2>\r
+ <KEYWORD2>attributes</KEYWORD2>\r
+ <OPERATOR>base</OPERATOR>\r
+ <KEYWORD2>bcd</KEYWORD2>\r
+ <KEYWORD2>before</KEYWORD2>\r
+ <OPERATOR>binary</OPERATOR>\r
+ <KEYWORD2>binary-input</KEYWORD2>\r
+ <KEYWORD2>binary-mode</KEYWORD2>\r
+ <KEYWORD2>binary-output</KEYWORD2>\r
+ <KEYWORD3>blank</KEYWORD3>\r
+ <KEYWORD2>break-width</KEYWORD2>\r
+ <KEYWORD2>buffer</KEYWORD2>\r
+ <KEYWORD2>buffered</KEYWORD2>\r
+ <KEYWORD2>by</KEYWORD2>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD2>catchable</KEYWORD2>\r
+ <KEYWORD3>cdata</KEYWORD3>\r
+ <KEYWORD2>cdata-entity</KEYWORD2>\r
+ <OPERATOR>ceiling</OPERATOR>\r
+ <KEYWORD2>children</KEYWORD2>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD2>closed</KEYWORD2>\r
+ <OPERATOR>compiled-date</OPERATOR>\r
+ <OPERATOR>complement</OPERATOR>\r
+ <KEYWORD2>conref</KEYWORD2>\r
+ <KEYWORD2>content</KEYWORD2>\r
+ <KEYWORD3>content-end</KEYWORD3>\r
+ <KEYWORD3>content-start</KEYWORD3>\r
+ <KEYWORD2>context-translate</KEYWORD2>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>copy-clear</KEYWORD1>\r
+ <KEYWORD2>counter</KEYWORD2>\r
+ <KEYWORD2>created</KEYWORD2>\r
+ <OPERATOR>creating</OPERATOR>\r
+ <OPERATOR>creator</OPERATOR>\r
+ <KEYWORD2>cross-translate</KEYWORD2>\r
+ <KEYWORD2>current</KEYWORD2>\r
+ <KEYWORD2>data-attribute</KEYWORD2>\r
+ <KEYWORD2>data-attributes</KEYWORD2>\r
+ <KEYWORD2>data-content</KEYWORD2>\r
+ <KEYWORD2>data-letters</KEYWORD2>\r
+ <OPERATOR>date</OPERATOR>\r
+ <KEYWORD1>deactivate</KEYWORD1>\r
+ <KEYWORD2>declare</KEYWORD2>\r
+ <KEYWORD2>declared-conref</KEYWORD2>\r
+ <KEYWORD2>declared-current</KEYWORD2>\r
+ <KEYWORD2>declared-defaulted</KEYWORD2>\r
+ <KEYWORD2>declared-fixed</KEYWORD2>\r
+ <KEYWORD2>declared-implied</KEYWORD2>\r
+ <KEYWORD2>declared-required</KEYWORD2>\r
+ <KEYWORD1>decrement</KEYWORD1>\r
+ <KEYWORD2>default-entity</KEYWORD2>\r
+ <KEYWORD2>defaulted</KEYWORD2>\r
+ <KEYWORD2>defaulting</KEYWORD2>\r
+ <KEYWORD2>define</KEYWORD2>\r
+ <KEYWORD2>delimiter</KEYWORD2>\r
+ <OPERATOR>difference</OPERATOR>\r
+ <KEYWORD3>digit</KEYWORD3>\r
+ <KEYWORD2>directory</KEYWORD2>\r
+ <KEYWORD1>discard</KEYWORD1>\r
+ <OPERATOR>divide</OPERATOR>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD2>doctype</KEYWORD2>\r
+ <KEYWORD2>document</KEYWORD2>\r
+ <KEYWORD2>document-element</KEYWORD2>\r
+ <KEYWORD2>document-end</KEYWORD2>\r
+ <KEYWORD2>document-start</KEYWORD2>\r
+ <KEYWORD2>domain-free</KEYWORD2>\r
+ <KEYWORD1>done</KEYWORD1>\r
+ <KEYWORD2>down-translate</KEYWORD2>\r
+ <OPERATOR>drop</OPERATOR>\r
+ <KEYWORD2>dtd</KEYWORD2>\r
+ <KEYWORD2>dtd-end</KEYWORD2>\r
+ <KEYWORD2>dtd-start</KEYWORD2>\r
+ <KEYWORD2>dtds</KEYWORD2>\r
+ <KEYWORD2>element</KEYWORD2>\r
+ <KEYWORD2>elements</KEYWORD2>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD2>elsewhere</KEYWORD2>\r
+ <KEYWORD2>empty</KEYWORD2>\r
+ <KEYWORD2>entities</KEYWORD2>\r
+ <KEYWORD2>entity</KEYWORD2>\r
+ <KEYWORD2>epilog-start</KEYWORD2>\r
+ <OPERATOR>equal</OPERATOR>\r
+ <OPERATOR>equals</OPERATOR>\r
+ <KEYWORD2>escape</KEYWORD2>\r
+ <KEYWORD1>except</KEYWORD1>\r
+ <OPERATOR>exists</OPERATOR>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD2>external</KEYWORD2>\r
+ <KEYWORD2>external-data-entity</KEYWORD2>\r
+ <KEYWORD2>external-entity</KEYWORD2>\r
+ <KEYWORD2>external-function</KEYWORD2>\r
+ <KEYWORD2>external-output-function</KEYWORD2>\r
+ <KEYWORD2>external-text-entity</KEYWORD2>\r
+ <KEYWORD2>false</KEYWORD2>\r
+ <OPERATOR>file</OPERATOR>\r
+ <KEYWORD2>find</KEYWORD2>\r
+ <KEYWORD2>find-end</KEYWORD2>\r
+ <KEYWORD2>find-start</KEYWORD2>\r
+ <OPERATOR>floor</OPERATOR>\r
+ <KEYWORD1>flush</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>format</KEYWORD1>\r
+ <KEYWORD2>function</KEYWORD2>\r
+ <KEYWORD2>function-library</KEYWORD2>\r
+ <KEYWORD2>general</KEYWORD2>\r
+ <KEYWORD2>global</KEYWORD2>\r
+ <OPERATOR>greater-equal</OPERATOR>\r
+ <OPERATOR>greater-than</OPERATOR>\r
+ <KEYWORD2>group</KEYWORD2>\r
+ <KEYWORD2>groups</KEYWORD2>\r
+ <KEYWORD1>halt</KEYWORD1>\r
+ <KEYWORD1>halt-everything</KEYWORD1>\r
+ <OPERATOR>has</OPERATOR>\r
+ <OPERATOR>hasnt</OPERATOR>\r
+ <KEYWORD2>heralded-names</KEYWORD2>\r
+ <KEYWORD2>id</KEYWORD2>\r
+ <KEYWORD2>id-checking</KEYWORD2>\r
+ <KEYWORD2>idref</KEYWORD2>\r
+ <KEYWORD2>idrefs</KEYWORD2>\r
+ <KEYWORD2>ignore</KEYWORD2>\r
+ <KEYWORD2>implied</KEYWORD2>\r
+ <KEYWORD2>in</KEYWORD2>\r
+ <KEYWORD2>in-library</KEYWORD2>\r
+ <KEYWORD2>include</KEYWORD2>\r
+ <KEYWORD2>include-end</KEYWORD2>\r
+ <KEYWORD2>include-guard</KEYWORD2>\r
+ <KEYWORD2>include-start</KEYWORD2>\r
+ <KEYWORD2>inclusion</KEYWORD2>\r
+ <KEYWORD1>increment</KEYWORD1>\r
+ <KEYWORD2>initial</KEYWORD2>\r
+ <KEYWORD2>initial-size</KEYWORD2>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD2>insertion-break</KEYWORD2>\r
+ <KEYWORD2>instance</KEYWORD2>\r
+ <KEYWORD2>integer</KEYWORD2>\r
+ <KEYWORD2>internal</KEYWORD2>\r
+ <KEYWORD2>invalid-data</KEYWORD2>\r
+ <OPERATOR>is</OPERATOR>\r
+ <OPERATOR>isnt</OPERATOR>\r
+ <OPERATOR>item</OPERATOR>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <OPERATOR>key</OPERATOR>\r
+ <KEYWORD2>keyed</KEYWORD2>\r
+ <OPERATOR>last</OPERATOR>\r
+ <OPERATOR>lastmost</OPERATOR>\r
+ <KEYWORD3>lc</KEYWORD3>\r
+ <OPERATOR>length</OPERATOR>\r
+ <OPERATOR>less-equal</OPERATOR>\r
+ <OPERATOR>less-than</OPERATOR>\r
+ <KEYWORD3>letter</KEYWORD3>\r
+ <KEYWORD2>letters</KEYWORD2>\r
+ <KEYWORD2>library</KEYWORD2>\r
+ <KEYWORD3>line-end</KEYWORD3>\r
+ <KEYWORD3>line-start</KEYWORD3>\r
+ <OPERATOR>literal</OPERATOR>\r
+ <KEYWORD2>local</KEYWORD2>\r
+ <OPERATOR>ln</OPERATOR>\r
+ <KEYWORD1>log</KEYWORD1>\r
+ <OPERATOR>log10</OPERATOR>\r
+ <OPERATOR>lookahead</OPERATOR>\r
+ <KEYWORD2>macro</KEYWORD2>\r
+ <KEYWORD2>macro-end</KEYWORD2>\r
+ <KEYWORD2>marked-section</KEYWORD2>\r
+ <KEYWORD2>markup-comment</KEYWORD2>\r
+ <KEYWORD2>markup-error</KEYWORD2>\r
+ <KEYWORD2>markup-parser</KEYWORD2>\r
+ <KEYWORD2>markup-wrapper</KEYWORD2>\r
+ <OPERATOR>mask</OPERATOR>\r
+ <KEYWORD1>match</KEYWORD1>\r
+ <OPERATOR>matches</OPERATOR>\r
+ <OPERATOR>minus</OPERATOR>\r
+ <KEYWORD2>mixed</KEYWORD2>\r
+ <KEYWORD2>modifiable</KEYWORD2>\r
+ <OPERATOR>modulo</OPERATOR>\r
+ <OPERATOR>name</OPERATOR>\r
+ <KEYWORD2>name-letters</KEYWORD2>\r
+ <KEYWORD2>namecase</KEYWORD2>\r
+ <KEYWORD2>named</KEYWORD2>\r
+ <KEYWORD2>names</KEYWORD2>\r
+ <KEYWORD2>ndata-entity</KEYWORD2>\r
+ <OPERATOR>negate</OPERATOR>\r
+ <KEYWORD2>nested-referents</KEYWORD2>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD2>newline</KEYWORD2>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD2>nmtoken</KEYWORD2>\r
+ <KEYWORD2>nmtokens</KEYWORD2>\r
+ <KEYWORD2>no</KEYWORD2>\r
+ <KEYWORD2>no-default-io</KEYWORD2>\r
+ <KEYWORD3>non-cdata</KEYWORD3>\r
+ <KEYWORD2>non-implied</KEYWORD2>\r
+ <KEYWORD3>non-sdata</KEYWORD3>\r
+ <OPERATOR>not</OPERATOR>\r
+ <KEYWORD1>not-reached</KEYWORD1>\r
+ <KEYWORD2>notation</KEYWORD2>\r
+ <KEYWORD2>number</KEYWORD2>\r
+ <OPERATOR>number-of</OPERATOR>\r
+ <KEYWORD2>numbers</KEYWORD2>\r
+ <KEYWORD3>null</KEYWORD3>\r
+ <KEYWORD2>nutoken</KEYWORD2>\r
+ <KEYWORD2>nutokens</KEYWORD2>\r
+ <OPERATOR>occurrence</OPERATOR>\r
+ <OPERATOR>of</OPERATOR>\r
+ <KEYWORD2>opaque</KEYWORD2>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD2>optional</KEYWORD2>\r
+ <OPERATOR>or</OPERATOR>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>output-to</KEYWORD1>\r
+ <KEYWORD1>over</KEYWORD1>\r
+ <KEYWORD2>parameter</KEYWORD2>\r
+ <KEYWORD2>parent</KEYWORD2>\r
+ <KEYWORD2>past</KEYWORD2>\r
+ <KEYWORD2>pattern</KEYWORD2>\r
+ <KEYWORD3>pcdata</KEYWORD3>\r
+ <KEYWORD2>plus</KEYWORD2>\r
+ <KEYWORD2>preparent</KEYWORD2>\r
+ <KEYWORD2>previous</KEYWORD2>\r
+ <KEYWORD2>process</KEYWORD2>\r
+ <KEYWORD2>process-end</KEYWORD2>\r
+ <KEYWORD2>process-start</KEYWORD2>\r
+ <KEYWORD2>processing-instruction</KEYWORD2>\r
+ <KEYWORD2>prolog-end</KEYWORD2>\r
+ <KEYWORD2>prolog-in-error</KEYWORD2>\r
+ <KEYWORD2>proper</KEYWORD2>\r
+ <KEYWORD2>public</KEYWORD2>\r
+ <KEYWORD1>put</KEYWORD1>\r
+ <KEYWORD3>rcdata</KEYWORD3>\r
+ <KEYWORD1>remove</KEYWORD1>\r
+ <KEYWORD2>read-only</KEYWORD2>\r
+ <KEYWORD2>readable</KEYWORD2>\r
+ <KEYWORD2>referent</KEYWORD2>\r
+ <KEYWORD2>referents</KEYWORD2>\r
+ <KEYWORD2>referents-allowed</KEYWORD2>\r
+ <KEYWORD2>referents-displayed</KEYWORD2>\r
+ <KEYWORD2>referents-not-allowed</KEYWORD2>\r
+ <KEYWORD2>remainder</KEYWORD2>\r
+ <KEYWORD1>reopen</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD2>repeated</KEYWORD2>\r
+ <KEYWORD2>replacement-break</KEYWORD2>\r
+ <KEYWORD1>reset</KEYWORD1>\r
+ <KEYWORD1>rethrow</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD2>reversed</KEYWORD2>\r
+ <OPERATOR>round</OPERATOR>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>save-clear</KEYWORD1>\r
+ <KEYWORD1>scan</KEYWORD1>\r
+ <KEYWORD3>sdata</KEYWORD3>\r
+ <KEYWORD2>sdata-entity</KEYWORD2>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>sgml</KEYWORD1>\r
+ <KEYWORD2>sgml-comment</KEYWORD2>\r
+ <KEYWORD2>sgml-declaration-end</KEYWORD2>\r
+ <KEYWORD2>sgml-dtd</KEYWORD2>\r
+ <KEYWORD2>sgml-dtds</KEYWORD2>\r
+ <KEYWORD2>sgml-error</KEYWORD2>\r
+ <KEYWORD1>sgml-in</KEYWORD1>\r
+ <KEYWORD1>sgml-out</KEYWORD1>\r
+ <KEYWORD1>sgml-parse</KEYWORD1>\r
+ <KEYWORD1>sgml-parser</KEYWORD1>\r
+ <OPERATOR>shift</OPERATOR>\r
+ <KEYWORD2>silent-referent</KEYWORD2>\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD1>skip</KEYWORD1>\r
+ <KEYWORD2>source</KEYWORD2>\r
+ <KEYWORD3>space</KEYWORD3>\r
+ <KEYWORD2>specified</KEYWORD2>\r
+ <OPERATOR>sqrt</OPERATOR>\r
+ <OPERATOR>status</OPERATOR>\r
+ <KEYWORD2>stream</KEYWORD2>\r
+ <KEYWORD2>subdoc-entity</KEYWORD2>\r
+ <KEYWORD2>subdocument</KEYWORD2>\r
+ <KEYWORD2>subdocuments</KEYWORD2>\r
+ <KEYWORD2>subelement</KEYWORD2>\r
+ <KEYWORD1>submit</KEYWORD1>\r
+ <KEYWORD1>succeed</KEYWORD1>\r
+ <KEYWORD1>suppress</KEYWORD1>\r
+ <KEYWORD2>switch</KEYWORD2>\r
+ <KEYWORD2>symbol</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD1>system-call</KEYWORD1>\r
+ <OPERATOR>take</OPERATOR>\r
+ <KEYWORD1>test-system</KEYWORD1>\r
+ <KEYWORD3>text</KEYWORD3>\r
+ <KEYWORD2>text-mode</KEYWORD2>\r
+ <OPERATOR>this</OPERATOR>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD2>thrown</KEYWORD2>\r
+ <KEYWORD2>times</KEYWORD2>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD2>token</KEYWORD2>\r
+ <KEYWORD2>translate</KEYWORD2>\r
+ <KEYWORD2>true</KEYWORD2>\r
+ <OPERATOR>truncate</OPERATOR>\r
+ <KEYWORD3>uc</KEYWORD3>\r
+ <OPERATOR>ul</OPERATOR>\r
+ <OPERATOR>unanchored</OPERATOR>\r
+ <KEYWORD2>unattached</KEYWORD2>\r
+ <KEYWORD2>unbuffered</KEYWORD2>\r
+ <OPERATOR>union</OPERATOR>\r
+ <KEYWORD1>unless</KEYWORD1>\r
+ <KEYWORD2>up-translate</KEYWORD2>\r
+ <OPERATOR>usemap</OPERATOR>\r
+ <KEYWORD1>using</KEYWORD1>\r
+ <KEYWORD2>value</KEYWORD2>\r
+ <KEYWORD3>value-end</KEYWORD3>\r
+ <KEYWORD3>value-start</KEYWORD3>\r
+ <KEYWORD2>valued</KEYWORD2>\r
+ <KEYWORD2>variable</KEYWORD2>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD3>white-space</KEYWORD3>\r
+ <OPERATOR>with</OPERATOR>\r
+ <KEYWORD3>word-end</KEYWORD3>\r
+ <KEYWORD3>word-start</KEYWORD3>\r
+ <KEYWORD2>writable</KEYWORD2>\r
+ <KEYWORD2>xml</KEYWORD2>\r
+ <KEYWORD2>xml-dtd</KEYWORD2>\r
+ <KEYWORD2>xml-dtds</KEYWORD2>\r
+ <KEYWORD1>xml-parse</KEYWORD1>\r
+ <KEYWORD2>yes</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Pascal mode by Kristian Ovaska.\r
+ Delphi 3 was used as reference.\r
+ Modified by Barry Carr (Ixian Software Components Ltd)\r
+ Delphi 6 was used as reference.\r
+ Modified by Barry Carr (Ixian Software Components Ltd) Feb '04\r
+ Delphi 8 (for .NET) was used as reference\r
+ Keywords = KEYWORD1\r
+ Directives = KEYWORD2.\r
+ Everything else as is-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="{" />\r
+ <PROPERTY NAME="commentEnd" VALUE="}" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Compiler directives. -->\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN>{$</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN>(*$</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+\r
+ <!-- Normal comments. -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(*</BEGIN>\r
+ <END>*)</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved words. Standard directives are not included, except\r
+ private, protected, public, published, and automated. -->\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>at</KEYWORD1>\r
+ <KEYWORD1>asm</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>constructor</KEYWORD1>\r
+ <KEYWORD1>destructor</KEYWORD1>\r
+ <KEYWORD1>dispinterface</KEYWORD1>\r
+ <KEYWORD1>div</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>downto</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>except</KEYWORD1>\r
+ <KEYWORD1>exports</KEYWORD1>\r
+ <KEYWORD1>file</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>finalization</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implementation</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>inherited</KEYWORD1>\r
+ <KEYWORD1>initialization</KEYWORD1>\r
+ <KEYWORD1>inline</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>label</KEYWORD1>\r
+ <KEYWORD1>mod</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>packed</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+ <KEYWORD1>program</KEYWORD1>\r
+ <KEYWORD1>property</KEYWORD1>\r
+ <KEYWORD1>raise</KEYWORD1>\r
+ <KEYWORD1>record</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>resourcestring</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>sealed</KEYWORD1>\r
+ <KEYWORD1>shl</KEYWORD1>\r
+ <KEYWORD1>shr</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>threadvar</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>unit</KEYWORD1>\r
+ <KEYWORD1>unsafe</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>uses</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>xor</KEYWORD1>\r
+\r
+ <KEYWORD2>absolute</KEYWORD2>\r
+ <KEYWORD2>abstract</KEYWORD2>\r
+ <KEYWORD2>assembler</KEYWORD2>\r
+ <KEYWORD2>automated</KEYWORD2>\r
+ <KEYWORD2>cdecl</KEYWORD2>\r
+ <KEYWORD2>contains</KEYWORD2>\r
+ <KEYWORD2>default</KEYWORD2>\r
+ <KEYWORD2>deprecated</KEYWORD2>\r
+ <KEYWORD2>dispid</KEYWORD2>\r
+ <KEYWORD2>dynamic</KEYWORD2>\r
+ <KEYWORD2>export</KEYWORD2>\r
+ <KEYWORD2>external</KEYWORD2>\r
+ <KEYWORD2>far</KEYWORD2>\r
+ <KEYWORD2>forward</KEYWORD2>\r
+ <KEYWORD2>implements</KEYWORD2>\r
+ <KEYWORD2>index</KEYWORD2>\r
+ <KEYWORD2>library</KEYWORD2>\r
+ <KEYWORD2>local</KEYWORD2>\r
+ <KEYWORD2>message</KEYWORD2>\r
+ <KEYWORD2>name</KEYWORD2>\r
+ <KEYWORD2>namespaces</KEYWORD2>\r
+ <KEYWORD2>near</KEYWORD2>\r
+ <KEYWORD2>nodefault</KEYWORD2>\r
+ <KEYWORD2>overload</KEYWORD2>\r
+ <KEYWORD2>override</KEYWORD2>\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>pascal</KEYWORD2>\r
+ <KEYWORD2>platform</KEYWORD2>\r
+ <KEYWORD2>private</KEYWORD2>\r
+ <KEYWORD2>protected</KEYWORD2>\r
+ <KEYWORD2>public</KEYWORD2>\r
+ <KEYWORD2>published</KEYWORD2>\r
+ <KEYWORD2>read</KEYWORD2>\r
+ <KEYWORD2>readonly</KEYWORD2>\r
+ <KEYWORD2>register</KEYWORD2>\r
+ <KEYWORD2>reintroduce</KEYWORD2>\r
+ <KEYWORD2>requires</KEYWORD2>\r
+ <KEYWORD2>resident</KEYWORD2>\r
+ <KEYWORD2>safecall</KEYWORD2>\r
+ <KEYWORD2>stdcall</KEYWORD2>\r
+ <KEYWORD2>stored</KEYWORD2>\r
+ <KEYWORD2>varargs</KEYWORD2>\r
+ <KEYWORD2>virtual</KEYWORD2>\r
+ <KEYWORD2>write</KEYWORD2>\r
+ <KEYWORD2>writeonly</KEYWORD2>\r
+\r
+ <!-- Ordinal types. -->\r
+ <KEYWORD3>shortint</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>smallint</KEYWORD3>\r
+ <KEYWORD3>integer</KEYWORD3>\r
+ <KEYWORD3>word</KEYWORD3>\r
+ <KEYWORD3>longint</KEYWORD3>\r
+ <KEYWORD3>cardinal</KEYWORD3>\r
+ <!-- Boolean types. -->\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>bytebool</KEYWORD3>\r
+ <KEYWORD3>wordbool</KEYWORD3>\r
+ <KEYWORD3>longbool</KEYWORD3>\r
+ <!-- Real types. -->\r
+ <KEYWORD3>real</KEYWORD3>\r
+ <KEYWORD3>single</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>extended</KEYWORD3>\r
+ <KEYWORD3>comp</KEYWORD3>\r
+ <KEYWORD3>currency</KEYWORD3>\r
+ <!-- Untyped pointer. -->\r
+ <KEYWORD3>pointer</KEYWORD3>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>nil</LITERAL2>\r
+ <LITERAL2>self</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <RULES>\r
+ <EOL_SPAN TYPE="LITERAL1" AT_LINE_START="TRUE">+++</EOL_SPAN>\r
+ <EOL_SPAN TYPE="LITERAL2" AT_LINE_START="TRUE">---</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD3" AT_LINE_START="TRUE">Index: </EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD1" AT_LINE_START="TRUE">+</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD1" AT_LINE_START="TRUE">></EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2" AT_LINE_START="TRUE">-</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2" AT_LINE_START="TRUE"><</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD3" AT_LINE_START="TRUE">!</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD3" AT_LINE_START="TRUE">@@</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD3" AT_LINE_START="TRUE">*</EOL_SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine" VALUE="[^#]*\.\s*$" />\r
+ </PROPS>\r
+\r
+ <!-- no ESCAPE char because we need the backslash for references -->\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="FALSE">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- TYPE is LABEL so that =head1 and =cut are highlighted as so -->\r
+ <SPAN TYPE="LABEL" DELEGATE="POD" AT_LINE_START="TRUE">\r
+ <BEGIN>=head1</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN AT_LINE_START="TRUE" TYPE="LABEL" DELEGATE="POD">\r
+ <BEGIN>=head2</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="POD" AT_LINE_START="TRUE">\r
+ <BEGIN>=head3</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN AT_LINE_START="TRUE" TYPE="LABEL" DELEGATE="POD">\r
+ <BEGIN>=head4</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" AT_LINE_START="TRUE" DELEGATE="POD">\r
+ <BEGIN>=item</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN AT_LINE_START="TRUE" TYPE="LABEL" DELEGATE="POD">\r
+ <BEGIN>=over</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="POD" AT_LINE_START="TRUE">\r
+ <BEGIN>=back</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN AT_LINE_START="TRUE" TYPE="LABEL" DELEGATE="POD">\r
+ <BEGIN>=pod</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="POD" AT_LINE_START="TRUE">\r
+ <BEGIN>=for</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="POD" AT_LINE_START="TRUE">\r
+ <BEGIN>=begin</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+ <SPAN AT_LINE_START="TRUE" TYPE="LABEL" DELEGATE="POD">\r
+ <BEGIN>=end</BEGIN>\r
+ <END>=cut</END>\r
+ </SPAN>\r
+\r
+ <!-- Some other things that confuse the mode file. -->\r
+ <SEQ TYPE="OPERATOR">*"</SEQ>\r
+ <SEQ TYPE="OPERATOR">*'</SEQ>\r
+ <SEQ TYPE="OPERATOR">&"</SEQ>\r
+ <SEQ TYPE="OPERATOR">&'</SEQ>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Scalar variables -->\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD2">\$#?((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- Array variables -->\r
+ <SEQ_REGEXP HASH_CHAR="@" TYPE="KEYWORD2">@((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- Associative Array (= Hash) variables -->\r
+ <SEQ_REGEXP HASH_CHAR="%" TYPE="KEYWORD2">%((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- Dereferences -->\r
+ <SEQ_REGEXP HASH_CHAR="$$" TYPE="KEYWORD4">\$\$+((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="@$" TYPE="KEYWORD4">@\$((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="%$" TYPE="KEYWORD4">%\$((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="*" TYPE="KEYWORD4">\*((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- Perl predefined variables -->\r
+ <SEQ_REGEXP HASH_CHAR="$^" TYPE="KEYWORD2">\$\^\p{Alpha}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD2">\$\p{Punct}</SEQ_REGEXP>\r
+\r
+ <!-- references to vars and code, starting with a backslash -->\r
+ <SEQ_REGEXP HASH_CHAR="\" TYPE="KEYWORD4">\\[@%\$&]((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- complex code dereference -->\r
+ <SPAN TYPE="KEYWORD4" NO_LINE_BREAK="TRUE" DELEGATE="MAIN">\r
+ <BEGIN>&{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Function calls from variables -->\r
+ <SEQ_REGEXP HASH_CHAR="&$" TYPE="FUNCTION">&\$((\p{Alpha}\w*|_\w+)?::)*(\p{Alpha}\w*|_\w+|\d+)</SEQ_REGEXP>\r
+\r
+ <!-- Special handling for subs, since they can have a ' in the name;\r
+ try to do highlight as well as possible - this version will\r
+ highlight both 'sub' and the opening '{' as KEYWORD1, so the\r
+ opening bracket will be different than other brackets. -->\r
+ <SPAN_REGEXP HASH_CHAR="sub" TYPE="OPERATOR" NO_LINE_BREAK="FALSE" DELEGATE="SUB_NAME">\r
+ <BEGIN>sub\s</BEGIN>\r
+ <END>{</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Highlight calls to subs that contain ' in the name. -->\r
+ <SEQ_REGEXP HASH_CHAR="&" TYPE="FUNCTION"\r
+ >&\p{Alpha}[\p{Alnum}_]*'\p{Alpha}[\p{Alnum}_]*</SEQ_REGEXP>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- apostroph literals -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="APOSTR">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- options: -text -->\r
+ <SEQ_REGEXP HASH_CHAR="-" TYPE="LITERAL1">-[\p{Lower}]\w+</SEQ_REGEXP>\r
+\r
+ <!-- file stat expressions -->\r
+ <SEQ_REGEXP HASH_CHAR="-" TYPE="KEYWORD3">-[\p{Lower}]</SEQ_REGEXP>\r
+\r
+ <!-- non-quoted literals in hashes -->\r
+ <SPAN_REGEXP TYPE="OPERATOR" HASH_CHAR="{" NO_LINE_BREAK="TRUE" DELEGATE="LITERAL">\r
+ <BEGIN>\{(?=\s*[\p{Alpha}_\-][\p{Alnum}_]*\s*\})</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Code blocks. This is a hack to correctly highlight some\r
+ complex expressions that can have arbitrary perl code\r
+ inside brackets (like array deferences below). Declaring\r
+ this *before* the other rules is needed to maintain\r
+ correct bracket matching.\r
+ -->\r
+ <SPAN TYPE="OPERATOR" NO_LINE_BREAK="FALSE" DELEGATE="MAIN">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Array dereference -->\r
+ <SPAN TYPE="KEYWORD4" NO_LINE_BREAK="TRUE" DELEGATE="MAIN">\r
+ <BEGIN>@{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Hash dereference -->\r
+ <SPAN TYPE="KEYWORD4" NO_LINE_BREAK="TRUE" DELEGATE="MAIN">\r
+ <BEGIN>%{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- labels, catches also package prefixes at line start :( -->\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+\r
+ <!-- __DATA__ and similar -->\r
+ <SEQ_REGEXP HASH_CHAR="__" TYPE="KEYWORD4">__\w+__</SEQ_REGEXP>\r
+\r
+ <!-- Exec -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="EXEC">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- file globs / IO operators -->\r
+ <SEQ_REGEXP HASH_CHAR="<" TYPE="KEYWORD4"><[\p{Punct}\p{Alnum}_]*></SEQ_REGEXP>\r
+\r
+ <!-- Heredoc -->\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL2" DELEGATE="LITERAL">\r
+ <BEGIN><![CDATA[<<\p{Space}*(['"])([\p{Space}\p{Alnum}_]*)\1;?\s*]]></BEGIN>\r
+ <END>$2</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL2" DELEGATE="LITERAL">\r
+ <BEGIN><![CDATA[<<([\p{Alpha}_][\p{Alnum}_]*);?\s*]]></BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- jEdit 4.1 adds regular expression syntax rules so we can\r
+ highlight this sort of crap. -->\r
+\r
+ <!-- /Regexp/, avoid confusion with a sequence of two divisions! -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="/"\r
+ AT_WORD_START="TRUE">/.*?[^\\]/[cgimosx]*(?!\s*[\d\$\@\(\-])</SEQ_REGEXP>\r
+\r
+ <!-- q//, qq//, qr//, qx// -->\r
+ <SPAN_REGEXP HASH_CHAR="q"\r
+ TYPE="MARKUP"\r
+ MATCH_TYPE="OPERATOR"\r
+ DELEGATE="QUOTED"\r
+ AT_WORD_START="TRUE"\r
+ NO_LINE_BREAK="FALSE">\r
+ <BEGIN>q(?:|[qrxw])([#\[{(/|])</BEGIN>\r
+ <END>~1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- tr/// transliteration -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="tr"\r
+ AT_WORD_START="TRUE">tr\s*\{.*?[^\\]\}\s*\{(?:.*?[^\\])*\}[cds]*</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="tr"\r
+ AT_WORD_START="TRUE">tr([^\p{Alnum}\p{Space}\}])(?:.*?)\1(?:.*?)\1[cds]*</SEQ_REGEXP>\r
+\r
+ <!-- y/// translation -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="y"\r
+ AT_WORD_START="TRUE">y\s*\{.*?[^\\]\}\s*\{(?:.*?[^\\])*\}[cds]*</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="y"\r
+ AT_WORD_START="TRUE">y([^\p{Alnum}\p{Space}\}])(?:.*?)\1(?:.*?)\1[cds]*</SEQ_REGEXP>\r
+\r
+ <!-- m// regular expression matching -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="m"\r
+ AT_WORD_START="TRUE">m\s*\{.*?[^\\]\}[cgimosx]*</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="m"\r
+ AT_WORD_START="TRUE">m([^\p{Alnum}\p{Space}\}])(?:.*?[^\\])\1[cgimosx]*</SEQ_REGEXP>\r
+\r
+ <!-- s/// regular expression substitution -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="s"\r
+ AT_WORD_START="TRUE">s\s*\{.*?\}\s*\{.*?\}[egimosx]*</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="s"\r
+ AT_WORD_START="TRUE">s([^\p{Alnum}\p{Space}\}])(?:.*?)\1(?:.*?)\1[egimosx]*</SEQ_REGEXP>\r
+\r
+ <!-- complex operators -->\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=></SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">=></SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">=~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!~</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+=</SEQ>\r
+ <SEQ TYPE="OPERATOR">-=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">*=</SEQ>\r
+ <SEQ TYPE="OPERATOR">.=</SEQ>\r
+ <SEQ TYPE="OPERATOR">%=</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">&=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|=</SEQ>\r
+ <SEQ TYPE="OPERATOR">**=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><<=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&=</SEQ>\r
+ <SEQ TYPE="OPERATOR">||=</SEQ>\r
+ <SEQ TYPE="OPERATOR">^=</SEQ>\r
+ <SEQ TYPE="OPERATOR">x=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <!-- simple operators -->\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <!-- Keywords -->\r
+ <KEYWORDS>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>elsif</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>unless</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+\r
+ <OPERATOR>cmp</OPERATOR>\r
+ <OPERATOR>eq</OPERATOR>\r
+ <OPERATOR>ne</OPERATOR>\r
+ <OPERATOR>le</OPERATOR>\r
+ <OPERATOR>ge</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>xor</OPERATOR>\r
+\r
+ <!-- At least attempt to highlight 'x', although this misses some -->\r
+ <OPERATOR>x</OPERATOR>\r
+\r
+ <!--\r
+ The following function list was derived from the perlfunc man\r
+ page, Perl version 5.00503\r
+\r
+ Certain keywords have been commented out where they appear more\r
+ than once, and the y///, qx//, etc. functions have been removed,\r
+ since they would are colorized not as keywords, but with separate\r
+ rules.\r
+ -->\r
+\r
+ <!-- Functions for SCALARs or strings -->\r
+ <KEYWORD3>chomp</KEYWORD3>\r
+ <KEYWORD3>chop</KEYWORD3>\r
+ <KEYWORD3>chr</KEYWORD3>\r
+ <KEYWORD3>crypt</KEYWORD3>\r
+ <KEYWORD3>hex</KEYWORD3>\r
+ <KEYWORD3>index</KEYWORD3>\r
+ <KEYWORD3>lc</KEYWORD3>\r
+ <KEYWORD3>lcfirst</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>oct</KEYWORD3>\r
+ <KEYWORD3>ord</KEYWORD3>\r
+ <KEYWORD3>pack</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>rindex</KEYWORD3>\r
+ <KEYWORD3>sprintf</KEYWORD3>\r
+ <KEYWORD3>substr</KEYWORD3>\r
+ <KEYWORD3>uc</KEYWORD3>\r
+ <KEYWORD3>ucfirst</KEYWORD3>\r
+\r
+ <!-- Regular expressions and pattern matching -->\r
+ <KEYWORD3>pos</KEYWORD3>\r
+ <KEYWORD3>quotemeta</KEYWORD3>\r
+ <KEYWORD3>split</KEYWORD3>\r
+ <KEYWORD3>study</KEYWORD3>\r
+\r
+ <!-- Numeric functions -->\r
+ <KEYWORD3>abs</KEYWORD3>\r
+ <KEYWORD3>atan2</KEYWORD3>\r
+ <KEYWORD3>cos</KEYWORD3>\r
+ <KEYWORD3>exp</KEYWORD3>\r
+ <!--<KEYWORD3>hex</KEYWORD3>-->\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>log</KEYWORD3>\r
+ <!--<KEYWORD3>oct</KEYWORD3>-->\r
+ <KEYWORD3>rand</KEYWORD3>\r
+ <KEYWORD3>sin</KEYWORD3>\r
+ <KEYWORD3>sqrt</KEYWORD3>\r
+ <KEYWORD3>srand</KEYWORD3>\r
+\r
+ <!-- Functions for real @ARRAYs -->\r
+ <KEYWORD3>pop</KEYWORD3>\r
+ <KEYWORD3>push</KEYWORD3>\r
+ <KEYWORD3>shift</KEYWORD3>\r
+ <KEYWORD3>splice</KEYWORD3>\r
+ <KEYWORD3>unshift</KEYWORD3>\r
+\r
+ <!-- Functions for list data -->\r
+ <KEYWORD3>grep</KEYWORD3>\r
+ <KEYWORD3>join</KEYWORD3>\r
+ <KEYWORD3>map</KEYWORD3>\r
+ <!--<KEYWORD3>reverse</KEYWORD3>-->\r
+ <KEYWORD3>sort</KEYWORD3>\r
+ <KEYWORD3>unpack</KEYWORD3>\r
+\r
+ <!-- Functions for real %HASHes -->\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>each</KEYWORD3>\r
+ <KEYWORD3>exists</KEYWORD3>\r
+ <KEYWORD3>keys</KEYWORD3>\r
+ <KEYWORD3>values</KEYWORD3>\r
+\r
+ <!-- Input and output functions -->\r
+ <KEYWORD3>binmode</KEYWORD3>\r
+ <KEYWORD3>close</KEYWORD3>\r
+ <KEYWORD3>closedir</KEYWORD3>\r
+ <KEYWORD3>dbmclose</KEYWORD3>\r
+ <KEYWORD3>dbmopen</KEYWORD3>\r
+ <!--<KEYWORD3>die</KEYWORD3>-->\r
+ <KEYWORD3>eof</KEYWORD3>\r
+ <KEYWORD3>fileno</KEYWORD3>\r
+ <KEYWORD3>flock</KEYWORD3>\r
+ <KEYWORD3>format</KEYWORD3>\r
+ <KEYWORD3>getc</KEYWORD3>\r
+ <KEYWORD3>print</KEYWORD3>\r
+ <KEYWORD3>printf</KEYWORD3>\r
+ <KEYWORD3>read</KEYWORD3>\r
+ <KEYWORD3>readdir</KEYWORD3>\r
+ <KEYWORD3>rewinddir</KEYWORD3>\r
+ <KEYWORD3>seek</KEYWORD3>\r
+ <KEYWORD3>seekdir</KEYWORD3>\r
+ <KEYWORD3>select</KEYWORD3>\r
+ <KEYWORD3>syscall</KEYWORD3>\r
+ <KEYWORD3>sysread</KEYWORD3>\r
+ <KEYWORD3>sysseek</KEYWORD3>\r
+ <KEYWORD3>syswrite</KEYWORD3>\r
+ <KEYWORD3>tell</KEYWORD3>\r
+ <KEYWORD3>telldir</KEYWORD3>\r
+ <KEYWORD3>truncate</KEYWORD3>\r
+ <KEYWORD3>warn</KEYWORD3>\r
+ <KEYWORD3>write</KEYWORD3>\r
+\r
+ <!-- Functions for fixed length data or records -->\r
+ <!--<KEYWORD3>pack</KEYWORD3>-->\r
+ <!--<KEYWORD3>read</KEYWORD3>-->\r
+ <!--<KEYWORD3>syscall</KEYWORD3>-->\r
+ <!--<KEYWORD3>sysread</KEYWORD3>-->\r
+ <!--<KEYWORD3>syswrite</KEYWORD3>-->\r
+ <!--<KEYWORD3>unpack</KEYWORD3>-->\r
+ <KEYWORD3>vec</KEYWORD3>\r
+\r
+ <!-- Functions for filehandles, files, or directories -->\r
+ <KEYWORD3>chdir</KEYWORD3>\r
+ <KEYWORD3>chmod</KEYWORD3>\r
+ <KEYWORD3>chown</KEYWORD3>\r
+ <KEYWORD3>chroot</KEYWORD3>\r
+ <KEYWORD3>fcntl</KEYWORD3>\r
+ <KEYWORD3>glob</KEYWORD3>\r
+ <KEYWORD3>ioctl</KEYWORD3>\r
+ <KEYWORD3>link</KEYWORD3>\r
+ <KEYWORD3>lstat</KEYWORD3>\r
+ <KEYWORD3>mkdir</KEYWORD3>\r
+ <KEYWORD3>open</KEYWORD3>\r
+ <KEYWORD3>opendir</KEYWORD3>\r
+ <KEYWORD3>readlink</KEYWORD3>\r
+ <KEYWORD3>rename</KEYWORD3>\r
+ <KEYWORD3>rmdir</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>symlink</KEYWORD3>\r
+ <KEYWORD3>umask</KEYWORD3>\r
+ <KEYWORD3>unlink</KEYWORD3>\r
+ <KEYWORD3>utime</KEYWORD3>\r
+\r
+ <!-- Keywords related to the control flow of your perl program -->\r
+ <KEYWORD1>caller</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>die</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>dump</KEYWORD1>\r
+ <KEYWORD1>eval</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>last</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>redo</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>wantarray</KEYWORD1>\r
+\r
+ <!-- Keywords related to scoping -->\r
+ <!--<KEYWORD1>caller</KEYWORD1>-->\r
+ <!--<KEYWORD1>import</KEYWORD1>-->\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>my</KEYWORD1>\r
+ <KEYWORD1>our</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+\r
+ <!-- Miscellaneous functions -->\r
+ <KEYWORD3>defined</KEYWORD3>\r
+ <!--<KEYWORD3>dump</KEYWORD3>-->\r
+ <!--<KEYWORD3>eval</KEYWORD3>-->\r
+ <KEYWORD3>formline</KEYWORD3>\r
+ <!--<KEYWORD3>local</KEYWORD3>-->\r
+ <!--<KEYWORD3>my</KEYWORD3>-->\r
+ <KEYWORD3>reset</KEYWORD3>\r
+ <KEYWORD3>scalar</KEYWORD3>\r
+ <KEYWORD3>undef</KEYWORD3>\r
+ <!--<KEYWORD3>wantarray</KEYWORD3>-->\r
+\r
+ <!-- Functions for processes and process groups -->\r
+ <KEYWORD3>alarm</KEYWORD3>\r
+ <KEYWORD3>exec</KEYWORD3>\r
+ <KEYWORD3>fork</KEYWORD3>\r
+ <KEYWORD3>getpgrp</KEYWORD3>\r
+ <KEYWORD3>getppid</KEYWORD3>\r
+ <KEYWORD3>getpriority</KEYWORD3>\r
+ <KEYWORD3>kill</KEYWORD3>\r
+ <KEYWORD3>pipe</KEYWORD3>\r
+ <KEYWORD3>setpgrp</KEYWORD3>\r
+ <KEYWORD3>setpriority</KEYWORD3>\r
+ <KEYWORD3>sleep</KEYWORD3>\r
+ <KEYWORD3>system</KEYWORD3>\r
+ <KEYWORD3>times</KEYWORD3>\r
+ <KEYWORD3>wait</KEYWORD3>\r
+ <KEYWORD3>waitpid</KEYWORD3>\r
+\r
+ <!-- Keywords related to perl modules -->\r
+ <!--<KEYWORD1>do</KEYWORD1>-->\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>no</KEYWORD1>\r
+ <!--<KEYWORD1>package</KEYWORD1>-->\r
+ <KEYWORD1>require</KEYWORD1>\r
+ <!--<KEYWORD1>use</KEYWORD1>-->\r
+\r
+ <!-- Keywords related to classes and object-orientedness -->\r
+ <KEYWORD3>bless</KEYWORD3>\r
+ <!--<KEYWORD3>dbmclose</KEYWORD3>-->\r
+ <!--<KEYWORD3>dbmopen</KEYWORD3>-->\r
+ <!--<KEYWORD3>package</KEYWORD3>-->\r
+ <KEYWORD3>ref</KEYWORD3>\r
+ <KEYWORD3>tie</KEYWORD3>\r
+ <KEYWORD3>tied</KEYWORD3>\r
+ <KEYWORD3>untie</KEYWORD3>\r
+ <!--<KEYWORD3>use</KEYWORD3>-->\r
+\r
+ <!-- Low-level socket functions -->\r
+ <KEYWORD3>accept</KEYWORD3>\r
+ <KEYWORD3>bind</KEYWORD3>\r
+ <KEYWORD3>connect</KEYWORD3>\r
+ <KEYWORD3>getpeername</KEYWORD3>\r
+ <KEYWORD3>getsockname</KEYWORD3>\r
+ <KEYWORD3>getsockopt</KEYWORD3>\r
+ <KEYWORD3>listen</KEYWORD3>\r
+ <KEYWORD3>recv</KEYWORD3>\r
+ <KEYWORD3>send</KEYWORD3>\r
+ <KEYWORD3>setsockopt</KEYWORD3>\r
+ <KEYWORD3>shutdown</KEYWORD3>\r
+ <KEYWORD3>socket</KEYWORD3>\r
+ <KEYWORD3>socketpair</KEYWORD3>\r
+\r
+ <!-- System V interprocess communication functions -->\r
+ <KEYWORD3>msgctl</KEYWORD3>\r
+ <KEYWORD3>msgget</KEYWORD3>\r
+ <KEYWORD3>msgrcv</KEYWORD3>\r
+ <KEYWORD3>msgsnd</KEYWORD3>\r
+ <KEYWORD3>semctl</KEYWORD3>\r
+ <KEYWORD3>semget</KEYWORD3>\r
+\r
+ <KEYWORD3>semop</KEYWORD3>\r
+ <KEYWORD3>shmctl</KEYWORD3>\r
+ <KEYWORD3>shmget</KEYWORD3>\r
+ <KEYWORD3>shmread</KEYWORD3>\r
+ <KEYWORD3>shmwrite</KEYWORD3>\r
+\r
+ <!-- Fetching user and group info -->\r
+ <KEYWORD3>endgrent</KEYWORD3>\r
+ <KEYWORD3>endhostent</KEYWORD3>\r
+ <KEYWORD3>endnetent</KEYWORD3>\r
+ <KEYWORD3>endpwent</KEYWORD3>\r
+ <KEYWORD3>getgrent</KEYWORD3>\r
+ <KEYWORD3>getgrgid</KEYWORD3>\r
+ <KEYWORD3>getgrnam</KEYWORD3>\r
+ <KEYWORD3>getlogin</KEYWORD3>\r
+ <KEYWORD3>getpwent</KEYWORD3>\r
+ <KEYWORD3>getpwnam</KEYWORD3>\r
+ <KEYWORD3>getpwuid</KEYWORD3>\r
+ <KEYWORD3>setgrent</KEYWORD3>\r
+ <KEYWORD3>setpwent</KEYWORD3>\r
+\r
+ <!-- Fetching network info -->\r
+ <KEYWORD3>endprotoent</KEYWORD3>\r
+ <KEYWORD3>endservent</KEYWORD3>\r
+ <KEYWORD3>gethostbyaddr</KEYWORD3>\r
+ <KEYWORD3>gethostbyname</KEYWORD3>\r
+ <KEYWORD3>gethostent</KEYWORD3>\r
+ <KEYWORD3>getnetbyaddr</KEYWORD3>\r
+ <KEYWORD3>getnetbyname</KEYWORD3>\r
+ <KEYWORD3>getnetent</KEYWORD3>\r
+ <KEYWORD3>getprotobyname</KEYWORD3>\r
+ <KEYWORD3>getprotobynumber</KEYWORD3>\r
+ <KEYWORD3>getprotoent</KEYWORD3>\r
+ <KEYWORD3>getservbyname</KEYWORD3>\r
+ <KEYWORD3>getservbyport</KEYWORD3>\r
+ <KEYWORD3>getservent</KEYWORD3>\r
+ <KEYWORD3>sethostent</KEYWORD3>\r
+ <KEYWORD3>setnetent</KEYWORD3>\r
+ <KEYWORD3>setprotoent</KEYWORD3>\r
+ <KEYWORD3>setservent</KEYWORD3>\r
+\r
+ <!-- Time-related functions -->\r
+ <KEYWORD3>gmtime</KEYWORD3>\r
+ <KEYWORD3>localtime</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <!--<KEYWORD3>times</KEYWORD3>-->\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="POD" DEFAULT="COMMENT2">\r
+ <MARK_FOLLOWING TYPE="LABEL" AT_LINE_START="TRUE">=</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <!-- Variables inside a Literal -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- object method inside a Literal -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>->{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>@{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">@</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>%{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">%</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="LITERAL1">|</SEQ>\r
+ <SEQ TYPE="LITERAL1">&</SEQ>\r
+ <SEQ TYPE="LITERAL1">!</SEQ>\r
+ <SEQ TYPE="LITERAL1">></SEQ>\r
+ <SEQ TYPE="LITERAL1"><</SEQ>\r
+ <SEQ TYPE="LITERAL1">)</SEQ>\r
+ <SEQ TYPE="LITERAL1">(</SEQ>\r
+ <SEQ TYPE="LITERAL1">=</SEQ>\r
+ <SEQ TYPE="LITERAL1">!</SEQ>\r
+ <SEQ TYPE="LITERAL1">+</SEQ>\r
+ <SEQ TYPE="LITERAL1">-</SEQ>\r
+ <SEQ TYPE="LITERAL1">/</SEQ>\r
+ <SEQ TYPE="LITERAL1">*</SEQ>\r
+ <SEQ TYPE="LITERAL1">^</SEQ>\r
+ <SEQ TYPE="LITERAL1">~</SEQ>\r
+ <SEQ TYPE="LITERAL1">}</SEQ>\r
+ <SEQ TYPE="LITERAL1">{</SEQ>\r
+ <SEQ TYPE="LITERAL1">.</SEQ>\r
+ <SEQ TYPE="LITERAL1">,</SEQ>\r
+ <SEQ TYPE="LITERAL1">;</SEQ>\r
+ <SEQ TYPE="LITERAL1">]</SEQ>\r
+ <SEQ TYPE="LITERAL1">[</SEQ>\r
+ <SEQ TYPE="LITERAL1">?</SEQ>\r
+ <SEQ TYPE="LITERAL1">:</SEQ>\r
+ </RULES>\r
+\r
+ <!-- Literals framed by apostrophs -->\r
+ <RULES SET="APOSTR" DEFAULT="LITERAL1" ESCAPE="\">\r
+\r
+ <!-- just a hack for sprintf -->\r
+ <SEQ_REGEXP HASH_CHAR="%" TYPE="LITERAL4">%\d*\.?\d*[dfis]</SEQ_REGEXP>\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="EXEC" DEFAULT="KEYWORD3" ESCAPE="\">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>@{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">@</MARK_FOLLOWING>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">%</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <RULES SET="VARIABLE" DEFAULT="KEYWORD2" ESCAPE="\">\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="REGEXP" DEFAULT="MARKUP" ESCAPE="\">\r
+ <!-- ??? -->\r
+ <SEQ TYPE="MARKUP">)(</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SUB_NAME" DEFAULT="FUNCTION">\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ <SPAN TYPE="OPERATOR" DELEGATE="SUB_PROTO">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="SUB_PROTO" DEFAULT="LITERAL1">\r
+ <SEQ TYPE="LITERAL2">$</SEQ>\r
+ <SEQ TYPE="LITERAL2">@</SEQ>\r
+ <SEQ TYPE="LITERAL2">%</SEQ>\r
+ <SEQ TYPE="LITERAL2">&</SEQ>\r
+ <SEQ TYPE="LITERAL2">*</SEQ>\r
+ <SEQ TYPE="LITERAL3">\</SEQ>\r
+ </RULES>\r
+\r
+ <!-- Used for quote-like operators; just makes sure the brackets are balanced. -->\r
+ <RULES SET="QUOTED" DEFAULT="LITERAL1">\r
+ <SPAN_REGEXP NO_LINE_BREAK="FALSE"\r
+ TYPE="LITERAL1"\r
+ MATCH_TYPE="OPERATOR"\r
+ DELEGATE="QUOTED"\r
+ HASH_CHARS="|[{(/">\r
+ <BEGIN>([\[{\(])</BEGIN>\r
+ <END>~1</END>\r
+ </SPAN_REGEXP>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Catalog entry:\r
+<MODE NAME="php" FILE="php.xml"\r
+ FILE_NAME_GLOB="*.{php3,php4,php5,php,phtml}"\r
+ FIRST_LINE_GLOB="<?php*" />\r
+-->\r
+\r
+\r
+<!--\r
+Usage of keywords:\r
+ - COMMENT1: range comments (/* ... */)\r
+ - COMMENT2: line comments (using //)\r
+ - COMMENT3: phpdoc comments (/** .. */)\r
+ - COMMENT4: line comments (using #)\r
+ - DIGIT: numbers\r
+ - FUNCTION: custom functions and class/object methods, e.g. foo(), $foo->bar() and foo::bar()\r
+ - KEYWORD1: basic PHP keywords, e.g. true, false, extends, implements\r
+ language constructs, e.g. if .. then .. else\r
+ - KEYWORD2: internal PHP functions,\r
+ - KEYWORD3: variables, e.g. $foo\r
+ - KEYWORD4: class definitions, object members, internal PHP objects\r
+ - LABEL: phpdoc labels, like @see\r
+ CDATA blocks\r
+ - LITERAL1: Strings in single quotes, e.g. 'foo'\r
+ - LITERAL2: Strings in double quotes, e.g. "foo"\r
+ - LITERAL3: Strings in backtick quotes, e.g. `foo`\r
+ - LITERAL4: heredocs, e.g. "<<< FOO .... FOO\r
+ - MARKUP: tags, e.g. <?php .. ?>\r
+ - OPERATOR: normal operators, e.g. + - ( ) { } [ ]\r
+ PHP language types in phpdoc block (TODO: sane?!)\r
+-->\r
+\r
+<!--\r
+TODO:\r
+ - cleanup/factorize PHPDOC section\r
+-->\r
+\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <!-- Default comment props (used when a ruleset has no other props) -->\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while|else\s*(if)?|for(each)?|switch|declare)\s*\(.*\)[^{:;]*)|(do\s*[^\({:;]*))" />\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true" /><!-- @deprecated since 4.3pre2 -->\r
+ <PROPERTY NAME="unindentThisLine"\r
+ VALUE="^.*(default:\s*|case.*:.*)$" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ </PROPS>\r
+\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <PROPS>\r
+ <!-- comment props for "HTML"/not-PHP: -->\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="lineComment" VALUE="" />\r
+ </PROPS>\r
+\r
+ <!-- regular PHP tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><?php</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+\r
+ <!-- short tags: -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><?</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><?=</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+\r
+ <!-- ASP style tags: -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- SSI? -->\r
+ <SPAN_REGEXP HASH_CHAR="<SCRIPT" TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><SCRIPT\s+LANGUAGE="?PHP"?></BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT1+PHP">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT_OPENTAG">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- CSS -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS_OPENTAG">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- CDATA -->\r
+ <SPAN TYPE="LABEL" DELEGATE="MAIN">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SEQ_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="TAGS"></?\w+</SEQ_REGEXP>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+\r
+ <!-- HTML tags (from MAIN rule) -->\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SEQ TYPE="MARKUP" DELEGATE="MAIN">></SEQ><!-- from SEQ_REGEXP delegate -->\r
+\r
+ <IMPORT DELEGATE="TO_LITERAL+PHP" />\r
+ <IMPORT DELEGATE="TO_PHP" />\r
+ <IMPORT DELEGATE="INVALID_LT" />\r
+ <IMPORT DELEGATE="html::TAGS" />\r
+ </RULES>\r
+\r
+\r
+ <!-- CSS where PHP code may be injected -->\r
+ <RULES SET="CSS_OPENTAG" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="CSS">></SEQ>\r
+\r
+ <IMPORT DELEGATE="TO_LITERAL+PHP"/>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS" DEFAULT="MARKUP">\r
+ <!-- CSS has no line comment: -->\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="" />\r
+ </PROPS>\r
+\r
+ <SPAN DELEGATE="CSS"><!-- give priority to PHP -->\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ <IMPORT DELEGATE="css::MAIN"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Helper for class references in rule PHP -->\r
+ <RULES SET="OBJECT_PHP" DEFAULT="KEYWORD4" ESCAPE="\"> <!-- TODO: ESCAPE should not be needed, see http://sourceforge.net/tracker/index.php?func=detail&aid=1600458&group_id=588&atid=100588 -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="PHP">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Keep brackets together and handle the expression therein with "PHP" -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="PHP">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- Recurse methods: -->\r
+ <SEQ_REGEXP HASH_CHAR="->" TYPE="FUNCTION" DELEGATE="OBJECT_PHP">->\s*\w+\s*(?=\()</SEQ_REGEXP>\r
+\r
+ <!-- Recurse members: -->\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="->" DELEGATE="OBJECT_PHP">->\w*</SEQ_REGEXP>\r
+\r
+ <!-- Operators delegate back to PHP {{{ -->\r
+ <SEQ DELEGATE="PHP"> </SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">!</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">%</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">&</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">></SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP"><</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">*</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">+</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">,</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">-</SEQ><!-- "->" gets handled before -->\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">.</SEQ>\r
+ <SEQ_REGEXP HASH_CHAR="/" TYPE="OPERATOR" DELEGATE="PHP">/(?!/)</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR=":" TYPE="OPERATOR" DELEGATE="PHP">:(?!:)</SEQ_REGEXP><!-- not "::" -->\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">;</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">=</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">?</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">@</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">[</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">]</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">^</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">`</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">{</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">|</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">}</SEQ>\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">~</SEQ>\r
+ <!-- }}} -->\r
+\r
+ <IMPORT DELEGATE="PHP" />\r
+ <IMPORT DELEGATE="PHP_VAR" />\r
+ <IMPORT DELEGATE="PHP_KEYWORDS" />\r
+ </RULES>\r
+\r
+\r
+ <!-- PHP literal where variables get parsed -->\r
+ <RULES SET="PHP_LITERAL2" DEFAULT="LITERAL2" ESCAPE="\">\r
+ <SPAN_REGEXP HASH_CHAR="{" TYPE="LITERAL2" DELEGATE="OBJECT_PHP">\r
+ <BEGIN>\{(?=\$)</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+ <IMPORT DELEGATE="PHP_VAR" />\r
+ </RULES>\r
+\r
+\r
+ <!-- PHP literal in backticks, where variables get parsed; see PHP_LITERAL2 -->\r
+ <RULES SET="PHP_LITERAL3" DEFAULT="LITERAL3" ESCAPE="\">\r
+ <SPAN_REGEXP HASH_CHAR="{" TYPE="LITERAL3" DELEGATE="OBJECT_PHP">\r
+ <BEGIN>\{(?=\$)</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+ <IMPORT DELEGATE="PHP_VAR" />\r
+ </RULES>\r
+\r
+\r
+ <!-- PHP heredoc blocks, where variables get parsed; see PHP_LITERAL2 -->\r
+ <RULES SET="PHP_LITERAL4" DEFAULT="LITERAL4" ESCAPE="\">\r
+ <SPAN_REGEXP HASH_CHAR="{" TYPE="LITERAL4" DELEGATE="OBJECT_PHP">\r
+ <BEGIN>\{(?=\$)</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+ <IMPORT DELEGATE="PHP_VAR" />\r
+ </RULES>\r
+\r
+\r
+ <!-- Helper for class / interface definition -->\r
+ <RULES SET="DEF_CLASS" DEFAULT="KEYWORD4">\r
+ <SEQ TYPE="OPERATOR" DELEGATE="PHP">{</SEQ>\r
+\r
+ <!-- TODO: redundant comments {{{ -->\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- PHPdoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="PHPDOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT4">#</EOL_SPAN>\r
+ <!-- redundant }}} -->\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <!-- PHP variables (PHPDOC_VAR for phpdoc blocks) -->\r
+ <RULES SET="PHP_VAR">\r
+ <!-- (Class-)Variables -->\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD4">\$\w+(?=\s*=\s*(&\s*)?new)</SEQ_REGEXP>\r
+\r
+ <!-- Normal variables -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="PHP" ESCAPE="\" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- PHPdoc comment -->\r
+ <SPAN TYPE="COMMENT3" DELEGATE="PHPDOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="PHP_LITERAL2">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL3" DELEGATE="PHP_LITERAL3">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT4">#</EOL_SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR"> (</MARK_PREVIOUS>\r
+\r
+ <!-- Readins/Heredoc -->\r
+ <SPAN_REGEXP HASH_CHAR="<<<" TYPE="LITERAL4" DELEGATE="PHP_LITERAL4">\r
+ <BEGIN><![CDATA[<<<[\p{Space}'"]*([\p{Alnum}_]+)[\p{Space}'"]*]]></BEGIN>\r
+ <END AT_LINE_START="TRUE">$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- operators -->\r
+ <!-- {{{ -->\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">(array)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(bool)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(boolean)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(double)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(float)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(int)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(integer)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(object)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(real)</SEQ>\r
+ <SEQ TYPE="OPERATOR">(string)</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ_REGEXP HASH_CHAR=":" TYPE="OPERATOR">:(?!:)</SEQ_REGEXP><!-- not "::" -->\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <!-- }}} -->\r
+\r
+ <!-- Fix this variables to not start class definitions -->\r
+ <SEQ_REGEXP HASH_CHAR="$class" TYPE="KEYWORD3">\$class\w*</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="$interface" TYPE="KEYWORD3">\$interface\w*</SEQ_REGEXP>\r
+\r
+ <!-- Class definitions -->\r
+ <SEQ_REGEXP HASH_CHAR="class" AT_WORD_START="TRUE" DELEGATE="DEF_CLASS" TYPE="KEYWORD1">class(\s+|$)</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="interface" AT_WORD_START="TRUE" DELEGATE="DEF_CLASS" TYPE="KEYWORD1">interface(\s+|$)</SEQ_REGEXP>\r
+\r
+\r
+ <!-- to OBJECT_PHP: (Class-)Variables/Methods -->\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="$" DELEGATE="OBJECT_PHP">\$\w+(?=(\[\$?[\s\w'"]+\])?->)</SEQ_REGEXP>\r
+ <MARK_PREVIOUS TYPE="KEYWORD4">::</MARK_PREVIOUS>\r
+\r
+ <!-- Imports: -->\r
+ <IMPORT DELEGATE="PHP_KEYWORDS" />\r
+ <IMPORT DELEGATE="PHP_VAR" />\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="PHP_BASIC_KEYWORD1">\r
+ <KEYWORDS>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>null</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="PHP_KEYWORDS">\r
+ <IMPORT DELEGATE="KEYWORDS_VISIBILITY" />\r
+ <IMPORT DELEGATE="PHP_BASIC_KEYWORD1" />\r
+\r
+ <KEYWORDS>\r
+ <!-- start: generated by buildfunctionlist.php -->\r
+ <!-- {{{ -->\r
+ <!-- Internal classes (61) -->\r
+ <KEYWORD4>arrayiterator</KEYWORD4>\r
+ <KEYWORD4>arrayobject</KEYWORD4>\r
+ <KEYWORD4>cachingiterator</KEYWORD4>\r
+ <KEYWORD4>cachingrecursiveiterator</KEYWORD4>\r
+ <KEYWORD4>collection</KEYWORD4>\r
+ <KEYWORD4>descriptor</KEYWORD4>\r
+ <KEYWORD4>directoryiterator</KEYWORD4>\r
+ <KEYWORD4>domattr</KEYWORD4>\r
+ <KEYWORD4>domattribute</KEYWORD4>\r
+ <KEYWORD4>domcharacterdata</KEYWORD4>\r
+ <KEYWORD4>domdocument</KEYWORD4>\r
+ <KEYWORD4>domdocumenttype</KEYWORD4>\r
+ <KEYWORD4>domelement</KEYWORD4>\r
+ <KEYWORD4>domimplementation</KEYWORD4>\r
+ <KEYWORD4>domnamednodemap</KEYWORD4>\r
+ <KEYWORD4>domnode</KEYWORD4>\r
+ <KEYWORD4>domnodelist</KEYWORD4>\r
+ <KEYWORD4>domprocessinginstruction</KEYWORD4>\r
+ <KEYWORD4>domtext</KEYWORD4>\r
+ <KEYWORD4>domxpath</KEYWORD4>\r
+ <KEYWORD4>domxsltstylesheet</KEYWORD4>\r
+ <KEYWORD4>filteriterator</KEYWORD4>\r
+ <KEYWORD4>hw_api</KEYWORD4>\r
+ <KEYWORD4>hw_api_attribute</KEYWORD4>\r
+ <KEYWORD4>hw_api_content</KEYWORD4>\r
+ <KEYWORD4>hw_api_error</KEYWORD4>\r
+ <KEYWORD4>hw_api_object</KEYWORD4>\r
+ <KEYWORD4>hw_api_reason</KEYWORD4>\r
+ <KEYWORD4>limititerator</KEYWORD4>\r
+ <KEYWORD4>lob</KEYWORD4>\r
+ <KEYWORD4>memcache</KEYWORD4>\r
+ <KEYWORD4>parentiterator</KEYWORD4>\r
+ <KEYWORD4>pdo</KEYWORD4>\r
+ <KEYWORD4>pdostatement</KEYWORD4>\r
+ <KEYWORD4>rar</KEYWORD4>\r
+ <KEYWORD4>recursivedirectoryiterator</KEYWORD4>\r
+ <KEYWORD4>recursiveiteratoriterator</KEYWORD4>\r
+ <KEYWORD4>simplexmlelement</KEYWORD4>\r
+ <KEYWORD4>simplexmliterator</KEYWORD4>\r
+ <KEYWORD4>soapclient</KEYWORD4>\r
+ <KEYWORD4>soapfault</KEYWORD4>\r
+ <KEYWORD4>soapheader</KEYWORD4>\r
+ <KEYWORD4>soapparam</KEYWORD4>\r
+ <KEYWORD4>soapserver</KEYWORD4>\r
+ <KEYWORD4>soapvar</KEYWORD4>\r
+ <KEYWORD4>swfaction</KEYWORD4>\r
+ <KEYWORD4>swfbitmap</KEYWORD4>\r
+ <KEYWORD4>swfbutton</KEYWORD4>\r
+ <KEYWORD4>swfdisplayitem</KEYWORD4>\r
+ <KEYWORD4>swffill</KEYWORD4>\r
+ <KEYWORD4>swffont</KEYWORD4>\r
+ <KEYWORD4>swfgradient</KEYWORD4>\r
+ <KEYWORD4>swfmorph</KEYWORD4>\r
+ <KEYWORD4>swfmovie</KEYWORD4>\r
+ <KEYWORD4>swfshape</KEYWORD4>\r
+ <KEYWORD4>swfsprite</KEYWORD4>\r
+ <KEYWORD4>swftext</KEYWORD4>\r
+ <KEYWORD4>swftextfield</KEYWORD4>\r
+ <KEYWORD4>tidy</KEYWORD4>\r
+ <KEYWORD4>tidy_node</KEYWORD4>\r
+ <KEYWORD4>variant</KEYWORD4>\r
+\r
+\r
+ <!-- Internal functions (3549) -->\r
+ <KEYWORD2>__call</KEYWORD2> <!-- soapclient -->\r
+ <KEYWORD2>__construct</KEYWORD2> <!-- arrayobject, directoryiterator, pdo, tidy -->\r
+ <KEYWORD2>__getfunctions</KEYWORD2> <!-- soapclient -->\r
+ <KEYWORD2>__getlastrequest</KEYWORD2> <!-- soapclient -->\r
+ <KEYWORD2>__getlastresponse</KEYWORD2> <!-- soapclient -->\r
+ <KEYWORD2>__gettypes</KEYWORD2> <!-- soapclient -->\r
+ <KEYWORD2>__tostring</KEYWORD2> <!-- cachingiterator -->\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>acos</KEYWORD2>\r
+ <KEYWORD2>acosh</KEYWORD2>\r
+ <KEYWORD2>add</KEYWORD2> <!-- memcache, swfmovie, swfsprite -->\r
+ <KEYWORD2>add_namespace</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>add_root</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>addaction</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>addcolor</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>addcslashes</KEYWORD2>\r
+ <KEYWORD2>addentry</KEYWORD2> <!-- swfgradient -->\r
+ <KEYWORD2>addfill</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>addfunction</KEYWORD2> <!-- soapserver -->\r
+ <KEYWORD2>addshape</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>addslashes</KEYWORD2>\r
+ <KEYWORD2>addstring</KEYWORD2> <!-- swftext, swftextfield -->\r
+ <KEYWORD2>aggregate</KEYWORD2>\r
+ <KEYWORD2>aggregate_info</KEYWORD2>\r
+ <KEYWORD2>aggregate_methods</KEYWORD2>\r
+ <KEYWORD2>aggregate_methods_by_list</KEYWORD2>\r
+ <KEYWORD2>aggregate_methods_by_regexp</KEYWORD2>\r
+ <KEYWORD2>aggregate_properties</KEYWORD2>\r
+ <KEYWORD2>aggregate_properties_by_list</KEYWORD2>\r
+ <KEYWORD2>aggregate_properties_by_regexp</KEYWORD2>\r
+ <KEYWORD2>aggregation_info</KEYWORD2>\r
+ <KEYWORD2>align</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>apache_child_terminate</KEYWORD2>\r
+ <KEYWORD2>apache_get_modules</KEYWORD2>\r
+ <KEYWORD2>apache_get_version</KEYWORD2>\r
+ <KEYWORD2>apache_getenv</KEYWORD2>\r
+ <KEYWORD2>apache_lookup_uri</KEYWORD2>\r
+ <KEYWORD2>apache_note</KEYWORD2>\r
+ <KEYWORD2>apache_request_headers</KEYWORD2>\r
+ <KEYWORD2>apache_response_headers</KEYWORD2>\r
+ <KEYWORD2>apache_setenv</KEYWORD2>\r
+ <KEYWORD2>apd_breakpoint</KEYWORD2>\r
+ <KEYWORD2>apd_callstack</KEYWORD2>\r
+ <KEYWORD2>apd_clunk</KEYWORD2>\r
+ <KEYWORD2>apd_continue</KEYWORD2>\r
+ <KEYWORD2>apd_croak</KEYWORD2>\r
+ <KEYWORD2>apd_dump_function_table</KEYWORD2>\r
+ <KEYWORD2>apd_dump_persistent_resources</KEYWORD2>\r
+ <KEYWORD2>apd_dump_regular_resources</KEYWORD2>\r
+ <KEYWORD2>apd_echo</KEYWORD2>\r
+ <KEYWORD2>apd_get_active_symbols</KEYWORD2>\r
+ <KEYWORD2>apd_set_pprof_trace</KEYWORD2>\r
+ <KEYWORD2>apd_set_session</KEYWORD2>\r
+ <KEYWORD2>apd_set_session_trace</KEYWORD2>\r
+ <KEYWORD2>apd_set_socket_session_trace</KEYWORD2>\r
+ <KEYWORD2>append</KEYWORD2> <!-- arrayobject, collection, lob -->\r
+ <KEYWORD2>append_child</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>append_sibling</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>appendchild</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>appenddata</KEYWORD2> <!-- domcharacterdata -->\r
+ <KEYWORD2>array_change_key_case</KEYWORD2>\r
+ <KEYWORD2>array_chunk</KEYWORD2>\r
+ <KEYWORD2>array_combine</KEYWORD2>\r
+ <KEYWORD2>array_count_values</KEYWORD2>\r
+ <KEYWORD2>array_diff</KEYWORD2>\r
+ <KEYWORD2>array_diff_assoc</KEYWORD2>\r
+ <KEYWORD2>array_diff_key</KEYWORD2>\r
+ <KEYWORD2>array_diff_uassoc</KEYWORD2>\r
+ <KEYWORD2>array_diff_ukey</KEYWORD2>\r
+ <KEYWORD2>array_fill</KEYWORD2>\r
+ <KEYWORD2>array_filter</KEYWORD2>\r
+ <KEYWORD2>array_flip</KEYWORD2>\r
+ <KEYWORD2>array_intersect</KEYWORD2>\r
+ <KEYWORD2>array_intersect_assoc</KEYWORD2>\r
+ <KEYWORD2>array_intersect_key</KEYWORD2>\r
+ <KEYWORD2>array_intersect_uassoc</KEYWORD2>\r
+ <KEYWORD2>array_intersect_ukey</KEYWORD2>\r
+ <KEYWORD2>array_key_exists</KEYWORD2>\r
+ <KEYWORD2>array_keys</KEYWORD2>\r
+ <KEYWORD2>array_map</KEYWORD2>\r
+ <KEYWORD2>array_merge</KEYWORD2>\r
+ <KEYWORD2>array_merge_recursive</KEYWORD2>\r
+ <KEYWORD2>array_multisort</KEYWORD2>\r
+ <KEYWORD2>array_pad</KEYWORD2>\r
+ <KEYWORD2>array_pop</KEYWORD2>\r
+ <KEYWORD2>array_push</KEYWORD2>\r
+ <KEYWORD2>array_rand</KEYWORD2>\r
+ <KEYWORD2>array_reduce</KEYWORD2>\r
+ <KEYWORD2>array_reverse</KEYWORD2>\r
+ <KEYWORD2>array_search</KEYWORD2>\r
+ <KEYWORD2>array_shift</KEYWORD2>\r
+ <KEYWORD2>array_slice</KEYWORD2>\r
+ <KEYWORD2>array_splice</KEYWORD2>\r
+ <KEYWORD2>array_sum</KEYWORD2>\r
+ <KEYWORD2>array_udiff</KEYWORD2>\r
+ <KEYWORD2>array_udiff_assoc</KEYWORD2>\r
+ <KEYWORD2>array_udiff_uassoc</KEYWORD2>\r
+ <KEYWORD2>array_uintersect</KEYWORD2>\r
+ <KEYWORD2>array_uintersect_assoc</KEYWORD2>\r
+ <KEYWORD2>array_uintersect_uassoc</KEYWORD2>\r
+ <KEYWORD2>array_unique</KEYWORD2>\r
+ <KEYWORD2>array_unshift</KEYWORD2>\r
+ <KEYWORD2>array_values</KEYWORD2>\r
+ <KEYWORD2>array_walk</KEYWORD2>\r
+ <KEYWORD2>array_walk_recursive</KEYWORD2>\r
+ <KEYWORD2>arsort</KEYWORD2>\r
+ <KEYWORD2>ascii2ebcdic</KEYWORD2>\r
+ <KEYWORD2>asin</KEYWORD2>\r
+ <KEYWORD2>asinh</KEYWORD2>\r
+ <KEYWORD2>asort</KEYWORD2>\r
+ <KEYWORD2>aspell_check</KEYWORD2>\r
+ <KEYWORD2>aspell_check_raw</KEYWORD2>\r
+ <KEYWORD2>aspell_new</KEYWORD2>\r
+ <KEYWORD2>aspell_suggest</KEYWORD2>\r
+ <KEYWORD2>assert</KEYWORD2>\r
+ <KEYWORD2>assert_options</KEYWORD2>\r
+ <KEYWORD2>assign</KEYWORD2> <!-- collection, hw_api_object -->\r
+ <KEYWORD2>assignelem</KEYWORD2> <!-- collection -->\r
+ <KEYWORD2>asxml</KEYWORD2> <!-- simplexmlelement -->\r
+ <KEYWORD2>atan</KEYWORD2>\r
+ <KEYWORD2>atan2</KEYWORD2>\r
+ <KEYWORD2>atanh</KEYWORD2>\r
+ <KEYWORD2>attreditable</KEYWORD2> <!-- hw_api_object -->\r
+ <KEYWORD2>attributes</KEYWORD2> <!-- domnode, simplexmlelement, tidy_node -->\r
+ <KEYWORD2>base64_decode</KEYWORD2>\r
+ <KEYWORD2>base64_encode</KEYWORD2>\r
+ <KEYWORD2>base_convert</KEYWORD2>\r
+ <KEYWORD2>basename</KEYWORD2>\r
+ <KEYWORD2>bcadd</KEYWORD2>\r
+ <KEYWORD2>bccomp</KEYWORD2>\r
+ <KEYWORD2>bcdiv</KEYWORD2>\r
+ <KEYWORD2>bcmod</KEYWORD2>\r
+ <KEYWORD2>bcmul</KEYWORD2>\r
+ <KEYWORD2>bcpow</KEYWORD2>\r
+ <KEYWORD2>bcpowmod</KEYWORD2>\r
+ <KEYWORD2>bcscale</KEYWORD2>\r
+ <KEYWORD2>bcsqrt</KEYWORD2>\r
+ <KEYWORD2>bcsub</KEYWORD2>\r
+ <KEYWORD2>begintransaction</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>bin2hex</KEYWORD2>\r
+ <KEYWORD2>bind_textdomain_codeset</KEYWORD2>\r
+ <KEYWORD2>bindcolumn</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>bindec</KEYWORD2>\r
+ <KEYWORD2>bindparam</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>bindtextdomain</KEYWORD2>\r
+ <KEYWORD2>bzclose</KEYWORD2>\r
+ <KEYWORD2>bzcompress</KEYWORD2>\r
+ <KEYWORD2>bzdecompress</KEYWORD2>\r
+ <KEYWORD2>bzerrno</KEYWORD2>\r
+ <KEYWORD2>bzerror</KEYWORD2>\r
+ <KEYWORD2>bzerrstr</KEYWORD2>\r
+ <KEYWORD2>bzflush</KEYWORD2>\r
+ <KEYWORD2>bzopen</KEYWORD2>\r
+ <KEYWORD2>bzread</KEYWORD2>\r
+ <KEYWORD2>bzwrite</KEYWORD2>\r
+ <KEYWORD2>cal_days_in_month</KEYWORD2>\r
+ <KEYWORD2>cal_from_jd</KEYWORD2>\r
+ <KEYWORD2>cal_info</KEYWORD2>\r
+ <KEYWORD2>cal_to_jd</KEYWORD2>\r
+ <KEYWORD2>call_user_func</KEYWORD2>\r
+ <KEYWORD2>call_user_func_array</KEYWORD2>\r
+ <KEYWORD2>call_user_method</KEYWORD2>\r
+ <KEYWORD2>call_user_method_array</KEYWORD2>\r
+ <KEYWORD2>ccvs_add</KEYWORD2>\r
+ <KEYWORD2>ccvs_auth</KEYWORD2>\r
+ <KEYWORD2>ccvs_command</KEYWORD2>\r
+ <KEYWORD2>ccvs_count</KEYWORD2>\r
+ <KEYWORD2>ccvs_delete</KEYWORD2>\r
+ <KEYWORD2>ccvs_done</KEYWORD2>\r
+ <KEYWORD2>ccvs_init</KEYWORD2>\r
+ <KEYWORD2>ccvs_lookup</KEYWORD2>\r
+ <KEYWORD2>ccvs_new</KEYWORD2>\r
+ <KEYWORD2>ccvs_report</KEYWORD2>\r
+ <KEYWORD2>ccvs_return</KEYWORD2>\r
+ <KEYWORD2>ccvs_reverse</KEYWORD2>\r
+ <KEYWORD2>ccvs_sale</KEYWORD2>\r
+ <KEYWORD2>ccvs_status</KEYWORD2>\r
+ <KEYWORD2>ccvs_textvalue</KEYWORD2>\r
+ <KEYWORD2>ccvs_void</KEYWORD2>\r
+ <KEYWORD2>ceil</KEYWORD2>\r
+ <KEYWORD2>chdir</KEYWORD2>\r
+ <KEYWORD2>checkdate</KEYWORD2>\r
+ <KEYWORD2>checkdnsrr</KEYWORD2>\r
+ <KEYWORD2>checkin</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>checkout</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>chgrp</KEYWORD2>\r
+ <KEYWORD2>child_nodes</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>children</KEYWORD2> <!-- hw_api, simplexmlelement, tidy_node -->\r
+ <KEYWORD2>chmod</KEYWORD2>\r
+ <KEYWORD2>chop</KEYWORD2>\r
+ <KEYWORD2>chown</KEYWORD2>\r
+ <KEYWORD2>chr</KEYWORD2>\r
+ <KEYWORD2>chroot</KEYWORD2>\r
+ <KEYWORD2>chunk_split</KEYWORD2>\r
+ <KEYWORD2>class_exists</KEYWORD2>\r
+ <KEYWORD2>class_implements</KEYWORD2>\r
+ <KEYWORD2>class_parents</KEYWORD2>\r
+ <KEYWORD2>classkit_import</KEYWORD2>\r
+ <KEYWORD2>classkit_method_add</KEYWORD2>\r
+ <KEYWORD2>classkit_method_copy</KEYWORD2>\r
+ <KEYWORD2>classkit_method_redefine</KEYWORD2>\r
+ <KEYWORD2>classkit_method_remove</KEYWORD2>\r
+ <KEYWORD2>classkit_method_rename</KEYWORD2>\r
+ <KEYWORD2>clearstatcache</KEYWORD2>\r
+ <KEYWORD2>clone_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>clonenode</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>close</KEYWORD2> <!-- lob, memcache -->\r
+ <KEYWORD2>closedir</KEYWORD2>\r
+ <KEYWORD2>closelog</KEYWORD2>\r
+ <KEYWORD2>com</KEYWORD2>\r
+ <KEYWORD2>com_addref</KEYWORD2>\r
+ <KEYWORD2>com_create_guid</KEYWORD2>\r
+ <KEYWORD2>com_event_sink</KEYWORD2>\r
+ <KEYWORD2>com_get</KEYWORD2>\r
+ <KEYWORD2>com_get_active_object</KEYWORD2>\r
+ <KEYWORD2>com_invoke</KEYWORD2>\r
+ <KEYWORD2>com_isenum</KEYWORD2>\r
+ <KEYWORD2>com_load</KEYWORD2>\r
+ <KEYWORD2>com_load_typelib</KEYWORD2>\r
+ <KEYWORD2>com_message_pump</KEYWORD2>\r
+ <KEYWORD2>com_print_typeinfo</KEYWORD2>\r
+ <KEYWORD2>com_propget</KEYWORD2>\r
+ <KEYWORD2>com_propput</KEYWORD2>\r
+ <KEYWORD2>com_propset</KEYWORD2>\r
+ <KEYWORD2>com_release</KEYWORD2>\r
+ <KEYWORD2>com_set</KEYWORD2>\r
+ <KEYWORD2>commit</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>compact</KEYWORD2>\r
+ <KEYWORD2>connect</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>connection_aborted</KEYWORD2>\r
+ <KEYWORD2>connection_status</KEYWORD2>\r
+ <KEYWORD2>connection_timeout</KEYWORD2>\r
+ <KEYWORD2>constant</KEYWORD2>\r
+ <KEYWORD2>content</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>convert_cyr_string</KEYWORD2>\r
+ <KEYWORD2>convert_uudecode</KEYWORD2>\r
+ <KEYWORD2>convert_uuencode</KEYWORD2>\r
+ <KEYWORD2>copy</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>cosh</KEYWORD2>\r
+ <KEYWORD2>count</KEYWORD2> <!-- arrayobject, hw_api_error, hw_api_object -->\r
+ <KEYWORD2>count_chars</KEYWORD2>\r
+ <KEYWORD2>cpdf_add_annotation</KEYWORD2>\r
+ <KEYWORD2>cpdf_add_outline</KEYWORD2>\r
+ <KEYWORD2>cpdf_arc</KEYWORD2>\r
+ <KEYWORD2>cpdf_begin_text</KEYWORD2>\r
+ <KEYWORD2>cpdf_circle</KEYWORD2>\r
+ <KEYWORD2>cpdf_clip</KEYWORD2>\r
+ <KEYWORD2>cpdf_close</KEYWORD2>\r
+ <KEYWORD2>cpdf_closepath</KEYWORD2>\r
+ <KEYWORD2>cpdf_closepath_fill_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_closepath_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_continue_text</KEYWORD2>\r
+ <KEYWORD2>cpdf_curveto</KEYWORD2>\r
+ <KEYWORD2>cpdf_end_text</KEYWORD2>\r
+ <KEYWORD2>cpdf_fill</KEYWORD2>\r
+ <KEYWORD2>cpdf_fill_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_finalize</KEYWORD2>\r
+ <KEYWORD2>cpdf_finalize_page</KEYWORD2>\r
+ <KEYWORD2>cpdf_global_set_document_limits</KEYWORD2>\r
+ <KEYWORD2>cpdf_import_jpeg</KEYWORD2>\r
+ <KEYWORD2>cpdf_lineto</KEYWORD2>\r
+ <KEYWORD2>cpdf_moveto</KEYWORD2>\r
+ <KEYWORD2>cpdf_newpath</KEYWORD2>\r
+ <KEYWORD2>cpdf_open</KEYWORD2>\r
+ <KEYWORD2>cpdf_output_buffer</KEYWORD2>\r
+ <KEYWORD2>cpdf_page_init</KEYWORD2>\r
+ <KEYWORD2>cpdf_place_inline_image</KEYWORD2>\r
+ <KEYWORD2>cpdf_rect</KEYWORD2>\r
+ <KEYWORD2>cpdf_restore</KEYWORD2>\r
+ <KEYWORD2>cpdf_rlineto</KEYWORD2>\r
+ <KEYWORD2>cpdf_rmoveto</KEYWORD2>\r
+ <KEYWORD2>cpdf_rotate</KEYWORD2>\r
+ <KEYWORD2>cpdf_rotate_text</KEYWORD2>\r
+ <KEYWORD2>cpdf_save</KEYWORD2>\r
+ <KEYWORD2>cpdf_save_to_file</KEYWORD2>\r
+ <KEYWORD2>cpdf_scale</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_action_url</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_char_spacing</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_creator</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_current_page</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_font</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_font_directories</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_font_map_file</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_horiz_scaling</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_keywords</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_leading</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_page_animation</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_subject</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_text_matrix</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_text_pos</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_text_rendering</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_text_rise</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_title</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_viewer_preferences</KEYWORD2>\r
+ <KEYWORD2>cpdf_set_word_spacing</KEYWORD2>\r
+ <KEYWORD2>cpdf_setdash</KEYWORD2>\r
+ <KEYWORD2>cpdf_setflat</KEYWORD2>\r
+ <KEYWORD2>cpdf_setgray</KEYWORD2>\r
+ <KEYWORD2>cpdf_setgray_fill</KEYWORD2>\r
+ <KEYWORD2>cpdf_setgray_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_setlinecap</KEYWORD2>\r
+ <KEYWORD2>cpdf_setlinejoin</KEYWORD2>\r
+ <KEYWORD2>cpdf_setlinewidth</KEYWORD2>\r
+ <KEYWORD2>cpdf_setmiterlimit</KEYWORD2>\r
+ <KEYWORD2>cpdf_setrgbcolor</KEYWORD2>\r
+ <KEYWORD2>cpdf_setrgbcolor_fill</KEYWORD2>\r
+ <KEYWORD2>cpdf_setrgbcolor_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_show</KEYWORD2>\r
+ <KEYWORD2>cpdf_show_xy</KEYWORD2>\r
+ <KEYWORD2>cpdf_stringwidth</KEYWORD2>\r
+ <KEYWORD2>cpdf_stroke</KEYWORD2>\r
+ <KEYWORD2>cpdf_text</KEYWORD2>\r
+ <KEYWORD2>cpdf_translate</KEYWORD2>\r
+ <KEYWORD2>crack_check</KEYWORD2>\r
+ <KEYWORD2>crack_closedict</KEYWORD2>\r
+ <KEYWORD2>crack_getlastmessage</KEYWORD2>\r
+ <KEYWORD2>crack_opendict</KEYWORD2>\r
+ <KEYWORD2>crc32</KEYWORD2>\r
+ <KEYWORD2>create_attribute</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_cdata_section</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_comment</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_element</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_element_ns</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_entity_reference</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_function</KEYWORD2>\r
+ <KEYWORD2>create_processing_instruction</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>create_text_node</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createattribute</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createattributens</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createcdatasection</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createcomment</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createdocument</KEYWORD2> <!-- domimplementation -->\r
+ <KEYWORD2>createdocumentfragment</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createdocumenttype</KEYWORD2> <!-- domimplementation -->\r
+ <KEYWORD2>createelement</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createelementns</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createentityreference</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createprocessinginstruction</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>createtextnode</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>crypt</KEYWORD2>\r
+ <KEYWORD2>ctype_alnum</KEYWORD2>\r
+ <KEYWORD2>ctype_alpha</KEYWORD2>\r
+ <KEYWORD2>ctype_cntrl</KEYWORD2>\r
+ <KEYWORD2>ctype_digit</KEYWORD2>\r
+ <KEYWORD2>ctype_graph</KEYWORD2>\r
+ <KEYWORD2>ctype_lower</KEYWORD2>\r
+ <KEYWORD2>ctype_print</KEYWORD2>\r
+ <KEYWORD2>ctype_punct</KEYWORD2>\r
+ <KEYWORD2>ctype_space</KEYWORD2>\r
+ <KEYWORD2>ctype_upper</KEYWORD2>\r
+ <KEYWORD2>ctype_xdigit</KEYWORD2>\r
+ <KEYWORD2>curl_close</KEYWORD2>\r
+ <KEYWORD2>curl_copy_handle</KEYWORD2>\r
+ <KEYWORD2>curl_errno</KEYWORD2>\r
+ <KEYWORD2>curl_error</KEYWORD2>\r
+ <KEYWORD2>curl_exec</KEYWORD2>\r
+ <KEYWORD2>curl_getinfo</KEYWORD2>\r
+ <KEYWORD2>curl_init</KEYWORD2>\r
+ <KEYWORD2>curl_multi_add_handle</KEYWORD2>\r
+ <KEYWORD2>curl_multi_close</KEYWORD2>\r
+ <KEYWORD2>curl_multi_exec</KEYWORD2>\r
+ <KEYWORD2>curl_multi_getcontent</KEYWORD2>\r
+ <KEYWORD2>curl_multi_info_read</KEYWORD2>\r
+ <KEYWORD2>curl_multi_init</KEYWORD2>\r
+ <KEYWORD2>curl_multi_remove_handle</KEYWORD2>\r
+ <KEYWORD2>curl_multi_select</KEYWORD2>\r
+ <KEYWORD2>curl_setopt</KEYWORD2>\r
+ <KEYWORD2>curl_version</KEYWORD2>\r
+ <KEYWORD2>current</KEYWORD2> <!-- arrayiterator, directoryiterator, filteriterator, recursiveiteratoriterator, simplexmliterator -->\r
+ <KEYWORD2>cybercash_base64_decode</KEYWORD2>\r
+ <KEYWORD2>cybercash_base64_encode</KEYWORD2>\r
+ <KEYWORD2>cybercash_decr</KEYWORD2>\r
+ <KEYWORD2>cybercash_encr</KEYWORD2>\r
+ <KEYWORD2>cyrus_authenticate</KEYWORD2>\r
+ <KEYWORD2>cyrus_bind</KEYWORD2>\r
+ <KEYWORD2>cyrus_close</KEYWORD2>\r
+ <KEYWORD2>cyrus_connect</KEYWORD2>\r
+ <KEYWORD2>cyrus_query</KEYWORD2>\r
+ <KEYWORD2>cyrus_unbind</KEYWORD2>\r
+ <KEYWORD2>data</KEYWORD2> <!-- domprocessinginstruction -->\r
+ <KEYWORD2>date</KEYWORD2>\r
+ <KEYWORD2>date_sunrise</KEYWORD2>\r
+ <KEYWORD2>date_sunset</KEYWORD2>\r
+ <KEYWORD2>dba_close</KEYWORD2>\r
+ <KEYWORD2>dba_delete</KEYWORD2>\r
+ <KEYWORD2>dba_exists</KEYWORD2>\r
+ <KEYWORD2>dba_fetch</KEYWORD2>\r
+ <KEYWORD2>dba_firstkey</KEYWORD2>\r
+ <KEYWORD2>dba_handlers</KEYWORD2>\r
+ <KEYWORD2>dba_insert</KEYWORD2>\r
+ <KEYWORD2>dba_key_split</KEYWORD2>\r
+ <KEYWORD2>dba_list</KEYWORD2>\r
+ <KEYWORD2>dba_nextkey</KEYWORD2>\r
+ <KEYWORD2>dba_open</KEYWORD2>\r
+ <KEYWORD2>dba_optimize</KEYWORD2>\r
+ <KEYWORD2>dba_popen</KEYWORD2>\r
+ <KEYWORD2>dba_replace</KEYWORD2>\r
+ <KEYWORD2>dba_sync</KEYWORD2>\r
+ <KEYWORD2>dbase_add_record</KEYWORD2>\r
+ <KEYWORD2>dbase_close</KEYWORD2>\r
+ <KEYWORD2>dbase_create</KEYWORD2>\r
+ <KEYWORD2>dbase_delete_record</KEYWORD2>\r
+ <KEYWORD2>dbase_get_header_info</KEYWORD2>\r
+ <KEYWORD2>dbase_get_record</KEYWORD2>\r
+ <KEYWORD2>dbase_get_record_with_names</KEYWORD2>\r
+ <KEYWORD2>dbase_numfields</KEYWORD2>\r
+ <KEYWORD2>dbase_numrecords</KEYWORD2>\r
+ <KEYWORD2>dbase_open</KEYWORD2>\r
+ <KEYWORD2>dbase_pack</KEYWORD2>\r
+ <KEYWORD2>dbase_replace_record</KEYWORD2>\r
+ <KEYWORD2>dblist</KEYWORD2>\r
+ <KEYWORD2>dbmclose</KEYWORD2>\r
+ <KEYWORD2>dbmdelete</KEYWORD2>\r
+ <KEYWORD2>dbmexists</KEYWORD2>\r
+ <KEYWORD2>dbmfetch</KEYWORD2>\r
+ <KEYWORD2>dbmfirstkey</KEYWORD2>\r
+ <KEYWORD2>dbminsert</KEYWORD2>\r
+ <KEYWORD2>dbmnextkey</KEYWORD2>\r
+ <KEYWORD2>dbmopen</KEYWORD2>\r
+ <KEYWORD2>dbmreplace</KEYWORD2>\r
+ <KEYWORD2>dbplus_add</KEYWORD2>\r
+ <KEYWORD2>dbplus_aql</KEYWORD2>\r
+ <KEYWORD2>dbplus_chdir</KEYWORD2>\r
+ <KEYWORD2>dbplus_close</KEYWORD2>\r
+ <KEYWORD2>dbplus_curr</KEYWORD2>\r
+ <KEYWORD2>dbplus_errcode</KEYWORD2>\r
+ <KEYWORD2>dbplus_errno</KEYWORD2>\r
+ <KEYWORD2>dbplus_find</KEYWORD2>\r
+ <KEYWORD2>dbplus_first</KEYWORD2>\r
+ <KEYWORD2>dbplus_flush</KEYWORD2>\r
+ <KEYWORD2>dbplus_freealllocks</KEYWORD2>\r
+ <KEYWORD2>dbplus_freelock</KEYWORD2>\r
+ <KEYWORD2>dbplus_freerlocks</KEYWORD2>\r
+ <KEYWORD2>dbplus_getlock</KEYWORD2>\r
+ <KEYWORD2>dbplus_getunique</KEYWORD2>\r
+ <KEYWORD2>dbplus_info</KEYWORD2>\r
+ <KEYWORD2>dbplus_last</KEYWORD2>\r
+ <KEYWORD2>dbplus_lockrel</KEYWORD2>\r
+ <KEYWORD2>dbplus_next</KEYWORD2>\r
+ <KEYWORD2>dbplus_open</KEYWORD2>\r
+ <KEYWORD2>dbplus_prev</KEYWORD2>\r
+ <KEYWORD2>dbplus_rchperm</KEYWORD2>\r
+ <KEYWORD2>dbplus_rcreate</KEYWORD2>\r
+ <KEYWORD2>dbplus_rcrtexact</KEYWORD2>\r
+ <KEYWORD2>dbplus_rcrtlike</KEYWORD2>\r
+ <KEYWORD2>dbplus_resolve</KEYWORD2>\r
+ <KEYWORD2>dbplus_restorepos</KEYWORD2>\r
+ <KEYWORD2>dbplus_rkeys</KEYWORD2>\r
+ <KEYWORD2>dbplus_ropen</KEYWORD2>\r
+ <KEYWORD2>dbplus_rquery</KEYWORD2>\r
+ <KEYWORD2>dbplus_rrename</KEYWORD2>\r
+ <KEYWORD2>dbplus_rsecindex</KEYWORD2>\r
+ <KEYWORD2>dbplus_runlink</KEYWORD2>\r
+ <KEYWORD2>dbplus_rzap</KEYWORD2>\r
+ <KEYWORD2>dbplus_savepos</KEYWORD2>\r
+ <KEYWORD2>dbplus_setindex</KEYWORD2>\r
+ <KEYWORD2>dbplus_setindexbynumber</KEYWORD2>\r
+ <KEYWORD2>dbplus_sql</KEYWORD2>\r
+ <KEYWORD2>dbplus_tcl</KEYWORD2>\r
+ <KEYWORD2>dbplus_tremove</KEYWORD2>\r
+ <KEYWORD2>dbplus_undo</KEYWORD2>\r
+ <KEYWORD2>dbplus_undoprepare</KEYWORD2>\r
+ <KEYWORD2>dbplus_unlockrel</KEYWORD2>\r
+ <KEYWORD2>dbplus_unselect</KEYWORD2>\r
+ <KEYWORD2>dbplus_update</KEYWORD2>\r
+ <KEYWORD2>dbplus_xlockrel</KEYWORD2>\r
+ <KEYWORD2>dbplus_xunlockrel</KEYWORD2>\r
+ <KEYWORD2>dbstat</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>dbx_close</KEYWORD2>\r
+ <KEYWORD2>dbx_compare</KEYWORD2>\r
+ <KEYWORD2>dbx_connect</KEYWORD2>\r
+ <KEYWORD2>dbx_error</KEYWORD2>\r
+ <KEYWORD2>dbx_escape_string</KEYWORD2>\r
+ <KEYWORD2>dbx_fetch_row</KEYWORD2>\r
+ <KEYWORD2>dbx_query</KEYWORD2>\r
+ <KEYWORD2>dbx_sort</KEYWORD2>\r
+ <KEYWORD2>dcgettext</KEYWORD2>\r
+ <KEYWORD2>dcngettext</KEYWORD2>\r
+ <KEYWORD2>dcstat</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>deaggregate</KEYWORD2>\r
+ <KEYWORD2>debug_backtrace</KEYWORD2>\r
+ <KEYWORD2>debug_print_backtrace</KEYWORD2>\r
+ <KEYWORD2>debug_zval_dump</KEYWORD2>\r
+ <KEYWORD2>debugger_off</KEYWORD2>\r
+ <KEYWORD2>debugger_on</KEYWORD2>\r
+ <KEYWORD2>decbin</KEYWORD2>\r
+ <KEYWORD2>dechex</KEYWORD2>\r
+ <KEYWORD2>decoct</KEYWORD2>\r
+ <KEYWORD2>decrement</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>define</KEYWORD2>\r
+ <KEYWORD2>define_syslog_variables</KEYWORD2>\r
+ <KEYWORD2>defined</KEYWORD2>\r
+ <KEYWORD2>deg2rad</KEYWORD2>\r
+ <KEYWORD2>delete</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>deletedata</KEYWORD2> <!-- domcharacterdata -->\r
+ <KEYWORD2>description</KEYWORD2> <!-- hw_api_reason -->\r
+ <KEYWORD2>dgettext</KEYWORD2>\r
+ <KEYWORD2>dio_close</KEYWORD2>\r
+ <KEYWORD2>dio_fcntl</KEYWORD2>\r
+ <KEYWORD2>dio_open</KEYWORD2>\r
+ <KEYWORD2>dio_read</KEYWORD2>\r
+ <KEYWORD2>dio_seek</KEYWORD2>\r
+ <KEYWORD2>dio_stat</KEYWORD2>\r
+ <KEYWORD2>dio_tcsetattr</KEYWORD2>\r
+ <KEYWORD2>dio_truncate</KEYWORD2>\r
+ <KEYWORD2>dio_write</KEYWORD2>\r
+ <KEYWORD2>dir</KEYWORD2>\r
+ <KEYWORD2>dirname</KEYWORD2>\r
+ <KEYWORD2>disk_free_space</KEYWORD2>\r
+ <KEYWORD2>disk_total_space</KEYWORD2>\r
+ <KEYWORD2>diskfreespace</KEYWORD2>\r
+ <KEYWORD2>dl</KEYWORD2>\r
+ <KEYWORD2>dngettext</KEYWORD2>\r
+ <KEYWORD2>dns_check_record</KEYWORD2>\r
+ <KEYWORD2>dns_get_mx</KEYWORD2>\r
+ <KEYWORD2>dns_get_record</KEYWORD2>\r
+ <KEYWORD2>doctype</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>document_element</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>dom_import_simplexml</KEYWORD2>\r
+ <KEYWORD2>domxml_new_doc</KEYWORD2>\r
+ <KEYWORD2>domxml_open_file</KEYWORD2>\r
+ <KEYWORD2>domxml_open_mem</KEYWORD2>\r
+ <KEYWORD2>domxml_version</KEYWORD2>\r
+ <KEYWORD2>domxml_xmltree</KEYWORD2>\r
+ <KEYWORD2>domxml_xslt_stylesheet</KEYWORD2>\r
+ <KEYWORD2>domxml_xslt_stylesheet_doc</KEYWORD2>\r
+ <KEYWORD2>domxml_xslt_stylesheet_file</KEYWORD2>\r
+ <KEYWORD2>dotnet</KEYWORD2>\r
+ <KEYWORD2>dotnet_load</KEYWORD2>\r
+ <KEYWORD2>doubleval</KEYWORD2>\r
+ <KEYWORD2>drawcurve</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>drawcurveto</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>drawline</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>drawlineto</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>dstanchors</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>dstofsrcanchors</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>dump_file</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>dump_mem</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>dump_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>each</KEYWORD2>\r
+ <KEYWORD2>easter_date</KEYWORD2>\r
+ <KEYWORD2>easter_days</KEYWORD2>\r
+ <KEYWORD2>ebcdic2ascii</KEYWORD2>\r
+ <KEYWORD2>end</KEYWORD2>\r
+ <KEYWORD2>entities</KEYWORD2> <!-- domdocumenttype -->\r
+ <KEYWORD2>eof</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>erase</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>ereg</KEYWORD2>\r
+ <KEYWORD2>ereg_replace</KEYWORD2>\r
+ <KEYWORD2>eregi</KEYWORD2>\r
+ <KEYWORD2>eregi_replace</KEYWORD2>\r
+ <KEYWORD2>error_log</KEYWORD2>\r
+ <KEYWORD2>error_reporting</KEYWORD2>\r
+ <KEYWORD2>errorcode</KEYWORD2> <!-- pdo, pdostatement -->\r
+ <KEYWORD2>errorinfo</KEYWORD2> <!-- pdo, pdostatement -->\r
+ <KEYWORD2>escapeshellarg</KEYWORD2>\r
+ <KEYWORD2>escapeshellcmd</KEYWORD2>\r
+ <KEYWORD2>exec</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>execute</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>exif_imagetype</KEYWORD2>\r
+ <KEYWORD2>exif_read_data</KEYWORD2>\r
+ <KEYWORD2>exif_tagname</KEYWORD2>\r
+ <KEYWORD2>exif_thumbnail</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>explode</KEYWORD2>\r
+ <KEYWORD2>expm1</KEYWORD2>\r
+ <KEYWORD2>export</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>extension_loaded</KEYWORD2>\r
+ <KEYWORD2>extract</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>ezmlm_hash</KEYWORD2>\r
+ <KEYWORD2>fam_cancel_monitor</KEYWORD2>\r
+ <KEYWORD2>fam_close</KEYWORD2>\r
+ <KEYWORD2>fam_monitor_collection</KEYWORD2>\r
+ <KEYWORD2>fam_monitor_directory</KEYWORD2>\r
+ <KEYWORD2>fam_monitor_file</KEYWORD2>\r
+ <KEYWORD2>fam_next_event</KEYWORD2>\r
+ <KEYWORD2>fam_open</KEYWORD2>\r
+ <KEYWORD2>fam_pending</KEYWORD2>\r
+ <KEYWORD2>fam_resume_monitor</KEYWORD2>\r
+ <KEYWORD2>fam_suspend_monitor</KEYWORD2>\r
+ <KEYWORD2>fbsql_affected_rows</KEYWORD2>\r
+ <KEYWORD2>fbsql_autocommit</KEYWORD2>\r
+ <KEYWORD2>fbsql_blob_size</KEYWORD2>\r
+ <KEYWORD2>fbsql_change_user</KEYWORD2>\r
+ <KEYWORD2>fbsql_clob_size</KEYWORD2>\r
+ <KEYWORD2>fbsql_close</KEYWORD2>\r
+ <KEYWORD2>fbsql_commit</KEYWORD2>\r
+ <KEYWORD2>fbsql_connect</KEYWORD2>\r
+ <KEYWORD2>fbsql_create_blob</KEYWORD2>\r
+ <KEYWORD2>fbsql_create_clob</KEYWORD2>\r
+ <KEYWORD2>fbsql_create_db</KEYWORD2>\r
+ <KEYWORD2>fbsql_data_seek</KEYWORD2>\r
+ <KEYWORD2>fbsql_database</KEYWORD2>\r
+ <KEYWORD2>fbsql_database_password</KEYWORD2>\r
+ <KEYWORD2>fbsql_db_query</KEYWORD2>\r
+ <KEYWORD2>fbsql_db_status</KEYWORD2>\r
+ <KEYWORD2>fbsql_drop_db</KEYWORD2>\r
+ <KEYWORD2>fbsql_errno</KEYWORD2>\r
+ <KEYWORD2>fbsql_error</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_array</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_field</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_lengths</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_object</KEYWORD2>\r
+ <KEYWORD2>fbsql_fetch_row</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_flags</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_len</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_name</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_seek</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_table</KEYWORD2>\r
+ <KEYWORD2>fbsql_field_type</KEYWORD2>\r
+ <KEYWORD2>fbsql_free_result</KEYWORD2>\r
+ <KEYWORD2>fbsql_get_autostart_info</KEYWORD2>\r
+ <KEYWORD2>fbsql_hostname</KEYWORD2>\r
+ <KEYWORD2>fbsql_insert_id</KEYWORD2>\r
+ <KEYWORD2>fbsql_list_dbs</KEYWORD2>\r
+ <KEYWORD2>fbsql_list_fields</KEYWORD2>\r
+ <KEYWORD2>fbsql_list_tables</KEYWORD2>\r
+ <KEYWORD2>fbsql_next_result</KEYWORD2>\r
+ <KEYWORD2>fbsql_num_fields</KEYWORD2>\r
+ <KEYWORD2>fbsql_num_rows</KEYWORD2>\r
+ <KEYWORD2>fbsql_password</KEYWORD2>\r
+ <KEYWORD2>fbsql_pconnect</KEYWORD2>\r
+ <KEYWORD2>fbsql_query</KEYWORD2>\r
+ <KEYWORD2>fbsql_read_blob</KEYWORD2>\r
+ <KEYWORD2>fbsql_read_clob</KEYWORD2>\r
+ <KEYWORD2>fbsql_result</KEYWORD2>\r
+ <KEYWORD2>fbsql_rollback</KEYWORD2>\r
+ <KEYWORD2>fbsql_select_db</KEYWORD2>\r
+ <KEYWORD2>fbsql_set_lob_mode</KEYWORD2>\r
+ <KEYWORD2>fbsql_set_password</KEYWORD2>\r
+ <KEYWORD2>fbsql_set_transaction</KEYWORD2>\r
+ <KEYWORD2>fbsql_start_db</KEYWORD2>\r
+ <KEYWORD2>fbsql_stop_db</KEYWORD2>\r
+ <KEYWORD2>fbsql_tablename</KEYWORD2>\r
+ <KEYWORD2>fbsql_username</KEYWORD2>\r
+ <KEYWORD2>fbsql_warnings</KEYWORD2>\r
+ <KEYWORD2>fclose</KEYWORD2>\r
+ <KEYWORD2>fdf_add_doc_javascript</KEYWORD2>\r
+ <KEYWORD2>fdf_add_template</KEYWORD2>\r
+ <KEYWORD2>fdf_close</KEYWORD2>\r
+ <KEYWORD2>fdf_create</KEYWORD2>\r
+ <KEYWORD2>fdf_enum_values</KEYWORD2>\r
+ <KEYWORD2>fdf_errno</KEYWORD2>\r
+ <KEYWORD2>fdf_error</KEYWORD2>\r
+ <KEYWORD2>fdf_get_ap</KEYWORD2>\r
+ <KEYWORD2>fdf_get_attachment</KEYWORD2>\r
+ <KEYWORD2>fdf_get_encoding</KEYWORD2>\r
+ <KEYWORD2>fdf_get_file</KEYWORD2>\r
+ <KEYWORD2>fdf_get_flags</KEYWORD2>\r
+ <KEYWORD2>fdf_get_opt</KEYWORD2>\r
+ <KEYWORD2>fdf_get_status</KEYWORD2>\r
+ <KEYWORD2>fdf_get_value</KEYWORD2>\r
+ <KEYWORD2>fdf_get_version</KEYWORD2>\r
+ <KEYWORD2>fdf_header</KEYWORD2>\r
+ <KEYWORD2>fdf_next_field_name</KEYWORD2>\r
+ <KEYWORD2>fdf_open</KEYWORD2>\r
+ <KEYWORD2>fdf_open_string</KEYWORD2>\r
+ <KEYWORD2>fdf_remove_item</KEYWORD2>\r
+ <KEYWORD2>fdf_save</KEYWORD2>\r
+ <KEYWORD2>fdf_save_string</KEYWORD2>\r
+ <KEYWORD2>fdf_set_ap</KEYWORD2>\r
+ <KEYWORD2>fdf_set_encoding</KEYWORD2>\r
+ <KEYWORD2>fdf_set_file</KEYWORD2>\r
+ <KEYWORD2>fdf_set_flags</KEYWORD2>\r
+ <KEYWORD2>fdf_set_javascript_action</KEYWORD2>\r
+ <KEYWORD2>fdf_set_on_import_javascript</KEYWORD2>\r
+ <KEYWORD2>fdf_set_opt</KEYWORD2>\r
+ <KEYWORD2>fdf_set_status</KEYWORD2>\r
+ <KEYWORD2>fdf_set_submit_form_action</KEYWORD2>\r
+ <KEYWORD2>fdf_set_target_frame</KEYWORD2>\r
+ <KEYWORD2>fdf_set_value</KEYWORD2>\r
+ <KEYWORD2>fdf_set_version</KEYWORD2>\r
+ <KEYWORD2>feof</KEYWORD2>\r
+ <KEYWORD2>fetch</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>fetchall</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>fetchsingle</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>fflush</KEYWORD2>\r
+ <KEYWORD2>fgetc</KEYWORD2>\r
+ <KEYWORD2>fgetcsv</KEYWORD2>\r
+ <KEYWORD2>fgets</KEYWORD2>\r
+ <KEYWORD2>fgetss</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>file_exists</KEYWORD2>\r
+ <KEYWORD2>file_get_contents</KEYWORD2>\r
+ <KEYWORD2>file_put_contents</KEYWORD2>\r
+ <KEYWORD2>fileatime</KEYWORD2>\r
+ <KEYWORD2>filectime</KEYWORD2>\r
+ <KEYWORD2>filegroup</KEYWORD2>\r
+ <KEYWORD2>fileinode</KEYWORD2>\r
+ <KEYWORD2>filemtime</KEYWORD2>\r
+ <KEYWORD2>fileowner</KEYWORD2>\r
+ <KEYWORD2>fileperms</KEYWORD2>\r
+ <KEYWORD2>filepro</KEYWORD2>\r
+ <KEYWORD2>filepro_fieldcount</KEYWORD2>\r
+ <KEYWORD2>filepro_fieldname</KEYWORD2>\r
+ <KEYWORD2>filepro_fieldtype</KEYWORD2>\r
+ <KEYWORD2>filepro_fieldwidth</KEYWORD2>\r
+ <KEYWORD2>filepro_retrieve</KEYWORD2>\r
+ <KEYWORD2>filepro_rowcount</KEYWORD2>\r
+ <KEYWORD2>filesize</KEYWORD2>\r
+ <KEYWORD2>filetype</KEYWORD2>\r
+ <KEYWORD2>find</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>first_child</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>floatval</KEYWORD2>\r
+ <KEYWORD2>flock</KEYWORD2>\r
+ <KEYWORD2>floor</KEYWORD2>\r
+ <KEYWORD2>flush</KEYWORD2> <!-- lob, memcache -->\r
+ <KEYWORD2>fmod</KEYWORD2>\r
+ <KEYWORD2>fnmatch</KEYWORD2>\r
+ <KEYWORD2>fopen</KEYWORD2>\r
+ <KEYWORD2>fpassthru</KEYWORD2>\r
+ <KEYWORD2>fprintf</KEYWORD2>\r
+ <KEYWORD2>fputcsv</KEYWORD2>\r
+ <KEYWORD2>fputs</KEYWORD2>\r
+ <KEYWORD2>fread</KEYWORD2>\r
+ <KEYWORD2>free</KEYWORD2> <!-- collection, descriptor -->\r
+ <KEYWORD2>frenchtojd</KEYWORD2>\r
+ <KEYWORD2>fribidi_log2vis</KEYWORD2>\r
+ <KEYWORD2>fscanf</KEYWORD2>\r
+ <KEYWORD2>fseek</KEYWORD2>\r
+ <KEYWORD2>fsockopen</KEYWORD2>\r
+ <KEYWORD2>fstat</KEYWORD2>\r
+ <KEYWORD2>ftell</KEYWORD2>\r
+ <KEYWORD2>ftok</KEYWORD2>\r
+ <KEYWORD2>ftp_alloc</KEYWORD2>\r
+ <KEYWORD2>ftp_cdup</KEYWORD2>\r
+ <KEYWORD2>ftp_chdir</KEYWORD2>\r
+ <KEYWORD2>ftp_chmod</KEYWORD2>\r
+ <KEYWORD2>ftp_close</KEYWORD2>\r
+ <KEYWORD2>ftp_connect</KEYWORD2>\r
+ <KEYWORD2>ftp_delete</KEYWORD2>\r
+ <KEYWORD2>ftp_exec</KEYWORD2>\r
+ <KEYWORD2>ftp_fget</KEYWORD2>\r
+ <KEYWORD2>ftp_fput</KEYWORD2>\r
+ <KEYWORD2>ftp_get</KEYWORD2>\r
+ <KEYWORD2>ftp_get_option</KEYWORD2>\r
+ <KEYWORD2>ftp_login</KEYWORD2>\r
+ <KEYWORD2>ftp_mdtm</KEYWORD2>\r
+ <KEYWORD2>ftp_mkdir</KEYWORD2>\r
+ <KEYWORD2>ftp_nb_continue</KEYWORD2>\r
+ <KEYWORD2>ftp_nb_fget</KEYWORD2>\r
+ <KEYWORD2>ftp_nb_fput</KEYWORD2>\r
+ <KEYWORD2>ftp_nb_get</KEYWORD2>\r
+ <KEYWORD2>ftp_nb_put</KEYWORD2>\r
+ <KEYWORD2>ftp_nlist</KEYWORD2>\r
+ <KEYWORD2>ftp_pasv</KEYWORD2>\r
+ <KEYWORD2>ftp_put</KEYWORD2>\r
+ <KEYWORD2>ftp_pwd</KEYWORD2>\r
+ <KEYWORD2>ftp_quit</KEYWORD2>\r
+ <KEYWORD2>ftp_raw</KEYWORD2>\r
+ <KEYWORD2>ftp_rawlist</KEYWORD2>\r
+ <KEYWORD2>ftp_rename</KEYWORD2>\r
+ <KEYWORD2>ftp_rmdir</KEYWORD2>\r
+ <KEYWORD2>ftp_set_option</KEYWORD2>\r
+ <KEYWORD2>ftp_site</KEYWORD2>\r
+ <KEYWORD2>ftp_size</KEYWORD2>\r
+ <KEYWORD2>ftp_ssl_connect</KEYWORD2>\r
+ <KEYWORD2>ftp_systype</KEYWORD2>\r
+ <KEYWORD2>ftruncate</KEYWORD2>\r
+ <KEYWORD2>ftstat</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>func_get_arg</KEYWORD2>\r
+ <KEYWORD2>func_get_args</KEYWORD2>\r
+ <KEYWORD2>func_num_args</KEYWORD2>\r
+ <KEYWORD2>function_exists</KEYWORD2>\r
+ <KEYWORD2>fwrite</KEYWORD2>\r
+ <KEYWORD2>gd_info</KEYWORD2>\r
+ <KEYWORD2>get</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>get_attr</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>get_attribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>get_attribute_node</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>get_browser</KEYWORD2>\r
+ <KEYWORD2>get_cfg_var</KEYWORD2>\r
+ <KEYWORD2>get_class</KEYWORD2>\r
+ <KEYWORD2>get_class_methods</KEYWORD2>\r
+ <KEYWORD2>get_class_vars</KEYWORD2>\r
+ <KEYWORD2>get_content</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>get_current_user</KEYWORD2>\r
+ <KEYWORD2>get_declared_classes</KEYWORD2>\r
+ <KEYWORD2>get_declared_interfaces</KEYWORD2>\r
+ <KEYWORD2>get_defined_constants</KEYWORD2>\r
+ <KEYWORD2>get_defined_functions</KEYWORD2>\r
+ <KEYWORD2>get_defined_vars</KEYWORD2>\r
+ <KEYWORD2>get_element_by_id</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>get_elements_by_tagname</KEYWORD2> <!-- domdocument, domelement -->\r
+ <KEYWORD2>get_extension_funcs</KEYWORD2>\r
+ <KEYWORD2>get_headers</KEYWORD2>\r
+ <KEYWORD2>get_html_translation_table</KEYWORD2>\r
+ <KEYWORD2>get_include_path</KEYWORD2>\r
+ <KEYWORD2>get_included_files</KEYWORD2>\r
+ <KEYWORD2>get_loaded_extensions</KEYWORD2>\r
+ <KEYWORD2>get_magic_quotes_gpc</KEYWORD2>\r
+ <KEYWORD2>get_magic_quotes_runtime</KEYWORD2>\r
+ <KEYWORD2>get_meta_tags</KEYWORD2>\r
+ <KEYWORD2>get_nodes</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>get_object_vars</KEYWORD2>\r
+ <KEYWORD2>get_parent_class</KEYWORD2>\r
+ <KEYWORD2>get_required_files</KEYWORD2>\r
+ <KEYWORD2>get_resource_type</KEYWORD2>\r
+ <KEYWORD2>getallheaders</KEYWORD2>\r
+ <KEYWORD2>getatime</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getattr</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getattribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>getattributenode</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>getattributenodens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>getattributens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>getbuffering</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>getchildren</KEYWORD2> <!-- cachingrecursiveiterator, directoryiterator, parentiterator, recursivedirectoryiterator, simplexmliterator -->\r
+ <KEYWORD2>getcrc</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getctime</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getcwd</KEYWORD2>\r
+ <KEYWORD2>getdate</KEYWORD2>\r
+ <KEYWORD2>getdepth</KEYWORD2> <!-- recursiveiteratoriterator -->\r
+ <KEYWORD2>getelem</KEYWORD2> <!-- collection -->\r
+ <KEYWORD2>getelementbyid</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>getelementsbytagname</KEYWORD2> <!-- domdocument, domelement -->\r
+ <KEYWORD2>getelementsbytagnamens</KEYWORD2> <!-- domdocument, domelement -->\r
+ <KEYWORD2>getenv</KEYWORD2>\r
+ <KEYWORD2>getfilename</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getfiletime</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getfunctions</KEYWORD2> <!-- soapserver -->\r
+ <KEYWORD2>getgroup</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getheight</KEYWORD2> <!-- swfbitmap -->\r
+ <KEYWORD2>gethostbyaddr</KEYWORD2>\r
+ <KEYWORD2>gethostbyname</KEYWORD2>\r
+ <KEYWORD2>gethostbynamel</KEYWORD2>\r
+ <KEYWORD2>gethostos</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getimagesize</KEYWORD2>\r
+ <KEYWORD2>getinneriterator</KEYWORD2> <!-- filteriterator -->\r
+ <KEYWORD2>getinode</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getiterator</KEYWORD2> <!-- arrayobject -->\r
+ <KEYWORD2>getlastmod</KEYWORD2>\r
+ <KEYWORD2>getmethod</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getmtime</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getmxrr</KEYWORD2>\r
+ <KEYWORD2>getmygid</KEYWORD2>\r
+ <KEYWORD2>getmyinode</KEYWORD2>\r
+ <KEYWORD2>getmypid</KEYWORD2>\r
+ <KEYWORD2>getmyuid</KEYWORD2>\r
+ <KEYWORD2>getname</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getnameditem</KEYWORD2> <!-- domnamednodemap -->\r
+ <KEYWORD2>getnameditemns</KEYWORD2> <!-- domnamednodemap -->\r
+ <KEYWORD2>getopt</KEYWORD2>\r
+ <KEYWORD2>getowner</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getpackedsize</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getpath</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getpathname</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getperms</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getposition</KEYWORD2> <!-- limititerator -->\r
+ <KEYWORD2>getprotobyname</KEYWORD2>\r
+ <KEYWORD2>getprotobynumber</KEYWORD2>\r
+ <KEYWORD2>getrandmax</KEYWORD2>\r
+ <KEYWORD2>getrusage</KEYWORD2>\r
+ <KEYWORD2>getservbyname</KEYWORD2>\r
+ <KEYWORD2>getservbyport</KEYWORD2>\r
+ <KEYWORD2>getshape1</KEYWORD2> <!-- swfmorph -->\r
+ <KEYWORD2>getshape2</KEYWORD2> <!-- swfmorph -->\r
+ <KEYWORD2>getsize</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getstats</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>getsubiterator</KEYWORD2> <!-- recursiveiteratoriterator -->\r
+ <KEYWORD2>gettext</KEYWORD2>\r
+ <KEYWORD2>gettimeofday</KEYWORD2>\r
+ <KEYWORD2>gettype</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>getunpackedsize</KEYWORD2> <!-- rar -->\r
+ <KEYWORD2>getversion</KEYWORD2> <!-- memcache, rar -->\r
+ <KEYWORD2>getwidth</KEYWORD2> <!-- swfbitmap, swffont, swftext -->\r
+ <KEYWORD2>glob</KEYWORD2>\r
+ <KEYWORD2>gmdate</KEYWORD2>\r
+ <KEYWORD2>gmmktime</KEYWORD2>\r
+ <KEYWORD2>gmp_abs</KEYWORD2>\r
+ <KEYWORD2>gmp_add</KEYWORD2>\r
+ <KEYWORD2>gmp_and</KEYWORD2>\r
+ <KEYWORD2>gmp_clrbit</KEYWORD2>\r
+ <KEYWORD2>gmp_cmp</KEYWORD2>\r
+ <KEYWORD2>gmp_com</KEYWORD2>\r
+ <KEYWORD2>gmp_div</KEYWORD2>\r
+ <KEYWORD2>gmp_div_q</KEYWORD2>\r
+ <KEYWORD2>gmp_div_qr</KEYWORD2>\r
+ <KEYWORD2>gmp_div_r</KEYWORD2>\r
+ <KEYWORD2>gmp_divexact</KEYWORD2>\r
+ <KEYWORD2>gmp_fact</KEYWORD2>\r
+ <KEYWORD2>gmp_gcd</KEYWORD2>\r
+ <KEYWORD2>gmp_gcdext</KEYWORD2>\r
+ <KEYWORD2>gmp_hamdist</KEYWORD2>\r
+ <KEYWORD2>gmp_init</KEYWORD2>\r
+ <KEYWORD2>gmp_intval</KEYWORD2>\r
+ <KEYWORD2>gmp_invert</KEYWORD2>\r
+ <KEYWORD2>gmp_jacobi</KEYWORD2>\r
+ <KEYWORD2>gmp_legendre</KEYWORD2>\r
+ <KEYWORD2>gmp_mod</KEYWORD2>\r
+ <KEYWORD2>gmp_mul</KEYWORD2>\r
+ <KEYWORD2>gmp_neg</KEYWORD2>\r
+ <KEYWORD2>gmp_or</KEYWORD2>\r
+ <KEYWORD2>gmp_perfect_square</KEYWORD2>\r
+ <KEYWORD2>gmp_popcount</KEYWORD2>\r
+ <KEYWORD2>gmp_pow</KEYWORD2>\r
+ <KEYWORD2>gmp_powm</KEYWORD2>\r
+ <KEYWORD2>gmp_prob_prime</KEYWORD2>\r
+ <KEYWORD2>gmp_random</KEYWORD2>\r
+ <KEYWORD2>gmp_scan0</KEYWORD2>\r
+ <KEYWORD2>gmp_scan1</KEYWORD2>\r
+ <KEYWORD2>gmp_setbit</KEYWORD2>\r
+ <KEYWORD2>gmp_sign</KEYWORD2>\r
+ <KEYWORD2>gmp_sqrt</KEYWORD2>\r
+ <KEYWORD2>gmp_sqrtrem</KEYWORD2>\r
+ <KEYWORD2>gmp_strval</KEYWORD2>\r
+ <KEYWORD2>gmp_sub</KEYWORD2>\r
+ <KEYWORD2>gmp_xor</KEYWORD2>\r
+ <KEYWORD2>gmstrftime</KEYWORD2>\r
+ <KEYWORD2>gregoriantojd</KEYWORD2>\r
+ <KEYWORD2>gzclose</KEYWORD2>\r
+ <KEYWORD2>gzcompress</KEYWORD2>\r
+ <KEYWORD2>gzdeflate</KEYWORD2>\r
+ <KEYWORD2>gzencode</KEYWORD2>\r
+ <KEYWORD2>gzeof</KEYWORD2>\r
+ <KEYWORD2>gzfile</KEYWORD2>\r
+ <KEYWORD2>gzgetc</KEYWORD2>\r
+ <KEYWORD2>gzgets</KEYWORD2>\r
+ <KEYWORD2>gzgetss</KEYWORD2>\r
+ <KEYWORD2>gzinflate</KEYWORD2>\r
+ <KEYWORD2>gzopen</KEYWORD2>\r
+ <KEYWORD2>gzpassthru</KEYWORD2>\r
+ <KEYWORD2>gzputs</KEYWORD2>\r
+ <KEYWORD2>gzread</KEYWORD2>\r
+ <KEYWORD2>gzrewind</KEYWORD2>\r
+ <KEYWORD2>gzseek</KEYWORD2>\r
+ <KEYWORD2>gztell</KEYWORD2>\r
+ <KEYWORD2>gzuncompress</KEYWORD2>\r
+ <KEYWORD2>gzwrite</KEYWORD2>\r
+ <KEYWORD2>handle</KEYWORD2> <!-- soapserver -->\r
+ <KEYWORD2>has_attribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>has_attributes</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>has_child_nodes</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>hasattribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>hasattributens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>hasattributes</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>haschildnodes</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>haschildren</KEYWORD2> <!-- cachingrecursiveiterator, parentiterator, recursivedirectoryiterator, simplexmliterator, tidy_node -->\r
+ <KEYWORD2>hasfeature</KEYWORD2> <!-- domimplementation -->\r
+ <KEYWORD2>hasnext</KEYWORD2> <!-- cachingiterator -->\r
+ <KEYWORD2>hassiblings</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>header</KEYWORD2>\r
+ <KEYWORD2>headers_list</KEYWORD2>\r
+ <KEYWORD2>headers_sent</KEYWORD2>\r
+ <KEYWORD2>hebrev</KEYWORD2>\r
+ <KEYWORD2>hebrevc</KEYWORD2>\r
+ <KEYWORD2>hexdec</KEYWORD2>\r
+ <KEYWORD2>highlight_file</KEYWORD2>\r
+ <KEYWORD2>highlight_string</KEYWORD2>\r
+ <KEYWORD2>html_dump_mem</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>html_entity_decode</KEYWORD2>\r
+ <KEYWORD2>htmlentities</KEYWORD2>\r
+ <KEYWORD2>htmlspecialchars</KEYWORD2>\r
+ <KEYWORD2>http_build_query</KEYWORD2>\r
+ <KEYWORD2>hw_array2objrec</KEYWORD2>\r
+ <KEYWORD2>hw_changeobject</KEYWORD2>\r
+ <KEYWORD2>hw_children</KEYWORD2>\r
+ <KEYWORD2>hw_childrenobj</KEYWORD2>\r
+ <KEYWORD2>hw_close</KEYWORD2>\r
+ <KEYWORD2>hw_connect</KEYWORD2>\r
+ <KEYWORD2>hw_connection_info</KEYWORD2>\r
+ <KEYWORD2>hw_cp</KEYWORD2>\r
+ <KEYWORD2>hw_deleteobject</KEYWORD2>\r
+ <KEYWORD2>hw_docbyanchor</KEYWORD2>\r
+ <KEYWORD2>hw_docbyanchorobj</KEYWORD2>\r
+ <KEYWORD2>hw_document_attributes</KEYWORD2>\r
+ <KEYWORD2>hw_document_bodytag</KEYWORD2>\r
+ <KEYWORD2>hw_document_content</KEYWORD2>\r
+ <KEYWORD2>hw_document_setcontent</KEYWORD2>\r
+ <KEYWORD2>hw_document_size</KEYWORD2>\r
+ <KEYWORD2>hw_dummy</KEYWORD2>\r
+ <KEYWORD2>hw_edittext</KEYWORD2>\r
+ <KEYWORD2>hw_error</KEYWORD2>\r
+ <KEYWORD2>hw_errormsg</KEYWORD2>\r
+ <KEYWORD2>hw_free_document</KEYWORD2>\r
+ <KEYWORD2>hw_getanchors</KEYWORD2>\r
+ <KEYWORD2>hw_getanchorsobj</KEYWORD2>\r
+ <KEYWORD2>hw_getandlock</KEYWORD2>\r
+ <KEYWORD2>hw_getchildcoll</KEYWORD2>\r
+ <KEYWORD2>hw_getchildcollobj</KEYWORD2>\r
+ <KEYWORD2>hw_getchilddoccoll</KEYWORD2>\r
+ <KEYWORD2>hw_getchilddoccollobj</KEYWORD2>\r
+ <KEYWORD2>hw_getobject</KEYWORD2>\r
+ <KEYWORD2>hw_getobjectbyquery</KEYWORD2>\r
+ <KEYWORD2>hw_getobjectbyquerycoll</KEYWORD2>\r
+ <KEYWORD2>hw_getobjectbyquerycollobj</KEYWORD2>\r
+ <KEYWORD2>hw_getobjectbyqueryobj</KEYWORD2>\r
+ <KEYWORD2>hw_getparents</KEYWORD2>\r
+ <KEYWORD2>hw_getparentsobj</KEYWORD2>\r
+ <KEYWORD2>hw_getrellink</KEYWORD2>\r
+ <KEYWORD2>hw_getremote</KEYWORD2>\r
+ <KEYWORD2>hw_getremotechildren</KEYWORD2>\r
+ <KEYWORD2>hw_getsrcbydestobj</KEYWORD2>\r
+ <KEYWORD2>hw_gettext</KEYWORD2>\r
+ <KEYWORD2>hw_getusername</KEYWORD2>\r
+ <KEYWORD2>hw_identify</KEYWORD2>\r
+ <KEYWORD2>hw_incollections</KEYWORD2>\r
+ <KEYWORD2>hw_info</KEYWORD2>\r
+ <KEYWORD2>hw_inscoll</KEYWORD2>\r
+ <KEYWORD2>hw_insdoc</KEYWORD2>\r
+ <KEYWORD2>hw_insertanchors</KEYWORD2>\r
+ <KEYWORD2>hw_insertdocument</KEYWORD2>\r
+ <KEYWORD2>hw_insertobject</KEYWORD2>\r
+ <KEYWORD2>hw_mapid</KEYWORD2>\r
+ <KEYWORD2>hw_modifyobject</KEYWORD2>\r
+ <KEYWORD2>hw_mv</KEYWORD2>\r
+ <KEYWORD2>hw_new_document</KEYWORD2>\r
+ <KEYWORD2>hw_objrec2array</KEYWORD2>\r
+ <KEYWORD2>hw_output_document</KEYWORD2>\r
+ <KEYWORD2>hw_pconnect</KEYWORD2>\r
+ <KEYWORD2>hw_pipedocument</KEYWORD2>\r
+ <KEYWORD2>hw_root</KEYWORD2>\r
+ <KEYWORD2>hw_setlinkroot</KEYWORD2>\r
+ <KEYWORD2>hw_stat</KEYWORD2>\r
+ <KEYWORD2>hw_unlock</KEYWORD2>\r
+ <KEYWORD2>hw_who</KEYWORD2>\r
+ <KEYWORD2>hwapi_hgcsp</KEYWORD2>\r
+ <KEYWORD2>hwstat</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>hypot</KEYWORD2>\r
+ <KEYWORD2>ibase_add_user</KEYWORD2>\r
+ <KEYWORD2>ibase_affected_rows</KEYWORD2>\r
+ <KEYWORD2>ibase_backup</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_add</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_cancel</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_close</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_create</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_echo</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_get</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_import</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_info</KEYWORD2>\r
+ <KEYWORD2>ibase_blob_open</KEYWORD2>\r
+ <KEYWORD2>ibase_close</KEYWORD2>\r
+ <KEYWORD2>ibase_commit</KEYWORD2>\r
+ <KEYWORD2>ibase_commit_ret</KEYWORD2>\r
+ <KEYWORD2>ibase_connect</KEYWORD2>\r
+ <KEYWORD2>ibase_db_info</KEYWORD2>\r
+ <KEYWORD2>ibase_delete_user</KEYWORD2>\r
+ <KEYWORD2>ibase_drop_db</KEYWORD2>\r
+ <KEYWORD2>ibase_errcode</KEYWORD2>\r
+ <KEYWORD2>ibase_errmsg</KEYWORD2>\r
+ <KEYWORD2>ibase_execute</KEYWORD2>\r
+ <KEYWORD2>ibase_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>ibase_fetch_object</KEYWORD2>\r
+ <KEYWORD2>ibase_fetch_row</KEYWORD2>\r
+ <KEYWORD2>ibase_field_info</KEYWORD2>\r
+ <KEYWORD2>ibase_free_event_handler</KEYWORD2>\r
+ <KEYWORD2>ibase_free_query</KEYWORD2>\r
+ <KEYWORD2>ibase_free_result</KEYWORD2>\r
+ <KEYWORD2>ibase_gen_id</KEYWORD2>\r
+ <KEYWORD2>ibase_maintain_db</KEYWORD2>\r
+ <KEYWORD2>ibase_modify_user</KEYWORD2>\r
+ <KEYWORD2>ibase_name_result</KEYWORD2>\r
+ <KEYWORD2>ibase_num_fields</KEYWORD2>\r
+ <KEYWORD2>ibase_num_params</KEYWORD2>\r
+ <KEYWORD2>ibase_param_info</KEYWORD2>\r
+ <KEYWORD2>ibase_pconnect</KEYWORD2>\r
+ <KEYWORD2>ibase_prepare</KEYWORD2>\r
+ <KEYWORD2>ibase_query</KEYWORD2>\r
+ <KEYWORD2>ibase_restore</KEYWORD2>\r
+ <KEYWORD2>ibase_rollback</KEYWORD2>\r
+ <KEYWORD2>ibase_rollback_ret</KEYWORD2>\r
+ <KEYWORD2>ibase_server_info</KEYWORD2>\r
+ <KEYWORD2>ibase_service_attach</KEYWORD2>\r
+ <KEYWORD2>ibase_service_detach</KEYWORD2>\r
+ <KEYWORD2>ibase_set_event_handler</KEYWORD2>\r
+ <KEYWORD2>ibase_timefmt</KEYWORD2>\r
+ <KEYWORD2>ibase_trans</KEYWORD2>\r
+ <KEYWORD2>ibase_wait_event</KEYWORD2>\r
+ <KEYWORD2>iconv</KEYWORD2>\r
+ <KEYWORD2>iconv_get_encoding</KEYWORD2>\r
+ <KEYWORD2>iconv_mime_decode</KEYWORD2>\r
+ <KEYWORD2>iconv_mime_decode_headers</KEYWORD2>\r
+ <KEYWORD2>iconv_mime_encode</KEYWORD2>\r
+ <KEYWORD2>iconv_set_encoding</KEYWORD2>\r
+ <KEYWORD2>iconv_strlen</KEYWORD2>\r
+ <KEYWORD2>iconv_strpos</KEYWORD2>\r
+ <KEYWORD2>iconv_strrpos</KEYWORD2>\r
+ <KEYWORD2>iconv_substr</KEYWORD2>\r
+ <KEYWORD2>id3_get_genre_id</KEYWORD2>\r
+ <KEYWORD2>id3_get_genre_list</KEYWORD2>\r
+ <KEYWORD2>id3_get_genre_name</KEYWORD2>\r
+ <KEYWORD2>id3_get_tag</KEYWORD2>\r
+ <KEYWORD2>id3_get_version</KEYWORD2>\r
+ <KEYWORD2>id3_remove_tag</KEYWORD2>\r
+ <KEYWORD2>id3_set_tag</KEYWORD2>\r
+ <KEYWORD2>idate</KEYWORD2>\r
+ <KEYWORD2>identify</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>ifx_affected_rows</KEYWORD2>\r
+ <KEYWORD2>ifx_blobinfile_mode</KEYWORD2>\r
+ <KEYWORD2>ifx_byteasvarchar</KEYWORD2>\r
+ <KEYWORD2>ifx_close</KEYWORD2>\r
+ <KEYWORD2>ifx_connect</KEYWORD2>\r
+ <KEYWORD2>ifx_copy_blob</KEYWORD2>\r
+ <KEYWORD2>ifx_create_blob</KEYWORD2>\r
+ <KEYWORD2>ifx_create_char</KEYWORD2>\r
+ <KEYWORD2>ifx_do</KEYWORD2>\r
+ <KEYWORD2>ifx_error</KEYWORD2>\r
+ <KEYWORD2>ifx_errormsg</KEYWORD2>\r
+ <KEYWORD2>ifx_fetch_row</KEYWORD2>\r
+ <KEYWORD2>ifx_fieldproperties</KEYWORD2>\r
+ <KEYWORD2>ifx_fieldtypes</KEYWORD2>\r
+ <KEYWORD2>ifx_free_blob</KEYWORD2>\r
+ <KEYWORD2>ifx_free_char</KEYWORD2>\r
+ <KEYWORD2>ifx_free_result</KEYWORD2>\r
+ <KEYWORD2>ifx_get_blob</KEYWORD2>\r
+ <KEYWORD2>ifx_get_char</KEYWORD2>\r
+ <KEYWORD2>ifx_getsqlca</KEYWORD2>\r
+ <KEYWORD2>ifx_htmltbl_result</KEYWORD2>\r
+ <KEYWORD2>ifx_nullformat</KEYWORD2>\r
+ <KEYWORD2>ifx_num_fields</KEYWORD2>\r
+ <KEYWORD2>ifx_num_rows</KEYWORD2>\r
+ <KEYWORD2>ifx_pconnect</KEYWORD2>\r
+ <KEYWORD2>ifx_prepare</KEYWORD2>\r
+ <KEYWORD2>ifx_query</KEYWORD2>\r
+ <KEYWORD2>ifx_textasvarchar</KEYWORD2>\r
+ <KEYWORD2>ifx_update_blob</KEYWORD2>\r
+ <KEYWORD2>ifx_update_char</KEYWORD2>\r
+ <KEYWORD2>ifxus_close_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_create_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_free_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_open_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_read_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_seek_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_tell_slob</KEYWORD2>\r
+ <KEYWORD2>ifxus_write_slob</KEYWORD2>\r
+ <KEYWORD2>ignore_user_abort</KEYWORD2>\r
+ <KEYWORD2>image2wbmp</KEYWORD2>\r
+ <KEYWORD2>image_type_to_extension</KEYWORD2>\r
+ <KEYWORD2>image_type_to_mime_type</KEYWORD2>\r
+ <KEYWORD2>imagealphablending</KEYWORD2>\r
+ <KEYWORD2>imageantialias</KEYWORD2>\r
+ <KEYWORD2>imagearc</KEYWORD2>\r
+ <KEYWORD2>imagechar</KEYWORD2>\r
+ <KEYWORD2>imagecharup</KEYWORD2>\r
+ <KEYWORD2>imagecolorallocate</KEYWORD2>\r
+ <KEYWORD2>imagecolorallocatealpha</KEYWORD2>\r
+ <KEYWORD2>imagecolorat</KEYWORD2>\r
+ <KEYWORD2>imagecolorclosest</KEYWORD2>\r
+ <KEYWORD2>imagecolorclosestalpha</KEYWORD2>\r
+ <KEYWORD2>imagecolorclosesthwb</KEYWORD2>\r
+ <KEYWORD2>imagecolordeallocate</KEYWORD2>\r
+ <KEYWORD2>imagecolorexact</KEYWORD2>\r
+ <KEYWORD2>imagecolorexactalpha</KEYWORD2>\r
+ <KEYWORD2>imagecolormatch</KEYWORD2>\r
+ <KEYWORD2>imagecolorresolve</KEYWORD2>\r
+ <KEYWORD2>imagecolorresolvealpha</KEYWORD2>\r
+ <KEYWORD2>imagecolorset</KEYWORD2>\r
+ <KEYWORD2>imagecolorsforindex</KEYWORD2>\r
+ <KEYWORD2>imagecolorstotal</KEYWORD2>\r
+ <KEYWORD2>imagecolortransparent</KEYWORD2>\r
+ <KEYWORD2>imagecopy</KEYWORD2>\r
+ <KEYWORD2>imagecopymerge</KEYWORD2>\r
+ <KEYWORD2>imagecopymergegray</KEYWORD2>\r
+ <KEYWORD2>imagecopyresampled</KEYWORD2>\r
+ <KEYWORD2>imagecopyresized</KEYWORD2>\r
+ <KEYWORD2>imagecreate</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromgd</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromgd2</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromgd2part</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromgif</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromjpeg</KEYWORD2>\r
+ <KEYWORD2>imagecreatefrompng</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromstring</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromwbmp</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromxbm</KEYWORD2>\r
+ <KEYWORD2>imagecreatefromxpm</KEYWORD2>\r
+ <KEYWORD2>imagecreatetruecolor</KEYWORD2>\r
+ <KEYWORD2>imagedashedline</KEYWORD2>\r
+ <KEYWORD2>imagedestroy</KEYWORD2>\r
+ <KEYWORD2>imageellipse</KEYWORD2>\r
+ <KEYWORD2>imagefill</KEYWORD2>\r
+ <KEYWORD2>imagefilledarc</KEYWORD2>\r
+ <KEYWORD2>imagefilledellipse</KEYWORD2>\r
+ <KEYWORD2>imagefilledpolygon</KEYWORD2>\r
+ <KEYWORD2>imagefilledrectangle</KEYWORD2>\r
+ <KEYWORD2>imagefilltoborder</KEYWORD2>\r
+ <KEYWORD2>imagefilter</KEYWORD2>\r
+ <KEYWORD2>imagefontheight</KEYWORD2>\r
+ <KEYWORD2>imagefontwidth</KEYWORD2>\r
+ <KEYWORD2>imageftbbox</KEYWORD2>\r
+ <KEYWORD2>imagefttext</KEYWORD2>\r
+ <KEYWORD2>imagegammacorrect</KEYWORD2>\r
+ <KEYWORD2>imagegd</KEYWORD2>\r
+ <KEYWORD2>imagegd2</KEYWORD2>\r
+ <KEYWORD2>imagegif</KEYWORD2>\r
+ <KEYWORD2>imageinterlace</KEYWORD2>\r
+ <KEYWORD2>imageistruecolor</KEYWORD2>\r
+ <KEYWORD2>imagejpeg</KEYWORD2>\r
+ <KEYWORD2>imagelayereffect</KEYWORD2>\r
+ <KEYWORD2>imageline</KEYWORD2>\r
+ <KEYWORD2>imageloadfont</KEYWORD2>\r
+ <KEYWORD2>imagepalettecopy</KEYWORD2>\r
+ <KEYWORD2>imagepng</KEYWORD2>\r
+ <KEYWORD2>imagepolygon</KEYWORD2>\r
+ <KEYWORD2>imagepsbbox</KEYWORD2>\r
+ <KEYWORD2>imagepscopyfont</KEYWORD2>\r
+ <KEYWORD2>imagepsencodefont</KEYWORD2>\r
+ <KEYWORD2>imagepsextendfont</KEYWORD2>\r
+ <KEYWORD2>imagepsfreefont</KEYWORD2>\r
+ <KEYWORD2>imagepsloadfont</KEYWORD2>\r
+ <KEYWORD2>imagepsslantfont</KEYWORD2>\r
+ <KEYWORD2>imagepstext</KEYWORD2>\r
+ <KEYWORD2>imagerectangle</KEYWORD2>\r
+ <KEYWORD2>imagerotate</KEYWORD2>\r
+ <KEYWORD2>imagesavealpha</KEYWORD2>\r
+ <KEYWORD2>imagesetbrush</KEYWORD2>\r
+ <KEYWORD2>imagesetpixel</KEYWORD2>\r
+ <KEYWORD2>imagesetstyle</KEYWORD2>\r
+ <KEYWORD2>imagesetthickness</KEYWORD2>\r
+ <KEYWORD2>imagesettile</KEYWORD2>\r
+ <KEYWORD2>imagestring</KEYWORD2>\r
+ <KEYWORD2>imagestringup</KEYWORD2>\r
+ <KEYWORD2>imagesx</KEYWORD2>\r
+ <KEYWORD2>imagesy</KEYWORD2>\r
+ <KEYWORD2>imagetruecolortopalette</KEYWORD2>\r
+ <KEYWORD2>imagettfbbox</KEYWORD2>\r
+ <KEYWORD2>imagettftext</KEYWORD2>\r
+ <KEYWORD2>imagetypes</KEYWORD2>\r
+ <KEYWORD2>imagewbmp</KEYWORD2>\r
+ <KEYWORD2>imagexbm</KEYWORD2>\r
+ <KEYWORD2>imap_8bit</KEYWORD2>\r
+ <KEYWORD2>imap_alerts</KEYWORD2>\r
+ <KEYWORD2>imap_append</KEYWORD2>\r
+ <KEYWORD2>imap_base64</KEYWORD2>\r
+ <KEYWORD2>imap_binary</KEYWORD2>\r
+ <KEYWORD2>imap_body</KEYWORD2>\r
+ <KEYWORD2>imap_bodystruct</KEYWORD2>\r
+ <KEYWORD2>imap_check</KEYWORD2>\r
+ <KEYWORD2>imap_clearflag_full</KEYWORD2>\r
+ <KEYWORD2>imap_close</KEYWORD2>\r
+ <KEYWORD2>imap_createmailbox</KEYWORD2>\r
+ <KEYWORD2>imap_delete</KEYWORD2>\r
+ <KEYWORD2>imap_deletemailbox</KEYWORD2>\r
+ <KEYWORD2>imap_errors</KEYWORD2>\r
+ <KEYWORD2>imap_expunge</KEYWORD2>\r
+ <KEYWORD2>imap_fetch_overview</KEYWORD2>\r
+ <KEYWORD2>imap_fetchbody</KEYWORD2>\r
+ <KEYWORD2>imap_fetchheader</KEYWORD2>\r
+ <KEYWORD2>imap_fetchstructure</KEYWORD2>\r
+ <KEYWORD2>imap_get_quota</KEYWORD2>\r
+ <KEYWORD2>imap_get_quotaroot</KEYWORD2>\r
+ <KEYWORD2>imap_getacl</KEYWORD2>\r
+ <KEYWORD2>imap_getmailboxes</KEYWORD2>\r
+ <KEYWORD2>imap_getsubscribed</KEYWORD2>\r
+ <KEYWORD2>imap_header</KEYWORD2>\r
+ <KEYWORD2>imap_headerinfo</KEYWORD2>\r
+ <KEYWORD2>imap_headers</KEYWORD2>\r
+ <KEYWORD2>imap_last_error</KEYWORD2>\r
+ <KEYWORD2>imap_list</KEYWORD2>\r
+ <KEYWORD2>imap_listmailbox</KEYWORD2>\r
+ <KEYWORD2>imap_listscan</KEYWORD2>\r
+ <KEYWORD2>imap_listsubscribed</KEYWORD2>\r
+ <KEYWORD2>imap_lsub</KEYWORD2>\r
+ <KEYWORD2>imap_mail</KEYWORD2>\r
+ <KEYWORD2>imap_mail_compose</KEYWORD2>\r
+ <KEYWORD2>imap_mail_copy</KEYWORD2>\r
+ <KEYWORD2>imap_mail_move</KEYWORD2>\r
+ <KEYWORD2>imap_mailboxmsginfo</KEYWORD2>\r
+ <KEYWORD2>imap_mime_header_decode</KEYWORD2>\r
+ <KEYWORD2>imap_msgno</KEYWORD2>\r
+ <KEYWORD2>imap_num_msg</KEYWORD2>\r
+ <KEYWORD2>imap_num_recent</KEYWORD2>\r
+ <KEYWORD2>imap_open</KEYWORD2>\r
+ <KEYWORD2>imap_ping</KEYWORD2>\r
+ <KEYWORD2>imap_qprint</KEYWORD2>\r
+ <KEYWORD2>imap_renamemailbox</KEYWORD2>\r
+ <KEYWORD2>imap_reopen</KEYWORD2>\r
+ <KEYWORD2>imap_rfc822_parse_adrlist</KEYWORD2>\r
+ <KEYWORD2>imap_rfc822_parse_headers</KEYWORD2>\r
+ <KEYWORD2>imap_rfc822_write_address</KEYWORD2>\r
+ <KEYWORD2>imap_scanmailbox</KEYWORD2>\r
+ <KEYWORD2>imap_search</KEYWORD2>\r
+ <KEYWORD2>imap_set_quota</KEYWORD2>\r
+ <KEYWORD2>imap_setacl</KEYWORD2>\r
+ <KEYWORD2>imap_setflag_full</KEYWORD2>\r
+ <KEYWORD2>imap_sort</KEYWORD2>\r
+ <KEYWORD2>imap_status</KEYWORD2>\r
+ <KEYWORD2>imap_subscribe</KEYWORD2>\r
+ <KEYWORD2>imap_thread</KEYWORD2>\r
+ <KEYWORD2>imap_timeout</KEYWORD2>\r
+ <KEYWORD2>imap_uid</KEYWORD2>\r
+ <KEYWORD2>imap_undelete</KEYWORD2>\r
+ <KEYWORD2>imap_unsubscribe</KEYWORD2>\r
+ <KEYWORD2>imap_utf7_decode</KEYWORD2>\r
+ <KEYWORD2>imap_utf7_encode</KEYWORD2>\r
+ <KEYWORD2>imap_utf8</KEYWORD2>\r
+ <KEYWORD2>implode</KEYWORD2>\r
+ <KEYWORD2>import</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>import_request_variables</KEYWORD2>\r
+ <KEYWORD2>importnode</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>in_array</KEYWORD2>\r
+ <KEYWORD2>increment</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>inet_ntop</KEYWORD2>\r
+ <KEYWORD2>inet_pton</KEYWORD2>\r
+ <KEYWORD2>info</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>ingres_autocommit</KEYWORD2>\r
+ <KEYWORD2>ingres_close</KEYWORD2>\r
+ <KEYWORD2>ingres_commit</KEYWORD2>\r
+ <KEYWORD2>ingres_connect</KEYWORD2>\r
+ <KEYWORD2>ingres_fetch_array</KEYWORD2>\r
+ <KEYWORD2>ingres_fetch_object</KEYWORD2>\r
+ <KEYWORD2>ingres_fetch_row</KEYWORD2>\r
+ <KEYWORD2>ingres_field_length</KEYWORD2>\r
+ <KEYWORD2>ingres_field_name</KEYWORD2>\r
+ <KEYWORD2>ingres_field_nullable</KEYWORD2>\r
+ <KEYWORD2>ingres_field_precision</KEYWORD2>\r
+ <KEYWORD2>ingres_field_scale</KEYWORD2>\r
+ <KEYWORD2>ingres_field_type</KEYWORD2>\r
+ <KEYWORD2>ingres_num_fields</KEYWORD2>\r
+ <KEYWORD2>ingres_num_rows</KEYWORD2>\r
+ <KEYWORD2>ingres_pconnect</KEYWORD2>\r
+ <KEYWORD2>ingres_query</KEYWORD2>\r
+ <KEYWORD2>ingres_rollback</KEYWORD2>\r
+ <KEYWORD2>ini_alter</KEYWORD2>\r
+ <KEYWORD2>ini_get</KEYWORD2>\r
+ <KEYWORD2>ini_get_all</KEYWORD2>\r
+ <KEYWORD2>ini_restore</KEYWORD2>\r
+ <KEYWORD2>ini_set</KEYWORD2>\r
+ <KEYWORD2>insert</KEYWORD2> <!-- hw_api, hw_api_object -->\r
+ <KEYWORD2>insert_before</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>insertanchor</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>insertbefore</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>insertcollection</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>insertdata</KEYWORD2> <!-- domcharacterdata -->\r
+ <KEYWORD2>insertdocument</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>interface_exists</KEYWORD2>\r
+ <KEYWORD2>internal_subset</KEYWORD2> <!-- domdocumenttype -->\r
+ <KEYWORD2>intval</KEYWORD2>\r
+ <KEYWORD2>ip2long</KEYWORD2>\r
+ <KEYWORD2>iptcembed</KEYWORD2>\r
+ <KEYWORD2>iptcparse</KEYWORD2>\r
+ <KEYWORD2>ircg_channel_mode</KEYWORD2>\r
+ <KEYWORD2>ircg_disconnect</KEYWORD2>\r
+ <KEYWORD2>ircg_eval_ecmascript_params</KEYWORD2>\r
+ <KEYWORD2>ircg_fetch_error_msg</KEYWORD2>\r
+ <KEYWORD2>ircg_get_username</KEYWORD2>\r
+ <KEYWORD2>ircg_html_encode</KEYWORD2>\r
+ <KEYWORD2>ircg_ignore_add</KEYWORD2>\r
+ <KEYWORD2>ircg_ignore_del</KEYWORD2>\r
+ <KEYWORD2>ircg_invite</KEYWORD2>\r
+ <KEYWORD2>ircg_is_conn_alive</KEYWORD2>\r
+ <KEYWORD2>ircg_join</KEYWORD2>\r
+ <KEYWORD2>ircg_kick</KEYWORD2>\r
+ <KEYWORD2>ircg_list</KEYWORD2>\r
+ <KEYWORD2>ircg_lookup_format_messages</KEYWORD2>\r
+ <KEYWORD2>ircg_lusers</KEYWORD2>\r
+ <KEYWORD2>ircg_msg</KEYWORD2>\r
+ <KEYWORD2>ircg_names</KEYWORD2>\r
+ <KEYWORD2>ircg_nick</KEYWORD2>\r
+ <KEYWORD2>ircg_nickname_escape</KEYWORD2>\r
+ <KEYWORD2>ircg_nickname_unescape</KEYWORD2>\r
+ <KEYWORD2>ircg_notice</KEYWORD2>\r
+ <KEYWORD2>ircg_oper</KEYWORD2>\r
+ <KEYWORD2>ircg_part</KEYWORD2>\r
+ <KEYWORD2>ircg_pconnect</KEYWORD2>\r
+ <KEYWORD2>ircg_register_format_messages</KEYWORD2>\r
+ <KEYWORD2>ircg_set_current</KEYWORD2>\r
+ <KEYWORD2>ircg_set_file</KEYWORD2>\r
+ <KEYWORD2>ircg_set_on_die</KEYWORD2>\r
+ <KEYWORD2>ircg_topic</KEYWORD2>\r
+ <KEYWORD2>ircg_who</KEYWORD2>\r
+ <KEYWORD2>ircg_whois</KEYWORD2>\r
+ <KEYWORD2>is_a</KEYWORD2>\r
+ <KEYWORD2>is_array</KEYWORD2>\r
+ <KEYWORD2>is_blank_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>is_bool</KEYWORD2>\r
+ <KEYWORD2>is_callable</KEYWORD2>\r
+ <KEYWORD2>is_dir</KEYWORD2>\r
+ <KEYWORD2>is_double</KEYWORD2>\r
+ <KEYWORD2>is_executable</KEYWORD2>\r
+ <KEYWORD2>is_file</KEYWORD2>\r
+ <KEYWORD2>is_finite</KEYWORD2>\r
+ <KEYWORD2>is_float</KEYWORD2>\r
+ <KEYWORD2>is_infinite</KEYWORD2>\r
+ <KEYWORD2>is_int</KEYWORD2>\r
+ <KEYWORD2>is_integer</KEYWORD2>\r
+ <KEYWORD2>is_link</KEYWORD2>\r
+ <KEYWORD2>is_long</KEYWORD2>\r
+ <KEYWORD2>is_nan</KEYWORD2>\r
+ <KEYWORD2>is_null</KEYWORD2>\r
+ <KEYWORD2>is_numeric</KEYWORD2>\r
+ <KEYWORD2>is_object</KEYWORD2>\r
+ <KEYWORD2>is_readable</KEYWORD2>\r
+ <KEYWORD2>is_real</KEYWORD2>\r
+ <KEYWORD2>is_resource</KEYWORD2>\r
+ <KEYWORD2>is_scalar</KEYWORD2>\r
+ <KEYWORD2>is_soap_fault</KEYWORD2>\r
+ <KEYWORD2>is_string</KEYWORD2>\r
+ <KEYWORD2>is_subclass_of</KEYWORD2>\r
+ <KEYWORD2>is_uploaded_file</KEYWORD2>\r
+ <KEYWORD2>is_writable</KEYWORD2>\r
+ <KEYWORD2>is_writeable</KEYWORD2>\r
+ <KEYWORD2>isasp</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>iscomment</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>isdir</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>isdot</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>isexecutable</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>isfile</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>ishtml</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>isid</KEYWORD2> <!-- domattr -->\r
+ <KEYWORD2>isjste</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>islink</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>isphp</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>isreadable</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>issamenode</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>issupported</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>istext</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>iswhitespaceinelementcontent</KEYWORD2> <!-- domtext -->\r
+ <KEYWORD2>iswritable</KEYWORD2> <!-- directoryiterator -->\r
+ <KEYWORD2>isxhtml</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>isxml</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>item</KEYWORD2> <!-- domnamednodemap, domnodelist -->\r
+ <KEYWORD2>iterator_count</KEYWORD2>\r
+ <KEYWORD2>iterator_to_array</KEYWORD2>\r
+ <KEYWORD2>java_last_exception_clear</KEYWORD2>\r
+ <KEYWORD2>java_last_exception_get</KEYWORD2>\r
+ <KEYWORD2>jddayofweek</KEYWORD2>\r
+ <KEYWORD2>jdmonthname</KEYWORD2>\r
+ <KEYWORD2>jdtofrench</KEYWORD2>\r
+ <KEYWORD2>jdtogregorian</KEYWORD2>\r
+ <KEYWORD2>jdtojewish</KEYWORD2>\r
+ <KEYWORD2>jdtojulian</KEYWORD2>\r
+ <KEYWORD2>jdtounix</KEYWORD2>\r
+ <KEYWORD2>jewishtojd</KEYWORD2>\r
+ <KEYWORD2>join</KEYWORD2>\r
+ <KEYWORD2>jpeg2wbmp</KEYWORD2>\r
+ <KEYWORD2>juliantojd</KEYWORD2>\r
+ <KEYWORD2>key</KEYWORD2> <!-- arrayiterator, directoryiterator, filteriterator, hw_api_attribute, recursivedirectoryiterator, recursiveiteratoriterator, simplexmliterator -->\r
+ <KEYWORD2>krsort</KEYWORD2>\r
+ <KEYWORD2>ksort</KEYWORD2>\r
+ <KEYWORD2>langdepvalue</KEYWORD2> <!-- hw_api_attribute -->\r
+ <KEYWORD2>last_child</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>lastinsertid</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>lcg_value</KEYWORD2>\r
+ <KEYWORD2>ldap_8859_to_t61</KEYWORD2>\r
+ <KEYWORD2>ldap_add</KEYWORD2>\r
+ <KEYWORD2>ldap_bind</KEYWORD2>\r
+ <KEYWORD2>ldap_close</KEYWORD2>\r
+ <KEYWORD2>ldap_compare</KEYWORD2>\r
+ <KEYWORD2>ldap_connect</KEYWORD2>\r
+ <KEYWORD2>ldap_count_entries</KEYWORD2>\r
+ <KEYWORD2>ldap_delete</KEYWORD2>\r
+ <KEYWORD2>ldap_dn2ufn</KEYWORD2>\r
+ <KEYWORD2>ldap_err2str</KEYWORD2>\r
+ <KEYWORD2>ldap_errno</KEYWORD2>\r
+ <KEYWORD2>ldap_error</KEYWORD2>\r
+ <KEYWORD2>ldap_explode_dn</KEYWORD2>\r
+ <KEYWORD2>ldap_first_attribute</KEYWORD2>\r
+ <KEYWORD2>ldap_first_entry</KEYWORD2>\r
+ <KEYWORD2>ldap_first_reference</KEYWORD2>\r
+ <KEYWORD2>ldap_free_result</KEYWORD2>\r
+ <KEYWORD2>ldap_get_attributes</KEYWORD2>\r
+ <KEYWORD2>ldap_get_dn</KEYWORD2>\r
+ <KEYWORD2>ldap_get_entries</KEYWORD2>\r
+ <KEYWORD2>ldap_get_option</KEYWORD2>\r
+ <KEYWORD2>ldap_get_values</KEYWORD2>\r
+ <KEYWORD2>ldap_get_values_len</KEYWORD2>\r
+ <KEYWORD2>ldap_list</KEYWORD2>\r
+ <KEYWORD2>ldap_mod_add</KEYWORD2>\r
+ <KEYWORD2>ldap_mod_del</KEYWORD2>\r
+ <KEYWORD2>ldap_mod_replace</KEYWORD2>\r
+ <KEYWORD2>ldap_modify</KEYWORD2>\r
+ <KEYWORD2>ldap_next_attribute</KEYWORD2>\r
+ <KEYWORD2>ldap_next_entry</KEYWORD2>\r
+ <KEYWORD2>ldap_next_reference</KEYWORD2>\r
+ <KEYWORD2>ldap_parse_reference</KEYWORD2>\r
+ <KEYWORD2>ldap_parse_result</KEYWORD2>\r
+ <KEYWORD2>ldap_read</KEYWORD2>\r
+ <KEYWORD2>ldap_rename</KEYWORD2>\r
+ <KEYWORD2>ldap_sasl_bind</KEYWORD2>\r
+ <KEYWORD2>ldap_search</KEYWORD2>\r
+ <KEYWORD2>ldap_set_option</KEYWORD2>\r
+ <KEYWORD2>ldap_set_rebind_proc</KEYWORD2>\r
+ <KEYWORD2>ldap_sort</KEYWORD2>\r
+ <KEYWORD2>ldap_start_tls</KEYWORD2>\r
+ <KEYWORD2>ldap_t61_to_8859</KEYWORD2>\r
+ <KEYWORD2>ldap_unbind</KEYWORD2>\r
+ <KEYWORD2>levenshtein</KEYWORD2>\r
+ <KEYWORD2>link</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>linkinfo</KEYWORD2>\r
+ <KEYWORD2>load</KEYWORD2> <!-- domdocument, lob -->\r
+ <KEYWORD2>loadhtml</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>loadhtmlfile</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>loadxml</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>localeconv</KEYWORD2>\r
+ <KEYWORD2>localtime</KEYWORD2>\r
+ <KEYWORD2>lock</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>log10</KEYWORD2>\r
+ <KEYWORD2>log1p</KEYWORD2>\r
+ <KEYWORD2>long2ip</KEYWORD2>\r
+ <KEYWORD2>lookupnamespaceuri</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>lookupprefix</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>lstat</KEYWORD2>\r
+ <KEYWORD2>ltrim</KEYWORD2>\r
+ <KEYWORD2>lzf_compress</KEYWORD2>\r
+ <KEYWORD2>lzf_decompress</KEYWORD2>\r
+ <KEYWORD2>lzf_optimized_for</KEYWORD2>\r
+ <KEYWORD2>mail</KEYWORD2>\r
+ <KEYWORD2>mailparse_determine_best_xfer_encoding</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_create</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_extract_part</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_extract_part_file</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_free</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_get_part</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_get_part_data</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_get_structure</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_parse</KEYWORD2>\r
+ <KEYWORD2>mailparse_msg_parse_file</KEYWORD2>\r
+ <KEYWORD2>mailparse_rfc822_parse_addresses</KEYWORD2>\r
+ <KEYWORD2>mailparse_stream_encode</KEYWORD2>\r
+ <KEYWORD2>mailparse_uudecode_all</KEYWORD2>\r
+ <KEYWORD2>main</KEYWORD2>\r
+ <KEYWORD2>max</KEYWORD2> <!-- collection -->\r
+ <KEYWORD2>mb_convert_case</KEYWORD2>\r
+ <KEYWORD2>mb_convert_encoding</KEYWORD2>\r
+ <KEYWORD2>mb_convert_kana</KEYWORD2>\r
+ <KEYWORD2>mb_convert_variables</KEYWORD2>\r
+ <KEYWORD2>mb_decode_mimeheader</KEYWORD2>\r
+ <KEYWORD2>mb_decode_numericentity</KEYWORD2>\r
+ <KEYWORD2>mb_detect_encoding</KEYWORD2>\r
+ <KEYWORD2>mb_detect_order</KEYWORD2>\r
+ <KEYWORD2>mb_encode_mimeheader</KEYWORD2>\r
+ <KEYWORD2>mb_encode_numericentity</KEYWORD2>\r
+ <KEYWORD2>mb_ereg</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_match</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_replace</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_getpos</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_getregs</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_init</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_pos</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_regs</KEYWORD2>\r
+ <KEYWORD2>mb_ereg_search_setpos</KEYWORD2>\r
+ <KEYWORD2>mb_eregi</KEYWORD2>\r
+ <KEYWORD2>mb_eregi_replace</KEYWORD2>\r
+ <KEYWORD2>mb_get_info</KEYWORD2>\r
+ <KEYWORD2>mb_http_input</KEYWORD2>\r
+ <KEYWORD2>mb_http_output</KEYWORD2>\r
+ <KEYWORD2>mb_internal_encoding</KEYWORD2>\r
+ <KEYWORD2>mb_language</KEYWORD2>\r
+ <KEYWORD2>mb_list_encodings</KEYWORD2>\r
+ <KEYWORD2>mb_output_handler</KEYWORD2>\r
+ <KEYWORD2>mb_parse_str</KEYWORD2>\r
+ <KEYWORD2>mb_preferred_mime_name</KEYWORD2>\r
+ <KEYWORD2>mb_regex_encoding</KEYWORD2>\r
+ <KEYWORD2>mb_regex_set_options</KEYWORD2>\r
+ <KEYWORD2>mb_send_mail</KEYWORD2>\r
+ <KEYWORD2>mb_split</KEYWORD2>\r
+ <KEYWORD2>mb_strcut</KEYWORD2>\r
+ <KEYWORD2>mb_strimwidth</KEYWORD2>\r
+ <KEYWORD2>mb_strlen</KEYWORD2>\r
+ <KEYWORD2>mb_strpos</KEYWORD2>\r
+ <KEYWORD2>mb_strrpos</KEYWORD2>\r
+ <KEYWORD2>mb_strtolower</KEYWORD2>\r
+ <KEYWORD2>mb_strtoupper</KEYWORD2>\r
+ <KEYWORD2>mb_strwidth</KEYWORD2>\r
+ <KEYWORD2>mb_substitute_character</KEYWORD2>\r
+ <KEYWORD2>mb_substr</KEYWORD2>\r
+ <KEYWORD2>mb_substr_count</KEYWORD2>\r
+ <KEYWORD2>mcal_append_event</KEYWORD2>\r
+ <KEYWORD2>mcal_close</KEYWORD2>\r
+ <KEYWORD2>mcal_create_calendar</KEYWORD2>\r
+ <KEYWORD2>mcal_date_compare</KEYWORD2>\r
+ <KEYWORD2>mcal_date_valid</KEYWORD2>\r
+ <KEYWORD2>mcal_day_of_week</KEYWORD2>\r
+ <KEYWORD2>mcal_day_of_year</KEYWORD2>\r
+ <KEYWORD2>mcal_days_in_month</KEYWORD2>\r
+ <KEYWORD2>mcal_delete_calendar</KEYWORD2>\r
+ <KEYWORD2>mcal_delete_event</KEYWORD2>\r
+ <KEYWORD2>mcal_event_add_attribute</KEYWORD2>\r
+ <KEYWORD2>mcal_event_init</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_alarm</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_category</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_class</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_description</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_end</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_daily</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_monthly_mday</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_monthly_wday</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_none</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_weekly</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_recur_yearly</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_start</KEYWORD2>\r
+ <KEYWORD2>mcal_event_set_title</KEYWORD2>\r
+ <KEYWORD2>mcal_expunge</KEYWORD2>\r
+ <KEYWORD2>mcal_fetch_current_stream_event</KEYWORD2>\r
+ <KEYWORD2>mcal_fetch_event</KEYWORD2>\r
+ <KEYWORD2>mcal_is_leap_year</KEYWORD2>\r
+ <KEYWORD2>mcal_list_alarms</KEYWORD2>\r
+ <KEYWORD2>mcal_list_events</KEYWORD2>\r
+ <KEYWORD2>mcal_next_recurrence</KEYWORD2>\r
+ <KEYWORD2>mcal_open</KEYWORD2>\r
+ <KEYWORD2>mcal_popen</KEYWORD2>\r
+ <KEYWORD2>mcal_rename_calendar</KEYWORD2>\r
+ <KEYWORD2>mcal_reopen</KEYWORD2>\r
+ <KEYWORD2>mcal_snooze</KEYWORD2>\r
+ <KEYWORD2>mcal_store_event</KEYWORD2>\r
+ <KEYWORD2>mcal_time_valid</KEYWORD2>\r
+ <KEYWORD2>mcal_week_of_year</KEYWORD2>\r
+ <KEYWORD2>mcrypt_cbc</KEYWORD2>\r
+ <KEYWORD2>mcrypt_cfb</KEYWORD2>\r
+ <KEYWORD2>mcrypt_create_iv</KEYWORD2>\r
+ <KEYWORD2>mcrypt_decrypt</KEYWORD2>\r
+ <KEYWORD2>mcrypt_ecb</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_algorithms_name</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_block_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_iv_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_key_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_modes_name</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_get_supported_key_sizes</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_is_block_algorithm</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_is_block_algorithm_mode</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_is_block_mode</KEYWORD2>\r
+ <KEYWORD2>mcrypt_enc_self_test</KEYWORD2>\r
+ <KEYWORD2>mcrypt_encrypt</KEYWORD2>\r
+ <KEYWORD2>mcrypt_generic</KEYWORD2>\r
+ <KEYWORD2>mcrypt_generic_deinit</KEYWORD2>\r
+ <KEYWORD2>mcrypt_generic_end</KEYWORD2>\r
+ <KEYWORD2>mcrypt_generic_init</KEYWORD2>\r
+ <KEYWORD2>mcrypt_get_block_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_get_cipher_name</KEYWORD2>\r
+ <KEYWORD2>mcrypt_get_iv_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_get_key_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_list_algorithms</KEYWORD2>\r
+ <KEYWORD2>mcrypt_list_modes</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_close</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_get_algo_block_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_get_algo_key_size</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_get_supported_key_sizes</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_is_block_algorithm</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_is_block_algorithm_mode</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_is_block_mode</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_open</KEYWORD2>\r
+ <KEYWORD2>mcrypt_module_self_test</KEYWORD2>\r
+ <KEYWORD2>mcrypt_ofb</KEYWORD2>\r
+ <KEYWORD2>mcve_adduser</KEYWORD2>\r
+ <KEYWORD2>mcve_adduserarg</KEYWORD2>\r
+ <KEYWORD2>mcve_bt</KEYWORD2>\r
+ <KEYWORD2>mcve_checkstatus</KEYWORD2>\r
+ <KEYWORD2>mcve_chkpwd</KEYWORD2>\r
+ <KEYWORD2>mcve_chngpwd</KEYWORD2>\r
+ <KEYWORD2>mcve_completeauthorizations</KEYWORD2>\r
+ <KEYWORD2>mcve_connect</KEYWORD2>\r
+ <KEYWORD2>mcve_connectionerror</KEYWORD2>\r
+ <KEYWORD2>mcve_deleteresponse</KEYWORD2>\r
+ <KEYWORD2>mcve_deletetrans</KEYWORD2>\r
+ <KEYWORD2>mcve_deleteusersetup</KEYWORD2>\r
+ <KEYWORD2>mcve_deluser</KEYWORD2>\r
+ <KEYWORD2>mcve_destroyconn</KEYWORD2>\r
+ <KEYWORD2>mcve_destroyengine</KEYWORD2>\r
+ <KEYWORD2>mcve_disableuser</KEYWORD2>\r
+ <KEYWORD2>mcve_edituser</KEYWORD2>\r
+ <KEYWORD2>mcve_enableuser</KEYWORD2>\r
+ <KEYWORD2>mcve_force</KEYWORD2>\r
+ <KEYWORD2>mcve_getcell</KEYWORD2>\r
+ <KEYWORD2>mcve_getcellbynum</KEYWORD2>\r
+ <KEYWORD2>mcve_getcommadelimited</KEYWORD2>\r
+ <KEYWORD2>mcve_getheader</KEYWORD2>\r
+ <KEYWORD2>mcve_getuserarg</KEYWORD2>\r
+ <KEYWORD2>mcve_getuserparam</KEYWORD2>\r
+ <KEYWORD2>mcve_gft</KEYWORD2>\r
+ <KEYWORD2>mcve_gl</KEYWORD2>\r
+ <KEYWORD2>mcve_gut</KEYWORD2>\r
+ <KEYWORD2>mcve_initconn</KEYWORD2>\r
+ <KEYWORD2>mcve_initengine</KEYWORD2>\r
+ <KEYWORD2>mcve_initusersetup</KEYWORD2>\r
+ <KEYWORD2>mcve_iscommadelimited</KEYWORD2>\r
+ <KEYWORD2>mcve_liststats</KEYWORD2>\r
+ <KEYWORD2>mcve_listusers</KEYWORD2>\r
+ <KEYWORD2>mcve_maxconntimeout</KEYWORD2>\r
+ <KEYWORD2>mcve_monitor</KEYWORD2>\r
+ <KEYWORD2>mcve_numcolumns</KEYWORD2>\r
+ <KEYWORD2>mcve_numrows</KEYWORD2>\r
+ <KEYWORD2>mcve_override</KEYWORD2>\r
+ <KEYWORD2>mcve_parsecommadelimited</KEYWORD2>\r
+ <KEYWORD2>mcve_ping</KEYWORD2>\r
+ <KEYWORD2>mcve_preauth</KEYWORD2>\r
+ <KEYWORD2>mcve_preauthcompletion</KEYWORD2>\r
+ <KEYWORD2>mcve_qc</KEYWORD2>\r
+ <KEYWORD2>mcve_responseparam</KEYWORD2>\r
+ <KEYWORD2>mcve_return</KEYWORD2>\r
+ <KEYWORD2>mcve_returncode</KEYWORD2>\r
+ <KEYWORD2>mcve_returnstatus</KEYWORD2>\r
+ <KEYWORD2>mcve_sale</KEYWORD2>\r
+ <KEYWORD2>mcve_setblocking</KEYWORD2>\r
+ <KEYWORD2>mcve_setdropfile</KEYWORD2>\r
+ <KEYWORD2>mcve_setip</KEYWORD2>\r
+ <KEYWORD2>mcve_setssl</KEYWORD2>\r
+ <KEYWORD2>mcve_setssl_files</KEYWORD2>\r
+ <KEYWORD2>mcve_settimeout</KEYWORD2>\r
+ <KEYWORD2>mcve_settle</KEYWORD2>\r
+ <KEYWORD2>mcve_text_avs</KEYWORD2>\r
+ <KEYWORD2>mcve_text_code</KEYWORD2>\r
+ <KEYWORD2>mcve_text_cv</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionauth</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionavs</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionbatch</KEYWORD2>\r
+ <KEYWORD2>mcve_transactioncv</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionid</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionitem</KEYWORD2>\r
+ <KEYWORD2>mcve_transactionssent</KEYWORD2>\r
+ <KEYWORD2>mcve_transactiontext</KEYWORD2>\r
+ <KEYWORD2>mcve_transinqueue</KEYWORD2>\r
+ <KEYWORD2>mcve_transnew</KEYWORD2>\r
+ <KEYWORD2>mcve_transparam</KEYWORD2>\r
+ <KEYWORD2>mcve_transsend</KEYWORD2>\r
+ <KEYWORD2>mcve_ub</KEYWORD2>\r
+ <KEYWORD2>mcve_uwait</KEYWORD2>\r
+ <KEYWORD2>mcve_verifyconnection</KEYWORD2>\r
+ <KEYWORD2>mcve_verifysslcert</KEYWORD2>\r
+ <KEYWORD2>mcve_void</KEYWORD2>\r
+ <KEYWORD2>md5</KEYWORD2>\r
+ <KEYWORD2>md5_file</KEYWORD2>\r
+ <KEYWORD2>mdecrypt_generic</KEYWORD2>\r
+ <KEYWORD2>memcache_debug</KEYWORD2>\r
+ <KEYWORD2>memory_get_usage</KEYWORD2>\r
+ <KEYWORD2>metaphone</KEYWORD2>\r
+ <KEYWORD2>method_exists</KEYWORD2>\r
+ <KEYWORD2>mhash</KEYWORD2>\r
+ <KEYWORD2>mhash_count</KEYWORD2>\r
+ <KEYWORD2>mhash_get_block_size</KEYWORD2>\r
+ <KEYWORD2>mhash_get_hash_name</KEYWORD2>\r
+ <KEYWORD2>mhash_keygen_s2k</KEYWORD2>\r
+ <KEYWORD2>microtime</KEYWORD2>\r
+ <KEYWORD2>mime_content_type</KEYWORD2>\r
+ <KEYWORD2>mimetype</KEYWORD2> <!-- hw_api_content -->\r
+ <KEYWORD2>min</KEYWORD2>\r
+ <KEYWORD2>ming_setcubicthreshold</KEYWORD2>\r
+ <KEYWORD2>ming_setscale</KEYWORD2>\r
+ <KEYWORD2>ming_useswfversion</KEYWORD2>\r
+ <KEYWORD2>mkdir</KEYWORD2>\r
+ <KEYWORD2>mktime</KEYWORD2>\r
+ <KEYWORD2>money_format</KEYWORD2>\r
+ <KEYWORD2>move</KEYWORD2> <!-- hw_api, swfdisplayitem -->\r
+ <KEYWORD2>move_uploaded_file</KEYWORD2>\r
+ <KEYWORD2>movepen</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>movepento</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>moveto</KEYWORD2> <!-- swfdisplayitem, swffill, swftext -->\r
+ <KEYWORD2>msession_connect</KEYWORD2>\r
+ <KEYWORD2>msession_count</KEYWORD2>\r
+ <KEYWORD2>msession_create</KEYWORD2>\r
+ <KEYWORD2>msession_destroy</KEYWORD2>\r
+ <KEYWORD2>msession_disconnect</KEYWORD2>\r
+ <KEYWORD2>msession_find</KEYWORD2>\r
+ <KEYWORD2>msession_get</KEYWORD2>\r
+ <KEYWORD2>msession_get_array</KEYWORD2>\r
+ <KEYWORD2>msession_get_data</KEYWORD2>\r
+ <KEYWORD2>msession_inc</KEYWORD2>\r
+ <KEYWORD2>msession_list</KEYWORD2>\r
+ <KEYWORD2>msession_listvar</KEYWORD2>\r
+ <KEYWORD2>msession_lock</KEYWORD2>\r
+ <KEYWORD2>msession_plugin</KEYWORD2>\r
+ <KEYWORD2>msession_randstr</KEYWORD2>\r
+ <KEYWORD2>msession_set</KEYWORD2>\r
+ <KEYWORD2>msession_set_array</KEYWORD2>\r
+ <KEYWORD2>msession_set_data</KEYWORD2>\r
+ <KEYWORD2>msession_timeout</KEYWORD2>\r
+ <KEYWORD2>msession_uniq</KEYWORD2>\r
+ <KEYWORD2>msession_unlock</KEYWORD2>\r
+ <KEYWORD2>msg_get_queue</KEYWORD2>\r
+ <KEYWORD2>msg_receive</KEYWORD2>\r
+ <KEYWORD2>msg_remove_queue</KEYWORD2>\r
+ <KEYWORD2>msg_send</KEYWORD2>\r
+ <KEYWORD2>msg_set_queue</KEYWORD2>\r
+ <KEYWORD2>msg_stat_queue</KEYWORD2>\r
+ <KEYWORD2>msql</KEYWORD2>\r
+ <KEYWORD2>msql_affected_rows</KEYWORD2>\r
+ <KEYWORD2>msql_close</KEYWORD2>\r
+ <KEYWORD2>msql_connect</KEYWORD2>\r
+ <KEYWORD2>msql_create_db</KEYWORD2>\r
+ <KEYWORD2>msql_createdb</KEYWORD2>\r
+ <KEYWORD2>msql_data_seek</KEYWORD2>\r
+ <KEYWORD2>msql_db_query</KEYWORD2>\r
+ <KEYWORD2>msql_dbname</KEYWORD2>\r
+ <KEYWORD2>msql_drop_db</KEYWORD2>\r
+ <KEYWORD2>msql_error</KEYWORD2>\r
+ <KEYWORD2>msql_fetch_array</KEYWORD2>\r
+ <KEYWORD2>msql_fetch_field</KEYWORD2>\r
+ <KEYWORD2>msql_fetch_object</KEYWORD2>\r
+ <KEYWORD2>msql_fetch_row</KEYWORD2>\r
+ <KEYWORD2>msql_field_flags</KEYWORD2>\r
+ <KEYWORD2>msql_field_len</KEYWORD2>\r
+ <KEYWORD2>msql_field_name</KEYWORD2>\r
+ <KEYWORD2>msql_field_seek</KEYWORD2>\r
+ <KEYWORD2>msql_field_table</KEYWORD2>\r
+ <KEYWORD2>msql_field_type</KEYWORD2>\r
+ <KEYWORD2>msql_fieldflags</KEYWORD2>\r
+ <KEYWORD2>msql_fieldlen</KEYWORD2>\r
+ <KEYWORD2>msql_fieldname</KEYWORD2>\r
+ <KEYWORD2>msql_fieldtable</KEYWORD2>\r
+ <KEYWORD2>msql_fieldtype</KEYWORD2>\r
+ <KEYWORD2>msql_free_result</KEYWORD2>\r
+ <KEYWORD2>msql_list_dbs</KEYWORD2>\r
+ <KEYWORD2>msql_list_fields</KEYWORD2>\r
+ <KEYWORD2>msql_list_tables</KEYWORD2>\r
+ <KEYWORD2>msql_num_fields</KEYWORD2>\r
+ <KEYWORD2>msql_num_rows</KEYWORD2>\r
+ <KEYWORD2>msql_numfields</KEYWORD2>\r
+ <KEYWORD2>msql_numrows</KEYWORD2>\r
+ <KEYWORD2>msql_pconnect</KEYWORD2>\r
+ <KEYWORD2>msql_query</KEYWORD2>\r
+ <KEYWORD2>msql_regcase</KEYWORD2>\r
+ <KEYWORD2>msql_result</KEYWORD2>\r
+ <KEYWORD2>msql_select_db</KEYWORD2>\r
+ <KEYWORD2>msql_tablename</KEYWORD2>\r
+ <KEYWORD2>mssql_bind</KEYWORD2>\r
+ <KEYWORD2>mssql_close</KEYWORD2>\r
+ <KEYWORD2>mssql_connect</KEYWORD2>\r
+ <KEYWORD2>mssql_data_seek</KEYWORD2>\r
+ <KEYWORD2>mssql_execute</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_array</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_batch</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_field</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_object</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_row</KEYWORD2>\r
+ <KEYWORD2>mssql_field_length</KEYWORD2>\r
+ <KEYWORD2>mssql_field_name</KEYWORD2>\r
+ <KEYWORD2>mssql_field_seek</KEYWORD2>\r
+ <KEYWORD2>mssql_field_type</KEYWORD2>\r
+ <KEYWORD2>mssql_free_result</KEYWORD2>\r
+ <KEYWORD2>mssql_free_statement</KEYWORD2>\r
+ <KEYWORD2>mssql_get_last_message</KEYWORD2>\r
+ <KEYWORD2>mssql_guid_string</KEYWORD2>\r
+ <KEYWORD2>mssql_init</KEYWORD2>\r
+ <KEYWORD2>mssql_min_error_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_min_message_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_next_result</KEYWORD2>\r
+ <KEYWORD2>mssql_num_fields</KEYWORD2>\r
+ <KEYWORD2>mssql_num_rows</KEYWORD2>\r
+ <KEYWORD2>mssql_pconnect</KEYWORD2>\r
+ <KEYWORD2>mssql_query</KEYWORD2>\r
+ <KEYWORD2>mssql_result</KEYWORD2>\r
+ <KEYWORD2>mssql_rows_affected</KEYWORD2>\r
+ <KEYWORD2>mssql_select_db</KEYWORD2>\r
+ <KEYWORD2>mt_getrandmax</KEYWORD2>\r
+ <KEYWORD2>mt_rand</KEYWORD2>\r
+ <KEYWORD2>mt_srand</KEYWORD2>\r
+ <KEYWORD2>multcolor</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>muscat_close</KEYWORD2>\r
+ <KEYWORD2>muscat_get</KEYWORD2>\r
+ <KEYWORD2>muscat_give</KEYWORD2>\r
+ <KEYWORD2>muscat_setup</KEYWORD2>\r
+ <KEYWORD2>muscat_setup_net</KEYWORD2>\r
+ <KEYWORD2>mysql_affected_rows</KEYWORD2>\r
+ <KEYWORD2>mysql_change_user</KEYWORD2>\r
+ <KEYWORD2>mysql_client_encoding</KEYWORD2>\r
+ <KEYWORD2>mysql_close</KEYWORD2>\r
+ <KEYWORD2>mysql_connect</KEYWORD2>\r
+ <KEYWORD2>mysql_create_db</KEYWORD2>\r
+ <KEYWORD2>mysql_data_seek</KEYWORD2>\r
+ <KEYWORD2>mysql_db_name</KEYWORD2>\r
+ <KEYWORD2>mysql_db_query</KEYWORD2>\r
+ <KEYWORD2>mysql_drop_db</KEYWORD2>\r
+ <KEYWORD2>mysql_errno</KEYWORD2>\r
+ <KEYWORD2>mysql_error</KEYWORD2>\r
+ <KEYWORD2>mysql_escape_string</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_array</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_field</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_lengths</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_object</KEYWORD2>\r
+ <KEYWORD2>mysql_fetch_row</KEYWORD2>\r
+ <KEYWORD2>mysql_field_flags</KEYWORD2>\r
+ <KEYWORD2>mysql_field_len</KEYWORD2>\r
+ <KEYWORD2>mysql_field_name</KEYWORD2>\r
+ <KEYWORD2>mysql_field_seek</KEYWORD2>\r
+ <KEYWORD2>mysql_field_table</KEYWORD2>\r
+ <KEYWORD2>mysql_field_type</KEYWORD2>\r
+ <KEYWORD2>mysql_free_result</KEYWORD2>\r
+ <KEYWORD2>mysql_get_client_info</KEYWORD2>\r
+ <KEYWORD2>mysql_get_host_info</KEYWORD2>\r
+ <KEYWORD2>mysql_get_proto_info</KEYWORD2>\r
+ <KEYWORD2>mysql_get_server_info</KEYWORD2>\r
+ <KEYWORD2>mysql_info</KEYWORD2>\r
+ <KEYWORD2>mysql_insert_id</KEYWORD2>\r
+ <KEYWORD2>mysql_list_dbs</KEYWORD2>\r
+ <KEYWORD2>mysql_list_fields</KEYWORD2>\r
+ <KEYWORD2>mysql_list_processes</KEYWORD2>\r
+ <KEYWORD2>mysql_list_tables</KEYWORD2>\r
+ <KEYWORD2>mysql_num_fields</KEYWORD2>\r
+ <KEYWORD2>mysql_num_rows</KEYWORD2>\r
+ <KEYWORD2>mysql_pconnect</KEYWORD2>\r
+ <KEYWORD2>mysql_ping</KEYWORD2>\r
+ <KEYWORD2>mysql_query</KEYWORD2>\r
+ <KEYWORD2>mysql_real_escape_string</KEYWORD2>\r
+ <KEYWORD2>mysql_result</KEYWORD2>\r
+ <KEYWORD2>mysql_select_db</KEYWORD2>\r
+ <KEYWORD2>mysql_stat</KEYWORD2>\r
+ <KEYWORD2>mysql_tablename</KEYWORD2>\r
+ <KEYWORD2>mysql_thread_id</KEYWORD2>\r
+ <KEYWORD2>mysql_unbuffered_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_affected_rows</KEYWORD2>\r
+ <KEYWORD2>mysqli_autocommit</KEYWORD2>\r
+ <KEYWORD2>mysqli_bind_param</KEYWORD2>\r
+ <KEYWORD2>mysqli_bind_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_change_user</KEYWORD2>\r
+ <KEYWORD2>mysqli_character_set_name</KEYWORD2>\r
+ <KEYWORD2>mysqli_client_encoding</KEYWORD2>\r
+ <KEYWORD2>mysqli_close</KEYWORD2>\r
+ <KEYWORD2>mysqli_commit</KEYWORD2>\r
+ <KEYWORD2>mysqli_connect</KEYWORD2>\r
+ <KEYWORD2>mysqli_connect_errno</KEYWORD2>\r
+ <KEYWORD2>mysqli_connect_error</KEYWORD2>\r
+ <KEYWORD2>mysqli_data_seek</KEYWORD2>\r
+ <KEYWORD2>mysqli_debug</KEYWORD2>\r
+ <KEYWORD2>mysqli_disable_reads_from_master</KEYWORD2>\r
+ <KEYWORD2>mysqli_disable_rpl_parse</KEYWORD2>\r
+ <KEYWORD2>mysqli_dump_debug_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_embedded_connect</KEYWORD2>\r
+ <KEYWORD2>mysqli_enable_reads_from_master</KEYWORD2>\r
+ <KEYWORD2>mysqli_enable_rpl_parse</KEYWORD2>\r
+ <KEYWORD2>mysqli_errno</KEYWORD2>\r
+ <KEYWORD2>mysqli_error</KEYWORD2>\r
+ <KEYWORD2>mysqli_escape_string</KEYWORD2>\r
+ <KEYWORD2>mysqli_execute</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_array</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_field</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_field_direct</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_fields</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_lengths</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_object</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch_row</KEYWORD2>\r
+ <KEYWORD2>mysqli_field_count</KEYWORD2>\r
+ <KEYWORD2>mysqli_field_seek</KEYWORD2>\r
+ <KEYWORD2>mysqli_field_tell</KEYWORD2>\r
+ <KEYWORD2>mysqli_free_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_client_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_client_version</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_host_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_metadata</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_proto_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_server_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_get_server_version</KEYWORD2>\r
+ <KEYWORD2>mysqli_info</KEYWORD2>\r
+ <KEYWORD2>mysqli_init</KEYWORD2>\r
+ <KEYWORD2>mysqli_insert_id</KEYWORD2>\r
+ <KEYWORD2>mysqli_kill</KEYWORD2>\r
+ <KEYWORD2>mysqli_master_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_more_results</KEYWORD2>\r
+ <KEYWORD2>mysqli_multi_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_next_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_num_fields</KEYWORD2>\r
+ <KEYWORD2>mysqli_num_rows</KEYWORD2>\r
+ <KEYWORD2>mysqli_options</KEYWORD2>\r
+ <KEYWORD2>mysqli_param_count</KEYWORD2>\r
+ <KEYWORD2>mysqli_ping</KEYWORD2>\r
+ <KEYWORD2>mysqli_prepare</KEYWORD2>\r
+ <KEYWORD2>mysqli_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_real_connect</KEYWORD2>\r
+ <KEYWORD2>mysqli_real_escape_string</KEYWORD2>\r
+ <KEYWORD2>mysqli_real_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_report</KEYWORD2>\r
+ <KEYWORD2>mysqli_rollback</KEYWORD2>\r
+ <KEYWORD2>mysqli_rpl_parse_enabled</KEYWORD2>\r
+ <KEYWORD2>mysqli_rpl_probe</KEYWORD2>\r
+ <KEYWORD2>mysqli_rpl_query_type</KEYWORD2>\r
+ <KEYWORD2>mysqli_select_db</KEYWORD2>\r
+ <KEYWORD2>mysqli_send_long_data</KEYWORD2>\r
+ <KEYWORD2>mysqli_send_query</KEYWORD2>\r
+ <KEYWORD2>mysqli_server_end</KEYWORD2>\r
+ <KEYWORD2>mysqli_server_init</KEYWORD2>\r
+ <KEYWORD2>mysqli_set_opt</KEYWORD2>\r
+ <KEYWORD2>mysqli_sqlstate</KEYWORD2>\r
+ <KEYWORD2>mysqli_ssl_set</KEYWORD2>\r
+ <KEYWORD2>mysqli_stat</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_affected_rows</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_bind_param</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_bind_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_close</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_data_seek</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_errno</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_error</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_execute</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_fetch</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_free_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_init</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_num_rows</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_param_count</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_prepare</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_reset</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_result_metadata</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_send_long_data</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_sqlstate</KEYWORD2>\r
+ <KEYWORD2>mysqli_stmt_store_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_store_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_thread_id</KEYWORD2>\r
+ <KEYWORD2>mysqli_thread_safe</KEYWORD2>\r
+ <KEYWORD2>mysqli_use_result</KEYWORD2>\r
+ <KEYWORD2>mysqli_warning_count</KEYWORD2>\r
+ <KEYWORD2>name</KEYWORD2> <!-- domattribute, domdocumenttype -->\r
+ <KEYWORD2>natcasesort</KEYWORD2>\r
+ <KEYWORD2>natsort</KEYWORD2>\r
+ <KEYWORD2>ncurses_addch</KEYWORD2>\r
+ <KEYWORD2>ncurses_addchnstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_addchstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_addnstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_addstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_assume_default_colors</KEYWORD2>\r
+ <KEYWORD2>ncurses_attroff</KEYWORD2>\r
+ <KEYWORD2>ncurses_attron</KEYWORD2>\r
+ <KEYWORD2>ncurses_attrset</KEYWORD2>\r
+ <KEYWORD2>ncurses_baudrate</KEYWORD2>\r
+ <KEYWORD2>ncurses_beep</KEYWORD2>\r
+ <KEYWORD2>ncurses_bkgd</KEYWORD2>\r
+ <KEYWORD2>ncurses_bkgdset</KEYWORD2>\r
+ <KEYWORD2>ncurses_border</KEYWORD2>\r
+ <KEYWORD2>ncurses_bottom_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_can_change_color</KEYWORD2>\r
+ <KEYWORD2>ncurses_cbreak</KEYWORD2>\r
+ <KEYWORD2>ncurses_clear</KEYWORD2>\r
+ <KEYWORD2>ncurses_clrtobot</KEYWORD2>\r
+ <KEYWORD2>ncurses_clrtoeol</KEYWORD2>\r
+ <KEYWORD2>ncurses_color_content</KEYWORD2>\r
+ <KEYWORD2>ncurses_color_set</KEYWORD2>\r
+ <KEYWORD2>ncurses_curs_set</KEYWORD2>\r
+ <KEYWORD2>ncurses_def_prog_mode</KEYWORD2>\r
+ <KEYWORD2>ncurses_def_shell_mode</KEYWORD2>\r
+ <KEYWORD2>ncurses_define_key</KEYWORD2>\r
+ <KEYWORD2>ncurses_del_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_delay_output</KEYWORD2>\r
+ <KEYWORD2>ncurses_delch</KEYWORD2>\r
+ <KEYWORD2>ncurses_deleteln</KEYWORD2>\r
+ <KEYWORD2>ncurses_delwin</KEYWORD2>\r
+ <KEYWORD2>ncurses_doupdate</KEYWORD2>\r
+ <KEYWORD2>ncurses_echo</KEYWORD2>\r
+ <KEYWORD2>ncurses_echochar</KEYWORD2>\r
+ <KEYWORD2>ncurses_end</KEYWORD2>\r
+ <KEYWORD2>ncurses_erase</KEYWORD2>\r
+ <KEYWORD2>ncurses_erasechar</KEYWORD2>\r
+ <KEYWORD2>ncurses_filter</KEYWORD2>\r
+ <KEYWORD2>ncurses_flash</KEYWORD2>\r
+ <KEYWORD2>ncurses_flushinp</KEYWORD2>\r
+ <KEYWORD2>ncurses_getch</KEYWORD2>\r
+ <KEYWORD2>ncurses_getmaxyx</KEYWORD2>\r
+ <KEYWORD2>ncurses_getmouse</KEYWORD2>\r
+ <KEYWORD2>ncurses_getyx</KEYWORD2>\r
+ <KEYWORD2>ncurses_halfdelay</KEYWORD2>\r
+ <KEYWORD2>ncurses_has_colors</KEYWORD2>\r
+ <KEYWORD2>ncurses_has_ic</KEYWORD2>\r
+ <KEYWORD2>ncurses_has_il</KEYWORD2>\r
+ <KEYWORD2>ncurses_has_key</KEYWORD2>\r
+ <KEYWORD2>ncurses_hide_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_hline</KEYWORD2>\r
+ <KEYWORD2>ncurses_inch</KEYWORD2>\r
+ <KEYWORD2>ncurses_init</KEYWORD2>\r
+ <KEYWORD2>ncurses_init_color</KEYWORD2>\r
+ <KEYWORD2>ncurses_init_pair</KEYWORD2>\r
+ <KEYWORD2>ncurses_insch</KEYWORD2>\r
+ <KEYWORD2>ncurses_insdelln</KEYWORD2>\r
+ <KEYWORD2>ncurses_insertln</KEYWORD2>\r
+ <KEYWORD2>ncurses_insstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_instr</KEYWORD2>\r
+ <KEYWORD2>ncurses_isendwin</KEYWORD2>\r
+ <KEYWORD2>ncurses_keyok</KEYWORD2>\r
+ <KEYWORD2>ncurses_keypad</KEYWORD2>\r
+ <KEYWORD2>ncurses_killchar</KEYWORD2>\r
+ <KEYWORD2>ncurses_longname</KEYWORD2>\r
+ <KEYWORD2>ncurses_meta</KEYWORD2>\r
+ <KEYWORD2>ncurses_mouse_trafo</KEYWORD2>\r
+ <KEYWORD2>ncurses_mouseinterval</KEYWORD2>\r
+ <KEYWORD2>ncurses_mousemask</KEYWORD2>\r
+ <KEYWORD2>ncurses_move</KEYWORD2>\r
+ <KEYWORD2>ncurses_move_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvaddch</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvaddchnstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvaddchstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvaddnstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvaddstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvcur</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvdelch</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvgetch</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvhline</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvinch</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvvline</KEYWORD2>\r
+ <KEYWORD2>ncurses_mvwaddstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_napms</KEYWORD2>\r
+ <KEYWORD2>ncurses_new_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_newpad</KEYWORD2>\r
+ <KEYWORD2>ncurses_newwin</KEYWORD2>\r
+ <KEYWORD2>ncurses_nl</KEYWORD2>\r
+ <KEYWORD2>ncurses_nocbreak</KEYWORD2>\r
+ <KEYWORD2>ncurses_noecho</KEYWORD2>\r
+ <KEYWORD2>ncurses_nonl</KEYWORD2>\r
+ <KEYWORD2>ncurses_noqiflush</KEYWORD2>\r
+ <KEYWORD2>ncurses_noraw</KEYWORD2>\r
+ <KEYWORD2>ncurses_pair_content</KEYWORD2>\r
+ <KEYWORD2>ncurses_panel_above</KEYWORD2>\r
+ <KEYWORD2>ncurses_panel_below</KEYWORD2>\r
+ <KEYWORD2>ncurses_panel_window</KEYWORD2>\r
+ <KEYWORD2>ncurses_pnoutrefresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_prefresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_putp</KEYWORD2>\r
+ <KEYWORD2>ncurses_qiflush</KEYWORD2>\r
+ <KEYWORD2>ncurses_raw</KEYWORD2>\r
+ <KEYWORD2>ncurses_refresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_replace_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_reset_prog_mode</KEYWORD2>\r
+ <KEYWORD2>ncurses_reset_shell_mode</KEYWORD2>\r
+ <KEYWORD2>ncurses_resetty</KEYWORD2>\r
+ <KEYWORD2>ncurses_savetty</KEYWORD2>\r
+ <KEYWORD2>ncurses_scr_dump</KEYWORD2>\r
+ <KEYWORD2>ncurses_scr_init</KEYWORD2>\r
+ <KEYWORD2>ncurses_scr_restore</KEYWORD2>\r
+ <KEYWORD2>ncurses_scr_set</KEYWORD2>\r
+ <KEYWORD2>ncurses_scrl</KEYWORD2>\r
+ <KEYWORD2>ncurses_show_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_attr</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_attroff</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_attron</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_attrset</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_clear</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_color</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_init</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_noutrefresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_refresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_restore</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_set</KEYWORD2>\r
+ <KEYWORD2>ncurses_slk_touch</KEYWORD2>\r
+ <KEYWORD2>ncurses_standend</KEYWORD2>\r
+ <KEYWORD2>ncurses_standout</KEYWORD2>\r
+ <KEYWORD2>ncurses_start_color</KEYWORD2>\r
+ <KEYWORD2>ncurses_termattrs</KEYWORD2>\r
+ <KEYWORD2>ncurses_termname</KEYWORD2>\r
+ <KEYWORD2>ncurses_timeout</KEYWORD2>\r
+ <KEYWORD2>ncurses_top_panel</KEYWORD2>\r
+ <KEYWORD2>ncurses_typeahead</KEYWORD2>\r
+ <KEYWORD2>ncurses_ungetch</KEYWORD2>\r
+ <KEYWORD2>ncurses_ungetmouse</KEYWORD2>\r
+ <KEYWORD2>ncurses_update_panels</KEYWORD2>\r
+ <KEYWORD2>ncurses_use_default_colors</KEYWORD2>\r
+ <KEYWORD2>ncurses_use_env</KEYWORD2>\r
+ <KEYWORD2>ncurses_use_extended_names</KEYWORD2>\r
+ <KEYWORD2>ncurses_vidattr</KEYWORD2>\r
+ <KEYWORD2>ncurses_vline</KEYWORD2>\r
+ <KEYWORD2>ncurses_waddch</KEYWORD2>\r
+ <KEYWORD2>ncurses_waddstr</KEYWORD2>\r
+ <KEYWORD2>ncurses_wattroff</KEYWORD2>\r
+ <KEYWORD2>ncurses_wattron</KEYWORD2>\r
+ <KEYWORD2>ncurses_wattrset</KEYWORD2>\r
+ <KEYWORD2>ncurses_wborder</KEYWORD2>\r
+ <KEYWORD2>ncurses_wclear</KEYWORD2>\r
+ <KEYWORD2>ncurses_wcolor_set</KEYWORD2>\r
+ <KEYWORD2>ncurses_werase</KEYWORD2>\r
+ <KEYWORD2>ncurses_wgetch</KEYWORD2>\r
+ <KEYWORD2>ncurses_whline</KEYWORD2>\r
+ <KEYWORD2>ncurses_wmouse_trafo</KEYWORD2>\r
+ <KEYWORD2>ncurses_wmove</KEYWORD2>\r
+ <KEYWORD2>ncurses_wnoutrefresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_wrefresh</KEYWORD2>\r
+ <KEYWORD2>ncurses_wstandend</KEYWORD2>\r
+ <KEYWORD2>ncurses_wstandout</KEYWORD2>\r
+ <KEYWORD2>ncurses_wvline</KEYWORD2>\r
+ <KEYWORD2>next</KEYWORD2> <!-- arrayiterator, cachingiterator, directoryiterator, filteriterator, limititerator, parentiterator, recursivedirectoryiterator, recursiveiteratoriterator, simplexmliterator, tidy_node -->\r
+ <KEYWORD2>next_sibling</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>nextframe</KEYWORD2> <!-- swfmovie, swfsprite -->\r
+ <KEYWORD2>ngettext</KEYWORD2>\r
+ <KEYWORD2>nl2br</KEYWORD2>\r
+ <KEYWORD2>nl_langinfo</KEYWORD2>\r
+ <KEYWORD2>node_name</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>node_type</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>node_value</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>normalize</KEYWORD2> <!-- domdocument, domnode -->\r
+ <KEYWORD2>notations</KEYWORD2> <!-- domdocumenttype -->\r
+ <KEYWORD2>notes_body</KEYWORD2>\r
+ <KEYWORD2>notes_copy_db</KEYWORD2>\r
+ <KEYWORD2>notes_create_db</KEYWORD2>\r
+ <KEYWORD2>notes_create_note</KEYWORD2>\r
+ <KEYWORD2>notes_drop_db</KEYWORD2>\r
+ <KEYWORD2>notes_find_note</KEYWORD2>\r
+ <KEYWORD2>notes_header_info</KEYWORD2>\r
+ <KEYWORD2>notes_list_msgs</KEYWORD2>\r
+ <KEYWORD2>notes_mark_read</KEYWORD2>\r
+ <KEYWORD2>notes_mark_unread</KEYWORD2>\r
+ <KEYWORD2>notes_nav_create</KEYWORD2>\r
+ <KEYWORD2>notes_search</KEYWORD2>\r
+ <KEYWORD2>notes_unread</KEYWORD2>\r
+ <KEYWORD2>notes_version</KEYWORD2>\r
+ <KEYWORD2>nsapi_request_headers</KEYWORD2>\r
+ <KEYWORD2>nsapi_response_headers</KEYWORD2>\r
+ <KEYWORD2>nsapi_virtual</KEYWORD2>\r
+ <KEYWORD2>number_format</KEYWORD2>\r
+ <KEYWORD2>ob_clean</KEYWORD2>\r
+ <KEYWORD2>ob_end_clean</KEYWORD2>\r
+ <KEYWORD2>ob_end_flush</KEYWORD2>\r
+ <KEYWORD2>ob_flush</KEYWORD2>\r
+ <KEYWORD2>ob_get_clean</KEYWORD2>\r
+ <KEYWORD2>ob_get_contents</KEYWORD2>\r
+ <KEYWORD2>ob_get_flush</KEYWORD2>\r
+ <KEYWORD2>ob_get_length</KEYWORD2>\r
+ <KEYWORD2>ob_get_level</KEYWORD2>\r
+ <KEYWORD2>ob_get_status</KEYWORD2>\r
+ <KEYWORD2>ob_gzhandler</KEYWORD2>\r
+ <KEYWORD2>ob_iconv_handler</KEYWORD2>\r
+ <KEYWORD2>ob_implicit_flush</KEYWORD2>\r
+ <KEYWORD2>ob_list_handlers</KEYWORD2>\r
+ <KEYWORD2>ob_start</KEYWORD2>\r
+ <KEYWORD2>ob_tidyhandler</KEYWORD2>\r
+ <KEYWORD2>object</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>objectbyanchor</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>oci_bind_by_name</KEYWORD2>\r
+ <KEYWORD2>oci_cancel</KEYWORD2>\r
+ <KEYWORD2>oci_close</KEYWORD2>\r
+ <KEYWORD2>oci_commit</KEYWORD2>\r
+ <KEYWORD2>oci_connect</KEYWORD2>\r
+ <KEYWORD2>oci_define_by_name</KEYWORD2>\r
+ <KEYWORD2>oci_error</KEYWORD2>\r
+ <KEYWORD2>oci_execute</KEYWORD2>\r
+ <KEYWORD2>oci_fetch</KEYWORD2>\r
+ <KEYWORD2>oci_fetch_all</KEYWORD2>\r
+ <KEYWORD2>oci_fetch_array</KEYWORD2>\r
+ <KEYWORD2>oci_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>oci_fetch_object</KEYWORD2>\r
+ <KEYWORD2>oci_fetch_row</KEYWORD2>\r
+ <KEYWORD2>oci_field_is_null</KEYWORD2>\r
+ <KEYWORD2>oci_field_name</KEYWORD2>\r
+ <KEYWORD2>oci_field_precision</KEYWORD2>\r
+ <KEYWORD2>oci_field_scale</KEYWORD2>\r
+ <KEYWORD2>oci_field_size</KEYWORD2>\r
+ <KEYWORD2>oci_field_type</KEYWORD2>\r
+ <KEYWORD2>oci_field_type_raw</KEYWORD2>\r
+ <KEYWORD2>oci_free_statement</KEYWORD2>\r
+ <KEYWORD2>oci_internal_debug</KEYWORD2>\r
+ <KEYWORD2>oci_lob_copy</KEYWORD2>\r
+ <KEYWORD2>oci_lob_is_equal</KEYWORD2>\r
+ <KEYWORD2>oci_new_collection</KEYWORD2>\r
+ <KEYWORD2>oci_new_connect</KEYWORD2>\r
+ <KEYWORD2>oci_new_cursor</KEYWORD2>\r
+ <KEYWORD2>oci_new_descriptor</KEYWORD2>\r
+ <KEYWORD2>oci_num_fields</KEYWORD2>\r
+ <KEYWORD2>oci_num_rows</KEYWORD2>\r
+ <KEYWORD2>oci_parse</KEYWORD2>\r
+ <KEYWORD2>oci_password_change</KEYWORD2>\r
+ <KEYWORD2>oci_pconnect</KEYWORD2>\r
+ <KEYWORD2>oci_result</KEYWORD2>\r
+ <KEYWORD2>oci_rollback</KEYWORD2>\r
+ <KEYWORD2>oci_server_version</KEYWORD2>\r
+ <KEYWORD2>oci_set_prefetch</KEYWORD2>\r
+ <KEYWORD2>oci_statement_type</KEYWORD2>\r
+ <KEYWORD2>ocibindbyname</KEYWORD2>\r
+ <KEYWORD2>ocicancel</KEYWORD2>\r
+ <KEYWORD2>ocicloselob</KEYWORD2>\r
+ <KEYWORD2>ocicollappend</KEYWORD2>\r
+ <KEYWORD2>ocicollassign</KEYWORD2>\r
+ <KEYWORD2>ocicollassignelem</KEYWORD2>\r
+ <KEYWORD2>ocicollgetelem</KEYWORD2>\r
+ <KEYWORD2>ocicollmax</KEYWORD2>\r
+ <KEYWORD2>ocicollsize</KEYWORD2>\r
+ <KEYWORD2>ocicolltrim</KEYWORD2>\r
+ <KEYWORD2>ocicolumnisnull</KEYWORD2>\r
+ <KEYWORD2>ocicolumnname</KEYWORD2>\r
+ <KEYWORD2>ocicolumnprecision</KEYWORD2>\r
+ <KEYWORD2>ocicolumnscale</KEYWORD2>\r
+ <KEYWORD2>ocicolumnsize</KEYWORD2>\r
+ <KEYWORD2>ocicolumntype</KEYWORD2>\r
+ <KEYWORD2>ocicolumntyperaw</KEYWORD2>\r
+ <KEYWORD2>ocicommit</KEYWORD2>\r
+ <KEYWORD2>ocidefinebyname</KEYWORD2>\r
+ <KEYWORD2>ocierror</KEYWORD2>\r
+ <KEYWORD2>ociexecute</KEYWORD2>\r
+ <KEYWORD2>ocifetch</KEYWORD2>\r
+ <KEYWORD2>ocifetchinto</KEYWORD2>\r
+ <KEYWORD2>ocifetchstatement</KEYWORD2>\r
+ <KEYWORD2>ocifreecollection</KEYWORD2>\r
+ <KEYWORD2>ocifreecursor</KEYWORD2>\r
+ <KEYWORD2>ocifreedesc</KEYWORD2>\r
+ <KEYWORD2>ocifreestatement</KEYWORD2>\r
+ <KEYWORD2>ociinternaldebug</KEYWORD2>\r
+ <KEYWORD2>ociloadlob</KEYWORD2>\r
+ <KEYWORD2>ocilogoff</KEYWORD2>\r
+ <KEYWORD2>ocilogon</KEYWORD2>\r
+ <KEYWORD2>ocinewcollection</KEYWORD2>\r
+ <KEYWORD2>ocinewcursor</KEYWORD2>\r
+ <KEYWORD2>ocinewdescriptor</KEYWORD2>\r
+ <KEYWORD2>ocinlogon</KEYWORD2>\r
+ <KEYWORD2>ocinumcols</KEYWORD2>\r
+ <KEYWORD2>ociparse</KEYWORD2>\r
+ <KEYWORD2>ociplogon</KEYWORD2>\r
+ <KEYWORD2>ociresult</KEYWORD2>\r
+ <KEYWORD2>ocirollback</KEYWORD2>\r
+ <KEYWORD2>ocirowcount</KEYWORD2>\r
+ <KEYWORD2>ocisavelob</KEYWORD2>\r
+ <KEYWORD2>ocisavelobfile</KEYWORD2>\r
+ <KEYWORD2>ociserverversion</KEYWORD2>\r
+ <KEYWORD2>ocisetprefetch</KEYWORD2>\r
+ <KEYWORD2>ocistatementtype</KEYWORD2>\r
+ <KEYWORD2>ociwritelobtofile</KEYWORD2>\r
+ <KEYWORD2>ociwritetemporarylob</KEYWORD2>\r
+ <KEYWORD2>octdec</KEYWORD2>\r
+ <KEYWORD2>odbc_autocommit</KEYWORD2>\r
+ <KEYWORD2>odbc_binmode</KEYWORD2>\r
+ <KEYWORD2>odbc_close</KEYWORD2>\r
+ <KEYWORD2>odbc_close_all</KEYWORD2>\r
+ <KEYWORD2>odbc_columnprivileges</KEYWORD2>\r
+ <KEYWORD2>odbc_columns</KEYWORD2>\r
+ <KEYWORD2>odbc_commit</KEYWORD2>\r
+ <KEYWORD2>odbc_connect</KEYWORD2>\r
+ <KEYWORD2>odbc_cursor</KEYWORD2>\r
+ <KEYWORD2>odbc_data_source</KEYWORD2>\r
+ <KEYWORD2>odbc_do</KEYWORD2>\r
+ <KEYWORD2>odbc_error</KEYWORD2>\r
+ <KEYWORD2>odbc_errormsg</KEYWORD2>\r
+ <KEYWORD2>odbc_exec</KEYWORD2>\r
+ <KEYWORD2>odbc_execute</KEYWORD2>\r
+ <KEYWORD2>odbc_fetch_array</KEYWORD2>\r
+ <KEYWORD2>odbc_fetch_into</KEYWORD2>\r
+ <KEYWORD2>odbc_fetch_object</KEYWORD2>\r
+ <KEYWORD2>odbc_fetch_row</KEYWORD2>\r
+ <KEYWORD2>odbc_field_len</KEYWORD2>\r
+ <KEYWORD2>odbc_field_name</KEYWORD2>\r
+ <KEYWORD2>odbc_field_num</KEYWORD2>\r
+ <KEYWORD2>odbc_field_precision</KEYWORD2>\r
+ <KEYWORD2>odbc_field_scale</KEYWORD2>\r
+ <KEYWORD2>odbc_field_type</KEYWORD2>\r
+ <KEYWORD2>odbc_foreignkeys</KEYWORD2>\r
+ <KEYWORD2>odbc_free_result</KEYWORD2>\r
+ <KEYWORD2>odbc_gettypeinfo</KEYWORD2>\r
+ <KEYWORD2>odbc_longreadlen</KEYWORD2>\r
+ <KEYWORD2>odbc_next_result</KEYWORD2>\r
+ <KEYWORD2>odbc_num_fields</KEYWORD2>\r
+ <KEYWORD2>odbc_num_rows</KEYWORD2>\r
+ <KEYWORD2>odbc_pconnect</KEYWORD2>\r
+ <KEYWORD2>odbc_prepare</KEYWORD2>\r
+ <KEYWORD2>odbc_primarykeys</KEYWORD2>\r
+ <KEYWORD2>odbc_procedurecolumns</KEYWORD2>\r
+ <KEYWORD2>odbc_procedures</KEYWORD2>\r
+ <KEYWORD2>odbc_result</KEYWORD2>\r
+ <KEYWORD2>odbc_result_all</KEYWORD2>\r
+ <KEYWORD2>odbc_rollback</KEYWORD2>\r
+ <KEYWORD2>odbc_setoption</KEYWORD2>\r
+ <KEYWORD2>odbc_specialcolumns</KEYWORD2>\r
+ <KEYWORD2>odbc_statistics</KEYWORD2>\r
+ <KEYWORD2>odbc_tableprivileges</KEYWORD2>\r
+ <KEYWORD2>odbc_tables</KEYWORD2>\r
+ <KEYWORD2>offsetexists</KEYWORD2> <!-- arrayobject -->\r
+ <KEYWORD2>offsetget</KEYWORD2> <!-- arrayobject -->\r
+ <KEYWORD2>offsetset</KEYWORD2> <!-- arrayobject -->\r
+ <KEYWORD2>offsetunset</KEYWORD2> <!-- arrayobject -->\r
+ <KEYWORD2>openal_buffer_create</KEYWORD2>\r
+ <KEYWORD2>openal_buffer_data</KEYWORD2>\r
+ <KEYWORD2>openal_buffer_destroy</KEYWORD2>\r
+ <KEYWORD2>openal_buffer_get</KEYWORD2>\r
+ <KEYWORD2>openal_buffer_loadwav</KEYWORD2>\r
+ <KEYWORD2>openal_context_create</KEYWORD2>\r
+ <KEYWORD2>openal_context_current</KEYWORD2>\r
+ <KEYWORD2>openal_context_destroy</KEYWORD2>\r
+ <KEYWORD2>openal_context_process</KEYWORD2>\r
+ <KEYWORD2>openal_context_suspend</KEYWORD2>\r
+ <KEYWORD2>openal_device_close</KEYWORD2>\r
+ <KEYWORD2>openal_device_open</KEYWORD2>\r
+ <KEYWORD2>openal_listener_get</KEYWORD2>\r
+ <KEYWORD2>openal_listener_set</KEYWORD2>\r
+ <KEYWORD2>openal_source_create</KEYWORD2>\r
+ <KEYWORD2>openal_source_destroy</KEYWORD2>\r
+ <KEYWORD2>openal_source_get</KEYWORD2>\r
+ <KEYWORD2>openal_source_pause</KEYWORD2>\r
+ <KEYWORD2>openal_source_play</KEYWORD2>\r
+ <KEYWORD2>openal_source_rewind</KEYWORD2>\r
+ <KEYWORD2>openal_source_set</KEYWORD2>\r
+ <KEYWORD2>openal_source_stop</KEYWORD2>\r
+ <KEYWORD2>openal_stream</KEYWORD2>\r
+ <KEYWORD2>opendir</KEYWORD2>\r
+ <KEYWORD2>openlog</KEYWORD2>\r
+ <KEYWORD2>openssl_csr_export</KEYWORD2>\r
+ <KEYWORD2>openssl_csr_export_to_file</KEYWORD2>\r
+ <KEYWORD2>openssl_csr_new</KEYWORD2>\r
+ <KEYWORD2>openssl_csr_sign</KEYWORD2>\r
+ <KEYWORD2>openssl_error_string</KEYWORD2>\r
+ <KEYWORD2>openssl_free_key</KEYWORD2>\r
+ <KEYWORD2>openssl_get_privatekey</KEYWORD2>\r
+ <KEYWORD2>openssl_get_publickey</KEYWORD2>\r
+ <KEYWORD2>openssl_open</KEYWORD2>\r
+ <KEYWORD2>openssl_pkcs7_decrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_pkcs7_encrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_pkcs7_sign</KEYWORD2>\r
+ <KEYWORD2>openssl_pkcs7_verify</KEYWORD2>\r
+ <KEYWORD2>openssl_pkey_export</KEYWORD2>\r
+ <KEYWORD2>openssl_pkey_export_to_file</KEYWORD2>\r
+ <KEYWORD2>openssl_pkey_get_private</KEYWORD2>\r
+ <KEYWORD2>openssl_pkey_get_public</KEYWORD2>\r
+ <KEYWORD2>openssl_pkey_new</KEYWORD2>\r
+ <KEYWORD2>openssl_private_decrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_private_encrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_public_decrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_public_encrypt</KEYWORD2>\r
+ <KEYWORD2>openssl_seal</KEYWORD2>\r
+ <KEYWORD2>openssl_sign</KEYWORD2>\r
+ <KEYWORD2>openssl_verify</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_check_private_key</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_checkpurpose</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_export</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_export_to_file</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_free</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_parse</KEYWORD2>\r
+ <KEYWORD2>openssl_x509_read</KEYWORD2>\r
+ <KEYWORD2>ora_bind</KEYWORD2>\r
+ <KEYWORD2>ora_close</KEYWORD2>\r
+ <KEYWORD2>ora_columnname</KEYWORD2>\r
+ <KEYWORD2>ora_columnsize</KEYWORD2>\r
+ <KEYWORD2>ora_columntype</KEYWORD2>\r
+ <KEYWORD2>ora_commit</KEYWORD2>\r
+ <KEYWORD2>ora_commitoff</KEYWORD2>\r
+ <KEYWORD2>ora_commiton</KEYWORD2>\r
+ <KEYWORD2>ora_do</KEYWORD2>\r
+ <KEYWORD2>ora_error</KEYWORD2>\r
+ <KEYWORD2>ora_errorcode</KEYWORD2>\r
+ <KEYWORD2>ora_exec</KEYWORD2>\r
+ <KEYWORD2>ora_fetch</KEYWORD2>\r
+ <KEYWORD2>ora_fetch_into</KEYWORD2>\r
+ <KEYWORD2>ora_getcolumn</KEYWORD2>\r
+ <KEYWORD2>ora_logoff</KEYWORD2>\r
+ <KEYWORD2>ora_logon</KEYWORD2>\r
+ <KEYWORD2>ora_numcols</KEYWORD2>\r
+ <KEYWORD2>ora_numrows</KEYWORD2>\r
+ <KEYWORD2>ora_open</KEYWORD2>\r
+ <KEYWORD2>ora_parse</KEYWORD2>\r
+ <KEYWORD2>ora_plogon</KEYWORD2>\r
+ <KEYWORD2>ora_rollback</KEYWORD2>\r
+ <KEYWORD2>ord</KEYWORD2>\r
+ <KEYWORD2>output</KEYWORD2> <!-- swfmovie -->\r
+ <KEYWORD2>output_add_rewrite_var</KEYWORD2>\r
+ <KEYWORD2>output_reset_rewrite_vars</KEYWORD2>\r
+ <KEYWORD2>overload</KEYWORD2>\r
+ <KEYWORD2>override_function</KEYWORD2>\r
+ <KEYWORD2>ovrimos_close</KEYWORD2>\r
+ <KEYWORD2>ovrimos_commit</KEYWORD2>\r
+ <KEYWORD2>ovrimos_connect</KEYWORD2>\r
+ <KEYWORD2>ovrimos_cursor</KEYWORD2>\r
+ <KEYWORD2>ovrimos_exec</KEYWORD2>\r
+ <KEYWORD2>ovrimos_execute</KEYWORD2>\r
+ <KEYWORD2>ovrimos_fetch_into</KEYWORD2>\r
+ <KEYWORD2>ovrimos_fetch_row</KEYWORD2>\r
+ <KEYWORD2>ovrimos_field_len</KEYWORD2>\r
+ <KEYWORD2>ovrimos_field_name</KEYWORD2>\r
+ <KEYWORD2>ovrimos_field_num</KEYWORD2>\r
+ <KEYWORD2>ovrimos_field_type</KEYWORD2>\r
+ <KEYWORD2>ovrimos_free_result</KEYWORD2>\r
+ <KEYWORD2>ovrimos_longreadlen</KEYWORD2>\r
+ <KEYWORD2>ovrimos_num_fields</KEYWORD2>\r
+ <KEYWORD2>ovrimos_num_rows</KEYWORD2>\r
+ <KEYWORD2>ovrimos_prepare</KEYWORD2>\r
+ <KEYWORD2>ovrimos_result</KEYWORD2>\r
+ <KEYWORD2>ovrimos_result_all</KEYWORD2>\r
+ <KEYWORD2>ovrimos_rollback</KEYWORD2>\r
+ <KEYWORD2>owner_document</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>pack</KEYWORD2>\r
+ <KEYWORD2>parent_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>parents</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>parse_ini_file</KEYWORD2>\r
+ <KEYWORD2>parse_str</KEYWORD2>\r
+ <KEYWORD2>parse_url</KEYWORD2>\r
+ <KEYWORD2>parsekit_compile_file</KEYWORD2>\r
+ <KEYWORD2>parsekit_compile_string</KEYWORD2>\r
+ <KEYWORD2>parsekit_func_arginfo</KEYWORD2>\r
+ <KEYWORD2>passthru</KEYWORD2>\r
+ <KEYWORD2>pathinfo</KEYWORD2>\r
+ <KEYWORD2>pclose</KEYWORD2>\r
+ <KEYWORD2>pcntl_alarm</KEYWORD2>\r
+ <KEYWORD2>pcntl_exec</KEYWORD2>\r
+ <KEYWORD2>pcntl_fork</KEYWORD2>\r
+ <KEYWORD2>pcntl_getpriority</KEYWORD2>\r
+ <KEYWORD2>pcntl_setpriority</KEYWORD2>\r
+ <KEYWORD2>pcntl_signal</KEYWORD2>\r
+ <KEYWORD2>pcntl_wait</KEYWORD2>\r
+ <KEYWORD2>pcntl_waitpid</KEYWORD2>\r
+ <KEYWORD2>pcntl_wexitstatus</KEYWORD2>\r
+ <KEYWORD2>pcntl_wifexited</KEYWORD2>\r
+ <KEYWORD2>pcntl_wifsignaled</KEYWORD2>\r
+ <KEYWORD2>pcntl_wifstopped</KEYWORD2>\r
+ <KEYWORD2>pcntl_wstopsig</KEYWORD2>\r
+ <KEYWORD2>pcntl_wtermsig</KEYWORD2>\r
+ <KEYWORD2>pconnect</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>pdf_add_annotation</KEYWORD2>\r
+ <KEYWORD2>pdf_add_bookmark</KEYWORD2>\r
+ <KEYWORD2>pdf_add_launchlink</KEYWORD2>\r
+ <KEYWORD2>pdf_add_locallink</KEYWORD2>\r
+ <KEYWORD2>pdf_add_note</KEYWORD2>\r
+ <KEYWORD2>pdf_add_outline</KEYWORD2>\r
+ <KEYWORD2>pdf_add_pdflink</KEYWORD2>\r
+ <KEYWORD2>pdf_add_thumbnail</KEYWORD2>\r
+ <KEYWORD2>pdf_add_weblink</KEYWORD2>\r
+ <KEYWORD2>pdf_arc</KEYWORD2>\r
+ <KEYWORD2>pdf_arcn</KEYWORD2>\r
+ <KEYWORD2>pdf_attach_file</KEYWORD2>\r
+ <KEYWORD2>pdf_begin_page</KEYWORD2>\r
+ <KEYWORD2>pdf_begin_pattern</KEYWORD2>\r
+ <KEYWORD2>pdf_begin_template</KEYWORD2>\r
+ <KEYWORD2>pdf_circle</KEYWORD2>\r
+ <KEYWORD2>pdf_clip</KEYWORD2>\r
+ <KEYWORD2>pdf_close</KEYWORD2>\r
+ <KEYWORD2>pdf_close_image</KEYWORD2>\r
+ <KEYWORD2>pdf_close_pdi</KEYWORD2>\r
+ <KEYWORD2>pdf_close_pdi_page</KEYWORD2>\r
+ <KEYWORD2>pdf_closepath</KEYWORD2>\r
+ <KEYWORD2>pdf_closepath_fill_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_closepath_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_concat</KEYWORD2>\r
+ <KEYWORD2>pdf_continue_text</KEYWORD2>\r
+ <KEYWORD2>pdf_curveto</KEYWORD2>\r
+ <KEYWORD2>pdf_delete</KEYWORD2>\r
+ <KEYWORD2>pdf_end_page</KEYWORD2>\r
+ <KEYWORD2>pdf_end_pattern</KEYWORD2>\r
+ <KEYWORD2>pdf_end_template</KEYWORD2>\r
+ <KEYWORD2>pdf_endpath</KEYWORD2>\r
+ <KEYWORD2>pdf_fill</KEYWORD2>\r
+ <KEYWORD2>pdf_fill_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_findfont</KEYWORD2>\r
+ <KEYWORD2>pdf_fit_pdi_page</KEYWORD2>\r
+ <KEYWORD2>pdf_get_buffer</KEYWORD2>\r
+ <KEYWORD2>pdf_get_font</KEYWORD2>\r
+ <KEYWORD2>pdf_get_fontname</KEYWORD2>\r
+ <KEYWORD2>pdf_get_fontsize</KEYWORD2>\r
+ <KEYWORD2>pdf_get_image_height</KEYWORD2>\r
+ <KEYWORD2>pdf_get_image_width</KEYWORD2>\r
+ <KEYWORD2>pdf_get_majorversion</KEYWORD2>\r
+ <KEYWORD2>pdf_get_minorversion</KEYWORD2>\r
+ <KEYWORD2>pdf_get_parameter</KEYWORD2>\r
+ <KEYWORD2>pdf_get_pdi_parameter</KEYWORD2>\r
+ <KEYWORD2>pdf_get_pdi_value</KEYWORD2>\r
+ <KEYWORD2>pdf_get_value</KEYWORD2>\r
+ <KEYWORD2>pdf_initgraphics</KEYWORD2>\r
+ <KEYWORD2>pdf_lineto</KEYWORD2>\r
+ <KEYWORD2>pdf_load_font</KEYWORD2>\r
+ <KEYWORD2>pdf_makespotcolor</KEYWORD2>\r
+ <KEYWORD2>pdf_moveto</KEYWORD2>\r
+ <KEYWORD2>pdf_new</KEYWORD2>\r
+ <KEYWORD2>pdf_open</KEYWORD2>\r
+ <KEYWORD2>pdf_open_ccitt</KEYWORD2>\r
+ <KEYWORD2>pdf_open_file</KEYWORD2>\r
+ <KEYWORD2>pdf_open_gif</KEYWORD2>\r
+ <KEYWORD2>pdf_open_image</KEYWORD2>\r
+ <KEYWORD2>pdf_open_image_file</KEYWORD2>\r
+ <KEYWORD2>pdf_open_jpeg</KEYWORD2>\r
+ <KEYWORD2>pdf_open_memory_image</KEYWORD2>\r
+ <KEYWORD2>pdf_open_pdi</KEYWORD2>\r
+ <KEYWORD2>pdf_open_pdi_page</KEYWORD2>\r
+ <KEYWORD2>pdf_open_png</KEYWORD2>\r
+ <KEYWORD2>pdf_open_tiff</KEYWORD2>\r
+ <KEYWORD2>pdf_place_image</KEYWORD2>\r
+ <KEYWORD2>pdf_place_pdi_page</KEYWORD2>\r
+ <KEYWORD2>pdf_rect</KEYWORD2>\r
+ <KEYWORD2>pdf_restore</KEYWORD2>\r
+ <KEYWORD2>pdf_rotate</KEYWORD2>\r
+ <KEYWORD2>pdf_save</KEYWORD2>\r
+ <KEYWORD2>pdf_scale</KEYWORD2>\r
+ <KEYWORD2>pdf_set_border_color</KEYWORD2>\r
+ <KEYWORD2>pdf_set_border_dash</KEYWORD2>\r
+ <KEYWORD2>pdf_set_border_style</KEYWORD2>\r
+ <KEYWORD2>pdf_set_char_spacing</KEYWORD2>\r
+ <KEYWORD2>pdf_set_duration</KEYWORD2>\r
+ <KEYWORD2>pdf_set_font</KEYWORD2>\r
+ <KEYWORD2>pdf_set_horiz_scaling</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info_author</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info_creator</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info_keywords</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info_subject</KEYWORD2>\r
+ <KEYWORD2>pdf_set_info_title</KEYWORD2>\r
+ <KEYWORD2>pdf_set_leading</KEYWORD2>\r
+ <KEYWORD2>pdf_set_parameter</KEYWORD2>\r
+ <KEYWORD2>pdf_set_text_matrix</KEYWORD2>\r
+ <KEYWORD2>pdf_set_text_pos</KEYWORD2>\r
+ <KEYWORD2>pdf_set_text_rendering</KEYWORD2>\r
+ <KEYWORD2>pdf_set_text_rise</KEYWORD2>\r
+ <KEYWORD2>pdf_set_value</KEYWORD2>\r
+ <KEYWORD2>pdf_set_word_spacing</KEYWORD2>\r
+ <KEYWORD2>pdf_setcolor</KEYWORD2>\r
+ <KEYWORD2>pdf_setdash</KEYWORD2>\r
+ <KEYWORD2>pdf_setflat</KEYWORD2>\r
+ <KEYWORD2>pdf_setfont</KEYWORD2>\r
+ <KEYWORD2>pdf_setgray</KEYWORD2>\r
+ <KEYWORD2>pdf_setgray_fill</KEYWORD2>\r
+ <KEYWORD2>pdf_setgray_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_setlinecap</KEYWORD2>\r
+ <KEYWORD2>pdf_setlinejoin</KEYWORD2>\r
+ <KEYWORD2>pdf_setlinewidth</KEYWORD2>\r
+ <KEYWORD2>pdf_setmatrix</KEYWORD2>\r
+ <KEYWORD2>pdf_setmiterlimit</KEYWORD2>\r
+ <KEYWORD2>pdf_setpolydash</KEYWORD2>\r
+ <KEYWORD2>pdf_setrgbcolor</KEYWORD2>\r
+ <KEYWORD2>pdf_setrgbcolor_fill</KEYWORD2>\r
+ <KEYWORD2>pdf_setrgbcolor_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_show</KEYWORD2>\r
+ <KEYWORD2>pdf_show_boxed</KEYWORD2>\r
+ <KEYWORD2>pdf_show_xy</KEYWORD2>\r
+ <KEYWORD2>pdf_skew</KEYWORD2>\r
+ <KEYWORD2>pdf_stringwidth</KEYWORD2>\r
+ <KEYWORD2>pdf_stroke</KEYWORD2>\r
+ <KEYWORD2>pdf_translate</KEYWORD2>\r
+ <KEYWORD2>pfpro_cleanup</KEYWORD2>\r
+ <KEYWORD2>pfpro_init</KEYWORD2>\r
+ <KEYWORD2>pfpro_process</KEYWORD2>\r
+ <KEYWORD2>pfpro_process_raw</KEYWORD2>\r
+ <KEYWORD2>pfpro_version</KEYWORD2>\r
+ <KEYWORD2>pfsockopen</KEYWORD2>\r
+ <KEYWORD2>pg_affected_rows</KEYWORD2>\r
+ <KEYWORD2>pg_cancel_query</KEYWORD2>\r
+ <KEYWORD2>pg_client_encoding</KEYWORD2>\r
+ <KEYWORD2>pg_close</KEYWORD2>\r
+ <KEYWORD2>pg_connect</KEYWORD2>\r
+ <KEYWORD2>pg_connection_busy</KEYWORD2>\r
+ <KEYWORD2>pg_connection_reset</KEYWORD2>\r
+ <KEYWORD2>pg_connection_status</KEYWORD2>\r
+ <KEYWORD2>pg_convert</KEYWORD2>\r
+ <KEYWORD2>pg_copy_from</KEYWORD2>\r
+ <KEYWORD2>pg_copy_to</KEYWORD2>\r
+ <KEYWORD2>pg_dbname</KEYWORD2>\r
+ <KEYWORD2>pg_delete</KEYWORD2>\r
+ <KEYWORD2>pg_end_copy</KEYWORD2>\r
+ <KEYWORD2>pg_escape_bytea</KEYWORD2>\r
+ <KEYWORD2>pg_escape_string</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_all</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_array</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_object</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_result</KEYWORD2>\r
+ <KEYWORD2>pg_fetch_row</KEYWORD2>\r
+ <KEYWORD2>pg_field_is_null</KEYWORD2>\r
+ <KEYWORD2>pg_field_name</KEYWORD2>\r
+ <KEYWORD2>pg_field_num</KEYWORD2>\r
+ <KEYWORD2>pg_field_prtlen</KEYWORD2>\r
+ <KEYWORD2>pg_field_size</KEYWORD2>\r
+ <KEYWORD2>pg_field_type</KEYWORD2>\r
+ <KEYWORD2>pg_free_result</KEYWORD2>\r
+ <KEYWORD2>pg_get_notify</KEYWORD2>\r
+ <KEYWORD2>pg_get_pid</KEYWORD2>\r
+ <KEYWORD2>pg_get_result</KEYWORD2>\r
+ <KEYWORD2>pg_host</KEYWORD2>\r
+ <KEYWORD2>pg_insert</KEYWORD2>\r
+ <KEYWORD2>pg_last_error</KEYWORD2>\r
+ <KEYWORD2>pg_last_notice</KEYWORD2>\r
+ <KEYWORD2>pg_last_oid</KEYWORD2>\r
+ <KEYWORD2>pg_lo_close</KEYWORD2>\r
+ <KEYWORD2>pg_lo_create</KEYWORD2>\r
+ <KEYWORD2>pg_lo_export</KEYWORD2>\r
+ <KEYWORD2>pg_lo_import</KEYWORD2>\r
+ <KEYWORD2>pg_lo_open</KEYWORD2>\r
+ <KEYWORD2>pg_lo_read</KEYWORD2>\r
+ <KEYWORD2>pg_lo_read_all</KEYWORD2>\r
+ <KEYWORD2>pg_lo_seek</KEYWORD2>\r
+ <KEYWORD2>pg_lo_tell</KEYWORD2>\r
+ <KEYWORD2>pg_lo_unlink</KEYWORD2>\r
+ <KEYWORD2>pg_lo_write</KEYWORD2>\r
+ <KEYWORD2>pg_meta_data</KEYWORD2>\r
+ <KEYWORD2>pg_num_fields</KEYWORD2>\r
+ <KEYWORD2>pg_num_rows</KEYWORD2>\r
+ <KEYWORD2>pg_options</KEYWORD2>\r
+ <KEYWORD2>pg_parameter_status</KEYWORD2>\r
+ <KEYWORD2>pg_pconnect</KEYWORD2>\r
+ <KEYWORD2>pg_ping</KEYWORD2>\r
+ <KEYWORD2>pg_port</KEYWORD2>\r
+ <KEYWORD2>pg_put_line</KEYWORD2>\r
+ <KEYWORD2>pg_query</KEYWORD2>\r
+ <KEYWORD2>pg_result_error</KEYWORD2>\r
+ <KEYWORD2>pg_result_seek</KEYWORD2>\r
+ <KEYWORD2>pg_result_status</KEYWORD2>\r
+ <KEYWORD2>pg_select</KEYWORD2>\r
+ <KEYWORD2>pg_send_query</KEYWORD2>\r
+ <KEYWORD2>pg_set_client_encoding</KEYWORD2>\r
+ <KEYWORD2>pg_trace</KEYWORD2>\r
+ <KEYWORD2>pg_tty</KEYWORD2>\r
+ <KEYWORD2>pg_unescape_bytea</KEYWORD2>\r
+ <KEYWORD2>pg_untrace</KEYWORD2>\r
+ <KEYWORD2>pg_update</KEYWORD2>\r
+ <KEYWORD2>pg_version</KEYWORD2>\r
+ <KEYWORD2>php_check_syntax</KEYWORD2>\r
+ <KEYWORD2>php_ini_scanned_files</KEYWORD2>\r
+ <KEYWORD2>php_logo_guid</KEYWORD2>\r
+ <KEYWORD2>php_sapi_name</KEYWORD2>\r
+ <KEYWORD2>php_strip_whitespace</KEYWORD2>\r
+ <KEYWORD2>php_uname</KEYWORD2>\r
+ <KEYWORD2>phpcredits</KEYWORD2>\r
+ <KEYWORD2>phpinfo</KEYWORD2>\r
+ <KEYWORD2>phpversion</KEYWORD2>\r
+ <KEYWORD2>pi</KEYWORD2>\r
+ <KEYWORD2>png2wbmp</KEYWORD2>\r
+ <KEYWORD2>popen</KEYWORD2>\r
+ <KEYWORD2>pos</KEYWORD2>\r
+ <KEYWORD2>posix_ctermid</KEYWORD2>\r
+ <KEYWORD2>posix_get_last_error</KEYWORD2>\r
+ <KEYWORD2>posix_getcwd</KEYWORD2>\r
+ <KEYWORD2>posix_getegid</KEYWORD2>\r
+ <KEYWORD2>posix_geteuid</KEYWORD2>\r
+ <KEYWORD2>posix_getgid</KEYWORD2>\r
+ <KEYWORD2>posix_getgrgid</KEYWORD2>\r
+ <KEYWORD2>posix_getgrnam</KEYWORD2>\r
+ <KEYWORD2>posix_getgroups</KEYWORD2>\r
+ <KEYWORD2>posix_getlogin</KEYWORD2>\r
+ <KEYWORD2>posix_getpgid</KEYWORD2>\r
+ <KEYWORD2>posix_getpgrp</KEYWORD2>\r
+ <KEYWORD2>posix_getpid</KEYWORD2>\r
+ <KEYWORD2>posix_getppid</KEYWORD2>\r
+ <KEYWORD2>posix_getpwnam</KEYWORD2>\r
+ <KEYWORD2>posix_getpwuid</KEYWORD2>\r
+ <KEYWORD2>posix_getrlimit</KEYWORD2>\r
+ <KEYWORD2>posix_getsid</KEYWORD2>\r
+ <KEYWORD2>posix_getuid</KEYWORD2>\r
+ <KEYWORD2>posix_isatty</KEYWORD2>\r
+ <KEYWORD2>posix_kill</KEYWORD2>\r
+ <KEYWORD2>posix_mkfifo</KEYWORD2>\r
+ <KEYWORD2>posix_setegid</KEYWORD2>\r
+ <KEYWORD2>posix_seteuid</KEYWORD2>\r
+ <KEYWORD2>posix_setgid</KEYWORD2>\r
+ <KEYWORD2>posix_setpgid</KEYWORD2>\r
+ <KEYWORD2>posix_setsid</KEYWORD2>\r
+ <KEYWORD2>posix_setuid</KEYWORD2>\r
+ <KEYWORD2>posix_strerror</KEYWORD2>\r
+ <KEYWORD2>posix_times</KEYWORD2>\r
+ <KEYWORD2>posix_ttyname</KEYWORD2>\r
+ <KEYWORD2>posix_uname</KEYWORD2>\r
+ <KEYWORD2>pow</KEYWORD2>\r
+ <KEYWORD2>prefix</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>preg_grep</KEYWORD2>\r
+ <KEYWORD2>preg_match</KEYWORD2>\r
+ <KEYWORD2>preg_match_all</KEYWORD2>\r
+ <KEYWORD2>preg_quote</KEYWORD2>\r
+ <KEYWORD2>preg_replace</KEYWORD2>\r
+ <KEYWORD2>preg_replace_callback</KEYWORD2>\r
+ <KEYWORD2>preg_split</KEYWORD2>\r
+ <KEYWORD2>prepare</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>prev</KEYWORD2> <!-- tidy_node -->\r
+ <KEYWORD2>previous_sibling</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>print_r</KEYWORD2>\r
+ <KEYWORD2>printer_abort</KEYWORD2>\r
+ <KEYWORD2>printer_close</KEYWORD2>\r
+ <KEYWORD2>printer_create_brush</KEYWORD2>\r
+ <KEYWORD2>printer_create_dc</KEYWORD2>\r
+ <KEYWORD2>printer_create_font</KEYWORD2>\r
+ <KEYWORD2>printer_create_pen</KEYWORD2>\r
+ <KEYWORD2>printer_delete_brush</KEYWORD2>\r
+ <KEYWORD2>printer_delete_dc</KEYWORD2>\r
+ <KEYWORD2>printer_delete_font</KEYWORD2>\r
+ <KEYWORD2>printer_delete_pen</KEYWORD2>\r
+ <KEYWORD2>printer_draw_bmp</KEYWORD2>\r
+ <KEYWORD2>printer_draw_chord</KEYWORD2>\r
+ <KEYWORD2>printer_draw_elipse</KEYWORD2>\r
+ <KEYWORD2>printer_draw_line</KEYWORD2>\r
+ <KEYWORD2>printer_draw_pie</KEYWORD2>\r
+ <KEYWORD2>printer_draw_rectangle</KEYWORD2>\r
+ <KEYWORD2>printer_draw_roundrect</KEYWORD2>\r
+ <KEYWORD2>printer_draw_text</KEYWORD2>\r
+ <KEYWORD2>printer_end_doc</KEYWORD2>\r
+ <KEYWORD2>printer_end_page</KEYWORD2>\r
+ <KEYWORD2>printer_get_option</KEYWORD2>\r
+ <KEYWORD2>printer_list</KEYWORD2>\r
+ <KEYWORD2>printer_logical_fontheight</KEYWORD2>\r
+ <KEYWORD2>printer_open</KEYWORD2>\r
+ <KEYWORD2>printer_select_brush</KEYWORD2>\r
+ <KEYWORD2>printer_select_font</KEYWORD2>\r
+ <KEYWORD2>printer_select_pen</KEYWORD2>\r
+ <KEYWORD2>printer_set_option</KEYWORD2>\r
+ <KEYWORD2>printer_start_doc</KEYWORD2>\r
+ <KEYWORD2>printer_start_page</KEYWORD2>\r
+ <KEYWORD2>printer_write</KEYWORD2>\r
+ <KEYWORD2>printf</KEYWORD2>\r
+ <KEYWORD2>proc_close</KEYWORD2>\r
+ <KEYWORD2>proc_get_status</KEYWORD2>\r
+ <KEYWORD2>proc_nice</KEYWORD2>\r
+ <KEYWORD2>proc_open</KEYWORD2>\r
+ <KEYWORD2>proc_terminate</KEYWORD2>\r
+ <KEYWORD2>process</KEYWORD2> <!-- domxsltstylesheet -->\r
+ <KEYWORD2>pspell_add_to_personal</KEYWORD2>\r
+ <KEYWORD2>pspell_add_to_session</KEYWORD2>\r
+ <KEYWORD2>pspell_check</KEYWORD2>\r
+ <KEYWORD2>pspell_clear_session</KEYWORD2>\r
+ <KEYWORD2>pspell_config_create</KEYWORD2>\r
+ <KEYWORD2>pspell_config_data_dir</KEYWORD2>\r
+ <KEYWORD2>pspell_config_dict_dir</KEYWORD2>\r
+ <KEYWORD2>pspell_config_ignore</KEYWORD2>\r
+ <KEYWORD2>pspell_config_mode</KEYWORD2>\r
+ <KEYWORD2>pspell_config_personal</KEYWORD2>\r
+ <KEYWORD2>pspell_config_repl</KEYWORD2>\r
+ <KEYWORD2>pspell_config_runtogether</KEYWORD2>\r
+ <KEYWORD2>pspell_config_save_repl</KEYWORD2>\r
+ <KEYWORD2>pspell_new</KEYWORD2>\r
+ <KEYWORD2>pspell_new_config</KEYWORD2>\r
+ <KEYWORD2>pspell_new_personal</KEYWORD2>\r
+ <KEYWORD2>pspell_save_wordlist</KEYWORD2>\r
+ <KEYWORD2>pspell_store_replacement</KEYWORD2>\r
+ <KEYWORD2>pspell_suggest</KEYWORD2>\r
+ <KEYWORD2>public_id</KEYWORD2> <!-- domdocumenttype -->\r
+ <KEYWORD2>putenv</KEYWORD2>\r
+ <KEYWORD2>qdom_error</KEYWORD2>\r
+ <KEYWORD2>qdom_tree</KEYWORD2>\r
+ <KEYWORD2>query</KEYWORD2> <!-- domxpath -->\r
+ <KEYWORD2>quoted_printable_decode</KEYWORD2>\r
+ <KEYWORD2>quotemeta</KEYWORD2>\r
+ <KEYWORD2>rad2deg</KEYWORD2>\r
+ <KEYWORD2>rand</KEYWORD2>\r
+ <KEYWORD2>range</KEYWORD2>\r
+ <KEYWORD2>rar_close</KEYWORD2>\r
+ <KEYWORD2>rar_entry_get</KEYWORD2>\r
+ <KEYWORD2>rar_list</KEYWORD2>\r
+ <KEYWORD2>rar_open</KEYWORD2>\r
+ <KEYWORD2>rawurldecode</KEYWORD2>\r
+ <KEYWORD2>rawurlencode</KEYWORD2>\r
+ <KEYWORD2>read</KEYWORD2> <!-- hw_api_content, lob -->\r
+ <KEYWORD2>read_exif_data</KEYWORD2>\r
+ <KEYWORD2>readdir</KEYWORD2>\r
+ <KEYWORD2>readfile</KEYWORD2>\r
+ <KEYWORD2>readgzfile</KEYWORD2>\r
+ <KEYWORD2>readline</KEYWORD2>\r
+ <KEYWORD2>readline_add_history</KEYWORD2>\r
+ <KEYWORD2>readline_callback_handler_install</KEYWORD2>\r
+ <KEYWORD2>readline_callback_handler_remove</KEYWORD2>\r
+ <KEYWORD2>readline_callback_read_char</KEYWORD2>\r
+ <KEYWORD2>readline_clear_history</KEYWORD2>\r
+ <KEYWORD2>readline_completion_function</KEYWORD2>\r
+ <KEYWORD2>readline_info</KEYWORD2>\r
+ <KEYWORD2>readline_list_history</KEYWORD2>\r
+ <KEYWORD2>readline_on_new_line</KEYWORD2>\r
+ <KEYWORD2>readline_read_history</KEYWORD2>\r
+ <KEYWORD2>readline_redisplay</KEYWORD2>\r
+ <KEYWORD2>readline_write_history</KEYWORD2>\r
+ <KEYWORD2>readlink</KEYWORD2>\r
+ <KEYWORD2>realpath</KEYWORD2>\r
+ <KEYWORD2>reason</KEYWORD2> <!-- hw_api_error -->\r
+ <KEYWORD2>recode</KEYWORD2>\r
+ <KEYWORD2>recode_file</KEYWORD2>\r
+ <KEYWORD2>recode_string</KEYWORD2>\r
+ <KEYWORD2>register_shutdown_function</KEYWORD2>\r
+ <KEYWORD2>register_tick_function</KEYWORD2>\r
+ <KEYWORD2>registernamespace</KEYWORD2> <!-- domxpath -->\r
+ <KEYWORD2>relaxngvalidate</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>relaxngvalidatesource</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>remove</KEYWORD2> <!-- hw_api, hw_api_object, swfdisplayitem, swfmovie, swfsprite -->\r
+ <KEYWORD2>remove_attribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>remove_child</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>removeattribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>removeattributenode</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>removeattributens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>removechild</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>rename</KEYWORD2>\r
+ <KEYWORD2>rename_function</KEYWORD2>\r
+ <KEYWORD2>replace</KEYWORD2> <!-- hw_api, memcache -->\r
+ <KEYWORD2>replace_child</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>replace_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>replacechild</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>replacedata</KEYWORD2> <!-- domcharacterdata -->\r
+ <KEYWORD2>reset</KEYWORD2>\r
+ <KEYWORD2>restore_error_handler</KEYWORD2>\r
+ <KEYWORD2>restore_exception_handler</KEYWORD2>\r
+ <KEYWORD2>restore_include_path</KEYWORD2>\r
+ <KEYWORD2>result_dump_file</KEYWORD2> <!-- domxsltstylesheet -->\r
+ <KEYWORD2>result_dump_mem</KEYWORD2> <!-- domxsltstylesheet -->\r
+ <KEYWORD2>rewind</KEYWORD2> <!-- arrayiterator, cachingiterator, directoryiterator, filteriterator, limititerator, lob, parentiterator, recursivedirectoryiterator, recursiveiteratoriterator, simplexmliterator -->\r
+ <KEYWORD2>rewinddir</KEYWORD2>\r
+ <KEYWORD2>rmdir</KEYWORD2>\r
+ <KEYWORD2>rollback</KEYWORD2> <!-- pdo -->\r
+ <KEYWORD2>rotate</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>rotateto</KEYWORD2> <!-- swfdisplayitem, swffill -->\r
+ <KEYWORD2>round</KEYWORD2>\r
+ <KEYWORD2>rowcount</KEYWORD2> <!-- pdostatement -->\r
+ <KEYWORD2>rsort</KEYWORD2>\r
+ <KEYWORD2>rtrim</KEYWORD2>\r
+ <KEYWORD2>save</KEYWORD2> <!-- domdocument, lob, swfmovie -->\r
+ <KEYWORD2>savehtml</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>savehtmlfile</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>savexml</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>scale</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>scaleto</KEYWORD2> <!-- swfdisplayitem, swffill -->\r
+ <KEYWORD2>scandir</KEYWORD2>\r
+ <KEYWORD2>schemavalidate</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>schemavalidatesource</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>seek</KEYWORD2> <!-- arrayiterator, limititerator, lob -->\r
+ <KEYWORD2>sem_acquire</KEYWORD2>\r
+ <KEYWORD2>sem_get</KEYWORD2>\r
+ <KEYWORD2>sem_release</KEYWORD2>\r
+ <KEYWORD2>sem_remove</KEYWORD2>\r
+ <KEYWORD2>serialize</KEYWORD2>\r
+ <KEYWORD2>sesam_affected_rows</KEYWORD2>\r
+ <KEYWORD2>sesam_commit</KEYWORD2>\r
+ <KEYWORD2>sesam_connect</KEYWORD2>\r
+ <KEYWORD2>sesam_diagnostic</KEYWORD2>\r
+ <KEYWORD2>sesam_disconnect</KEYWORD2>\r
+ <KEYWORD2>sesam_errormsg</KEYWORD2>\r
+ <KEYWORD2>sesam_execimm</KEYWORD2>\r
+ <KEYWORD2>sesam_fetch_array</KEYWORD2>\r
+ <KEYWORD2>sesam_fetch_result</KEYWORD2>\r
+ <KEYWORD2>sesam_fetch_row</KEYWORD2>\r
+ <KEYWORD2>sesam_field_array</KEYWORD2>\r
+ <KEYWORD2>sesam_field_name</KEYWORD2>\r
+ <KEYWORD2>sesam_free_result</KEYWORD2>\r
+ <KEYWORD2>sesam_num_fields</KEYWORD2>\r
+ <KEYWORD2>sesam_query</KEYWORD2>\r
+ <KEYWORD2>sesam_rollback</KEYWORD2>\r
+ <KEYWORD2>sesam_seek_row</KEYWORD2>\r
+ <KEYWORD2>sesam_settransaction</KEYWORD2>\r
+ <KEYWORD2>session_cache_expire</KEYWORD2>\r
+ <KEYWORD2>session_cache_limiter</KEYWORD2>\r
+ <KEYWORD2>session_commit</KEYWORD2>\r
+ <KEYWORD2>session_decode</KEYWORD2>\r
+ <KEYWORD2>session_destroy</KEYWORD2>\r
+ <KEYWORD2>session_encode</KEYWORD2>\r
+ <KEYWORD2>session_get_cookie_params</KEYWORD2>\r
+ <KEYWORD2>session_id</KEYWORD2>\r
+ <KEYWORD2>session_is_registered</KEYWORD2>\r
+ <KEYWORD2>session_module_name</KEYWORD2>\r
+ <KEYWORD2>session_name</KEYWORD2>\r
+ <KEYWORD2>session_regenerate_id</KEYWORD2>\r
+ <KEYWORD2>session_register</KEYWORD2>\r
+ <KEYWORD2>session_save_path</KEYWORD2>\r
+ <KEYWORD2>session_set_cookie_params</KEYWORD2>\r
+ <KEYWORD2>session_set_save_handler</KEYWORD2>\r
+ <KEYWORD2>session_start</KEYWORD2>\r
+ <KEYWORD2>session_unregister</KEYWORD2>\r
+ <KEYWORD2>session_unset</KEYWORD2>\r
+ <KEYWORD2>session_write_close</KEYWORD2>\r
+ <KEYWORD2>set</KEYWORD2> <!-- memcache -->\r
+ <KEYWORD2>set_attribute</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>set_content</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>set_error_handler</KEYWORD2>\r
+ <KEYWORD2>set_exception_handler</KEYWORD2>\r
+ <KEYWORD2>set_file_buffer</KEYWORD2>\r
+ <KEYWORD2>set_include_path</KEYWORD2>\r
+ <KEYWORD2>set_magic_quotes_runtime</KEYWORD2>\r
+ <KEYWORD2>set_name</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>set_namespace</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>set_time_limit</KEYWORD2>\r
+ <KEYWORD2>setaction</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>setattribute</KEYWORD2> <!-- domelement, pdo -->\r
+ <KEYWORD2>setattributenode</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>setattributenodens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>setattributens</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>setbackground</KEYWORD2> <!-- swfmovie -->\r
+ <KEYWORD2>setbounds</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setbuffering</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>setclass</KEYWORD2> <!-- soapserver -->\r
+ <KEYWORD2>setcolor</KEYWORD2> <!-- swftext, swftextfield -->\r
+ <KEYWORD2>setcommitedversion</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>setcookie</KEYWORD2>\r
+ <KEYWORD2>setdepth</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>setdimension</KEYWORD2> <!-- swfmovie -->\r
+ <KEYWORD2>setdown</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>setfont</KEYWORD2> <!-- swftext, swftextfield -->\r
+ <KEYWORD2>setframes</KEYWORD2> <!-- swfmovie, swfsprite -->\r
+ <KEYWORD2>setheight</KEYWORD2> <!-- swftext, swftextfield -->\r
+ <KEYWORD2>sethit</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>setindentation</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setleftfill</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>setleftmargin</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setline</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>setlinespacing</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setlocale</KEYWORD2>\r
+ <KEYWORD2>setmargins</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setname</KEYWORD2> <!-- swfdisplayitem, swftextfield -->\r
+ <KEYWORD2>setover</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>setpersistence</KEYWORD2> <!-- soapserver -->\r
+ <KEYWORD2>setrate</KEYWORD2> <!-- swfmovie -->\r
+ <KEYWORD2>setratio</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>setrawcookie</KEYWORD2>\r
+ <KEYWORD2>setrightfill</KEYWORD2> <!-- swfshape -->\r
+ <KEYWORD2>setrightmargin</KEYWORD2> <!-- swftextfield -->\r
+ <KEYWORD2>setspacing</KEYWORD2> <!-- swftext -->\r
+ <KEYWORD2>settype</KEYWORD2>\r
+ <KEYWORD2>setup</KEYWORD2> <!-- swfbutton -->\r
+ <KEYWORD2>sha1</KEYWORD2>\r
+ <KEYWORD2>sha1_file</KEYWORD2>\r
+ <KEYWORD2>shell_exec</KEYWORD2>\r
+ <KEYWORD2>shm_attach</KEYWORD2>\r
+ <KEYWORD2>shm_detach</KEYWORD2>\r
+ <KEYWORD2>shm_get_var</KEYWORD2>\r
+ <KEYWORD2>shm_put_var</KEYWORD2>\r
+ <KEYWORD2>shm_remove</KEYWORD2>\r
+ <KEYWORD2>shm_remove_var</KEYWORD2>\r
+ <KEYWORD2>shmop_close</KEYWORD2>\r
+ <KEYWORD2>shmop_delete</KEYWORD2>\r
+ <KEYWORD2>shmop_open</KEYWORD2>\r
+ <KEYWORD2>shmop_read</KEYWORD2>\r
+ <KEYWORD2>shmop_size</KEYWORD2>\r
+ <KEYWORD2>shmop_write</KEYWORD2>\r
+ <KEYWORD2>show_source</KEYWORD2>\r
+ <KEYWORD2>shuffle</KEYWORD2>\r
+ <KEYWORD2>similar_text</KEYWORD2>\r
+ <KEYWORD2>simplexml_import_dom</KEYWORD2>\r
+ <KEYWORD2>simplexml_load_file</KEYWORD2>\r
+ <KEYWORD2>simplexml_load_string</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>sinh</KEYWORD2>\r
+ <KEYWORD2>size</KEYWORD2> <!-- collection, lob -->\r
+ <KEYWORD2>sizeof</KEYWORD2>\r
+ <KEYWORD2>skewx</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>skewxto</KEYWORD2> <!-- swfdisplayitem, swffill -->\r
+ <KEYWORD2>skewy</KEYWORD2> <!-- swfdisplayitem -->\r
+ <KEYWORD2>skewyto</KEYWORD2> <!-- swfdisplayitem, swffill -->\r
+ <KEYWORD2>sleep</KEYWORD2>\r
+ <KEYWORD2>snmp_get_quick_print</KEYWORD2>\r
+ <KEYWORD2>snmp_get_valueretrieval</KEYWORD2>\r
+ <KEYWORD2>snmp_read_mib</KEYWORD2>\r
+ <KEYWORD2>snmp_set_enum_print</KEYWORD2>\r
+ <KEYWORD2>snmp_set_oid_numeric_print</KEYWORD2>\r
+ <KEYWORD2>snmp_set_quick_print</KEYWORD2>\r
+ <KEYWORD2>snmp_set_valueretrieval</KEYWORD2>\r
+ <KEYWORD2>snmpget</KEYWORD2>\r
+ <KEYWORD2>snmpgetnext</KEYWORD2>\r
+ <KEYWORD2>snmprealwalk</KEYWORD2>\r
+ <KEYWORD2>snmpset</KEYWORD2>\r
+ <KEYWORD2>snmpwalk</KEYWORD2>\r
+ <KEYWORD2>snmpwalkoid</KEYWORD2>\r
+ <KEYWORD2>socket_accept</KEYWORD2>\r
+ <KEYWORD2>socket_bind</KEYWORD2>\r
+ <KEYWORD2>socket_clear_error</KEYWORD2>\r
+ <KEYWORD2>socket_close</KEYWORD2>\r
+ <KEYWORD2>socket_connect</KEYWORD2>\r
+ <KEYWORD2>socket_create</KEYWORD2>\r
+ <KEYWORD2>socket_create_listen</KEYWORD2>\r
+ <KEYWORD2>socket_create_pair</KEYWORD2>\r
+ <KEYWORD2>socket_get_option</KEYWORD2>\r
+ <KEYWORD2>socket_get_status</KEYWORD2>\r
+ <KEYWORD2>socket_getpeername</KEYWORD2>\r
+ <KEYWORD2>socket_getsockname</KEYWORD2>\r
+ <KEYWORD2>socket_last_error</KEYWORD2>\r
+ <KEYWORD2>socket_listen</KEYWORD2>\r
+ <KEYWORD2>socket_read</KEYWORD2>\r
+ <KEYWORD2>socket_recv</KEYWORD2>\r
+ <KEYWORD2>socket_recvfrom</KEYWORD2>\r
+ <KEYWORD2>socket_select</KEYWORD2>\r
+ <KEYWORD2>socket_send</KEYWORD2>\r
+ <KEYWORD2>socket_sendto</KEYWORD2>\r
+ <KEYWORD2>socket_set_block</KEYWORD2>\r
+ <KEYWORD2>socket_set_blocking</KEYWORD2>\r
+ <KEYWORD2>socket_set_nonblock</KEYWORD2>\r
+ <KEYWORD2>socket_set_option</KEYWORD2>\r
+ <KEYWORD2>socket_set_timeout</KEYWORD2>\r
+ <KEYWORD2>socket_shutdown</KEYWORD2>\r
+ <KEYWORD2>socket_strerror</KEYWORD2>\r
+ <KEYWORD2>socket_write</KEYWORD2>\r
+ <KEYWORD2>sort</KEYWORD2>\r
+ <KEYWORD2>soundex</KEYWORD2>\r
+ <KEYWORD2>specified</KEYWORD2> <!-- domattribute -->\r
+ <KEYWORD2>spl_classes</KEYWORD2>\r
+ <KEYWORD2>split</KEYWORD2>\r
+ <KEYWORD2>spliti</KEYWORD2>\r
+ <KEYWORD2>splittext</KEYWORD2> <!-- domtext -->\r
+ <KEYWORD2>sprintf</KEYWORD2>\r
+ <KEYWORD2>sql_regcase</KEYWORD2>\r
+ <KEYWORD2>sqlite_array_query</KEYWORD2>\r
+ <KEYWORD2>sqlite_busy_timeout</KEYWORD2>\r
+ <KEYWORD2>sqlite_changes</KEYWORD2>\r
+ <KEYWORD2>sqlite_close</KEYWORD2>\r
+ <KEYWORD2>sqlite_column</KEYWORD2>\r
+ <KEYWORD2>sqlite_create_aggregate</KEYWORD2>\r
+ <KEYWORD2>sqlite_create_function</KEYWORD2>\r
+ <KEYWORD2>sqlite_current</KEYWORD2>\r
+ <KEYWORD2>sqlite_error_string</KEYWORD2>\r
+ <KEYWORD2>sqlite_escape_string</KEYWORD2>\r
+ <KEYWORD2>sqlite_exec</KEYWORD2>\r
+ <KEYWORD2>sqlite_factory</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_all</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_array</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_column_types</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_object</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_single</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_string</KEYWORD2>\r
+ <KEYWORD2>sqlite_field_name</KEYWORD2>\r
+ <KEYWORD2>sqlite_has_more</KEYWORD2>\r
+ <KEYWORD2>sqlite_has_prev</KEYWORD2>\r
+ <KEYWORD2>sqlite_last_error</KEYWORD2>\r
+ <KEYWORD2>sqlite_last_insert_rowid</KEYWORD2>\r
+ <KEYWORD2>sqlite_libencoding</KEYWORD2>\r
+ <KEYWORD2>sqlite_libversion</KEYWORD2>\r
+ <KEYWORD2>sqlite_next</KEYWORD2>\r
+ <KEYWORD2>sqlite_num_fields</KEYWORD2>\r
+ <KEYWORD2>sqlite_num_rows</KEYWORD2>\r
+ <KEYWORD2>sqlite_open</KEYWORD2>\r
+ <KEYWORD2>sqlite_popen</KEYWORD2>\r
+ <KEYWORD2>sqlite_prev</KEYWORD2>\r
+ <KEYWORD2>sqlite_query</KEYWORD2>\r
+ <KEYWORD2>sqlite_rewind</KEYWORD2>\r
+ <KEYWORD2>sqlite_seek</KEYWORD2>\r
+ <KEYWORD2>sqlite_single_query</KEYWORD2>\r
+ <KEYWORD2>sqlite_udf_decode_binary</KEYWORD2>\r
+ <KEYWORD2>sqlite_udf_encode_binary</KEYWORD2>\r
+ <KEYWORD2>sqlite_unbuffered_query</KEYWORD2>\r
+ <KEYWORD2>sqrt</KEYWORD2>\r
+ <KEYWORD2>srand</KEYWORD2>\r
+ <KEYWORD2>srcanchors</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>srcsofdst</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>sscanf</KEYWORD2>\r
+ <KEYWORD2>stat</KEYWORD2>\r
+ <KEYWORD2>str_ireplace</KEYWORD2>\r
+ <KEYWORD2>str_pad</KEYWORD2>\r
+ <KEYWORD2>str_repeat</KEYWORD2>\r
+ <KEYWORD2>str_replace</KEYWORD2>\r
+ <KEYWORD2>str_rot13</KEYWORD2>\r
+ <KEYWORD2>str_shuffle</KEYWORD2>\r
+ <KEYWORD2>str_split</KEYWORD2>\r
+ <KEYWORD2>str_word_count</KEYWORD2>\r
+ <KEYWORD2>strcasecmp</KEYWORD2>\r
+ <KEYWORD2>strchr</KEYWORD2>\r
+ <KEYWORD2>strcmp</KEYWORD2>\r
+ <KEYWORD2>strcoll</KEYWORD2>\r
+ <KEYWORD2>strcspn</KEYWORD2>\r
+ <KEYWORD2>stream_context_create</KEYWORD2>\r
+ <KEYWORD2>stream_context_get_default</KEYWORD2>\r
+ <KEYWORD2>stream_context_get_options</KEYWORD2>\r
+ <KEYWORD2>stream_context_set_option</KEYWORD2>\r
+ <KEYWORD2>stream_context_set_params</KEYWORD2>\r
+ <KEYWORD2>stream_copy_to_stream</KEYWORD2>\r
+ <KEYWORD2>stream_filter_append</KEYWORD2>\r
+ <KEYWORD2>stream_filter_prepend</KEYWORD2>\r
+ <KEYWORD2>stream_filter_register</KEYWORD2>\r
+ <KEYWORD2>stream_filter_remove</KEYWORD2>\r
+ <KEYWORD2>stream_get_contents</KEYWORD2>\r
+ <KEYWORD2>stream_get_filters</KEYWORD2>\r
+ <KEYWORD2>stream_get_line</KEYWORD2>\r
+ <KEYWORD2>stream_get_meta_data</KEYWORD2>\r
+ <KEYWORD2>stream_get_transports</KEYWORD2>\r
+ <KEYWORD2>stream_get_wrappers</KEYWORD2>\r
+ <KEYWORD2>stream_register_wrapper</KEYWORD2>\r
+ <KEYWORD2>stream_select</KEYWORD2>\r
+ <KEYWORD2>stream_set_blocking</KEYWORD2>\r
+ <KEYWORD2>stream_set_timeout</KEYWORD2>\r
+ <KEYWORD2>stream_set_write_buffer</KEYWORD2>\r
+ <KEYWORD2>stream_socket_accept</KEYWORD2>\r
+ <KEYWORD2>stream_socket_client</KEYWORD2>\r
+ <KEYWORD2>stream_socket_enable_crypto</KEYWORD2>\r
+ <KEYWORD2>stream_socket_get_name</KEYWORD2>\r
+ <KEYWORD2>stream_socket_recvfrom</KEYWORD2>\r
+ <KEYWORD2>stream_socket_sendto</KEYWORD2>\r
+ <KEYWORD2>stream_socket_server</KEYWORD2>\r
+ <KEYWORD2>stream_wrapper_register</KEYWORD2>\r
+ <KEYWORD2>stream_wrapper_restore</KEYWORD2>\r
+ <KEYWORD2>stream_wrapper_unregister</KEYWORD2>\r
+ <KEYWORD2>streammp3</KEYWORD2> <!-- swfmovie -->\r
+ <KEYWORD2>strftime</KEYWORD2>\r
+ <KEYWORD2>strip_tags</KEYWORD2>\r
+ <KEYWORD2>stripcslashes</KEYWORD2>\r
+ <KEYWORD2>stripos</KEYWORD2>\r
+ <KEYWORD2>stripslashes</KEYWORD2>\r
+ <KEYWORD2>stristr</KEYWORD2>\r
+ <KEYWORD2>strlen</KEYWORD2>\r
+ <KEYWORD2>strnatcasecmp</KEYWORD2>\r
+ <KEYWORD2>strnatcmp</KEYWORD2>\r
+ <KEYWORD2>strncasecmp</KEYWORD2>\r
+ <KEYWORD2>strncmp</KEYWORD2>\r
+ <KEYWORD2>strpbrk</KEYWORD2>\r
+ <KEYWORD2>strpos</KEYWORD2>\r
+ <KEYWORD2>strptime</KEYWORD2>\r
+ <KEYWORD2>strrchr</KEYWORD2>\r
+ <KEYWORD2>strrev</KEYWORD2>\r
+ <KEYWORD2>strripos</KEYWORD2>\r
+ <KEYWORD2>strrpos</KEYWORD2>\r
+ <KEYWORD2>strspn</KEYWORD2>\r
+ <KEYWORD2>strstr</KEYWORD2>\r
+ <KEYWORD2>strtok</KEYWORD2>\r
+ <KEYWORD2>strtolower</KEYWORD2>\r
+ <KEYWORD2>strtotime</KEYWORD2>\r
+ <KEYWORD2>strtoupper</KEYWORD2>\r
+ <KEYWORD2>strtr</KEYWORD2>\r
+ <KEYWORD2>strval</KEYWORD2>\r
+ <KEYWORD2>substr</KEYWORD2>\r
+ <KEYWORD2>substr_compare</KEYWORD2>\r
+ <KEYWORD2>substr_count</KEYWORD2>\r
+ <KEYWORD2>substr_replace</KEYWORD2>\r
+ <KEYWORD2>substringdata</KEYWORD2> <!-- domcharacterdata -->\r
+ <KEYWORD2>swf_actiongeturl</KEYWORD2>\r
+ <KEYWORD2>swf_actiongotoframe</KEYWORD2>\r
+ <KEYWORD2>swf_actiongotolabel</KEYWORD2>\r
+ <KEYWORD2>swf_actionnextframe</KEYWORD2>\r
+ <KEYWORD2>swf_actionplay</KEYWORD2>\r
+ <KEYWORD2>swf_actionprevframe</KEYWORD2>\r
+ <KEYWORD2>swf_actionsettarget</KEYWORD2>\r
+ <KEYWORD2>swf_actionstop</KEYWORD2>\r
+ <KEYWORD2>swf_actiontogglequality</KEYWORD2>\r
+ <KEYWORD2>swf_actionwaitforframe</KEYWORD2>\r
+ <KEYWORD2>swf_addbuttonrecord</KEYWORD2>\r
+ <KEYWORD2>swf_addcolor</KEYWORD2>\r
+ <KEYWORD2>swf_closefile</KEYWORD2>\r
+ <KEYWORD2>swf_definebitmap</KEYWORD2>\r
+ <KEYWORD2>swf_definefont</KEYWORD2>\r
+ <KEYWORD2>swf_defineline</KEYWORD2>\r
+ <KEYWORD2>swf_definepoly</KEYWORD2>\r
+ <KEYWORD2>swf_definerect</KEYWORD2>\r
+ <KEYWORD2>swf_definetext</KEYWORD2>\r
+ <KEYWORD2>swf_endbutton</KEYWORD2>\r
+ <KEYWORD2>swf_enddoaction</KEYWORD2>\r
+ <KEYWORD2>swf_endshape</KEYWORD2>\r
+ <KEYWORD2>swf_endsymbol</KEYWORD2>\r
+ <KEYWORD2>swf_fontsize</KEYWORD2>\r
+ <KEYWORD2>swf_fontslant</KEYWORD2>\r
+ <KEYWORD2>swf_fonttracking</KEYWORD2>\r
+ <KEYWORD2>swf_getbitmapinfo</KEYWORD2>\r
+ <KEYWORD2>swf_getfontinfo</KEYWORD2>\r
+ <KEYWORD2>swf_getframe</KEYWORD2>\r
+ <KEYWORD2>swf_labelframe</KEYWORD2>\r
+ <KEYWORD2>swf_lookat</KEYWORD2>\r
+ <KEYWORD2>swf_modifyobject</KEYWORD2>\r
+ <KEYWORD2>swf_mulcolor</KEYWORD2>\r
+ <KEYWORD2>swf_nextid</KEYWORD2>\r
+ <KEYWORD2>swf_oncondition</KEYWORD2>\r
+ <KEYWORD2>swf_openfile</KEYWORD2>\r
+ <KEYWORD2>swf_ortho</KEYWORD2>\r
+ <KEYWORD2>swf_ortho2</KEYWORD2>\r
+ <KEYWORD2>swf_perspective</KEYWORD2>\r
+ <KEYWORD2>swf_placeobject</KEYWORD2>\r
+ <KEYWORD2>swf_polarview</KEYWORD2>\r
+ <KEYWORD2>swf_popmatrix</KEYWORD2>\r
+ <KEYWORD2>swf_posround</KEYWORD2>\r
+ <KEYWORD2>swf_pushmatrix</KEYWORD2>\r
+ <KEYWORD2>swf_removeobject</KEYWORD2>\r
+ <KEYWORD2>swf_rotate</KEYWORD2>\r
+ <KEYWORD2>swf_scale</KEYWORD2>\r
+ <KEYWORD2>swf_setfont</KEYWORD2>\r
+ <KEYWORD2>swf_setframe</KEYWORD2>\r
+ <KEYWORD2>swf_shapearc</KEYWORD2>\r
+ <KEYWORD2>swf_shapecurveto</KEYWORD2>\r
+ <KEYWORD2>swf_shapecurveto3</KEYWORD2>\r
+ <KEYWORD2>swf_shapefillbitmapclip</KEYWORD2>\r
+ <KEYWORD2>swf_shapefillbitmaptile</KEYWORD2>\r
+ <KEYWORD2>swf_shapefilloff</KEYWORD2>\r
+ <KEYWORD2>swf_shapefillsolid</KEYWORD2>\r
+ <KEYWORD2>swf_shapelinesolid</KEYWORD2>\r
+ <KEYWORD2>swf_shapelineto</KEYWORD2>\r
+ <KEYWORD2>swf_shapemoveto</KEYWORD2>\r
+ <KEYWORD2>swf_showframe</KEYWORD2>\r
+ <KEYWORD2>swf_startbutton</KEYWORD2>\r
+ <KEYWORD2>swf_startdoaction</KEYWORD2>\r
+ <KEYWORD2>swf_startshape</KEYWORD2>\r
+ <KEYWORD2>swf_startsymbol</KEYWORD2>\r
+ <KEYWORD2>swf_textwidth</KEYWORD2>\r
+ <KEYWORD2>swf_translate</KEYWORD2>\r
+ <KEYWORD2>swf_viewport</KEYWORD2>\r
+ <KEYWORD2>swfbutton_keypress</KEYWORD2>\r
+ <KEYWORD2>sybase_affected_rows</KEYWORD2>\r
+ <KEYWORD2>sybase_close</KEYWORD2>\r
+ <KEYWORD2>sybase_connect</KEYWORD2>\r
+ <KEYWORD2>sybase_data_seek</KEYWORD2>\r
+ <KEYWORD2>sybase_deadlock_retry_count</KEYWORD2>\r
+ <KEYWORD2>sybase_fetch_array</KEYWORD2>\r
+ <KEYWORD2>sybase_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>sybase_fetch_field</KEYWORD2>\r
+ <KEYWORD2>sybase_fetch_object</KEYWORD2>\r
+ <KEYWORD2>sybase_fetch_row</KEYWORD2>\r
+ <KEYWORD2>sybase_field_seek</KEYWORD2>\r
+ <KEYWORD2>sybase_free_result</KEYWORD2>\r
+ <KEYWORD2>sybase_get_last_message</KEYWORD2>\r
+ <KEYWORD2>sybase_min_client_severity</KEYWORD2>\r
+ <KEYWORD2>sybase_min_error_severity</KEYWORD2>\r
+ <KEYWORD2>sybase_min_message_severity</KEYWORD2>\r
+ <KEYWORD2>sybase_min_server_severity</KEYWORD2>\r
+ <KEYWORD2>sybase_num_fields</KEYWORD2>\r
+ <KEYWORD2>sybase_num_rows</KEYWORD2>\r
+ <KEYWORD2>sybase_pconnect</KEYWORD2>\r
+ <KEYWORD2>sybase_query</KEYWORD2>\r
+ <KEYWORD2>sybase_result</KEYWORD2>\r
+ <KEYWORD2>sybase_select_db</KEYWORD2>\r
+ <KEYWORD2>sybase_set_message_handler</KEYWORD2>\r
+ <KEYWORD2>sybase_unbuffered_query</KEYWORD2>\r
+ <KEYWORD2>symlink</KEYWORD2>\r
+ <KEYWORD2>syslog</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>system_id</KEYWORD2> <!-- domdocumenttype -->\r
+ <KEYWORD2>tagname</KEYWORD2> <!-- domelement -->\r
+ <KEYWORD2>tan</KEYWORD2>\r
+ <KEYWORD2>tanh</KEYWORD2>\r
+ <KEYWORD2>target</KEYWORD2> <!-- domprocessinginstruction -->\r
+ <KEYWORD2>tcpwrap_check</KEYWORD2>\r
+ <KEYWORD2>tell</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>tempnam</KEYWORD2>\r
+ <KEYWORD2>textdomain</KEYWORD2>\r
+ <KEYWORD2>tidy_access_count</KEYWORD2>\r
+ <KEYWORD2>tidy_clean_repair</KEYWORD2>\r
+ <KEYWORD2>tidy_config_count</KEYWORD2>\r
+ <KEYWORD2>tidy_diagnose</KEYWORD2>\r
+ <KEYWORD2>tidy_error_count</KEYWORD2>\r
+ <KEYWORD2>tidy_get_body</KEYWORD2>\r
+ <KEYWORD2>tidy_get_config</KEYWORD2>\r
+ <KEYWORD2>tidy_get_error_buffer</KEYWORD2>\r
+ <KEYWORD2>tidy_get_head</KEYWORD2>\r
+ <KEYWORD2>tidy_get_html</KEYWORD2>\r
+ <KEYWORD2>tidy_get_html_ver</KEYWORD2>\r
+ <KEYWORD2>tidy_get_output</KEYWORD2>\r
+ <KEYWORD2>tidy_get_release</KEYWORD2>\r
+ <KEYWORD2>tidy_get_root</KEYWORD2>\r
+ <KEYWORD2>tidy_get_status</KEYWORD2>\r
+ <KEYWORD2>tidy_getopt</KEYWORD2>\r
+ <KEYWORD2>tidy_is_xhtml</KEYWORD2>\r
+ <KEYWORD2>tidy_is_xml</KEYWORD2>\r
+ <KEYWORD2>tidy_load_config</KEYWORD2>\r
+ <KEYWORD2>tidy_parse_file</KEYWORD2>\r
+ <KEYWORD2>tidy_parse_string</KEYWORD2>\r
+ <KEYWORD2>tidy_repair_file</KEYWORD2>\r
+ <KEYWORD2>tidy_repair_string</KEYWORD2>\r
+ <KEYWORD2>tidy_reset_config</KEYWORD2>\r
+ <KEYWORD2>tidy_save_config</KEYWORD2>\r
+ <KEYWORD2>tidy_set_encoding</KEYWORD2>\r
+ <KEYWORD2>tidy_setopt</KEYWORD2>\r
+ <KEYWORD2>tidy_warning_count</KEYWORD2>\r
+ <KEYWORD2>time</KEYWORD2>\r
+ <KEYWORD2>time_nanosleep</KEYWORD2>\r
+ <KEYWORD2>title</KEYWORD2> <!-- hw_api_object -->\r
+ <KEYWORD2>tmpfile</KEYWORD2>\r
+ <KEYWORD2>token_get_all</KEYWORD2>\r
+ <KEYWORD2>token_name</KEYWORD2>\r
+ <KEYWORD2>touch</KEYWORD2>\r
+ <KEYWORD2>trigger_error</KEYWORD2>\r
+ <KEYWORD2>trim</KEYWORD2> <!-- collection -->\r
+ <KEYWORD2>truncate</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>type</KEYWORD2> <!-- hw_api_reason -->\r
+ <KEYWORD2>uasort</KEYWORD2>\r
+ <KEYWORD2>ucfirst</KEYWORD2>\r
+ <KEYWORD2>ucwords</KEYWORD2>\r
+ <KEYWORD2>udm_add_search_limit</KEYWORD2>\r
+ <KEYWORD2>udm_alloc_agent</KEYWORD2>\r
+ <KEYWORD2>udm_alloc_agent_array</KEYWORD2>\r
+ <KEYWORD2>udm_api_version</KEYWORD2>\r
+ <KEYWORD2>udm_cat_list</KEYWORD2>\r
+ <KEYWORD2>udm_cat_path</KEYWORD2>\r
+ <KEYWORD2>udm_check_charset</KEYWORD2>\r
+ <KEYWORD2>udm_check_stored</KEYWORD2>\r
+ <KEYWORD2>udm_clear_search_limits</KEYWORD2>\r
+ <KEYWORD2>udm_close_stored</KEYWORD2>\r
+ <KEYWORD2>udm_crc32</KEYWORD2>\r
+ <KEYWORD2>udm_errno</KEYWORD2>\r
+ <KEYWORD2>udm_error</KEYWORD2>\r
+ <KEYWORD2>udm_find</KEYWORD2>\r
+ <KEYWORD2>udm_free_agent</KEYWORD2>\r
+ <KEYWORD2>udm_free_ispell_data</KEYWORD2>\r
+ <KEYWORD2>udm_free_res</KEYWORD2>\r
+ <KEYWORD2>udm_get_doc_count</KEYWORD2>\r
+ <KEYWORD2>udm_get_res_field</KEYWORD2>\r
+ <KEYWORD2>udm_get_res_param</KEYWORD2>\r
+ <KEYWORD2>udm_hash32</KEYWORD2>\r
+ <KEYWORD2>udm_load_ispell_data</KEYWORD2>\r
+ <KEYWORD2>udm_open_stored</KEYWORD2>\r
+ <KEYWORD2>udm_set_agent_param</KEYWORD2>\r
+ <KEYWORD2>uksort</KEYWORD2>\r
+ <KEYWORD2>umask</KEYWORD2>\r
+ <KEYWORD2>uniqid</KEYWORD2>\r
+ <KEYWORD2>unixtojd</KEYWORD2>\r
+ <KEYWORD2>unlink</KEYWORD2>\r
+ <KEYWORD2>unlink_node</KEYWORD2> <!-- domnode -->\r
+ <KEYWORD2>unlock</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>unpack</KEYWORD2>\r
+ <KEYWORD2>unregister_tick_function</KEYWORD2>\r
+ <KEYWORD2>unserialize</KEYWORD2>\r
+ <KEYWORD2>urldecode</KEYWORD2>\r
+ <KEYWORD2>urlencode</KEYWORD2>\r
+ <KEYWORD2>user</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>user_error</KEYWORD2>\r
+ <KEYWORD2>userlist</KEYWORD2> <!-- hw_api -->\r
+ <KEYWORD2>usleep</KEYWORD2>\r
+ <KEYWORD2>usort</KEYWORD2>\r
+ <KEYWORD2>utf8_decode</KEYWORD2>\r
+ <KEYWORD2>utf8_encode</KEYWORD2>\r
+ <KEYWORD2>valid</KEYWORD2> <!-- arrayiterator, cachingiterator, directoryiterator, filteriterator, limititerator, recursiveiteratoriterator, simplexmliterator -->\r
+ <KEYWORD2>validate</KEYWORD2> <!-- domdocument -->\r
+ <KEYWORD2>value</KEYWORD2> <!-- domattribute, hw_api_attribute, hw_api_object -->\r
+ <KEYWORD2>values</KEYWORD2> <!-- hw_api_attribute -->\r
+ <KEYWORD2>var_dump</KEYWORD2>\r
+ <KEYWORD2>var_export</KEYWORD2>\r
+ <KEYWORD2>variant_abs</KEYWORD2>\r
+ <KEYWORD2>variant_add</KEYWORD2>\r
+ <KEYWORD2>variant_and</KEYWORD2>\r
+ <KEYWORD2>variant_cast</KEYWORD2>\r
+ <KEYWORD2>variant_cat</KEYWORD2>\r
+ <KEYWORD2>variant_cmp</KEYWORD2>\r
+ <KEYWORD2>variant_date_from_timestamp</KEYWORD2>\r
+ <KEYWORD2>variant_date_to_timestamp</KEYWORD2>\r
+ <KEYWORD2>variant_div</KEYWORD2>\r
+ <KEYWORD2>variant_eqv</KEYWORD2>\r
+ <KEYWORD2>variant_fix</KEYWORD2>\r
+ <KEYWORD2>variant_get_type</KEYWORD2>\r
+ <KEYWORD2>variant_idiv</KEYWORD2>\r
+ <KEYWORD2>variant_imp</KEYWORD2>\r
+ <KEYWORD2>variant_int</KEYWORD2>\r
+ <KEYWORD2>variant_mod</KEYWORD2>\r
+ <KEYWORD2>variant_mul</KEYWORD2>\r
+ <KEYWORD2>variant_neg</KEYWORD2>\r
+ <KEYWORD2>variant_not</KEYWORD2>\r
+ <KEYWORD2>variant_or</KEYWORD2>\r
+ <KEYWORD2>variant_pow</KEYWORD2>\r
+ <KEYWORD2>variant_round</KEYWORD2>\r
+ <KEYWORD2>variant_set</KEYWORD2>\r
+ <KEYWORD2>variant_set_type</KEYWORD2>\r
+ <KEYWORD2>variant_sub</KEYWORD2>\r
+ <KEYWORD2>variant_xor</KEYWORD2>\r
+ <KEYWORD2>version_compare</KEYWORD2>\r
+ <KEYWORD2>vfprintf</KEYWORD2>\r
+ <KEYWORD2>virtual</KEYWORD2>\r
+ <KEYWORD2>vpopmail_add_alias_domain</KEYWORD2>\r
+ <KEYWORD2>vpopmail_add_alias_domain_ex</KEYWORD2>\r
+ <KEYWORD2>vpopmail_add_domain</KEYWORD2>\r
+ <KEYWORD2>vpopmail_add_domain_ex</KEYWORD2>\r
+ <KEYWORD2>vpopmail_add_user</KEYWORD2>\r
+ <KEYWORD2>vpopmail_alias_add</KEYWORD2>\r
+ <KEYWORD2>vpopmail_alias_del</KEYWORD2>\r
+ <KEYWORD2>vpopmail_alias_del_domain</KEYWORD2>\r
+ <KEYWORD2>vpopmail_alias_get</KEYWORD2>\r
+ <KEYWORD2>vpopmail_alias_get_all</KEYWORD2>\r
+ <KEYWORD2>vpopmail_auth_user</KEYWORD2>\r
+ <KEYWORD2>vpopmail_del_domain</KEYWORD2>\r
+ <KEYWORD2>vpopmail_del_domain_ex</KEYWORD2>\r
+ <KEYWORD2>vpopmail_del_user</KEYWORD2>\r
+ <KEYWORD2>vpopmail_error</KEYWORD2>\r
+ <KEYWORD2>vpopmail_passwd</KEYWORD2>\r
+ <KEYWORD2>vpopmail_set_user_quota</KEYWORD2>\r
+ <KEYWORD2>vprintf</KEYWORD2>\r
+ <KEYWORD2>vsprintf</KEYWORD2>\r
+ <KEYWORD2>w32api_deftype</KEYWORD2>\r
+ <KEYWORD2>w32api_init_dtype</KEYWORD2>\r
+ <KEYWORD2>w32api_invoke_function</KEYWORD2>\r
+ <KEYWORD2>w32api_register_function</KEYWORD2>\r
+ <KEYWORD2>w32api_set_call_method</KEYWORD2>\r
+ <KEYWORD2>wddx_add_vars</KEYWORD2>\r
+ <KEYWORD2>wddx_deserialize</KEYWORD2>\r
+ <KEYWORD2>wddx_packet_end</KEYWORD2>\r
+ <KEYWORD2>wddx_packet_start</KEYWORD2>\r
+ <KEYWORD2>wddx_serialize_value</KEYWORD2>\r
+ <KEYWORD2>wddx_serialize_vars</KEYWORD2>\r
+ <KEYWORD2>wordwrap</KEYWORD2>\r
+ <KEYWORD2>write</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>writetemporary</KEYWORD2> <!-- lob -->\r
+ <KEYWORD2>xattr_get</KEYWORD2>\r
+ <KEYWORD2>xattr_list</KEYWORD2>\r
+ <KEYWORD2>xattr_remove</KEYWORD2>\r
+ <KEYWORD2>xattr_set</KEYWORD2>\r
+ <KEYWORD2>xattr_supported</KEYWORD2>\r
+ <KEYWORD2>xdiff_file_diff</KEYWORD2>\r
+ <KEYWORD2>xdiff_file_diff_binary</KEYWORD2>\r
+ <KEYWORD2>xdiff_file_merge3</KEYWORD2>\r
+ <KEYWORD2>xdiff_file_patch</KEYWORD2>\r
+ <KEYWORD2>xdiff_file_patch_binary</KEYWORD2>\r
+ <KEYWORD2>xdiff_string_diff</KEYWORD2>\r
+ <KEYWORD2>xdiff_string_diff_binary</KEYWORD2>\r
+ <KEYWORD2>xdiff_string_merge3</KEYWORD2>\r
+ <KEYWORD2>xdiff_string_patch</KEYWORD2>\r
+ <KEYWORD2>xdiff_string_patch_binary</KEYWORD2>\r
+ <KEYWORD2>xinclude</KEYWORD2> <!-- domdocument, domdocument -->\r
+ <KEYWORD2>xml_error_string</KEYWORD2>\r
+ <KEYWORD2>xml_get_current_byte_index</KEYWORD2>\r
+ <KEYWORD2>xml_get_current_column_number</KEYWORD2>\r
+ <KEYWORD2>xml_get_current_line_number</KEYWORD2>\r
+ <KEYWORD2>xml_get_error_code</KEYWORD2>\r
+ <KEYWORD2>xml_parse</KEYWORD2>\r
+ <KEYWORD2>xml_parse_into_struct</KEYWORD2>\r
+ <KEYWORD2>xml_parser_create</KEYWORD2>\r
+ <KEYWORD2>xml_parser_create_ns</KEYWORD2>\r
+ <KEYWORD2>xml_parser_free</KEYWORD2>\r
+ <KEYWORD2>xml_parser_get_option</KEYWORD2>\r
+ <KEYWORD2>xml_parser_set_option</KEYWORD2>\r
+ <KEYWORD2>xml_set_character_data_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_default_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_element_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_end_namespace_decl_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_external_entity_ref_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_notation_decl_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_object</KEYWORD2>\r
+ <KEYWORD2>xml_set_processing_instruction_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_start_namespace_decl_handler</KEYWORD2>\r
+ <KEYWORD2>xml_set_unparsed_entity_decl_handler</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_decode</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_decode_request</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_encode</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_encode_request</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_get_type</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_is_fault</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_parse_method_descriptions</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_add_introspection_data</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_call_method</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_create</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_destroy</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_register_introspection_callback</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_server_register_method</KEYWORD2>\r
+ <KEYWORD2>xmlrpc_set_type</KEYWORD2>\r
+ <KEYWORD2>xpath</KEYWORD2> <!-- simplexmlelement -->\r
+ <KEYWORD2>xpath_eval</KEYWORD2>\r
+ <KEYWORD2>xpath_eval_expression</KEYWORD2>\r
+ <KEYWORD2>xpath_new_context</KEYWORD2>\r
+ <KEYWORD2>xptr_eval</KEYWORD2>\r
+ <KEYWORD2>xptr_new_context</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_get_parameter</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_has_exslt_support</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_import_stylesheet</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_register_php_functions</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_remove_parameter</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_set_parameter</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_transform_to_doc</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_transform_to_uri</KEYWORD2>\r
+ <KEYWORD2>xsl_xsltprocessor_transform_to_xml</KEYWORD2>\r
+ <KEYWORD2>xslt_backend_info</KEYWORD2>\r
+ <KEYWORD2>xslt_backend_name</KEYWORD2>\r
+ <KEYWORD2>xslt_backend_version</KEYWORD2>\r
+ <KEYWORD2>xslt_create</KEYWORD2>\r
+ <KEYWORD2>xslt_errno</KEYWORD2>\r
+ <KEYWORD2>xslt_error</KEYWORD2>\r
+ <KEYWORD2>xslt_free</KEYWORD2>\r
+ <KEYWORD2>xslt_getopt</KEYWORD2>\r
+ <KEYWORD2>xslt_process</KEYWORD2>\r
+ <KEYWORD2>xslt_set_base</KEYWORD2>\r
+ <KEYWORD2>xslt_set_encoding</KEYWORD2>\r
+ <KEYWORD2>xslt_set_error_handler</KEYWORD2>\r
+ <KEYWORD2>xslt_set_log</KEYWORD2>\r
+ <KEYWORD2>xslt_set_object</KEYWORD2>\r
+ <KEYWORD2>xslt_set_sax_handler</KEYWORD2>\r
+ <KEYWORD2>xslt_set_sax_handlers</KEYWORD2>\r
+ <KEYWORD2>xslt_set_scheme_handler</KEYWORD2>\r
+ <KEYWORD2>xslt_set_scheme_handlers</KEYWORD2>\r
+ <KEYWORD2>xslt_setopt</KEYWORD2>\r
+ <KEYWORD2>yaz_addinfo</KEYWORD2>\r
+ <KEYWORD2>yaz_ccl_conf</KEYWORD2>\r
+ <KEYWORD2>yaz_ccl_parse</KEYWORD2>\r
+ <KEYWORD2>yaz_close</KEYWORD2>\r
+ <KEYWORD2>yaz_connect</KEYWORD2>\r
+ <KEYWORD2>yaz_database</KEYWORD2>\r
+ <KEYWORD2>yaz_element</KEYWORD2>\r
+ <KEYWORD2>yaz_errno</KEYWORD2>\r
+ <KEYWORD2>yaz_error</KEYWORD2>\r
+ <KEYWORD2>yaz_es_result</KEYWORD2>\r
+ <KEYWORD2>yaz_get_option</KEYWORD2>\r
+ <KEYWORD2>yaz_hits</KEYWORD2>\r
+ <KEYWORD2>yaz_itemorder</KEYWORD2>\r
+ <KEYWORD2>yaz_present</KEYWORD2>\r
+ <KEYWORD2>yaz_range</KEYWORD2>\r
+ <KEYWORD2>yaz_record</KEYWORD2>\r
+ <KEYWORD2>yaz_scan</KEYWORD2>\r
+ <KEYWORD2>yaz_scan_result</KEYWORD2>\r
+ <KEYWORD2>yaz_schema</KEYWORD2>\r
+ <KEYWORD2>yaz_search</KEYWORD2>\r
+ <KEYWORD2>yaz_set_option</KEYWORD2>\r
+ <KEYWORD2>yaz_sort</KEYWORD2>\r
+ <KEYWORD2>yaz_syntax</KEYWORD2>\r
+ <KEYWORD2>yaz_wait</KEYWORD2>\r
+ <KEYWORD2>yp_all</KEYWORD2>\r
+ <KEYWORD2>yp_cat</KEYWORD2>\r
+ <KEYWORD2>yp_err_string</KEYWORD2>\r
+ <KEYWORD2>yp_errno</KEYWORD2>\r
+ <KEYWORD2>yp_first</KEYWORD2>\r
+ <KEYWORD2>yp_get_default_domain</KEYWORD2>\r
+ <KEYWORD2>yp_master</KEYWORD2>\r
+ <KEYWORD2>yp_match</KEYWORD2>\r
+ <KEYWORD2>yp_next</KEYWORD2>\r
+ <KEYWORD2>yp_order</KEYWORD2>\r
+ <KEYWORD2>zend_logo_guid</KEYWORD2>\r
+ <KEYWORD2>zend_version</KEYWORD2>\r
+ <KEYWORD2>zip_close</KEYWORD2>\r
+ <KEYWORD2>zip_entry_close</KEYWORD2>\r
+ <KEYWORD2>zip_entry_compressedsize</KEYWORD2>\r
+ <KEYWORD2>zip_entry_compressionmethod</KEYWORD2>\r
+ <KEYWORD2>zip_entry_filesize</KEYWORD2>\r
+ <KEYWORD2>zip_entry_name</KEYWORD2>\r
+ <KEYWORD2>zip_entry_open</KEYWORD2>\r
+ <KEYWORD2>zip_entry_read</KEYWORD2>\r
+ <KEYWORD2>zip_open</KEYWORD2>\r
+ <KEYWORD2>zip_read</KEYWORD2>\r
+ <KEYWORD2>zlib_get_coding_type</KEYWORD2>\r
+\r
+\r
+ <!-- Alias functions (343)\r
+ http://zend.com/phpfunc/all_aliases.php -->\r
+ <KEYWORD2>apache_request_headers</KEYWORD2>\r
+ <KEYWORD2>apache_response_headers</KEYWORD2>\r
+ <KEYWORD2>attr_get</KEYWORD2>\r
+ <KEYWORD2>attr_set</KEYWORD2>\r
+ <KEYWORD2>autocommit</KEYWORD2>\r
+ <KEYWORD2>bind_param</KEYWORD2>\r
+ <KEYWORD2>bind_result</KEYWORD2>\r
+ <KEYWORD2>bzclose</KEYWORD2>\r
+ <KEYWORD2>bzflush</KEYWORD2>\r
+ <KEYWORD2>bzwrite</KEYWORD2>\r
+ <KEYWORD2>change_user</KEYWORD2>\r
+ <KEYWORD2>character_set_name</KEYWORD2>\r
+ <KEYWORD2>checkdnsrr</KEYWORD2>\r
+ <KEYWORD2>chop</KEYWORD2>\r
+ <KEYWORD2>client_encoding</KEYWORD2>\r
+ <KEYWORD2>close</KEYWORD2>\r
+ <KEYWORD2>commit</KEYWORD2>\r
+ <KEYWORD2>connect</KEYWORD2>\r
+ <KEYWORD2>data_seek</KEYWORD2>\r
+ <KEYWORD2>debug</KEYWORD2>\r
+ <KEYWORD2>disable_reads_from_master</KEYWORD2>\r
+ <KEYWORD2>disable_rpl_parse</KEYWORD2>\r
+ <KEYWORD2>diskfreespace</KEYWORD2>\r
+ <KEYWORD2>doubleval</KEYWORD2>\r
+ <KEYWORD2>dump_debug_info</KEYWORD2>\r
+ <KEYWORD2>enable_reads_from_master</KEYWORD2>\r
+ <KEYWORD2>enable_rpl_parse</KEYWORD2>\r
+ <KEYWORD2>escape_string</KEYWORD2>\r
+ <KEYWORD2>execute</KEYWORD2>\r
+ <KEYWORD2>fbird_add_user</KEYWORD2>\r
+ <KEYWORD2>fbird_affected_rows</KEYWORD2>\r
+ <KEYWORD2>fbird_backup</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_add</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_cancel</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_close</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_create</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_echo</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_get</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_import</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_info</KEYWORD2>\r
+ <KEYWORD2>fbird_blob_open</KEYWORD2>\r
+ <KEYWORD2>fbird_close</KEYWORD2>\r
+ <KEYWORD2>fbird_commit</KEYWORD2>\r
+ <KEYWORD2>fbird_commit_ret</KEYWORD2>\r
+ <KEYWORD2>fbird_connect</KEYWORD2>\r
+ <KEYWORD2>fbird_db_info</KEYWORD2>\r
+ <KEYWORD2>fbird_delete_user</KEYWORD2>\r
+ <KEYWORD2>fbird_drop_db</KEYWORD2>\r
+ <KEYWORD2>fbird_errcode</KEYWORD2>\r
+ <KEYWORD2>fbird_errmsg</KEYWORD2>\r
+ <KEYWORD2>fbird_execute</KEYWORD2>\r
+ <KEYWORD2>fbird_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>fbird_fetch_object</KEYWORD2>\r
+ <KEYWORD2>fbird_fetch_row</KEYWORD2>\r
+ <KEYWORD2>fbird_field_info</KEYWORD2>\r
+ <KEYWORD2>fbird_free_event_handler</KEYWORD2>\r
+ <KEYWORD2>fbird_free_query</KEYWORD2>\r
+ <KEYWORD2>fbird_free_result</KEYWORD2>\r
+ <KEYWORD2>fbird_gen_id</KEYWORD2>\r
+ <KEYWORD2>fbird_maintain_db</KEYWORD2>\r
+ <KEYWORD2>fbird_modify_user</KEYWORD2>\r
+ <KEYWORD2>fbird_name_result</KEYWORD2>\r
+ <KEYWORD2>fbird_num_fields</KEYWORD2>\r
+ <KEYWORD2>fbird_num_params</KEYWORD2>\r
+ <KEYWORD2>fbird_num_rows</KEYWORD2>\r
+ <KEYWORD2>fbird_param_info</KEYWORD2>\r
+ <KEYWORD2>fbird_pconnect</KEYWORD2>\r
+ <KEYWORD2>fbird_prepare</KEYWORD2>\r
+ <KEYWORD2>fbird_query</KEYWORD2>\r
+ <KEYWORD2>fbird_restore</KEYWORD2>\r
+ <KEYWORD2>fbird_rollback</KEYWORD2>\r
+ <KEYWORD2>fbird_rollback_ret</KEYWORD2>\r
+ <KEYWORD2>fbird_server_info</KEYWORD2>\r
+ <KEYWORD2>fbird_service_attach</KEYWORD2>\r
+ <KEYWORD2>fbird_service_detach</KEYWORD2>\r
+ <KEYWORD2>fbird_set_event_handler</KEYWORD2>\r
+ <KEYWORD2>fbird_trans</KEYWORD2>\r
+ <KEYWORD2>fbird_wait_event</KEYWORD2>\r
+ <KEYWORD2>fbsql</KEYWORD2>\r
+ <KEYWORD2>fbsql_tablename</KEYWORD2>\r
+ <KEYWORD2>fetch</KEYWORD2>\r
+ <KEYWORD2>fetch_array</KEYWORD2>\r
+ <KEYWORD2>fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>fetch_field</KEYWORD2>\r
+ <KEYWORD2>fetch_field_direct</KEYWORD2>\r
+ <KEYWORD2>fetch_fields</KEYWORD2>\r
+ <KEYWORD2>fetch_object</KEYWORD2>\r
+ <KEYWORD2>fetch_row</KEYWORD2>\r
+ <KEYWORD2>field_count</KEYWORD2>\r
+ <KEYWORD2>field_seek</KEYWORD2>\r
+ <KEYWORD2>fputs</KEYWORD2>\r
+ <KEYWORD2>free</KEYWORD2>\r
+ <KEYWORD2>free_result</KEYWORD2>\r
+ <KEYWORD2>ftp_quit</KEYWORD2>\r
+ <KEYWORD2>get_client_info</KEYWORD2>\r
+ <KEYWORD2>get_required_files</KEYWORD2>\r
+ <KEYWORD2>get_server_info</KEYWORD2>\r
+ <KEYWORD2>getallheaders</KEYWORD2>\r
+ <KEYWORD2>getmxrr</KEYWORD2>\r
+ <KEYWORD2>gmp_div</KEYWORD2>\r
+ <KEYWORD2>gzclose</KEYWORD2>\r
+ <KEYWORD2>gzeof</KEYWORD2>\r
+ <KEYWORD2>gzgetc</KEYWORD2>\r
+ <KEYWORD2>gzgets</KEYWORD2>\r
+ <KEYWORD2>gzgetss</KEYWORD2>\r
+ <KEYWORD2>gzpassthru</KEYWORD2>\r
+ <KEYWORD2>gzputs</KEYWORD2>\r
+ <KEYWORD2>gzread</KEYWORD2>\r
+ <KEYWORD2>gzrewind</KEYWORD2>\r
+ <KEYWORD2>gzseek</KEYWORD2>\r
+ <KEYWORD2>gztell</KEYWORD2>\r
+ <KEYWORD2>gzwrite</KEYWORD2>\r
+ <KEYWORD2>imap_create</KEYWORD2>\r
+ <KEYWORD2>imap_fetchtext</KEYWORD2>\r
+ <KEYWORD2>imap_header</KEYWORD2>\r
+ <KEYWORD2>imap_listmailbox</KEYWORD2>\r
+ <KEYWORD2>imap_listsubscribed</KEYWORD2>\r
+ <KEYWORD2>imap_rename</KEYWORD2>\r
+ <KEYWORD2>ini_alter</KEYWORD2>\r
+ <KEYWORD2>init</KEYWORD2>\r
+ <KEYWORD2>is_double</KEYWORD2>\r
+ <KEYWORD2>is_int</KEYWORD2>\r
+ <KEYWORD2>is_integer</KEYWORD2>\r
+ <KEYWORD2>is_real</KEYWORD2>\r
+ <KEYWORD2>is_writeable</KEYWORD2>\r
+ <KEYWORD2>join</KEYWORD2>\r
+ <KEYWORD2>key_exists</KEYWORD2>\r
+ <KEYWORD2>kill</KEYWORD2>\r
+ <KEYWORD2>ldap_close</KEYWORD2>\r
+ <KEYWORD2>ldap_modify</KEYWORD2>\r
+ <KEYWORD2>magic_quotes_runtime</KEYWORD2>\r
+ <KEYWORD2>master_query</KEYWORD2>\r
+ <KEYWORD2>ming_keypress</KEYWORD2>\r
+ <KEYWORD2>ming_setcubicthreshold</KEYWORD2>\r
+ <KEYWORD2>ming_setscale</KEYWORD2>\r
+ <KEYWORD2>ming_useconstants</KEYWORD2>\r
+ <KEYWORD2>ming_useswfversion</KEYWORD2>\r
+ <KEYWORD2>more_results</KEYWORD2>\r
+ <KEYWORD2>msql</KEYWORD2>\r
+ <KEYWORD2>msql_affected_rows</KEYWORD2>\r
+ <KEYWORD2>msql_createdb</KEYWORD2>\r
+ <KEYWORD2>msql_dbname</KEYWORD2>\r
+ <KEYWORD2>msql_dropdb</KEYWORD2>\r
+ <KEYWORD2>msql_fieldflags</KEYWORD2>\r
+ <KEYWORD2>msql_fieldlen</KEYWORD2>\r
+ <KEYWORD2>msql_fieldname</KEYWORD2>\r
+ <KEYWORD2>msql_fieldtable</KEYWORD2>\r
+ <KEYWORD2>msql_fieldtype</KEYWORD2>\r
+ <KEYWORD2>msql_freeresult</KEYWORD2>\r
+ <KEYWORD2>msql_listdbs</KEYWORD2>\r
+ <KEYWORD2>msql_listfields</KEYWORD2>\r
+ <KEYWORD2>msql_listtables</KEYWORD2>\r
+ <KEYWORD2>msql_numfields</KEYWORD2>\r
+ <KEYWORD2>msql_numrows</KEYWORD2>\r
+ <KEYWORD2>msql_regcase</KEYWORD2>\r
+ <KEYWORD2>msql_selectdb</KEYWORD2>\r
+ <KEYWORD2>msql_tablename</KEYWORD2>\r
+ <KEYWORD2>mssql_affected_rows</KEYWORD2>\r
+ <KEYWORD2>mssql_close</KEYWORD2>\r
+ <KEYWORD2>mssql_connect</KEYWORD2>\r
+ <KEYWORD2>mssql_data_seek</KEYWORD2>\r
+ <KEYWORD2>mssql_deadlock_retry_count</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_array</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_assoc</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_field</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_object</KEYWORD2>\r
+ <KEYWORD2>mssql_fetch_row</KEYWORD2>\r
+ <KEYWORD2>mssql_field_seek</KEYWORD2>\r
+ <KEYWORD2>mssql_free_result</KEYWORD2>\r
+ <KEYWORD2>mssql_get_last_message</KEYWORD2>\r
+ <KEYWORD2>mssql_min_client_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_min_error_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_min_message_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_min_server_severity</KEYWORD2>\r
+ <KEYWORD2>mssql_num_fields</KEYWORD2>\r
+ <KEYWORD2>mssql_num_rows</KEYWORD2>\r
+ <KEYWORD2>mssql_pconnect</KEYWORD2>\r
+ <KEYWORD2>mssql_query</KEYWORD2>\r
+ <KEYWORD2>mssql_result</KEYWORD2>\r
+ <KEYWORD2>mssql_select_db</KEYWORD2>\r
+ <KEYWORD2>mssql_set_message_handler</KEYWORD2>\r
+ <KEYWORD2>mssql_unbuffered_query</KEYWORD2>\r
+ <KEYWORD2>multi_query</KEYWORD2>\r
+ <KEYWORD2>mysql</KEYWORD2>\r
+ <KEYWORD2>mysql_createdb</KEYWORD2>\r
+ <KEYWORD2>mysql_db_name</KEYWORD2>\r
+ <KEYWORD2>mysql_dbname</KEYWORD2>\r
+ <KEYWORD2>mysql_dropdb</KEYWORD2>\r
+ <KEYWORD2>mysql_fieldflags</KEYWORD2>\r
+ <KEYWORD2>mysql_fieldlen</KEYWORD2>\r
+ <KEYWORD2>mysql_fieldname</KEYWORD2>\r
+ <KEYWORD2>mysql_fieldtable</KEYWORD2>\r
+ <KEYWORD2>mysql_fieldtype</KEYWORD2>\r
+ <KEYWORD2>mysql_freeresult</KEYWORD2>\r
+ <KEYWORD2>mysql_listdbs</KEYWORD2>\r
+ <KEYWORD2>mysql_listfields</KEYWORD2>\r
+ <KEYWORD2>mysql_listtables</KEYWORD2>\r
+ <KEYWORD2>mysql_numfields</KEYWORD2>\r
+ <KEYWORD2>mysql_numrows</KEYWORD2>\r
+ <KEYWORD2>mysql_selectdb</KEYWORD2>\r
+ <KEYWORD2>mysql_table_name</KEYWORD2>\r
+ <KEYWORD2>mysql_tablename</KEYWORD2>\r
+ <KEYWORD2>mysqli</KEYWORD2>\r
+ <KEYWORD2>mysqli_execute</KEYWORD2>\r
+ <KEYWORD2>mysqli_fetch</KEYWORD2>\r
+ <KEYWORD2>mysqli_set_opt</KEYWORD2>\r
+ <KEYWORD2>next_result</KEYWORD2>\r
+ <KEYWORD2>num_rows</KEYWORD2>\r
+ <KEYWORD2>oci_free_cursor</KEYWORD2>\r
+ <KEYWORD2>ocibindbyname</KEYWORD2>\r
+ <KEYWORD2>ocicancel</KEYWORD2>\r
+ <KEYWORD2>ocicollappend</KEYWORD2>\r
+ <KEYWORD2>ocicollassignelem</KEYWORD2>\r
+ <KEYWORD2>ocicollgetelem</KEYWORD2>\r
+ <KEYWORD2>ocicollmax</KEYWORD2>\r
+ <KEYWORD2>ocicollsize</KEYWORD2>\r
+ <KEYWORD2>ocicolltrim</KEYWORD2>\r
+ <KEYWORD2>ocicolumnisnull</KEYWORD2>\r
+ <KEYWORD2>ocicolumnname</KEYWORD2>\r
+ <KEYWORD2>ocicolumnprecision</KEYWORD2>\r
+ <KEYWORD2>ocicolumnscale</KEYWORD2>\r
+ <KEYWORD2>ocicolumnsize</KEYWORD2>\r
+ <KEYWORD2>ocicolumntype</KEYWORD2>\r
+ <KEYWORD2>ocicolumntyperaw</KEYWORD2>\r
+ <KEYWORD2>ocicommit</KEYWORD2>\r
+ <KEYWORD2>ocidefinebyname</KEYWORD2>\r
+ <KEYWORD2>ocierror</KEYWORD2>\r
+ <KEYWORD2>ociexecute</KEYWORD2>\r
+ <KEYWORD2>ocifetch</KEYWORD2>\r
+ <KEYWORD2>ocifetchstatement</KEYWORD2>\r
+ <KEYWORD2>ocifreecollection</KEYWORD2>\r
+ <KEYWORD2>ocifreecursor</KEYWORD2>\r
+ <KEYWORD2>ocifreedesc</KEYWORD2>\r
+ <KEYWORD2>ocifreestatement</KEYWORD2>\r
+ <KEYWORD2>ociinternaldebug</KEYWORD2>\r
+ <KEYWORD2>ociloadlob</KEYWORD2>\r
+ <KEYWORD2>ocilogoff</KEYWORD2>\r
+ <KEYWORD2>ocilogon</KEYWORD2>\r
+ <KEYWORD2>ocinewcollection</KEYWORD2>\r
+ <KEYWORD2>ocinewcursor</KEYWORD2>\r
+ <KEYWORD2>ocinewdescriptor</KEYWORD2>\r
+ <KEYWORD2>ocinlogon</KEYWORD2>\r
+ <KEYWORD2>ocinumcols</KEYWORD2>\r
+ <KEYWORD2>ociparse</KEYWORD2>\r
+ <KEYWORD2>ocipasswordchange</KEYWORD2>\r
+ <KEYWORD2>ociplogon</KEYWORD2>\r
+ <KEYWORD2>ociresult</KEYWORD2>\r
+ <KEYWORD2>ocirollback</KEYWORD2>\r
+ <KEYWORD2>ocirowcount</KEYWORD2>\r
+ <KEYWORD2>ocisavelob</KEYWORD2>\r
+ <KEYWORD2>ocisavelobfile</KEYWORD2>\r
+ <KEYWORD2>ociserverversion</KEYWORD2>\r
+ <KEYWORD2>ocisetprefetch</KEYWORD2>\r
+ <KEYWORD2>ocistatementtype</KEYWORD2>\r
+ <KEYWORD2>ociwritelobtofile</KEYWORD2>\r
+ <KEYWORD2>odbc_do</KEYWORD2>\r
+ <KEYWORD2>odbc_field_precision</KEYWORD2>\r
+ <KEYWORD2>openssl_free_key</KEYWORD2>\r
+ <KEYWORD2>openssl_get_privatekey</KEYWORD2>\r
+ <KEYWORD2>openssl_get_publickey</KEYWORD2>\r
+ <KEYWORD2>options</KEYWORD2>\r
+ <KEYWORD2>pg_clientencoding</KEYWORD2>\r
+ <KEYWORD2>pg_cmdtuples</KEYWORD2>\r
+ <KEYWORD2>pg_errormessage</KEYWORD2>\r
+ <KEYWORD2>pg_exec</KEYWORD2>\r
+ <KEYWORD2>pg_fieldisnull</KEYWORD2>\r
+ <KEYWORD2>pg_fieldname</KEYWORD2>\r
+ <KEYWORD2>pg_fieldnum</KEYWORD2>\r
+ <KEYWORD2>pg_fieldprtlen</KEYWORD2>\r
+ <KEYWORD2>pg_fieldsize</KEYWORD2>\r
+ <KEYWORD2>pg_fieldtype</KEYWORD2>\r
+ <KEYWORD2>pg_freeresult</KEYWORD2>\r
+ <KEYWORD2>pg_getlastoid</KEYWORD2>\r
+ <KEYWORD2>pg_loclose</KEYWORD2>\r
+ <KEYWORD2>pg_locreate</KEYWORD2>\r
+ <KEYWORD2>pg_loexport</KEYWORD2>\r
+ <KEYWORD2>pg_loimport</KEYWORD2>\r
+ <KEYWORD2>pg_loopen</KEYWORD2>\r
+ <KEYWORD2>pg_loread</KEYWORD2>\r
+ <KEYWORD2>pg_loreadall</KEYWORD2>\r
+ <KEYWORD2>pg_lounlink</KEYWORD2>\r
+ <KEYWORD2>pg_lowrite</KEYWORD2>\r
+ <KEYWORD2>pg_numfields</KEYWORD2>\r
+ <KEYWORD2>pg_numrows</KEYWORD2>\r
+ <KEYWORD2>pg_result</KEYWORD2>\r
+ <KEYWORD2>pg_setclientencoding</KEYWORD2>\r
+ <KEYWORD2>ping</KEYWORD2>\r
+ <KEYWORD2>pos</KEYWORD2>\r
+ <KEYWORD2>posix_errno</KEYWORD2>\r
+ <KEYWORD2>prepare</KEYWORD2>\r
+ <KEYWORD2>query</KEYWORD2>\r
+ <KEYWORD2>read_exif_data</KEYWORD2>\r
+ <KEYWORD2>real_connect</KEYWORD2>\r
+ <KEYWORD2>real_escape_string</KEYWORD2>\r
+ <KEYWORD2>real_query</KEYWORD2>\r
+ <KEYWORD2>recode</KEYWORD2>\r
+ <KEYWORD2>reset</KEYWORD2>\r
+ <KEYWORD2>result_metadata</KEYWORD2>\r
+ <KEYWORD2>rollback</KEYWORD2>\r
+ <KEYWORD2>rpl_parse_enabled</KEYWORD2>\r
+ <KEYWORD2>rpl_probe</KEYWORD2>\r
+ <KEYWORD2>rpl_query_type</KEYWORD2>\r
+ <KEYWORD2>select_db</KEYWORD2>\r
+ <KEYWORD2>send_long_data</KEYWORD2>\r
+ <KEYWORD2>session_commit</KEYWORD2>\r
+ <KEYWORD2>set_file_buffer</KEYWORD2>\r
+ <KEYWORD2>set_local_infile_default</KEYWORD2>\r
+ <KEYWORD2>set_local_infile_handler</KEYWORD2>\r
+ <KEYWORD2>set_opt</KEYWORD2>\r
+ <KEYWORD2>show_source</KEYWORD2>\r
+ <KEYWORD2>sizeof</KEYWORD2>\r
+ <KEYWORD2>slave_query</KEYWORD2>\r
+ <KEYWORD2>snmpwalkoid</KEYWORD2>\r
+ <KEYWORD2>socket_get_status</KEYWORD2>\r
+ <KEYWORD2>socket_getopt</KEYWORD2>\r
+ <KEYWORD2>socket_set_blocking</KEYWORD2>\r
+ <KEYWORD2>socket_set_timeout</KEYWORD2>\r
+ <KEYWORD2>socket_setopt</KEYWORD2>\r
+ <KEYWORD2>sqlite_fetch_string</KEYWORD2>\r
+ <KEYWORD2>sqlite_has_more</KEYWORD2>\r
+ <KEYWORD2>ssl_set</KEYWORD2>\r
+ <KEYWORD2>stat</KEYWORD2>\r
+ <KEYWORD2>stmt</KEYWORD2>\r
+ <KEYWORD2>stmt_init</KEYWORD2>\r
+ <KEYWORD2>store_result</KEYWORD2>\r
+ <KEYWORD2>strchr</KEYWORD2>\r
+ <KEYWORD2>stream_register_wrapper</KEYWORD2>\r
+ <KEYWORD2>thread_safe</KEYWORD2>\r
+ <KEYWORD2>use_result</KEYWORD2>\r
+ <KEYWORD2>user_error</KEYWORD2>\r
+ <KEYWORD2>velocis_autocommit</KEYWORD2>\r
+ <KEYWORD2>velocis_close</KEYWORD2>\r
+ <KEYWORD2>velocis_commit</KEYWORD2>\r
+ <KEYWORD2>velocis_connect</KEYWORD2>\r
+ <KEYWORD2>velocis_exec</KEYWORD2>\r
+ <KEYWORD2>velocis_fetch</KEYWORD2>\r
+ <KEYWORD2>velocis_fieldname</KEYWORD2>\r
+ <KEYWORD2>velocis_fieldnum</KEYWORD2>\r
+ <KEYWORD2>velocis_freeresult</KEYWORD2>\r
+ <KEYWORD2>velocis_off_autocommit</KEYWORD2>\r
+ <KEYWORD2>velocis_result</KEYWORD2>\r
+ <KEYWORD2>velocis_rollback</KEYWORD2>\r
+ <KEYWORD2>virtual</KEYWORD2>\r
+\r
+\r
+ <!-- Language constructs (69)\r
+ http://www.php.net/manual/en/reserved.php -->\r
+ <KEYWORD1>__CLASS__</KEYWORD1>\r
+ <KEYWORD1>__FILE__</KEYWORD1>\r
+ <KEYWORD1>__FUNCTION__</KEYWORD1>\r
+ <KEYWORD1>__LINE__</KEYWORD1>\r
+ <KEYWORD1>__METHOD__</KEYWORD1>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <OPERATOR>and</OPERATOR>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>cfunction</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>clone</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>declare</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>die</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>echo</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elseif</KEYWORD1>\r
+ <KEYWORD1>empty</KEYWORD1>\r
+ <KEYWORD1>enddeclare</KEYWORD1>\r
+ <KEYWORD1>endfor</KEYWORD1>\r
+ <KEYWORD1>endforeach</KEYWORD1>\r
+ <KEYWORD1>endif</KEYWORD1>\r
+ <KEYWORD1>endswitch</KEYWORD1>\r
+ <KEYWORD1>endwhile</KEYWORD1>\r
+ <KEYWORD1>eval</KEYWORD1>\r
+ <KEYWORD1>exception</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <KEYWORD1>include_once</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>isset</KEYWORD1>\r
+ <KEYWORD1>list</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>null</KEYWORD1>\r
+ <KEYWORD1>old_function</KEYWORD1>\r
+ <OPERATOR>or</OPERATOR>\r
+ <KEYWORD1>php_user_filter</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>require</KEYWORD1>\r
+ <KEYWORD1>require_once</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>unset</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <OPERATOR>xor</OPERATOR>\r
+ <!-- end: generated by buildfunctionlist.php -->\r
+ <!-- }}} -->\r
+\r
+ <!-- xdebug functions -->\r
+ <!-- {{{ -->\r
+ <KEYWORD2>xdebug_break</KEYWORD2>\r
+ <KEYWORD2>xdebug_call_class</KEYWORD2>\r
+ <KEYWORD2>xdebug_call_file</KEYWORD2>\r
+ <KEYWORD2>xdebug_call_function</KEYWORD2>\r
+ <KEYWORD2>xdebug_call_line</KEYWORD2>\r
+ <KEYWORD2>xdebug_disable</KEYWORD2>\r
+ <KEYWORD2>xdebug_dump_function_profile</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_dump_function_trace</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_dump_superglobals</KEYWORD2>\r
+ <KEYWORD2>xdebug_enable</KEYWORD2>\r
+ <KEYWORD2>xdebug_get_code_coverage</KEYWORD2>\r
+ <KEYWORD2>xdebug_get_function_count</KEYWORD2>\r
+ <KEYWORD2>xdebug_get_function_profile</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_get_function_stack</KEYWORD2>\r
+ <KEYWORD2>xdebug_get_function_trace</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_get_stack_depth</KEYWORD2>\r
+ <KEYWORD2>xdebug_is_enabled</KEYWORD2>\r
+ <KEYWORD2>xdebug_memory_usage</KEYWORD2>\r
+ <KEYWORD2>xdebug_peak_memory_usage</KEYWORD2>\r
+ <KEYWORD2>xdebug_start_code_coverage</KEYWORD2>\r
+ <KEYWORD2>xdebug_start_profiling</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_start_trace</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_stop_code_coverage</KEYWORD2>\r
+ <KEYWORD2>xdebug_stop_profiling</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_stop_trace</KEYWORD2><!-- version 1 only -->\r
+ <KEYWORD2>xdebug_time_index</KEYWORD2>\r
+ <KEYWORD2>xdebug_var_dump</KEYWORD2>\r
+ <!-- }}} -->\r
+\r
+ <!-- Basic SimpleTest methods -->\r
+ <!-- {{{ -->\r
+ <KEYWORD2>assertCopy</KEYWORD2>\r
+ <KEYWORD2>assertEqual</KEYWORD2>\r
+ <KEYWORD2>assertError</KEYWORD2>\r
+ <KEYWORD2>assertErrorPattern</KEYWORD2>\r
+ <KEYWORD2>assertFalse</KEYWORD2>\r
+ <KEYWORD2>assertIdentical</KEYWORD2>\r
+ <KEYWORD2>assertIsA</KEYWORD2>\r
+ <KEYWORD2>assertNoErrors</KEYWORD2>\r
+ <KEYWORD2>assertNoUnwantedPattern</KEYWORD2>\r
+ <KEYWORD2>assertNotA</KEYWORD2>\r
+ <KEYWORD2>assertNotEqual</KEYWORD2>\r
+ <KEYWORD2>assertNotIdentical</KEYWORD2>\r
+ <KEYWORD2>assertNotNull</KEYWORD2>\r
+ <KEYWORD2>assertNull</KEYWORD2>\r
+ <KEYWORD2>assertReference</KEYWORD2>\r
+ <KEYWORD2>assertTrue</KEYWORD2>\r
+ <KEYWORD2>assertWantedPattern</KEYWORD2>\r
+\r
+ <KEYWORD2>setReturnValue</KEYWORD2>\r
+ <KEYWORD2>setReturnValueAt</KEYWORD2>\r
+ <KEYWORD2>setReturnReference</KEYWORD2>\r
+ <KEYWORD2>setReturnReferenceAt</KEYWORD2>\r
+ <KEYWORD2>expectArguments</KEYWORD2>\r
+ <KEYWORD2>expectArgumentsAt</KEYWORD2>\r
+ <KEYWORD2>expectCallCount</KEYWORD2>\r
+ <KEYWORD2>expectMaximumCallCount</KEYWORD2>\r
+ <KEYWORD2>expectMinimumCallCount</KEYWORD2>\r
+ <KEYWORD2>expectNever</KEYWORD2>\r
+ <KEYWORD2>expectOnce</KEYWORD2>\r
+ <KEYWORD2>expectAtLeastOnce</KEYWORD2>\r
+ <KEYWORD2>tally</KEYWORD2>\r
+\r
+ <KEYWORD2>dump</KEYWORD2>\r
+ <KEYWORD2>error</KEYWORD2>\r
+ <KEYWORD2>fail</KEYWORD2>\r
+ <KEYWORD2>pass</KEYWORD2>\r
+ <KEYWORD2>sendMessage</KEYWORD2>\r
+ <KEYWORD2>setUp</KEYWORD2>\r
+ <KEYWORD2>signal</KEYWORD2>\r
+ <KEYWORD2>swallowErrors</KEYWORD2>\r
+ <KEYWORD2>tearDown</KEYWORD2>\r
+ <!-- }}} -->\r
+\r
+ <!-- more magical functions -->\r
+ <KEYWORD2>__autoload</KEYWORD2>\r
+ <KEYWORD2>__destruct</KEYWORD2>\r
+ <KEYWORD2>__get</KEYWORD2>\r
+ <KEYWORD2>__set</KEYWORD2>\r
+ <KEYWORD2>__sleep</KEYWORD2>\r
+ <KEYWORD2>__wakeup</KEYWORD2>\r
+\r
+ <!-- more constructs -->\r
+ <KEYWORD4>parent</KEYWORD4>\r
+ <KEYWORD4>self</KEYWORD4>\r
+ <KEYWORD4>stdClass</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="KEYWORDS_VISIBILITY">\r
+ <KEYWORDS>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <!-- Javascript -->\r
+ <RULES SET="JAVASCRIPT_OPENTAG" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="JAVASCRIPT">></SEQ>\r
+ <IMPORT DELEGATE="TO_LITERAL+PHP"/> <!-- handle PHP in <script> tag -->\r
+ <IMPORT DELEGATE="html::TAGS" /> <!-- handle e.g. 'style="width:1px"' -->\r
+ </RULES>\r
+\r
+\r
+ <!-- Handle literals, but allow switching to PHP therein, e.g. from html TAGS -->\r
+ <RULES SET="TO_LITERAL+PHP">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL1+PHP">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL2" DELEGATE="LITERAL2+PHP">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="JAVASCRIPT" DEFAULT="MARKUP" ESCAPE="\">\r
+ <IMPORT DELEGATE="TO_LITERAL+PHP"/>\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ <IMPORT DELEGATE="javascript::MAIN"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Handle PHP tags in LITERAL1, e.g. in the "type" attribute of a <SCRIPT> tag -->\r
+ <RULES SET="LITERAL1+PHP" DEFAULT="LITERAL1">\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Handle PHP tags in LITERAL2, e.g. in the "type" attribute of a <SCRIPT> tag -->\r
+ <RULES SET="LITERAL2+PHP" DEFAULT="LITERAL2">\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Handle PHP tags in comments -->\r
+ <RULES SET="COMMENT1+PHP" DEFAULT="COMMENT1">\r
+ <IMPORT DELEGATE="TO_PHP"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Go to PHP mode again -->\r
+ <RULES SET="TO_PHP" DEFAULT="MARKUP">\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><?php</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><?</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="PHP">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+\r
+ <!-- Extended label block, also uses "|" as seperator -->\r
+ <RULES SET="PHPDOC_LABEL_BLOCK_EXTENDED" DEFAULT="COMMENT3"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+\r
+ <!-- Delegate back (gets not caught from PHPDOC_LABEL_BLOCK): -->\r
+ <IMPORT DELEGATE="PHPDOC_DELEGATE_LABEL_BLOCKS" />\r
+ <IMPORT DELEGATE="PHPDOC_LABEL_BLOCK" />\r
+\r
+ <IMPORT DELEGATE="PHPDOC_LABEL_KEYWORDS" />\r
+ <IMPORT DELEGATE="PHPDOC" />\r
+ <IMPORT DELEGATE="PHPDOC_VAR" />\r
+ <IMPORT DELEGATE="PHP_BASIC_KEYWORD1" />\r
+ </RULES>\r
+\r
+ <!-- A block after a label tag like "@see" -->\r
+ <RULES SET="PHPDOC_LABEL_BLOCK" DEFAULT="COMMENT3"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+\r
+ <!-- Delegate back -->\r
+ <!-- <IMPORT DELEGATE="PHPDOC_DELEGATE_LABEL_BLOCKS" /> -->\r
+\r
+ <SEQ TYPE="COMMENT3" DELEGATE="PHPDOC">*/</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION">()</MARK_PREVIOUS>\r
+\r
+ <IMPORT DELEGATE="PHPDOC_LABEL_KEYWORDS" />\r
+ <IMPORT DELEGATE="PHPDOC" />\r
+ <IMPORT DELEGATE="PHPDOC_VAR" />\r
+ <IMPORT DELEGATE="PHP_BASIC_KEYWORD1" />\r
+\r
+ <!-- Taken from: http://php.net/manual/en/language.types.php -->\r
+ <KEYWORDS>\r
+ <OPERATOR>array</OPERATOR>\r
+ <OPERATOR>bool</OPERATOR>\r
+ <OPERATOR>boolean</OPERATOR>\r
+ <OPERATOR>callback</OPERATOR>\r
+ <OPERATOR>double</OPERATOR>\r
+ <OPERATOR>float</OPERATOR>\r
+ <OPERATOR>int</OPERATOR>\r
+ <OPERATOR>integer</OPERATOR>\r
+ <OPERATOR>mixed</OPERATOR>\r
+ <OPERATOR>number</OPERATOR>\r
+ <OPERATOR>NULL</OPERATOR>\r
+ <OPERATOR>object</OPERATOR>\r
+ <OPERATOR>real</OPERATOR><!-- not listed, but valid in a typecast -->\r
+ <OPERATOR>resource</OPERATOR>\r
+ <OPERATOR>string</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+ <!-- A block after @access -->\r
+ <RULES SET="PHPDOC_LABEL_BLOCK_ACCESS" DEFAULT="COMMENT3"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+ <IMPORT DELEGATE="KEYWORDS_VISIBILITY" />\r
+\r
+ <!-- Delegate back: -->\r
+ <IMPORT DELEGATE="PHPDOC_DELEGATE_LABEL_BLOCKS"/>\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="PHPDOC_BLOCK" DEFAULT="COMMENT3"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+ <!-- highlight function/method name as token type FUNCTION -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION">()</MARK_PREVIOUS>\r
+\r
+ <!-- Delegate back: -->\r
+ <IMPORT DELEGATE="PHPDOC_DELEGATE_LABEL_BLOCKS"/>\r
+ <IMPORT DELEGATE="PHPDOC"/>\r
+ <IMPORT DELEGATE="PHPDOC_VAR"/>\r
+ </RULES>\r
+\r
+\r
+ <!-- Helper for class references in rule PHPDOC -->\r
+ <RULES SET="OBJECT_PHPDOC">\r
+ <SPAN TYPE="OPERATOR" DELEGATE="PHP">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ <SEQ_REGEXP TYPE="FUNCTION" HASH_CHAR="->" DELEGATE="PHPDOC">->\w+\s*(?=\()</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="->" DELEGATE="OBJECT_PHPDOC">->\w+(?=(\[[\s\w'"]+\])?->)</SEQ_REGEXP>\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="->" DELEGATE="PHPDOC">->\w*</SEQ_REGEXP>\r
+\r
+ <IMPORT DELEGATE="PHP_KEYWORDS" />\r
+ </RULES>\r
+\r
+\r
+ <!-- Almost like PHP_VAR - but with another delegate -->\r
+ <RULES SET="PHPDOC_VAR">\r
+ <!-- (Class-)Variables -->\r
+ <SEQ_REGEXP TYPE="KEYWORD4" HASH_CHAR="$" DELEGATE="OBJECT_PHPDOC">\$\w+(?=(\[[\s\w'"]+\])?->)</SEQ_REGEXP>\r
+\r
+ <MARK_PREVIOUS TYPE="KEYWORD4">::</MARK_PREVIOUS>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD4">\$\w+(?=\s*=\s*(&\s*)?new)</SEQ_REGEXP>\r
+\r
+ <!-- Normal variables -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+\r
+ <!-- phpdoc / phpDocumentor label tags -->\r
+ <RULES SET="PHPDOC_LABEL_KEYWORDS">\r
+ <!-- {{{\r
+ Some (@global, @param, ..) are here just for complete-word -->\r
+ <KEYWORDS>\r
+ <LABEL>@abstract</LABEL>\r
+ <LABEL>@access</LABEL>\r
+ <LABEL>@author</LABEL>\r
+ <LABEL>@category</LABEL>\r
+ <LABEL>@const</LABEL>\r
+ <LABEL>@constant</LABEL>\r
+ <LABEL>@copyright</LABEL>\r
+ <LABEL>@deprecated</LABEL>\r
+ <LABEL>@example</LABEL>\r
+ <LABEL>@filesource</LABEL>\r
+ <LABEL>@final</LABEL>\r
+ <LABEL>@global</LABEL>\r
+ <LABEL>@ignore</LABEL>\r
+ <LABEL>@internal</LABEL>\r
+ <LABEL>@license</LABEL>\r
+ <LABEL>@link</LABEL>\r
+ <LABEL>@name</LABEL>\r
+ <LABEL>@package</LABEL>\r
+ <LABEL>@param</LABEL>\r
+ <LABEL>@return</LABEL>\r
+ <LABEL>@see</LABEL>\r
+ <LABEL>@since</LABEL>\r
+ <LABEL>@static</LABEL>\r
+ <LABEL>@staticvar</LABEL>\r
+ <LABEL>@subpackage</LABEL>\r
+ <LABEL>@todo</LABEL>\r
+ <LABEL>@tutorial</LABEL>\r
+ <LABEL>@uses</LABEL>\r
+ <LABEL>@var</LABEL>\r
+ <LABEL>@version</LABEL>\r
+ </KEYWORDS>\r
+ <!-- }}} -->\r
+ </RULES>\r
+\r
+\r
+ <!-- Delegate to PHPDOC_LABEL_BLOCK[_EXTENDED|_ACCESS] or back to PHPDOC -->\r
+ <RULES SET="PHPDOC_DELEGATE_LABEL_BLOCKS" DEFAULT="COMMENT3">\r
+ <!-- Delegate empty line (just an asterisk) back to PHPDOC -->\r
+ <SEQ_REGEXP TYPE="COMMENT3" AT_WHITESPACE_END="TRUE" DELEGATE="PHPDOC" HASH_CHAR="*">\*\s*$</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="LABEL" HASH_CHAR="@"\r
+ DELEGATE="PHPDOC_LABEL_BLOCK_EXTENDED">@(global|param|return|staticvar|var)</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP TYPE="LABEL" HASH_CHAR="@"\r
+ DELEGATE="PHPDOC_LABEL_BLOCK">@(deprecated|see|uses)</SEQ_REGEXP>\r
+\r
+ <SEQ TYPE="LABEL" DELEGATE="PHPDOC_LABEL_BLOCK_ACCESS">@access</SEQ>\r
+\r
+ <!-- Delegate the remaining phpdoc tags back to PHPDOC_BLOCK: -->\r
+ <SEQ_REGEXP TYPE="LABEL" HASH_CHAR="@"\r
+ DELEGATE="PHPDOC_BLOCK">@(abstract|author|category|const|constant|copyright|example|filesource|final|ignore|internal|license|link|name|package|since|static|subpackage|todo|tutorial|version)</SEQ_REGEXP>\r
+ </RULES>\r
+\r
+\r
+ <!-- The main phpdoc rules -->\r
+ <RULES SET="PHPDOC" DEFAULT="COMMENT3" IGNORE_CASE="TRUE"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[0-9a-f]+|([0-9]*\.)?[0-9]+(e[+-]?[0-9]+)?)">\r
+ <!-- HTML comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="PHPDOC_BLOCK">\r
+ <BEGIN>{@internal</BEGIN>\r
+ <END>}}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="PHPDOC_BLOCK">\r
+ <BEGIN>{@link</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- PHPdoc allows this -->\r
+ <SEQ TYPE="COMMENT3"><<</SEQ>\r
+ <SEQ TYPE="COMMENT3"><=</SEQ>\r
+ <SEQ TYPE="COMMENT3">< </SEQ>\r
+\r
+ <SPAN DELEGATE="PHP" TYPE="MARKUP">\r
+ <BEGIN><code></BEGIN>\r
+ <END></code></END>\r
+ </SPAN>\r
+\r
+ <!-- HTML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS" NO_LINE_BREAK="TRUE">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- Imports: -->\r
+ <IMPORT DELEGATE="PHPDOC_DELEGATE_LABEL_BLOCKS" />\r
+ <IMPORT DELEGATE="PHPDOC_LABEL_KEYWORDS" />\r
+ <IMPORT DELEGATE="PHPDOC_VAR" />\r
+ <IMPORT DELEGATE="PHP_BASIC_KEYWORD1" />\r
+ </RULES>\r
+\r
+\r
+ <RULES SET="INVALID_LT" DEFAULT="INVALID">\r
+ <SEQ TYPE="INVALID"><</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- Pike mode, contributed by\r
+ Marco G?tze, <gomar@gmx.net> -->\r
+<!-- Small fixes and autodoc support contributed by\r
+ Peter Lundqvist <peterl@update.uu.se> -->\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="*/"/>\r
+ <PROPERTY NAME="lineComment" VALUE="//"/>\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*`"/>\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{"/>\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}"/>\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*(((if|(for(each)?)|while|catch|gauge)\s*\(|(do|else)\s*|else\s+if\s*\()[^{;]*)"/>\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false"/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0x[\p{XDigit}]+|[\p{Digit}]+|0[bB][01]+)[lLdDfF]?">\r
+\r
+ <!-- comments -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SEQ TYPE="INVALID">*/</SEQ>\r
+\r
+ <!-- Autodoc comment -->\r
+ <EOL_SPAN TYPE="COMMENT1" DELEGATE="AUTODOC">//!</EOL_SPAN>\r
+ <!-- C++ line comment -->\r
+ <EOL_SPAN TYPE="COMMENT1" DELEGATE="COMMENT">//</EOL_SPAN>\r
+\r
+ <!-- string, char literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="STRING_LITERAL">\r
+ <BEGIN>#"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- preprocessor statements -->\r
+ <SEQ_REGEXP TYPE="KEYWORD2" HASH_CHAR="#" AT_LINE_START="TRUE">#.*?(?=($|/\*|//))</SEQ_REGEXP>\r
+\r
+ <!-- operators -->\r
+ <SEQ TYPE="OPERATOR">({</SEQ>\r
+ <SEQ TYPE="OPERATOR">})</SEQ>\r
+ <SEQ TYPE="OPERATOR">([</SEQ>\r
+ <SEQ TYPE="OPERATOR">])</SEQ>\r
+ <SEQ TYPE="OPERATOR">(<</SEQ>\r
+ <SEQ TYPE="OPERATOR">>)</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">`</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+\r
+ <!-- function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- type modifiers -->\r
+ <KEYWORD1>constant</KEYWORD1>\r
+ <KEYWORD1>extern</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>inline</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>nomask</KEYWORD1>\r
+ <KEYWORD1>optional</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>variant</KEYWORD1>\r
+\r
+ <!-- types -->\r
+ <KEYWORD3>array</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>function</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>mapping</KEYWORD3>\r
+ <KEYWORD3>mixed</KEYWORD3>\r
+ <KEYWORD3>multiset</KEYWORD3>\r
+ <KEYWORD3>object</KEYWORD3>\r
+ <KEYWORD3>program</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>void</KEYWORD3>\r
+\r
+ <!-- flow control and block-introducing keywords -->\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>gauge</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>lambda</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>sscanf</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- special instructions -->\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <KEYWORD2>inherit</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="COMMENT" IGNORE_CASE="FALSE" DEFAULT="COMMENT1">\r
+ <KEYWORDS>\r
+ <COMMENT2>FIXME</COMMENT2>\r
+ <COMMENT2>XXX</COMMENT2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="AUTODOC" IGNORE_CASE="TRUE" DEFAULT="COMMENT1">\r
+\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="MAIN" MATCH_TYPE="CONTEXT">@decl</EOL_SPAN>\r
+\r
+ <!-- XML tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN>@xml{</BEGIN>\r
+ <END>@}</END>\r
+ </SPAN>\r
+ <!-- Cross references -->\r
+ <SPAN TYPE="FUNCTION" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>@[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Brace keywords -->\r
+ <SEQ_REGEXP TYPE="FUNCTION" HASH_CHAR="@">@(b|i|u|tt|url|pre|ref|code|expr|image)?(\{.*@\})</SEQ_REGEXP>\r
+\r
+ <!-- Attempt to get syntax highlighting of @decl-ed functions\r
+ inside of the autodoc-rule.\r
+\r
+ It works - but jEdit 4.1 has problems keeping it highlighted\r
+ (the syntax highlighting works depending on how you travel\r
+ past the @decl-ed region).\r
+ Can't figure aout how to to proper coloring of the @decl\r
+ keyword either.\r
+\r
+ If there are problems with what regions are highlighted -\r
+ try to uncomment this first.\r
+ -->\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="MAIN">@decl</EOL_SPAN>\r
+\r
+ <KEYWORDS>\r
+ <!-- Meta keywords -->\r
+ <LABEL>@appears</LABEL>\r
+ <LABEL>@belongs</LABEL>\r
+ <LABEL>@class</LABEL>\r
+ <LABEL>@endclass</LABEL>\r
+ <LABEL>@example</LABEL>\r
+ <LABEL>@module</LABEL>\r
+ <LABEL>@endmodule</LABEL>\r
+ <LABEL>@namespace</LABEL>\r
+ <LABEL>@endnamespace</LABEL>\r
+ <!-- <LABEL>@decl</LABEL>\r
+ -->\r
+\r
+ <!-- Single keywords -->\r
+ <LABEL>@deprecated</LABEL>\r
+\r
+ <!-- Delimiter keywords -->\r
+ <LABEL>@note</LABEL>\r
+ <LABEL>@example</LABEL>\r
+ <LABEL>@bugs</LABEL>\r
+ <LABEL>@returns</LABEL>\r
+ <LABEL>@throws</LABEL>\r
+ <LABEL>@param</LABEL>\r
+ <LABEL>@seealso</LABEL>\r
+ <LABEL>@fixme</LABEL>\r
+ <LABEL>@constant</LABEL>\r
+ <LABEL>@member</LABEL>\r
+ <LABEL>@index</LABEL>\r
+ <LABEL>@elem</LABEL>\r
+ <LABEL>@value</LABEL>\r
+ <LABEL>@type</LABEL>\r
+ <LABEL>@item</LABEL>\r
+\r
+ <!-- Container keywords -->\r
+ <LABEL>@section</LABEL>\r
+ <LABEL>@mapping</LABEL>\r
+ <LABEL>@endmapping</LABEL>\r
+ <LABEL>@multiset</LABEL>\r
+ <LABEL>@endmultiset</LABEL>\r
+ <LABEL>@array</LABEL>\r
+ <LABEL>@endarray</LABEL>\r
+ <LABEL>@int</LABEL>\r
+ <LABEL>@endint</LABEL>\r
+ <LABEL>@string</LABEL>\r
+ <LABEL>@endstring</LABEL>\r
+ <LABEL>@mixed</LABEL>\r
+ <LABEL>@endmixed</LABEL>\r
+ <LABEL>@dl</LABEL>\r
+ <LABEL>@enddl</LABEL>\r
+ <LABEL>@ol</LABEL>\r
+ <LABEL>@endol</LABEL>\r
+ <LABEL>@ul</LABEL>\r
+ <LABEL>@endol</LABEL>\r
+\r
+ <!-- Special keywords -->\r
+ <LABEL>@ignore</LABEL>\r
+ <LABEL>@endignore</LABEL>\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="STRING_LITERAL" ESCAPE="\" IGNORE_CASE="TRUE" DEFAULT="LITERAL1">\r
+ <SEQ_REGEXP TYPE="LITERAL2" HASH_CHAR="%">%([^ a-z]*[a-z]|\[[^\]]*\])</SEQ_REGEXP>\r
+ <SEQ TYPE="COMMENT2">DEBUG:</SEQ>\r
+ </RULES>\r
+</MODE>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*(.*THEN|ELSE|LOOP).*" />\r
+ <PROPERTY NAME="unindentNextLines" VALUE="^\s*(ELSE|ELSIF|END IF|END LOOP).*" />\r
+ <PROPERTY NAME="unindentThisLine" VALUE="^\s*(ELSE|ELSIF|END IF|END LOOP).*" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LABEL">\r
+ <BEGIN>/*+</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="LABEL">--+</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">REM </EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">REMARK</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!></SEQ>\r
+ <SEQ TYPE="OPERATOR">!<</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <MARK_FOLLOWING AT_LINE_START="TRUE" AT_WHITESPACE_END="TRUE"\r
+ TYPE="LABEL">@@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING AT_LINE_START="TRUE"\r
+ AT_WHITESPACE_END="TRUE" TYPE="LABEL">@</MARK_FOLLOWING>\r
+ <EOL_SPAN AT_LINE_START="TRUE" DELEGATE="shellscript::MAIN">!</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE"\r
+ DELEGATE="shellscript::MAIN">host</EOL_SPAN>\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <!-- reserved words -->\r
+ <KEYWORD1>ABORT</KEYWORD1>\r
+ <KEYWORD1>ACCESS</KEYWORD1>\r
+ <KEYWORD1>ACCEPT</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ALTER</KEYWORD1>\r
+ <KEYWORD1>ARRAY</KEYWORD1>\r
+ <KEYWORD1>ARRAY_LEN</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>ASC</KEYWORD1>\r
+ <KEYWORD1>ASSERT</KEYWORD1>\r
+ <KEYWORD1>ASSIGN</KEYWORD1>\r
+ <KEYWORD1>AT</KEYWORD1>\r
+ <KEYWORD1>AUDIT</KEYWORD1>\r
+ <KEYWORD1>AUTHORIZATION</KEYWORD1>\r
+ <KEYWORD1>AVG</KEYWORD1>\r
+ <KEYWORD1>BASE_TABLE</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>BINARY_INTEGER</KEYWORD1>\r
+ <KEYWORD1>BODY</KEYWORD1>\r
+ <KEYWORD1>BREAK</KEYWORD1>\r
+ <KEYWORD1>BREAKS</KEYWORD1>\r
+ <KEYWORD1>BTITLE</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>CENTER</KEYWORD1>\r
+ <KEYWORD1>CHAR</KEYWORD1>\r
+ <KEYWORD1>CHAR_BASE</KEYWORD1>\r
+ <KEYWORD1>CHECK</KEYWORD1>\r
+ <KEYWORD1>CLEAR</KEYWORD1>\r
+ <KEYWORD1>CLOSE</KEYWORD1>\r
+ <KEYWORD1>CLUSTER</KEYWORD1>\r
+ <KEYWORD1>CLUSTERS</KEYWORD1>\r
+ <KEYWORD1>CMPVAR</KEYWORD1>\r
+ <KEYWORD1>COL</KEYWORD1>\r
+ <KEYWORD1>COLAUTH</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ <KEYWORD1>COLUMNS</KEYWORD1>\r
+ <KEYWORD1>COMMENT</KEYWORD1>\r
+ <KEYWORD1>COMMIT</KEYWORD1>\r
+ <KEYWORD1>COMPRESS</KEYWORD1>\r
+ <KEYWORD1>COMPUTE</KEYWORD1>\r
+ <KEYWORD1>CONSTANT</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINT</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>COUNT</KEYWORD1>\r
+ <KEYWORD1>CREATE</KEYWORD1>\r
+ <KEYWORD1>CURRENT</KEYWORD1>\r
+ <KEYWORD1>CURRVAL</KEYWORD1>\r
+ <KEYWORD1>CURSOR</KEYWORD1>\r
+ <KEYWORD1>DATABASE</KEYWORD1>\r
+ <KEYWORD1>DATA_BASE</KEYWORD1>\r
+ <KEYWORD1>DATE</KEYWORD1>\r
+ <KEYWORD1>DBA</KEYWORD1>\r
+ <KEYWORD1>DEBUGOFF</KEYWORD1>\r
+ <KEYWORD1>DEBUGON</KEYWORD1>\r
+ <KEYWORD1>DECLARE</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>DEFINITION</KEYWORD1>\r
+ <KEYWORD1>DELAY</KEYWORD1>\r
+ <KEYWORD1>DELETE</KEYWORD1>\r
+ <KEYWORD1>DESC</KEYWORD1>\r
+ <KEYWORD1>EXPLAIN</KEYWORD1>\r
+ <KEYWORD1>DIGITS</KEYWORD1>\r
+ <KEYWORD1>DISPOSE</KEYWORD1>\r
+ <KEYWORD1>DISTINCT</KEYWORD1>\r
+ <KEYWORD1>DO</KEYWORD1>\r
+ <KEYWORD1>DROP</KEYWORD1>\r
+ <KEYWORD1>DUMP</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>ELSIF</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ENTRY</KEYWORD1>>\r
+ <KEYWORD1>ERRORS</KEYWORD1>\r
+ <KEYWORD1>EXCEPTION</KEYWORD1>\r
+ <KEYWORD1>EXCEPTION_INIT</KEYWORD1>\r
+ <KEYWORD1>EXCLUSIVE</KEYWORD1>\r
+ <KEYWORD1>EXECUTE</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>EXTERNAL</KEYWORD1>\r
+ <KEYWORD1>FALSE</KEYWORD1>\r
+ <KEYWORD1>FETCH</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FOREIGN</KEYWORD1>\r
+ <KEYWORD1>FORM</KEYWORD1>\r
+ <KEYWORD1>FORMAT</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+ <KEYWORD1>GENERIC</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>GRANT</KEYWORD1>\r
+ <KEYWORD1>GREATEST</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>HAVING</KEYWORD1>\r
+ <KEYWORD1>HEADING</KEYWORD1>\r
+ <KEYWORD1>IDENTIFIED</KEYWORD1>\r
+ <KEYWORD1>IDENTITYCOL</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>IMMEDIATE</KEYWORD1>\r
+ <KEYWORD1>INCREMENT</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>INDEXES</KEYWORD1>\r
+ <KEYWORD1>INDICATOR</KEYWORD1>\r
+ <KEYWORD1>INITIAL</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INTERFACE</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>IS</KEYWORD1>\r
+ <KEYWORD1>KEY</KEYWORD1>\r
+ <KEYWORD1>LEAST</KEYWORD1>\r
+ <KEYWORD1>LEVEL</KEYWORD1>\r
+ <KEYWORD1>LIMITED</KEYWORD1>\r
+ <KEYWORD1>LOCK</KEYWORD1>\r
+ <KEYWORD1>LONG</KEYWORD1>\r
+ <KEYWORD1>LOOP</KEYWORD1>\r
+ <KEYWORD1>MATCHED</KEYWORD1>\r
+ <KEYWORD1>MAX</KEYWORD1>\r
+ <KEYWORD1>MAXEXTENTS</KEYWORD1>\r
+ <KEYWORD1>MERGE</KEYWORD1>\r
+ <KEYWORD1>MEMBER</KEYWORD1>\r
+ <KEYWORD1>MIN</KEYWORD1>\r
+ <KEYWORD1>MINUS</KEYWORD1>\r
+ <KEYWORD1>MLSLABEL</KEYWORD1>\r
+ <KEYWORD1>MOD</KEYWORD1>\r
+ <KEYWORD1>MODIFY</KEYWORD1>\r
+ <KEYWORD1>MORE</KEYWORD1>\r
+ <KEYWORD1>NATURAL</KEYWORD1>\r
+ <KEYWORD1>NATURALN</KEYWORD1>\r
+ <KEYWORD1>NEW</KEYWORD1>\r
+ <KEYWORD1>NEW_VALUE</KEYWORD1>\r
+ <KEYWORD1>NEXT</KEYWORD1>\r
+ <KEYWORD1>NEXTVAL</KEYWORD1>\r
+ <KEYWORD1>NOAUDIT</KEYWORD1>\r
+ <KEYWORD1>NOCOMPRESS</KEYWORD1>\r
+ <KEYWORD1>NOPRINT</KEYWORD1>\r
+ <KEYWORD1>NOWAIT</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>NUMBER</KEYWORD1>\r
+ <KEYWORD1>NUMBER_BASE</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>OFFLINE</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>OFF</KEYWORD1>\r
+ <KEYWORD1>ONLINE</KEYWORD1>\r
+ <KEYWORD1>OPEN</KEYWORD1>\r
+ <KEYWORD1>OPTION</KEYWORD1>\r
+ <KEYWORD1>ORDER</KEYWORD1>\r
+ <KEYWORD1>ORGANIZATION</KEYWORD1>\r
+ <KEYWORD1>OTHERS</KEYWORD1>\r
+ <KEYWORD1>OUT</KEYWORD1>\r
+ <KEYWORD1>PACKAGE</KEYWORD1>\r
+ <KEYWORD1>PAGE</KEYWORD1>\r
+ <KEYWORD1>PARTITION</KEYWORD1>\r
+ <KEYWORD1>PCTFREE</KEYWORD1>\r
+ <KEYWORD1>PCTINCREASE</KEYWORD1>\r
+ <KEYWORD1>PLAN</KEYWORD1>\r
+ <KEYWORD1>POSITIVE</KEYWORD1>\r
+ <KEYWORD1>POSITIVEN</KEYWORD1>\r
+ <KEYWORD1>PRAGMA</KEYWORD1>\r
+ <KEYWORD1>PRINT</KEYWORD1>\r
+ <KEYWORD1>PRIMARY</KEYWORD1>\r
+ <KEYWORD1>PRIOR</KEYWORD1>\r
+ <KEYWORD1>PRIVATE</KEYWORD1>\r
+ <KEYWORD1>PRIVILEGES</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>PROMPT</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>QUOTED_IDENTIFIER</KEYWORD1>\r
+ <KEYWORD1>RAISE</KEYWORD1>\r
+ <KEYWORD1>RANGE</KEYWORD1>\r
+ <KEYWORD1>RAW</KEYWORD1>\r
+ <KEYWORD1>RECORD</KEYWORD1>\r
+ <KEYWORD1>REF</KEYWORD1>\r
+ <KEYWORD1>REFERENCES</KEYWORD1>\r
+ <KEYWORD1>RELEASE</KEYWORD1>\r
+ <KEYWORD1>REMR</KEYWORD1>\r
+ <KEYWORD1>RENAME</KEYWORD1>\r
+ <KEYWORD1>RESOURCE</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>REVERSE</KEYWORD1>\r
+ <KEYWORD1>REVOKE</KEYWORD1>\r
+ <KEYWORD1>ROLLBACK</KEYWORD1>\r
+ <KEYWORD1>ROW</KEYWORD1>\r
+ <KEYWORD1>ROWID</KEYWORD1>\r
+ <KEYWORD1>ROWLABEL</KEYWORD1>\r
+ <KEYWORD1>ROWNUM</KEYWORD1>\r
+ <KEYWORD1>ROWS</KEYWORD1>\r
+ <KEYWORD1>ROWTYPE</KEYWORD1>\r
+ <KEYWORD1>RUN</KEYWORD1>\r
+ <KEYWORD1>SAVEPOINT</KEYWORD1>\r
+ <KEYWORD1>SCHEMA</KEYWORD1>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>SEPERATE</KEYWORD1>\r
+ <KEYWORD1>SEQUENCE</KEYWORD1>\r
+ <KEYWORD1>SESSION</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SHARE</KEYWORD1>\r
+ <KEYWORD1>SHOW</KEYWORD1>\r
+ <KEYWORD1>SIGNTYPE</KEYWORD1>\r
+ <KEYWORD1>SKIP</KEYWORD1>\r
+ <KEYWORD1>SPACE</KEYWORD1>\r
+ <KEYWORD1>SPOOL</KEYWORD1>\r
+ <NULL>.SQL</NULL> <!-- for 'SPOOL some.sql;' stuff -->\r
+ <KEYWORD1>SQL</KEYWORD1>\r
+ <KEYWORD1>SQLCODE</KEYWORD1>\r
+ <KEYWORD1>SQLERRM</KEYWORD1>\r
+ <KEYWORD1>SQLERROR</KEYWORD1>\r
+ <KEYWORD1>STATEMENT</KEYWORD1>\r
+ <KEYWORD1>STDDEV</KEYWORD1>\r
+ <KEYWORD1>STORAGE</KEYWORD1>\r
+ <KEYWORD1>SUBTYPE</KEYWORD1>\r
+ <KEYWORD1>SUCCESSFULL</KEYWORD1>\r
+ <KEYWORD1>SUM</KEYWORD1>\r
+ <KEYWORD1>SYNONYM</KEYWORD1>\r
+ <KEYWORD1>SYSDATE</KEYWORD1>\r
+ <KEYWORD1>TABAUTH</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TABLES</KEYWORD1>\r
+ <KEYWORD1>TABLESPACE</KEYWORD1>\r
+ <KEYWORD1>TASK</KEYWORD1>\r
+ <KEYWORD1>TERMINATE</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TRIGGER</KEYWORD1>\r
+ <KEYWORD1>TRUE</KEYWORD1>\r
+ <KEYWORD1>TRUNCATE</KEYWORD1>\r
+ <KEYWORD1>TTITLE</KEYWORD1>\r
+ <KEYWORD1>TYPE</KEYWORD1>\r
+ <KEYWORD1>UID</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>UNIQUE</KEYWORD1>\r
+ <KEYWORD1>UNDEFINE</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>UPDATETEXT</KEYWORD1>\r
+ <KEYWORD1>USE</KEYWORD1>\r
+ <KEYWORD1>USER</KEYWORD1>\r
+ <KEYWORD1>USING</KEYWORD1>\r
+ <KEYWORD1>VALIDATE</KEYWORD1>\r
+ <KEYWORD1>VALUES</KEYWORD1>\r
+ <KEYWORD1>VARIANCE</KEYWORD1>\r
+ <KEYWORD1>VIEW</KEYWORD1>\r
+ <KEYWORD1>VIEWS</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHENEVER</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WORK</KEYWORD1>\r
+ <KEYWORD1>WRITE</KEYWORD1>\r
+ <KEYWORD1>XOR</KEYWORD1>\r
+\r
+ <!-- data types -->\r
+ <KEYWORD1>binary</KEYWORD1>\r
+ <KEYWORD1>bit</KEYWORD1>\r
+ <KEYWORD1>blob</KEYWORD1>\r
+ <KEYWORD1>boolean</KEYWORD1>\r
+ <KEYWORD1>char</KEYWORD1>\r
+ <KEYWORD1>character</KEYWORD1>\r
+ <KEYWORD1>datetime</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>image</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <KEYWORD1>integer</KEYWORD1>\r
+ <KEYWORD1>money</KEYWORD1>\r
+ <KEYWORD1>numeric</KEYWORD1>\r
+ <KEYWORD1>nchar</KEYWORD1>\r
+ <KEYWORD1>nvarchar</KEYWORD1>\r
+ <KEYWORD1>ntext</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>pls_integer</KEYWORD1>\r
+ <KEYWORD1>real</KEYWORD1>\r
+ <KEYWORD1>smalldatetime</KEYWORD1>\r
+ <KEYWORD1>smallint</KEYWORD1>\r
+ <KEYWORD1>smallmoney</KEYWORD1>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>timestamp</KEYWORD1>\r
+ <KEYWORD1>tinyint</KEYWORD1>\r
+ <KEYWORD1>uniqueidentifier</KEYWORD1>\r
+ <KEYWORD1>varbinary</KEYWORD1>\r
+ <KEYWORD1>varchar</KEYWORD1>\r
+ <KEYWORD1>varchar2</KEYWORD1>\r
+ <KEYWORD1>varray</KEYWORD1>\r
+\r
+ <!-- system functions -->\r
+ <KEYWORD2>ABS</KEYWORD2>\r
+ <KEYWORD2>ACOS</KEYWORD2>\r
+ <KEYWORD2>ADD_MONTHS</KEYWORD2>\r
+ <KEYWORD2>ASCII</KEYWORD2>\r
+ <KEYWORD2>ASIN</KEYWORD2>\r
+ <KEYWORD2>ATAN</KEYWORD2>\r
+ <KEYWORD2>ATAN2</KEYWORD2>\r
+ <KEYWORD2>BITAND</KEYWORD2>\r
+ <KEYWORD2>CEIL</KEYWORD2>\r
+ <KEYWORD2>CHARTOROWID</KEYWORD2>\r
+ <KEYWORD2>CHR</KEYWORD2>\r
+ <KEYWORD2>CONCAT</KEYWORD2>\r
+ <KEYWORD2>CONVERT</KEYWORD2>\r
+ <KEYWORD2>COS</KEYWORD2>\r
+ <KEYWORD2>COSH</KEYWORD2>\r
+ <KEYWORD2>DECODE</KEYWORD2>\r
+ <KEYWORD2>DEFINE</KEYWORD2>\r
+ <KEYWORD2>DUAL</KEYWORD2>\r
+ <KEYWORD2>FLOOR</KEYWORD2>\r
+ <KEYWORD2>HEXTORAW</KEYWORD2>\r
+ <KEYWORD2>INITCAP</KEYWORD2>\r
+ <KEYWORD2>INSTR</KEYWORD2>\r
+ <KEYWORD2>INSTRB</KEYWORD2>\r
+ <KEYWORD2>LAST_DAY</KEYWORD2>\r
+ <KEYWORD2>LENGTH</KEYWORD2>\r
+ <KEYWORD2>LENGTHB</KEYWORD2>\r
+ <KEYWORD2>LN</KEYWORD2>\r
+ <KEYWORD2>LOG</KEYWORD2>\r
+ <KEYWORD2>LOWER</KEYWORD2>\r
+ <KEYWORD2>LPAD</KEYWORD2>\r
+ <KEYWORD2>LTRIM</KEYWORD2>\r
+ <KEYWORD2>MOD</KEYWORD2>\r
+ <KEYWORD2>MONTHS_BETWEEN</KEYWORD2>\r
+ <KEYWORD2>NEW_TIME</KEYWORD2>\r
+ <KEYWORD2>NEXT_DAY</KEYWORD2>\r
+ <KEYWORD2>NLSSORT</KEYWORD2>\r
+ <KEYWORD2>NSL_INITCAP</KEYWORD2>\r
+ <KEYWORD2>NLS_LOWER</KEYWORD2>\r
+ <KEYWORD2>NLS_UPPER</KEYWORD2>\r
+ <KEYWORD2>NVL</KEYWORD2>\r
+ <KEYWORD2>POWER</KEYWORD2>\r
+ <KEYWORD2>RAWTOHEX</KEYWORD2>\r
+ <KEYWORD2>REPLACE</KEYWORD2>\r
+ <KEYWORD2>ROUND</KEYWORD2>\r
+ <KEYWORD2>ROWIDTOCHAR</KEYWORD2>\r
+ <KEYWORD2>RPAD</KEYWORD2>\r
+ <KEYWORD2>RTRIM</KEYWORD2>\r
+ <KEYWORD2>SIGN</KEYWORD2>\r
+ <KEYWORD2>SOUNDEX</KEYWORD2>\r
+ <KEYWORD2>SIN</KEYWORD2>\r
+ <KEYWORD2>SINH</KEYWORD2>\r
+ <KEYWORD2>SQRT</KEYWORD2>\r
+ <KEYWORD2>SUBSTR</KEYWORD2>\r
+ <KEYWORD2>SUBSTRB</KEYWORD2>\r
+ <KEYWORD2>TAN</KEYWORD2>\r
+ <KEYWORD2>TANH</KEYWORD2>\r
+ <KEYWORD2>TO_CHAR</KEYWORD2>\r
+ <KEYWORD2>TO_DATE</KEYWORD2>\r
+ <KEYWORD2>TO_MULTIBYTE</KEYWORD2>\r
+ <KEYWORD2>TO_NUMBER</KEYWORD2>\r
+ <KEYWORD2>TO_SINGLE_BYTE</KEYWORD2>\r
+ <KEYWORD2>TRANSLATE</KEYWORD2>\r
+ <KEYWORD2>TRUNC</KEYWORD2>\r
+ <KEYWORD2>UPPER</KEYWORD2>\r
+\r
+ <!-- operators -->\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>BETWEEN</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>CONNECT</KEYWORD1>\r
+ <KEYWORD1>EXISTS</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INTERSECT</KEYWORD1>\r
+ <KEYWORD1>LIKE</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>START</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>NOTFOUND</KEYWORD1>\r
+ <KEYWORD1>ISOPEN</KEYWORD1>\r
+ <KEYWORD1>JOIN</KEYWORD1>\r
+ <KEYWORD1>LEFT</KEYWORD1>\r
+ <KEYWORD1>RIGHT</KEYWORD1>\r
+ <KEYWORD1>FULL</KEYWORD1>\r
+ <KEYWORD1>OUTER</KEYWORD1>\r
+ <KEYWORD1>CROSS</KEYWORD1>\r
+\r
+ <!-- Some common packages -->\r
+ <KEYWORD3>DBMS_SQL</KEYWORD3>\r
+ <FUNCTION>OPEN_CURSOR</FUNCTION>\r
+ <FUNCTION>PARSE</FUNCTION>\r
+ <FUNCTION>BIND_VARIABLE</FUNCTION>\r
+ <FUNCTION>BIND_ARRAY</FUNCTION>\r
+ <FUNCTION>DEFINE_COLUMN</FUNCTION>\r
+ <FUNCTION>DEFINE_COLUMN_LONG</FUNCTION>\r
+ <FUNCTION>DEFINE_ARRAY</FUNCTION>\r
+ <FUNCTION>EXECUTE</FUNCTION>\r
+ <FUNCTION>FETCH_ROWS</FUNCTION>\r
+ <FUNCTION>EXECUTE_AND_FETCH</FUNCTION>\r
+ <FUNCTION>VARIABLE_VALUE</FUNCTION>\r
+ <FUNCTION>COLUMN_VALUE</FUNCTION>\r
+ <FUNCTION>COLUMN_VALUE_LONG</FUNCTION>\r
+ <FUNCTION>CLOSE_CURSOR</FUNCTION>\r
+ <FUNCTION>DEFINE_COLUMN_CHAR</FUNCTION>\r
+ <FUNCTION>COLUMN_VALUE_CHAR</FUNCTION>\r
+\r
+ <KEYWORD3>DBMS_PROFILER</KEYWORD3>\r
+ <FUNCTION>START_PROFILER</FUNCTION>\r
+ <FUNCTION>STOP_PROFILER</FUNCTION>\r
+ <FUNCTION>ROLLUP_RUN</FUNCTION>\r
+\r
+ <!-- other keywords (output-related) -->\r
+ <KEYWORD3>_EDITOR</KEYWORD3>\r
+ <KEYWORD3>ARRAYSIZE</KEYWORD3>\r
+ <KEYWORD3>AUTOTRACE</KEYWORD3>\r
+ <KEYWORD3>DBMS_OUTPUT</KEYWORD3>\r
+ <KEYWORD3>ECHO</KEYWORD3>\r
+ <KEYWORD3>ENABLE</KEYWORD3>\r
+ <KEYWORD3>FCLOSE</KEYWORD3>\r
+ <KEYWORD3>FCLOSE_ALL</KEYWORD3>\r
+ <KEYWORD3>FEED</KEYWORD3>\r
+ <KEYWORD3>FEEDBACK</KEYWORD3>\r
+ <KEYWORD3>FILE_TYPE</KEYWORD3>\r
+ <KEYWORD3>FOPEN</KEYWORD3>\r
+ <KEYWORD3>HEAD</KEYWORD3>\r
+ <KEYWORD3>INVALID_OPERATION</KEYWORD3>\r
+ <KEYWORD3>INVALID_PATH</KEYWORD3>\r
+ <KEYWORD3>LINESIZE</KEYWORD3>\r
+ <KEYWORD3>PAGESIZE</KEYWORD3>\r
+ <KEYWORD3>PAGES</KEYWORD3>\r
+ <KEYWORD3>PAUSE</KEYWORD3>\r
+ <KEYWORD3>DOC</KEYWORD3>\r
+ <KEYWORD3>PUTF</KEYWORD3>\r
+ <KEYWORD3>PUT_LINE</KEYWORD3>\r
+ <KEYWORD3>SERVEROUTPUT</KEYWORD3>\r
+ <KEYWORD3>SQL.PNO</KEYWORD3>\r
+ <KEYWORD3>UTL_FILE</KEYWORD3>\r
+ <KEYWORD3>VER</KEYWORD3>\r
+ <KEYWORD3>VERIFY</KEYWORD3>\r
+ <KEYWORD3>WRITE_ERROR</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="TRUE"\r
+ HIGHLIGHT_DIGITS="FALSE">\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- preprocessor statements -->\r
+ <EOL_SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="*" AT_LINE_START="TRUE">\* *process</EOL_SPAN_REGEXP>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">¬</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Statements, keywords and directives -->\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>alloc</KEYWORD1>\r
+ <KEYWORD1>allocate</KEYWORD1>\r
+ <KEYWORD1>attach</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>by</KEYWORD1>\r
+ <KEYWORD1>byname</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>dcl</KEYWORD1>\r
+ <KEYWORD1>declare</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>delay</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>detach</KEYWORD1>\r
+ <KEYWORD1>dft</KEYWORD1>\r
+ <KEYWORD1>display</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>downthru</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>entry</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>fetch</KEYWORD1>\r
+ <KEYWORD1>flush</KEYWORD1>\r
+ <KEYWORD1>format</KEYWORD1>\r
+ <KEYWORD1>free</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>get</KEYWORD1>\r
+ <KEYWORD1>go</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>ignore</KEYWORD1>\r
+ <KEYWORD1>%include</KEYWORD1>\r
+ <KEYWORD1>into</KEYWORD1>\r
+ <KEYWORD1>iterate</KEYWORD1>\r
+ <KEYWORD1>key</KEYWORD1>\r
+ <KEYWORD1>keyfrom</KEYWORD1>\r
+ <KEYWORD1>keyto</KEYWORD1>\r
+ <KEYWORD1>leave</KEYWORD1>\r
+ <KEYWORD1>line</KEYWORD1>\r
+ <KEYWORD1>locate</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>name</KEYWORD1>\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>ordinal</KEYWORD1>\r
+ <KEYWORD1>other</KEYWORD1>\r
+ <KEYWORD1>otherwise</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>page</KEYWORD1>\r
+ <KEYWORD1>proc</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+ <KEYWORD1>put</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>release</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>reply</KEYWORD1>\r
+ <KEYWORD1>resignal</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>revert</KEYWORD1>\r
+ <KEYWORD1>rewrite</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>signal</KEYWORD1>\r
+ <KEYWORD1>skip</KEYWORD1>\r
+ <KEYWORD1>snap</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>structure</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>thread</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>tstack</KEYWORD1>\r
+ <KEYWORD1>unlock</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>upthru</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>write</KEYWORD1>\r
+\r
+ <!-- Options & attributes -->\r
+ <KEYWORD2>A</KEYWORD2>\r
+ <KEYWORD2>abnormal</KEYWORD2>\r
+ <KEYWORD2>aligned</KEYWORD2>\r
+ <KEYWORD2>anycond</KEYWORD2>\r
+ <KEYWORD2>anycondition</KEYWORD2>\r
+ <KEYWORD2>area</KEYWORD2>\r
+ <KEYWORD2>asgn</KEYWORD2>\r
+ <KEYWORD2>asm</KEYWORD2>\r
+ <KEYWORD2>assembler</KEYWORD2>\r
+ <KEYWORD2>assignable</KEYWORD2>\r
+ <KEYWORD2>attn</KEYWORD2>\r
+ <KEYWORD2>attention</KEYWORD2>\r
+ <KEYWORD2>auto</KEYWORD2>\r
+ <KEYWORD2>automatic</KEYWORD2>\r
+ <KEYWORD2>b</KEYWORD2>\r
+ <KEYWORD2>b3</KEYWORD2>\r
+ <KEYWORD2>b4</KEYWORD2>\r
+ <KEYWORD2>based</KEYWORD2>\r
+ <KEYWORD2>bigendian</KEYWORD2>\r
+ <KEYWORD2>bin</KEYWORD2>\r
+ <KEYWORD2>binary</KEYWORD2>\r
+ <KEYWORD2>bit</KEYWORD2>\r
+ <KEYWORD2>buf</KEYWORD2>\r
+ <KEYWORD2>buffered</KEYWORD2>\r
+ <KEYWORD2>builtin</KEYWORD2>\r
+ <KEYWORD2>bx</KEYWORD2>\r
+ <KEYWORD2>byaddr</KEYWORD2>\r
+ <KEYWORD2>byvalue</KEYWORD2>\r
+ <KEYWORD2>C</KEYWORD2>\r
+ <KEYWORD2>cdecl</KEYWORD2>\r
+ <KEYWORD2>cell</KEYWORD2>\r
+ <KEYWORD2>char</KEYWORD2>\r
+ <KEYWORD2>character</KEYWORD2>\r
+ <KEYWORD2>charg</KEYWORD2>\r
+ <KEYWORD2>chargraphic</KEYWORD2>\r
+ <KEYWORD2>cobol</KEYWORD2>\r
+ <KEYWORD2>column</KEYWORD2>\r
+ <KEYWORD2>complex</KEYWORD2>\r
+ <KEYWORD2>cond</KEYWORD2>\r
+ <KEYWORD2>condition</KEYWORD2>\r
+ <KEYWORD2>conn</KEYWORD2>\r
+ <KEYWORD2>connected</KEYWORD2>\r
+ <KEYWORD2>controlled</KEYWORD2>\r
+ <KEYWORD2>conv</KEYWORD2>\r
+ <KEYWORD2>conversion</KEYWORD2>\r
+ <KEYWORD2>cplx</KEYWORD2>\r
+ <KEYWORD2>ctl</KEYWORD2>\r
+ <KEYWORD2>data</KEYWORD2>\r
+ <KEYWORD2>date</KEYWORD2>\r
+ <KEYWORD2>dec</KEYWORD2>\r
+ <KEYWORD2>decimal</KEYWORD2>\r
+ <KEYWORD2>def</KEYWORD2>\r
+ <KEYWORD2>defined</KEYWORD2>\r
+ <KEYWORD2>descriptor</KEYWORD2>\r
+ <KEYWORD2>descriptors</KEYWORD2>\r
+ <KEYWORD2>dim</KEYWORD2>\r
+ <KEYWORD2>dimension</KEYWORD2>\r
+ <KEYWORD2>direct</KEYWORD2>\r
+ <KEYWORD2>E</KEYWORD2>\r
+ <KEYWORD2>edit</KEYWORD2>\r
+ <KEYWORD2>endfile</KEYWORD2>\r
+ <KEYWORD2>endpage</KEYWORD2>\r
+ <KEYWORD2>env</KEYWORD2>\r
+ <KEYWORD2>environment</KEYWORD2>\r
+ <KEYWORD2>error</KEYWORD2>\r
+ <KEYWORD2>exclusive</KEYWORD2>\r
+ <KEYWORD2>exports</KEYWORD2>\r
+ <KEYWORD2>ext</KEYWORD2>\r
+ <KEYWORD2>external</KEYWORD2>\r
+ <KEYWORD2>F</KEYWORD2>\r
+ <KEYWORD2>fetchable</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>finish</KEYWORD2>\r
+ <KEYWORD2>fixed</KEYWORD2>\r
+ <KEYWORD2>fixedoverflow</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>fofl</KEYWORD2>\r
+ <KEYWORD2>format</KEYWORD2>\r
+ <KEYWORD2>fortran</KEYWORD2>\r
+ <KEYWORD2>fromalien</KEYWORD2>\r
+ <KEYWORD2>g</KEYWORD2>\r
+ <KEYWORD2>generic</KEYWORD2>\r
+ <KEYWORD2>graphic</KEYWORD2>\r
+ <KEYWORD2>gx</KEYWORD2>\r
+ <KEYWORD2>handle</KEYWORD2>\r
+ <KEYWORD2>hexadec</KEYWORD2>\r
+ <KEYWORD2>ieee</KEYWORD2>\r
+ <KEYWORD2>imported</KEYWORD2>\r
+ <KEYWORD2>init</KEYWORD2>\r
+ <KEYWORD2>initial</KEYWORD2>\r
+ <KEYWORD2>inline</KEYWORD2>\r
+ <KEYWORD2>input</KEYWORD2>\r
+ <KEYWORD2>inter</KEYWORD2>\r
+ <KEYWORD2>internal</KEYWORD2>\r
+ <KEYWORD2>invalidop</KEYWORD2>\r
+ <KEYWORD2>irred</KEYWORD2>\r
+ <KEYWORD2>irreducible</KEYWORD2>\r
+ <KEYWORD2>keyed</KEYWORD2>\r
+ <KEYWORD2>L</KEYWORD2>\r
+ <KEYWORD2>label</KEYWORD2>\r
+ <KEYWORD2>like</KEYWORD2>\r
+ <KEYWORD2>limited</KEYWORD2>\r
+ <KEYWORD2>linesize</KEYWORD2>\r
+ <KEYWORD2>linkage</KEYWORD2>\r
+ <KEYWORD2>list</KEYWORD2>\r
+ <KEYWORD2>littleendian</KEYWORD2>\r
+ <KEYWORD2>m</KEYWORD2>\r
+ <KEYWORD2>main</KEYWORD2>\r
+ <KEYWORD2>native</KEYWORD2>\r
+ <KEYWORD2>nonasgn</KEYWORD2>\r
+ <KEYWORD2>nocharg</KEYWORD2>\r
+ <KEYWORD2>nochargraphic</KEYWORD2>\r
+ <KEYWORD2>nodescriptor</KEYWORD2>\r
+ <KEYWORD2>noexecops</KEYWORD2>\r
+ <KEYWORD2>nomap</KEYWORD2>\r
+ <KEYWORD2>nomapin</KEYWORD2>\r
+ <KEYWORD2>nomapout</KEYWORD2>\r
+ <KEYWORD2>nonasgn</KEYWORD2>\r
+ <KEYWORD2>nonassignable</KEYWORD2>\r
+ <KEYWORD2>nonconn</KEYWORD2>\r
+ <KEYWORD2>nonconnected</KEYWORD2>\r
+ <KEYWORD2>nonnative</KEYWORD2>\r
+ <KEYWORD2>nonvar</KEYWORD2>\r
+ <KEYWORD2>nonvarying</KEYWORD2>\r
+ <KEYWORD2>normal</KEYWORD2>\r
+ <KEYWORD2>offset</KEYWORD2>\r
+ <KEYWORD2>ofl</KEYWORD2>\r
+ <KEYWORD2>optional</KEYWORD2>\r
+ <KEYWORD2>options</KEYWORD2>\r
+ <KEYWORD2>optlink</KEYWORD2>\r
+ <KEYWORD2>order</KEYWORD2>\r
+ <KEYWORD2>output</KEYWORD2>\r
+ <KEYWORD2>overflow</KEYWORD2>\r
+ <KEYWORD2>P</KEYWORD2>\r
+ <KEYWORD2>pagesize</KEYWORD2>\r
+ <KEYWORD2>parameter</KEYWORD2>\r
+ <KEYWORD2>pic</KEYWORD2>\r
+ <KEYWORD2>picture</KEYWORD2>\r
+ <KEYWORD2>pointer</KEYWORD2>\r
+ <KEYWORD2>pos</KEYWORD2>\r
+ <KEYWORD2>position</KEYWORD2>\r
+ <KEYWORD2>prec</KEYWORD2>\r
+ <KEYWORD2>precision</KEYWORD2>\r
+ <KEYWORD2>print</KEYWORD2>\r
+ <KEYWORD2>ptr</KEYWORD2>\r
+ <KEYWORD2>R</KEYWORD2>\r
+ <KEYWORD2>range</KEYWORD2>\r
+ <KEYWORD2>real</KEYWORD2>\r
+ <KEYWORD2>record</KEYWORD2>\r
+ <KEYWORD2>recursive</KEYWORD2>\r
+ <KEYWORD2>red</KEYWORD2>\r
+ <KEYWORD2>reducible</KEYWORD2>\r
+ <KEYWORD2>reentrant</KEYWORD2>\r
+ <KEYWORD2>refer</KEYWORD2>\r
+ <KEYWORD2>reorder</KEYWORD2>\r
+ <KEYWORD2>reserved</KEYWORD2>\r
+ <KEYWORD2>reserves</KEYWORD2>\r
+ <KEYWORD2>retcode</KEYWORD2>\r
+ <KEYWORD2>returns</KEYWORD2>\r
+ <KEYWORD2>seql</KEYWORD2>\r
+ <KEYWORD2>sequential</KEYWORD2>\r
+ <KEYWORD2>signed</KEYWORD2>\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD2>static</KEYWORD2>\r
+ <KEYWORD2>stdcall</KEYWORD2>\r
+ <KEYWORD2>storage</KEYWORD2>\r
+ <KEYWORD2>stream</KEYWORD2>\r
+ <KEYWORD2>strg</KEYWORD2>\r
+ <KEYWORD2>stringrange</KEYWORD2>\r
+ <KEYWORD2>strz</KEYWORD2>\r
+ <KEYWORD2>stringsize</KEYWORD2>\r
+ <KEYWORD2>subrg</KEYWORD2>\r
+ <KEYWORD2>subscriptrange</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>task</KEYWORD2>\r
+ <KEYWORD2>title</KEYWORD2>\r
+ <KEYWORD2>transmit</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>ufl</KEYWORD2>\r
+ <KEYWORD2>unal</KEYWORD2>\r
+ <KEYWORD2>unaligned</KEYWORD2>\r
+ <KEYWORD2>unbuf</KEYWORD2>\r
+ <KEYWORD2>unbuffered</KEYWORD2>\r
+ <KEYWORD2>undefinedfile</KEYWORD2>\r
+ <KEYWORD2>underflow</KEYWORD2>\r
+ <KEYWORD2>undf</KEYWORD2>\r
+ <KEYWORD2>union</KEYWORD2>\r
+ <KEYWORD2>unsigned</KEYWORD2>\r
+ <KEYWORD2>update</KEYWORD2>\r
+ <KEYWORD2>value</KEYWORD2>\r
+ <KEYWORD2>var</KEYWORD2>\r
+ <KEYWORD2>variable</KEYWORD2>\r
+ <KEYWORD2>varying</KEYWORD2>\r
+ <KEYWORD2>varyingz</KEYWORD2>\r
+ <KEYWORD2>varz</KEYWORD2>\r
+ <KEYWORD2>wchar</KEYWORD2>\r
+ <KEYWORD2>widechar</KEYWORD2>\r
+ <KEYWORD2>winmain</KEYWORD2>\r
+ <KEYWORD2>wx</KEYWORD2>\r
+ <KEYWORD2>x</KEYWORD2>\r
+ <KEYWORD2>xn</KEYWORD2>\r
+ <KEYWORD2>xu</KEYWORD2>\r
+ <KEYWORD2>zdiv</KEYWORD2>\r
+ <KEYWORD2>zerodivide</KEYWORD2>\r
+\r
+ <!-- Builtins -->\r
+ <KEYWORD3>abs</KEYWORD3>\r
+ <KEYWORD3>acos</KEYWORD3>\r
+ <KEYWORD3>acosf</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>addr</KEYWORD3>\r
+ <KEYWORD3>address</KEYWORD3>\r
+ <KEYWORD3>addrdata</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>allocation</KEYWORD3>\r
+ <KEYWORD3>allocn</KEYWORD3>\r
+ <KEYWORD3>allocsize</KEYWORD3>\r
+ <KEYWORD3>any</KEYWORD3>\r
+ <KEYWORD3>asin</KEYWORD3>\r
+ <KEYWORD3>asinf</KEYWORD3>\r
+ <KEYWORD3>atan</KEYWORD3>\r
+ <KEYWORD3>atand</KEYWORD3>\r
+ <KEYWORD3>atanf</KEYWORD3>\r
+ <KEYWORD3>atanh</KEYWORD3>\r
+ <KEYWORD3>availablearea</KEYWORD3>\r
+ <KEYWORD3>binaryvalue</KEYWORD3>\r
+ <KEYWORD3>bind</KEYWORD3>\r
+ <KEYWORD3>binvalue</KEYWORD3>\r
+ <KEYWORD3>bitlocation</KEYWORD3>\r
+ <KEYWORD3>bitloc</KEYWORD3>\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>cast</KEYWORD3>\r
+ <KEYWORD3>cds</KEYWORD3>\r
+ <KEYWORD3>ceil</KEYWORD3>\r
+ <KEYWORD3>center</KEYWORD3>\r
+ <KEYWORD3>centre</KEYWORD3>\r
+ <KEYWORD3>centreleft</KEYWORD3>\r
+ <KEYWORD3>centreleft</KEYWORD3>\r
+ <KEYWORD3>centreright</KEYWORD3>\r
+ <KEYWORD3>centerright</KEYWORD3>\r
+ <KEYWORD3>charg</KEYWORD3>\r
+ <KEYWORD3>chargraphic</KEYWORD3>\r
+ <KEYWORD3>chargval</KEYWORD3>\r
+ <KEYWORD3>checkstg</KEYWORD3>\r
+ <KEYWORD3>collate</KEYWORD3>\r
+ <KEYWORD3>compare</KEYWORD3>\r
+ <KEYWORD3>conjg</KEYWORD3>\r
+ <KEYWORD3>cos</KEYWORD3>\r
+ <KEYWORD3>cosd</KEYWORD3>\r
+ <KEYWORD3>cosf</KEYWORD3>\r
+ <KEYWORD3>cosh</KEYWORD3>\r
+ <KEYWORD3>count</KEYWORD3>\r
+ <KEYWORD3>cs</KEYWORD3>\r
+ <KEYWORD3>cstg</KEYWORD3>\r
+ <KEYWORD3>currentsize</KEYWORD3>\r
+ <KEYWORD3>currentstorage</KEYWORD3>\r
+ <KEYWORD3>datafield</KEYWORD3>\r
+ <KEYWORD3>date</KEYWORD3>\r
+ <KEYWORD3>datetime</KEYWORD3>\r
+ <KEYWORD3>days</KEYWORD3>\r
+ <KEYWORD3>daystodate</KEYWORD3>\r
+ <KEYWORD3>daystosecs</KEYWORD3>\r
+ <KEYWORD3>divide</KEYWORD3>\r
+ <KEYWORD3>empty</KEYWORD3>\r
+ <KEYWORD3>entryaddr</KEYWORD3>\r
+ <KEYWORD3>epsilon</KEYWORD3>\r
+ <KEYWORD3>erfc</KEYWORD3>\r
+ <KEYWORD3>exp</KEYWORD3>\r
+ <KEYWORD3>expf</KEYWORD3>\r
+ <KEYWORD3>exponent</KEYWORD3>\r
+ <KEYWORD3>fileddint</KEYWORD3>\r
+ <KEYWORD3>fileddtest</KEYWORD3>\r
+ <KEYWORD3>fileddword</KEYWORD3>\r
+ <KEYWORD3>fileid</KEYWORD3>\r
+ <KEYWORD3>fileopen</KEYWORD3>\r
+ <KEYWORD3>fileread</KEYWORD3>\r
+ <KEYWORD3>fileseek</KEYWORD3>\r
+ <KEYWORD3>filetell</KEYWORD3>\r
+ <KEYWORD3>filewrite</KEYWORD3>\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>floor</KEYWORD3>\r
+ <KEYWORD3>gamma</KEYWORD3>\r
+ <KEYWORD3>getenv</KEYWORD3>\r
+ <KEYWORD3>hbound</KEYWORD3>\r
+ <KEYWORD3>hex</KEYWORD3>\r
+ <KEYWORD3>heximage</KEYWORD3>\r
+ <KEYWORD3>high</KEYWORD3>\r
+ <KEYWORD3>huge</KEYWORD3>\r
+ <KEYWORD3>iand</KEYWORD3>\r
+ <KEYWORD3>ieor</KEYWORD3>\r
+ <KEYWORD3>imag</KEYWORD3>\r
+ <KEYWORD3>index</KEYWORD3>\r
+ <KEYWORD3>inot</KEYWORD3>\r
+ <KEYWORD3>ior</KEYWORD3>\r
+ <KEYWORD3>isigned</KEYWORD3>\r
+ <KEYWORD3>isll</KEYWORD3>\r
+ <KEYWORD3>ismain</KEYWORD3>\r
+ <KEYWORD3>isrl</KEYWORD3>\r
+ <KEYWORD3>iunsigned</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>lbound</KEYWORD3>\r
+ <KEYWORD3>left</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>lineno</KEYWORD3>\r
+ <KEYWORD3>loc</KEYWORD3>\r
+ <KEYWORD3>location</KEYWORD3>\r
+ <KEYWORD3>log</KEYWORD3>\r
+ <KEYWORD3>logf</KEYWORD3>\r
+ <KEYWORD3>loggamma</KEYWORD3>\r
+ <KEYWORD3>log2</KEYWORD3>\r
+ <KEYWORD3>log10</KEYWORD3>\r
+ <KEYWORD3>log10f</KEYWORD3>\r
+ <KEYWORD3>low</KEYWORD3>\r
+ <KEYWORD3>lowercase</KEYWORD3>\r
+ <KEYWORD3>lower2</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>maxexp</KEYWORD3>\r
+ <KEYWORD3>maxlength</KEYWORD3>\r
+ <KEYWORD3>min</KEYWORD3>\r
+ <KEYWORD3>minexp</KEYWORD3>\r
+ <KEYWORD3>mod</KEYWORD3>\r
+ <KEYWORD3>mpstr</KEYWORD3>\r
+ <KEYWORD3>multiply</KEYWORD3>\r
+ <KEYWORD3>new</KEYWORD3>\r
+ <KEYWORD3>null</KEYWORD3>\r
+ <KEYWORD3>offestadd</KEYWORD3>\r
+ <KEYWORD3>offestdiff</KEYWORD3>\r
+ <KEYWORD3>offestsubtract</KEYWORD3>\r
+ <KEYWORD3>offestvalue</KEYWORD3>\r
+ <KEYWORD3>omitted</KEYWORD3>\r
+ <KEYWORD3>onchar</KEYWORD3>\r
+ <KEYWORD3>oncode</KEYWORD3>\r
+ <KEYWORD3>oncondond</KEYWORD3>\r
+ <KEYWORD3>oncondid</KEYWORD3>\r
+ <KEYWORD3>oncount</KEYWORD3>\r
+ <KEYWORD3>onfile</KEYWORD3>\r
+ <KEYWORD3>ongsource</KEYWORD3>\r
+ <KEYWORD3>onkey</KEYWORD3>\r
+ <KEYWORD3>onloc</KEYWORD3>\r
+ <KEYWORD3>onsource</KEYWORD3>\r
+ <KEYWORD3>onsubcode</KEYWORD3>\r
+ <KEYWORD3>onwchar</KEYWORD3>\r
+ <KEYWORD3>onwsource</KEYWORD3>\r
+ <KEYWORD3>ordinalname</KEYWORD3>\r
+ <KEYWORD3>ordinalpred</KEYWORD3>\r
+ <KEYWORD3>ordinalsucc</KEYWORD3>\r
+ <KEYWORD3>packagename</KEYWORD3>\r
+ <KEYWORD3>pageno</KEYWORD3>\r
+ <KEYWORD3>places</KEYWORD3>\r
+ <KEYWORD3>pliascii</KEYWORD3>\r
+ <KEYWORD3>plianc</KEYWORD3>\r
+ <KEYWORD3>plickpt</KEYWORD3>\r
+ <KEYWORD3>plidelete</KEYWORD3>\r
+ <KEYWORD3>plidump</KEYWORD3>\r
+ <KEYWORD3>pliebcdic</KEYWORD3>\r
+ <KEYWORD3>plifill</KEYWORD3>\r
+ <KEYWORD3>plifree</KEYWORD3>\r
+ <KEYWORD3>plimove</KEYWORD3>\r
+ <KEYWORD3>pliover</KEYWORD3>\r
+ <KEYWORD3>plirest</KEYWORD3>\r
+ <KEYWORD3>pliretc</KEYWORD3>\r
+ <KEYWORD3>pliretv</KEYWORD3>\r
+ <KEYWORD3>plisaxa</KEYWORD3>\r
+ <KEYWORD3>plisaxb</KEYWORD3>\r
+ <KEYWORD3>plisrta</KEYWORD3>\r
+ <KEYWORD3>plisrtb</KEYWORD3>\r
+ <KEYWORD3>plisrtc</KEYWORD3>\r
+ <KEYWORD3>plisrtd</KEYWORD3>\r
+ <KEYWORD3>pointeradd</KEYWORD3>\r
+ <KEYWORD3>ptradd</KEYWORD3>\r
+ <KEYWORD3>pointerdiff</KEYWORD3>\r
+ <KEYWORD3>ptrdiff</KEYWORD3>\r
+ <KEYWORD3>pointersubtract</KEYWORD3>\r
+ <KEYWORD3>ptrsubtract</KEYWORD3>\r
+ <KEYWORD3>pointervalue</KEYWORD3>\r
+ <KEYWORD3>ptrvalue</KEYWORD3>\r
+ <KEYWORD3>poly</KEYWORD3>\r
+ <KEYWORD3>pred</KEYWORD3>\r
+ <KEYWORD3>present</KEYWORD3>\r
+ <KEYWORD3>procname</KEYWORD3>\r
+ <KEYWORD3>procedurename</KEYWORD3>\r
+ <KEYWORD3>prod</KEYWORD3>\r
+ <KEYWORD3>putenv</KEYWORD3>\r
+ <KEYWORD3>radix</KEYWORD3>\r
+ <KEYWORD3>raise</KEYWORD3>\r
+ <KEYWORD3>random</KEYWORD3>\r
+ <KEYWORD3>rank</KEYWORD3>\r
+ <KEYWORD3>rem</KEYWORD3>\r
+ <KEYWORD3>repattern</KEYWORD3>\r
+ <KEYWORD3>respec</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>round</KEYWORD3>\r
+ <KEYWORD3>samekey</KEYWORD3>\r
+ <KEYWORD3>scale</KEYWORD3>\r
+ <KEYWORD3>search</KEYWORD3>\r
+ <KEYWORD3>searchr</KEYWORD3>\r
+ <KEYWORD3>secs</KEYWORD3>\r
+ <KEYWORD3>secstodate</KEYWORD3>\r
+ <KEYWORD3>secstodays</KEYWORD3>\r
+ <KEYWORD3>sign</KEYWORD3>\r
+ <KEYWORD3>signed</KEYWORD3>\r
+ <KEYWORD3>sin</KEYWORD3>\r
+ <KEYWORD3>sind</KEYWORD3>\r
+ <KEYWORD3>sinf</KEYWORD3>\r
+ <KEYWORD3>sinh</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+ <KEYWORD3>sourcefile</KEYWORD3>\r
+ <KEYWORD3>sourceline</KEYWORD3>\r
+ <KEYWORD3>sqrt</KEYWORD3>\r
+ <KEYWORD3>sqrtf</KEYWORD3>\r
+ <KEYWORD3>stg</KEYWORD3>\r
+ <KEYWORD3>storage</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ <KEYWORD3>substr</KEYWORD3>\r
+ <KEYWORD3>subtract</KEYWORD3>\r
+ <KEYWORD3>succ</KEYWORD3>\r
+ <KEYWORD3>sum</KEYWORD3>\r
+ <KEYWORD3>sysnull</KEYWORD3>\r
+ <KEYWORD3>tally</KEYWORD3>\r
+ <KEYWORD3>tan</KEYWORD3>\r
+ <KEYWORD3>tand</KEYWORD3>\r
+ <KEYWORD3>tanf</KEYWORD3>\r
+ <KEYWORD3>tanh</KEYWORD3>\r
+ <KEYWORD3>threadid</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>tiny</KEYWORD3>\r
+ <KEYWORD3>translate</KEYWORD3>\r
+ <KEYWORD3>trim</KEYWORD3>\r
+ <KEYWORD3>trunc</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>unallocated</KEYWORD3>\r
+ <KEYWORD3>unspec</KEYWORD3>\r
+ <KEYWORD3>uppercase</KEYWORD3>\r
+ <KEYWORD3>valid</KEYWORD3>\r
+ <KEYWORD3>validdate</KEYWORD3>\r
+ <KEYWORD3>varglist</KEYWORD3>\r
+ <KEYWORD3>vargsizer</KEYWORD3>\r
+ <KEYWORD3>verify</KEYWORD3>\r
+ <KEYWORD3>verifyr</KEYWORD3>\r
+ <KEYWORD3>wcharval</KEYWORD3>\r
+ <KEYWORD3>weekday</KEYWORD3>\r
+ <KEYWORD3>whigh</KEYWORD3>\r
+ <KEYWORD3>wlow</KEYWORD3>\r
+ <KEYWORD3>y4date</KEYWORD3>\r
+ <KEYWORD3>y4julian</KEYWORD3>\r
+ <KEYWORD3>y4year</KEYWORD3>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- pop11 mode by David S. Moss -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE=";;;" />\r
+ </PROPS>\r
+\r
+ <RULES SET="MAIN" ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Normal comments. -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">;;;</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>![</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Functions -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <MARK_PREVIOUS AT_LINE_START="TRUE" TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+\r
+ <!-- Needs to be before conditional compilation or won't work -->\r
+ <SEQ TYPE="NULL">#_<</SEQ>\r
+ <SEQ TYPE="NULL">>_#</SEQ>\r
+\r
+ <!-- Conditional compilation -->\r
+ <MARK_FOLLOWING AT_LINE_START="TRUE" TYPE="LABEL">#_</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">.</SEQ>\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">^</SEQ>\r
+ <SEQ TYPE="NULL">@</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ>\r
+ <SEQ TYPE="NULL">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>database</LITERAL2>\r
+ <LITERAL2>it</LITERAL2>\r
+ <LITERAL2>undef</LITERAL2>\r
+\r
+ <!-- keywords -->\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>enddefine</KEYWORD1>\r
+ <KEYWORD1>dlocal</KEYWORD1>\r
+ <KEYWORD1>lvars</KEYWORD1>\r
+ <KEYWORD1>vars</KEYWORD1>\r
+ <KEYWORD1>slot</KEYWORD1>\r
+ <KEYWORD1>instance</KEYWORD1>\r
+ <KEYWORD1>endinstance</KEYWORD1>\r
+ <KEYWORD1>method</KEYWORD1>\r
+ <KEYWORD1>syntax</KEYWORD1>\r
+ <KEYWORD1>biginteger</KEYWORD1>\r
+ <KEYWORD1>boolean</KEYWORD1>\r
+ <KEYWORD1>complex</KEYWORD1>\r
+ <KEYWORD1>ddecimal</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>device</KEYWORD1>\r
+ <KEYWORD1>ident</KEYWORD1>\r
+ <KEYWORD1>integer</KEYWORD1>\r
+ <KEYWORD1>intvec</KEYWORD1>\r
+ <KEYWORD1>key</KEYWORD1>\r
+ <KEYWORD1>nil</KEYWORD1>\r
+ <KEYWORD1>pair</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+ <KEYWORD1>process</KEYWORD1>\r
+ <KEYWORD1>prologterm</KEYWORD1>\r
+ <KEYWORD1>prologvar</KEYWORD1>\r
+ <KEYWORD1>ratio</KEYWORD1>\r
+ <KEYWORD1>ref</KEYWORD1>\r
+ <KEYWORD1>section</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>termin</KEYWORD1>\r
+ <KEYWORD1>vector</KEYWORD1>\r
+ <KEYWORD1>word</KEYWORD1>\r
+\r
+ <!-- flow control -->\r
+ <KEYWORD3>if</KEYWORD3>\r
+ <KEYWORD3>forevery</KEYWORD3>\r
+ <KEYWORD3>endforevery</KEYWORD3>\r
+ <KEYWORD3>then</KEYWORD3>\r
+ <KEYWORD3>switchon</KEYWORD3>\r
+ <KEYWORD3>endswitchon</KEYWORD3>\r
+ <KEYWORD3>case</KEYWORD3>\r
+ <KEYWORD3>elseif</KEYWORD3>\r
+ <KEYWORD3>else</KEYWORD3>\r
+ <KEYWORD3>endif</KEYWORD3>\r
+ <KEYWORD3>for</KEYWORD3>\r
+ <KEYWORD3>repeat</KEYWORD3>\r
+ <KEYWORD3>from</KEYWORD3>\r
+ <KEYWORD3>till</KEYWORD3>\r
+ <KEYWORD3>step</KEYWORD3>\r
+ <KEYWORD3>while</KEYWORD3>\r
+ <KEYWORD3>endfor</KEYWORD3>\r
+ <KEYWORD3>endrepeat</KEYWORD3>\r
+ <KEYWORD3>endwhile</KEYWORD3>\r
+ <KEYWORD3>times</KEYWORD3>\r
+ <KEYWORD3>to</KEYWORD3>\r
+ <KEYWORD3>do</KEYWORD3>\r
+ <KEYWORD3>by</KEYWORD3>\r
+ <KEYWORD3>in</KEYWORD3>\r
+ <KEYWORD3>return</KEYWORD3>\r
+\r
+ <!-- other statements -->\r
+ <KEYWORD2>and</KEYWORD2>\r
+ <KEYWORD2>or</KEYWORD2>\r
+ <KEYWORD2>matches</KEYWORD2>\r
+ <KEYWORD2>quitloop</KEYWORD2>\r
+ <KEYWORD2>goto</KEYWORD2>\r
+ <KEYWORD2>uses</KEYWORD2>\r
+ <KEYWORD2>trace</KEYWORD2>\r
+ <KEYWORD2>cons_with</KEYWORD2>\r
+ <KEYWORD2>consstring</KEYWORD2>\r
+\r
+ <!-- Built in functions -->\r
+ <LITERAL2>interrupt</LITERAL2>\r
+ <LITERAL2>partapply</LITERAL2>\r
+ <LITERAL2>consclosure</LITERAL2>\r
+ <LITERAL2>max</LITERAL2>\r
+ <LITERAL2>add</LITERAL2>\r
+ <LITERAL2>remove</LITERAL2>\r
+ <LITERAL2>alladd</LITERAL2>\r
+ <LITERAL2>quitif</LITERAL2>\r
+ <LITERAL2>copydata</LITERAL2>\r
+ <LITERAL2>copytree</LITERAL2>\r
+ <LITERAL2>copylist</LITERAL2>\r
+ <LITERAL2>length</LITERAL2>\r
+ <LITERAL2>hd</LITERAL2>\r
+ <LITERAL2>tl</LITERAL2>\r
+ <LITERAL2>rev</LITERAL2>\r
+ <LITERAL2>shuffle</LITERAL2>\r
+ <LITERAL2>oneof</LITERAL2>\r
+ <LITERAL2>sort</LITERAL2>\r
+ <LITERAL2>syssort</LITERAL2>\r
+ <LITERAL2>random</LITERAL2>\r
+ <LITERAL2>readline</LITERAL2>\r
+ <LITERAL2>not</LITERAL2>\r
+ <LITERAL2>pr</LITERAL2>\r
+ <LITERAL2>nl</LITERAL2>\r
+ <LITERAL2>present</LITERAL2>\r
+ <LITERAL2>subword</LITERAL2>\r
+ <LITERAL2>member</LITERAL2>\r
+ <LITERAL2>length</LITERAL2>\r
+ <LITERAL2>listlength</LITERAL2>\r
+ <LITERAL2>datalength</LITERAL2>\r
+ <LITERAL2>mishap</LITERAL2>\r
+ <LITERAL2>last</LITERAL2>\r
+ <LITERAL2>delete</LITERAL2>\r
+ <LITERAL2>valof</LITERAL2>\r
+ <LITERAL2>dataword</LITERAL2>\r
+\r
+ <!-- input validation functions -->\r
+ <LITERAL2>isnumber</LITERAL2>\r
+ <LITERAL2>isinteger</LITERAL2>\r
+ <LITERAL2>islist</LITERAL2>\r
+ <LITERAL2>isboolean</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="LIST" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LIST">\r
+ <BEGIN>![</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN DELEGATE="MAIN" TYPE="NULL">\r
+ <BEGIN>%</BEGIN>\r
+ <END>%</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">;;;</EOL_SPAN>\r
+ <SEQ TYPE="LITERAL2">=</SEQ>\r
+ <SEQ TYPE="LITERAL2">==</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2">^</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL2">?</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <RULES SET="STRING" ESCAPE="\" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="FALSE">\r
+ </RULES>\r
+\r
+ <RULES NO_WORD_SEP="." SET="COMMENT" DEFAULT="COMMENT1" HIGHLIGHT_DIGITS="FALSE">\r
+ <MARK_PREVIOUS TYPE="LABEL">:</MARK_PREVIOUS>\r
+ <SEQ TYPE="COMMENT1">*</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- PostScript mode, by Slava Pestov. Based on PostScriptTokenMarker by\r
+ Ralf Engels -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT2">%!</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">%?</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">%%</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LABEL">/</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>pop</KEYWORD1>\r
+ <KEYWORD1>exch</KEYWORD1>\r
+ <KEYWORD1>dup</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>roll</KEYWORD1>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>count</KEYWORD1>\r
+ <KEYWORD1>mark</KEYWORD1>\r
+ <KEYWORD1>cleartomark</KEYWORD1>\r
+ <KEYWORD1>counttomark</KEYWORD1>\r
+\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>ifelse</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>stopped</KEYWORD1>\r
+ <KEYWORD1>countexecstack</KEYWORD1>\r
+ <KEYWORD1>execstack</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+\r
+ <OPERATOR>add</OPERATOR>\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>idiv</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+ <OPERATOR>mul</OPERATOR>\r
+ <OPERATOR>sub</OPERATOR>\r
+ <OPERATOR>abs</OPERATOR>\r
+ <OPERATOR>ned</OPERATOR>\r
+ <OPERATOR>ceiling</OPERATOR>\r
+ <OPERATOR>floor</OPERATOR>\r
+ <OPERATOR>round</OPERATOR>\r
+ <OPERATOR>truncate</OPERATOR>\r
+ <OPERATOR>sqrt</OPERATOR>\r
+ <OPERATOR>atan</OPERATOR>\r
+ <OPERATOR>cos</OPERATOR>\r
+ <OPERATOR>sin</OPERATOR>\r
+ <OPERATOR>exp</OPERATOR>\r
+ <OPERATOR>ln</OPERATOR>\r
+ <OPERATOR>log</OPERATOR>\r
+ <OPERATOR>rand</OPERATOR>\r
+ <OPERATOR>srand</OPERATOR>\r
+ <OPERATOR>rrand</OPERATOR>\r
+\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>NULL</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Povray mode, by Jan Schaefer\r
+ based on original Povray mode by Slava Pestov\r
+ based on PovrayTokenMarker, by Romain Guy -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>aa_level</KEYWORD2>\r
+ <KEYWORD2>aa_threshold</KEYWORD2>\r
+ <FUNCTION>abs</FUNCTION>\r
+ <KEYWORD2>absorption</KEYWORD2>\r
+ <KEYWORD2>accuracy</KEYWORD2>\r
+ <FUNCTION>acos</FUNCTION>\r
+ <FUNCTION>acosh</FUNCTION>\r
+ <KEYWORD2>adaptive</KEYWORD2>\r
+ <KEYWORD2>adc_bailout</KEYWORD2>\r
+ <KEYWORD2>agate</KEYWORD2>\r
+ <KEYWORD2>agate_turb</KEYWORD2>\r
+ <KEYWORD2>all</KEYWORD2>\r
+ <KEYWORD2>all_intersections</KEYWORD2>\r
+ <KEYWORD2>alpha</KEYWORD2>\r
+ <KEYWORD2>altitude</KEYWORD2>\r
+ <KEYWORD2>always_sample</KEYWORD2>\r
+ <KEYWORD2>ambient</KEYWORD2>\r
+ <KEYWORD2>ambient_light</KEYWORD2>\r
+ <KEYWORD2>angle</KEYWORD2>\r
+ <KEYWORD2>aperture</KEYWORD2>\r
+ <KEYWORD2>append</KEYWORD2>\r
+ <KEYWORD2>arc_angle</KEYWORD2>\r
+ <KEYWORD2>area_light</KEYWORD2>\r
+ <KEYWORD2>array</KEYWORD2>\r
+ <FUNCTION>asc</FUNCTION>\r
+ <KEYWORD2>ascii</KEYWORD2>\r
+ <FUNCTION>asin</FUNCTION>\r
+ <FUNCTION>asinh</FUNCTION>\r
+ <KEYWORD2>assumed_gamma</KEYWORD2>\r
+ <FUNCTION>atan</FUNCTION>\r
+ <FUNCTION>atan2</FUNCTION>\r
+ <FUNCTION>atanh</FUNCTION>\r
+ <KEYWORD2>autostop</KEYWORD2>\r
+ <KEYWORD2>average</KEYWORD2>\r
+ <KEYWORD2>b_spline</KEYWORD2>\r
+ <KEYWORD1>background</KEYWORD1>\r
+ <KEYWORD2>bezier_spline</KEYWORD2>\r
+ <KEYWORD1>bicubic_patch</KEYWORD1>\r
+ <KEYWORD2>black_hole</KEYWORD2>\r
+ <KEYWORD1>blob</KEYWORD1>\r
+ <LITERAL1>blue</LITERAL1>\r
+ <KEYWORD2>blur_samples</KEYWORD2>\r
+ <KEYWORD1>bounded_by</KEYWORD1>\r
+ <KEYWORD1>box</KEYWORD1>\r
+ <KEYWORD2>boxed</KEYWORD2>\r
+ <KEYWORD2>bozo</KEYWORD2>\r
+ <KEYWORD1>#break</KEYWORD1>\r
+ <KEYWORD2>brick</KEYWORD2>\r
+ <KEYWORD2>brick_size</KEYWORD2>\r
+ <KEYWORD2>brightness</KEYWORD2>\r
+ <KEYWORD2>brilliance</KEYWORD2>\r
+ <KEYWORD1>bump_map</KEYWORD1>\r
+ <KEYWORD2>bump_size</KEYWORD2>\r
+ <KEYWORD2>bumps</KEYWORD2>\r
+ <KEYWORD1>camera</KEYWORD1>\r
+ <KEYWORD1>#case</KEYWORD1>\r
+ <KEYWORD2>caustics</KEYWORD2>\r
+ <FUNCTION>ceil</FUNCTION>\r
+ <KEYWORD2>cells</KEYWORD2>\r
+ <KEYWORD2>charset</KEYWORD2>\r
+ <KEYWORD2>checker</KEYWORD2>\r
+ <FUNCTION>chr</FUNCTION>\r
+ <KEYWORD2>circular</KEYWORD2>\r
+ <KEYWORD1>clipped_by</KEYWORD1>\r
+ <LITERAL1>clock</LITERAL1>\r
+ <LITERAL1>clock_delta</LITERAL1>\r
+ <LITERAL1>clock_on</LITERAL1>\r
+ <KEYWORD2>collect</KEYWORD2>\r
+ <KEYWORD2>color</KEYWORD2>\r
+ <KEYWORD2>color_map</KEYWORD2>\r
+ <KEYWORD2>colour</KEYWORD2>\r
+ <KEYWORD2>colour_map</KEYWORD2>\r
+ <KEYWORD2>component</KEYWORD2>\r
+ <KEYWORD2>composite</KEYWORD2>\r
+ <FUNCTION>concat</FUNCTION>\r
+ <KEYWORD1>cone</KEYWORD1>\r
+ <KEYWORD2>confidence</KEYWORD2>\r
+ <KEYWORD2>conic_sweep</KEYWORD2>\r
+ <KEYWORD2>conserve_energy</KEYWORD2>\r
+ <KEYWORD1>contained_by</KEYWORD1>\r
+ <KEYWORD2>control0</KEYWORD2>\r
+ <KEYWORD2>control1</KEYWORD2>\r
+ <KEYWORD2>coords</KEYWORD2>\r
+ <FUNCTION>cos</FUNCTION>\r
+ <FUNCTION>cosh</FUNCTION>\r
+ <KEYWORD2>count</KEYWORD2>\r
+ <KEYWORD2>crackle</KEYWORD2>\r
+ <KEYWORD2>crand</KEYWORD2>\r
+ <KEYWORD1>cube</KEYWORD1>\r
+ <KEYWORD1>cubic</KEYWORD1>\r
+ <KEYWORD2>cubic_spline</KEYWORD2>\r
+ <KEYWORD2>cubic_wave</KEYWORD2>\r
+ <KEYWORD2>cutaway_textures</KEYWORD2>\r
+ <KEYWORD1>cylinder</KEYWORD1>\r
+ <KEYWORD2>cylindrical</KEYWORD2>\r
+ <KEYWORD1>#debug</KEYWORD1>\r
+ <KEYWORD1>#declare</KEYWORD1>\r
+ <KEYWORD1>#default</KEYWORD1>\r
+ <FUNCTION>defined</FUNCTION>\r
+ <FUNCTION>degrees</FUNCTION>\r
+ <KEYWORD2>density</KEYWORD2>\r
+ <KEYWORD2>density_file</KEYWORD2>\r
+ <KEYWORD1>density_map</KEYWORD1>\r
+ <KEYWORD2>dents</KEYWORD2>\r
+ <KEYWORD2>df3</KEYWORD2>\r
+ <KEYWORD1>difference</KEYWORD1>\r
+ <KEYWORD2>diffuse</KEYWORD2>\r
+ <FUNCTION>dimension_size</FUNCTION>\r
+ <FUNCTION>dimensions</FUNCTION>\r
+ <KEYWORD2>direction</KEYWORD2>\r
+ <KEYWORD1>disc</KEYWORD1>\r
+ <KEYWORD2>dispersion</KEYWORD2>\r
+ <KEYWORD2>dispersion_samples</KEYWORD2>\r
+ <KEYWORD2>dist_exp</KEYWORD2>\r
+ <KEYWORD2>distance</KEYWORD2>\r
+ <FUNCTION>div</FUNCTION>\r
+ <KEYWORD2>double_illuminate</KEYWORD2>\r
+ <KEYWORD2>eccentricity</KEYWORD2>\r
+ <KEYWORD1>#else</KEYWORD1>\r
+ <KEYWORD2>emission</KEYWORD2>\r
+ <KEYWORD1>#end</KEYWORD1>\r
+ <KEYWORD1>#error</KEYWORD1>\r
+ <KEYWORD2>error_bound</KEYWORD2>\r
+ <KEYWORD2>evaluate</KEYWORD2>\r
+ <FUNCTION>exp</FUNCTION>\r
+ <KEYWORD2>expand_thresholds</KEYWORD2>\r
+ <KEYWORD2>exponent</KEYWORD2>\r
+ <KEYWORD2>exterior</KEYWORD2>\r
+ <KEYWORD2>extinction</KEYWORD2>\r
+ <KEYWORD1>face_indices</KEYWORD1>\r
+ <KEYWORD2>facets</KEYWORD2>\r
+ <KEYWORD2>fade_color</KEYWORD2>\r
+ <KEYWORD2>fade_colour</KEYWORD2>\r
+ <KEYWORD2>fade_distance</KEYWORD2>\r
+ <KEYWORD2>fade_power</KEYWORD2>\r
+ <KEYWORD2>falloff</KEYWORD2>\r
+ <KEYWORD2>falloff_angle</KEYWORD2>\r
+ <LITERAL1>false</LITERAL1>\r
+ <KEYWORD1>#fclose</KEYWORD1>\r
+ <FUNCTION>file_exists</FUNCTION>\r
+ <KEYWORD2>filter</KEYWORD2>\r
+ <LITERAL1>final_clock</LITERAL1>\r
+ <LITERAL1>final_frame</LITERAL1>\r
+ <KEYWORD1>finish</KEYWORD1>\r
+ <KEYWORD2>fisheye</KEYWORD2>\r
+ <KEYWORD2>flatness</KEYWORD2>\r
+ <KEYWORD2>flip</KEYWORD2>\r
+ <FUNCTION>floor</FUNCTION>\r
+ <KEYWORD2>focal_point</KEYWORD2>\r
+ <KEYWORD1>fog</KEYWORD1>\r
+ <KEYWORD2>fog_alt</KEYWORD2>\r
+ <KEYWORD2>fog_offset</KEYWORD2>\r
+ <KEYWORD2>fog_type</KEYWORD2>\r
+ <KEYWORD1>#fopen</KEYWORD1>\r
+ <KEYWORD2>form</KEYWORD2>\r
+ <LITERAL1>frame_number</LITERAL1>\r
+ <KEYWORD2>frequency</KEYWORD2>\r
+ <KEYWORD2>fresnel</KEYWORD2>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD2>gather</KEYWORD2>\r
+ <KEYWORD2>gif</KEYWORD2>\r
+ <KEYWORD2>global_lights</KEYWORD2>\r
+ <KEYWORD1>global_settings</KEYWORD1>\r
+ <KEYWORD2>gradient</KEYWORD2>\r
+ <KEYWORD2>granite</KEYWORD2>\r
+ <LITERAL1>gray</LITERAL1>\r
+ <KEYWORD2>gray_threshold</KEYWORD2>\r
+ <LITERAL1>green</LITERAL1>\r
+ <KEYWORD2>h_angle</KEYWORD2>\r
+ <KEYWORD1>height_field</KEYWORD1>\r
+ <KEYWORD2>hexagon</KEYWORD2>\r
+ <KEYWORD2>hf_gray_16</KEYWORD2>\r
+ <KEYWORD2>hierarchy</KEYWORD2>\r
+ <KEYWORD2>hollow</KEYWORD2>\r
+ <KEYWORD2>hypercomplex</KEYWORD2>\r
+ <KEYWORD1>#if</KEYWORD1>\r
+ <KEYWORD1>#ifdef</KEYWORD1>\r
+ <KEYWORD2>iff</KEYWORD2>\r
+ <KEYWORD1>#ifndef</KEYWORD1>\r
+ <LITERAL1>image_height</LITERAL1>\r
+ <KEYWORD1>image_map</KEYWORD1>\r
+ <KEYWORD2>image_pattern</KEYWORD2>\r
+ <LITERAL1>image_width</LITERAL1>\r
+ <KEYWORD1>#include</KEYWORD1>\r
+ <LITERAL1>initial_clock</LITERAL1>\r
+ <LITERAL1>initial_frame</LITERAL1>\r
+ <FUNCTION>inside</FUNCTION>\r
+ <FUNCTION>int</FUNCTION>\r
+ <KEYWORD1>interior</KEYWORD1>\r
+ <KEYWORD1>interior_texture</KEYWORD1>\r
+ <FUNCTION>internal</FUNCTION>\r
+ <KEYWORD2>interpolate</KEYWORD2>\r
+ <KEYWORD1>intersection</KEYWORD1>\r
+ <KEYWORD2>intervals</KEYWORD2>\r
+ <KEYWORD2>inverse</KEYWORD2>\r
+ <KEYWORD1>ior</KEYWORD1>\r
+ <KEYWORD1>irid</KEYWORD1>\r
+ <KEYWORD2>irid_wavelength</KEYWORD2>\r
+ <KEYWORD1>isosurface</KEYWORD1>\r
+ <KEYWORD2>jitter</KEYWORD2>\r
+ <KEYWORD2>jpeg</KEYWORD2>\r
+ <KEYWORD2>julia</KEYWORD2>\r
+ <KEYWORD1>julia_fractal</KEYWORD1>\r
+ <KEYWORD1>lathe</KEYWORD1>\r
+ <KEYWORD2>lambda</KEYWORD2>\r
+ <KEYWORD2>leopard</KEYWORD2>\r
+ <KEYWORD1>light_group</KEYWORD1>\r
+ <KEYWORD1>light_source</KEYWORD1>\r
+ <KEYWORD2>linear_spline</KEYWORD2>\r
+ <KEYWORD2>linear_sweep</KEYWORD2>\r
+ <FUNCTION>ln</FUNCTION>\r
+ <KEYWORD2>load_file</KEYWORD2>\r
+ <KEYWORD1>#local</KEYWORD1>\r
+ <KEYWORD2>location</KEYWORD2>\r
+ <FUNCTION>log</FUNCTION>\r
+ <KEYWORD2>look_at</KEYWORD2>\r
+ <KEYWORD1>looks_like</KEYWORD1>\r
+ <KEYWORD2>low_error_factor</KEYWORD2>\r
+ <KEYWORD1>#macro</KEYWORD1>\r
+ <KEYWORD2>magnet</KEYWORD2>\r
+ <KEYWORD2>major_radius</KEYWORD2>\r
+ <KEYWORD2>mandel</KEYWORD2>\r
+ <KEYWORD2>map_type</KEYWORD2>\r
+ <KEYWORD2>marble</KEYWORD2>\r
+ <KEYWORD1>material</KEYWORD1>\r
+ <KEYWORD1>material_map</KEYWORD1>\r
+ <KEYWORD2>matrix</KEYWORD2>\r
+ <FUNCTION>max</FUNCTION>\r
+ <KEYWORD2>max_extent</KEYWORD2>\r
+ <KEYWORD2>max_gradient</KEYWORD2>\r
+ <KEYWORD2>max_intersections</KEYWORD2>\r
+ <KEYWORD2>max_iteration</KEYWORD2>\r
+ <KEYWORD2>max_sample</KEYWORD2>\r
+ <KEYWORD2>max_trace</KEYWORD2>\r
+ <KEYWORD2>max_trace_level</KEYWORD2>\r
+ <KEYWORD1>media</KEYWORD1>\r
+ <KEYWORD2>media_attenuation</KEYWORD2>\r
+ <KEYWORD2>media_interaction</KEYWORD2>\r
+ <KEYWORD1>merge</KEYWORD1>\r
+ <KEYWORD1>mesh</KEYWORD1>\r
+ <KEYWORD1>mesh2</KEYWORD1>\r
+ <KEYWORD2>metallic</KEYWORD2>\r
+ <KEYWORD2>method</KEYWORD2>\r
+ <KEYWORD2>metric</KEYWORD2>\r
+ <FUNCTION>min</FUNCTION>\r
+ <KEYWORD2>min_extent</KEYWORD2>\r
+ <KEYWORD2>minimum_reuse</KEYWORD2>\r
+ <FUNCTION>mod</FUNCTION>\r
+ <KEYWORD2>mortar</KEYWORD2>\r
+ <KEYWORD2>natural_spline</KEYWORD2>\r
+ <KEYWORD2>nearest_count</KEYWORD2>\r
+ <LITERAL1>no</LITERAL1>\r
+ <KEYWORD2>no_bump_scale</KEYWORD2>\r
+ <KEYWORD2>no_image</KEYWORD2>\r
+ <KEYWORD2>no_reflection</KEYWORD2>\r
+ <KEYWORD2>no_shadow</KEYWORD2>\r
+ <KEYWORD2>noise_generator</KEYWORD2>\r
+ <KEYWORD1>normal</KEYWORD1>\r
+ <KEYWORD1>normal_indices</KEYWORD1>\r
+ <KEYWORD1>normal_map</KEYWORD1>\r
+ <KEYWORD1>normal_vectors</KEYWORD1>\r
+ <KEYWORD2>number_of_waves</KEYWORD2>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD2>octaves</KEYWORD2>\r
+ <LITERAL1>off</LITERAL1>\r
+ <KEYWORD2>offset</KEYWORD2>\r
+ <KEYWORD2>omega</KEYWORD2>\r
+ <KEYWORD2>omnimax</KEYWORD2>\r
+ <LITERAL1>on</LITERAL1>\r
+ <KEYWORD2>once</KEYWORD2>\r
+ <KEYWORD2>onion</KEYWORD2>\r
+ <KEYWORD2>open</KEYWORD2>\r
+ <KEYWORD2>orient</KEYWORD2>\r
+ <KEYWORD2>orientation</KEYWORD2>\r
+ <KEYWORD2>orthographic</KEYWORD2>\r
+ <KEYWORD2>panoramic</KEYWORD2>\r
+ <KEYWORD2>parallel</KEYWORD2>\r
+ <KEYWORD2>parametric</KEYWORD2>\r
+ <KEYWORD2>pass_through</KEYWORD2>\r
+ <KEYWORD1>pattern</KEYWORD1>\r
+ <KEYWORD2>perspective</KEYWORD2>\r
+ <KEYWORD2>pgm</KEYWORD2>\r
+ <KEYWORD2>phase</KEYWORD2>\r
+ <KEYWORD2>phong</KEYWORD2>\r
+ <KEYWORD2>phong_size</KEYWORD2>\r
+ <KEYWORD1>photons</KEYWORD1>\r
+ <LITERAL1>pi</LITERAL1>\r
+ <KEYWORD1>pigment</KEYWORD1>\r
+ <KEYWORD1>pigment_map</KEYWORD1>\r
+ <KEYWORD1>pigment_pattern</KEYWORD1>\r
+ <KEYWORD2>planar</KEYWORD2>\r
+ <KEYWORD1>plane</KEYWORD1>\r
+ <KEYWORD1>png</KEYWORD1>\r
+ <KEYWORD2>point_at</KEYWORD2>\r
+ <KEYWORD1>poly</KEYWORD1>\r
+ <KEYWORD2>poly_wave</KEYWORD2>\r
+ <KEYWORD1>polygon</KEYWORD1>\r
+ <KEYWORD2>pot</KEYWORD2>\r
+ <FUNCTION>pow</FUNCTION>\r
+ <KEYWORD2>ppm</KEYWORD2>\r
+ <KEYWORD2>precision</KEYWORD2>\r
+ <KEYWORD2>precompute</KEYWORD2>\r
+ <KEYWORD2>pretrace_end</KEYWORD2>\r
+ <KEYWORD2>pretrace_start</KEYWORD2>\r
+ <KEYWORD1>prism</KEYWORD1>\r
+ <KEYWORD2>projected_through</KEYWORD2>\r
+ <KEYWORD2>pwr</KEYWORD2>\r
+ <KEYWORD2>quadratic_spline</KEYWORD2>\r
+ <KEYWORD2>quadric</KEYWORD2>\r
+ <KEYWORD2>quartic</KEYWORD2>\r
+ <KEYWORD2>quaternion</KEYWORD2>\r
+ <KEYWORD2>quick_color</KEYWORD2>\r
+ <KEYWORD2>quick_colour</KEYWORD2>\r
+ <KEYWORD2>quilted</KEYWORD2>\r
+ <KEYWORD2>radial</KEYWORD2>\r
+ <FUNCTION>radians</FUNCTION>\r
+ <KEYWORD1>radiosity</KEYWORD1>\r
+ <KEYWORD2>radius</KEYWORD2>\r
+ <KEYWORD1>rainbow</KEYWORD1>\r
+ <KEYWORD2>ramp_wave</KEYWORD2>\r
+ <FUNCTION>rand</FUNCTION>\r
+ <KEYWORD1>#range</KEYWORD1>\r
+ <KEYWORD2>range_divider</KEYWORD2>\r
+ <KEYWORD2>ratio</KEYWORD2>\r
+ <KEYWORD1>#read</KEYWORD1>\r
+ <KEYWORD2>reciprocal</KEYWORD2>\r
+ <KEYWORD2>recursion_limit</KEYWORD2>\r
+ <LITERAL1>red</LITERAL1>\r
+ <KEYWORD1>reflection</KEYWORD1>\r
+ <KEYWORD2>reflection_exponent</KEYWORD2>\r
+ <KEYWORD2>refraction</KEYWORD2>\r
+ <KEYWORD1>#render</KEYWORD1>\r
+ <KEYWORD2>repeat</KEYWORD2>\r
+ <KEYWORD2>rgb</KEYWORD2>\r
+ <KEYWORD2>rgbf</KEYWORD2>\r
+ <KEYWORD2>rgbft</KEYWORD2>\r
+ <KEYWORD2>rgbt</KEYWORD2>\r
+ <KEYWORD2>right</KEYWORD2>\r
+ <KEYWORD2>ripples</KEYWORD2>\r
+ <KEYWORD2>rotate</KEYWORD2>\r
+ <KEYWORD2>roughness</KEYWORD2>\r
+ <KEYWORD2>samples</KEYWORD2>\r
+ <KEYWORD2>save_file</KEYWORD2>\r
+ <KEYWORD2>scale</KEYWORD2>\r
+ <KEYWORD2>scallop_wave</KEYWORD2>\r
+ <KEYWORD2>scattering</KEYWORD2>\r
+ <FUNCTION>seed</FUNCTION>\r
+ <KEYWORD2>select</KEYWORD2>\r
+ <KEYWORD2>shadowless</KEYWORD2>\r
+ <FUNCTION>sin</FUNCTION>\r
+ <KEYWORD2>sine_wave</KEYWORD2>\r
+ <FUNCTION>sinh</FUNCTION>\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD2>sky</KEYWORD2>\r
+ <KEYWORD1>sky_sphere</KEYWORD1>\r
+ <KEYWORD2>slice</KEYWORD2>\r
+ <KEYWORD1>slope</KEYWORD1>\r
+ <KEYWORD1>slope_map</KEYWORD1>\r
+ <KEYWORD2>smooth</KEYWORD2>\r
+ <KEYWORD1>smooth_triangle</KEYWORD1>\r
+ <KEYWORD1>solid</KEYWORD1>\r
+ <KEYWORD1>sor</KEYWORD1>\r
+ <KEYWORD2>spacing</KEYWORD2>\r
+ <KEYWORD2>specular</KEYWORD2>\r
+ <KEYWORD1>sphere</KEYWORD1>\r
+ <KEYWORD1>sphere_sweep</KEYWORD1>\r
+ <KEYWORD2>spherical</KEYWORD2>\r
+ <KEYWORD2>spiral1</KEYWORD2>\r
+ <KEYWORD2>spiral2</KEYWORD2>\r
+ <KEYWORD1>spline</KEYWORD1>\r
+ <KEYWORD2>split_union</KEYWORD2>\r
+ <KEYWORD2>spotlight</KEYWORD2>\r
+ <KEYWORD2>spotted</KEYWORD2>\r
+ <KEYWORD2>sqr</KEYWORD2>\r
+ <FUNCTION>sqrt</FUNCTION>\r
+ <KEYWORD1>#statistics</KEYWORD1>\r
+ <FUNCTION>str</FUNCTION>\r
+ <FUNCTION>strcmp</FUNCTION>\r
+ <KEYWORD2>strength</KEYWORD2>\r
+ <FUNCTION>strlen</FUNCTION>\r
+ <FUNCTION>strlwr</FUNCTION>\r
+ <FUNCTION>strupr</FUNCTION>\r
+ <KEYWORD2>sturm</KEYWORD2>\r
+ <FUNCTION>substr</FUNCTION>\r
+ <KEYWORD1>superellipsoid</KEYWORD1>\r
+ <KEYWORD1>#switch</KEYWORD1>\r
+ <KEYWORD2>sys</KEYWORD2>\r
+ <LITERAL1>t</LITERAL1>\r
+ <FUNCTION>tan</FUNCTION>\r
+ <FUNCTION>tanh</FUNCTION>\r
+ <KEYWORD2>target</KEYWORD2>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>texture</KEYWORD1>\r
+ <KEYWORD1>texture_list</KEYWORD1>\r
+ <KEYWORD1>texture_map</KEYWORD1>\r
+ <KEYWORD2>tga</KEYWORD2>\r
+ <KEYWORD2>thickness</KEYWORD2>\r
+ <KEYWORD2>threshold</KEYWORD2>\r
+ <KEYWORD2>tiff</KEYWORD2>\r
+ <KEYWORD2>tightness</KEYWORD2>\r
+ <KEYWORD2>tile2</KEYWORD2>\r
+ <KEYWORD2>tiles</KEYWORD2>\r
+ <KEYWORD2>tolerance</KEYWORD2>\r
+ <KEYWORD2>toroidal</KEYWORD2>\r
+ <KEYWORD1>torus</KEYWORD1>\r
+ <FUNCTION>trace</FUNCTION>\r
+ <KEYWORD2>transform</KEYWORD2>\r
+ <KEYWORD2>translate</KEYWORD2>\r
+ <KEYWORD2>transmit</KEYWORD2>\r
+ <KEYWORD1>triangle</KEYWORD1>\r
+ <KEYWORD2>triangle_wave</KEYWORD2>\r
+ <LITERAL1>true</LITERAL1>\r
+ <KEYWORD2>ttf</KEYWORD2>\r
+ <KEYWORD2>turb_depth</KEYWORD2>\r
+ <KEYWORD2>turbulence</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <LITERAL1>u</LITERAL1>\r
+ <KEYWORD2>u_steps</KEYWORD2>\r
+ <KEYWORD2>ultra_wide_angle</KEYWORD2>\r
+ <KEYWORD1>#undef</KEYWORD1>\r
+ <KEYWORD1>union</KEYWORD1>\r
+ <KEYWORD2>up</KEYWORD2>\r
+ <KEYWORD2>use_alpha</KEYWORD2>\r
+ <KEYWORD2>use_color</KEYWORD2>\r
+ <KEYWORD2>use_colour</KEYWORD2>\r
+ <KEYWORD2>use_index</KEYWORD2>\r
+ <KEYWORD2>utf8</KEYWORD2>\r
+ <KEYWORD1>uv_indices</KEYWORD1>\r
+ <KEYWORD1>uv_mapping</KEYWORD1>\r
+ <KEYWORD1>uv_vectors</KEYWORD1>\r
+ <LITERAL1>v</LITERAL1>\r
+ <KEYWORD2>v_angle</KEYWORD2>\r
+ <KEYWORD2>v_steps</KEYWORD2>\r
+ <FUNCTION>val</FUNCTION>\r
+ <KEYWORD2>variance</KEYWORD2>\r
+ <FUNCTION>vaxis_rotate</FUNCTION>\r
+ <FUNCTION>vcross</FUNCTION>\r
+ <FUNCTION>vdot</FUNCTION>\r
+ <KEYWORD1>#version</KEYWORD1>\r
+ <KEYWORD1>vertex_vectors</KEYWORD1>\r
+ <FUNCTION>vlength</FUNCTION>\r
+ <FUNCTION>vnormalize</FUNCTION>\r
+ <FUNCTION>vrotate</FUNCTION>\r
+ <FUNCTION>vstr</FUNCTION>\r
+ <FUNCTION>vturbulence</FUNCTION>\r
+ <KEYWORD1>#warning</KEYWORD1>\r
+ <KEYWORD1>warp</KEYWORD1>\r
+ <KEYWORD2>water_level</KEYWORD2>\r
+ <KEYWORD2>waves</KEYWORD2>\r
+ <KEYWORD1>#while</KEYWORD1>\r
+ <KEYWORD2>width</KEYWORD2>\r
+ <KEYWORD2>wood</KEYWORD2>\r
+ <KEYWORD2>wrinkles</KEYWORD2>\r
+ <KEYWORD1>#write</KEYWORD1>\r
+ <LITERAL1>x</LITERAL1>\r
+ <LITERAL1>y</LITERAL1>\r
+ <LITERAL1>yes</LITERAL1>\r
+ <LITERAL1>z</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!--\r
+Sybase PowerDynamo mode file for jEdit - v 1.0\r
+(For the 5 people in the world who still have to program in dynamo.)\r
+\r
+By Ben Williams (benw@webmedia.com.au)\r
+\r
+1.0 2003-11-13\r
+Initial release - supports dynamo script, SQL tags, and mostly complete support\r
+for the other tags (data, document, etc). more support planned for future.\r
+\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=" @ %^*()+=|\{}[]:;,.?$&" />\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-script">\r
+ <BEGIN><!--script</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- these are the other dynamo tag types. for the meoment, we'll just hand them over to powerdynamo-script,\r
+ but in future versions we can easily add individual processing for each of them, as they should have.\r
+ -->\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-data">\r
+ <BEGIN><!--data</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-document">\r
+ <BEGIN><!--document</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-script">\r
+ <BEGIN><!--evaluate</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-script">\r
+ <BEGIN><!--execute</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--formatting</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--/formatting</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--include</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--label</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="transact-sql::MAIN">\r
+ <BEGIN><!--sql</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_error_code</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_error_info</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_state</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_on_no_error</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--/sql_on_no_error</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_on_error</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--/sql_on_error</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_on_no_rows</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--/sql_on_no_rows</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--sql_on_rows</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-tag-general">\r
+ <BEGIN><!--/sql_on_rows</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP">\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-script">\r
+ <BEGIN><!--script</BEGIN>\r
+ <END>--?></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="TAGS_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="TAGS_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS_LITERAL" DEFAULT="LITERAL1">\r
+ <SPAN TYPE="LABEL" DELEGATE="powerdynamo-script">\r
+ <BEGIN><!--script</BEGIN>\r
+ <END>?--></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="powerdynamo-script" ESCAPE="\" HIGHLIGHT_DIGITS="TRUE">\r
+ <!--PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS-->\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Language constructs (24) -->\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>byte</KEYWORD1>\r
+ <KEYWORD1>boolean</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>char</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>double</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>exists</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>file</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>long</KEYWORD1>\r
+ <KEYWORD1>length</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>null</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>synchronized</KEYWORD1>\r
+ <KEYWORD1>short</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>super</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>this</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>throws</KEYWORD1>\r
+ <KEYWORD1>threadsafe</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD1>void</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- objects -->\r
+ <KEYWORD2></KEYWORD2>\r
+ <KEYWORD2>document</KEYWORD2>\r
+ <KEYWORD2>connection</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>query</KEYWORD2>\r
+ <KEYWORD2>session</KEYWORD2>\r
+ <KEYWORD2>site</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>typeof</KEYWORD2>\r
+\r
+ <!-- methods & attributes -->\r
+ <KEYWORD3>AskQuestion</KEYWORD3>\r
+ <KEYWORD3>autoCommit</KEYWORD3>\r
+ <KEYWORD3>Close</KEYWORD3>\r
+ <KEYWORD3>Commit</KEYWORD3>\r
+ <KEYWORD3>Connect</KEYWORD3>\r
+ <KEYWORD3>CreateConnection</KEYWORD3>\r
+ <KEYWORD3>CreateDocument</KEYWORD3>\r
+ <KEYWORD3>CreatePropertySheet</KEYWORD3>\r
+ <KEYWORD3>CreateQuery</KEYWORD3>\r
+ <KEYWORD3>CreateWizard</KEYWORD3>\r
+ <KEYWORD3>cachedOutputTimeOut</KEYWORD3>\r
+ <KEYWORD3>charAt</KEYWORD3>\r
+ <KEYWORD3>connected</KEYWORD3>\r
+ <KEYWORD3>connection</KEYWORD3>\r
+ <KEYWORD3>connectionId</KEYWORD3>\r
+ <KEYWORD3>connectionName</KEYWORD3>\r
+ <KEYWORD3>connectionType</KEYWORD3>\r
+ <KEYWORD3>connectParameters</KEYWORD3>\r
+ <KEYWORD3>contentType</KEYWORD3>\r
+ <KEYWORD3>DeleteConnection</KEYWORD3>\r
+ <KEYWORD3>DeleteDocument</KEYWORD3>\r
+ <KEYWORD3>Disconnect</KEYWORD3>\r
+ <KEYWORD3>database</KEYWORD3>\r
+ <KEYWORD3>dataSource</KEYWORD3>\r
+ <KEYWORD3>dataSourceList</KEYWORD3>\r
+ <KEYWORD3>description</KEYWORD3>\r
+ <KEYWORD3>Exec</KEYWORD3>\r
+ <KEYWORD3>Execute</KEYWORD3>\r
+ <KEYWORD3>ExportTo</KEYWORD3>\r
+ <KEYWORD3>eof</KEYWORD3>\r
+ <KEYWORD3>errorNumber</KEYWORD3>\r
+ <KEYWORD3>errorString</KEYWORD3>\r
+ <KEYWORD3>GetColumnCount</KEYWORD3>\r
+ <KEYWORD3>GetColumnIndex</KEYWORD3>\r
+ <KEYWORD3>GetColumnLabel</KEYWORD3>\r
+ <KEYWORD3>GetConnection</KEYWORD3>\r
+ <KEYWORD3>GetConnectionIdList</KEYWORD3>\r
+ <KEYWORD3>GetConnectionNameList</KEYWORD3>\r
+ <KEYWORD3>GetCWD</KEYWORD3>\r
+ <KEYWORD3>GetDirectory</KEYWORD3>\r
+ <KEYWORD3>GetDocument</KEYWORD3>\r
+ <KEYWORD3>GetEmpty</KEYWORD3>\r
+ <KEYWORD3>GetEnv</KEYWORD3>\r
+ <KEYWORD3>GetErrorCode</KEYWORD3>\r
+ <KEYWORD3>GetErrorInfo</KEYWORD3>\r
+ <KEYWORD3>GetEventList</KEYWORD3>\r
+ <KEYWORD3>GetFilePtr</KEYWORD3>\r
+ <KEYWORD3>GetGenerated</KEYWORD3>\r
+ <KEYWORD3>GetRootDocument</KEYWORD3>\r
+ <KEYWORD3>GetRowCount</KEYWORD3>\r
+ <KEYWORD3>GetServerVariable</KEYWORD3>\r
+ <KEYWORD3>GetState</KEYWORD3>\r
+ <KEYWORD3>GetSupportedMoves</KEYWORD3>\r
+ <KEYWORD3>GetValue</KEYWORD3>\r
+ <KEYWORD3>ImportFrom</KEYWORD3>\r
+ <KEYWORD3>Include</KEYWORD3>\r
+ <KEYWORD3>id</KEYWORD3>\r
+ <KEYWORD3>indexOf</KEYWORD3>\r
+ <KEYWORD3>lastIndexOf</KEYWORD3>\r
+ <KEYWORD3>lastModified</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>location</KEYWORD3>\r
+ <KEYWORD3>Move</KEYWORD3>\r
+ <KEYWORD3>MoveFirst</KEYWORD3>\r
+ <KEYWORD3>MoveLast</KEYWORD3>\r
+ <KEYWORD3>MoveNext</KEYWORD3>\r
+ <KEYWORD3>MovePrevious</KEYWORD3>\r
+ <KEYWORD3>MoveRelative</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>OnEvent</KEYWORD3>\r
+ <KEYWORD3>Open</KEYWORD3>\r
+ <KEYWORD3>Opened</KEYWORD3>\r
+ <KEYWORD3>parent</KEYWORD3>\r
+ <KEYWORD3>password</KEYWORD3>\r
+ <KEYWORD3>ReadChar</KEYWORD3>\r
+ <KEYWORD3>ReadLine</KEYWORD3>\r
+ <KEYWORD3>Refresh</KEYWORD3>\r
+ <KEYWORD3>Rollback</KEYWORD3>\r
+ <KEYWORD3>redirect</KEYWORD3>\r
+ <KEYWORD3>Seek</KEYWORD3>\r
+ <KEYWORD3>SetEnv</KEYWORD3>\r
+ <KEYWORD3>SetSQL</KEYWORD3>\r
+ <KEYWORD3>ShowMessage</KEYWORD3>\r
+ <KEYWORD3>substring</KEYWORD3>\r
+ <KEYWORD3>server</KEYWORD3>\r
+ <KEYWORD3>simulateCursors</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+ <KEYWORD3>source</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+ <KEYWORD3>timeOut</KEYWORD3>\r
+ <KEYWORD3>toLowerCase</KEYWORD3>\r
+ <KEYWORD3>toUpperCase</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>userId</KEYWORD3>\r
+ <KEYWORD3>value</KEYWORD3>\r
+ <KEYWORD3>WriteLine</KEYWORD3>\r
+ <KEYWORD3>Write</KEYWORD3>\r
+ <KEYWORD3>write</KEYWORD3>\r
+ <KEYWORD3>writeln</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES IGNORE_CASE="TRUE" SET="powerdynamo-tag-general">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>NAME</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES IGNORE_CASE="TRUE" SET="powerdynamo-tag-data">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>NAME</KEYWORD2>\r
+ <KEYWORD2>QUERY</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES IGNORE_CASE="TRUE" SET="powerdynamo-tag-document">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="powerdynamo_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD2>CONTENT_TYPE</KEYWORD2>\r
+ <KEYWORD2>REDIRECT</KEYWORD2>\r
+ <KEYWORD2>STATUS</KEYWORD2>\r
+ <KEYWORD2>CACHED_OUTPUT_TIMEOUT</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- ====================================================================== -->\r
+<!-- Progress mode for jEdit 4.2+ -->\r
+<!-- -->\r
+<!-- This is a jEdit syntax file for Progress Open Edge 10.0A -->\r
+<!-- -->\r
+<!-- For comments / suggestions / contributions, please contact me at -->\r
+<!-- p.tingen@vcd.nl -->\r
+<!-- -->\r
+<!-- ====================================================================== -->\r
+<!-- -->\r
+<!-- Contributors: PT Patrick Tingen -->\r
+<!-- GW Gerben Wieringa -->\r
+<!-- SH Stephen Hawkins -->\r
+<!-- -->\r
+<!-- ====================================================================== -->\r
+<!-- 2001-07-17 PT Initial version for Progress 8.2 -->\r
+<!-- 2002-10-08 GW Added some keywords -->\r
+<!-- 2003-02-18 PT Added some keywords -->\r
+<!-- 2003-05-21 PT Rewritten. Thanks to GW & SH ! -->\r
+<!-- 2004-01-26 PT Generated using Progress program for Progress 9.1D -->\r
+<!-- 2004-02-04 PT Generated using Progress program for Open Edge 10.0A -->\r
+<!-- 2004-02-06 PT Corrected due to validating errors against xmode.dtd -->\r
+<!-- 2004-02-16 PT Fixed 'or choose of' being reported as invalid. -->\r
+<!-- 2004-04-29 PT Added some appbuilder constants -->\r
+<!-- ====================================================================== -->\r
+<!-- Special thanks to Gerben and Stephen for their support. -->\r
+<!-- ====================================================================== -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="boxComment" VALUE="**" />\r
+ <PROPERTY NAME="lineComment" VALUE="&scop cmt " />\r
+ <PROPERTY NAME="indentNextLine" VALUE="\s*(if|do|for|else|case|repeat|procedure|function)(\s+.*|\s*)" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",.;:/?^[]@" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ </PROPS>\r
+\r
+ <RULES SET="COMMENT" DEFAULT="COMMENT1" IGNORE_CASE="TRUE">\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN>/*</BEGIN> <END>*/</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES ESCAPE="~" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- COMMENT1 : Normal Progress comments -->\r
+ <!-- LITERAL1 : text between ' or " -->\r
+ <!-- LITERAL2 : -->\r
+ <!-- MARKUP : -->\r
+ <!-- LABEL : Progress block labels -->\r
+ <!-- FUNCTION : attributes and methods -->\r
+ <!-- OPERATOR : All operators -->\r
+ <!-- INVALID : Deprecated keywords -->\r
+ <!-- NON INVALID: Correction for non-invalid keywords -->\r
+\r
+ <!-- COMMENT1 : Normal Progress comments -->\r
+ <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <!-- LITERAL1 : text between ' or " -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- LABEL : Progress block labels -->\r
+ <MARK_FOLLOWING TYPE="LABEL">{&</MARK_FOLLOWING>\r
+\r
+ <!-- OPERATOR : All operators -->\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <!-- GT, EQ etc -->\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+\r
+ <!-- LABEL : Progress block labels -->\r
+ <!-- Better would be to search for regexp ^[[:blank:]]*[[:graph:]]+:$ -->\r
+ <!-- but this is not (yet) implemented since regexps cannot match -->\r
+ <!-- anything that does not have a fixed starting character. -->\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_WHITESPACE_END="TRUE" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+\r
+ <!-- FUNCTION : attributes and methods -->\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:accelerator</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:accept-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:accept-row-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-buffer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-calc-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-columns-from</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-events-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-fields-from</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-first</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-index-field</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-last</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-like-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-like-field</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-like-index</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-new-field</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-new-index</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:add-super-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:adm-data</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:after-buffer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:after-rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:after-table</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:allow-column-searching</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:always-on-top</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:ambiguous</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:append-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:appl-alert-boxes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:apply-callback</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:appserver-info</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:appserver-password</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:appserver-userid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:async-request-count</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:async-request-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:asynchronous</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:attach-data-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:attr-space</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:attribute-names</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-completion</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-delete</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-delete-xml</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-end-key</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-go</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-indent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-resize</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-return</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-validate</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:auto-zap</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:available</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:available-formats</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:background</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:base-ade</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:basic-logging</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:batch-mode</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:before-buffer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:before-rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:before-table</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:bgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:blank</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:block-iteration-display</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-bottom-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-bottom-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-left-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-left-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-right-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-right-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-top-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:border-top-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:box</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:box-selectable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:browse-column-data-types</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:browse-column-formats</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:browse-column-labels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-compare</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-copy</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-create</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-delete</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-field</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-lines</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-release</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-validate</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:buffer-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:bytes-read</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:bytes-written</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cache</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:call-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:call-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:can-create</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:can-delete</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:can-read</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:can-write</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cancel-break</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cancel-button</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cancel-requests</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cancelled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:careful-paint</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:case-sensitive</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:centered</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:character_length</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:charset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:checked</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:child-num</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:clear</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:clear-selection</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:client-connection-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:client-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:clone-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:code</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:codepage</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-bgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-dcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-fgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-label</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-movable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-pfcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-read-only</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-resizable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:column-scrolling</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:columns</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:com-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:complete</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:config-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:connect</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:connected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:context-help</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:context-help-file</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:context-help-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:control-box</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:convert-3d-colors</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:convert-to-offset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:coverage</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cpcase</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cpcoll</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cplog</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cpprint</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cprcodein</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cprcodeout</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cpstream</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cpterm</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:crc-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:create-like</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:create-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:create-node-namespace</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:create-on-add</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:create-result-list-entry</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-changed</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-environment</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-iteration</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-result-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-row-modified</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:current-window</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cursor-char</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cursor-line</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:cursor-offset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:data-entry-return</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:data-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:data-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dataset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:date-format</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:db-references</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dbname</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dde-error</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dde-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dde-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dde-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dde-topic</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:deblank</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:debug</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:debug-alert</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:decimals</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:default</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:default-buffer-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:default-button</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:default-commit</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:default-string</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-current-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-line</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-result-list-entry</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-selected-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delete-selected-rows</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:delimiter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:description</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:deselect-focused-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:deselect-rows</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:deselect-selected-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:detach-data-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:directory</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disable-auto-zap</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disable-connections</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disable-dump-triggers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disable-load-triggers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:disconnect</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:display-message</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:display-timezone</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:display-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:down</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:drag-enabled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:drop-target</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dump-logging-now</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:dynamic</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edge-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edge-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-can-paste</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-can-undo</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-clear</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-copy</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-cut</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-paste</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:edit-undo</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:empty</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:empty-temp-table</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:enable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:enable-connections</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:enabled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:encoding</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:end-file-drop</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:end-user-prompt</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:error-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:error-object-detail</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:error-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:error-string</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:event-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:event-procedure-context</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:event-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:exclusive-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:execution-log</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:expand</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:expandable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:export</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:extent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:fetch-selected-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:fgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-create-date</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-create-time</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-mod-date</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-mod-time</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-offset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-size</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:file-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:fill</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:fill-mode</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:filled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:find-by-rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:find-current</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:find-first</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:find-last</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:find-unique</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-async-request</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-buffer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-data-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-dataset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-query</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-server</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-server-socket</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-socket</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:first-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:fit-last-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:flat-button</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:focused-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:focused-row-selected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:font-based-layout</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:foreground</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:form-input</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:format</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:forward-only</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-col</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-spacing</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-x</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frame-y</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:frequency</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:full-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:full-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:full-pathname</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:full-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:full-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:function</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-attribute</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-attribute-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-blue-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-browse-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-buffer-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-bytes-available</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-cgi-list</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-cgi-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-child-relation</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-config-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-current</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-document-element</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-dropped-file</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-dynamic</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-first</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-green-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-iteration</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-last</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-message</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-next</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-number</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-parent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-prev</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-printers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-red-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-repositioned-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-rgb-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-selected-widget</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-signature</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-socket-option</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-text-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-text-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-text-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-text-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:get-wait-state</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:graphic-edge</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-factor-horizontal</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-factor-vertical</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-snap</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-unit-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-unit-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-unit-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-unit-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:grid-visible</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:handler</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:has-lobs</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:has-records</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:hidden</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:horizontal</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-charset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-end-of-line</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-end-of-page</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-frame-begin</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-frame-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-header-begin</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-header-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-title-begin</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:html-title-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:hwnd</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:icfparameter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:icon</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:image</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:image-down</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:image-insensitive</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:image-up</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:immediate-display</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:import-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:in-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:increment-exclusive-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:index</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:index-information</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:initial</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:initialize-document-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:initiate</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:inner-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:inner-lines</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:input-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-backtab</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-before</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-file</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-string</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:insert-tab</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:instantiating-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:internal-entries</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:invoke</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:is-open</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:is-parameter-set</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:is-row-selected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:is-selected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:is-xml</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:items-per-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:keep-connection-open</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:keep-frame-z-order</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:keep-security-cache</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:key</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:label</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:label-bgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:label-dcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:label-fgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:label-font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:labels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:languages</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:large</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:large-to-small</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-async-request</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-server</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-server-socket</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-socket</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:last-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:line</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:list-item-pairs</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:list-items</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:listings</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:literal-question</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-icon</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-image</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-image-down</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-image-insensitive</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-image-up</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-mouse-pointer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:load-small-icon</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:local-host</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:local-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:local-port</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locator-column-number</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locator-line-number</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locator-public-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locator-system-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locator-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:locked</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:log-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:longchar-to-node-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:lookup</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:mandatory</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:manual-highlight</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:margin-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:margin-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:margin-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:margin-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-button</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-data-guess</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:max-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:md5-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:memptr-to-node-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:menu-bar</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:menu-key</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:menu-mouse</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:merge-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:merge-row-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:message-area</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:message-area-font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-button</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-column-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-column-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-schema-marshall</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:min-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:modified</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:mouse-pointer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:movable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-after-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-before-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-to-bottom</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-to-eof</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:move-to-top</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:multiple</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:multitasking-interval</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:namespace-prefix</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:namespace-uri</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:needs-appserver-prompt</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:needs-prompt</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:new</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:new-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:next-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:next-sibling</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:next-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:no-current-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:no-empty-space</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:no-focus</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:no-schema-marshall</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:no-validate</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:node-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:node-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:node-value-to-longchar</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:node-value-to-memptr</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:normalize</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-buffers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-buttons</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-child-relations</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-children</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-columns</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-dropped-files</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-entries</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-fields</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-formats</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-items</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-iterations</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-lines</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-locked-columns</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-messages</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-parameters</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-replaced</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-results</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-selected-rows</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-selected-widgets</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-tabs</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-to-retain</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:num-visible-columns</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:numeric-decimal-point</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:numeric-format</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:numeric-separator</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:ole-invoke-locale</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:ole-names-locale</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:on-frame-border</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:origin-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:origin-rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:overlay</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:owner</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:owner-document</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:page-bottom</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:page-top</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:parameter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:parent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:parent-relation</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:parse-status</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:password-field</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:pathname</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:persistent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:persistent-cache-disabled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:persistent-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:pfcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:pixels-per-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:pixels-per-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:popup-menu</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:popup-only</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:position</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:prepare-string</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:prepared</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:prev-column</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:prev-sibling</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:prev-tab-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:primary</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:printer-control-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:printer-hdc</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:printer-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:printer-port</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:private-data</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:procedure-name</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:profiling</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:progress-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:proxy</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:proxy-password</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:proxy-userid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:public-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:published-events</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:query</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:query-close</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:query-off-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:query-open</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:query-prepare</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:quit</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:radio-buttons</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:raw-transfer</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:read</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:read-file</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:read-only</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:recid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:record-length</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:refresh</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:refreshable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reject-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reject-row-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:rejected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remote</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remote-host</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remote-port</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remove-attribute</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remove-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remove-events-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:remove-super-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:replace</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:replace-child</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:replace-selection-text</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reposition-backwards</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reposition-forwards</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reposition-parent-relation</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reposition-to-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:reposition-to-rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:resizable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:resize</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:retain-shape</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:return-inserted</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:return-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:return-value-data-type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row-markers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row-resizable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:row-state</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:rowid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:rule-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:rule-y</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:save</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:save-file</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:save-row-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sax-parse</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sax-parse-first</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sax-parse-next</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sax-xml</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:schema-change</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:schema-path</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:screen-lines</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:screen-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-bars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-delta</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-offset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-to-current-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-to-item</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scroll-to-selected-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scrollable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scrollbar-horizontal</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:scrollbar-vertical</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:search</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:select-all</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:select-focused-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:select-next-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:select-prev-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:select-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:selectable</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:selected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:selection-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:selection-start</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:selection-text</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sensitive</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:separator-fgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:separators</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server-connection-bound</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server-connection-bound-request</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server-connection-context</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server-connection-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:server-operating-mode</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:session-end</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-attribute</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-attribute-node</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-blue-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-break</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-buffers</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-callback-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-commit</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-connect-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-dynamic</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-green-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-input-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-numeric-format</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-parameter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-read-response-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-red-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-repositioned-row</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-rgb-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-rollback</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-selection</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-socket-option</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:set-wait-state</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:show-in-taskbar</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:side-label-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:side-labels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:skip-deleted-record</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:small-icon</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:small-title</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sort</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:startup-parameters</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:status-area</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:status-area-font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:stop</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:stop-parsing</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:stopped</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:stretch-to-fit</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:string-value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:sub-menu-help</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:subtype</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:super-procedures</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:suppress-namespace-processing</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:suppress-warnings</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:synchronize</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:system-alert-boxes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:system-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tab-position</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tab-stop</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:table</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:table-crc-list</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:table-handle</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:table-list</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:table-number</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:temp-directory</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:temp-table-prepare</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:text-selected</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:three-d</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tic-marks</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:time-source</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:title</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:title-bgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:title-dcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:title-fgcolor</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:title-font</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:toggle-box</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tooltip</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tooltips</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:top-only</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:trace-filter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tracing</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:tracking-changes</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:trans-init-procedure</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:transaction</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:transparent</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:type</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:undo</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:unique-id</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:unique-match</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:url</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:url-decode</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:url-encode</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:url-password</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:url-userid</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:user-data</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:v6display</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:validate</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:validate-expression</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:validate-message</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:validate-xml</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:validation-enabled</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:value</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:view-first-column-on-reopen</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:virtual-height-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:virtual-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:virtual-width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:virtual-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:visible</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:warning</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:widget-enter</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:widget-leave</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:width-chars</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:window</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:window-state</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:window-system</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:word-wrap</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:work-area-height-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:work-area-width-pixels</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:work-area-x</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:work-area-y</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:write</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:write-data</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:x</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:x-document</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:xml-schema-path</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:xml-suppress-namespace-processing</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:y</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:year-offset</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION">:_dcm</MARK_FOLLOWING>\r
+\r
+ <!-- INVALID : Deprecated keywords -->\r
+ <SEQ_REGEXP TYPE="INVALID" HASH_CHAR="put" AT_WORD_START="TRUE">put\s+screen</SEQ_REGEXP>\r
+ <MARK_FOLLOWING TYPE="INVALID">:WHERE-STRING</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="INVALID">:REPOSITION-PARENT-RELATION</MARK_FOLLOWING>\r
+\r
+ <!-- NON INVALID: Correction for non-invalid keywords -->\r
+ <SEQ_REGEXP TYPE="KEYWORD3" HASH_CHAR="choose" AT_WORD_START="TRUE">choose\s+of</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <!-- Keep the following sections in the specified order since -->\r
+ <!-- some keywords occur in more than 1 section. The last one -->\r
+ <!-- determines the appearance of a certain keyword. -->\r
+\r
+ <!-- KEYWORD3 : events -->\r
+ <!-- KEYWORD1 : Statements, functions, attributes, methods -->\r
+ <!-- KEYWORD2 : VST & metaschema files and fields -->\r
+ <!-- INVALID : Deprecated keywords -->\r
+ <!-- COMMENT2 : Preprocessor statements -->\r
+\r
+ <!-- KEYWORD3 : events -->\r
+ <KEYWORD3>any-key</KEYWORD3>\r
+ <KEYWORD3>any-printable</KEYWORD3>\r
+ <KEYWORD3>back-tab</KEYWORD3>\r
+ <KEYWORD3>backspace</KEYWORD3>\r
+ <KEYWORD3>bell</KEYWORD3>\r
+ <KEYWORD3>choose</KEYWORD3>\r
+ <KEYWORD3>container-event</KEYWORD3>\r
+ <KEYWORD3>dde-notify</KEYWORD3>\r
+ <KEYWORD3>default-action</KEYWORD3>\r
+ <KEYWORD3>del</KEYWORD3>\r
+ <KEYWORD3>delete-char</KEYWORD3>\r
+ <KEYWORD3>delete-character</KEYWORD3>\r
+ <KEYWORD3>deselect</KEYWORD3>\r
+ <KEYWORD3>deselection</KEYWORD3>\r
+ <KEYWORD3>drop-file-notify</KEYWORD3>\r
+ <KEYWORD3>empty-selection</KEYWORD3>\r
+ <KEYWORD3>end</KEYWORD3>\r
+ <KEYWORD3>end-box-selection</KEYWORD3>\r
+ <KEYWORD3>end-error</KEYWORD3>\r
+ <KEYWORD3>end-move</KEYWORD3>\r
+ <KEYWORD3>end-resize</KEYWORD3>\r
+ <KEYWORD3>end-search</KEYWORD3>\r
+ <KEYWORD3>endkey</KEYWORD3>\r
+ <KEYWORD3>entry</KEYWORD3>\r
+ <KEYWORD3>error</KEYWORD3>\r
+ <KEYWORD3>go</KEYWORD3>\r
+ <KEYWORD3>help</KEYWORD3>\r
+ <KEYWORD3>home</KEYWORD3>\r
+ <KEYWORD3>leave</KEYWORD3>\r
+ <KEYWORD3>menu-drop</KEYWORD3>\r
+ <KEYWORD3>off-end</KEYWORD3>\r
+ <KEYWORD3>off-home</KEYWORD3>\r
+ <KEYWORD3>parent-window-close</KEYWORD3>\r
+ <KEYWORD3>procedure-complete</KEYWORD3>\r
+ <KEYWORD3>read-response</KEYWORD3>\r
+ <KEYWORD3>recall</KEYWORD3>\r
+ <KEYWORD3>return</KEYWORD3>\r
+ <KEYWORD3>row-display</KEYWORD3>\r
+ <KEYWORD3>row-entry</KEYWORD3>\r
+ <KEYWORD3>row-leave</KEYWORD3>\r
+ <KEYWORD3>scroll-notify</KEYWORD3>\r
+ <KEYWORD3>select</KEYWORD3>\r
+ <KEYWORD3>selection</KEYWORD3>\r
+ <KEYWORD3>start-box-selection</KEYWORD3>\r
+ <KEYWORD3>start-move</KEYWORD3>\r
+ <KEYWORD3>start-resize</KEYWORD3>\r
+ <KEYWORD3>start-search</KEYWORD3>\r
+ <KEYWORD3>tab</KEYWORD3>\r
+ <KEYWORD3>value-changed</KEYWORD3>\r
+ <KEYWORD3>window-close</KEYWORD3>\r
+ <KEYWORD3>window-maximized</KEYWORD3>\r
+ <KEYWORD3>window-minimized</KEYWORD3>\r
+ <KEYWORD3>window-resized</KEYWORD3>\r
+ <KEYWORD3>window-restored</KEYWORD3>\r
+\r
+\r
+ <!-- KEYWORD1 : Statements, functions -->\r
+ <KEYWORD1>abort</KEYWORD1>\r
+ <KEYWORD1>absolute</KEYWORD1>\r
+ <KEYWORD1>accelerator</KEYWORD1>\r
+ <KEYWORD1>accept-changes</KEYWORD1>\r
+ <KEYWORD1>accept-row-changes</KEYWORD1>\r
+ <KEYWORD1>accumulate</KEYWORD1>\r
+ <KEYWORD1>across</KEYWORD1>\r
+ <KEYWORD1>active</KEYWORD1>\r
+ <KEYWORD1>active-window</KEYWORD1>\r
+ <KEYWORD1>actor</KEYWORD1>\r
+ <KEYWORD1>add</KEYWORD1>\r
+ <KEYWORD1>add-buffer</KEYWORD1>\r
+ <KEYWORD1>add-calc-column</KEYWORD1>\r
+ <KEYWORD1>add-columns-from</KEYWORD1>\r
+ <KEYWORD1>add-events-procedure</KEYWORD1>\r
+ <KEYWORD1>add-fields-from</KEYWORD1>\r
+ <KEYWORD1>add-first</KEYWORD1>\r
+ <KEYWORD1>add-header-entry</KEYWORD1>\r
+ <KEYWORD1>add-index-field</KEYWORD1>\r
+ <KEYWORD1>add-interval</KEYWORD1>\r
+ <KEYWORD1>add-last</KEYWORD1>\r
+ <KEYWORD1>add-like-column</KEYWORD1>\r
+ <KEYWORD1>add-like-field</KEYWORD1>\r
+ <KEYWORD1>add-like-index</KEYWORD1>\r
+ <KEYWORD1>add-new-field</KEYWORD1>\r
+ <KEYWORD1>add-new-index</KEYWORD1>\r
+ <KEYWORD1>add-relation</KEYWORD1>\r
+ <KEYWORD1>add-source-buffer</KEYWORD1>\r
+ <KEYWORD1>add-super-procedure</KEYWORD1>\r
+ <KEYWORD1>adm-data</KEYWORD1>\r
+ <KEYWORD1>advise</KEYWORD1>\r
+ <KEYWORD1>after-buffer</KEYWORD1>\r
+ <KEYWORD1>after-rowid</KEYWORD1>\r
+ <KEYWORD1>after-table</KEYWORD1>\r
+ <KEYWORD1>alert-box</KEYWORD1>\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>all</KEYWORD1>\r
+ <KEYWORD1>allow-column-searching</KEYWORD1>\r
+ <KEYWORD1>allow-replication</KEYWORD1>\r
+ <KEYWORD1>alter</KEYWORD1>\r
+ <KEYWORD1>alternate-key</KEYWORD1>\r
+ <KEYWORD1>always-on-top</KEYWORD1>\r
+ <KEYWORD1>ambiguous</KEYWORD1>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>ansi-only</KEYWORD1>\r
+ <KEYWORD1>any</KEYWORD1>\r
+ <KEYWORD1>anywhere</KEYWORD1>\r
+ <KEYWORD1>append</KEYWORD1>\r
+ <KEYWORD1>append-child</KEYWORD1>\r
+ <KEYWORD1>append-line</KEYWORD1>\r
+ <KEYWORD1>appl-alert-boxes</KEYWORD1>\r
+ <KEYWORD1>application</KEYWORD1>\r
+ <KEYWORD1>apply</KEYWORD1>\r
+ <KEYWORD1>apply-callback</KEYWORD1>\r
+ <KEYWORD1>appserver-info</KEYWORD1>\r
+ <KEYWORD1>appserver-password</KEYWORD1>\r
+ <KEYWORD1>appserver-userid</KEYWORD1>\r
+ <KEYWORD1>array-message</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>as-cursor</KEYWORD1>\r
+ <KEYWORD1>ascending</KEYWORD1>\r
+ <KEYWORD1>ask-overwrite</KEYWORD1>\r
+ <KEYWORD1>assign</KEYWORD1>\r
+ <KEYWORD1>async-request-count</KEYWORD1>\r
+ <KEYWORD1>async-request-handle</KEYWORD1>\r
+ <KEYWORD1>asynchronous</KEYWORD1>\r
+ <KEYWORD1>at</KEYWORD1>\r
+ <KEYWORD1>attach</KEYWORD1>\r
+ <KEYWORD1>attach-data-source</KEYWORD1>\r
+ <KEYWORD1>attachment</KEYWORD1>\r
+ <KEYWORD1>attr-space</KEYWORD1>\r
+ <KEYWORD1>attribute-names</KEYWORD1>\r
+ <KEYWORD1>attribute-type</KEYWORD1>\r
+ <KEYWORD1>authorization</KEYWORD1>\r
+ <KEYWORD1>auto-completion</KEYWORD1>\r
+ <KEYWORD1>auto-delete</KEYWORD1>\r
+ <KEYWORD1>auto-delete-xml</KEYWORD1>\r
+ <KEYWORD1>auto-end-key</KEYWORD1>\r
+ <KEYWORD1>auto-endkey</KEYWORD1>\r
+ <KEYWORD1>auto-go</KEYWORD1>\r
+ <KEYWORD1>auto-indent</KEYWORD1>\r
+ <KEYWORD1>auto-resize</KEYWORD1>\r
+ <KEYWORD1>auto-return</KEYWORD1>\r
+ <KEYWORD1>auto-validate</KEYWORD1>\r
+ <KEYWORD1>auto-zap</KEYWORD1>\r
+ <KEYWORD1>automatic</KEYWORD1>\r
+ <KEYWORD1>available</KEYWORD1>\r
+ <KEYWORD1>available-formats</KEYWORD1>\r
+ <KEYWORD1>average</KEYWORD1>\r
+ <KEYWORD1>avg</KEYWORD1>\r
+ <KEYWORD1>background</KEYWORD1>\r
+ <KEYWORD1>backwards</KEYWORD1>\r
+ <KEYWORD1>base-ade</KEYWORD1>\r
+ <KEYWORD1>base-key</KEYWORD1>\r
+ <KEYWORD1>base64</KEYWORD1>\r
+ <KEYWORD1>basic-logging</KEYWORD1>\r
+ <KEYWORD1>batch-mode</KEYWORD1>\r
+ <KEYWORD1>before-buffer</KEYWORD1>\r
+ <KEYWORD1>before-hide</KEYWORD1>\r
+ <KEYWORD1>before-rowid</KEYWORD1>\r
+ <KEYWORD1>before-table</KEYWORD1>\r
+ <KEYWORD1>begins</KEYWORD1>\r
+ <KEYWORD1>between</KEYWORD1>\r
+ <KEYWORD1>bgcolor</KEYWORD1>\r
+ <KEYWORD1>big-endian</KEYWORD1>\r
+ <KEYWORD1>binary</KEYWORD1>\r
+ <KEYWORD1>bind-where</KEYWORD1>\r
+ <KEYWORD1>blank</KEYWORD1>\r
+ <KEYWORD1>blob</KEYWORD1>\r
+ <KEYWORD1>block</KEYWORD1>\r
+ <KEYWORD1>block-iteration-display</KEYWORD1>\r
+ <KEYWORD1>border-bottom</KEYWORD1>\r
+ <KEYWORD1>border-bottom-chars</KEYWORD1>\r
+ <KEYWORD1>border-bottom-pixels</KEYWORD1>\r
+ <KEYWORD1>border-left</KEYWORD1>\r
+ <KEYWORD1>border-left-chars</KEYWORD1>\r
+ <KEYWORD1>border-left-pixels</KEYWORD1>\r
+ <KEYWORD1>border-right</KEYWORD1>\r
+ <KEYWORD1>border-right-chars</KEYWORD1>\r
+ <KEYWORD1>border-right-pixels</KEYWORD1>\r
+ <KEYWORD1>border-top</KEYWORD1>\r
+ <KEYWORD1>border-top-chars</KEYWORD1>\r
+ <KEYWORD1>border-top-pixels</KEYWORD1>\r
+ <KEYWORD1>both</KEYWORD1>\r
+ <KEYWORD1>bottom</KEYWORD1>\r
+ <KEYWORD1>bottom-column</KEYWORD1>\r
+ <KEYWORD1>box</KEYWORD1>\r
+ <KEYWORD1>box-selectable</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>break-line</KEYWORD1>\r
+ <KEYWORD1>browse</KEYWORD1>\r
+ <KEYWORD1>browse-column-data-types</KEYWORD1>\r
+ <KEYWORD1>browse-column-formats</KEYWORD1>\r
+ <KEYWORD1>browse-column-labels</KEYWORD1>\r
+ <KEYWORD1>browse-header</KEYWORD1>\r
+ <KEYWORD1>btos</KEYWORD1>\r
+ <KEYWORD1>buffer</KEYWORD1>\r
+ <KEYWORD1>buffer-chars</KEYWORD1>\r
+ <KEYWORD1>buffer-compare</KEYWORD1>\r
+ <KEYWORD1>buffer-copy</KEYWORD1>\r
+ <KEYWORD1>buffer-create</KEYWORD1>\r
+ <KEYWORD1>buffer-delete</KEYWORD1>\r
+ <KEYWORD1>buffer-field</KEYWORD1>\r
+ <KEYWORD1>buffer-handle</KEYWORD1>\r
+ <KEYWORD1>buffer-lines</KEYWORD1>\r
+ <KEYWORD1>buffer-name</KEYWORD1>\r
+ <KEYWORD1>buffer-release</KEYWORD1>\r
+ <KEYWORD1>buffer-validate</KEYWORD1>\r
+ <KEYWORD1>buffer-value</KEYWORD1>\r
+ <KEYWORD1>buttons</KEYWORD1>\r
+ <KEYWORD1>by</KEYWORD1>\r
+ <KEYWORD1>by-pointer</KEYWORD1>\r
+ <KEYWORD1>by-reference</KEYWORD1>\r
+ <KEYWORD1>by-value</KEYWORD1>\r
+ <KEYWORD1>by-variant-pointer</KEYWORD1>\r
+ <KEYWORD1>byte</KEYWORD1>\r
+ <KEYWORD1>bytes-read</KEYWORD1>\r
+ <KEYWORD1>bytes-written</KEYWORD1>\r
+ <KEYWORD1>cache</KEYWORD1>\r
+ <KEYWORD1>cache-size</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>call-name</KEYWORD1>\r
+ <KEYWORD1>call-type</KEYWORD1>\r
+ <KEYWORD1>can-create</KEYWORD1>\r
+ <KEYWORD1>can-delete</KEYWORD1>\r
+ <KEYWORD1>can-do</KEYWORD1>\r
+ <KEYWORD1>can-find</KEYWORD1>\r
+ <KEYWORD1>can-query</KEYWORD1>\r
+ <KEYWORD1>can-read</KEYWORD1>\r
+ <KEYWORD1>can-set</KEYWORD1>\r
+ <KEYWORD1>can-write</KEYWORD1>\r
+ <KEYWORD1>cancel-break</KEYWORD1>\r
+ <KEYWORD1>cancel-button</KEYWORD1>\r
+ <KEYWORD1>cancel-pick</KEYWORD1>\r
+ <KEYWORD1>cancel-requests</KEYWORD1>\r
+ <KEYWORD1>cancelled</KEYWORD1>\r
+ <KEYWORD1>caps</KEYWORD1>\r
+ <KEYWORD1>careful-paint</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>case-sensitive</KEYWORD1>\r
+ <KEYWORD1>cdecl</KEYWORD1>\r
+ <KEYWORD1>centered</KEYWORD1>\r
+ <KEYWORD1>chained</KEYWORD1>\r
+ <KEYWORD1>character</KEYWORD1>\r
+ <KEYWORD1>character_length</KEYWORD1>\r
+ <KEYWORD1>charset</KEYWORD1>\r
+ <KEYWORD1>check</KEYWORD1>\r
+ <KEYWORD1>checked</KEYWORD1>\r
+ <KEYWORD1>child-buffer</KEYWORD1>\r
+ <KEYWORD1>child-num</KEYWORD1>\r
+ <KEYWORD1>choices</KEYWORD1>\r
+ <KEYWORD1>chr</KEYWORD1>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>clear-selection</KEYWORD1>\r
+ <KEYWORD1>client-connection-id</KEYWORD1>\r
+ <KEYWORD1>client-type</KEYWORD1>\r
+ <KEYWORD1>clipboard</KEYWORD1>\r
+ <KEYWORD1>clob</KEYWORD1>\r
+ <KEYWORD1>clone-node</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>code</KEYWORD1>\r
+ <KEYWORD1>codebase-locator</KEYWORD1>\r
+ <KEYWORD1>codepage</KEYWORD1>\r
+ <KEYWORD1>codepage-convert</KEYWORD1>\r
+ <KEYWORD1>col</KEYWORD1>\r
+ <KEYWORD1>col-of</KEYWORD1>\r
+ <KEYWORD1>collate</KEYWORD1>\r
+ <KEYWORD1>colon</KEYWORD1>\r
+ <KEYWORD1>colon-aligned</KEYWORD1>\r
+ <KEYWORD1>color</KEYWORD1>\r
+ <KEYWORD1>color-table</KEYWORD1>\r
+ <KEYWORD1>column-bgcolor</KEYWORD1>\r
+ <KEYWORD1>column-codepage</KEYWORD1>\r
+ <KEYWORD1>column-dcolor</KEYWORD1>\r
+ <KEYWORD1>column-fgcolor</KEYWORD1>\r
+ <KEYWORD1>column-font</KEYWORD1>\r
+ <KEYWORD1>column-label</KEYWORD1>\r
+ <KEYWORD1>column-label-bgcolor</KEYWORD1>\r
+ <KEYWORD1>column-label-dcolor</KEYWORD1>\r
+ <KEYWORD1>column-label-fgcolor</KEYWORD1>\r
+ <KEYWORD1>column-label-font</KEYWORD1>\r
+ <KEYWORD1>column-label-height-chars</KEYWORD1>\r
+ <KEYWORD1>column-label-height-pixels</KEYWORD1>\r
+ <KEYWORD1>column-movable</KEYWORD1>\r
+ <KEYWORD1>column-of</KEYWORD1>\r
+ <KEYWORD1>column-pfcolor</KEYWORD1>\r
+ <KEYWORD1>column-read-only</KEYWORD1>\r
+ <KEYWORD1>column-resizable</KEYWORD1>\r
+ <KEYWORD1>column-scrolling</KEYWORD1>\r
+ <KEYWORD1>columns</KEYWORD1>\r
+ <KEYWORD1>com-handle</KEYWORD1>\r
+ <KEYWORD1>com-self</KEYWORD1>\r
+ <KEYWORD1>combo-box</KEYWORD1>\r
+ <KEYWORD1>command</KEYWORD1>\r
+ <KEYWORD1>compares</KEYWORD1>\r
+ <KEYWORD1>compile</KEYWORD1>\r
+ <KEYWORD1>compiler</KEYWORD1>\r
+ <KEYWORD1>complete</KEYWORD1>\r
+ <KEYWORD1>component-handle</KEYWORD1>\r
+ <KEYWORD1>component-self</KEYWORD1>\r
+ <KEYWORD1>config-name</KEYWORD1>\r
+ <KEYWORD1>connect</KEYWORD1>\r
+ <KEYWORD1>connected</KEYWORD1>\r
+ <KEYWORD1>constrained</KEYWORD1>\r
+ <KEYWORD1>contains</KEYWORD1>\r
+ <KEYWORD1>contents</KEYWORD1>\r
+ <KEYWORD1>context</KEYWORD1>\r
+ <KEYWORD1>context-help</KEYWORD1>\r
+ <KEYWORD1>context-help-file</KEYWORD1>\r
+ <KEYWORD1>context-help-id</KEYWORD1>\r
+ <KEYWORD1>context-popup</KEYWORD1>\r
+ <KEYWORD1>control</KEYWORD1>\r
+ <KEYWORD1>control-box</KEYWORD1>\r
+ <KEYWORD1>control-container</KEYWORD1>\r
+ <KEYWORD1>control-frame</KEYWORD1>\r
+ <KEYWORD1>convert</KEYWORD1>\r
+ <KEYWORD1>convert-3d-colors</KEYWORD1>\r
+ <KEYWORD1>convert-to-offset</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>copy-lob</KEYWORD1>\r
+ <KEYWORD1>count</KEYWORD1>\r
+ <KEYWORD1>count-of</KEYWORD1>\r
+ <KEYWORD1>coverage</KEYWORD1>\r
+ <KEYWORD1>cpcase</KEYWORD1>\r
+ <KEYWORD1>cpcoll</KEYWORD1>\r
+ <KEYWORD1>cpinternal</KEYWORD1>\r
+ <KEYWORD1>cplog</KEYWORD1>\r
+ <KEYWORD1>cpprint</KEYWORD1>\r
+ <KEYWORD1>cprcodein</KEYWORD1>\r
+ <KEYWORD1>cprcodeout</KEYWORD1>\r
+ <KEYWORD1>cpstream</KEYWORD1>\r
+ <KEYWORD1>cpterm</KEYWORD1>\r
+ <KEYWORD1>crc-value</KEYWORD1>\r
+ <KEYWORD1>create</KEYWORD1>\r
+ <KEYWORD1>create-like</KEYWORD1>\r
+ <KEYWORD1>create-node</KEYWORD1>\r
+ <KEYWORD1>create-node-namespace</KEYWORD1>\r
+ <KEYWORD1>create-on-add</KEYWORD1>\r
+ <KEYWORD1>create-result-list-entry</KEYWORD1>\r
+ <KEYWORD1>create-test-file</KEYWORD1>\r
+ <KEYWORD1>ctos</KEYWORD1>\r
+ <KEYWORD1>current</KEYWORD1>\r
+ <KEYWORD1>current-changed</KEYWORD1>\r
+ <KEYWORD1>current-column</KEYWORD1>\r
+ <KEYWORD1>current-environment</KEYWORD1>\r
+ <KEYWORD1>current-iteration</KEYWORD1>\r
+ <KEYWORD1>current-language</KEYWORD1>\r
+ <KEYWORD1>current-result-row</KEYWORD1>\r
+ <KEYWORD1>current-row-modified</KEYWORD1>\r
+ <KEYWORD1>current-value</KEYWORD1>\r
+ <KEYWORD1>current-window</KEYWORD1>\r
+ <KEYWORD1>current_date</KEYWORD1>\r
+ <KEYWORD1>cursor</KEYWORD1>\r
+ <KEYWORD1>cursor-char</KEYWORD1>\r
+ <KEYWORD1>cursor-down</KEYWORD1>\r
+ <KEYWORD1>cursor-left</KEYWORD1>\r
+ <KEYWORD1>cursor-line</KEYWORD1>\r
+ <KEYWORD1>cursor-offset</KEYWORD1>\r
+ <KEYWORD1>cursor-right</KEYWORD1>\r
+ <KEYWORD1>cursor-up</KEYWORD1>\r
+ <KEYWORD1>cut</KEYWORD1>\r
+ <KEYWORD1>data-bind</KEYWORD1>\r
+ <KEYWORD1>data-entry-return</KEYWORD1>\r
+ <KEYWORD1>data-refresh-line</KEYWORD1>\r
+ <KEYWORD1>data-refresh-page</KEYWORD1>\r
+ <KEYWORD1>data-relation</KEYWORD1>\r
+ <KEYWORD1>data-source</KEYWORD1>\r
+ <KEYWORD1>data-type</KEYWORD1>\r
+ <KEYWORD1>database</KEYWORD1>\r
+ <KEYWORD1>dataservers</KEYWORD1>\r
+ <KEYWORD1>dataset</KEYWORD1>\r
+ <KEYWORD1>dataset-handle</KEYWORD1>\r
+ <KEYWORD1>date</KEYWORD1>\r
+ <KEYWORD1>date-format</KEYWORD1>\r
+ <KEYWORD1>datetime</KEYWORD1>\r
+ <KEYWORD1>datetime-tz</KEYWORD1>\r
+ <KEYWORD1>day</KEYWORD1>\r
+ <KEYWORD1>db-references</KEYWORD1>\r
+ <KEYWORD1>dbcodepage</KEYWORD1>\r
+ <KEYWORD1>dbcollation</KEYWORD1>\r
+ <KEYWORD1>dbname</KEYWORD1>\r
+ <KEYWORD1>dbparam</KEYWORD1>\r
+ <KEYWORD1>dbrestrictions</KEYWORD1>\r
+ <KEYWORD1>dbtaskid</KEYWORD1>\r
+ <KEYWORD1>dbtype</KEYWORD1>\r
+ <KEYWORD1>dbversion</KEYWORD1>\r
+ <KEYWORD1>dcolor</KEYWORD1>\r
+ <KEYWORD1>dde</KEYWORD1>\r
+ <KEYWORD1>dde-error</KEYWORD1>\r
+ <KEYWORD1>dde-id</KEYWORD1>\r
+ <KEYWORD1>dde-item</KEYWORD1>\r
+ <KEYWORD1>dde-name</KEYWORD1>\r
+ <KEYWORD1>dde-topic</KEYWORD1>\r
+ <KEYWORD1>deblank</KEYWORD1>\r
+ <KEYWORD1>debug</KEYWORD1>\r
+ <KEYWORD1>debug-alert</KEYWORD1>\r
+ <KEYWORD1>debug-list</KEYWORD1>\r
+ <KEYWORD1>debugger</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>decimals</KEYWORD1>\r
+ <KEYWORD1>declare</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>default-buffer-handle</KEYWORD1>\r
+ <KEYWORD1>default-button</KEYWORD1>\r
+ <KEYWORD1>default-commit</KEYWORD1>\r
+ <KEYWORD1>default-extension</KEYWORD1>\r
+ <KEYWORD1>default-noxlate</KEYWORD1>\r
+ <KEYWORD1>default-pop-up</KEYWORD1>\r
+ <KEYWORD1>default-string</KEYWORD1>\r
+ <KEYWORD1>default-window</KEYWORD1>\r
+ <KEYWORD1>defer-lob-fetch</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>defined</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>delete-column</KEYWORD1>\r
+ <KEYWORD1>delete-current-row</KEYWORD1>\r
+ <KEYWORD1>delete-end-line</KEYWORD1>\r
+ <KEYWORD1>delete-field</KEYWORD1>\r
+ <KEYWORD1>delete-header-entry</KEYWORD1>\r
+ <KEYWORD1>delete-line</KEYWORD1>\r
+ <KEYWORD1>delete-node</KEYWORD1>\r
+ <KEYWORD1>delete-result-list-entry</KEYWORD1>\r
+ <KEYWORD1>delete-selected-row</KEYWORD1>\r
+ <KEYWORD1>delete-selected-rows</KEYWORD1>\r
+ <KEYWORD1>delete-word</KEYWORD1>\r
+ <KEYWORD1>delimiter</KEYWORD1>\r
+ <KEYWORD1>descending</KEYWORD1>\r
+ <KEYWORD1>description</KEYWORD1>\r
+ <KEYWORD1>deselect-extend</KEYWORD1>\r
+ <KEYWORD1>deselect-focused-row</KEYWORD1>\r
+ <KEYWORD1>deselect-rows</KEYWORD1>\r
+ <KEYWORD1>deselect-selected-row</KEYWORD1>\r
+ <KEYWORD1>deselection-extend</KEYWORD1>\r
+ <KEYWORD1>detach</KEYWORD1>\r
+ <KEYWORD1>detach-data-source</KEYWORD1>\r
+ <KEYWORD1>dialog-box</KEYWORD1>\r
+ <KEYWORD1>dialog-help</KEYWORD1>\r
+ <KEYWORD1>dictionary</KEYWORD1>\r
+ <KEYWORD1>dir</KEYWORD1>\r
+ <KEYWORD1>directory</KEYWORD1>\r
+ <KEYWORD1>disable</KEYWORD1>\r
+ <KEYWORD1>disable-auto-zap</KEYWORD1>\r
+ <KEYWORD1>disable-connections</KEYWORD1>\r
+ <KEYWORD1>disable-dump-triggers</KEYWORD1>\r
+ <KEYWORD1>disable-load-triggers</KEYWORD1>\r
+ <KEYWORD1>disabled</KEYWORD1>\r
+ <KEYWORD1>disconnect</KEYWORD1>\r
+ <KEYWORD1>dismiss-menu</KEYWORD1>\r
+ <KEYWORD1>display</KEYWORD1>\r
+ <KEYWORD1>display-message</KEYWORD1>\r
+ <KEYWORD1>display-timezone</KEYWORD1>\r
+ <KEYWORD1>display-type</KEYWORD1>\r
+ <KEYWORD1>distinct</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>dos</KEYWORD1>\r
+ <KEYWORD1>dos-end</KEYWORD1>\r
+ <KEYWORD1>double</KEYWORD1>\r
+ <KEYWORD1>down</KEYWORD1>\r
+ <KEYWORD1>drag-enabled</KEYWORD1>\r
+ <KEYWORD1>drop</KEYWORD1>\r
+ <KEYWORD1>drop-down</KEYWORD1>\r
+ <KEYWORD1>drop-down-list</KEYWORD1>\r
+ <KEYWORD1>drop-target</KEYWORD1>\r
+ <KEYWORD1>dump</KEYWORD1>\r
+ <KEYWORD1>dump-logging-now</KEYWORD1>\r
+ <KEYWORD1>dynamic</KEYWORD1>\r
+ <KEYWORD1>dynamic-current-value</KEYWORD1>\r
+ <KEYWORD1>dynamic-function</KEYWORD1>\r
+ <KEYWORD1>dynamic-next-value</KEYWORD1>\r
+ <KEYWORD1>each</KEYWORD1>\r
+ <KEYWORD1>echo</KEYWORD1>\r
+ <KEYWORD1>edge</KEYWORD1>\r
+ <KEYWORD1>edge-chars</KEYWORD1>\r
+ <KEYWORD1>edge-pixels</KEYWORD1>\r
+ <KEYWORD1>edit-can-paste</KEYWORD1>\r
+ <KEYWORD1>edit-can-undo</KEYWORD1>\r
+ <KEYWORD1>edit-clear</KEYWORD1>\r
+ <KEYWORD1>edit-copy</KEYWORD1>\r
+ <KEYWORD1>edit-cut</KEYWORD1>\r
+ <KEYWORD1>edit-paste</KEYWORD1>\r
+ <KEYWORD1>edit-undo</KEYWORD1>\r
+ <KEYWORD1>editing</KEYWORD1>\r
+ <KEYWORD1>editor</KEYWORD1>\r
+ <KEYWORD1>editor-backtab</KEYWORD1>\r
+ <KEYWORD1>editor-tab</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>empty</KEYWORD1>\r
+ <KEYWORD1>empty-dataset</KEYWORD1>\r
+ <KEYWORD1>empty-temp-table</KEYWORD1>\r
+ <KEYWORD1>enable</KEYWORD1>\r
+ <KEYWORD1>enable-connections</KEYWORD1>\r
+ <KEYWORD1>enabled</KEYWORD1>\r
+ <KEYWORD1>encode</KEYWORD1>\r
+ <KEYWORD1>encoding</KEYWORD1>\r
+ <KEYWORD1>end-file-drop</KEYWORD1>\r
+ <KEYWORD1>end-key</KEYWORD1>\r
+ <KEYWORD1>end-row-resize</KEYWORD1>\r
+ <KEYWORD1>end-user-prompt</KEYWORD1>\r
+ <KEYWORD1>enter-menubar</KEYWORD1>\r
+ <KEYWORD1>entered</KEYWORD1>\r
+ <KEYWORD1>entry-types-list</KEYWORD1>\r
+ <KEYWORD1>eq</KEYWORD1>\r
+ <KEYWORD1>error-column</KEYWORD1>\r
+ <KEYWORD1>error-object-detail</KEYWORD1>\r
+ <KEYWORD1>error-row</KEYWORD1>\r
+ <KEYWORD1>error-status</KEYWORD1>\r
+ <KEYWORD1>error-string</KEYWORD1>\r
+ <KEYWORD1>escape</KEYWORD1>\r
+ <KEYWORD1>etime</KEYWORD1>\r
+ <KEYWORD1>event-procedure</KEYWORD1>\r
+ <KEYWORD1>event-procedure-context</KEYWORD1>\r
+ <KEYWORD1>event-type</KEYWORD1>\r
+ <KEYWORD1>events</KEYWORD1>\r
+ <KEYWORD1>except</KEYWORD1>\r
+ <KEYWORD1>exclusive</KEYWORD1>\r
+ <KEYWORD1>exclusive-id</KEYWORD1>\r
+ <KEYWORD1>exclusive-lock</KEYWORD1>\r
+ <KEYWORD1>exclusive-web-user</KEYWORD1>\r
+ <KEYWORD1>execute</KEYWORD1>\r
+ <KEYWORD1>execution-log</KEYWORD1>\r
+ <KEYWORD1>exists</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>exp</KEYWORD1>\r
+ <KEYWORD1>expand</KEYWORD1>\r
+ <KEYWORD1>expandable</KEYWORD1>\r
+ <KEYWORD1>explicit</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>extended</KEYWORD1>\r
+ <KEYWORD1>extent</KEYWORD1>\r
+ <KEYWORD1>external</KEYWORD1>\r
+ <KEYWORD1>extract</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>fetch</KEYWORD1>\r
+ <KEYWORD1>fetch-selected-row</KEYWORD1>\r
+ <KEYWORD1>fgcolor</KEYWORD1>\r
+ <KEYWORD1>fields</KEYWORD1>\r
+ <KEYWORD1>file</KEYWORD1>\r
+ <KEYWORD1>file-access-date</KEYWORD1>\r
+ <KEYWORD1>file-access-time</KEYWORD1>\r
+ <KEYWORD1>file-create-date</KEYWORD1>\r
+ <KEYWORD1>file-create-time</KEYWORD1>\r
+ <KEYWORD1>file-information</KEYWORD1>\r
+ <KEYWORD1>file-mod-date</KEYWORD1>\r
+ <KEYWORD1>file-mod-time</KEYWORD1>\r
+ <KEYWORD1>file-name</KEYWORD1>\r
+ <KEYWORD1>file-offset</KEYWORD1>\r
+ <KEYWORD1>file-size</KEYWORD1>\r
+ <KEYWORD1>file-type</KEYWORD1>\r
+ <KEYWORD1>filename</KEYWORD1>\r
+ <KEYWORD1>fill</KEYWORD1>\r
+ <KEYWORD1>fill-in</KEYWORD1>\r
+ <KEYWORD1>fill-mode</KEYWORD1>\r
+ <KEYWORD1>fill-where-string</KEYWORD1>\r
+ <KEYWORD1>filled</KEYWORD1>\r
+ <KEYWORD1>filters</KEYWORD1>\r
+ <KEYWORD1>find</KEYWORD1>\r
+ <KEYWORD1>find-by-rowid</KEYWORD1>\r
+ <KEYWORD1>find-case-sensitive</KEYWORD1>\r
+ <KEYWORD1>find-current</KEYWORD1>\r
+ <KEYWORD1>find-first</KEYWORD1>\r
+ <KEYWORD1>find-global</KEYWORD1>\r
+ <KEYWORD1>find-last</KEYWORD1>\r
+ <KEYWORD1>find-next</KEYWORD1>\r
+ <KEYWORD1>find-next-occurrence</KEYWORD1>\r
+ <KEYWORD1>find-prev-occurrence</KEYWORD1>\r
+ <KEYWORD1>find-previous</KEYWORD1>\r
+ <KEYWORD1>find-select</KEYWORD1>\r
+ <KEYWORD1>find-unique</KEYWORD1>\r
+ <KEYWORD1>find-wrap-around</KEYWORD1>\r
+ <KEYWORD1>finder</KEYWORD1>\r
+ <KEYWORD1>first</KEYWORD1>\r
+ <KEYWORD1>first-async-request</KEYWORD1>\r
+ <KEYWORD1>first-buffer</KEYWORD1>\r
+ <KEYWORD1>first-child</KEYWORD1>\r
+ <KEYWORD1>first-column</KEYWORD1>\r
+ <KEYWORD1>first-data-source</KEYWORD1>\r
+ <KEYWORD1>first-dataset</KEYWORD1>\r
+ <KEYWORD1>first-of</KEYWORD1>\r
+ <KEYWORD1>first-procedure</KEYWORD1>\r
+ <KEYWORD1>first-query</KEYWORD1>\r
+ <KEYWORD1>first-server</KEYWORD1>\r
+ <KEYWORD1>first-server-socket</KEYWORD1>\r
+ <KEYWORD1>first-socket</KEYWORD1>\r
+ <KEYWORD1>first-tab-item</KEYWORD1>\r
+ <KEYWORD1>fit-last-column</KEYWORD1>\r
+ <KEYWORD1>fix-codepage</KEYWORD1>\r
+ <KEYWORD1>fixed-only</KEYWORD1>\r
+ <KEYWORD1>flat-button</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>focus</KEYWORD1>\r
+ <KEYWORD1>focus-in</KEYWORD1>\r
+ <KEYWORD1>focused-row</KEYWORD1>\r
+ <KEYWORD1>focused-row-selected</KEYWORD1>\r
+ <KEYWORD1>font</KEYWORD1>\r
+ <KEYWORD1>font-based-layout</KEYWORD1>\r
+ <KEYWORD1>font-table</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>force-file</KEYWORD1>\r
+ <KEYWORD1>foreground</KEYWORD1>\r
+ <KEYWORD1>form-input</KEYWORD1>\r
+ <KEYWORD1>format</KEYWORD1>\r
+ <KEYWORD1>forward-only</KEYWORD1>\r
+ <KEYWORD1>forwards</KEYWORD1>\r
+ <KEYWORD1>frame</KEYWORD1>\r
+ <KEYWORD1>frame-col</KEYWORD1>\r
+ <KEYWORD1>frame-db</KEYWORD1>\r
+ <KEYWORD1>frame-down</KEYWORD1>\r
+ <KEYWORD1>frame-field</KEYWORD1>\r
+ <KEYWORD1>frame-file</KEYWORD1>\r
+ <KEYWORD1>frame-index</KEYWORD1>\r
+ <KEYWORD1>frame-line</KEYWORD1>\r
+ <KEYWORD1>frame-name</KEYWORD1>\r
+ <KEYWORD1>frame-row</KEYWORD1>\r
+ <KEYWORD1>frame-spacing</KEYWORD1>\r
+ <KEYWORD1>frame-value</KEYWORD1>\r
+ <KEYWORD1>frame-x</KEYWORD1>\r
+ <KEYWORD1>frame-y</KEYWORD1>\r
+ <KEYWORD1>frequency</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>from-chars</KEYWORD1>\r
+ <KEYWORD1>from-current</KEYWORD1>\r
+ <KEYWORD1>from-pixels</KEYWORD1>\r
+ <KEYWORD1>fromnoreorder</KEYWORD1>\r
+ <KEYWORD1>full-height</KEYWORD1>\r
+ <KEYWORD1>full-height-chars</KEYWORD1>\r
+ <KEYWORD1>full-height-pixels</KEYWORD1>\r
+ <KEYWORD1>full-pathname</KEYWORD1>\r
+ <KEYWORD1>full-width-chars</KEYWORD1>\r
+ <KEYWORD1>full-width-pixels</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>function-call-type</KEYWORD1>\r
+ <KEYWORD1>gateways</KEYWORD1>\r
+ <KEYWORD1>ge</KEYWORD1>\r
+ <KEYWORD1>generate-md5</KEYWORD1>\r
+ <KEYWORD1>get</KEYWORD1>\r
+ <KEYWORD1>get-attr-call-type</KEYWORD1>\r
+ <KEYWORD1>get-attribute</KEYWORD1>\r
+ <KEYWORD1>get-attribute-node</KEYWORD1>\r
+ <KEYWORD1>get-bits</KEYWORD1>\r
+ <KEYWORD1>get-blue-value</KEYWORD1>\r
+ <KEYWORD1>get-browse-column</KEYWORD1>\r
+ <KEYWORD1>get-buffer-handle</KEYWORD1>\r
+ <KEYWORD1>get-byte</KEYWORD1>\r
+ <KEYWORD1>get-byte-order</KEYWORD1>\r
+ <KEYWORD1>get-bytes</KEYWORD1>\r
+ <KEYWORD1>get-bytes-available</KEYWORD1>\r
+ <KEYWORD1>get-cgi-list</KEYWORD1>\r
+ <KEYWORD1>get-cgi-value</KEYWORD1>\r
+ <KEYWORD1>get-changes</KEYWORD1>\r
+ <KEYWORD1>get-child</KEYWORD1>\r
+ <KEYWORD1>get-child-relation</KEYWORD1>\r
+ <KEYWORD1>get-codepages</KEYWORD1>\r
+ <KEYWORD1>get-collations</KEYWORD1>\r
+ <KEYWORD1>get-config-value</KEYWORD1>\r
+ <KEYWORD1>get-current</KEYWORD1>\r
+ <KEYWORD1>get-dataset-buffer</KEYWORD1>\r
+ <KEYWORD1>get-dir</KEYWORD1>\r
+ <KEYWORD1>get-document-element</KEYWORD1>\r
+ <KEYWORD1>get-double</KEYWORD1>\r
+ <KEYWORD1>get-dropped-file</KEYWORD1>\r
+ <KEYWORD1>get-dynamic</KEYWORD1>\r
+ <KEYWORD1>get-file</KEYWORD1>\r
+ <KEYWORD1>get-first</KEYWORD1>\r
+ <KEYWORD1>get-float</KEYWORD1>\r
+ <KEYWORD1>get-green-value</KEYWORD1>\r
+ <KEYWORD1>get-header-entry</KEYWORD1>\r
+ <KEYWORD1>get-index-by-namespace-name</KEYWORD1>\r
+ <KEYWORD1>get-index-by-qname</KEYWORD1>\r
+ <KEYWORD1>get-iteration</KEYWORD1>\r
+ <KEYWORD1>get-key-value</KEYWORD1>\r
+ <KEYWORD1>get-last</KEYWORD1>\r
+ <KEYWORD1>get-localname-by-index</KEYWORD1>\r
+ <KEYWORD1>get-long</KEYWORD1>\r
+ <KEYWORD1>get-message</KEYWORD1>\r
+ <KEYWORD1>get-next</KEYWORD1>\r
+ <KEYWORD1>get-node</KEYWORD1>\r
+ <KEYWORD1>get-number</KEYWORD1>\r
+ <KEYWORD1>get-parent</KEYWORD1>\r
+ <KEYWORD1>get-pointer-value</KEYWORD1>\r
+ <KEYWORD1>get-prev</KEYWORD1>\r
+ <KEYWORD1>get-printers</KEYWORD1>\r
+ <KEYWORD1>get-qname-by-index</KEYWORD1>\r
+ <KEYWORD1>get-red-value</KEYWORD1>\r
+ <KEYWORD1>get-relation</KEYWORD1>\r
+ <KEYWORD1>get-repositioned-row</KEYWORD1>\r
+ <KEYWORD1>get-rgb-value</KEYWORD1>\r
+ <KEYWORD1>get-selected-widget</KEYWORD1>\r
+ <KEYWORD1>get-serialized</KEYWORD1>\r
+ <KEYWORD1>get-short</KEYWORD1>\r
+ <KEYWORD1>get-signature</KEYWORD1>\r
+ <KEYWORD1>get-size</KEYWORD1>\r
+ <KEYWORD1>get-socket-option</KEYWORD1>\r
+ <KEYWORD1>get-source-buffer</KEYWORD1>\r
+ <KEYWORD1>get-string</KEYWORD1>\r
+ <KEYWORD1>get-tab-item</KEYWORD1>\r
+ <KEYWORD1>get-text-height</KEYWORD1>\r
+ <KEYWORD1>get-text-height-chars</KEYWORD1>\r
+ <KEYWORD1>get-text-height-pixels</KEYWORD1>\r
+ <KEYWORD1>get-text-width</KEYWORD1>\r
+ <KEYWORD1>get-text-width-chars</KEYWORD1>\r
+ <KEYWORD1>get-text-width-pixels</KEYWORD1>\r
+ <KEYWORD1>get-top-buffer</KEYWORD1>\r
+ <KEYWORD1>get-type-by-index</KEYWORD1>\r
+ <KEYWORD1>get-type-by-namespace-name</KEYWORD1>\r
+ <KEYWORD1>get-type-by-qname</KEYWORD1>\r
+ <KEYWORD1>get-unsigned-short</KEYWORD1>\r
+ <KEYWORD1>get-uri-by-index</KEYWORD1>\r
+ <KEYWORD1>get-value-by-index</KEYWORD1>\r
+ <KEYWORD1>get-value-by-namespace-name</KEYWORD1>\r
+ <KEYWORD1>get-value-by-qname</KEYWORD1>\r
+ <KEYWORD1>get-wait-state</KEYWORD1>\r
+ <KEYWORD1>getbyte</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>go-on</KEYWORD1>\r
+ <KEYWORD1>go-pending</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>grant</KEYWORD1>\r
+ <KEYWORD1>graphic-edge</KEYWORD1>\r
+ <KEYWORD1>grayed</KEYWORD1>\r
+ <KEYWORD1>grid-factor-horizontal</KEYWORD1>\r
+ <KEYWORD1>grid-factor-vertical</KEYWORD1>\r
+ <KEYWORD1>grid-set</KEYWORD1>\r
+ <KEYWORD1>grid-snap</KEYWORD1>\r
+ <KEYWORD1>grid-unit-height</KEYWORD1>\r
+ <KEYWORD1>grid-unit-height-chars</KEYWORD1>\r
+ <KEYWORD1>grid-unit-height-pixels</KEYWORD1>\r
+ <KEYWORD1>grid-unit-width</KEYWORD1>\r
+ <KEYWORD1>grid-unit-width-chars</KEYWORD1>\r
+ <KEYWORD1>grid-unit-width-pixels</KEYWORD1>\r
+ <KEYWORD1>grid-visible</KEYWORD1>\r
+ <KEYWORD1>group</KEYWORD1>\r
+ <KEYWORD1>gt</KEYWORD1>\r
+ <KEYWORD1>handle</KEYWORD1>\r
+ <KEYWORD1>handler</KEYWORD1>\r
+ <KEYWORD1>has-lobs</KEYWORD1>\r
+ <KEYWORD1>has-records</KEYWORD1>\r
+ <KEYWORD1>having</KEYWORD1>\r
+ <KEYWORD1>header</KEYWORD1>\r
+ <KEYWORD1>height</KEYWORD1>\r
+ <KEYWORD1>height-chars</KEYWORD1>\r
+ <KEYWORD1>height-pixels</KEYWORD1>\r
+ <KEYWORD1>help-context</KEYWORD1>\r
+ <KEYWORD1>help-topic</KEYWORD1>\r
+ <KEYWORD1>helpfile-name</KEYWORD1>\r
+ <KEYWORD1>hidden</KEYWORD1>\r
+ <KEYWORD1>hide</KEYWORD1>\r
+ <KEYWORD1>hint</KEYWORD1>\r
+ <KEYWORD1>horiz-end</KEYWORD1>\r
+ <KEYWORD1>horiz-home</KEYWORD1>\r
+ <KEYWORD1>horiz-scroll-drag</KEYWORD1>\r
+ <KEYWORD1>horizontal</KEYWORD1>\r
+ <KEYWORD1>host-byte-order</KEYWORD1>\r
+ <KEYWORD1>html-charset</KEYWORD1>\r
+ <KEYWORD1>html-end-of-line</KEYWORD1>\r
+ <KEYWORD1>html-end-of-page</KEYWORD1>\r
+ <KEYWORD1>html-frame-begin</KEYWORD1>\r
+ <KEYWORD1>html-frame-end</KEYWORD1>\r
+ <KEYWORD1>html-header-begin</KEYWORD1>\r
+ <KEYWORD1>html-header-end</KEYWORD1>\r
+ <KEYWORD1>html-title-begin</KEYWORD1>\r
+ <KEYWORD1>html-title-end</KEYWORD1>\r
+ <KEYWORD1>hwnd</KEYWORD1>\r
+ <KEYWORD1>icfparameter</KEYWORD1>\r
+ <KEYWORD1>icon</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>ignore-current-modified</KEYWORD1>\r
+ <KEYWORD1>image</KEYWORD1>\r
+ <KEYWORD1>image-down</KEYWORD1>\r
+ <KEYWORD1>image-insensitive</KEYWORD1>\r
+ <KEYWORD1>image-size</KEYWORD1>\r
+ <KEYWORD1>image-size-chars</KEYWORD1>\r
+ <KEYWORD1>image-size-pixels</KEYWORD1>\r
+ <KEYWORD1>image-up</KEYWORD1>\r
+ <KEYWORD1>immediate-display</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>import-node</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>in-handle</KEYWORD1>\r
+ <KEYWORD1>increment-exclusive-id</KEYWORD1>\r
+ <KEYWORD1>index</KEYWORD1>\r
+ <KEYWORD1>index-hint</KEYWORD1>\r
+ <KEYWORD1>index-information</KEYWORD1>\r
+ <KEYWORD1>indexed-reposition</KEYWORD1>\r
+ <KEYWORD1>indicator</KEYWORD1>\r
+ <KEYWORD1>information</KEYWORD1>\r
+ <KEYWORD1>init</KEYWORD1>\r
+ <KEYWORD1>initial</KEYWORD1>\r
+ <KEYWORD1>initial-dir</KEYWORD1>\r
+ <KEYWORD1>initial-filter</KEYWORD1>\r
+ <KEYWORD1>initialize-document-type</KEYWORD1>\r
+ <KEYWORD1>initiate</KEYWORD1>\r
+ <KEYWORD1>inner</KEYWORD1>\r
+ <KEYWORD1>inner-chars</KEYWORD1>\r
+ <KEYWORD1>inner-lines</KEYWORD1>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD1>input-output</KEYWORD1>\r
+ <KEYWORD1>input-value</KEYWORD1>\r
+ <KEYWORD1>insert</KEYWORD1>\r
+ <KEYWORD1>insert-backtab</KEYWORD1>\r
+ <KEYWORD1>insert-before</KEYWORD1>\r
+ <KEYWORD1>insert-column</KEYWORD1>\r
+ <KEYWORD1>insert-field</KEYWORD1>\r
+ <KEYWORD1>insert-field-data</KEYWORD1>\r
+ <KEYWORD1>insert-field-label</KEYWORD1>\r
+ <KEYWORD1>insert-file</KEYWORD1>\r
+ <KEYWORD1>insert-mode</KEYWORD1>\r
+ <KEYWORD1>insert-row</KEYWORD1>\r
+ <KEYWORD1>insert-string</KEYWORD1>\r
+ <KEYWORD1>insert-tab</KEYWORD1>\r
+ <KEYWORD1>instantiating-procedure</KEYWORD1>\r
+ <KEYWORD1>integer</KEYWORD1>\r
+ <KEYWORD1>internal-entries</KEYWORD1>\r
+ <KEYWORD1>interval</KEYWORD1>\r
+ <KEYWORD1>into</KEYWORD1>\r
+ <KEYWORD1>invoke</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>is-attr-space</KEYWORD1>\r
+ <KEYWORD1>is-codepage-fixed</KEYWORD1>\r
+ <KEYWORD1>is-column-codepage</KEYWORD1>\r
+ <KEYWORD1>is-lead-byte</KEYWORD1>\r
+ <KEYWORD1>is-open</KEYWORD1>\r
+ <KEYWORD1>is-parameter-set</KEYWORD1>\r
+ <KEYWORD1>is-row-selected</KEYWORD1>\r
+ <KEYWORD1>is-selected</KEYWORD1>\r
+ <KEYWORD1>is-xml</KEYWORD1>\r
+ <KEYWORD1>iso-date</KEYWORD1>\r
+ <KEYWORD1>item</KEYWORD1>\r
+ <KEYWORD1>items-per-row</KEYWORD1>\r
+ <KEYWORD1>iteration-changed</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>join-by-sqldb</KEYWORD1>\r
+ <KEYWORD1>kblabel</KEYWORD1>\r
+ <KEYWORD1>keep-connection-open</KEYWORD1>\r
+ <KEYWORD1>keep-frame-z-order</KEYWORD1>\r
+ <KEYWORD1>keep-messages</KEYWORD1>\r
+ <KEYWORD1>keep-security-cache</KEYWORD1>\r
+ <KEYWORD1>keep-tab-order</KEYWORD1>\r
+ <KEYWORD1>key</KEYWORD1>\r
+ <KEYWORD1>key-code</KEYWORD1>\r
+ <KEYWORD1>key-function</KEYWORD1>\r
+ <KEYWORD1>key-label</KEYWORD1>\r
+ <KEYWORD1>keycode</KEYWORD1>\r
+ <KEYWORD1>keyfunction</KEYWORD1>\r
+ <KEYWORD1>keylabel</KEYWORD1>\r
+ <KEYWORD1>keys</KEYWORD1>\r
+ <KEYWORD1>keyword</KEYWORD1>\r
+ <KEYWORD1>keyword-all</KEYWORD1>\r
+ <KEYWORD1>label</KEYWORD1>\r
+ <KEYWORD1>label-bgcolor</KEYWORD1>\r
+ <KEYWORD1>label-dcolor</KEYWORD1>\r
+ <KEYWORD1>label-fgcolor</KEYWORD1>\r
+ <KEYWORD1>label-font</KEYWORD1>\r
+ <KEYWORD1>label-pfcolor</KEYWORD1>\r
+ <KEYWORD1>labels</KEYWORD1>\r
+ <KEYWORD1>landscape</KEYWORD1>\r
+ <KEYWORD1>languages</KEYWORD1>\r
+ <KEYWORD1>large</KEYWORD1>\r
+ <KEYWORD1>large-to-small</KEYWORD1>\r
+ <KEYWORD1>last</KEYWORD1>\r
+ <KEYWORD1>last-async-request</KEYWORD1>\r
+ <KEYWORD1>last-child</KEYWORD1>\r
+ <KEYWORD1>last-event</KEYWORD1>\r
+ <KEYWORD1>last-key</KEYWORD1>\r
+ <KEYWORD1>last-of</KEYWORD1>\r
+ <KEYWORD1>last-procedure</KEYWORD1>\r
+ <KEYWORD1>last-server</KEYWORD1>\r
+ <KEYWORD1>last-server-socket</KEYWORD1>\r
+ <KEYWORD1>last-socket</KEYWORD1>\r
+ <KEYWORD1>last-tab-item</KEYWORD1>\r
+ <KEYWORD1>lastkey</KEYWORD1>\r
+ <KEYWORD1>lc</KEYWORD1>\r
+ <KEYWORD1>ldbname</KEYWORD1>\r
+ <KEYWORD1>le</KEYWORD1>\r
+ <KEYWORD1>leading</KEYWORD1>\r
+ <KEYWORD1>left</KEYWORD1>\r
+ <KEYWORD1>left-aligned</KEYWORD1>\r
+ <KEYWORD1>left-end</KEYWORD1>\r
+ <KEYWORD1>left-trim</KEYWORD1>\r
+ <KEYWORD1>length</KEYWORD1>\r
+ <KEYWORD1>library</KEYWORD1>\r
+ <KEYWORD1>like</KEYWORD1>\r
+ <KEYWORD1>line</KEYWORD1>\r
+ <KEYWORD1>line-counter</KEYWORD1>\r
+ <KEYWORD1>line-down</KEYWORD1>\r
+ <KEYWORD1>line-left</KEYWORD1>\r
+ <KEYWORD1>line-right</KEYWORD1>\r
+ <KEYWORD1>line-up</KEYWORD1>\r
+ <KEYWORD1>list-events</KEYWORD1>\r
+ <KEYWORD1>list-item-pairs</KEYWORD1>\r
+ <KEYWORD1>list-items</KEYWORD1>\r
+ <KEYWORD1>list-query-attrs</KEYWORD1>\r
+ <KEYWORD1>list-set-attrs</KEYWORD1>\r
+ <KEYWORD1>list-widgets</KEYWORD1>\r
+ <KEYWORD1>listing</KEYWORD1>\r
+ <KEYWORD1>listings</KEYWORD1>\r
+ <KEYWORD1>literal-question</KEYWORD1>\r
+ <KEYWORD1>little-endian</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>load-from</KEYWORD1>\r
+ <KEYWORD1>load-icon</KEYWORD1>\r
+ <KEYWORD1>load-image</KEYWORD1>\r
+ <KEYWORD1>load-image-down</KEYWORD1>\r
+ <KEYWORD1>load-image-insensitive</KEYWORD1>\r
+ <KEYWORD1>load-image-up</KEYWORD1>\r
+ <KEYWORD1>load-mouse-pointer</KEYWORD1>\r
+ <KEYWORD1>load-picture</KEYWORD1>\r
+ <KEYWORD1>load-small-icon</KEYWORD1>\r
+ <KEYWORD1>lob-dir</KEYWORD1>\r
+ <KEYWORD1>local-host</KEYWORD1>\r
+ <KEYWORD1>local-name</KEYWORD1>\r
+ <KEYWORD1>local-port</KEYWORD1>\r
+ <KEYWORD1>locator-column-number</KEYWORD1>\r
+ <KEYWORD1>locator-line-number</KEYWORD1>\r
+ <KEYWORD1>locator-public-id</KEYWORD1>\r
+ <KEYWORD1>locator-system-id</KEYWORD1>\r
+ <KEYWORD1>locator-type</KEYWORD1>\r
+ <KEYWORD1>locked</KEYWORD1>\r
+ <KEYWORD1>log</KEYWORD1>\r
+ <KEYWORD1>log-entry-types</KEYWORD1>\r
+ <KEYWORD1>log-id</KEYWORD1>\r
+ <KEYWORD1>log-manager</KEYWORD1>\r
+ <KEYWORD1>log-threshold</KEYWORD1>\r
+ <KEYWORD1>logfile-name</KEYWORD1>\r
+ <KEYWORD1>logging-level</KEYWORD1>\r
+ <KEYWORD1>logical</KEYWORD1>\r
+ <KEYWORD1>long</KEYWORD1>\r
+ <KEYWORD1>longchar</KEYWORD1>\r
+ <KEYWORD1>longchar-to-node-value</KEYWORD1>\r
+ <KEYWORD1>lookahead</KEYWORD1>\r
+ <KEYWORD1>lookup</KEYWORD1>\r
+ <KEYWORD1>lower</KEYWORD1>\r
+ <KEYWORD1>lt</KEYWORD1>\r
+ <KEYWORD1>machine-class</KEYWORD1>\r
+ <KEYWORD1>main-menu</KEYWORD1>\r
+ <KEYWORD1>mandatory</KEYWORD1>\r
+ <KEYWORD1>manual-highlight</KEYWORD1>\r
+ <KEYWORD1>map</KEYWORD1>\r
+ <KEYWORD1>margin-extra</KEYWORD1>\r
+ <KEYWORD1>margin-height</KEYWORD1>\r
+ <KEYWORD1>margin-height-chars</KEYWORD1>\r
+ <KEYWORD1>margin-height-pixels</KEYWORD1>\r
+ <KEYWORD1>margin-width</KEYWORD1>\r
+ <KEYWORD1>margin-width-chars</KEYWORD1>\r
+ <KEYWORD1>margin-width-pixels</KEYWORD1>\r
+ <KEYWORD1>matches</KEYWORD1>\r
+ <KEYWORD1>max</KEYWORD1>\r
+ <KEYWORD1>max-button</KEYWORD1>\r
+ <KEYWORD1>max-chars</KEYWORD1>\r
+ <KEYWORD1>max-data-guess</KEYWORD1>\r
+ <KEYWORD1>max-height</KEYWORD1>\r
+ <KEYWORD1>max-height-chars</KEYWORD1>\r
+ <KEYWORD1>max-height-pixels</KEYWORD1>\r
+ <KEYWORD1>max-rows</KEYWORD1>\r
+ <KEYWORD1>max-size</KEYWORD1>\r
+ <KEYWORD1>max-value</KEYWORD1>\r
+ <KEYWORD1>max-width</KEYWORD1>\r
+ <KEYWORD1>max-width-chars</KEYWORD1>\r
+ <KEYWORD1>max-width-pixels</KEYWORD1>\r
+ <KEYWORD1>maximize</KEYWORD1>\r
+ <KEYWORD1>maximum</KEYWORD1>\r
+ <KEYWORD1>md5-value</KEYWORD1>\r
+ <KEYWORD1>member</KEYWORD1>\r
+ <KEYWORD1>memptr</KEYWORD1>\r
+ <KEYWORD1>memptr-to-node-value</KEYWORD1>\r
+ <KEYWORD1>menu</KEYWORD1>\r
+ <KEYWORD1>menu-bar</KEYWORD1>\r
+ <KEYWORD1>menu-item</KEYWORD1>\r
+ <KEYWORD1>menu-key</KEYWORD1>\r
+ <KEYWORD1>menu-mouse</KEYWORD1>\r
+ <KEYWORD1>menubar</KEYWORD1>\r
+ <KEYWORD1>merge-changes</KEYWORD1>\r
+ <KEYWORD1>merge-row-changes</KEYWORD1>\r
+ <KEYWORD1>message</KEYWORD1>\r
+ <KEYWORD1>message-area</KEYWORD1>\r
+ <KEYWORD1>message-area-font</KEYWORD1>\r
+ <KEYWORD1>message-line</KEYWORD1>\r
+ <KEYWORD1>message-lines</KEYWORD1>\r
+ <KEYWORD1>min-button</KEYWORD1>\r
+ <KEYWORD1>min-column-width-chars</KEYWORD1>\r
+ <KEYWORD1>min-column-width-pixels</KEYWORD1>\r
+ <KEYWORD1>min-height</KEYWORD1>\r
+ <KEYWORD1>min-height-chars</KEYWORD1>\r
+ <KEYWORD1>min-height-pixels</KEYWORD1>\r
+ <KEYWORD1>min-row-height</KEYWORD1>\r
+ <KEYWORD1>min-row-height-chars</KEYWORD1>\r
+ <KEYWORD1>min-row-height-pixels</KEYWORD1>\r
+ <KEYWORD1>min-schema-marshall</KEYWORD1>\r
+ <KEYWORD1>min-size</KEYWORD1>\r
+ <KEYWORD1>min-value</KEYWORD1>\r
+ <KEYWORD1>min-width</KEYWORD1>\r
+ <KEYWORD1>min-width-chars</KEYWORD1>\r
+ <KEYWORD1>min-width-pixels</KEYWORD1>\r
+ <KEYWORD1>minimum</KEYWORD1>\r
+ <KEYWORD1>mod</KEYWORD1>\r
+ <KEYWORD1>modified</KEYWORD1>\r
+ <KEYWORD1>modulo</KEYWORD1>\r
+ <KEYWORD1>month</KEYWORD1>\r
+ <KEYWORD1>mouse</KEYWORD1>\r
+ <KEYWORD1>mouse-pointer</KEYWORD1>\r
+ <KEYWORD1>movable</KEYWORD1>\r
+ <KEYWORD1>move</KEYWORD1>\r
+ <KEYWORD1>move-after-tab-item</KEYWORD1>\r
+ <KEYWORD1>move-before-tab-item</KEYWORD1>\r
+ <KEYWORD1>move-column</KEYWORD1>\r
+ <KEYWORD1>move-to-bottom</KEYWORD1>\r
+ <KEYWORD1>move-to-eof</KEYWORD1>\r
+ <KEYWORD1>move-to-top</KEYWORD1>\r
+ <KEYWORD1>mpe</KEYWORD1>\r
+ <KEYWORD1>mtime</KEYWORD1>\r
+ <KEYWORD1>multiple</KEYWORD1>\r
+ <KEYWORD1>multiple-key</KEYWORD1>\r
+ <KEYWORD1>multitasking-interval</KEYWORD1>\r
+ <KEYWORD1>must-exist</KEYWORD1>\r
+ <KEYWORD1>must-understand</KEYWORD1>\r
+ <KEYWORD1>name</KEYWORD1>\r
+ <KEYWORD1>namespace-prefix</KEYWORD1>\r
+ <KEYWORD1>namespace-uri</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>ne</KEYWORD1>\r
+ <KEYWORD1>needs-appserver-prompt</KEYWORD1>\r
+ <KEYWORD1>needs-prompt</KEYWORD1>\r
+ <KEYWORD1>nested</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+ <KEYWORD1>new-line</KEYWORD1>\r
+ <KEYWORD1>new-row</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>next-column</KEYWORD1>\r
+ <KEYWORD1>next-error</KEYWORD1>\r
+ <KEYWORD1>next-frame</KEYWORD1>\r
+ <KEYWORD1>next-prompt</KEYWORD1>\r
+ <KEYWORD1>next-sibling</KEYWORD1>\r
+ <KEYWORD1>next-tab-item</KEYWORD1>\r
+ <KEYWORD1>next-value</KEYWORD1>\r
+ <KEYWORD1>next-word</KEYWORD1>\r
+ <KEYWORD1>no</KEYWORD1>\r
+ <KEYWORD1>no-apply</KEYWORD1>\r
+ <KEYWORD1>no-array-message</KEYWORD1>\r
+ <KEYWORD1>no-assign</KEYWORD1>\r
+ <KEYWORD1>no-attr</KEYWORD1>\r
+ <KEYWORD1>no-attr-list</KEYWORD1>\r
+ <KEYWORD1>no-attr-space</KEYWORD1>\r
+ <KEYWORD1>no-auto-validate</KEYWORD1>\r
+ <KEYWORD1>no-bind-where</KEYWORD1>\r
+ <KEYWORD1>no-box</KEYWORD1>\r
+ <KEYWORD1>no-column-scrolling</KEYWORD1>\r
+ <KEYWORD1>no-console</KEYWORD1>\r
+ <KEYWORD1>no-convert</KEYWORD1>\r
+ <KEYWORD1>no-convert-3d-colors</KEYWORD1>\r
+ <KEYWORD1>no-current-value</KEYWORD1>\r
+ <KEYWORD1>no-debug</KEYWORD1>\r
+ <KEYWORD1>no-drag</KEYWORD1>\r
+ <KEYWORD1>no-echo</KEYWORD1>\r
+ <KEYWORD1>no-empty-space</KEYWORD1>\r
+ <KEYWORD1>no-error</KEYWORD1>\r
+ <KEYWORD1>no-fill</KEYWORD1>\r
+ <KEYWORD1>no-focus</KEYWORD1>\r
+ <KEYWORD1>no-help</KEYWORD1>\r
+ <KEYWORD1>no-hide</KEYWORD1>\r
+ <KEYWORD1>no-index-hint</KEYWORD1>\r
+ <KEYWORD1>no-join-by-sqldb</KEYWORD1>\r
+ <KEYWORD1>no-labels</KEYWORD1>\r
+ <KEYWORD1>no-lobs</KEYWORD1>\r
+ <KEYWORD1>no-lock</KEYWORD1>\r
+ <KEYWORD1>no-lookahead</KEYWORD1>\r
+ <KEYWORD1>no-map</KEYWORD1>\r
+ <KEYWORD1>no-message</KEYWORD1>\r
+ <KEYWORD1>no-pause</KEYWORD1>\r
+ <KEYWORD1>no-prefetch</KEYWORD1>\r
+ <KEYWORD1>no-return-value</KEYWORD1>\r
+ <KEYWORD1>no-row-markers</KEYWORD1>\r
+ <KEYWORD1>no-schema-marshall</KEYWORD1>\r
+ <KEYWORD1>no-scrollbar-vertical</KEYWORD1>\r
+ <KEYWORD1>no-scrolling</KEYWORD1>\r
+ <KEYWORD1>no-separate-connection</KEYWORD1>\r
+ <KEYWORD1>no-separators</KEYWORD1>\r
+ <KEYWORD1>no-tab-stop</KEYWORD1>\r
+ <KEYWORD1>no-underline</KEYWORD1>\r
+ <KEYWORD1>no-undo</KEYWORD1>\r
+ <KEYWORD1>no-validate</KEYWORD1>\r
+ <KEYWORD1>no-wait</KEYWORD1>\r
+ <KEYWORD1>no-word-wrap</KEYWORD1>\r
+ <KEYWORD1>node-type</KEYWORD1>\r
+ <KEYWORD1>node-value</KEYWORD1>\r
+ <KEYWORD1>node-value-to-longchar</KEYWORD1>\r
+ <KEYWORD1>node-value-to-memptr</KEYWORD1>\r
+ <KEYWORD1>none</KEYWORD1>\r
+ <KEYWORD1>normalize</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>now</KEYWORD1>\r
+ <KEYWORD1>null</KEYWORD1>\r
+ <KEYWORD1>num-aliases</KEYWORD1>\r
+ <KEYWORD1>num-buffers</KEYWORD1>\r
+ <KEYWORD1>num-buttons</KEYWORD1>\r
+ <KEYWORD1>num-child-relations</KEYWORD1>\r
+ <KEYWORD1>num-children</KEYWORD1>\r
+ <KEYWORD1>num-columns</KEYWORD1>\r
+ <KEYWORD1>num-copies</KEYWORD1>\r
+ <KEYWORD1>num-dbs</KEYWORD1>\r
+ <KEYWORD1>num-dropped-files</KEYWORD1>\r
+ <KEYWORD1>num-entries</KEYWORD1>\r
+ <KEYWORD1>num-fields</KEYWORD1>\r
+ <KEYWORD1>num-formats</KEYWORD1>\r
+ <KEYWORD1>num-header-entries</KEYWORD1>\r
+ <KEYWORD1>num-items</KEYWORD1>\r
+ <KEYWORD1>num-iterations</KEYWORD1>\r
+ <KEYWORD1>num-lines</KEYWORD1>\r
+ <KEYWORD1>num-locked-columns</KEYWORD1>\r
+ <KEYWORD1>num-log-files</KEYWORD1>\r
+ <KEYWORD1>num-messages</KEYWORD1>\r
+ <KEYWORD1>num-parameters</KEYWORD1>\r
+ <KEYWORD1>num-relations</KEYWORD1>\r
+ <KEYWORD1>num-replaced</KEYWORD1>\r
+ <KEYWORD1>num-results</KEYWORD1>\r
+ <KEYWORD1>num-selected</KEYWORD1>\r
+ <KEYWORD1>num-selected-rows</KEYWORD1>\r
+ <KEYWORD1>num-selected-widgets</KEYWORD1>\r
+ <KEYWORD1>num-source-buffers</KEYWORD1>\r
+ <KEYWORD1>num-tabs</KEYWORD1>\r
+ <KEYWORD1>num-to-retain</KEYWORD1>\r
+ <KEYWORD1>num-top-buffers</KEYWORD1>\r
+ <KEYWORD1>num-visible-columns</KEYWORD1>\r
+ <KEYWORD1>numeric</KEYWORD1>\r
+ <KEYWORD1>numeric-decimal-point</KEYWORD1>\r
+ <KEYWORD1>numeric-format</KEYWORD1>\r
+ <KEYWORD1>numeric-separator</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>octet_length</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>off</KEYWORD1>\r
+ <KEYWORD1>ok</KEYWORD1>\r
+ <KEYWORD1>ok-cancel</KEYWORD1>\r
+ <KEYWORD1>old</KEYWORD1>\r
+ <KEYWORD1>ole-invoke-locale</KEYWORD1>\r
+ <KEYWORD1>ole-names-locale</KEYWORD1>\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>on-frame-border</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>open-line-above</KEYWORD1>\r
+ <KEYWORD1>opsys</KEYWORD1>\r
+ <KEYWORD1>option</KEYWORD1>\r
+ <KEYWORD1>options</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>ordered-join</KEYWORD1>\r
+ <KEYWORD1>ordinal</KEYWORD1>\r
+ <KEYWORD1>orientation</KEYWORD1>\r
+ <KEYWORD1>origin-handle</KEYWORD1>\r
+ <KEYWORD1>origin-rowid</KEYWORD1>\r
+ <KEYWORD1>os-append</KEYWORD1>\r
+ <KEYWORD1>os-command</KEYWORD1>\r
+ <KEYWORD1>os-copy</KEYWORD1>\r
+ <KEYWORD1>os-create-dir</KEYWORD1>\r
+ <KEYWORD1>os-delete</KEYWORD1>\r
+ <KEYWORD1>os-dir</KEYWORD1>\r
+ <KEYWORD1>os-drives</KEYWORD1>\r
+ <KEYWORD1>os-error</KEYWORD1>\r
+ <KEYWORD1>os-getenv</KEYWORD1>\r
+ <KEYWORD1>os-rename</KEYWORD1>\r
+ <KEYWORD1>os2</KEYWORD1>\r
+ <KEYWORD1>os400</KEYWORD1>\r
+ <KEYWORD1>otherwise</KEYWORD1>\r
+ <KEYWORD1>out-of-data</KEYWORD1>\r
+ <KEYWORD1>outer</KEYWORD1>\r
+ <KEYWORD1>outer-join</KEYWORD1>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>overlay</KEYWORD1>\r
+ <KEYWORD1>override</KEYWORD1>\r
+ <KEYWORD1>owner</KEYWORD1>\r
+ <KEYWORD1>owner-document</KEYWORD1>\r
+ <KEYWORD1>page</KEYWORD1>\r
+ <KEYWORD1>page-bottom</KEYWORD1>\r
+ <KEYWORD1>page-down</KEYWORD1>\r
+ <KEYWORD1>page-left</KEYWORD1>\r
+ <KEYWORD1>page-number</KEYWORD1>\r
+ <KEYWORD1>page-right</KEYWORD1>\r
+ <KEYWORD1>page-right-text</KEYWORD1>\r
+ <KEYWORD1>page-size</KEYWORD1>\r
+ <KEYWORD1>page-top</KEYWORD1>\r
+ <KEYWORD1>page-up</KEYWORD1>\r
+ <KEYWORD1>page-width</KEYWORD1>\r
+ <KEYWORD1>paged</KEYWORD1>\r
+ <KEYWORD1>parameter</KEYWORD1>\r
+ <KEYWORD1>parent</KEYWORD1>\r
+ <KEYWORD1>parent-buffer</KEYWORD1>\r
+ <KEYWORD1>parent-relation</KEYWORD1>\r
+ <KEYWORD1>parse-status</KEYWORD1>\r
+ <KEYWORD1>partial-key</KEYWORD1>\r
+ <KEYWORD1>pascal</KEYWORD1>\r
+ <KEYWORD1>password-field</KEYWORD1>\r
+ <KEYWORD1>paste</KEYWORD1>\r
+ <KEYWORD1>pathname</KEYWORD1>\r
+ <KEYWORD1>pause</KEYWORD1>\r
+ <KEYWORD1>pdbname</KEYWORD1>\r
+ <KEYWORD1>performance</KEYWORD1>\r
+ <KEYWORD1>persistent</KEYWORD1>\r
+ <KEYWORD1>persistent-cache-disabled</KEYWORD1>\r
+ <KEYWORD1>persistent-procedure</KEYWORD1>\r
+ <KEYWORD1>pfcolor</KEYWORD1>\r
+ <KEYWORD1>pick</KEYWORD1>\r
+ <KEYWORD1>pick-area</KEYWORD1>\r
+ <KEYWORD1>pick-both</KEYWORD1>\r
+ <KEYWORD1>pixels</KEYWORD1>\r
+ <KEYWORD1>pixels-per-column</KEYWORD1>\r
+ <KEYWORD1>pixels-per-row</KEYWORD1>\r
+ <KEYWORD1>popup-menu</KEYWORD1>\r
+ <KEYWORD1>popup-only</KEYWORD1>\r
+ <KEYWORD1>portrait</KEYWORD1>\r
+ <KEYWORD1>position</KEYWORD1>\r
+ <KEYWORD1>precision</KEYWORD1>\r
+ <KEYWORD1>prepare-string</KEYWORD1>\r
+ <KEYWORD1>prepared</KEYWORD1>\r
+ <KEYWORD1>preprocess</KEYWORD1>\r
+ <KEYWORD1>preselect</KEYWORD1>\r
+ <KEYWORD1>prev</KEYWORD1>\r
+ <KEYWORD1>prev-column</KEYWORD1>\r
+ <KEYWORD1>prev-frame</KEYWORD1>\r
+ <KEYWORD1>prev-sibling</KEYWORD1>\r
+ <KEYWORD1>prev-tab-item</KEYWORD1>\r
+ <KEYWORD1>prev-word</KEYWORD1>\r
+ <KEYWORD1>primary</KEYWORD1>\r
+ <KEYWORD1>printer</KEYWORD1>\r
+ <KEYWORD1>printer-control-handle</KEYWORD1>\r
+ <KEYWORD1>printer-hdc</KEYWORD1>\r
+ <KEYWORD1>printer-name</KEYWORD1>\r
+ <KEYWORD1>printer-port</KEYWORD1>\r
+ <KEYWORD1>printer-setup</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>private-data</KEYWORD1>\r
+ <KEYWORD1>privileges</KEYWORD1>\r
+ <KEYWORD1>proc-handle</KEYWORD1>\r
+ <KEYWORD1>proc-status</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+ <KEYWORD1>procedure-call-type</KEYWORD1>\r
+ <KEYWORD1>procedure-name</KEYWORD1>\r
+ <KEYWORD1>process</KEYWORD1>\r
+ <KEYWORD1>profile-file</KEYWORD1>\r
+ <KEYWORD1>profiler</KEYWORD1>\r
+ <KEYWORD1>profiling</KEYWORD1>\r
+ <KEYWORD1>program-name</KEYWORD1>\r
+ <KEYWORD1>progress</KEYWORD1>\r
+ <KEYWORD1>progress-source</KEYWORD1>\r
+ <KEYWORD1>prompt</KEYWORD1>\r
+ <KEYWORD1>prompt-for</KEYWORD1>\r
+ <KEYWORD1>promsgs</KEYWORD1>\r
+ <KEYWORD1>propath</KEYWORD1>\r
+ <KEYWORD1>proversion</KEYWORD1>\r
+ <KEYWORD1>proxy</KEYWORD1>\r
+ <KEYWORD1>proxy-password</KEYWORD1>\r
+ <KEYWORD1>proxy-userid</KEYWORD1>\r
+ <KEYWORD1>public-id</KEYWORD1>\r
+ <KEYWORD1>publish</KEYWORD1>\r
+ <KEYWORD1>published-events</KEYWORD1>\r
+ <KEYWORD1>put</KEYWORD1>\r
+ <KEYWORD1>put-bits</KEYWORD1>\r
+ <KEYWORD1>put-byte</KEYWORD1>\r
+ <KEYWORD1>put-bytes</KEYWORD1>\r
+ <KEYWORD1>put-double</KEYWORD1>\r
+ <KEYWORD1>put-float</KEYWORD1>\r
+ <KEYWORD1>put-key-value</KEYWORD1>\r
+ <KEYWORD1>put-long</KEYWORD1>\r
+ <KEYWORD1>put-short</KEYWORD1>\r
+ <KEYWORD1>put-string</KEYWORD1>\r
+ <KEYWORD1>put-unsigned-short</KEYWORD1>\r
+ <KEYWORD1>putbyte</KEYWORD1>\r
+ <KEYWORD1>query</KEYWORD1>\r
+ <KEYWORD1>query-close</KEYWORD1>\r
+ <KEYWORD1>query-off-end</KEYWORD1>\r
+ <KEYWORD1>query-open</KEYWORD1>\r
+ <KEYWORD1>query-prepare</KEYWORD1>\r
+ <KEYWORD1>query-tuning</KEYWORD1>\r
+ <KEYWORD1>question</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>quoter</KEYWORD1>\r
+ <KEYWORD1>r-index</KEYWORD1>\r
+ <KEYWORD1>radio-buttons</KEYWORD1>\r
+ <KEYWORD1>radio-set</KEYWORD1>\r
+ <KEYWORD1>random</KEYWORD1>\r
+ <KEYWORD1>raw</KEYWORD1>\r
+ <KEYWORD1>raw-transfer</KEYWORD1>\r
+ <KEYWORD1>rcode-information</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>read-available</KEYWORD1>\r
+ <KEYWORD1>read-exact-num</KEYWORD1>\r
+ <KEYWORD1>read-file</KEYWORD1>\r
+ <KEYWORD1>read-only</KEYWORD1>\r
+ <KEYWORD1>readkey</KEYWORD1>\r
+ <KEYWORD1>real</KEYWORD1>\r
+ <KEYWORD1>recid</KEYWORD1>\r
+ <KEYWORD1>record-length</KEYWORD1>\r
+ <KEYWORD1>rectangle</KEYWORD1>\r
+ <KEYWORD1>recursive</KEYWORD1>\r
+ <KEYWORD1>refresh</KEYWORD1>\r
+ <KEYWORD1>refreshable</KEYWORD1>\r
+ <KEYWORD1>reject-changes</KEYWORD1>\r
+ <KEYWORD1>reject-row-changes</KEYWORD1>\r
+ <KEYWORD1>rejected</KEYWORD1>\r
+ <KEYWORD1>relation-fields</KEYWORD1>\r
+ <KEYWORD1>relations-active</KEYWORD1>\r
+ <KEYWORD1>release</KEYWORD1>\r
+ <KEYWORD1>remote</KEYWORD1>\r
+ <KEYWORD1>remote-host</KEYWORD1>\r
+ <KEYWORD1>remote-port</KEYWORD1>\r
+ <KEYWORD1>remove-attribute</KEYWORD1>\r
+ <KEYWORD1>remove-child</KEYWORD1>\r
+ <KEYWORD1>remove-events-procedure</KEYWORD1>\r
+ <KEYWORD1>remove-super-procedure</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>replace</KEYWORD1>\r
+ <KEYWORD1>replace-child</KEYWORD1>\r
+ <KEYWORD1>replace-selection-text</KEYWORD1>\r
+ <KEYWORD1>replication-create</KEYWORD1>\r
+ <KEYWORD1>replication-delete</KEYWORD1>\r
+ <KEYWORD1>replication-write</KEYWORD1>\r
+ <KEYWORD1>reports</KEYWORD1>\r
+ <KEYWORD1>reposition</KEYWORD1>\r
+ <KEYWORD1>reposition-backwards</KEYWORD1>\r
+ <KEYWORD1>reposition-forwards</KEYWORD1>\r
+ <KEYWORD1>reposition-mode</KEYWORD1>\r
+ <KEYWORD1>reposition-parent-relation</KEYWORD1>\r
+ <KEYWORD1>reposition-to-row</KEYWORD1>\r
+ <KEYWORD1>reposition-to-rowid</KEYWORD1>\r
+ <KEYWORD1>request</KEYWORD1>\r
+ <KEYWORD1>resizable</KEYWORD1>\r
+ <KEYWORD1>resize</KEYWORD1>\r
+ <KEYWORD1>result</KEYWORD1>\r
+ <KEYWORD1>resume-display</KEYWORD1>\r
+ <KEYWORD1>retain</KEYWORD1>\r
+ <KEYWORD1>retain-shape</KEYWORD1>\r
+ <KEYWORD1>retry</KEYWORD1>\r
+ <KEYWORD1>retry-cancel</KEYWORD1>\r
+ <KEYWORD1>return-inserted</KEYWORD1>\r
+ <KEYWORD1>return-to-start-dir</KEYWORD1>\r
+ <KEYWORD1>return-value</KEYWORD1>\r
+ <KEYWORD1>return-value-data-type</KEYWORD1>\r
+ <KEYWORD1>returns</KEYWORD1>\r
+ <KEYWORD1>reverse-from</KEYWORD1>\r
+ <KEYWORD1>revert</KEYWORD1>\r
+ <KEYWORD1>revoke</KEYWORD1>\r
+ <KEYWORD1>rgb-value</KEYWORD1>\r
+ <KEYWORD1>right</KEYWORD1>\r
+ <KEYWORD1>right-aligned</KEYWORD1>\r
+ <KEYWORD1>right-end</KEYWORD1>\r
+ <KEYWORD1>right-trim</KEYWORD1>\r
+ <KEYWORD1>round</KEYWORD1>\r
+ <KEYWORD1>row</KEYWORD1>\r
+ <KEYWORD1>row-created</KEYWORD1>\r
+ <KEYWORD1>row-deleted</KEYWORD1>\r
+ <KEYWORD1>row-height</KEYWORD1>\r
+ <KEYWORD1>row-height-chars</KEYWORD1>\r
+ <KEYWORD1>row-height-pixels</KEYWORD1>\r
+ <KEYWORD1>row-markers</KEYWORD1>\r
+ <KEYWORD1>row-modified</KEYWORD1>\r
+ <KEYWORD1>row-of</KEYWORD1>\r
+ <KEYWORD1>row-resizable</KEYWORD1>\r
+ <KEYWORD1>row-state</KEYWORD1>\r
+ <KEYWORD1>row-unmodified</KEYWORD1>\r
+ <KEYWORD1>rowid</KEYWORD1>\r
+ <KEYWORD1>rule</KEYWORD1>\r
+ <KEYWORD1>rule-row</KEYWORD1>\r
+ <KEYWORD1>rule-y</KEYWORD1>\r
+ <KEYWORD1>run</KEYWORD1>\r
+ <KEYWORD1>run-procedure</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>save-as</KEYWORD1>\r
+ <KEYWORD1>save-file</KEYWORD1>\r
+ <KEYWORD1>save-row-changes</KEYWORD1>\r
+ <KEYWORD1>save-where-string</KEYWORD1>\r
+ <KEYWORD1>sax-attributes</KEYWORD1>\r
+ <KEYWORD1>sax-complete</KEYWORD1>\r
+ <KEYWORD1>sax-parse</KEYWORD1>\r
+ <KEYWORD1>sax-parse-first</KEYWORD1>\r
+ <KEYWORD1>sax-parse-next</KEYWORD1>\r
+ <KEYWORD1>sax-parser-error</KEYWORD1>\r
+ <KEYWORD1>sax-reader</KEYWORD1>\r
+ <KEYWORD1>sax-running</KEYWORD1>\r
+ <KEYWORD1>sax-uninitialized</KEYWORD1>\r
+ <KEYWORD1>sax-xml</KEYWORD1>\r
+ <KEYWORD1>schema</KEYWORD1>\r
+ <KEYWORD1>schema-change</KEYWORD1>\r
+ <KEYWORD1>schema-path</KEYWORD1>\r
+ <KEYWORD1>screen</KEYWORD1>\r
+ <KEYWORD1>screen-io</KEYWORD1>\r
+ <KEYWORD1>screen-lines</KEYWORD1>\r
+ <KEYWORD1>screen-value</KEYWORD1>\r
+ <KEYWORD1>scroll</KEYWORD1>\r
+ <KEYWORD1>scroll-bars</KEYWORD1>\r
+ <KEYWORD1>scroll-delta</KEYWORD1>\r
+ <KEYWORD1>scroll-left</KEYWORD1>\r
+ <KEYWORD1>scroll-mode</KEYWORD1>\r
+ <KEYWORD1>scroll-offset</KEYWORD1>\r
+ <KEYWORD1>scroll-right</KEYWORD1>\r
+ <KEYWORD1>scroll-to-current-row</KEYWORD1>\r
+ <KEYWORD1>scroll-to-item</KEYWORD1>\r
+ <KEYWORD1>scroll-to-selected-row</KEYWORD1>\r
+ <KEYWORD1>scrollable</KEYWORD1>\r
+ <KEYWORD1>scrollbar-drag</KEYWORD1>\r
+ <KEYWORD1>scrollbar-horizontal</KEYWORD1>\r
+ <KEYWORD1>scrollbar-vertical</KEYWORD1>\r
+ <KEYWORD1>scrolled-row-position</KEYWORD1>\r
+ <KEYWORD1>scrolling</KEYWORD1>\r
+ <KEYWORD1>sdbname</KEYWORD1>\r
+ <KEYWORD1>search</KEYWORD1>\r
+ <KEYWORD1>search-self</KEYWORD1>\r
+ <KEYWORD1>search-target</KEYWORD1>\r
+ <KEYWORD1>section</KEYWORD1>\r
+ <KEYWORD1>seek</KEYWORD1>\r
+ <KEYWORD1>select-all</KEYWORD1>\r
+ <KEYWORD1>select-extend</KEYWORD1>\r
+ <KEYWORD1>select-focused-row</KEYWORD1>\r
+ <KEYWORD1>select-next-row</KEYWORD1>\r
+ <KEYWORD1>select-prev-row</KEYWORD1>\r
+ <KEYWORD1>select-repositioned-row</KEYWORD1>\r
+ <KEYWORD1>select-row</KEYWORD1>\r
+ <KEYWORD1>selectable</KEYWORD1>\r
+ <KEYWORD1>selected</KEYWORD1>\r
+ <KEYWORD1>selected-items</KEYWORD1>\r
+ <KEYWORD1>selection-end</KEYWORD1>\r
+ <KEYWORD1>selection-extend</KEYWORD1>\r
+ <KEYWORD1>selection-list</KEYWORD1>\r
+ <KEYWORD1>selection-start</KEYWORD1>\r
+ <KEYWORD1>selection-text</KEYWORD1>\r
+ <KEYWORD1>self</KEYWORD1>\r
+ <KEYWORD1>send</KEYWORD1>\r
+ <KEYWORD1>sensitive</KEYWORD1>\r
+ <KEYWORD1>separate-connection</KEYWORD1>\r
+ <KEYWORD1>separator-fgcolor</KEYWORD1>\r
+ <KEYWORD1>separators</KEYWORD1>\r
+ <KEYWORD1>server</KEYWORD1>\r
+ <KEYWORD1>server-connection-bound</KEYWORD1>\r
+ <KEYWORD1>server-connection-bound-request</KEYWORD1>\r
+ <KEYWORD1>server-connection-context</KEYWORD1>\r
+ <KEYWORD1>server-connection-id</KEYWORD1>\r
+ <KEYWORD1>server-operating-mode</KEYWORD1>\r
+ <KEYWORD1>server-socket</KEYWORD1>\r
+ <KEYWORD1>session</KEYWORD1>\r
+ <KEYWORD1>session-end</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>set-actor</KEYWORD1>\r
+ <KEYWORD1>set-attr-call-type</KEYWORD1>\r
+ <KEYWORD1>set-attribute</KEYWORD1>\r
+ <KEYWORD1>set-attribute-node</KEYWORD1>\r
+ <KEYWORD1>set-blue-value</KEYWORD1>\r
+ <KEYWORD1>set-break</KEYWORD1>\r
+ <KEYWORD1>set-buffers</KEYWORD1>\r
+ <KEYWORD1>set-byte-order</KEYWORD1>\r
+ <KEYWORD1>set-callback-procedure</KEYWORD1>\r
+ <KEYWORD1>set-cell-focus</KEYWORD1>\r
+ <KEYWORD1>set-commit</KEYWORD1>\r
+ <KEYWORD1>set-connect-procedure</KEYWORD1>\r
+ <KEYWORD1>set-contents</KEYWORD1>\r
+ <KEYWORD1>set-dynamic</KEYWORD1>\r
+ <KEYWORD1>set-green-value</KEYWORD1>\r
+ <KEYWORD1>set-input-source</KEYWORD1>\r
+ <KEYWORD1>set-must-understand</KEYWORD1>\r
+ <KEYWORD1>set-node</KEYWORD1>\r
+ <KEYWORD1>set-numeric-format</KEYWORD1>\r
+ <KEYWORD1>set-parameter</KEYWORD1>\r
+ <KEYWORD1>set-pointer-value</KEYWORD1>\r
+ <KEYWORD1>set-read-response-procedure</KEYWORD1>\r
+ <KEYWORD1>set-red-value</KEYWORD1>\r
+ <KEYWORD1>set-repositioned-row</KEYWORD1>\r
+ <KEYWORD1>set-rgb-value</KEYWORD1>\r
+ <KEYWORD1>set-rollback</KEYWORD1>\r
+ <KEYWORD1>set-selection</KEYWORD1>\r
+ <KEYWORD1>set-serialized</KEYWORD1>\r
+ <KEYWORD1>set-size</KEYWORD1>\r
+ <KEYWORD1>set-socket-option</KEYWORD1>\r
+ <KEYWORD1>set-wait-state</KEYWORD1>\r
+ <KEYWORD1>settings</KEYWORD1>\r
+ <KEYWORD1>setuserid</KEYWORD1>\r
+ <KEYWORD1>share-lock</KEYWORD1>\r
+ <KEYWORD1>shared</KEYWORD1>\r
+ <KEYWORD1>short</KEYWORD1>\r
+ <KEYWORD1>show-in-taskbar</KEYWORD1>\r
+ <KEYWORD1>show-stats</KEYWORD1>\r
+ <KEYWORD1>side-label</KEYWORD1>\r
+ <KEYWORD1>side-label-handle</KEYWORD1>\r
+ <KEYWORD1>side-labels</KEYWORD1>\r
+ <KEYWORD1>silent</KEYWORD1>\r
+ <KEYWORD1>simple</KEYWORD1>\r
+ <KEYWORD1>single</KEYWORD1>\r
+ <KEYWORD1>size</KEYWORD1>\r
+ <KEYWORD1>size-chars</KEYWORD1>\r
+ <KEYWORD1>size-pixels</KEYWORD1>\r
+ <KEYWORD1>skip</KEYWORD1>\r
+ <KEYWORD1>skip-deleted-record</KEYWORD1>\r
+ <KEYWORD1>skip-schema-check</KEYWORD1>\r
+ <KEYWORD1>slider</KEYWORD1>\r
+ <KEYWORD1>small-icon</KEYWORD1>\r
+ <KEYWORD1>small-title</KEYWORD1>\r
+ <KEYWORD1>smallint</KEYWORD1>\r
+ <KEYWORD1>soap-fault</KEYWORD1>\r
+ <KEYWORD1>soap-fault-actor</KEYWORD1>\r
+ <KEYWORD1>soap-fault-code</KEYWORD1>\r
+ <KEYWORD1>soap-fault-detail</KEYWORD1>\r
+ <KEYWORD1>soap-fault-string</KEYWORD1>\r
+ <KEYWORD1>soap-header</KEYWORD1>\r
+ <KEYWORD1>soap-header-entryref</KEYWORD1>\r
+ <KEYWORD1>socket</KEYWORD1>\r
+ <KEYWORD1>some</KEYWORD1>\r
+ <KEYWORD1>sort</KEYWORD1>\r
+ <KEYWORD1>source</KEYWORD1>\r
+ <KEYWORD1>source-procedure</KEYWORD1>\r
+ <KEYWORD1>space</KEYWORD1>\r
+ <KEYWORD1>sql</KEYWORD1>\r
+ <KEYWORD1>sqrt</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+ <KEYWORD1>start-extend-box-selection</KEYWORD1>\r
+ <KEYWORD1>start-row-resize</KEYWORD1>\r
+ <KEYWORD1>starting</KEYWORD1>\r
+ <KEYWORD1>startup-parameters</KEYWORD1>\r
+ <KEYWORD1>status</KEYWORD1>\r
+ <KEYWORD1>status-area</KEYWORD1>\r
+ <KEYWORD1>status-area-font</KEYWORD1>\r
+ <KEYWORD1>stdcall</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>stop-display</KEYWORD1>\r
+ <KEYWORD1>stop-parsing</KEYWORD1>\r
+ <KEYWORD1>stopped</KEYWORD1>\r
+ <KEYWORD1>stored-procedure</KEYWORD1>\r
+ <KEYWORD1>stream</KEYWORD1>\r
+ <KEYWORD1>stream-io</KEYWORD1>\r
+ <KEYWORD1>stretch-to-fit</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>string-value</KEYWORD1>\r
+ <KEYWORD1>string-xref</KEYWORD1>\r
+ <KEYWORD1>sub-average</KEYWORD1>\r
+ <KEYWORD1>sub-count</KEYWORD1>\r
+ <KEYWORD1>sub-maximum</KEYWORD1>\r
+ <KEYWORD1>sub-menu</KEYWORD1>\r
+ <KEYWORD1>sub-menu-help</KEYWORD1>\r
+ <KEYWORD1>sub-minimum</KEYWORD1>\r
+ <KEYWORD1>sub-total</KEYWORD1>\r
+ <KEYWORD1>subscribe</KEYWORD1>\r
+ <KEYWORD1>substitute</KEYWORD1>\r
+ <KEYWORD1>substring</KEYWORD1>\r
+ <KEYWORD1>subtype</KEYWORD1>\r
+ <KEYWORD1>sum</KEYWORD1>\r
+ <KEYWORD1>summary</KEYWORD1>\r
+ <KEYWORD1>super</KEYWORD1>\r
+ <KEYWORD1>super-procedures</KEYWORD1>\r
+ <KEYWORD1>suppress-namespace-processing</KEYWORD1>\r
+ <KEYWORD1>suppress-warnings</KEYWORD1>\r
+ <KEYWORD1>synchronize</KEYWORD1>\r
+ <KEYWORD1>system-alert-boxes</KEYWORD1>\r
+ <KEYWORD1>system-dialog</KEYWORD1>\r
+ <KEYWORD1>system-help</KEYWORD1>\r
+ <KEYWORD1>system-id</KEYWORD1>\r
+ <KEYWORD1>tab-position</KEYWORD1>\r
+ <KEYWORD1>tab-stop</KEYWORD1>\r
+ <KEYWORD1>table</KEYWORD1>\r
+ <KEYWORD1>table-crc-list</KEYWORD1>\r
+ <KEYWORD1>table-handle</KEYWORD1>\r
+ <KEYWORD1>table-list</KEYWORD1>\r
+ <KEYWORD1>table-number</KEYWORD1>\r
+ <KEYWORD1>target</KEYWORD1>\r
+ <KEYWORD1>target-procedure</KEYWORD1>\r
+ <KEYWORD1>temp-directory</KEYWORD1>\r
+ <KEYWORD1>temp-table</KEYWORD1>\r
+ <KEYWORD1>temp-table-prepare</KEYWORD1>\r
+ <KEYWORD1>term</KEYWORD1>\r
+ <KEYWORD1>terminal</KEYWORD1>\r
+ <KEYWORD1>terminate</KEYWORD1>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>text-cursor</KEYWORD1>\r
+ <KEYWORD1>text-seg-growth</KEYWORD1>\r
+ <KEYWORD1>text-selected</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>this-procedure</KEYWORD1>\r
+ <KEYWORD1>three-d</KEYWORD1>\r
+ <KEYWORD1>through</KEYWORD1>\r
+ <KEYWORD1>thru</KEYWORD1>\r
+ <KEYWORD1>tic-marks</KEYWORD1>\r
+ <KEYWORD1>time</KEYWORD1>\r
+ <KEYWORD1>time-source</KEYWORD1>\r
+ <KEYWORD1>timezone</KEYWORD1>\r
+ <KEYWORD1>title</KEYWORD1>\r
+ <KEYWORD1>title-bgcolor</KEYWORD1>\r
+ <KEYWORD1>title-dcolor</KEYWORD1>\r
+ <KEYWORD1>title-fgcolor</KEYWORD1>\r
+ <KEYWORD1>title-font</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>to-rowid</KEYWORD1>\r
+ <KEYWORD1>today</KEYWORD1>\r
+ <KEYWORD1>toggle-box</KEYWORD1>\r
+ <KEYWORD1>tooltip</KEYWORD1>\r
+ <KEYWORD1>tooltips</KEYWORD1>\r
+ <KEYWORD1>top</KEYWORD1>\r
+ <KEYWORD1>top-column</KEYWORD1>\r
+ <KEYWORD1>top-only</KEYWORD1>\r
+ <KEYWORD1>topic</KEYWORD1>\r
+ <KEYWORD1>total</KEYWORD1>\r
+ <KEYWORD1>trace-filter</KEYWORD1>\r
+ <KEYWORD1>tracing</KEYWORD1>\r
+ <KEYWORD1>tracking-changes</KEYWORD1>\r
+ <KEYWORD1>trailing</KEYWORD1>\r
+ <KEYWORD1>trans</KEYWORD1>\r
+ <KEYWORD1>trans-init-procedure</KEYWORD1>\r
+ <KEYWORD1>transaction</KEYWORD1>\r
+ <KEYWORD1>transaction-mode</KEYWORD1>\r
+ <KEYWORD1>transparent</KEYWORD1>\r
+ <KEYWORD1>trigger</KEYWORD1>\r
+ <KEYWORD1>triggers</KEYWORD1>\r
+ <KEYWORD1>trim</KEYWORD1>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>truncate</KEYWORD1>\r
+ <KEYWORD1>ttcodepage</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>unbuffered</KEYWORD1>\r
+ <KEYWORD1>underline</KEYWORD1>\r
+ <KEYWORD1>undo</KEYWORD1>\r
+ <KEYWORD1>unformatted</KEYWORD1>\r
+ <KEYWORD1>union</KEYWORD1>\r
+ <KEYWORD1>unique</KEYWORD1>\r
+ <KEYWORD1>unique-id</KEYWORD1>\r
+ <KEYWORD1>unique-match</KEYWORD1>\r
+ <KEYWORD1>unix</KEYWORD1>\r
+ <KEYWORD1>unix-end</KEYWORD1>\r
+ <KEYWORD1>unless-hidden</KEYWORD1>\r
+ <KEYWORD1>unload</KEYWORD1>\r
+ <KEYWORD1>unsigned-short</KEYWORD1>\r
+ <KEYWORD1>unsubscribe</KEYWORD1>\r
+ <KEYWORD1>up</KEYWORD1>\r
+ <KEYWORD1>update</KEYWORD1>\r
+ <KEYWORD1>upper</KEYWORD1>\r
+ <KEYWORD1>url</KEYWORD1>\r
+ <KEYWORD1>url-decode</KEYWORD1>\r
+ <KEYWORD1>url-encode</KEYWORD1>\r
+ <KEYWORD1>url-password</KEYWORD1>\r
+ <KEYWORD1>url-userid</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>use-dict-exps</KEYWORD1>\r
+ <KEYWORD1>use-filename</KEYWORD1>\r
+ <KEYWORD1>use-index</KEYWORD1>\r
+ <KEYWORD1>use-revvideo</KEYWORD1>\r
+ <KEYWORD1>use-text</KEYWORD1>\r
+ <KEYWORD1>use-underline</KEYWORD1>\r
+ <KEYWORD1>user</KEYWORD1>\r
+ <KEYWORD1>user-data</KEYWORD1>\r
+ <KEYWORD1>userid</KEYWORD1>\r
+ <KEYWORD1>using</KEYWORD1>\r
+ <KEYWORD1>utc-offset</KEYWORD1>\r
+ <KEYWORD1>v6display</KEYWORD1>\r
+ <KEYWORD1>v6frame</KEYWORD1>\r
+ <KEYWORD1>valid-event</KEYWORD1>\r
+ <KEYWORD1>valid-handle</KEYWORD1>\r
+ <KEYWORD1>validate</KEYWORD1>\r
+ <KEYWORD1>validate-expression</KEYWORD1>\r
+ <KEYWORD1>validate-message</KEYWORD1>\r
+ <KEYWORD1>validate-xml</KEYWORD1>\r
+ <KEYWORD1>validation-enabled</KEYWORD1>\r
+ <KEYWORD1>value</KEYWORD1>\r
+ <KEYWORD1>values</KEYWORD1>\r
+ <KEYWORD1>variable</KEYWORD1>\r
+ <KEYWORD1>verbose</KEYWORD1>\r
+ <KEYWORD1>vertical</KEYWORD1>\r
+ <KEYWORD1>view</KEYWORD1>\r
+ <KEYWORD1>view-as</KEYWORD1>\r
+ <KEYWORD1>view-first-column-on-reopen</KEYWORD1>\r
+ <KEYWORD1>virtual-height</KEYWORD1>\r
+ <KEYWORD1>virtual-height-chars</KEYWORD1>\r
+ <KEYWORD1>virtual-height-pixels</KEYWORD1>\r
+ <KEYWORD1>virtual-width</KEYWORD1>\r
+ <KEYWORD1>virtual-width-chars</KEYWORD1>\r
+ <KEYWORD1>virtual-width-pixels</KEYWORD1>\r
+ <KEYWORD1>visible</KEYWORD1>\r
+ <KEYWORD1>vms</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+ <KEYWORD1>wait-for</KEYWORD1>\r
+ <KEYWORD1>warning</KEYWORD1>\r
+ <KEYWORD1>web-context</KEYWORD1>\r
+ <KEYWORD1>web-notify</KEYWORD1>\r
+ <KEYWORD1>weekday</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+ <KEYWORD1>where-string</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>widget</KEYWORD1>\r
+ <KEYWORD1>widget-enter</KEYWORD1>\r
+ <KEYWORD1>widget-handle</KEYWORD1>\r
+ <KEYWORD1>widget-leave</KEYWORD1>\r
+ <KEYWORD1>widget-pool</KEYWORD1>\r
+ <KEYWORD1>width</KEYWORD1>\r
+ <KEYWORD1>width-chars</KEYWORD1>\r
+ <KEYWORD1>width-pixels</KEYWORD1>\r
+ <KEYWORD1>window</KEYWORD1>\r
+ <KEYWORD1>window-delayed-minimize</KEYWORD1>\r
+ <KEYWORD1>window-name</KEYWORD1>\r
+ <KEYWORD1>window-normal</KEYWORD1>\r
+ <KEYWORD1>window-state</KEYWORD1>\r
+ <KEYWORD1>window-system</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>word-index</KEYWORD1>\r
+ <KEYWORD1>word-wrap</KEYWORD1>\r
+ <KEYWORD1>work-area-height-pixels</KEYWORD1>\r
+ <KEYWORD1>work-area-width-pixels</KEYWORD1>\r
+ <KEYWORD1>work-area-x</KEYWORD1>\r
+ <KEYWORD1>work-area-y</KEYWORD1>\r
+ <KEYWORD1>work-table</KEYWORD1>\r
+ <KEYWORD1>workfile</KEYWORD1>\r
+ <KEYWORD1>write</KEYWORD1>\r
+ <KEYWORD1>write-data</KEYWORD1>\r
+ <KEYWORD1>x</KEYWORD1>\r
+ <KEYWORD1>x-document</KEYWORD1>\r
+ <KEYWORD1>x-noderef</KEYWORD1>\r
+ <KEYWORD1>x-of</KEYWORD1>\r
+ <KEYWORD1>xcode</KEYWORD1>\r
+ <KEYWORD1>xml-schema-path</KEYWORD1>\r
+ <KEYWORD1>xml-suppress-namespace-processing</KEYWORD1>\r
+ <KEYWORD1>xref</KEYWORD1>\r
+ <KEYWORD1>y</KEYWORD1>\r
+ <KEYWORD1>y-of</KEYWORD1>\r
+ <KEYWORD1>year</KEYWORD1>\r
+ <KEYWORD1>year-offset</KEYWORD1>\r
+ <KEYWORD1>yes</KEYWORD1>\r
+ <KEYWORD1>yes-no</KEYWORD1>\r
+ <KEYWORD1>yes-no-cancel</KEYWORD1>\r
+ <KEYWORD1>_dcm</KEYWORD1>\r
+\r
+ <!-- Some commonly used abbreviations -->\r
+ <!-- And words missing from -zgenkwlist option -->\r
+ <KEYWORD1>accum</KEYWORD1>\r
+ <KEYWORD1>asc</KEYWORD1>\r
+ <KEYWORD1>avail</KEYWORD1>\r
+ <KEYWORD1>button</KEYWORD1>\r
+ <KEYWORD1>char</KEYWORD1>\r
+ <KEYWORD1>column</KEYWORD1>\r
+ <KEYWORD1>dec</KEYWORD1>\r
+ <KEYWORD1>def</KEYWORD1>\r
+ <KEYWORD1>disp</KEYWORD1>\r
+ <KEYWORD1>dict</KEYWORD1>\r
+ <KEYWORD1>dyn-function</KEYWORD1>\r
+ <KEYWORD1>excl</KEYWORD1>\r
+ <KEYWORD1>field</KEYWORD1>\r
+ <KEYWORD1>field-group</KEYWORD1>\r
+ <KEYWORD1>file-info</KEYWORD1>\r
+ <KEYWORD1>form</KEYWORD1>\r
+ <KEYWORD1>forward</KEYWORD1>\r
+ <KEYWORD1>funct</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <KEYWORD1>info</KEYWORD1>\r
+ <KEYWORD1>index-field</KEYWORD1>\r
+ <KEYWORD1>log</KEYWORD1>\r
+ <KEYWORD1>literal</KEYWORD1>\r
+ <KEYWORD1>load-control</KEYWORD1>\r
+ <KEYWORD1>no-label</KEYWORD1>\r
+ <KEYWORD1>prim</KEYWORD1>\r
+ <KEYWORD1>rcode-info</KEYWORD1>\r
+ <KEYWORD1>share</KEYWORD1>\r
+ <KEYWORD1>substr</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+\r
+\r
+ <!-- KEYWORD2 : VST & metaschema files and fields -->\r
+ <KEYWORD2>_abbreviate</KEYWORD2>\r
+ <KEYWORD2>_account_expires</KEYWORD2>\r
+ <KEYWORD2>_actailog</KEYWORD2>\r
+ <KEYWORD2>_actbilog</KEYWORD2>\r
+ <KEYWORD2>_actbuffer</KEYWORD2>\r
+ <KEYWORD2>_actindex</KEYWORD2>\r
+ <KEYWORD2>_actiofile</KEYWORD2>\r
+ <KEYWORD2>_actiotype</KEYWORD2>\r
+ <KEYWORD2>_active</KEYWORD2>\r
+ <KEYWORD2>_actlock</KEYWORD2>\r
+ <KEYWORD2>_actother</KEYWORD2>\r
+ <KEYWORD2>_actpws</KEYWORD2>\r
+ <KEYWORD2>_actrecord</KEYWORD2>\r
+ <KEYWORD2>_actserver</KEYWORD2>\r
+ <KEYWORD2>_actspace</KEYWORD2>\r
+ <KEYWORD2>_actsummary</KEYWORD2>\r
+ <KEYWORD2>_admin</KEYWORD2>\r
+ <KEYWORD2>_ailog-aiwwrites</KEYWORD2>\r
+ <KEYWORD2>_ailog-bbuffwaits</KEYWORD2>\r
+ <KEYWORD2>_ailog-byteswritn</KEYWORD2>\r
+ <KEYWORD2>_ailog-forcewaits</KEYWORD2>\r
+ <KEYWORD2>_ailog-id</KEYWORD2>\r
+ <KEYWORD2>_ailog-misc</KEYWORD2>\r
+ <KEYWORD2>_ailog-nobufavail</KEYWORD2>\r
+ <KEYWORD2>_ailog-partialwrt</KEYWORD2>\r
+ <KEYWORD2>_ailog-recwriten</KEYWORD2>\r
+ <KEYWORD2>_ailog-totwrites</KEYWORD2>\r
+ <KEYWORD2>_ailog-trans</KEYWORD2>\r
+ <KEYWORD2>_ailog-uptime</KEYWORD2>\r
+ <KEYWORD2>_alt</KEYWORD2>\r
+ <KEYWORD2>_area</KEYWORD2>\r
+ <KEYWORD2>_area-attrib</KEYWORD2>\r
+ <KEYWORD2>_area-block</KEYWORD2>\r
+ <KEYWORD2>_area-blocksize</KEYWORD2>\r
+ <KEYWORD2>_area-clustersize</KEYWORD2>\r
+ <KEYWORD2>_area-extents</KEYWORD2>\r
+ <KEYWORD2>_area-misc</KEYWORD2>\r
+ <KEYWORD2>_area-name</KEYWORD2>\r
+ <KEYWORD2>_area-number</KEYWORD2>\r
+ <KEYWORD2>_area-recbits</KEYWORD2>\r
+ <KEYWORD2>_area-recid</KEYWORD2>\r
+ <KEYWORD2>_area-type</KEYWORD2>\r
+ <KEYWORD2>_area-version</KEYWORD2>\r
+ <KEYWORD2>_areaextent</KEYWORD2>\r
+ <KEYWORD2>_areastatus</KEYWORD2>\r
+ <KEYWORD2>_areastatus-areaname</KEYWORD2>\r
+ <KEYWORD2>_areastatus-areanum</KEYWORD2>\r
+ <KEYWORD2>_areastatus-extents</KEYWORD2>\r
+ <KEYWORD2>_areastatus-freenum</KEYWORD2>\r
+ <KEYWORD2>_areastatus-hiwater</KEYWORD2>\r
+ <KEYWORD2>_areastatus-id</KEYWORD2>\r
+ <KEYWORD2>_areastatus-lastextent</KEYWORD2>\r
+ <KEYWORD2>_areastatus-rmnum</KEYWORD2>\r
+ <KEYWORD2>_areastatus-totblocks</KEYWORD2>\r
+ <KEYWORD2>_argtype</KEYWORD2>\r
+ <KEYWORD2>_ascending</KEYWORD2>\r
+ <KEYWORD2>_attribute</KEYWORD2>\r
+ <KEYWORD2>_attributes1</KEYWORD2>\r
+ <KEYWORD2>_auth-id</KEYWORD2>\r
+ <KEYWORD2>_autoincr</KEYWORD2>\r
+ <KEYWORD2>_base-col</KEYWORD2>\r
+ <KEYWORD2>_base-tables</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-apwq</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-ckpmarked</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-ckpq</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-hashsize</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-id</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-lastckpnum</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-lru</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-misc</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-modbuffs</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-totbufs</KEYWORD2>\r
+ <KEYWORD2>_bfstatus-usedbuffs</KEYWORD2>\r
+ <KEYWORD2>_bilog-bbuffwaits</KEYWORD2>\r
+ <KEYWORD2>_bilog-biwwrites</KEYWORD2>\r
+ <KEYWORD2>_bilog-bytesread</KEYWORD2>\r
+ <KEYWORD2>_bilog-byteswrtn</KEYWORD2>\r
+ <KEYWORD2>_bilog-clstrclose</KEYWORD2>\r
+ <KEYWORD2>_bilog-ebuffwaits</KEYWORD2>\r
+ <KEYWORD2>_bilog-forcewaits</KEYWORD2>\r
+ <KEYWORD2>_bilog-forcewrts</KEYWORD2>\r
+ <KEYWORD2>_bilog-id</KEYWORD2>\r
+ <KEYWORD2>_bilog-misc</KEYWORD2>\r
+ <KEYWORD2>_bilog-partialwrts</KEYWORD2>\r
+ <KEYWORD2>_bilog-recread</KEYWORD2>\r
+ <KEYWORD2>_bilog-recwriten</KEYWORD2>\r
+ <KEYWORD2>_bilog-totalwrts</KEYWORD2>\r
+ <KEYWORD2>_bilog-totreads</KEYWORD2>\r
+ <KEYWORD2>_bilog-trans</KEYWORD2>\r
+ <KEYWORD2>_bilog-uptime</KEYWORD2>\r
+ <KEYWORD2>_block</KEYWORD2>\r
+ <KEYWORD2>_block-area</KEYWORD2>\r
+ <KEYWORD2>_block-bkupctr</KEYWORD2>\r
+ <KEYWORD2>_block-block</KEYWORD2>\r
+ <KEYWORD2>_block-chaintype</KEYWORD2>\r
+ <KEYWORD2>_block-dbkey</KEYWORD2>\r
+ <KEYWORD2>_block-id</KEYWORD2>\r
+ <KEYWORD2>_block-misc</KEYWORD2>\r
+ <KEYWORD2>_block-nextdbkey</KEYWORD2>\r
+ <KEYWORD2>_block-type</KEYWORD2>\r
+ <KEYWORD2>_block-update</KEYWORD2>\r
+ <KEYWORD2>_buffer-apwenq</KEYWORD2>\r
+ <KEYWORD2>_buffer-chkpts</KEYWORD2>\r
+ <KEYWORD2>_buffer-deferred</KEYWORD2>\r
+ <KEYWORD2>_buffer-flushed</KEYWORD2>\r
+ <KEYWORD2>_buffer-id</KEYWORD2>\r
+ <KEYWORD2>_buffer-logicrds</KEYWORD2>\r
+ <KEYWORD2>_buffer-logicwrts</KEYWORD2>\r
+ <KEYWORD2>_buffer-lruskips</KEYWORD2>\r
+ <KEYWORD2>_buffer-lruwrts</KEYWORD2>\r
+ <KEYWORD2>_buffer-marked</KEYWORD2>\r
+ <KEYWORD2>_buffer-misc</KEYWORD2>\r
+ <KEYWORD2>_buffer-osrds</KEYWORD2>\r
+ <KEYWORD2>_buffer-oswrts</KEYWORD2>\r
+ <KEYWORD2>_buffer-trans</KEYWORD2>\r
+ <KEYWORD2>_buffer-uptime</KEYWORD2>\r
+ <KEYWORD2>_buffstatus</KEYWORD2>\r
+ <KEYWORD2>_cache</KEYWORD2>\r
+ <KEYWORD2>_can-create</KEYWORD2>\r
+ <KEYWORD2>_can-delete</KEYWORD2>\r
+ <KEYWORD2>_can-dump</KEYWORD2>\r
+ <KEYWORD2>_can-load</KEYWORD2>\r
+ <KEYWORD2>_can-read</KEYWORD2>\r
+ <KEYWORD2>_can-write</KEYWORD2>\r
+ <KEYWORD2>_casesensitive</KEYWORD2>\r
+ <KEYWORD2>_charset</KEYWORD2>\r
+ <KEYWORD2>_checkpoint</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-apwq</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-cptq</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-dirty</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-flush</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-id</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-len</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-misc</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-scan</KEYWORD2>\r
+ <KEYWORD2>_checkpoint-time</KEYWORD2>\r
+ <KEYWORD2>_chkclause</KEYWORD2>\r
+ <KEYWORD2>_chkseq</KEYWORD2>\r
+ <KEYWORD2>_cnstrname</KEYWORD2>\r
+ <KEYWORD2>_cnstrtype</KEYWORD2>\r
+ <KEYWORD2>_code-feature</KEYWORD2>\r
+ <KEYWORD2>_codefeature-id</KEYWORD2>\r
+ <KEYWORD2>_codefeature-res01</KEYWORD2>\r
+ <KEYWORD2>_codefeature-res02</KEYWORD2>\r
+ <KEYWORD2>_codefeature_name</KEYWORD2>\r
+ <KEYWORD2>_codefeature_required</KEYWORD2>\r
+ <KEYWORD2>_codefeature_supported</KEYWORD2>\r
+ <KEYWORD2>_codepage</KEYWORD2>\r
+ <KEYWORD2>_col</KEYWORD2>\r
+ <KEYWORD2>_col-label</KEYWORD2>\r
+ <KEYWORD2>_col-label-sa</KEYWORD2>\r
+ <KEYWORD2>_col-name</KEYWORD2>\r
+ <KEYWORD2>_colid</KEYWORD2>\r
+ <KEYWORD2>_coll-cp</KEYWORD2>\r
+ <KEYWORD2>_coll-data</KEYWORD2>\r
+ <KEYWORD2>_coll-name</KEYWORD2>\r
+ <KEYWORD2>_coll-segment</KEYWORD2>\r
+ <KEYWORD2>_coll-sequence</KEYWORD2>\r
+ <KEYWORD2>_coll-strength</KEYWORD2>\r
+ <KEYWORD2>_coll-tran-subtype</KEYWORD2>\r
+ <KEYWORD2>_coll-tran-version</KEYWORD2>\r
+ <KEYWORD2>_collation</KEYWORD2>\r
+ <KEYWORD2>_colname</KEYWORD2>\r
+ <KEYWORD2>_colposition</KEYWORD2>\r
+ <KEYWORD2>_connect</KEYWORD2>\r
+ <KEYWORD2>_connect-2phase</KEYWORD2>\r
+ <KEYWORD2>_connect-batch</KEYWORD2>\r
+ <KEYWORD2>_connect-device</KEYWORD2>\r
+ <KEYWORD2>_connect-disconnect</KEYWORD2>\r
+ <KEYWORD2>_connect-id</KEYWORD2>\r
+ <KEYWORD2>_connect-interrupt</KEYWORD2>\r
+ <KEYWORD2>_connect-misc</KEYWORD2>\r
+ <KEYWORD2>_connect-name</KEYWORD2>\r
+ <KEYWORD2>_connect-pid</KEYWORD2>\r
+ <KEYWORD2>_connect-resync</KEYWORD2>\r
+ <KEYWORD2>_connect-semid</KEYWORD2>\r
+ <KEYWORD2>_connect-semnum</KEYWORD2>\r
+ <KEYWORD2>_connect-server</KEYWORD2>\r
+ <KEYWORD2>_connect-time</KEYWORD2>\r
+ <KEYWORD2>_connect-transid</KEYWORD2>\r
+ <KEYWORD2>_connect-type</KEYWORD2>\r
+ <KEYWORD2>_connect-usr</KEYWORD2>\r
+ <KEYWORD2>_connect-wait</KEYWORD2>\r
+ <KEYWORD2>_connect-wait1</KEYWORD2>\r
+ <KEYWORD2>_cp-attr</KEYWORD2>\r
+ <KEYWORD2>_cp-dbrecid</KEYWORD2>\r
+ <KEYWORD2>_cp-name</KEYWORD2>\r
+ <KEYWORD2>_cp-sequence</KEYWORD2>\r
+ <KEYWORD2>_crc</KEYWORD2>\r
+ <KEYWORD2>_create-limit</KEYWORD2>\r
+ <KEYWORD2>_createparams</KEYWORD2>\r
+ <KEYWORD2>_create_date</KEYWORD2>\r
+ <KEYWORD2>_creator</KEYWORD2>\r
+ <KEYWORD2>_cycle-ok</KEYWORD2>\r
+ <KEYWORD2>_data-type</KEYWORD2>\r
+ <KEYWORD2>_database-feature</KEYWORD2>\r
+ <KEYWORD2>_datatype</KEYWORD2>\r
+ <KEYWORD2>_db</KEYWORD2>\r
+ <KEYWORD2>_db-addr</KEYWORD2>\r
+ <KEYWORD2>_db-coll-name</KEYWORD2>\r
+ <KEYWORD2>_db-collate</KEYWORD2>\r
+ <KEYWORD2>_db-comm</KEYWORD2>\r
+ <KEYWORD2>_db-lang</KEYWORD2>\r
+ <KEYWORD2>_db-local</KEYWORD2>\r
+ <KEYWORD2>_db-misc1</KEYWORD2>\r
+ <KEYWORD2>_db-misc2</KEYWORD2>\r
+ <KEYWORD2>_db-name</KEYWORD2>\r
+ <KEYWORD2>_db-recid</KEYWORD2>\r
+ <KEYWORD2>_db-res1</KEYWORD2>\r
+ <KEYWORD2>_db-res2</KEYWORD2>\r
+ <KEYWORD2>_db-revision</KEYWORD2>\r
+ <KEYWORD2>_db-slave</KEYWORD2>\r
+ <KEYWORD2>_db-type</KEYWORD2>\r
+ <KEYWORD2>_db-xl-name</KEYWORD2>\r
+ <KEYWORD2>_db-xlate</KEYWORD2>\r
+ <KEYWORD2>_dbaacc</KEYWORD2>\r
+ <KEYWORD2>_dbfeature-id</KEYWORD2>\r
+ <KEYWORD2>_dbfeature-res01</KEYWORD2>\r
+ <KEYWORD2>_dbfeature-res02</KEYWORD2>\r
+ <KEYWORD2>_dbfeature_active</KEYWORD2>\r
+ <KEYWORD2>_dbfeature_enabled</KEYWORD2>\r
+ <KEYWORD2>_dbfeature_name</KEYWORD2>\r
+ <KEYWORD2>_dblink</KEYWORD2>\r
+ <KEYWORD2>_dbstatus</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-aiblksize</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-biblksize</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-biclsize</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-biopen</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-bisize</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-bitrunc</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-cachestamp</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-changed</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-clversminor</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-codepage</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-collation</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-createdate</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-dbblksize</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-dbvers</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-dbversminor</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-emptyblks</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-fbdate</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-freeblks</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-hiwater</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-ibdate</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-ibseq</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-id</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-integrity</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-intflags</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-lastopen</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-lasttable</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-lasttran</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-misc</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-mostlocks</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-numareas</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-numlocks</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-numsems</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-prevopen</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-rmfreeblks</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-sharedmemver</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-shmvers</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-starttime</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-state</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-tainted</KEYWORD2>\r
+ <KEYWORD2>_dbstatus-totalblks</KEYWORD2>\r
+ <KEYWORD2>_decimals</KEYWORD2>\r
+ <KEYWORD2>_del</KEYWORD2>\r
+ <KEYWORD2>_deleterule</KEYWORD2>\r
+ <KEYWORD2>_desc</KEYWORD2>\r
+ <KEYWORD2>_description</KEYWORD2>\r
+ <KEYWORD2>_dfltvalue</KEYWORD2>\r
+ <KEYWORD2>_dft-pk</KEYWORD2>\r
+ <KEYWORD2>_dhtypename</KEYWORD2>\r
+ <KEYWORD2>_disabled</KEYWORD2>\r
+ <KEYWORD2>_dtype</KEYWORD2>\r
+ <KEYWORD2>_dump-name</KEYWORD2>\r
+ <KEYWORD2>_email</KEYWORD2>\r
+ <KEYWORD2>_event</KEYWORD2>\r
+ <KEYWORD2>_exe</KEYWORD2>\r
+ <KEYWORD2>_extent</KEYWORD2>\r
+ <KEYWORD2>_extent-attrib</KEYWORD2>\r
+ <KEYWORD2>_extent-misc</KEYWORD2>\r
+ <KEYWORD2>_extent-number</KEYWORD2>\r
+ <KEYWORD2>_extent-path</KEYWORD2>\r
+ <KEYWORD2>_extent-size</KEYWORD2>\r
+ <KEYWORD2>_extent-system</KEYWORD2>\r
+ <KEYWORD2>_extent-type</KEYWORD2>\r
+ <KEYWORD2>_extent-version</KEYWORD2>\r
+ <KEYWORD2>_fetch-type</KEYWORD2>\r
+ <KEYWORD2>_field</KEYWORD2>\r
+ <KEYWORD2>_field-map</KEYWORD2>\r
+ <KEYWORD2>_field-name</KEYWORD2>\r
+ <KEYWORD2>_field-physpos</KEYWORD2>\r
+ <KEYWORD2>_field-recid</KEYWORD2>\r
+ <KEYWORD2>_field-rpos</KEYWORD2>\r
+ <KEYWORD2>_field-trig</KEYWORD2>\r
+ <KEYWORD2>_fil-misc1</KEYWORD2>\r
+ <KEYWORD2>_fil-misc2</KEYWORD2>\r
+ <KEYWORD2>_fil-res1</KEYWORD2>\r
+ <KEYWORD2>_fil-res2</KEYWORD2>\r
+ <KEYWORD2>_file</KEYWORD2>\r
+ <KEYWORD2>_file-label</KEYWORD2>\r
+ <KEYWORD2>_file-label-sa</KEYWORD2>\r
+ <KEYWORD2>_file-name</KEYWORD2>\r
+ <KEYWORD2>_file-number</KEYWORD2>\r
+ <KEYWORD2>_file-recid</KEYWORD2>\r
+ <KEYWORD2>_file-trig</KEYWORD2>\r
+ <KEYWORD2>_filelist</KEYWORD2>\r
+ <KEYWORD2>_filelist-blksize</KEYWORD2>\r
+ <KEYWORD2>_filelist-extend</KEYWORD2>\r
+ <KEYWORD2>_filelist-id</KEYWORD2>\r
+ <KEYWORD2>_filelist-logicalsz</KEYWORD2>\r
+ <KEYWORD2>_filelist-misc</KEYWORD2>\r
+ <KEYWORD2>_filelist-name</KEYWORD2>\r
+ <KEYWORD2>_filelist-openmode</KEYWORD2>\r
+ <KEYWORD2>_filelist-size</KEYWORD2>\r
+ <KEYWORD2>_fire_4gl</KEYWORD2>\r
+ <KEYWORD2>_fld</KEYWORD2>\r
+ <KEYWORD2>_fld-case</KEYWORD2>\r
+ <KEYWORD2>_fld-misc1</KEYWORD2>\r
+ <KEYWORD2>_fld-misc2</KEYWORD2>\r
+ <KEYWORD2>_fld-res1</KEYWORD2>\r
+ <KEYWORD2>_fld-res2</KEYWORD2>\r
+ <KEYWORD2>_fld-stdtype</KEYWORD2>\r
+ <KEYWORD2>_fld-stlen</KEYWORD2>\r
+ <KEYWORD2>_fld-stoff</KEYWORD2>\r
+ <KEYWORD2>_for-allocated</KEYWORD2>\r
+ <KEYWORD2>_for-cnt1</KEYWORD2>\r
+ <KEYWORD2>_for-cnt2</KEYWORD2>\r
+ <KEYWORD2>_for-flag</KEYWORD2>\r
+ <KEYWORD2>_for-format</KEYWORD2>\r
+ <KEYWORD2>_for-id</KEYWORD2>\r
+ <KEYWORD2>_for-info</KEYWORD2>\r
+ <KEYWORD2>_for-itype</KEYWORD2>\r
+ <KEYWORD2>_for-maxsize</KEYWORD2>\r
+ <KEYWORD2>_for-name</KEYWORD2>\r
+ <KEYWORD2>_for-number</KEYWORD2>\r
+ <KEYWORD2>_for-owner</KEYWORD2>\r
+ <KEYWORD2>_for-primary</KEYWORD2>\r
+ <KEYWORD2>_for-retrieve</KEYWORD2>\r
+ <KEYWORD2>_for-scale</KEYWORD2>\r
+ <KEYWORD2>_for-separator</KEYWORD2>\r
+ <KEYWORD2>_for-size</KEYWORD2>\r
+ <KEYWORD2>_for-spacing</KEYWORD2>\r
+ <KEYWORD2>_for-type</KEYWORD2>\r
+ <KEYWORD2>_for-xpos</KEYWORD2>\r
+ <KEYWORD2>_format</KEYWORD2>\r
+ <KEYWORD2>_format-sa</KEYWORD2>\r
+ <KEYWORD2>_frozen</KEYWORD2>\r
+ <KEYWORD2>_given_name</KEYWORD2>\r
+ <KEYWORD2>_grantee</KEYWORD2>\r
+ <KEYWORD2>_grantor</KEYWORD2>\r
+ <KEYWORD2>_group-by</KEYWORD2>\r
+ <KEYWORD2>_group_number</KEYWORD2>\r
+ <KEYWORD2>_has-ccnstrs</KEYWORD2>\r
+ <KEYWORD2>_has-fcnstrs</KEYWORD2>\r
+ <KEYWORD2>_has-pcnstrs</KEYWORD2>\r
+ <KEYWORD2>_has-ucnstrs</KEYWORD2>\r
+ <KEYWORD2>_hasresultset</KEYWORD2>\r
+ <KEYWORD2>_hasreturnval</KEYWORD2>\r
+ <KEYWORD2>_help</KEYWORD2>\r
+ <KEYWORD2>_help-sa</KEYWORD2>\r
+ <KEYWORD2>_hidden</KEYWORD2>\r
+ <KEYWORD2>_host</KEYWORD2>\r
+ <KEYWORD2>_i-misc1</KEYWORD2>\r
+ <KEYWORD2>_i-misc2</KEYWORD2>\r
+ <KEYWORD2>_i-res1</KEYWORD2>\r
+ <KEYWORD2>_i-res2</KEYWORD2>\r
+ <KEYWORD2>_ianum</KEYWORD2>\r
+ <KEYWORD2>_id</KEYWORD2>\r
+ <KEYWORD2>_idx-crc</KEYWORD2>\r
+ <KEYWORD2>_idx-num</KEYWORD2>\r
+ <KEYWORD2>_idxid</KEYWORD2>\r
+ <KEYWORD2>_idxmethod</KEYWORD2>\r
+ <KEYWORD2>_idxname</KEYWORD2>\r
+ <KEYWORD2>_idxowner</KEYWORD2>\r
+ <KEYWORD2>_if-misc1</KEYWORD2>\r
+ <KEYWORD2>_if-misc2</KEYWORD2>\r
+ <KEYWORD2>_if-res1</KEYWORD2>\r
+ <KEYWORD2>_if-res2</KEYWORD2>\r
+ <KEYWORD2>_index</KEYWORD2>\r
+ <KEYWORD2>_index-create</KEYWORD2>\r
+ <KEYWORD2>_index-delete</KEYWORD2>\r
+ <KEYWORD2>_index-field</KEYWORD2>\r
+ <KEYWORD2>_index-find</KEYWORD2>\r
+ <KEYWORD2>_index-free</KEYWORD2>\r
+ <KEYWORD2>_index-id</KEYWORD2>\r
+ <KEYWORD2>_index-misc</KEYWORD2>\r
+ <KEYWORD2>_index-name</KEYWORD2>\r
+ <KEYWORD2>_index-recid</KEYWORD2>\r
+ <KEYWORD2>_index-remove</KEYWORD2>\r
+ <KEYWORD2>_index-seq</KEYWORD2>\r
+ <KEYWORD2>_index-splits</KEYWORD2>\r
+ <KEYWORD2>_index-trans</KEYWORD2>\r
+ <KEYWORD2>_index-uptime</KEYWORD2>\r
+ <KEYWORD2>_indexbase</KEYWORD2>\r
+ <KEYWORD2>_indexstat</KEYWORD2>\r
+ <KEYWORD2>_indexstat-blockdelete</KEYWORD2>\r
+ <KEYWORD2>_indexstat-create</KEYWORD2>\r
+ <KEYWORD2>_indexstat-delete</KEYWORD2>\r
+ <KEYWORD2>_indexstat-id</KEYWORD2>\r
+ <KEYWORD2>_indexstat-read</KEYWORD2>\r
+ <KEYWORD2>_indexstat-split</KEYWORD2>\r
+ <KEYWORD2>_initial</KEYWORD2>\r
+ <KEYWORD2>_initial-sa</KEYWORD2>\r
+ <KEYWORD2>_ins</KEYWORD2>\r
+ <KEYWORD2>_iofile-bufreads</KEYWORD2>\r
+ <KEYWORD2>_iofile-bufwrites</KEYWORD2>\r
+ <KEYWORD2>_iofile-extends</KEYWORD2>\r
+ <KEYWORD2>_iofile-filename</KEYWORD2>\r
+ <KEYWORD2>_iofile-id</KEYWORD2>\r
+ <KEYWORD2>_iofile-misc</KEYWORD2>\r
+ <KEYWORD2>_iofile-reads</KEYWORD2>\r
+ <KEYWORD2>_iofile-trans</KEYWORD2>\r
+ <KEYWORD2>_iofile-ubufreads</KEYWORD2>\r
+ <KEYWORD2>_iofile-ubufwrites</KEYWORD2>\r
+ <KEYWORD2>_iofile-uptime</KEYWORD2>\r
+ <KEYWORD2>_iofile-writes</KEYWORD2>\r
+ <KEYWORD2>_iotype-airds</KEYWORD2>\r
+ <KEYWORD2>_iotype-aiwrts</KEYWORD2>\r
+ <KEYWORD2>_iotype-birds</KEYWORD2>\r
+ <KEYWORD2>_iotype-biwrts</KEYWORD2>\r
+ <KEYWORD2>_iotype-datareads</KEYWORD2>\r
+ <KEYWORD2>_iotype-datawrts</KEYWORD2>\r
+ <KEYWORD2>_iotype-id</KEYWORD2>\r
+ <KEYWORD2>_iotype-idxrds</KEYWORD2>\r
+ <KEYWORD2>_iotype-idxwrts</KEYWORD2>\r
+ <KEYWORD2>_iotype-misc</KEYWORD2>\r
+ <KEYWORD2>_iotype-trans</KEYWORD2>\r
+ <KEYWORD2>_iotype-uptime</KEYWORD2>\r
+ <KEYWORD2>_ispublic</KEYWORD2>\r
+ <KEYWORD2>_keyvalue-expr</KEYWORD2>\r
+ <KEYWORD2>_label</KEYWORD2>\r
+ <KEYWORD2>_label-sa</KEYWORD2>\r
+ <KEYWORD2>_lang</KEYWORD2>\r
+ <KEYWORD2>_last-change</KEYWORD2>\r
+ <KEYWORD2>_last-modified</KEYWORD2>\r
+ <KEYWORD2>_last_login</KEYWORD2>\r
+ <KEYWORD2>_latch</KEYWORD2>\r
+ <KEYWORD2>_latch-busy</KEYWORD2>\r
+ <KEYWORD2>_latch-hold</KEYWORD2>\r
+ <KEYWORD2>_latch-id</KEYWORD2>\r
+ <KEYWORD2>_latch-lock</KEYWORD2>\r
+ <KEYWORD2>_latch-lockedt</KEYWORD2>\r
+ <KEYWORD2>_latch-lockt</KEYWORD2>\r
+ <KEYWORD2>_latch-name</KEYWORD2>\r
+ <KEYWORD2>_latch-qhold</KEYWORD2>\r
+ <KEYWORD2>_latch-spin</KEYWORD2>\r
+ <KEYWORD2>_latch-type</KEYWORD2>\r
+ <KEYWORD2>_latch-wait</KEYWORD2>\r
+ <KEYWORD2>_latch-waitt</KEYWORD2>\r
+ <KEYWORD2>_lic-activeconns</KEYWORD2>\r
+ <KEYWORD2>_lic-batchconns</KEYWORD2>\r
+ <KEYWORD2>_lic-currconns</KEYWORD2>\r
+ <KEYWORD2>_lic-id</KEYWORD2>\r
+ <KEYWORD2>_lic-maxactive</KEYWORD2>\r
+ <KEYWORD2>_lic-maxbatch</KEYWORD2>\r
+ <KEYWORD2>_lic-maxcurrent</KEYWORD2>\r
+ <KEYWORD2>_lic-minactive</KEYWORD2>\r
+ <KEYWORD2>_lic-minbatch</KEYWORD2>\r
+ <KEYWORD2>_lic-mincurrent</KEYWORD2>\r
+ <KEYWORD2>_lic-validusers</KEYWORD2>\r
+ <KEYWORD2>_license</KEYWORD2>\r
+ <KEYWORD2>_linkowner</KEYWORD2>\r
+ <KEYWORD2>_literalprefix</KEYWORD2>\r
+ <KEYWORD2>_literalsuffix</KEYWORD2>\r
+ <KEYWORD2>_localtypename</KEYWORD2>\r
+ <KEYWORD2>_lock</KEYWORD2>\r
+ <KEYWORD2>_lock-canclreq</KEYWORD2>\r
+ <KEYWORD2>_lock-chain</KEYWORD2>\r
+ <KEYWORD2>_lock-downgrade</KEYWORD2>\r
+ <KEYWORD2>_lock-exclfind</KEYWORD2>\r
+ <KEYWORD2>_lock-excllock</KEYWORD2>\r
+ <KEYWORD2>_lock-exclreq</KEYWORD2>\r
+ <KEYWORD2>_lock-exclwait</KEYWORD2>\r
+ <KEYWORD2>_lock-flags</KEYWORD2>\r
+ <KEYWORD2>_lock-id</KEYWORD2>\r
+ <KEYWORD2>_lock-misc</KEYWORD2>\r
+ <KEYWORD2>_lock-name</KEYWORD2>\r
+ <KEYWORD2>_lock-recgetlock</KEYWORD2>\r
+ <KEYWORD2>_lock-recgetreq</KEYWORD2>\r
+ <KEYWORD2>_lock-recgetwait</KEYWORD2>\r
+ <KEYWORD2>_lock-recid</KEYWORD2>\r
+ <KEYWORD2>_lock-redreq</KEYWORD2>\r
+ <KEYWORD2>_lock-shrfind</KEYWORD2>\r
+ <KEYWORD2>_lock-shrlock</KEYWORD2>\r
+ <KEYWORD2>_lock-shrreq</KEYWORD2>\r
+ <KEYWORD2>_lock-shrwait</KEYWORD2>\r
+ <KEYWORD2>_lock-table</KEYWORD2>\r
+ <KEYWORD2>_lock-trans</KEYWORD2>\r
+ <KEYWORD2>_lock-type</KEYWORD2>\r
+ <KEYWORD2>_lock-upglock</KEYWORD2>\r
+ <KEYWORD2>_lock-upgreq</KEYWORD2>\r
+ <KEYWORD2>_lock-upgwait</KEYWORD2>\r
+ <KEYWORD2>_lock-uptime</KEYWORD2>\r
+ <KEYWORD2>_lock-usr</KEYWORD2>\r
+ <KEYWORD2>_lockreq</KEYWORD2>\r
+ <KEYWORD2>_lockreq-exclfind</KEYWORD2>\r
+ <KEYWORD2>_lockreq-id</KEYWORD2>\r
+ <KEYWORD2>_lockreq-misc</KEYWORD2>\r
+ <KEYWORD2>_lockreq-name</KEYWORD2>\r
+ <KEYWORD2>_lockreq-num</KEYWORD2>\r
+ <KEYWORD2>_lockreq-reclock</KEYWORD2>\r
+ <KEYWORD2>_lockreq-recwait</KEYWORD2>\r
+ <KEYWORD2>_lockreq-schlock</KEYWORD2>\r
+ <KEYWORD2>_lockreq-schwait</KEYWORD2>\r
+ <KEYWORD2>_lockreq-shrfind</KEYWORD2>\r
+ <KEYWORD2>_lockreq-trnlock</KEYWORD2>\r
+ <KEYWORD2>_lockreq-trnwait</KEYWORD2>\r
+ <KEYWORD2>_logging</KEYWORD2>\r
+ <KEYWORD2>_logging-2pc</KEYWORD2>\r
+ <KEYWORD2>_logging-2pcnickname</KEYWORD2>\r
+ <KEYWORD2>_logging-2pcpriority</KEYWORD2>\r
+ <KEYWORD2>_logging-aibegin</KEYWORD2>\r
+ <KEYWORD2>_logging-aiblksize</KEYWORD2>\r
+ <KEYWORD2>_logging-aibuffs</KEYWORD2>\r
+ <KEYWORD2>_logging-aicurrext</KEYWORD2>\r
+ <KEYWORD2>_logging-aiextents</KEYWORD2>\r
+ <KEYWORD2>_logging-aigennum</KEYWORD2>\r
+ <KEYWORD2>_logging-aiio</KEYWORD2>\r
+ <KEYWORD2>_logging-aijournal</KEYWORD2>\r
+ <KEYWORD2>_logging-ailogsize</KEYWORD2>\r
+ <KEYWORD2>_logging-ainew</KEYWORD2>\r
+ <KEYWORD2>_logging-aiopen</KEYWORD2>\r
+ <KEYWORD2>_logging-biblksize</KEYWORD2>\r
+ <KEYWORD2>_logging-bibuffs</KEYWORD2>\r
+ <KEYWORD2>_logging-bibytesfree</KEYWORD2>\r
+ <KEYWORD2>_logging-biclage</KEYWORD2>\r
+ <KEYWORD2>_logging-biclsize</KEYWORD2>\r
+ <KEYWORD2>_logging-biextents</KEYWORD2>\r
+ <KEYWORD2>_logging-bifullbuffs</KEYWORD2>\r
+ <KEYWORD2>_logging-biio</KEYWORD2>\r
+ <KEYWORD2>_logging-bilogsize</KEYWORD2>\r
+ <KEYWORD2>_logging-commitdelay</KEYWORD2>\r
+ <KEYWORD2>_logging-crashprot</KEYWORD2>\r
+ <KEYWORD2>_logging-id</KEYWORD2>\r
+ <KEYWORD2>_logging-lastckp</KEYWORD2>\r
+ <KEYWORD2>_logging-misc</KEYWORD2>\r
+ <KEYWORD2>_logins</KEYWORD2>\r
+ <KEYWORD2>_login_failures</KEYWORD2>\r
+ <KEYWORD2>_mandatory</KEYWORD2>\r
+ <KEYWORD2>_max_logins</KEYWORD2>\r
+ <KEYWORD2>_max_tries</KEYWORD2>\r
+ <KEYWORD2>_middle_initial</KEYWORD2>\r
+ <KEYWORD2>_mod-sequence</KEYWORD2>\r
+ <KEYWORD2>_mode</KEYWORD2>\r
+ <KEYWORD2>_mstrblk</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-aiblksize</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-biblksize</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-biopen</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-biprev</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-bistate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-cfilnum</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-crdate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-dbstate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-dbvers</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-fbdate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-hiwater</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-ibdate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-ibseq</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-id</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-integrity</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-lasttask</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-misc</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-oppdate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-oprdate</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-rlclsize</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-rltime</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-tainted</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-timestamp</KEYWORD2>\r
+ <KEYWORD2>_mstrblk-totblks</KEYWORD2>\r
+ <KEYWORD2>_myconn-id</KEYWORD2>\r
+ <KEYWORD2>_myconn-numseqbuffers</KEYWORD2>\r
+ <KEYWORD2>_myconn-pid</KEYWORD2>\r
+ <KEYWORD2>_myconn-usedseqbuffers</KEYWORD2>\r
+ <KEYWORD2>_myconn-userid</KEYWORD2>\r
+ <KEYWORD2>_myconnection</KEYWORD2>\r
+ <KEYWORD2>_name_loc</KEYWORD2>\r
+ <KEYWORD2>_ndx</KEYWORD2>\r
+ <KEYWORD2>_nullable</KEYWORD2>\r
+ <KEYWORD2>_nullflag</KEYWORD2>\r
+ <KEYWORD2>_num-comp</KEYWORD2>\r
+ <KEYWORD2>_numfld</KEYWORD2>\r
+ <KEYWORD2>_numkcomp</KEYWORD2>\r
+ <KEYWORD2>_numkey</KEYWORD2>\r
+ <KEYWORD2>_numkfld</KEYWORD2>\r
+ <KEYWORD2>_object-associate</KEYWORD2>\r
+ <KEYWORD2>_object-associate-type</KEYWORD2>\r
+ <KEYWORD2>_object-attrib</KEYWORD2>\r
+ <KEYWORD2>_object-block</KEYWORD2>\r
+ <KEYWORD2>_object-misc</KEYWORD2>\r
+ <KEYWORD2>_object-number</KEYWORD2>\r
+ <KEYWORD2>_object-root</KEYWORD2>\r
+ <KEYWORD2>_object-system</KEYWORD2>\r
+ <KEYWORD2>_object-type</KEYWORD2>\r
+ <KEYWORD2>_odbcmoney</KEYWORD2>\r
+ <KEYWORD2>_order</KEYWORD2>\r
+ <KEYWORD2>_other-commit</KEYWORD2>\r
+ <KEYWORD2>_other-flushmblk</KEYWORD2>\r
+ <KEYWORD2>_other-id</KEYWORD2>\r
+ <KEYWORD2>_other-misc</KEYWORD2>\r
+ <KEYWORD2>_other-trans</KEYWORD2>\r
+ <KEYWORD2>_other-undo</KEYWORD2>\r
+ <KEYWORD2>_other-uptime</KEYWORD2>\r
+ <KEYWORD2>_other-wait</KEYWORD2>\r
+ <KEYWORD2>_override</KEYWORD2>\r
+ <KEYWORD2>_owner</KEYWORD2>\r
+ <KEYWORD2>_password</KEYWORD2>\r
+ <KEYWORD2>_prime-index</KEYWORD2>\r
+ <KEYWORD2>_proc-name</KEYWORD2>\r
+ <KEYWORD2>_procbin</KEYWORD2>\r
+ <KEYWORD2>_procid</KEYWORD2>\r
+ <KEYWORD2>_procname</KEYWORD2>\r
+ <KEYWORD2>_proctext</KEYWORD2>\r
+ <KEYWORD2>_proctype</KEYWORD2>\r
+ <KEYWORD2>_property</KEYWORD2>\r
+ <KEYWORD2>_pw-apwqwrites</KEYWORD2>\r
+ <KEYWORD2>_pw-buffsscaned</KEYWORD2>\r
+ <KEYWORD2>_pw-bufsckp</KEYWORD2>\r
+ <KEYWORD2>_pw-checkpoints</KEYWORD2>\r
+ <KEYWORD2>_pw-ckpqwrites</KEYWORD2>\r
+ <KEYWORD2>_pw-dbwrites</KEYWORD2>\r
+ <KEYWORD2>_pw-flushed</KEYWORD2>\r
+ <KEYWORD2>_pw-id</KEYWORD2>\r
+ <KEYWORD2>_pw-marked</KEYWORD2>\r
+ <KEYWORD2>_pw-misc</KEYWORD2>\r
+ <KEYWORD2>_pw-scancycles</KEYWORD2>\r
+ <KEYWORD2>_pw-scanwrites</KEYWORD2>\r
+ <KEYWORD2>_pw-totdbwrites</KEYWORD2>\r
+ <KEYWORD2>_pw-trans</KEYWORD2>\r
+ <KEYWORD2>_pw-uptime</KEYWORD2>\r
+ <KEYWORD2>_pwd</KEYWORD2>\r
+ <KEYWORD2>_pwd_duration</KEYWORD2>\r
+ <KEYWORD2>_pwd_expires</KEYWORD2>\r
+ <KEYWORD2>_record-bytescreat</KEYWORD2>\r
+ <KEYWORD2>_record-bytesdel</KEYWORD2>\r
+ <KEYWORD2>_record-bytesread</KEYWORD2>\r
+ <KEYWORD2>_record-bytesupd</KEYWORD2>\r
+ <KEYWORD2>_record-fragcreat</KEYWORD2>\r
+ <KEYWORD2>_record-fragdel</KEYWORD2>\r
+ <KEYWORD2>_record-fragread</KEYWORD2>\r
+ <KEYWORD2>_record-fragupd</KEYWORD2>\r
+ <KEYWORD2>_record-id</KEYWORD2>\r
+ <KEYWORD2>_record-misc</KEYWORD2>\r
+ <KEYWORD2>_record-reccreat</KEYWORD2>\r
+ <KEYWORD2>_record-recdel</KEYWORD2>\r
+ <KEYWORD2>_record-recread</KEYWORD2>\r
+ <KEYWORD2>_record-recupd</KEYWORD2>\r
+ <KEYWORD2>_record-trans</KEYWORD2>\r
+ <KEYWORD2>_record-uptime</KEYWORD2>\r
+ <KEYWORD2>_ref</KEYWORD2>\r
+ <KEYWORD2>_ref-table</KEYWORD2>\r
+ <KEYWORD2>_refcnstrname</KEYWORD2>\r
+ <KEYWORD2>_referstonew</KEYWORD2>\r
+ <KEYWORD2>_referstoold</KEYWORD2>\r
+ <KEYWORD2>_refowner</KEYWORD2>\r
+ <KEYWORD2>_reftblname</KEYWORD2>\r
+ <KEYWORD2>_remowner</KEYWORD2>\r
+ <KEYWORD2>_remtbl</KEYWORD2>\r
+ <KEYWORD2>_repl-agent</KEYWORD2>\r
+ <KEYWORD2>_repl-agentcontrol</KEYWORD2>\r
+ <KEYWORD2>_repl-server</KEYWORD2>\r
+ <KEYWORD2>_replagt-agentid</KEYWORD2>\r
+ <KEYWORD2>_replagt-agentname</KEYWORD2>\r
+ <KEYWORD2>_replagt-blocksack</KEYWORD2>\r
+ <KEYWORD2>_replagt-blocksprocessed</KEYWORD2>\r
+ <KEYWORD2>_replagt-blocksreceived</KEYWORD2>\r
+ <KEYWORD2>_replagt-commstatus</KEYWORD2>\r
+ <KEYWORD2>_replagt-connecttime</KEYWORD2>\r
+ <KEYWORD2>_replagt-dbname</KEYWORD2>\r
+ <KEYWORD2>_replagt-lasttrid</KEYWORD2>\r
+ <KEYWORD2>_replagt-method</KEYWORD2>\r
+ <KEYWORD2>_replagt-notesprocessed</KEYWORD2>\r
+ <KEYWORD2>_replagt-port</KEYWORD2>\r
+ <KEYWORD2>_replagt-reservedchar</KEYWORD2>\r
+ <KEYWORD2>_replagt-reservedint</KEYWORD2>\r
+ <KEYWORD2>_replagt-serverhost</KEYWORD2>\r
+ <KEYWORD2>_replagt-status</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-agentid</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-agentname</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-blocksack</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-blockssent</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-commstatus</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-connecttime</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-lastblocksentat</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-method</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-port</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-remotedbname</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-remotehost</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-reservedchar</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-reservedint</KEYWORD2>\r
+ <KEYWORD2>_replagtctl-status</KEYWORD2>\r
+ <KEYWORD2>_replsrv-agentcount</KEYWORD2>\r
+ <KEYWORD2>_replsrv-blockssent</KEYWORD2>\r
+ <KEYWORD2>_replsrv-id</KEYWORD2>\r
+ <KEYWORD2>_replsrv-lastblocksentat</KEYWORD2>\r
+ <KEYWORD2>_replsrv-reservedchar</KEYWORD2>\r
+ <KEYWORD2>_replsrv-reservedint</KEYWORD2>\r
+ <KEYWORD2>_replsrv-starttime</KEYWORD2>\r
+ <KEYWORD2>_resacc</KEYWORD2>\r
+ <KEYWORD2>_resrc</KEYWORD2>\r
+ <KEYWORD2>_resrc-id</KEYWORD2>\r
+ <KEYWORD2>_resrc-lock</KEYWORD2>\r
+ <KEYWORD2>_resrc-name</KEYWORD2>\r
+ <KEYWORD2>_resrc-time</KEYWORD2>\r
+ <KEYWORD2>_resrc-wait</KEYWORD2>\r
+ <KEYWORD2>_rolename</KEYWORD2>\r
+ <KEYWORD2>_rssid</KEYWORD2>\r
+ <KEYWORD2>_scale</KEYWORD2>\r
+ <KEYWORD2>_schemaname</KEYWORD2>\r
+ <KEYWORD2>_screator</KEYWORD2>\r
+ <KEYWORD2>_searchable</KEYWORD2>\r
+ <KEYWORD2>_segment-bytefree</KEYWORD2>\r
+ <KEYWORD2>_segment-bytesused</KEYWORD2>\r
+ <KEYWORD2>_segment-id</KEYWORD2>\r
+ <KEYWORD2>_segment-misc</KEYWORD2>\r
+ <KEYWORD2>_segment-segid</KEYWORD2>\r
+ <KEYWORD2>_segment-segsize</KEYWORD2>\r
+ <KEYWORD2>_segments</KEYWORD2>\r
+ <KEYWORD2>_sel</KEYWORD2>\r
+ <KEYWORD2>_seq</KEYWORD2>\r
+ <KEYWORD2>_seq-incr</KEYWORD2>\r
+ <KEYWORD2>_seq-init</KEYWORD2>\r
+ <KEYWORD2>_seq-max</KEYWORD2>\r
+ <KEYWORD2>_seq-min</KEYWORD2>\r
+ <KEYWORD2>_seq-misc</KEYWORD2>\r
+ <KEYWORD2>_seq-name</KEYWORD2>\r
+ <KEYWORD2>_seq-num</KEYWORD2>\r
+ <KEYWORD2>_seq-owner</KEYWORD2>\r
+ <KEYWORD2>_sequence</KEYWORD2>\r
+ <KEYWORD2>_server-byterec</KEYWORD2>\r
+ <KEYWORD2>_server-bytesent</KEYWORD2>\r
+ <KEYWORD2>_server-currusers</KEYWORD2>\r
+ <KEYWORD2>_server-id</KEYWORD2>\r
+ <KEYWORD2>_server-logins</KEYWORD2>\r
+ <KEYWORD2>_server-maxusers</KEYWORD2>\r
+ <KEYWORD2>_server-misc</KEYWORD2>\r
+ <KEYWORD2>_server-msgrec</KEYWORD2>\r
+ <KEYWORD2>_server-msgsent</KEYWORD2>\r
+ <KEYWORD2>_server-num</KEYWORD2>\r
+ <KEYWORD2>_server-pendconn</KEYWORD2>\r
+ <KEYWORD2>_server-pid</KEYWORD2>\r
+ <KEYWORD2>_server-portnum</KEYWORD2>\r
+ <KEYWORD2>_server-protocol</KEYWORD2>\r
+ <KEYWORD2>_server-qryrec</KEYWORD2>\r
+ <KEYWORD2>_server-recrec</KEYWORD2>\r
+ <KEYWORD2>_server-recsent</KEYWORD2>\r
+ <KEYWORD2>_server-timeslice</KEYWORD2>\r
+ <KEYWORD2>_server-trans</KEYWORD2>\r
+ <KEYWORD2>_server-type</KEYWORD2>\r
+ <KEYWORD2>_server-uptime</KEYWORD2>\r
+ <KEYWORD2>_servers</KEYWORD2>\r
+ <KEYWORD2>_sname</KEYWORD2>\r
+ <KEYWORD2>_sowner</KEYWORD2>\r
+ <KEYWORD2>_space-allocnewrm</KEYWORD2>\r
+ <KEYWORD2>_space-backadd</KEYWORD2>\r
+ <KEYWORD2>_space-bytesalloc</KEYWORD2>\r
+ <KEYWORD2>_space-dbexd</KEYWORD2>\r
+ <KEYWORD2>_space-examined</KEYWORD2>\r
+ <KEYWORD2>_space-fromfree</KEYWORD2>\r
+ <KEYWORD2>_space-fromrm</KEYWORD2>\r
+ <KEYWORD2>_space-front2back</KEYWORD2>\r
+ <KEYWORD2>_space-frontadd</KEYWORD2>\r
+ <KEYWORD2>_space-id</KEYWORD2>\r
+ <KEYWORD2>_space-locked</KEYWORD2>\r
+ <KEYWORD2>_space-misc</KEYWORD2>\r
+ <KEYWORD2>_space-removed</KEYWORD2>\r
+ <KEYWORD2>_space-retfree</KEYWORD2>\r
+ <KEYWORD2>_space-takefree</KEYWORD2>\r
+ <KEYWORD2>_space-trans</KEYWORD2>\r
+ <KEYWORD2>_space-uptime</KEYWORD2>\r
+ <KEYWORD2>_spare1</KEYWORD2>\r
+ <KEYWORD2>_spare2</KEYWORD2>\r
+ <KEYWORD2>_spare3</KEYWORD2>\r
+ <KEYWORD2>_spare4</KEYWORD2>\r
+ <KEYWORD2>_sql_properties</KEYWORD2>\r
+ <KEYWORD2>_sremdb</KEYWORD2>\r
+ <KEYWORD2>_startup</KEYWORD2>\r
+ <KEYWORD2>_startup-aibuffs</KEYWORD2>\r
+ <KEYWORD2>_startup-ainame</KEYWORD2>\r
+ <KEYWORD2>_startup-apwbuffs</KEYWORD2>\r
+ <KEYWORD2>_startup-apwmaxwrites</KEYWORD2>\r
+ <KEYWORD2>_startup-apwqtime</KEYWORD2>\r
+ <KEYWORD2>_startup-apwstime</KEYWORD2>\r
+ <KEYWORD2>_startup-bibuffs</KEYWORD2>\r
+ <KEYWORD2>_startup-bidelay</KEYWORD2>\r
+ <KEYWORD2>_startup-biio</KEYWORD2>\r
+ <KEYWORD2>_startup-biname</KEYWORD2>\r
+ <KEYWORD2>_startup-bitrunc</KEYWORD2>\r
+ <KEYWORD2>_startup-buffs</KEYWORD2>\r
+ <KEYWORD2>_startup-crashprot</KEYWORD2>\r
+ <KEYWORD2>_startup-directio</KEYWORD2>\r
+ <KEYWORD2>_startup-id</KEYWORD2>\r
+ <KEYWORD2>_startup-locktable</KEYWORD2>\r
+ <KEYWORD2>_startup-maxclients</KEYWORD2>\r
+ <KEYWORD2>_startup-maxservers</KEYWORD2>\r
+ <KEYWORD2>_startup-maxusers</KEYWORD2>\r
+ <KEYWORD2>_startup-misc</KEYWORD2>\r
+ <KEYWORD2>_startup-spin</KEYWORD2>\r
+ <KEYWORD2>_statbase</KEYWORD2>\r
+ <KEYWORD2>_statbase-id</KEYWORD2>\r
+ <KEYWORD2>_statementorrow</KEYWORD2>\r
+ <KEYWORD2>_stbl</KEYWORD2>\r
+ <KEYWORD2>_stblowner</KEYWORD2>\r
+ <KEYWORD2>_storageobject</KEYWORD2>\r
+ <KEYWORD2>_summary-aiwrites</KEYWORD2>\r
+ <KEYWORD2>_summary-bireads</KEYWORD2>\r
+ <KEYWORD2>_summary-biwrites</KEYWORD2>\r
+ <KEYWORD2>_summary-chkpts</KEYWORD2>\r
+ <KEYWORD2>_summary-commits</KEYWORD2>\r
+ <KEYWORD2>_summary-dbaccesses</KEYWORD2>\r
+ <KEYWORD2>_summary-dbreads</KEYWORD2>\r
+ <KEYWORD2>_summary-dbwrites</KEYWORD2>\r
+ <KEYWORD2>_summary-flushed</KEYWORD2>\r
+ <KEYWORD2>_summary-id</KEYWORD2>\r
+ <KEYWORD2>_summary-misc</KEYWORD2>\r
+ <KEYWORD2>_summary-reccreat</KEYWORD2>\r
+ <KEYWORD2>_summary-recdel</KEYWORD2>\r
+ <KEYWORD2>_summary-reclock</KEYWORD2>\r
+ <KEYWORD2>_summary-recreads</KEYWORD2>\r
+ <KEYWORD2>_summary-recupd</KEYWORD2>\r
+ <KEYWORD2>_summary-recwait</KEYWORD2>\r
+ <KEYWORD2>_summary-transcomm</KEYWORD2>\r
+ <KEYWORD2>_summary-undos</KEYWORD2>\r
+ <KEYWORD2>_summary-uptime</KEYWORD2>\r
+ <KEYWORD2>_surname</KEYWORD2>\r
+ <KEYWORD2>_sys-field</KEYWORD2>\r
+ <KEYWORD2>_sysattachtbls</KEYWORD2>\r
+ <KEYWORD2>_sysbigintstat</KEYWORD2>\r
+ <KEYWORD2>_syscalctable</KEYWORD2>\r
+ <KEYWORD2>_syscharstat</KEYWORD2>\r
+ <KEYWORD2>_syschkcolusage</KEYWORD2>\r
+ <KEYWORD2>_syschkconstrs</KEYWORD2>\r
+ <KEYWORD2>_syschkconstr_name_map</KEYWORD2>\r
+ <KEYWORD2>_syscolauth</KEYWORD2>\r
+ <KEYWORD2>_syscolstat</KEYWORD2>\r
+ <KEYWORD2>_sysdatatypes</KEYWORD2>\r
+ <KEYWORD2>_sysdatestat</KEYWORD2>\r
+ <KEYWORD2>_sysdbauth</KEYWORD2>\r
+ <KEYWORD2>_sysdblinks</KEYWORD2>\r
+ <KEYWORD2>_sysfloatstat</KEYWORD2>\r
+ <KEYWORD2>_sysidxstat</KEYWORD2>\r
+ <KEYWORD2>_sysintstat</KEYWORD2>\r
+ <KEYWORD2>_syskeycolusage</KEYWORD2>\r
+ <KEYWORD2>_sysncharstat</KEYWORD2>\r
+ <KEYWORD2>_sysnumstat</KEYWORD2>\r
+ <KEYWORD2>_sysnvarcharstat</KEYWORD2>\r
+ <KEYWORD2>_sysprocbin</KEYWORD2>\r
+ <KEYWORD2>_sysproccolumns</KEYWORD2>\r
+ <KEYWORD2>_sysprocedures</KEYWORD2>\r
+ <KEYWORD2>_sysproctext</KEYWORD2>\r
+ <KEYWORD2>_sysrealstat</KEYWORD2>\r
+ <KEYWORD2>_sysrefconstrs</KEYWORD2>\r
+ <KEYWORD2>_sysroles</KEYWORD2>\r
+ <KEYWORD2>_sysschemas</KEYWORD2>\r
+ <KEYWORD2>_sysseqauth</KEYWORD2>\r
+ <KEYWORD2>_syssmintstat</KEYWORD2>\r
+ <KEYWORD2>_syssynonyms</KEYWORD2>\r
+ <KEYWORD2>_systabauth</KEYWORD2>\r
+ <KEYWORD2>_systblconstrs</KEYWORD2>\r
+ <KEYWORD2>_systblstat</KEYWORD2>\r
+ <KEYWORD2>_systimestat</KEYWORD2>\r
+ <KEYWORD2>_systinyintstat</KEYWORD2>\r
+ <KEYWORD2>_systrigcols</KEYWORD2>\r
+ <KEYWORD2>_systrigger</KEYWORD2>\r
+ <KEYWORD2>_systsstat</KEYWORD2>\r
+ <KEYWORD2>_syststzstat</KEYWORD2>\r
+ <KEYWORD2>_sysvarcharstat</KEYWORD2>\r
+ <KEYWORD2>_sysviews</KEYWORD2>\r
+ <KEYWORD2>_sysviews_name_map</KEYWORD2>\r
+ <KEYWORD2>_tablebase</KEYWORD2>\r
+ <KEYWORD2>_tablestat</KEYWORD2>\r
+ <KEYWORD2>_tablestat-create</KEYWORD2>\r
+ <KEYWORD2>_tablestat-delete</KEYWORD2>\r
+ <KEYWORD2>_tablestat-id</KEYWORD2>\r
+ <KEYWORD2>_tablestat-read</KEYWORD2>\r
+ <KEYWORD2>_tablestat-update</KEYWORD2>\r
+ <KEYWORD2>_tbl</KEYWORD2>\r
+ <KEYWORD2>_tbl-status</KEYWORD2>\r
+ <KEYWORD2>_tbl-type</KEYWORD2>\r
+ <KEYWORD2>_tblid</KEYWORD2>\r
+ <KEYWORD2>_tblname</KEYWORD2>\r
+ <KEYWORD2>_tblowner</KEYWORD2>\r
+ <KEYWORD2>_telephone</KEYWORD2>\r
+ <KEYWORD2>_template</KEYWORD2>\r
+ <KEYWORD2>_toss-limit</KEYWORD2>\r
+ <KEYWORD2>_trans</KEYWORD2>\r
+ <KEYWORD2>_trans-coord</KEYWORD2>\r
+ <KEYWORD2>_trans-coordtx</KEYWORD2>\r
+ <KEYWORD2>_trans-counter</KEYWORD2>\r
+ <KEYWORD2>_trans-duration</KEYWORD2>\r
+ <KEYWORD2>_trans-flags</KEYWORD2>\r
+ <KEYWORD2>_trans-id</KEYWORD2>\r
+ <KEYWORD2>_trans-misc</KEYWORD2>\r
+ <KEYWORD2>_trans-num</KEYWORD2>\r
+ <KEYWORD2>_trans-state</KEYWORD2>\r
+ <KEYWORD2>_trans-txtime</KEYWORD2>\r
+ <KEYWORD2>_trans-usrnum</KEYWORD2>\r
+ <KEYWORD2>_trig-crc</KEYWORD2>\r
+ <KEYWORD2>_triggerevent</KEYWORD2>\r
+ <KEYWORD2>_triggerid</KEYWORD2>\r
+ <KEYWORD2>_triggername</KEYWORD2>\r
+ <KEYWORD2>_triggertime</KEYWORD2>\r
+ <KEYWORD2>_txe-id</KEYWORD2>\r
+ <KEYWORD2>_txe-locks</KEYWORD2>\r
+ <KEYWORD2>_txe-lockss</KEYWORD2>\r
+ <KEYWORD2>_txe-time</KEYWORD2>\r
+ <KEYWORD2>_txe-type</KEYWORD2>\r
+ <KEYWORD2>_txe-wait-time</KEYWORD2>\r
+ <KEYWORD2>_txe-waits</KEYWORD2>\r
+ <KEYWORD2>_txe-waitss</KEYWORD2>\r
+ <KEYWORD2>_txelock</KEYWORD2>\r
+ <KEYWORD2>_typeprecision</KEYWORD2>\r
+ <KEYWORD2>_u-misc1</KEYWORD2>\r
+ <KEYWORD2>_u-misc2</KEYWORD2>\r
+ <KEYWORD2>_unique</KEYWORD2>\r
+ <KEYWORD2>_unsignedattr</KEYWORD2>\r
+ <KEYWORD2>_unsorted</KEYWORD2>\r
+ <KEYWORD2>_upd</KEYWORD2>\r
+ <KEYWORD2>_updatable</KEYWORD2>\r
+ <KEYWORD2>_user</KEYWORD2>\r
+ <KEYWORD2>_user-misc</KEYWORD2>\r
+ <KEYWORD2>_user-name</KEYWORD2>\r
+ <KEYWORD2>_userid</KEYWORD2>\r
+ <KEYWORD2>_userio</KEYWORD2>\r
+ <KEYWORD2>_userio-airead</KEYWORD2>\r
+ <KEYWORD2>_userio-aiwrite</KEYWORD2>\r
+ <KEYWORD2>_userio-biread</KEYWORD2>\r
+ <KEYWORD2>_userio-biwrite</KEYWORD2>\r
+ <KEYWORD2>_userio-dbaccess</KEYWORD2>\r
+ <KEYWORD2>_userio-dbread</KEYWORD2>\r
+ <KEYWORD2>_userio-dbwrite</KEYWORD2>\r
+ <KEYWORD2>_userio-id</KEYWORD2>\r
+ <KEYWORD2>_userio-misc</KEYWORD2>\r
+ <KEYWORD2>_userio-name</KEYWORD2>\r
+ <KEYWORD2>_userio-usr</KEYWORD2>\r
+ <KEYWORD2>_userlock</KEYWORD2>\r
+ <KEYWORD2>_userlock-chain</KEYWORD2>\r
+ <KEYWORD2>_userlock-flags</KEYWORD2>\r
+ <KEYWORD2>_userlock-id</KEYWORD2>\r
+ <KEYWORD2>_userlock-misc</KEYWORD2>\r
+ <KEYWORD2>_userlock-name</KEYWORD2>\r
+ <KEYWORD2>_userlock-recid</KEYWORD2>\r
+ <KEYWORD2>_userlock-type</KEYWORD2>\r
+ <KEYWORD2>_userlock-usr</KEYWORD2>\r
+ <KEYWORD2>_username</KEYWORD2>\r
+ <KEYWORD2>_userstatus</KEYWORD2>\r
+ <KEYWORD2>_userstatus-counter</KEYWORD2>\r
+ <KEYWORD2>_userstatus-objectid</KEYWORD2>\r
+ <KEYWORD2>_userstatus-objecttype</KEYWORD2>\r
+ <KEYWORD2>_userstatus-operation</KEYWORD2>\r
+ <KEYWORD2>_userstatus-state</KEYWORD2>\r
+ <KEYWORD2>_userstatus-target</KEYWORD2>\r
+ <KEYWORD2>_userstatus-userid</KEYWORD2>\r
+ <KEYWORD2>_user_number</KEYWORD2>\r
+ <KEYWORD2>_valexp</KEYWORD2>\r
+ <KEYWORD2>_valmsg</KEYWORD2>\r
+ <KEYWORD2>_valmsg-sa</KEYWORD2>\r
+ <KEYWORD2>_value</KEYWORD2>\r
+ <KEYWORD2>_value_ch</KEYWORD2>\r
+ <KEYWORD2>_value_n</KEYWORD2>\r
+ <KEYWORD2>_val_ts</KEYWORD2>\r
+ <KEYWORD2>_vcol-order</KEYWORD2>\r
+ <KEYWORD2>_version</KEYWORD2>\r
+ <KEYWORD2>_view</KEYWORD2>\r
+ <KEYWORD2>_view-as</KEYWORD2>\r
+ <KEYWORD2>_view-col</KEYWORD2>\r
+ <KEYWORD2>_view-def</KEYWORD2>\r
+ <KEYWORD2>_view-name</KEYWORD2>\r
+ <KEYWORD2>_view-ref</KEYWORD2>\r
+ <KEYWORD2>_viewname</KEYWORD2>\r
+ <KEYWORD2>_viewtext</KEYWORD2>\r
+ <KEYWORD2>_where-cls</KEYWORD2>\r
+ <KEYWORD2>_width</KEYWORD2>\r
+ <KEYWORD2>_word-rule</KEYWORD2>\r
+ <KEYWORD2>_word-rules</KEYWORD2>\r
+ <KEYWORD2>_wordidx</KEYWORD2>\r
+ <KEYWORD2>_wr-attr</KEYWORD2>\r
+ <KEYWORD2>_wr-cp</KEYWORD2>\r
+ <KEYWORD2>_wr-name</KEYWORD2>\r
+ <KEYWORD2>_wr-number</KEYWORD2>\r
+ <KEYWORD2>_wr-segment</KEYWORD2>\r
+ <KEYWORD2>_wr-type</KEYWORD2>\r
+ <KEYWORD2>_wr-version</KEYWORD2>\r
+\r
+\r
+\r
+\r
+\r
+\r
+ <!-- INVALID : Deprecated keywords -->\r
+ <INVALID>USE-INDEX</INVALID>\r
+ <INVALID>UNIX</INVALID>\r
+ <INVALID>DOS</INVALID>\r
+ <INVALID>VMS</INVALID>\r
+ <INVALID>BTOS</INVALID>\r
+ <INVALID>CTOS</INVALID>\r
+ <INVALID>OS2</INVALID>\r
+ <INVALID>OS400</INVALID>\r
+ <INVALID>EDITING</INVALID>\r
+ <INVALID>CHOOSE</INVALID>\r
+ <INVALID>PROMPT-FOR</INVALID>\r
+ <INVALID>SHARE-LOCK</INVALID>\r
+ <INVALID>READKEY</INVALID>\r
+ <INVALID>GO-PENDING</INVALID>\r
+ <INVALID>VALIDATE</INVALID>\r
+ <INVALID>IS-ATTR-SPACE</INVALID>\r
+ <INVALID>GATEWAYS</INVALID>\r
+ <INVALID>SCROLL</INVALID>\r
+\r
+ <!-- Removed or renamed keywords -->\r
+ <INVALID>ITERATION-CHANGED</INVALID>\r
+ <INVALID>BEFORE-RECORD-FILL</INVALID>\r
+ <INVALID>AFTER-RECORD-FILL</INVALID>\r
+ <INVALID>REPOSITION-MODE</INVALID>\r
+\r
+\r
+\r
+ <!-- COMMENT2 : Preprocessor statements -->\r
+ <COMMENT2>&ADM-CONTAINER</COMMENT2>\r
+ <COMMENT2>&ADM-SUPPORTED-LINKS</COMMENT2>\r
+ <COMMENT2>&ANALYZE-RESUME</COMMENT2>\r
+ <COMMENT2>&ANALYZE-SUSPEND</COMMENT2>\r
+ <COMMENT2>&BATCH-MODE</COMMENT2>\r
+ <COMMENT2>&BROWSE-NAME</COMMENT2>\r
+ <COMMENT2>&DEFINED</COMMENT2>\r
+ <COMMENT2>&DISPLAYED-FIELDS</COMMENT2>\r
+ <COMMENT2>&DISPLAYED-OBJECTS</COMMENT2>\r
+ <COMMENT2>&ELSE</COMMENT2>\r
+ <COMMENT2>&ELSEIF</COMMENT2>\r
+ <COMMENT2>&ENABLED-FIELDS-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&ENABLED-FIELDS</COMMENT2>\r
+ <COMMENT2>&ENABLED-OBJECTS</COMMENT2>\r
+ <COMMENT2>&ENABLED-TABLES-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&ENABLED-TABLES</COMMENT2>\r
+ <COMMENT2>&ENDIF</COMMENT2>\r
+ <COMMENT2>&EXTERNAL-TABLES</COMMENT2>\r
+ <COMMENT2>&FIELD-PAIRS-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&FIELD-PAIRS</COMMENT2>\r
+ <COMMENT2>&FIELDS-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&FILE-NAME</COMMENT2>\r
+ <COMMENT2>&FIRST-EXTERNAL-TABLE</COMMENT2>\r
+ <COMMENT2>&FIRST-TABLE-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&FRAME-NAME</COMMENT2>\r
+ <COMMENT2>&GLOB</COMMENT2>\r
+ <COMMENT2>&GLOBAL-DEFINE</COMMENT2>\r
+ <COMMENT2>&IF</COMMENT2>\r
+ <COMMENT2>&INCLUDE</COMMENT2>\r
+ <COMMENT2>&INTERNAL-TABLES</COMMENT2>\r
+ <COMMENT2>&LAYOUT-VARIABLE</COMMENT2>\r
+ <COMMENT2>&LINE-NUMBER</COMMENT2>\r
+ <COMMENT2>&LIST-1</COMMENT2>\r
+ <COMMENT2>&LIST-2</COMMENT2>\r
+ <COMMENT2>&LIST-3</COMMENT2>\r
+ <COMMENT2>&LIST-4</COMMENT2>\r
+ <COMMENT2>&LIST-5</COMMENT2>\r
+ <COMMENT2>&LIST-6</COMMENT2>\r
+ <COMMENT2>&MESSAGE</COMMENT2>\r
+ <COMMENT2>&NEW</COMMENT2>\r
+ <COMMENT2>&OPEN-BROWSERS-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&OPEN-QUERY</COMMENT2>\r
+ <COMMENT2>&OPSYS</COMMENT2>\r
+ <COMMENT2>&PROCEDURE-TYPE</COMMENT2>\r
+ <COMMENT2>&QUERY-NAME</COMMENT2>\r
+ <COMMENT2>&SCOP</COMMENT2>\r
+ <COMMENT2>&SCOPED-DEFINE</COMMENT2>\r
+ <COMMENT2>&SELF-NAME</COMMENT2>\r
+ <COMMENT2>&SEQUENCE</COMMENT2>\r
+ <COMMENT2>&TABLES-IN-QUERY</COMMENT2>\r
+ <COMMENT2>&THEN</COMMENT2>\r
+ <COMMENT2>&UIB_is_Running</COMMENT2>\r
+ <COMMENT2>&UNDEFINE</COMMENT2>\r
+ <COMMENT2>&WINDOW-NAME</COMMENT2>\r
+ <COMMENT2>&WINDOW-SYSTEM</COMMENT2>\r
+ <COMMENT2>DEFINED</COMMENT2>\r
+ <COMMENT2>PROCEDURE-TYPE</COMMENT2>\r
+ <COMMENT2>_CREATE-WINDOW</COMMENT2>\r
+ <COMMENT2>_CUSTOM _DEFINITIONS</COMMENT2>\r
+ <COMMENT2>_CUSTOM _MAIN-BLOCK</COMMENT2>\r
+ <COMMENT2>_CUSTOM</COMMENT2>\r
+ <COMMENT2>_DEFINITIONS</COMMENT2>\r
+ <COMMENT2>_END-PROCEDURE-SETTINGS</COMMENT2>\r
+ <COMMENT2>_FUNCTION-FORWARD</COMMENT2>\r
+ <COMMENT2>_FUNCTION</COMMENT2>\r
+ <COMMENT2>_INCLUDED-LIB</COMMENT2>\r
+ <COMMENT2>_INLINE</COMMENT2>\r
+ <COMMENT2>_MAIN-BLOCK</COMMENT2>\r
+ <COMMENT2>_PROCEDURE-SETTINGS</COMMENT2>\r
+ <COMMENT2>_PROCEDURE</COMMENT2>\r
+ <COMMENT2>_UIB-CODE-BLOCK</COMMENT2>\r
+ <COMMENT2>_UIB-PREPROCESSOR-BLOCK</COMMENT2>\r
+ <COMMENT2>_VERSION-NUMBER</COMMENT2>\r
+ <COMMENT2>_XFTR</COMMENT2>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- jEdit Prolog syntax file\r
+ based on the INRIA ISO Prolog web page @ http://pauillac.inria.fr/~hodgson/prolog\r
+\r
+ written by Giulio Piancastelli\r
+ version 1.0\r
+ created on 31st December 2001\r
+ last revised 19th November 2002\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ \r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ <!--- ISO compliant C-style comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ \r
+ <!-- String literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ \r
+ <!-- List literals -->\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE" DELEGATE="LIST">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ \r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">--></SEQ>\r
+ <SEQ TYPE="OPERATOR">:-</SEQ>\r
+ <SEQ TYPE="OPERATOR">?-</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">\+</SEQ> <!-- ISO Prolog uses it instead of 'not' -->\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">\==</SEQ>\r
+ <SEQ TYPE="OPERATOR">\=</SEQ>\r
+ <SEQ TYPE="OPERATOR">@<</SEQ>\r
+ <SEQ TYPE="OPERATOR">@=<</SEQ>\r
+ <SEQ TYPE="OPERATOR">@>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">@></SEQ>\r
+ <SEQ TYPE="OPERATOR">=..</SEQ>\r
+ <SEQ TYPE="OPERATOR">=:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=\=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=<</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/\</SEQ>\r
+ <SEQ TYPE="OPERATOR">\/</SEQ>\r
+ <SEQ TYPE="OPERATOR">//</SEQ>\r
+ <SEQ TYPE="OPERATOR"><<</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ \r
+ <!-- The '.' at the end of each clause -->\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ \r
+ <!-- Parentheses -->\r
+ <SEQ TYPE="MARKUP">(</SEQ>\r
+ <SEQ TYPE="MARKUP">)</SEQ>\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ \r
+ <KEYWORDS>\r
+ \r
+ <!-- Keywords that are 0 arity built-in predicates -->\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>fail</KEYWORD1>\r
+ <KEYWORD1>!</KEYWORD1> <!-- cut -->\r
+ <KEYWORD1>at_end_of_stream</KEYWORD1>\r
+ <KEYWORD1>nl</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>halt</KEYWORD1>\r
+ \r
+ <!-- Keywords that are built-in predicates with arity greater than or equal to 1 -->\r
+ <FUNCTION>call</FUNCTION>\r
+ <FUNCTION>catch</FUNCTION>\r
+ <FUNCTION>throw</FUNCTION>\r
+ <FUNCTION>unify_with_occurs_check</FUNCTION>\r
+ <FUNCTION>var</FUNCTION>\r
+ <FUNCTION>atom</FUNCTION>\r
+ <FUNCTION>integer</FUNCTION>\r
+ <FUNCTION>float</FUNCTION>\r
+ <FUNCTION>atomic</FUNCTION>\r
+ <FUNCTION>compound</FUNCTION>\r
+ <FUNCTION>nonvar</FUNCTION>\r
+ <FUNCTION>number</FUNCTION>\r
+ <FUNCTION>functor</FUNCTION>\r
+ <FUNCTION>arg</FUNCTION>\r
+ <FUNCTION>copy_term</FUNCTION>\r
+ <FUNCTION>clause</FUNCTION>\r
+ <FUNCTION>current_predicate</FUNCTION>\r
+ <FUNCTION>asserta</FUNCTION>\r
+ <FUNCTION>assertz</FUNCTION>\r
+ <FUNCTION>retract</FUNCTION>\r
+ <FUNCTION>abolish</FUNCTION>\r
+ <FUNCTION>findall</FUNCTION>\r
+ <FUNCTION>bagof</FUNCTION>\r
+ <FUNCTION>setof</FUNCTION>\r
+ <FUNCTION>current_input</FUNCTION>\r
+ <FUNCTION>current_output</FUNCTION>\r
+ <FUNCTION>set_input</FUNCTION>\r
+ <FUNCTION>set_output</FUNCTION>\r
+ <FUNCTION>open</FUNCTION>\r
+ <FUNCTION>close</FUNCTION>\r
+ <FUNCTION>stream_property</FUNCTION>\r
+ <FUNCTION>at_end_of_stream</FUNCTION> <!-- arity 1 -->\r
+ <FUNCTION>set_stream_position</FUNCTION>\r
+ <FUNCTION>get_char</FUNCTION>\r
+ <FUNCTION>get_code</FUNCTION>\r
+ <FUNCTION>peek_char</FUNCTION>\r
+ <FUNCTION>peek_code</FUNCTION>\r
+ <FUNCTION>put_char</FUNCTION>\r
+ <FUNCTION>put_code</FUNCTION>\r
+ <FUNCTION>nl</FUNCTION> <!-- arity 1 -->\r
+ <FUNCTION>get_byte</FUNCTION>\r
+ <FUNCTION>peek_byte</FUNCTION>\r
+ <FUNCTION>put_byte</FUNCTION>\r
+ <FUNCTION>read_term</FUNCTION>\r
+ <FUNCTION>read</FUNCTION>\r
+ <FUNCTION>write_term</FUNCTION>\r
+ <FUNCTION>write</FUNCTION>\r
+ <FUNCTION>writeq</FUNCTION>\r
+ <FUNCTION>write_canonical</FUNCTION>\r
+ <FUNCTION>op</FUNCTION>\r
+ <FUNCTION>current_op</FUNCTION>\r
+ <FUNCTION>char_conversion</FUNCTION>\r
+ <FUNCTION>current_char_conversion</FUNCTION>\r
+ <FUNCTION>once</FUNCTION>\r
+ <FUNCTION>atom_length</FUNCTION>\r
+ <FUNCTION>atom_concat</FUNCTION>\r
+ <FUNCTION>sub_atom</FUNCTION>\r
+ <FUNCTION>atom_chars</FUNCTION>\r
+ <FUNCTION>atom_codes</FUNCTION>\r
+ <FUNCTION>char_code</FUNCTION>\r
+ <FUNCTION>number_chars</FUNCTION>\r
+ <FUNCTION>number_codes</FUNCTION>\r
+ <FUNCTION>set_prolog_flag</FUNCTION>\r
+ <FUNCTION>current_prolog_flag</FUNCTION>\r
+ <FUNCTION>halt</FUNCTION> <!-- arity 1 -->\r
+ \r
+ <!-- Mathematical functions -->\r
+ <FUNCTION>sin</FUNCTION>\r
+ <FUNCTION>cos</FUNCTION>\r
+ <FUNCTION>atan</FUNCTION>\r
+ <FUNCTION>exp</FUNCTION>\r
+ <FUNCTION>log</FUNCTION>\r
+ <FUNCTION>sqrt</FUNCTION>\r
+ \r
+ <!-- Keywords that should be operators -->\r
+ <KEYWORD2>is</KEYWORD2>\r
+ <KEYWORD2>rem</KEYWORD2>\r
+ <KEYWORD2>mod</KEYWORD2>\r
+ \r
+ <!-- Singleton variable -->\r
+ <KEYWORD3>_</KEYWORD3>\r
+ \r
+ </KEYWORDS>\r
+ \r
+ </RULES>\r
+\r
+ <RULES SET="LIST" DEFAULT="LITERAL2">\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE" DELEGATE="LIST">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES DEFAULT="KEYWORD1">\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">#</EOL_SPAN>\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="PROP_VALUE">=</EOL_SPAN>\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="PROP_VALUE">:</EOL_SPAN>\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="PROP_VALUE"> </EOL_SPAN>\r
+ <EOL_SPAN TYPE="NULL" DELEGATE="PROP_VALUE"> </EOL_SPAN>\r
+ </RULES>\r
+ <RULES SET="PROP_VALUE" HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="([\p{Digit}]+|#[\p{XDigit}]+)"\r
+ NO_WORD_SEP="#">\r
+ <!-- MessageFormat { ... } stuff -->\r
+ <SPAN TYPE="KEYWORD3" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <!-- Sillyness -->\r
+ <MARK_FOLLOWING TYPE="DIGIT">#</MARK_FOLLOWING>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*[^#]{3,}:\s*(#.*)?" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+\r
+ <SPAN TYPE="LITERAL4" DELEGATE="DIRECTIVE">\r
+ <BEGIN><%@</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- PSP comment -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><%--</BEGIN>\r
+ <END>--%></END>\r
+ </SPAN>\r
+\r
+ <!-- inline Python code -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="python::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- Client-side javascript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="jscript"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script language="javascript"></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">\r
+ <BEGIN><script></BEGIN>\r
+ <END></script></END>\r
+ </SPAN>\r
+\r
+ <!-- Server-Side include -->\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="css::MAIN">\r
+ <BEGIN><STYLE></BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ </RULES>\r
+\r
+ <!-- ESCAPE is not exactly right but it is needed to correctly\r
+ handle JavaScript in on* parameters -->\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <!-- PSP comment -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN><%--</BEGIN>\r
+ <END>--%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL3" DELEGATE="python::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="DIRECTIVE" DEFAULT="LITERAL4">\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD4>include</KEYWORD4>\r
+\r
+ <KEYWORD4>file</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="ptl" FILE="ptl.xml"\r
+ FILE_NAME_GLOB="*.ptl"/>\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*[^#]{3,}:\s*(#.*)?" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <IMPORT DELEGATE="python::MAIN"/>\r
+\r
+ <SEQ TYPE="KEYWORD4">[html]</SEQ>\r
+ <SEQ TYPE="KEYWORD4">[plain]</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <LITERAL4>_q_access</LITERAL4>\r
+ <LITERAL4>_q_exports</LITERAL4>\r
+ <LITERAL4>_q_index</LITERAL4>\r
+ <LITERAL4>_q_lookup</LITERAL4>\r
+ <LITERAL4>_q_resolve</LITERAL4>\r
+ <LITERAL4>_q_exception_handler</LITERAL4>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- PV-WAVE mode, by Ed Stewart\r
+ based on Java mode by Mike Dillon and IDLTokenMarker by Juha Lindfors -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="LABEL">$</SEQ>\r
+ <SEQ TYPE="LABEL">&</SEQ>\r
+ <SEQ TYPE="LABEL">@</SEQ>\r
+ <SEQ TYPE="LABEL">!</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!--KEYWORD1s are standard functions and procedures -->\r
+ <KEYWORD1>abs</KEYWORD1>\r
+ <KEYWORD1>acos</KEYWORD1>\r
+ <KEYWORD1>add_exec_on_select</KEYWORD1>\r
+ <KEYWORD1>addsysvar</KEYWORD1>\r
+ <KEYWORD1>addvar</KEYWORD1>\r
+ <KEYWORD1>affine</KEYWORD1>\r
+ <KEYWORD1>alog</KEYWORD1>\r
+ <KEYWORD1>alog10</KEYWORD1>\r
+ <KEYWORD1>asarr</KEYWORD1>\r
+ <KEYWORD1>asin</KEYWORD1>\r
+ <KEYWORD1>askeys</KEYWORD1>\r
+ <KEYWORD1>assoc</KEYWORD1>\r
+ <KEYWORD1>atan</KEYWORD1>\r
+ <KEYWORD1>avg</KEYWORD1>\r
+ <KEYWORD1>axis</KEYWORD1>\r
+ <KEYWORD1>bar</KEYWORD1>\r
+ <KEYWORD1>bar2d</KEYWORD1>\r
+ <KEYWORD1>bar3d</KEYWORD1>\r
+ <KEYWORD1>beseli</KEYWORD1>\r
+ <KEYWORD1>beselj</KEYWORD1>\r
+ <KEYWORD1>besely</KEYWORD1>\r
+ <KEYWORD1>bilinear</KEYWORD1>\r
+ <KEYWORD1>bindgen</KEYWORD1>\r
+ <KEYWORD1>blob</KEYWORD1>\r
+ <KEYWORD1>blobcount</KEYWORD1>\r
+ <KEYWORD1>boundary</KEYWORD1>\r
+ <KEYWORD1>build_table</KEYWORD1>\r
+ <KEYWORD1>buildresourcefilename</KEYWORD1>\r
+ <KEYWORD1>bytarr</KEYWORD1>\r
+ <KEYWORD1>byte</KEYWORD1>\r
+ <KEYWORD1>byteorder</KEYWORD1>\r
+ <KEYWORD1>bytscl</KEYWORD1>\r
+ <KEYWORD1>c_edit</KEYWORD1>\r
+ <KEYWORD1>call_unix</KEYWORD1>\r
+ <KEYWORD1>cd</KEYWORD1>\r
+ <KEYWORD1>center_view</KEYWORD1>\r
+ <KEYWORD1>chebyshev</KEYWORD1>\r
+ <KEYWORD1>check_math</KEYWORD1>\r
+ <KEYWORD1>checkfile</KEYWORD1>\r
+ <KEYWORD1>cindgen</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>color_convert</KEYWORD1>\r
+ <KEYWORD1>color_edit</KEYWORD1>\r
+ <KEYWORD1>color_palette</KEYWORD1>\r
+ <KEYWORD1>complex</KEYWORD1>\r
+ <KEYWORD1>complexarr</KEYWORD1>\r
+ <KEYWORD1>cone</KEYWORD1>\r
+ <KEYWORD1>congrid</KEYWORD1>\r
+ <KEYWORD1>conj</KEYWORD1>\r
+ <KEYWORD1>contour</KEYWORD1>\r
+ <KEYWORD1>contour2</KEYWORD1>\r
+ <KEYWORD1>contourfill</KEYWORD1>\r
+ <KEYWORD1>conv_from_rect</KEYWORD1>\r
+ <KEYWORD1>conv_to_rect</KEYWORD1>\r
+ <KEYWORD1>convert_coord</KEYWORD1>\r
+ <KEYWORD1>convol</KEYWORD1>\r
+ <KEYWORD1>correlate</KEYWORD1>\r
+ <KEYWORD1>cos</KEYWORD1>\r
+ <KEYWORD1>cosh</KEYWORD1>\r
+ <KEYWORD1>cosines</KEYWORD1>\r
+ <KEYWORD1>cprod</KEYWORD1>\r
+ <KEYWORD1>create_holidays</KEYWORD1>\r
+ <KEYWORD1>create_weekdends</KEYWORD1>\r
+ <KEYWORD1>crossp</KEYWORD1>\r
+ <KEYWORD1>cursor</KEYWORD1>\r
+ <KEYWORD1>curvatures</KEYWORD1>\r
+ <KEYWORD1>curvefit</KEYWORD1>\r
+ <KEYWORD1>cylinder</KEYWORD1>\r
+ <KEYWORD1>day_name</KEYWORD1>\r
+ <KEYWORD1>day_of_week</KEYWORD1>\r
+ <KEYWORD1>day_of_year</KEYWORD1>\r
+ <KEYWORD1>dblarr</KEYWORD1>\r
+ <KEYWORD1>dc_error_msg</KEYWORD1>\r
+ <KEYWORD1>dc_options</KEYWORD1>\r
+ <KEYWORD1>dc_read_24_bit</KEYWORD1>\r
+ <KEYWORD1>dc_read_8_bit</KEYWORD1>\r
+ <KEYWORD1>dc_read_container</KEYWORD1>\r
+ <KEYWORD1>dc_read_dib</KEYWORD1>\r
+ <KEYWORD1>dc_read_fixed</KEYWORD1>\r
+ <KEYWORD1>dc_read_free</KEYWORD1>\r
+ <KEYWORD1>dc_read_tiff</KEYWORD1>\r
+ <KEYWORD1>dc_scan_container</KEYWORD1>\r
+ <KEYWORD1>dc_write_24_bit</KEYWORD1>\r
+ <KEYWORD1>dc_write_8_bit</KEYWORD1>\r
+ <KEYWORD1>dc_write_dib</KEYWORD1>\r
+ <KEYWORD1>dc_write_fixed</KEYWORD1>\r
+ <KEYWORD1>dc_write_free</KEYWORD1>\r
+ <KEYWORD1>dc_write_tiff</KEYWORD1>\r
+ <KEYWORD1>dcindgen</KEYWORD1>\r
+ <KEYWORD1>dcomplex</KEYWORD1>\r
+ <KEYWORD1>dcomplexarr</KEYWORD1>\r
+ <KEYWORD1>declare func</KEYWORD1>\r
+ <KEYWORD1>declare function</KEYWORD1>\r
+ <KEYWORD1>define_key</KEYWORD1>\r
+ <KEYWORD1>defroi</KEYWORD1>\r
+ <KEYWORD1>defsysv</KEYWORD1>\r
+ <KEYWORD1>del_file</KEYWORD1>\r
+ <KEYWORD1>delfunc</KEYWORD1>\r
+ <KEYWORD1>dellog</KEYWORD1>\r
+ <KEYWORD1>delproc</KEYWORD1>\r
+ <KEYWORD1>delstruct</KEYWORD1>\r
+ <KEYWORD1>delvar</KEYWORD1>\r
+ <KEYWORD1>demo</KEYWORD1>\r
+ <KEYWORD1>deriv</KEYWORD1>\r
+ <KEYWORD1>derivn</KEYWORD1>\r
+ <KEYWORD1>determ</KEYWORD1>\r
+ <KEYWORD1>device</KEYWORD1>\r
+ <KEYWORD1>diag</KEYWORD1>\r
+ <KEYWORD1>dicm_tag_info</KEYWORD1>\r
+ <KEYWORD1>digital_filter</KEYWORD1>\r
+ <KEYWORD1>dilate</KEYWORD1>\r
+ <KEYWORD1>dindgen</KEYWORD1>\r
+ <KEYWORD1>dist</KEYWORD1>\r
+ <KEYWORD1>dminit</KEYWORD1>\r
+ <KEYWORD1>doc_lib_unix</KEYWORD1>\r
+ <KEYWORD1>doc_library</KEYWORD1>\r
+ <KEYWORD1>double</KEYWORD1>\r
+ <KEYWORD1>drop_exec_on_select</KEYWORD1>\r
+ <KEYWORD1>dt_add</KEYWORD1>\r
+ <KEYWORD1>dt_addly</KEYWORD1>\r
+ <KEYWORD1>dt_compress</KEYWORD1>\r
+ <KEYWORD1>dt_duration</KEYWORD1>\r
+ <KEYWORD1>dt_print</KEYWORD1>\r
+ <KEYWORD1>dt_subly</KEYWORD1>\r
+ <KEYWORD1>dt_subtract</KEYWORD1>\r
+ <KEYWORD1>dt_to_sec</KEYWORD1>\r
+ <KEYWORD1>dt_to_str</KEYWORD1>\r
+ <KEYWORD1>dt_to_var</KEYWORD1>\r
+ <KEYWORD1>dtegn</KEYWORD1>\r
+ <KEYWORD1>empty</KEYWORD1>\r
+ <KEYWORD1>environment</KEYWORD1>\r
+ <KEYWORD1>eof</KEYWORD1>\r
+ <KEYWORD1>erase</KEYWORD1>\r
+ <KEYWORD1>erode</KEYWORD1>\r
+ <KEYWORD1>errorf</KEYWORD1>\r
+ <KEYWORD1>errplot</KEYWORD1>\r
+ <KEYWORD1>euclidean</KEYWORD1>\r
+ <KEYWORD1>exec_on_select</KEYWORD1>\r
+ <KEYWORD1>execute</KEYWORD1>\r
+ <KEYWORD1>exp</KEYWORD1>\r
+ <KEYWORD1>expand</KEYWORD1>\r
+ <KEYWORD1>expon</KEYWORD1>\r
+ <KEYWORD1>extrema</KEYWORD1>\r
+ <KEYWORD1>factor</KEYWORD1>\r
+ <KEYWORD1>fast_grid2</KEYWORD1>\r
+ <KEYWORD1>fast_grid3</KEYWORD1>\r
+ <KEYWORD1>fast_grid4</KEYWORD1>\r
+ <KEYWORD1>fft</KEYWORD1>\r
+ <KEYWORD1>filepath</KEYWORD1>\r
+ <KEYWORD1>findfile</KEYWORD1>\r
+ <KEYWORD1>findgen</KEYWORD1>\r
+ <KEYWORD1>finite</KEYWORD1>\r
+ <KEYWORD1>fix</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>fltarr</KEYWORD1>\r
+ <KEYWORD1>flush</KEYWORD1>\r
+ <KEYWORD1>free_lun</KEYWORD1>\r
+ <KEYWORD1>fstat</KEYWORD1>\r
+ <KEYWORD1>funct</KEYWORD1>\r
+ <KEYWORD1>gamma</KEYWORD1>\r
+ <KEYWORD1>gaussfit</KEYWORD1>\r
+ <KEYWORD1>gaussint</KEYWORD1>\r
+ <KEYWORD1>gcd</KEYWORD1>\r
+ <KEYWORD1>get_kbrd</KEYWORD1>\r
+ <KEYWORD1>get_lun</KEYWORD1>\r
+ <KEYWORD1>getenv</KEYWORD1>\r
+ <KEYWORD1>get_named_color</KEYWORD1>\r
+ <KEYWORD1>getncerr</KEYWORD1>\r
+ <KEYWORD1>getncopts</KEYWORD1>\r
+ <KEYWORD1>getparam</KEYWORD1>\r
+ <KEYWORD1>great_int</KEYWORD1>\r
+ <KEYWORD1>grid</KEYWORD1>\r
+ <KEYWORD1>grid_2d</KEYWORD1>\r
+ <KEYWORD1>grid_3d</KEYWORD1>\r
+ <KEYWORD1>grid_4d</KEYWORD1>\r
+ <KEYWORD1>grid_sphere</KEYWORD1>\r
+ <KEYWORD1>gridn</KEYWORD1>\r
+ <KEYWORD1>group_by</KEYWORD1>\r
+ <KEYWORD1>hak</KEYWORD1>\r
+ <KEYWORD1>hanning</KEYWORD1>\r
+ <KEYWORD1>hdf_test</KEYWORD1>\r
+ <KEYWORD1>hdfgetsds</KEYWORD1>\r
+ <KEYWORD1>help</KEYWORD1>\r
+ <KEYWORD1>hilbert</KEYWORD1>\r
+ <KEYWORD1>hist_equal</KEYWORD1>\r
+ <KEYWORD1>hist_equal_ct</KEYWORD1>\r
+ <KEYWORD1>histn</KEYWORD1>\r
+ <KEYWORD1>histogram</KEYWORD1>\r
+ <KEYWORD1>hls</KEYWORD1>\r
+ <KEYWORD1>hsv</KEYWORD1>\r
+ <KEYWORD1>hsv_to_rgd</KEYWORD1>\r
+ <KEYWORD1>image_check</KEYWORD1>\r
+ <KEYWORD1>image_color_quant</KEYWORD1>\r
+ <KEYWORD1>image_cont</KEYWORD1>\r
+ <KEYWORD1>image_create</KEYWORD1>\r
+ <KEYWORD1>image_display</KEYWORD1>\r
+ <KEYWORD1>image_filetypes</KEYWORD1>\r
+ <KEYWORD1>image_query_file</KEYWORD1>\r
+ <KEYWORD1>image_read</KEYWORD1>\r
+ <KEYWORD1>image_write</KEYWORD1>\r
+ <KEYWORD1>imaginary</KEYWORD1>\r
+ <KEYWORD1>img_true8</KEYWORD1>\r
+ <KEYWORD1>index_and</KEYWORD1>\r
+ <KEYWORD1>index_conv</KEYWORD1>\r
+ <KEYWORD1>index_or</KEYWORD1>\r
+ <KEYWORD1>indgen</KEYWORD1>\r
+ <KEYWORD1>intarr</KEYWORD1>\r
+ <KEYWORD1>interpol</KEYWORD1>\r
+ <KEYWORD1>interpolate</KEYWORD1>\r
+ <KEYWORD1>intrp</KEYWORD1>\r
+ <KEYWORD1>invert</KEYWORD1>\r
+ <KEYWORD1>isaskey</KEYWORD1>\r
+ <KEYWORD1>ishft</KEYWORD1>\r
+ <KEYWORD1>jacobian</KEYWORD1>\r
+ <KEYWORD1>jul_to_dt</KEYWORD1>\r
+ <KEYWORD1>keyword_set</KEYWORD1>\r
+ <KEYWORD1>lcm</KEYWORD1>\r
+ <KEYWORD1>leefilt</KEYWORD1>\r
+ <KEYWORD1>legend</KEYWORD1>\r
+ <KEYWORD1>lindgen</KEYWORD1>\r
+ <KEYWORD1>linknload</KEYWORD1>\r
+ <KEYWORD1>list</KEYWORD1>\r
+ <KEYWORD1>listarr</KEYWORD1>\r
+ <KEYWORD1>load_holidays</KEYWORD1>\r
+ <KEYWORD1>load_option</KEYWORD1>\r
+ <KEYWORD1>load_weekends</KEYWORD1>\r
+ <KEYWORD1>loadct</KEYWORD1>\r
+ <KEYWORD1>loadct_custom</KEYWORD1>\r
+ <KEYWORD1>loadresources</KEYWORD1>\r
+ <KEYWORD1>loadstrings</KEYWORD1>\r
+ <KEYWORD1>lonarr</KEYWORD1>\r
+ <KEYWORD1>long</KEYWORD1>\r
+ <KEYWORD1>lubksb</KEYWORD1>\r
+ <KEYWORD1>ludcmp</KEYWORD1>\r
+ <KEYWORD1>make_array</KEYWORD1>\r
+ <KEYWORD1>map</KEYWORD1>\r
+ <KEYWORD1>map_axes</KEYWORD1>\r
+ <KEYWORD1>map_contour</KEYWORD1>\r
+ <KEYWORD1>map_grid</KEYWORD1>\r
+ <KEYWORD1>map_plots</KEYWORD1>\r
+ <KEYWORD1>map_polyfill</KEYWORD1>\r
+ <KEYWORD1>map_proj</KEYWORD1>\r
+ <KEYWORD1>map_reverse</KEYWORD1>\r
+ <KEYWORD1>map_velovect</KEYWORD1>\r
+ <KEYWORD1>map_version</KEYWORD1>\r
+ <KEYWORD1>map_xyouts</KEYWORD1>\r
+ <KEYWORD1>max</KEYWORD1>\r
+ <KEYWORD1>median</KEYWORD1>\r
+ <KEYWORD1>mesh</KEYWORD1>\r
+ <KEYWORD1>message</KEYWORD1>\r
+ <KEYWORD1>min</KEYWORD1>\r
+ <KEYWORD1>modifyct</KEYWORD1>\r
+ <KEYWORD1>molec</KEYWORD1>\r
+ <KEYWORD1>moment</KEYWORD1>\r
+ <KEYWORD1>month_name</KEYWORD1>\r
+ <KEYWORD1>movie</KEYWORD1>\r
+ <KEYWORD1>mprove</KEYWORD1>\r
+ <KEYWORD1>msword_cgm_setup</KEYWORD1>\r
+ <KEYWORD1>n_elements</KEYWORD1>\r
+ <KEYWORD1>n_params</KEYWORD1>\r
+ <KEYWORD1>n_tags</KEYWORD1>\r
+ <KEYWORD1>nint</KEYWORD1>\r
+ <KEYWORD1>normals</KEYWORD1>\r
+ <KEYWORD1>null_processor</KEYWORD1>\r
+ <KEYWORD1>openr</KEYWORD1>\r
+ <KEYWORD1>openu</KEYWORD1>\r
+ <KEYWORD1>openw</KEYWORD1>\r
+ <KEYWORD1>oplot</KEYWORD1>\r
+ <KEYWORD1>oploterr</KEYWORD1>\r
+ <KEYWORD1>option_is_loaded</KEYWORD1>\r
+ <KEYWORD1>order_by</KEYWORD1>\r
+ <KEYWORD1>padit</KEYWORD1>\r
+ <KEYWORD1>packimage</KEYWORD1>\r
+ <KEYWORD1>packtable</KEYWORD1>\r
+ <KEYWORD1>palette</KEYWORD1>\r
+ <KEYWORD1>param_present</KEYWORD1>\r
+ <KEYWORD1>parsefilename</KEYWORD1>\r
+ <KEYWORD1>pie</KEYWORD1>\r
+ <KEYWORD1>pie_chart</KEYWORD1>\r
+ <KEYWORD1>plot</KEYWORD1>\r
+ <KEYWORD1>plot_field</KEYWORD1>\r
+ <KEYWORD1>plot_histogram</KEYWORD1>\r
+ <KEYWORD1>plot_io</KEYWORD1>\r
+ <KEYWORD1>plot_oi</KEYWORD1>\r
+ <KEYWORD1>plot_oo</KEYWORD1>\r
+ <KEYWORD1>plot_windrose</KEYWORD1>\r
+ <KEYWORD1>ploterr</KEYWORD1>\r
+ <KEYWORD1>plots</KEYWORD1>\r
+ <KEYWORD1>pm</KEYWORD1>\r
+ <KEYWORD1>pmf</KEYWORD1>\r
+ <KEYWORD1>point_lun</KEYWORD1>\r
+ <KEYWORD1>poly</KEYWORD1>\r
+ <KEYWORD1>poly_2d</KEYWORD1>\r
+ <KEYWORD1>poly_area</KEYWORD1>\r
+ <KEYWORD1>poly_c_conv</KEYWORD1>\r
+ <KEYWORD1>poly_count</KEYWORD1>\r
+ <KEYWORD1>poly_dev</KEYWORD1>\r
+ <KEYWORD1>poly_fit</KEYWORD1>\r
+ <KEYWORD1>poly_merge</KEYWORD1>\r
+ <KEYWORD1>poly_norm</KEYWORD1>\r
+ <KEYWORD1>poly_plot</KEYWORD1>\r
+ <KEYWORD1>poly_sphere</KEYWORD1>\r
+ <KEYWORD1>poly_surf</KEYWORD1>\r
+ <KEYWORD1>poly_trans</KEYWORD1>\r
+ <KEYWORD1>polyfill</KEYWORD1>\r
+ <KEYWORD1>polyfillv</KEYWORD1>\r
+ <KEYWORD1>polyfitw</KEYWORD1>\r
+ <KEYWORD1>polyshade</KEYWORD1>\r
+ <KEYWORD1>polywarp</KEYWORD1>\r
+ <KEYWORD1>popd</KEYWORD1>\r
+ <KEYWORD1>prime</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>printd</KEYWORD1>\r
+ <KEYWORD1>printf</KEYWORD1>\r
+ <KEYWORD1>profile</KEYWORD1>\r
+ <KEYWORD1>profiles</KEYWORD1>\r
+ <KEYWORD1>prompt</KEYWORD1>\r
+ <KEYWORD1>pseudo</KEYWORD1>\r
+ <KEYWORD1>pushd</KEYWORD1>\r
+ <KEYWORD1>query_table</KEYWORD1>\r
+ <KEYWORD1>randomn</KEYWORD1>\r
+ <KEYWORD1>randomu</KEYWORD1>\r
+ <KEYWORD1>rdpix</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>read_airs</KEYWORD1>\r
+ <KEYWORD1>read_xbm</KEYWORD1>\r
+ <KEYWORD1>readf</KEYWORD1>\r
+ <KEYWORD1>readu</KEYWORD1>\r
+ <KEYWORD1>rebin</KEYWORD1>\r
+ <KEYWORD1>reform</KEYWORD1>\r
+ <KEYWORD1>regress</KEYWORD1>\r
+ <KEYWORD1>rename</KEYWORD1>\r
+ <KEYWORD1>render</KEYWORD1>\r
+ <KEYWORD1>render24</KEYWORD1>\r
+ <KEYWORD1>replicate</KEYWORD1>\r
+ <KEYWORD1>replv</KEYWORD1>\r
+ <KEYWORD1>resamp</KEYWORD1>\r
+ <KEYWORD1>reverse</KEYWORD1>\r
+ <KEYWORD1>rgb_to_hsv</KEYWORD1>\r
+ <KEYWORD1>rm</KEYWORD1>\r
+ <KEYWORD1>rmf</KEYWORD1>\r
+ <KEYWORD1>roberts</KEYWORD1>\r
+ <KEYWORD1>rot</KEYWORD1>\r
+ <KEYWORD1>rot_int</KEYWORD1>\r
+ <KEYWORD1>rotate</KEYWORD1>\r
+ <KEYWORD1>same</KEYWORD1>\r
+ <KEYWORD1>scale3d</KEYWORD1>\r
+ <KEYWORD1>sec_to_dt</KEYWORD1>\r
+ <KEYWORD1>select_read_lun</KEYWORD1>\r
+ <KEYWORD1>set_plot</KEYWORD1>\r
+ <KEYWORD1>set_screen</KEYWORD1>\r
+ <KEYWORD1>set_shading</KEYWORD1>\r
+ <KEYWORD1>set_symbol</KEYWORD1>\r
+ <KEYWORD1>set_view3d</KEYWORD1>\r
+ <KEYWORD1>set_viewport</KEYWORD1>\r
+ <KEYWORD1>set_xy</KEYWORD1>\r
+ <KEYWORD1>setdemo</KEYWORD1>\r
+ <KEYWORD1>setenv</KEYWORD1>\r
+ <KEYWORD1>setimagesize</KEYWORD1>\r
+ <KEYWORD1>setlog</KEYWORD1>\r
+ <KEYWORD1>setncopts</KEYWORD1>\r
+ <KEYWORD1>setup_keys</KEYWORD1>\r
+ <KEYWORD1>sgn</KEYWORD1>\r
+ <KEYWORD1>shade_surf</KEYWORD1>\r
+ <KEYWORD1>shade_surf_irr</KEYWORD1>\r
+ <KEYWORD1>shade_volume</KEYWORD1>\r
+ <KEYWORD1>shif</KEYWORD1>\r
+ <KEYWORD1>shift</KEYWORD1>\r
+ <KEYWORD1>show_options</KEYWORD1>\r
+ <KEYWORD1>show3</KEYWORD1>\r
+ <KEYWORD1>sigma</KEYWORD1>\r
+ <KEYWORD1>sin</KEYWORD1>\r
+ <KEYWORD1>sindgen</KEYWORD1>\r
+ <KEYWORD1>sinh</KEYWORD1>\r
+ <KEYWORD1>size</KEYWORD1>\r
+ <KEYWORD1>skipf</KEYWORD1>\r
+ <KEYWORD1>slice</KEYWORD1>\r
+ <KEYWORD1>slice_vol</KEYWORD1>\r
+ <KEYWORD1>small_int</KEYWORD1>\r
+ <KEYWORD1>smooth</KEYWORD1>\r
+ <KEYWORD1>sobel</KEYWORD1>\r
+ <KEYWORD1>socket_accept</KEYWORD1>\r
+ <KEYWORD1>socket_close</KEYWORD1>\r
+ <KEYWORD1>socket_connect</KEYWORD1>\r
+ <KEYWORD1>socket_getport</KEYWORD1>\r
+ <KEYWORD1>socket_init</KEYWORD1>\r
+ <KEYWORD1>socket_read</KEYWORD1>\r
+ <KEYWORD1>socket_write</KEYWORD1>\r
+ <KEYWORD1>sort</KEYWORD1>\r
+ <KEYWORD1>sortn</KEYWORD1>\r
+ <KEYWORD1>spawn</KEYWORD1>\r
+ <KEYWORD1>sphere</KEYWORD1>\r
+ <KEYWORD1>spline</KEYWORD1>\r
+ <KEYWORD1>sqrt</KEYWORD1>\r
+ <KEYWORD1>stdev</KEYWORD1>\r
+ <KEYWORD1>str_to_dt</KEYWORD1>\r
+ <KEYWORD1>strarr</KEYWORD1>\r
+ <KEYWORD1>strcompress</KEYWORD1>\r
+ <KEYWORD1>stretch</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>strjoin</KEYWORD1>\r
+ <KEYWORD1>strlen</KEYWORD1>\r
+ <KEYWORD1>strlookup</KEYWORD1>\r
+ <KEYWORD1>strlowcase</KEYWORD1>\r
+ <KEYWORD1>strmatch</KEYWORD1>\r
+ <KEYWORD1>strmessage</KEYWORD1>\r
+ <KEYWORD1>strmid</KEYWORD1>\r
+ <KEYWORD1>strpos</KEYWORD1>\r
+ <KEYWORD1>strput</KEYWORD1>\r
+ <KEYWORD1>strsplit</KEYWORD1>\r
+ <KEYWORD1>strsubst</KEYWORD1>\r
+ <KEYWORD1>strtrim</KEYWORD1>\r
+ <KEYWORD1>structref</KEYWORD1>\r
+ <KEYWORD1>strupcase</KEYWORD1>\r
+ <KEYWORD1>sum</KEYWORD1>\r
+ <KEYWORD1>surface</KEYWORD1>\r
+ <KEYWORD1>surface_fit</KEYWORD1>\r
+ <KEYWORD1>surfr</KEYWORD1>\r
+ <KEYWORD1>svbksb</KEYWORD1>\r
+ <KEYWORD1>svd</KEYWORD1>\r
+ <KEYWORD1>svdfit</KEYWORD1>\r
+ <KEYWORD1>systime</KEYWORD1>\r
+ <KEYWORD1>t3d</KEYWORD1>\r
+ <KEYWORD1>tag_names</KEYWORD1>\r
+ <KEYWORD1>tan</KEYWORD1>\r
+ <KEYWORD1>tanh</KEYWORD1>\r
+ <KEYWORD1>tek_color</KEYWORD1>\r
+ <KEYWORD1>tensor_add</KEYWORD1>\r
+ <KEYWORD1>tensor_div</KEYWORD1>\r
+ <KEYWORD1>tensor_eq</KEYWORD1>\r
+ <KEYWORD1>tensor_exp</KEYWORD1>\r
+ <KEYWORD1>tensor_ge</KEYWORD1>\r
+ <KEYWORD1>tensor_gt</KEYWORD1>\r
+ <KEYWORD1>tensor_le</KEYWORD1>\r
+ <KEYWORD1>tensor_lt</KEYWORD1>\r
+ <KEYWORD1>tensor_max</KEYWORD1>\r
+ <KEYWORD1>tensor_min</KEYWORD1>\r
+ <KEYWORD1>tensor_mod</KEYWORD1>\r
+ <KEYWORD1>tensor_mul</KEYWORD1>\r
+ <KEYWORD1>tensor_ne</KEYWORD1>\r
+ <KEYWORD1>tensor_sub</KEYWORD1>\r
+ <KEYWORD1>threed</KEYWORD1>\r
+ <KEYWORD1>today</KEYWORD1>\r
+ <KEYWORD1>total</KEYWORD1>\r
+ <KEYWORD1>tqli</KEYWORD1>\r
+ <KEYWORD1>transpose</KEYWORD1>\r
+ <KEYWORD1>tred2</KEYWORD1>\r
+ <KEYWORD1>tridag</KEYWORD1>\r
+ <KEYWORD1>tv</KEYWORD1>\r
+ <KEYWORD1>tvcrs</KEYWORD1>\r
+ <KEYWORD1>tvlct</KEYWORD1>\r
+ <KEYWORD1>tvrd</KEYWORD1>\r
+ <KEYWORD1>tvscl</KEYWORD1>\r
+ <KEYWORD1>tvsize</KEYWORD1>\r
+ <KEYWORD1>uniqn</KEYWORD1>\r
+ <KEYWORD1>unique</KEYWORD1>\r
+ <KEYWORD1>unix_listen</KEYWORD1>\r
+ <KEYWORD1>unix_reply</KEYWORD1>\r
+ <KEYWORD1>unload_option</KEYWORD1>\r
+ <KEYWORD1>upvar</KEYWORD1>\r
+ <KEYWORD1>usersym</KEYWORD1>\r
+ <KEYWORD1>usgs_names</KEYWORD1>\r
+ <KEYWORD1>value_length</KEYWORD1>\r
+ <KEYWORD1>var_match</KEYWORD1>\r
+ <KEYWORD1>var_to_dt</KEYWORD1>\r
+ <KEYWORD1>vector_field3</KEYWORD1>\r
+ <KEYWORD1>vel</KEYWORD1>\r
+ <KEYWORD1>velovect</KEYWORD1>\r
+ <KEYWORD1>viewer</KEYWORD1>\r
+ <KEYWORD1>vol_marker</KEYWORD1>\r
+ <KEYWORD1>vol_pad</KEYWORD1>\r
+ <KEYWORD1>vol_red</KEYWORD1>\r
+ <KEYWORD1>vol_trans</KEYWORD1>\r
+ <KEYWORD1>volume</KEYWORD1>\r
+ <KEYWORD1>vtkaddattribute</KEYWORD1>\r
+ <KEYWORD1>vtkaxes</KEYWORD1>\r
+ <KEYWORD1>vtkcamera</KEYWORD1>\r
+ <KEYWORD1>vtkclose</KEYWORD1>\r
+ <KEYWORD1>vtkcolorbar</KEYWORD1>\r
+ <KEYWORD1>vtkcolornames</KEYWORD1>\r
+ <KEYWORD1>vtkcommand</KEYWORD1>\r
+ <KEYWORD1>vtkerase</KEYWORD1>\r
+ <KEYWORD1>vtkformat</KEYWORD1>\r
+ <KEYWORD1>vtkgrid</KEYWORD1>\r
+ <KEYWORD1>vtkhedgehog</KEYWORD1>\r
+ <KEYWORD1>vtkinit</KEYWORD1>\r
+ <KEYWORD1>vtklight</KEYWORD1>\r
+ <KEYWORD1>vtkplots</KEYWORD1>\r
+ <KEYWORD1>vtkpolydata</KEYWORD1>\r
+ <KEYWORD1>vtkpolyformat</KEYWORD1>\r
+ <KEYWORD1>vtkpolyshade</KEYWORD1>\r
+ <KEYWORD1>vtkppmread</KEYWORD1>\r
+ <KEYWORD1>vtkppmwrite</KEYWORD1>\r
+ <KEYWORD1>vtkreadvtk</KEYWORD1>\r
+ <KEYWORD1>vtkrectilineargrid</KEYWORD1>\r
+ <KEYWORD1>vtkrenderwindow</KEYWORD1>\r
+ <KEYWORD1>vtkscatter</KEYWORD1>\r
+ <KEYWORD1>vtkslicevol</KEYWORD1>\r
+ <KEYWORD1>vtkstructuredpoints</KEYWORD1>\r
+ <KEYWORD1>vtkstructuredgrid</KEYWORD1>\r
+ <KEYWORD1>vtksurface</KEYWORD1>\r
+ <KEYWORD1>vtksurfgen</KEYWORD1>\r
+ <KEYWORD1>vtktext</KEYWORD1>\r
+ <KEYWORD1>vtktvrd</KEYWORD1>\r
+ <KEYWORD1>vtkunstructuredgrid</KEYWORD1>\r
+ <KEYWORD1>vtkwdelete</KEYWORD1>\r
+ <KEYWORD1>vtkwindow</KEYWORD1>\r
+ <KEYWORD1>vtkwritevrml</KEYWORD1>\r
+ <KEYWORD1>vtkwset</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+ <KEYWORD1>wavedatamanager</KEYWORD1>\r
+ <KEYWORD1>waveserver</KEYWORD1>\r
+ <KEYWORD1>wcopy</KEYWORD1>\r
+ <KEYWORD1>wdelete</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+ <KEYWORD1>wherein</KEYWORD1>\r
+ <KEYWORD1>window</KEYWORD1>\r
+ <KEYWORD1>wmenu</KEYWORD1>\r
+ <KEYWORD1>wpaste</KEYWORD1>\r
+ <KEYWORD1>wprint</KEYWORD1>\r
+ <KEYWORD1>wread_dib</KEYWORD1>\r
+ <KEYWORD1>wread_meta</KEYWORD1>\r
+ <KEYWORD1>write_xbm</KEYWORD1>\r
+ <KEYWORD1>writeu</KEYWORD1>\r
+ <KEYWORD1>wset</KEYWORD1>\r
+ <KEYWORD1>whow</KEYWORD1>\r
+ <KEYWORD1>wwrite_dib</KEYWORD1>\r
+ <KEYWORD1>wwrite_meta</KEYWORD1>\r
+ <KEYWORD1>xyouts</KEYWORD1>\r
+ <KEYWORD1>zoom</KEYWORD1>\r
+ <KEYWORD1>zroots</KEYWORD1>\r
+ <!--KEYWORD2s are PV-WAVE keywords -->\r
+ <KEYWORD2>begin</KEYWORD2>\r
+ <KEYWORD2>breakpoint</KEYWORD2>\r
+ <KEYWORD2>case</KEYWORD2>\r
+ <KEYWORD2>common</KEYWORD2>\r
+ <KEYWORD2>compile</KEYWORD2>\r
+ <KEYWORD2>declare</KEYWORD2>\r
+ <KEYWORD2>do</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2>\r
+ <KEYWORD2>end</KEYWORD2>\r
+ <KEYWORD2>endcase</KEYWORD2>\r
+ <KEYWORD2>endelse</KEYWORD2>\r
+ <KEYWORD2>endfor</KEYWORD2>\r
+ <KEYWORD2>endif</KEYWORD2>\r
+ <KEYWORD2>endrepeat</KEYWORD2>\r
+ <KEYWORD2>endwhile</KEYWORD2>\r
+ <KEYWORD2>exit</KEYWORD2>\r
+ <KEYWORD2>for</KEYWORD2>\r
+ <KEYWORD2>func</KEYWORD2>\r
+ <KEYWORD2>function</KEYWORD2>\r
+ <KEYWORD2>goto</KEYWORD2>\r
+ <KEYWORD2>help</KEYWORD2>\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>info</KEYWORD2>\r
+ <KEYWORD2>journal</KEYWORD2>\r
+ <KEYWORD2>locals</KEYWORD2>\r
+ <KEYWORD2>of</KEYWORD2>\r
+ <KEYWORD2>on_error</KEYWORD2>\r
+ <KEYWORD2>on_error_goto</KEYWORD2>\r
+ <KEYWORD2>on_ioerror</KEYWORD2>\r
+ <KEYWORD2>pro</KEYWORD2>\r
+ <KEYWORD2>quit</KEYWORD2>\r
+ <KEYWORD2>repeat</KEYWORD2>\r
+ <KEYWORD2>restore</KEYWORD2>\r
+ <KEYWORD2>retall</KEYWORD2>\r
+ <KEYWORD2>return</KEYWORD2>\r
+ <KEYWORD2>save</KEYWORD2>\r
+ <KEYWORD2>stop</KEYWORD2>\r
+ <KEYWORD2>then</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2>\r
+ <!-- KEYWORD3s are binary ops and Widget stuff -->\r
+ <KEYWORD3>and</KEYWORD3>\r
+ <KEYWORD3>not</KEYWORD3>\r
+ <KEYWORD3>or</KEYWORD3>\r
+ <KEYWORD3>xor</KEYWORD3>\r
+ <KEYWORD3>eq</KEYWORD3>\r
+ <KEYWORD3>ne</KEYWORD3>\r
+ <KEYWORD3>gt</KEYWORD3>\r
+ <KEYWORD3>lt</KEYWORD3>\r
+ <KEYWORD3>ge</KEYWORD3>\r
+ <KEYWORD3>le</KEYWORD3>\r
+ <KEYWORD3>mod</KEYWORD3>\r
+ <KEYWORD3>WgAnimateTool</KEYWORD3>\r
+ <KEYWORD3>WgCbarTool</KEYWORD3>\r
+ <KEYWORD3>WgCtTool</KEYWORD3>\r
+ <KEYWORD3>WgIsoSurfTool</KEYWORD3>\r
+ <KEYWORD3>WgMovieTool</KEYWORD3>\r
+ <KEYWORD3>WgSimageTool</KEYWORD3>\r
+ <KEYWORD3>WgSliceTool</KEYWORD3>\r
+ <KEYWORD3>WgSurfaceTool</KEYWORD3>\r
+ <KEYWORD3>WgTextTool</KEYWORD3>\r
+ <KEYWORD3>WoAddButtons</KEYWORD3>\r
+ <KEYWORD3>WoAddMessage</KEYWORD3>\r
+ <KEYWORD3>WoAddStatus</KEYWORD3>\r
+ <KEYWORD3>WoButtonBar</KEYWORD3>\r
+ <KEYWORD3>WoCheckFile</KEYWORD3>\r
+ <KEYWORD3>WoColorButton</KEYWORD3>\r
+ <KEYWORD3>WoColorConvert</KEYWORD3>\r
+ <KEYWORD3>WoColorGrid</KEYWORD3>\r
+ <KEYWORD3>WoColorWheel</KEYWORD3>\r
+ <KEYWORD3>WoConfirmClose</KEYWORD3>\r
+ <KEYWORD3>WoDialogStatus</KEYWORD3>\r
+ <KEYWORD3>WoFontOptionMenu</KEYWORD3>\r
+ <KEYWORD3>WoGenericDialog</KEYWORD3>\r
+ <KEYWORD3>WoLabeledText</KEYWORD3>\r
+ <KEYWORD3>WoMenuBar</KEYWORD3>\r
+ <KEYWORD3>WoMessage</KEYWORD3>\r
+ <KEYWORD3>WoSaveAsPixmap</KEYWORD3>\r
+ <KEYWORD3>WoSetCursor</KEYWORD3>\r
+ <KEYWORD3>WoSetWindowTitle</KEYWORD3>\r
+ <KEYWORD3>WoStatus</KEYWORD3>\r
+ <KEYWORD3>WoVariableOptionMenu</KEYWORD3>\r
+ <KEYWORD3>WtAddCallback</KEYWORD3>\r
+ <KEYWORD3>WtAddHandler</KEYWORD3>\r
+ <KEYWORD3>WtCursor</KEYWORD3>\r
+ <KEYWORD3>WtGet</KEYWORD3>\r
+ <KEYWORD3>WtPointer</KEYWORD3>\r
+ <KEYWORD3>WtSet</KEYWORD3>\r
+ <KEYWORD3>WtTimer</KEYWORD3>\r
+ <KEYWORD3>WwAlert</KEYWORD3>\r
+ <KEYWORD3>WwAlertPopdown</KEYWORD3>\r
+ <KEYWORD3>WwButtonBox</KEYWORD3>\r
+ <KEYWORD3>WwCallback</KEYWORD3>\r
+ <KEYWORD3>WwControlsBox</KEYWORD3>\r
+ <KEYWORD3>WwDialog</KEYWORD3>\r
+ <KEYWORD3>WwDrawing</KEYWORD3>\r
+ <KEYWORD3>WwFileSelection</KEYWORD3>\r
+ <KEYWORD3>WwGenericDialog</KEYWORD3>\r
+ <KEYWORD3>WwGetButton</KEYWORD3>\r
+ <KEYWORD3>WwGetKey</KEYWORD3>\r
+ <KEYWORD3>WwGetPosition</KEYWORD3>\r
+ <KEYWORD3>WwGetValue</KEYWORD3>\r
+ <KEYWORD3>WwHandler</KEYWORD3>\r
+ <KEYWORD3>WwInit</KEYWORD3>\r
+ <KEYWORD3>WwLayout</KEYWORD3>\r
+ <KEYWORD3>WwList</KEYWORD3>\r
+ <KEYWORD3>WwListUtils</KEYWORD3>\r
+ <KEYWORD3>WwLoop</KEYWORD3>\r
+ <KEYWORD3>WwMainWindow</KEYWORD3>\r
+ <KEYWORD3>WwMenuBar</KEYWORD3>\r
+ <KEYWORD3>WwMenuItem</KEYWORD3>\r
+ <KEYWORD3>WwMessage</KEYWORD3>\r
+ <KEYWORD3>WwMultiClickHandler</KEYWORD3>\r
+ <KEYWORD3>WwOptionMenu</KEYWORD3>\r
+ <KEYWORD3>WwPickFile</KEYWORD3>\r
+ <KEYWORD3>WwPopupMenu</KEYWORD3>\r
+ <KEYWORD3>WwPreview</KEYWORD3>\r
+ <KEYWORD3>WwPreviewUtils</KEYWORD3>\r
+ <KEYWORD3>WwRadioBox</KEYWORD3>\r
+ <KEYWORD3>WwResource</KEYWORD3>\r
+ <KEYWORD3>WwSeparator</KEYWORD3>\r
+ <KEYWORD3>WwSetCursor</KEYWORD3>\r
+ <KEYWORD3>WwSetValue</KEYWORD3>\r
+ <KEYWORD3>WwTable</KEYWORD3>\r
+ <KEYWORD3>WwTableUtils</KEYWORD3>\r
+ <KEYWORD3>WwText</KEYWORD3>\r
+ <KEYWORD3>WwTimer</KEYWORD3>\r
+ <KEYWORD3>WwToolBox</KEYWORD3>\r
+ <KEYWORD3>WzAnimate</KEYWORD3>\r
+ <KEYWORD3>WzColorEdit</KEYWORD3>\r
+ <KEYWORD3>WzContour</KEYWORD3>\r
+ <KEYWORD3>WzExport</KEYWORD3>\r
+ <KEYWORD3>WzHistogram</KEYWORD3>\r
+ <KEYWORD3>WzImage</KEYWORD3>\r
+ <KEYWORD3>WzImport</KEYWORD3>\r
+ <KEYWORD3>WzMultiView</KEYWORD3>\r
+ <KEYWORD3>WzPlot</KEYWORD3>\r
+ <KEYWORD3>WzPreview</KEYWORD3>\r
+ <KEYWORD3>WzSurface</KEYWORD3>\r
+ <KEYWORD3>WzTable</KEYWORD3>\r
+ <KEYWORD3>WzVariable</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*[^#]{3,}:\s*(#.*)?" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <IMPORT DELEGATE="python::MAIN"/>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD4>cdef</KEYWORD4>\r
+ <KEYWORD4>char</KEYWORD4>\r
+ <KEYWORD4>cinclude</KEYWORD4>\r
+ <KEYWORD4>ctypedef</KEYWORD4>\r
+ <KEYWORD4>double</KEYWORD4>\r
+ <KEYWORD4>enum</KEYWORD4>\r
+ <KEYWORD4>extern</KEYWORD4>\r
+ <KEYWORD4>float</KEYWORD4>\r
+ <KEYWORD4>include</KEYWORD4>\r
+ <KEYWORD4>private</KEYWORD4>\r
+ <KEYWORD4>public</KEYWORD4>\r
+ <KEYWORD4>short</KEYWORD4>\r
+ <KEYWORD4>signed</KEYWORD4>\r
+ <KEYWORD4>sizeof</KEYWORD4>\r
+ <KEYWORD4>struct</KEYWORD4>\r
+ <KEYWORD4>union</KEYWORD4>\r
+ <KEYWORD4>unsigned</KEYWORD4>\r
+ <KEYWORD4>void</KEYWORD4>\r
+\r
+ <LITERAL3>NULL</LITERAL3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Python mode, by Slava Pestov. Based on PythonTokenMarker by -->\r
+<!-- Jonathan Revusky -->\r
+\r
+<!-- Modified 19-Jul-00 by Ivan Frohne to: -->\r
+<!-- (a) implement 'indentOnEnter'; -->\r
+<!-- (b) indent next line automatically after control structures followed -->\r
+<!-- by ':'; -->\r
+<!-- (c) make """ or ''' multiline quotes TYPE LITERAL2; -->\r
+<!-- (d) add TYPE FUNCTION identified by a following '(' -->\r
+<!-- (e) eliminate the '?' SEQ TYPE ('?' has no meaning in Python); -->\r
+<!-- (f) change the TYPE of 'and', 'or', and 'not' to KEYWORD1; and -->\r
+<!-- (g) add all builtin functions, builtin exceptions, -->\r
+<!-- builtin type methods, File object methods, and special type -->\r
+<!-- attributes as TYPE KEYWORD3. -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*[^#]{3,}:\s*(#.*)?" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="unindentNextLines" VALUE="^\s*(pass|else\s*:|elif\s.*:|except(\s.*)?:|finally\s*:)$" />\r
+ <PROPERTY NAME="unindentThisLine" VALUE="^\s*(else|elif\s.*|except(\s.*)?|finally)\s*:" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="electricKeys" VALUE=":" />\r
+ <PROPERTY NAME="ignoreWhitespace" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- decorator -->\r
+ <EOL_SPAN_REGEXP HASH_CHAR="@" AT_WORD_START="TRUE" TYPE="KEYWORD4">@\w</EOL_SPAN_REGEXP>\r
+\r
+ <!-- Triple-quotes -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="LITERAL_TWO">\r
+ <BEGIN>"""</BEGIN>\r
+ <END>"""</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" DELEGATE="LITERAL_TWO">\r
+ <BEGIN>'''</BEGIN>\r
+ <END>'''</END>\r
+ </SPAN>\r
+\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL_ONE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL_ONE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="KEYWORD1">:</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION"\r
+ MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved Words -->\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>assert</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>def</KEYWORD1>\r
+ <KEYWORD1>del</KEYWORD1>\r
+ <KEYWORD1>elif</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>except</KEYWORD1>\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>finally</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>lambda</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>pass</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>raise</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>reversed</KEYWORD1>\r
+ <KEYWORD1>sorted</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>yield</KEYWORD1>\r
+ <KEYWORD1>self</KEYWORD1>\r
+\r
+ <!-- builtins -->\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>all</KEYWORD2>\r
+ <KEYWORD2>any</KEYWORD2>\r
+ <KEYWORD2>apply</KEYWORD2>\r
+ <KEYWORD2>bool</KEYWORD2>\r
+ <KEYWORD2>buffer</KEYWORD2>\r
+ <KEYWORD2>callable</KEYWORD2>\r
+ <KEYWORD2>chr</KEYWORD2>\r
+ <KEYWORD2>classmethod</KEYWORD2>\r
+ <KEYWORD2>cmp</KEYWORD2>\r
+ <KEYWORD2>coerce</KEYWORD2>\r
+ <KEYWORD2>compile</KEYWORD2>\r
+ <KEYWORD2>complex</KEYWORD2>\r
+ <KEYWORD2>delattr</KEYWORD2>\r
+ <KEYWORD2>dict</KEYWORD2>\r
+ <KEYWORD2>dir</KEYWORD2>\r
+ <KEYWORD2>divmod</KEYWORD2>\r
+ <KEYWORD2>enumerate</KEYWORD2>\r
+ <KEYWORD2>eval</KEYWORD2>\r
+ <KEYWORD2>execfile</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>filter</KEYWORD2>\r
+ <KEYWORD2>float</KEYWORD2>\r
+ <KEYWORD2>frozenset</KEYWORD2>\r
+ <KEYWORD2>getattr</KEYWORD2>\r
+ <KEYWORD2>globals</KEYWORD2>\r
+ <KEYWORD2>hasattr</KEYWORD2>\r
+ <KEYWORD2>hash</KEYWORD2>\r
+ <KEYWORD2>hex</KEYWORD2>\r
+ <KEYWORD2>id</KEYWORD2>\r
+ <KEYWORD2>input</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>intern</KEYWORD2>\r
+ <KEYWORD2>isinstance</KEYWORD2>\r
+ <KEYWORD2>issubclass</KEYWORD2>\r
+ <KEYWORD2>iter</KEYWORD2>\r
+ <KEYWORD2>len</KEYWORD2>\r
+ <KEYWORD2>list</KEYWORD2>\r
+ <KEYWORD2>locals</KEYWORD2>\r
+ <KEYWORD2>long</KEYWORD2>\r
+ <KEYWORD2>map</KEYWORD2>\r
+ <KEYWORD2>max</KEYWORD2>\r
+ <KEYWORD2>min</KEYWORD2>\r
+ <KEYWORD2>object</KEYWORD2>\r
+ <KEYWORD2>oct</KEYWORD2>\r
+ <KEYWORD2>open</KEYWORD2>\r
+ <KEYWORD2>ord</KEYWORD2>\r
+ <KEYWORD2>pow</KEYWORD2>\r
+ <KEYWORD2>property</KEYWORD2>\r
+ <KEYWORD2>range</KEYWORD2>\r
+ <KEYWORD2>raw_input</KEYWORD2>\r
+ <KEYWORD2>reduce</KEYWORD2>\r
+ <KEYWORD2>reload</KEYWORD2>\r
+ <KEYWORD2>repr</KEYWORD2>\r
+ <KEYWORD2>round</KEYWORD2>\r
+ <KEYWORD2>set</KEYWORD2>\r
+ <KEYWORD2>setattr</KEYWORD2>\r
+ <KEYWORD2>slice</KEYWORD2>\r
+ <KEYWORD2>staticmethod</KEYWORD2>\r
+ <KEYWORD2>str</KEYWORD2>\r
+ <KEYWORD2>sum</KEYWORD2>\r
+ <KEYWORD2>super</KEYWORD2>\r
+ <KEYWORD2>tuple</KEYWORD2>\r
+ <KEYWORD2>type</KEYWORD2>\r
+ <KEYWORD2>unichr</KEYWORD2>\r
+ <KEYWORD2>unicode</KEYWORD2>\r
+ <KEYWORD2>vars</KEYWORD2>\r
+ <KEYWORD2>xrange</KEYWORD2>\r
+ <KEYWORD2>zip</KEYWORD2>\r
+\r
+ <!-- exceptions -->\r
+ <KEYWORD3>ArithmeticError</KEYWORD3>\r
+ <KEYWORD3>AssertionError</KEYWORD3>\r
+ <KEYWORD3>AttributeError</KEYWORD3>\r
+ <KEYWORD3>DeprecationWarning</KEYWORD3>\r
+ <KEYWORD3>EOFError</KEYWORD3>\r
+ <KEYWORD3>EnvironmentError</KEYWORD3>\r
+ <KEYWORD3>Exception</KEYWORD3>\r
+ <KEYWORD3>FloatingPointError</KEYWORD3>\r
+ <KEYWORD3>IOError</KEYWORD3>\r
+ <KEYWORD3>ImportError</KEYWORD3>\r
+ <KEYWORD3>IndentationError</KEYWORD3>\r
+ <KEYWORD3>IndexError</KEYWORD3>\r
+ <KEYWORD3>KeyError</KEYWORD3>\r
+ <KEYWORD3>KeyboardInterrupt</KEYWORD3>\r
+ <KEYWORD3>LookupError</KEYWORD3>\r
+ <KEYWORD3>MemoryError</KEYWORD3>\r
+ <KEYWORD3>NameError</KEYWORD3>\r
+ <KEYWORD3>NotImplemented</KEYWORD3>\r
+ <KEYWORD3>NotImplementedError</KEYWORD3>\r
+ <KEYWORD3>OSError</KEYWORD3>\r
+ <KEYWORD3>OverflowError</KEYWORD3>\r
+ <KEYWORD3>OverflowWarning</KEYWORD3>\r
+ <KEYWORD3>ReferenceError</KEYWORD3>\r
+ <KEYWORD3>RuntimeError</KEYWORD3>\r
+ <KEYWORD3>RuntimeWarning</KEYWORD3>\r
+ <KEYWORD3>StandardError</KEYWORD3>\r
+ <KEYWORD3>StopIteration</KEYWORD3>\r
+ <KEYWORD3>SyntaxError</KEYWORD3>\r
+ <KEYWORD3>SyntaxWarning</KEYWORD3>\r
+ <KEYWORD3>SystemError</KEYWORD3>\r
+ <KEYWORD3>SystemExit</KEYWORD3>\r
+ <KEYWORD3>TabError</KEYWORD3>\r
+ <KEYWORD3>TypeError</KEYWORD3>\r
+ <KEYWORD3>UnboundLocalError</KEYWORD3>\r
+ <KEYWORD3>UnicodeError</KEYWORD3>\r
+ <KEYWORD3>UserWarning</KEYWORD3>\r
+ <KEYWORD3>ValueError</KEYWORD3>\r
+ <KEYWORD3>Warning</KEYWORD3>\r
+ <KEYWORD3>WindowsError</KEYWORD3>\r
+ <KEYWORD3>ZeroDivisionError</KEYWORD3>\r
+\r
+ <!-- types (from types module) -->\r
+ <KEYWORD3>BufferType</KEYWORD3>\r
+ <KEYWORD3>BuiltinFunctionType</KEYWORD3>\r
+ <KEYWORD3>BuiltinMethodType</KEYWORD3>\r
+ <KEYWORD3>ClassType</KEYWORD3>\r
+ <KEYWORD3>CodeType</KEYWORD3>\r
+ <KEYWORD3>ComplexType</KEYWORD3>\r
+ <KEYWORD3>DictProxyType</KEYWORD3>\r
+ <KEYWORD3>DictType</KEYWORD3>\r
+ <KEYWORD3>DictionaryType</KEYWORD3>\r
+ <KEYWORD3>EllipsisType</KEYWORD3>\r
+ <KEYWORD3>FileType</KEYWORD3>\r
+ <KEYWORD3>FloatType</KEYWORD3>\r
+ <KEYWORD3>FrameType</KEYWORD3>\r
+ <KEYWORD3>FunctionType</KEYWORD3>\r
+ <KEYWORD3>GeneratorType</KEYWORD3>\r
+ <KEYWORD3>InstanceType</KEYWORD3>\r
+ <KEYWORD3>IntType</KEYWORD3>\r
+ <KEYWORD3>LambdaType</KEYWORD3>\r
+ <KEYWORD3>ListType</KEYWORD3>\r
+ <KEYWORD3>LongType</KEYWORD3>\r
+ <KEYWORD3>MethodType</KEYWORD3>\r
+ <KEYWORD3>ModuleType</KEYWORD3>\r
+ <KEYWORD3>NoneType</KEYWORD3>\r
+ <KEYWORD3>ObjectType</KEYWORD3>\r
+ <KEYWORD3>SliceType</KEYWORD3>\r
+ <KEYWORD3>StringType</KEYWORD3>\r
+ <KEYWORD3>StringTypes</KEYWORD3>\r
+ <KEYWORD3>TracebackType</KEYWORD3>\r
+ <KEYWORD3>TupleType</KEYWORD3>\r
+ <KEYWORD3>TypeType</KEYWORD3>\r
+ <KEYWORD3>UnboundMethodType</KEYWORD3>\r
+ <KEYWORD3>UnicodeType</KEYWORD3>\r
+ <KEYWORD3>XRangeType</KEYWORD3>\r
+\r
+ <KEYWORD3>False</KEYWORD3>\r
+ <KEYWORD3>None</KEYWORD3>\r
+ <KEYWORD3>True</KEYWORD3>\r
+\r
+ <KEYWORD3>__abs__</KEYWORD3>\r
+ <KEYWORD3>__add__</KEYWORD3>\r
+ <KEYWORD3>__all__</KEYWORD3>\r
+ <KEYWORD3>__author__</KEYWORD3>\r
+ <KEYWORD3>__bases__</KEYWORD3>\r
+ <KEYWORD3>__builtins__</KEYWORD3>\r
+ <KEYWORD3>__call__</KEYWORD3>\r
+ <KEYWORD3>__class__</KEYWORD3>\r
+ <KEYWORD3>__cmp__</KEYWORD3>\r
+ <KEYWORD3>__coerce__</KEYWORD3>\r
+ <KEYWORD3>__contains__</KEYWORD3>\r
+ <KEYWORD3>__debug__</KEYWORD3>\r
+ <KEYWORD3>__del__</KEYWORD3>\r
+ <KEYWORD3>__delattr__</KEYWORD3>\r
+ <KEYWORD3>__delitem__</KEYWORD3>\r
+ <KEYWORD3>__delslice__</KEYWORD3>\r
+ <KEYWORD3>__dict__</KEYWORD3>\r
+ <KEYWORD3>__div__</KEYWORD3>\r
+ <KEYWORD3>__divmod__</KEYWORD3>\r
+ <KEYWORD3>__doc__</KEYWORD3>\r
+ <KEYWORD3>__docformat__</KEYWORD3>\r
+ <KEYWORD3>__eq__</KEYWORD3>\r
+ <KEYWORD3>__file__</KEYWORD3>\r
+ <KEYWORD3>__float__</KEYWORD3>\r
+ <KEYWORD3>__floordiv__</KEYWORD3>\r
+ <KEYWORD3>__future__</KEYWORD3>\r
+ <KEYWORD3>__ge__</KEYWORD3>\r
+ <KEYWORD3>__getattr__</KEYWORD3>\r
+ <KEYWORD3>__getattribute__</KEYWORD3>\r
+ <KEYWORD3>__getitem__</KEYWORD3>\r
+ <KEYWORD3>__getslice__</KEYWORD3>\r
+ <KEYWORD3>__gt__</KEYWORD3>\r
+ <KEYWORD3>__hash__</KEYWORD3>\r
+ <KEYWORD3>__hex__</KEYWORD3>\r
+ <KEYWORD3>__iadd__</KEYWORD3>\r
+ <KEYWORD3>__import__</KEYWORD3>\r
+ <KEYWORD3>__imul__</KEYWORD3>\r
+ <KEYWORD3>__init__</KEYWORD3>\r
+ <KEYWORD3>__int__</KEYWORD3>\r
+ <KEYWORD3>__invert__</KEYWORD3>\r
+ <KEYWORD3>__iter__</KEYWORD3>\r
+ <KEYWORD3>__le__</KEYWORD3>\r
+ <KEYWORD3>__len__</KEYWORD3>\r
+ <KEYWORD3>__long__</KEYWORD3>\r
+ <KEYWORD3>__lshift__</KEYWORD3>\r
+ <KEYWORD3>__lt__</KEYWORD3>\r
+ <KEYWORD3>__members__</KEYWORD3>\r
+ <KEYWORD3>__metaclass__</KEYWORD3>\r
+ <KEYWORD3>__mod__</KEYWORD3>\r
+ <KEYWORD3>__mro__</KEYWORD3>\r
+ <KEYWORD3>__mul__</KEYWORD3>\r
+ <KEYWORD3>__name__</KEYWORD3>\r
+ <KEYWORD3>__ne__</KEYWORD3>\r
+ <KEYWORD3>__neg__</KEYWORD3>\r
+ <KEYWORD3>__new__</KEYWORD3>\r
+ <KEYWORD3>__nonzero__</KEYWORD3>\r
+ <KEYWORD3>__oct__</KEYWORD3>\r
+ <KEYWORD3>__or__</KEYWORD3>\r
+ <KEYWORD3>__path__</KEYWORD3>\r
+ <KEYWORD3>__pos__</KEYWORD3>\r
+ <KEYWORD3>__pow__</KEYWORD3>\r
+ <KEYWORD3>__radd__</KEYWORD3>\r
+ <KEYWORD3>__rdiv__</KEYWORD3>\r
+ <KEYWORD3>__rdivmod__</KEYWORD3>\r
+ <KEYWORD3>__reduce__</KEYWORD3>\r
+ <KEYWORD3>__repr__</KEYWORD3>\r
+ <KEYWORD3>__rfloordiv__</KEYWORD3>\r
+ <KEYWORD3>__rlshift__</KEYWORD3>\r
+ <KEYWORD3>__rmod__</KEYWORD3>\r
+ <KEYWORD3>__rmul__</KEYWORD3>\r
+ <KEYWORD3>__ror__</KEYWORD3>\r
+ <KEYWORD3>__rpow__</KEYWORD3>\r
+ <KEYWORD3>__rrshift__</KEYWORD3>\r
+ <KEYWORD3>__rsub__</KEYWORD3>\r
+ <KEYWORD3>__rtruediv__</KEYWORD3>\r
+ <KEYWORD3>__rxor__</KEYWORD3>\r
+ <KEYWORD3>__setattr__</KEYWORD3>\r
+ <KEYWORD3>__setitem__</KEYWORD3>\r
+ <KEYWORD3>__setslice__</KEYWORD3>\r
+ <KEYWORD3>__self__</KEYWORD3>\r
+ <KEYWORD3>__slots__</KEYWORD3>\r
+ <KEYWORD3>__str__</KEYWORD3>\r
+ <KEYWORD3>__sub__</KEYWORD3>\r
+ <KEYWORD3>__truediv__</KEYWORD3>\r
+ <KEYWORD3>__version__</KEYWORD3>\r
+ <KEYWORD3>__xor__</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- rulesets to syntax highlight string interpolation sequences -->\r
+ <RULES SET="LITERAL_ONE" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <SEQ_REGEXP HASH_CHAR="%" TYPE="LITERAL4">%[.]?\d*[diouxXeEfFgGcrs]</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="%(" TYPE="LITERAL4">%\([^)]+\)[+ -]?\d*[diouxXeEfFgGcrs]</SEQ_REGEXP>\r
+ </RULES>\r
+ <!-- triple-quoted strings has its own, since it's LITERAL2 by default -->\r
+ <RULES SET="LITERAL_TWO" DEFAULT="LITERAL2" ESCAPE="\">\r
+ <SEQ_REGEXP HASH_CHAR="%" TYPE="LITERAL4">%\d*[diouxXeEfFgGcrs]</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="%(" TYPE="LITERAL4">%\([^)]+\)[+ -]?\d*[diouxXeEfFgGcrs]</SEQ_REGEXP>\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>B{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>C{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>E{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>I{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>L{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <!--\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" DELEGATE="python::MAIN" TYPE="LITERAL3">>>></EOL_SPAN>\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" DELEGATE="python::MAIN" TYPE="LITERAL3">...</EOL_SPAN>\r
+ -->\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" TYPE="LITERAL3">>>></EOL_SPAN>\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" TYPE="LITERAL3">...</EOL_SPAN>\r
+ <MARK_FOLLOWING TYPE="LITERAL3" AT_WHITESPACE_END="TRUE">@</MARK_FOLLOWING>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Quake mode by Marcus Augustine <mail [at] ma [dash] online [dot] net>\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ \r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD2>+attack</KEYWORD2>\r
+ <KEYWORD2>+back</KEYWORD2>\r
+ <KEYWORD2>+forward</KEYWORD2>\r
+ <KEYWORD2>+klook</KEYWORD2>\r
+ <KEYWORD2>+left</KEYWORD2>\r
+ <KEYWORD2>+lookdown</KEYWORD2>\r
+ <KEYWORD2>+lookup</KEYWORD2>\r
+ <KEYWORD2>+mlook</KEYWORD2>\r
+ <KEYWORD2>+movedown</KEYWORD2>\r
+ <KEYWORD2>+moveleft</KEYWORD2>\r
+ <KEYWORD2>+moveright</KEYWORD2>\r
+ <KEYWORD2>+moveup</KEYWORD2>\r
+ <KEYWORD2>+right</KEYWORD2>\r
+ <KEYWORD2>+speed</KEYWORD2>\r
+ <KEYWORD2>+strafe</KEYWORD2>\r
+ <KEYWORD2>+use</KEYWORD2>\r
+ <KEYWORD2>-attack</KEYWORD2>\r
+ <KEYWORD2>-back</KEYWORD2>\r
+ <KEYWORD2>-forward</KEYWORD2>\r
+ <KEYWORD2>-klook</KEYWORD2>\r
+ <KEYWORD2>-left</KEYWORD2>\r
+ <KEYWORD2>-lookdown</KEYWORD2>\r
+ <KEYWORD2>-lookup</KEYWORD2>\r
+ <KEYWORD2>-mlook</KEYWORD2>\r
+ <KEYWORD2>-movedown</KEYWORD2>\r
+ <KEYWORD2>-moveleft</KEYWORD2>\r
+ <KEYWORD2>-moveright</KEYWORD2>\r
+ <KEYWORD2>-moveup</KEYWORD2>\r
+ <KEYWORD2>-right</KEYWORD2>\r
+ <KEYWORD2>-speed</KEYWORD2>\r
+ <KEYWORD2>-strafe</KEYWORD2>\r
+ <KEYWORD2>-use</KEYWORD2>\r
+ <KEYWORD3>adr0</KEYWORD3>\r
+ <KEYWORD3>adr1</KEYWORD3>\r
+ <KEYWORD3>adr2</KEYWORD3>\r
+ <KEYWORD3>adr3</KEYWORD3>\r
+ <KEYWORD3>adr4</KEYWORD3>\r
+ <KEYWORD3>adr5</KEYWORD3>\r
+ <KEYWORD3>adr6</KEYWORD3>\r
+ <KEYWORD3>adr7</KEYWORD3>\r
+ <KEYWORD3>adr8</KEYWORD3>\r
+ <KEYWORD3>alias</KEYWORD3>\r
+ <KEYWORD3>allow_download</KEYWORD3>\r
+ <KEYWORD3>allow_download_maps</KEYWORD3>\r
+ <KEYWORD3>allow_download_models</KEYWORD3>\r
+ <KEYWORD3>allow_download_players</KEYWORD3>\r
+ <KEYWORD3>allow_download_sounds</KEYWORD3>\r
+ <KEYWORD3>basedir</KEYWORD3>\r
+ <KEYWORD1>bind</KEYWORD1>\r
+ <KEYWORD3>bindlist</KEYWORD3>\r
+ <KEYWORD3>bob_pitch</KEYWORD3>\r
+ <KEYWORD3>bob_roll</KEYWORD3>\r
+ <KEYWORD3>bob_up</KEYWORD3>\r
+ <KEYWORD3>cd</KEYWORD3>\r
+ <KEYWORD3>cd_loopcount</KEYWORD3>\r
+ <KEYWORD3>cd_looptrack</KEYWORD3>\r
+ <KEYWORD3>cd_nocd</KEYWORD3>\r
+ <KEYWORD3>cddir</KEYWORD3>\r
+ <KEYWORD3>centerview</KEYWORD3>\r
+ <KEYWORD3>changing</KEYWORD3>\r
+ <KEYWORD3>cheats</KEYWORD3>\r
+ <KEYWORD3>cl_anglespeedkey</KEYWORD3>\r
+ <KEYWORD3>cl_autoskins</KEYWORD3>\r
+ <KEYWORD3>cl_blend</KEYWORD3>\r
+ <KEYWORD3>cl_entities</KEYWORD3>\r
+ <KEYWORD3>cl_footsteps</KEYWORD3>\r
+ <KEYWORD3>cl_forwardspeed</KEYWORD3>\r
+ <KEYWORD3>cl_gun</KEYWORD3>\r
+ <KEYWORD3>cl_lights</KEYWORD3>\r
+ <KEYWORD3>cl_maxfps</KEYWORD3>\r
+ <KEYWORD3>cl_nodelta</KEYWORD3>\r
+ <KEYWORD3>cl_noskins</KEYWORD3>\r
+ <KEYWORD3>cl_particles</KEYWORD3>\r
+ <KEYWORD3>cl_pitchspeed</KEYWORD3>\r
+ <KEYWORD3>cl_predict</KEYWORD3>\r
+ <KEYWORD3>cl_run</KEYWORD3>\r
+ <KEYWORD3>cl_showmiss</KEYWORD3>\r
+ <KEYWORD3>cl_shownet</KEYWORD3>\r
+ <KEYWORD3>cl_sidespeed</KEYWORD3>\r
+ <KEYWORD3>cl_stats</KEYWORD3>\r
+ <KEYWORD3>cl_stereo</KEYWORD3>\r
+ <KEYWORD3>cl_stereo_separation</KEYWORD3>\r
+ <KEYWORD3>cl_testblend</KEYWORD3>\r
+ <KEYWORD3>cl_testentities</KEYWORD3>\r
+ <KEYWORD3>cl_testlights</KEYWORD3>\r
+ <KEYWORD3>cl_testparticles</KEYWORD3>\r
+ <KEYWORD3>cl_timeout</KEYWORD3>\r
+ <KEYWORD3>cl_upspeed</KEYWORD3>\r
+ <KEYWORD3>cl_vwep</KEYWORD3>\r
+ <KEYWORD3>cl_yawspeed</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+ <KEYWORD3>clientport</KEYWORD3>\r
+ <KEYWORD3>cmd</KEYWORD3>\r
+ <KEYWORD3>cmdlist</KEYWORD3>\r
+ <KEYWORD3>con_notifytime</KEYWORD3>\r
+ <KEYWORD3>condump</KEYWORD3>\r
+ <KEYWORD3>connect</KEYWORD3>\r
+ <KEYWORD3>coop</KEYWORD3>\r
+ <KEYWORD3>crosshair</KEYWORD3>\r
+ <KEYWORD3>cvarlist</KEYWORD3>\r
+ <KEYWORD3>deathmatch</KEYWORD3>\r
+ <KEYWORD3>debuggraph</KEYWORD3>\r
+ <KEYWORD3>dedicated</KEYWORD3>\r
+ <KEYWORD3>demomap</KEYWORD3>\r
+ <KEYWORD3>developer</KEYWORD3>\r
+ <KEYWORD3>dir</KEYWORD3>\r
+ <KEYWORD3>disconnect</KEYWORD3>\r
+ <KEYWORD3>dmflags</KEYWORD3>\r
+ <KEYWORD3>download</KEYWORD3>\r
+ <KEYWORD3>drop</KEYWORD3>\r
+ <KEYWORD3>dumpuser</KEYWORD3>\r
+ <KEYWORD3>echo</KEYWORD3>\r
+ <KEYWORD3>error</KEYWORD3>\r
+ <KEYWORD3>exec</KEYWORD3>\r
+ <KEYWORD3>filterban</KEYWORD3>\r
+ <KEYWORD3>fixedtime</KEYWORD3>\r
+ <KEYWORD3>flood_msgs</KEYWORD3>\r
+ <KEYWORD3>flood_persecond</KEYWORD3>\r
+ <KEYWORD3>flood_waitdelay</KEYWORD3>\r
+ <KEYWORD3>flushmap</KEYWORD3>\r
+ <KEYWORD3>fov</KEYWORD3>\r
+ <KEYWORD3>fraglimit</KEYWORD3>\r
+ <KEYWORD3>freelook</KEYWORD3>\r
+ <KEYWORD3>g_select_empty</KEYWORD3>\r
+ <KEYWORD3>game</KEYWORD3>\r
+ <KEYWORD3>gamedate</KEYWORD3>\r
+ <KEYWORD3>gamedir</KEYWORD3>\r
+ <KEYWORD3>gamemap</KEYWORD3>\r
+ <KEYWORD3>gamename</KEYWORD3>\r
+ <KEYWORD3>gameversion</KEYWORD3>\r
+ <KEYWORD3>gender</KEYWORD3>\r
+ <KEYWORD3>gender_auto</KEYWORD3>\r
+ <KEYWORD3>give</KEYWORD3>\r
+ <KEYWORD3>gl_3dlabs_broken</KEYWORD3>\r
+ <KEYWORD3>gl_allow_software</KEYWORD3>\r
+ <KEYWORD3>gl_bitdepth</KEYWORD3>\r
+ <KEYWORD3>gl_clear</KEYWORD3>\r
+ <KEYWORD3>gl_cull</KEYWORD3>\r
+ <KEYWORD3>gl_drawbuffer</KEYWORD3>\r
+ <KEYWORD3>gl_driver</KEYWORD3>\r
+ <KEYWORD3>gl_dynamic</KEYWORD3>\r
+ <KEYWORD3>gl_ext_compiled_vertex_array</KEYWORD3>\r
+ <KEYWORD3>gl_ext_multitexture</KEYWORD3>\r
+ <KEYWORD3>gl_ext_palettedtexture</KEYWORD3>\r
+ <KEYWORD3>gl_ext_pointparameters</KEYWORD3>\r
+ <KEYWORD3>gl_ext_swapinterval</KEYWORD3>\r
+ <KEYWORD3>gl_finish</KEYWORD3>\r
+ <KEYWORD3>gl_flashblend</KEYWORD3>\r
+ <KEYWORD3>gl_lightmap</KEYWORD3>\r
+ <KEYWORD3>gl_lockpvs</KEYWORD3>\r
+ <KEYWORD3>gl_log</KEYWORD3>\r
+ <KEYWORD3>gl_mode</KEYWORD3>\r
+ <KEYWORD3>gl_modulate</KEYWORD3>\r
+ <KEYWORD3>gl_monolightmap</KEYWORD3>\r
+ <KEYWORD3>gl_nobind</KEYWORD3>\r
+ <KEYWORD3>gl_nosubimage</KEYWORD3>\r
+ <KEYWORD3>gl_particle_att_a</KEYWORD3>\r
+ <KEYWORD3>gl_particle_att_b</KEYWORD3>\r
+ <KEYWORD3>gl_particle_att_c</KEYWORD3>\r
+ <KEYWORD3>gl_particle_max_size</KEYWORD3>\r
+ <KEYWORD3>gl_particle_min_size</KEYWORD3>\r
+ <KEYWORD3>gl_particle_size</KEYWORD3>\r
+ <KEYWORD3>gl_picmip</KEYWORD3>\r
+ <KEYWORD3>gl_playermip</KEYWORD3>\r
+ <KEYWORD3>gl_polyblend</KEYWORD3>\r
+ <KEYWORD3>gl_round_down</KEYWORD3>\r
+ <KEYWORD3>gl_saturatelighting</KEYWORD3>\r
+ <KEYWORD3>gl_shadows</KEYWORD3>\r
+ <KEYWORD3>gl_showtris</KEYWORD3>\r
+ <KEYWORD3>gl_skymip</KEYWORD3>\r
+ <KEYWORD3>gl_swapinterval</KEYWORD3>\r
+ <KEYWORD3>gl_texturealphamode</KEYWORD3>\r
+ <KEYWORD3>gl_texturemode</KEYWORD3>\r
+ <KEYWORD3>gl_texturesolidmode</KEYWORD3>\r
+ <KEYWORD3>gl_triplebuffer</KEYWORD3>\r
+ <KEYWORD3>gl_vertex_arrays</KEYWORD3>\r
+ <KEYWORD3>gl_ztrick</KEYWORD3>\r
+ <KEYWORD3>god</KEYWORD3>\r
+ <KEYWORD3>graphheight</KEYWORD3>\r
+ <KEYWORD3>graphscale</KEYWORD3>\r
+ <KEYWORD3>graphshift</KEYWORD3>\r
+ <KEYWORD3>gun_model</KEYWORD3>\r
+ <KEYWORD3>gun_next</KEYWORD3>\r
+ <KEYWORD3>gun_prev</KEYWORD3>\r
+ <KEYWORD3>gun_x</KEYWORD3>\r
+ <KEYWORD3>gun_y</KEYWORD3>\r
+ <KEYWORD3>gun_z</KEYWORD3>\r
+ <KEYWORD3>hand</KEYWORD3>\r
+ <KEYWORD3>heartbeat</KEYWORD3>\r
+ <KEYWORD3>host_speeds</KEYWORD3>\r
+ <KEYWORD3>hostname</KEYWORD3>\r
+ <KEYWORD3>hostport</KEYWORD3>\r
+ <KEYWORD3>imagelist</KEYWORD3>\r
+ <KEYWORD3>impulse</KEYWORD3>\r
+ <KEYWORD3>in_initjoy</KEYWORD3>\r
+ <KEYWORD3>in_initmouse</KEYWORD3>\r
+ <KEYWORD3>in_joystick</KEYWORD3>\r
+ <KEYWORD3>in_mouse</KEYWORD3>\r
+ <KEYWORD3>info</KEYWORD3>\r
+ <KEYWORD3>intensity</KEYWORD3>\r
+ <KEYWORD3>invdrop</KEYWORD3>\r
+ <KEYWORD3>inven</KEYWORD3>\r
+ <KEYWORD3>invnext</KEYWORD3>\r
+ <KEYWORD3>invnextp</KEYWORD3>\r
+ <KEYWORD3>invnextw</KEYWORD3>\r
+ <KEYWORD3>invprev</KEYWORD3>\r
+ <KEYWORD3>invprevp</KEYWORD3>\r
+ <KEYWORD3>invprevw</KEYWORD3>\r
+ <KEYWORD3>invuse</KEYWORD3>\r
+ <KEYWORD3>ip</KEYWORD3>\r
+ <KEYWORD3>ip_clientport</KEYWORD3>\r
+ <KEYWORD3>ip_hostport</KEYWORD3>\r
+ <KEYWORD3>ipx_clientport</KEYWORD3>\r
+ <KEYWORD3>ipx_hostport</KEYWORD3>\r
+ <KEYWORD3>joy_advanced</KEYWORD3>\r
+ <KEYWORD3>joy_advancedupdate</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisr</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisu</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisv</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisx</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisy</KEYWORD3>\r
+ <KEYWORD3>joy_advaxisz</KEYWORD3>\r
+ <KEYWORD3>joy_forwardsensitivity</KEYWORD3>\r
+ <KEYWORD3>joy_forwardthreshold</KEYWORD3>\r
+ <KEYWORD3>joy_name</KEYWORD3>\r
+ <KEYWORD3>joy_pitchsensitivity</KEYWORD3>\r
+ <KEYWORD3>joy_pitchthreshold</KEYWORD3>\r
+ <KEYWORD3>joy_sidesensitivity</KEYWORD3>\r
+ <KEYWORD3>joy_sidethreshold</KEYWORD3>\r
+ <KEYWORD3>joy_upsensitivity</KEYWORD3>\r
+ <KEYWORD3>joy_upthreshold</KEYWORD3>\r
+ <KEYWORD3>joy_yawsensitivity</KEYWORD3>\r
+ <KEYWORD3>joy_yawthreshold</KEYWORD3>\r
+ <KEYWORD3>kick</KEYWORD3>\r
+ <KEYWORD3>kill</KEYWORD3>\r
+ <KEYWORD3>killserver</KEYWORD3>\r
+ <KEYWORD3>link</KEYWORD3>\r
+ <KEYWORD3>load</KEYWORD3>\r
+ <KEYWORD3>loading</KEYWORD3>\r
+ <KEYWORD3>log_stats</KEYWORD3>\r
+ <KEYWORD3>logfile</KEYWORD3>\r
+ <KEYWORD3>lookspring</KEYWORD3>\r
+ <KEYWORD3>lookstrafe</KEYWORD3>\r
+ <KEYWORD3>m_filter</KEYWORD3>\r
+ <KEYWORD3>m_forward</KEYWORD3>\r
+ <KEYWORD3>m_pitch</KEYWORD3>\r
+ <KEYWORD3>m_side</KEYWORD3>\r
+ <KEYWORD3>m_yaw</KEYWORD3>\r
+ <KEYWORD3>map</KEYWORD3>\r
+ <KEYWORD3>map_noareas</KEYWORD3>\r
+ <KEYWORD3>mapname</KEYWORD3>\r
+ <KEYWORD3>maxclients</KEYWORD3>\r
+ <KEYWORD3>maxentities</KEYWORD3>\r
+ <KEYWORD3>maxspectators</KEYWORD3>\r
+ <KEYWORD3>menu_addressbook</KEYWORD3>\r
+ <KEYWORD3>menu_credits</KEYWORD3>\r
+ <KEYWORD3>menu_dmoptions</KEYWORD3>\r
+ <KEYWORD3>menu_game</KEYWORD3>\r
+ <KEYWORD3>menu_joinserver</KEYWORD3>\r
+ <KEYWORD3>menu_keys</KEYWORD3>\r
+ <KEYWORD3>menu_loadgame</KEYWORD3>\r
+ <KEYWORD3>menu_main</KEYWORD3>\r
+ <KEYWORD3>menu_multiplayer</KEYWORD3>\r
+ <KEYWORD3>menu_options</KEYWORD3>\r
+ <KEYWORD3>menu_playerconfig</KEYWORD3>\r
+ <KEYWORD3>menu_quit</KEYWORD3>\r
+ <KEYWORD3>menu_savegame</KEYWORD3>\r
+ <KEYWORD3>menu_startserver</KEYWORD3>\r
+ <KEYWORD3>menu_video</KEYWORD3>\r
+ <KEYWORD3>messagemode</KEYWORD3>\r
+ <KEYWORD3>messagemode3</KEYWORD3>\r
+ <KEYWORD3>modellist</KEYWORD3>\r
+ <KEYWORD3>msg</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>needpass</KEYWORD3>\r
+ <KEYWORD3>net_shownet</KEYWORD3>\r
+ <KEYWORD3>netgraph</KEYWORD3>\r
+ <KEYWORD3>nextserver</KEYWORD3>\r
+ <KEYWORD3>noclip</KEYWORD3>\r
+ <KEYWORD3>noipx</KEYWORD3>\r
+ <KEYWORD3>notarget</KEYWORD3>\r
+ <KEYWORD3>noudp</KEYWORD3>\r
+ <KEYWORD3>password</KEYWORD3>\r
+ <KEYWORD3>path</KEYWORD3>\r
+ <KEYWORD3>pause</KEYWORD3>\r
+ <KEYWORD3>paused</KEYWORD3>\r
+ <KEYWORD3>pingservers</KEYWORD3>\r
+ <KEYWORD3>play</KEYWORD3>\r
+ <KEYWORD3>playerlist</KEYWORD3>\r
+ <KEYWORD3>players</KEYWORD3>\r
+ <KEYWORD3>port</KEYWORD3>\r
+ <KEYWORD3>precache</KEYWORD3>\r
+ <KEYWORD3>prog</KEYWORD3>\r
+ <KEYWORD3>protocol</KEYWORD3>\r
+ <KEYWORD3>public</KEYWORD3>\r
+ <KEYWORD3>qport</KEYWORD3>\r
+ <KEYWORD3>quit</KEYWORD3>\r
+ <KEYWORD3>r_drawentities</KEYWORD3>\r
+ <KEYWORD3>r_drawworld</KEYWORD3>\r
+ <KEYWORD3>r_dspeeds</KEYWORD3>\r
+ <KEYWORD3>r_fullbright</KEYWORD3>\r
+ <KEYWORD3>r_lerpmodels</KEYWORD3>\r
+ <KEYWORD3>r_lightlevel</KEYWORD3>\r
+ <KEYWORD3>r_nocull</KEYWORD3>\r
+ <KEYWORD3>r_norefresh</KEYWORD3>\r
+ <KEYWORD3>r_novis</KEYWORD3>\r
+ <KEYWORD3>r_speeds</KEYWORD3>\r
+ <KEYWORD3>rate</KEYWORD3>\r
+ <KEYWORD3>rcon</KEYWORD3>\r
+ <KEYWORD3>rcon_address</KEYWORD3>\r
+ <KEYWORD3>rcon_password</KEYWORD3>\r
+ <KEYWORD3>reconnect</KEYWORD3>\r
+ <KEYWORD3>record</KEYWORD3>\r
+ <KEYWORD3>run_pitch</KEYWORD3>\r
+ <KEYWORD3>run_roll</KEYWORD3>\r
+ <KEYWORD3>s_initsound</KEYWORD3>\r
+ <KEYWORD3>s_khz</KEYWORD3>\r
+ <KEYWORD3>s_loadas8bit</KEYWORD3>\r
+ <KEYWORD3>s_mixahead</KEYWORD3>\r
+ <KEYWORD3>s_primary</KEYWORD3>\r
+ <KEYWORD3>s_show</KEYWORD3>\r
+ <KEYWORD3>s_testsound</KEYWORD3>\r
+ <KEYWORD3>s_volume</KEYWORD3>\r
+ <KEYWORD3>s_wavonly</KEYWORD3>\r
+ <KEYWORD3>save</KEYWORD3>\r
+ <KEYWORD3>say</KEYWORD3>\r
+ <KEYWORD3>say_team</KEYWORD3>\r
+ <KEYWORD3>score</KEYWORD3>\r
+ <KEYWORD3>scr_centertime</KEYWORD3>\r
+ <KEYWORD3>scr_conspeed</KEYWORD3>\r
+ <KEYWORD3>scr_drawall</KEYWORD3>\r
+ <KEYWORD3>scr_printspeed</KEYWORD3>\r
+ <KEYWORD3>scr_showpause</KEYWORD3>\r
+ <KEYWORD3>scr_showturtle</KEYWORD3>\r
+ <KEYWORD3>screenshot</KEYWORD3>\r
+ <KEYWORD3>sensitivity</KEYWORD3>\r
+ <KEYWORD3>serverinfo</KEYWORD3>\r
+ <KEYWORD3>serverrecord</KEYWORD3>\r
+ <KEYWORD3>serverstop</KEYWORD3>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD3>setenv</KEYWORD3>\r
+ <KEYWORD3>setmaster</KEYWORD3>\r
+ <KEYWORD3>showclamp</KEYWORD3>\r
+ <KEYWORD3>showdrop</KEYWORD3>\r
+ <KEYWORD3>showpackets</KEYWORD3>\r
+ <KEYWORD3>showtrace</KEYWORD3>\r
+ <KEYWORD3>sizedown</KEYWORD3>\r
+ <KEYWORD3>sizeup</KEYWORD3>\r
+ <KEYWORD3>skill</KEYWORD3>\r
+ <KEYWORD3>skin</KEYWORD3>\r
+ <KEYWORD3>skins</KEYWORD3>\r
+ <KEYWORD3>sky</KEYWORD3>\r
+ <KEYWORD3>snd_restart</KEYWORD3>\r
+ <KEYWORD3>soundinfo</KEYWORD3>\r
+ <KEYWORD3>soundlist</KEYWORD3>\r
+ <KEYWORD3>spectator</KEYWORD3>\r
+ <KEYWORD3>spectator_password</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+ <KEYWORD3>stop</KEYWORD3>\r
+ <KEYWORD3>stopsound</KEYWORD3>\r
+ <KEYWORD3>sv</KEYWORD3>\r
+ <KEYWORD3>sv_airaccelerate</KEYWORD3>\r
+ <KEYWORD3>sv_enforcetime</KEYWORD3>\r
+ <KEYWORD3>sv_gravity</KEYWORD3>\r
+ <KEYWORD3>sv_maplist</KEYWORD3>\r
+ <KEYWORD3>sv_maxvelocity</KEYWORD3>\r
+ <KEYWORD3>sv_noreload</KEYWORD3>\r
+ <KEYWORD3>sv_reconnect_limit</KEYWORD3>\r
+ <KEYWORD3>sv_rollangle</KEYWORD3>\r
+ <KEYWORD3>sv_rollspeed</KEYWORD3>\r
+ <KEYWORD3>sw_allow_modex</KEYWORD3>\r
+ <KEYWORD3>sw_clearcolor</KEYWORD3>\r
+ <KEYWORD3>sw_drawflat</KEYWORD3>\r
+ <KEYWORD3>sw_draworder</KEYWORD3>\r
+ <KEYWORD3>sw_maxedges</KEYWORD3>\r
+ <KEYWORD3>sw_maxsurfs</KEYWORD3>\r
+ <KEYWORD3>sw_mipcap</KEYWORD3>\r
+ <KEYWORD3>sw_mipscale</KEYWORD3>\r
+ <KEYWORD3>sw_mode</KEYWORD3>\r
+ <KEYWORD3>sw_polymodelstats</KEYWORD3>\r
+ <KEYWORD3>sw_reportedgeout</KEYWORD3>\r
+ <KEYWORD3>sw_reportsurfout</KEYWORD3>\r
+ <KEYWORD3>sw_stipplealpha</KEYWORD3>\r
+ <KEYWORD3>sw_surfcacheoverride</KEYWORD3>\r
+ <KEYWORD3>sw_waterwarp</KEYWORD3>\r
+ <KEYWORD3>timedemo</KEYWORD3>\r
+ <KEYWORD3>timegraph</KEYWORD3>\r
+ <KEYWORD3>timelimit</KEYWORD3>\r
+ <KEYWORD3>timeout</KEYWORD3>\r
+ <KEYWORD3>timerefresh</KEYWORD3>\r
+ <KEYWORD3>timescale</KEYWORD3>\r
+ <KEYWORD3>togglechat</KEYWORD3>\r
+ <KEYWORD3>toggleconsole</KEYWORD3>\r
+ <KEYWORD3>unbind</KEYWORD3>\r
+ <KEYWORD3>unbindall</KEYWORD3>\r
+ <KEYWORD3>use</KEYWORD3>\r
+ <KEYWORD3>userinfo</KEYWORD3>\r
+ <KEYWORD3>v_centermove</KEYWORD3>\r
+ <KEYWORD3>v_centerspeed</KEYWORD3>\r
+ <KEYWORD3>version</KEYWORD3>\r
+ <KEYWORD3>vid_front</KEYWORD3>\r
+ <KEYWORD3>vid_fullscreen</KEYWORD3>\r
+ <KEYWORD3>vid_gamma</KEYWORD3>\r
+ <KEYWORD3>vid_ref</KEYWORD3>\r
+ <KEYWORD3>vid_restart</KEYWORD3>\r
+ <KEYWORD3>vid_xpos</KEYWORD3>\r
+ <KEYWORD3>vid_ypos</KEYWORD3>\r
+ <KEYWORD3>viewpos</KEYWORD3>\r
+ <KEYWORD3>viewsize</KEYWORD3>\r
+ <KEYWORD3>wait</KEYWORD3>\r
+ <KEYWORD3>wave</KEYWORD3>\r
+ <KEYWORD3>weaplast</KEYWORD3>\r
+ <KEYWORD3>weapnext</KEYWORD3>\r
+ <KEYWORD3>weapprev</KEYWORD3>\r
+ <KEYWORD3>win_noalttab</KEYWORD3>\r
+ <KEYWORD3>z_stats</KEYWORD3>\r
+ <KEYWORD1>zombietime</KEYWORD1>\r
+ <KEYWORD4>shift</KEYWORD4>\r
+ <KEYWORD4>ctrl</KEYWORD4>\r
+ <KEYWORD4>space</KEYWORD4>\r
+ <KEYWORD4>tab</KEYWORD4>\r
+ <KEYWORD4>enter</KEYWORD4>\r
+ <KEYWORD4>escape</KEYWORD4>\r
+ <KEYWORD4>F1</KEYWORD4>\r
+ <KEYWORD4>F2</KEYWORD4>\r
+ <KEYWORD4>F3</KEYWORD4>\r
+ <KEYWORD4>F4</KEYWORD4>\r
+ <KEYWORD4>F5</KEYWORD4>\r
+ <KEYWORD4>F6</KEYWORD4>\r
+ <KEYWORD4>F7</KEYWORD4>\r
+ <KEYWORD4>F8</KEYWORD4>\r
+ <KEYWORD4>F9</KEYWORD4>\r
+ <KEYWORD4>F10</KEYWORD4>\r
+ <KEYWORD4>F11</KEYWORD4>\r
+ <KEYWORD4>F12</KEYWORD4>\r
+ <KEYWORD4>INS</KEYWORD4>\r
+ <KEYWORD4>DEL</KEYWORD4>\r
+ <KEYWORD4>PGUP</KEYWORD4>\r
+ <KEYWORD4>PGDN</KEYWORD4>\r
+ <KEYWORD4>HOME</KEYWORD4>\r
+ <KEYWORD4>END</KEYWORD4>\r
+ <KEYWORD4>MOUSE1</KEYWORD4>\r
+ <KEYWORD4>MOUSE2</KEYWORD4>\r
+ <KEYWORD4>uparrow</KEYWORD4>\r
+ <KEYWORD4>downarrow</KEYWORD4>\r
+ <KEYWORD4>leftarrow</KEYWORD4>\r
+ <KEYWORD4>rightarrow</KEYWORD4>\r
+ <KEYWORD4>mwheelup</KEYWORD4>\r
+ <KEYWORD4>mwheeldown</KEYWORD4>\r
+ <KEYWORD4>backspace</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!--\r
+ **\r
+ ** Pilrc *.prc highlight rules for jEdit\r
+ **\r
+ ** Marcin Orlowski - carlos@wfmh.org.pl\r
+ **\r
+ ** v1.0 (2006.04.25)\r
+ **\r
+-->\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <!--\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ -->\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE">\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ </RULES>\r
+\r
+\r
+ <RULES>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ </RULES>\r
+\r
+\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="TRUE">\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="RCP_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <FUNCTION>ALERT</FUNCTION>\r
+ <FUNCTION>APPLICATION</FUNCTION>\r
+ <FUNCTION>APPLICATIONICONNAME</FUNCTION>\r
+ <FUNCTION>AREA</FUNCTION>\r
+ <FUNCTION>BITMAP</FUNCTION>\r
+ <FUNCTION>BITMAPCOLOR</FUNCTION>\r
+ <FUNCTION>BITMAPCOLOR16</FUNCTION>\r
+ <FUNCTION>BITMAPCOLOR16K</FUNCTION>\r
+ <FUNCTION>BITMAPFAMILY</FUNCTION>\r
+ <FUNCTION>BITMAPFAMILYEX</FUNCTION>\r
+ <FUNCTION>BITMAPFAMILYSPECIAL</FUNCTION>\r
+ <FUNCTION>BITMAPGREY</FUNCTION>\r
+ <FUNCTION>BITMAPGREY16</FUNCTION>\r
+ <FUNCTION>BITMAPSCREENFAMILY</FUNCTION>\r
+ <FUNCTION>BOOTSCREENFAMILY</FUNCTION>\r
+ <FUNCTION>BUTTON</FUNCTION>\r
+ <FUNCTION>BUTTONS</FUNCTION>\r
+ <FUNCTION>BYTELIST</FUNCTION>\r
+ <FUNCTION>CATEGORIES</FUNCTION>\r
+ <FUNCTION>CHECKBOX</FUNCTION>\r
+ <FUNCTION>COUNTRYLOCALISATION</FUNCTION>\r
+ <FUNCTION>DATA</FUNCTION>\r
+ <FUNCTION>FEATURE</FUNCTION>\r
+ <FUNCTION>FIELD</FUNCTION>\r
+ <FUNCTION>FONTINDEX</FUNCTION>\r
+ <FUNCTION>FORM</FUNCTION>\r
+ <FUNCTION>FORMBITMAP</FUNCTION>\r
+ <FUNCTION>GADGET</FUNCTION>\r
+ <FUNCTION>GENERATEHEADER</FUNCTION>\r
+ <FUNCTION>GRAFFITIINPUTAREA</FUNCTION>\r
+ <FUNCTION>GRAFFITISTATEINDICATOR</FUNCTION>\r
+ <FUNCTION>HEX</FUNCTION>\r
+ <FUNCTION>ICON</FUNCTION>\r
+ <FUNCTION>ICONFAMILY</FUNCTION>\r
+ <FUNCTION>ICONFAMILYEX</FUNCTION>\r
+ <FUNCTION>INTEGER</FUNCTION>\r
+ <FUNCTION>KEYBOARD</FUNCTION>\r
+ <FUNCTION>LABEL</FUNCTION>\r
+ <FUNCTION>LAUNCHERCATEGORY</FUNCTION>\r
+ <FUNCTION>LIST</FUNCTION>\r
+ <FUNCTION>LONGWORDLIST</FUNCTION>\r
+ <FUNCTION>MENU</FUNCTION>\r
+ <FUNCTION>MENUITEM</FUNCTION>\r
+ <FUNCTION>MESSAGE</FUNCTION>\r
+ <FUNCTION>MIDI</FUNCTION>\r
+ <FUNCTION>NOGRAFFITISTATEINDICATOR</FUNCTION>\r
+ <FUNCTION>PALETTETABLE</FUNCTION>\r
+ <FUNCTION>POPUPLIST</FUNCTION>\r
+ <FUNCTION>POPUPTRIGGER</FUNCTION>\r
+ <FUNCTION>PULLDOWN</FUNCTION>\r
+ <FUNCTION>PUSHBUTTON</FUNCTION>\r
+ <FUNCTION>REPEATBUTTON</FUNCTION>\r
+ <FUNCTION>RESETAUTOID</FUNCTION>\r
+ <FUNCTION>SCROLLBAR</FUNCTION>\r
+ <FUNCTION>SELECTORTRIGGER</FUNCTION>\r
+ <FUNCTION>SLIDER</FUNCTION>\r
+ <FUNCTION>SMALLICON</FUNCTION>\r
+ <FUNCTION>SMALLICONFAMILY</FUNCTION>\r
+ <FUNCTION>SMALLICONFAMILYEX</FUNCTION>\r
+ <FUNCTION>STRING</FUNCTION>\r
+ <FUNCTION>STRINGTABLE</FUNCTION>\r
+ <FUNCTION>TABLE</FUNCTION>\r
+ <FUNCTION>TITLE</FUNCTION>\r
+ <FUNCTION>TRANSLATION</FUNCTION>\r
+ <FUNCTION>TRAP</FUNCTION>\r
+ <FUNCTION>VERSION</FUNCTION>\r
+ <FUNCTION>WORDLIST</FUNCTION>\r
+\r
+ <KEYWORD1>PREVTOP</KEYWORD1>\r
+ <KEYWORD1>PREVBOTTOM</KEYWORD1>\r
+ <KEYWORD1>PREVLEFT</KEYWORD1>\r
+ <KEYWORD1>PREVRIGHT</KEYWORD1>\r
+ <KEYWORD1>AUTO</KEYWORD1>\r
+ <KEYWORD1>AUTOID</KEYWORD1>\r
+\r
+ <KEYWORD2>AT</KEYWORD2>\r
+ <KEYWORD2>AUTOSHIFT</KEYWORD2>\r
+ <KEYWORD2>BACKGROUNDID</KEYWORD2>\r
+ <KEYWORD2>BITMAPID</KEYWORD2>\r
+ <KEYWORD2>BOLDFRAME</KEYWORD2>\r
+ <KEYWORD2>BPP</KEYWORD2>\r
+ <KEYWORD2>CHECKED</KEYWORD2>\r
+ <KEYWORD2>COLORTABLE</KEYWORD2>\r
+ <KEYWORD2>COLUMNS</KEYWORD2>\r
+ <KEYWORD2>COLUMNWIDTHS</KEYWORD2>\r
+ <KEYWORD2>COMPRESS</KEYWORD2>\r
+ <KEYWORD2>COMPRESSBEST</KEYWORD2>\r
+ <KEYWORD2>COMPRESSPACKBITS</KEYWORD2>\r
+ <KEYWORD2>COMPRESSRLE</KEYWORD2>\r
+ <KEYWORD2>COMPRESSSCANLINE</KEYWORD2>\r
+ <KEYWORD2>CONFIRMATION</KEYWORD2>\r
+ <KEYWORD2>COUNTRY</KEYWORD2>\r
+ <KEYWORD2>CREATOR</KEYWORD2>\r
+ <KEYWORD2>CURRENCYDECIMALPLACES</KEYWORD2>\r
+ <KEYWORD2>CURRENCYNAME</KEYWORD2>\r
+ <KEYWORD2>CURRENCYSYMBOL</KEYWORD2>\r
+ <KEYWORD2>CURRENCYUNIQUESYMBOL</KEYWORD2>\r
+ <KEYWORD2>DATEFORMAT</KEYWORD2>\r
+ <KEYWORD2>DAYLIGHTSAVINGS</KEYWORD2>\r
+ <KEYWORD2>DEFAULTBTNID</KEYWORD2>\r
+ <KEYWORD2>DEFAULTBUTTON</KEYWORD2>\r
+ <KEYWORD2>DENSITY</KEYWORD2>\r
+ <KEYWORD2>DISABLED</KEYWORD2>\r
+ <KEYWORD2>DYNAMICSIZE</KEYWORD2>\r
+ <KEYWORD2>EDITABLE</KEYWORD2>\r
+ <KEYWORD2>ENTRY</KEYWORD2>\r
+ <KEYWORD2>ERROR</KEYWORD2>\r
+ <KEYWORD2>EXTENDED</KEYWORD2>\r
+ <KEYWORD2>FEEDBACK</KEYWORD2>\r
+ <KEYWORD2>FILE</KEYWORD2>\r
+ <KEYWORD2>FONTID</KEYWORD2>\r
+ <KEYWORD2>FORCECOMPRESS</KEYWORD2>\r
+ <KEYWORD2>FRAME</KEYWORD2>\r
+ <KEYWORD2>GRAFFITI</KEYWORD2>\r
+ <KEYWORD2>GRAPHICAL</KEYWORD2>\r
+ <KEYWORD2>GROUP</KEYWORD2>\r
+ <KEYWORD2>HASSCROLLBAR</KEYWORD2>\r
+ <KEYWORD2>HELPID</KEYWORD2>\r
+ <KEYWORD2>ID</KEYWORD2>\r
+ <KEYWORD2>INDEX</KEYWORD2>\r
+ <KEYWORD2>INFORMATION</KEYWORD2>\r
+ <KEYWORD2>KEYDOWNCHR</KEYWORD2>\r
+ <KEYWORD2>KEYDOWNKEYCODE</KEYWORD2>\r
+ <KEYWORD2>KEYDOWNMODIFIERS</KEYWORD2>\r
+ <KEYWORD2>LANGUAGE</KEYWORD2>\r
+ <KEYWORD2>LEFTALIGN</KEYWORD2>\r
+ <KEYWORD2>LEFTANCHOR</KEYWORD2>\r
+ <KEYWORD2>LONGDATEFORMAT</KEYWORD2>\r
+ <KEYWORD2>MAX</KEYWORD2>\r
+ <KEYWORD2>MAXCHARS</KEYWORD2>\r
+ <KEYWORD2>MEASUREMENTSYSTEM</KEYWORD2>\r
+ <KEYWORD2>MENUID</KEYWORD2>\r
+ <KEYWORD2>MIN</KEYWORD2>\r
+ <KEYWORD2>LOCALE</KEYWORD2>\r
+ <KEYWORD2>MINUTESWESTOFGMT</KEYWORD2>\r
+ <KEYWORD2>MODAL</KEYWORD2>\r
+ <KEYWORD2>MULTIPLELINES</KEYWORD2>\r
+ <KEYWORD2>NAME</KEYWORD2>\r
+ <KEYWORD2>NOCOLORTABLE</KEYWORD2>\r
+ <KEYWORD2>NOCOMPRESS</KEYWORD2>\r
+ <KEYWORD2>NOFRAME</KEYWORD2>\r
+ <KEYWORD2>NONEDITABLE</KEYWORD2>\r
+ <KEYWORD2>NONEXTENDED</KEYWORD2>\r
+ <KEYWORD2>NONUSABLE</KEYWORD2>\r
+ <KEYWORD2>NOSAVEBEHIND</KEYWORD2>\r
+ <KEYWORD2>NUMBER</KEYWORD2>\r
+ <KEYWORD2>NUMBERFORMAT</KEYWORD2>\r
+ <KEYWORD2>NUMERIC</KEYWORD2>\r
+ <KEYWORD2>PAGESIZE</KEYWORD2>\r
+ <KEYWORD2>RECTFRAME</KEYWORD2>\r
+ <KEYWORD2>RIGHTALIGN</KEYWORD2>\r
+ <KEYWORD2>RIGHTANCHOR</KEYWORD2>\r
+ <KEYWORD2>ROWS</KEYWORD2>\r
+ <KEYWORD2>SAVEBEHIND</KEYWORD2>\r
+ <KEYWORD2>SEARCH</KEYWORD2>\r
+ <KEYWORD2>SCREEN</KEYWORD2>\r
+ <KEYWORD2>SELECTEDBITMAPID</KEYWORD2>\r
+ <KEYWORD2>SINGLELINE</KEYWORD2>\r
+ <KEYWORD2>THUMBID</KEYWORD2>\r
+ <KEYWORD2>TRANSPARENTINDEX</KEYWORD2>\r
+ <KEYWORD2>TIMEFORMAT</KEYWORD2>\r
+ <KEYWORD2>UNDERLINED</KEYWORD2>\r
+ <KEYWORD2>USABLE</KEYWORD2>\r
+ <KEYWORD2>VALUE</KEYWORD2>\r
+ <KEYWORD2>VERTICAL</KEYWORD2>\r
+ <KEYWORD2>VISIBLEITEMS</KEYWORD2>\r
+ <KEYWORD2>WARNING</KEYWORD2>\r
+ <KEYWORD2>WEEKSTARTDAY</KEYWORD2>\r
+\r
+ <KEYWORD2>FONT</KEYWORD2>\r
+ <!-- FONT ID -->\r
+ <KEYWORD2>TRANSPARENT</KEYWORD2>\r
+\r
+ <KEYWORD3>BEGIN</KEYWORD3>\r
+ <KEYWORD3>END</KEYWORD3>\r
+\r
+ <!-- Language constructs (24) -->\r
+ <KEYWORD4>#include</KEYWORD4>\r
+ <KEYWORD4>#define</KEYWORD4>\r
+ <KEYWORD4>equ</KEYWORD4>\r
+ <KEYWORD4>#undef</KEYWORD4>\r
+ <KEYWORD4>#ifdef</KEYWORD4>\r
+ <KEYWORD4>#ifndef</KEYWORD4>\r
+ <KEYWORD4>#else</KEYWORD4>\r
+ <KEYWORD4>#endif</KEYWORD4>\r
+\r
+ <KEYWORD4>package</KEYWORD4>\r
+ <!-- syn region pilrcInclude start="public class" end="}" -->\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="RCP_LITERAL" ESCAPE="\" DEFAULT="LITERAL1">\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">$</MARK_FOLLOWING>\r
+ <SEQ TYPE="LITERAL1">\</SEQ>\r
+ <SEQ TYPE="LITERAL1">=</SEQ>\r
+ <SEQ TYPE="LITERAL1">!</SEQ>\r
+ <SEQ TYPE="LITERAL1">=</SEQ>\r
+ <SEQ TYPE="LITERAL1">+</SEQ>\r
+ <SEQ TYPE="LITERAL1">-</SEQ>\r
+ <SEQ TYPE="LITERAL1">/</SEQ>\r
+ <SEQ TYPE="LITERAL1">*</SEQ>\r
+ <SEQ TYPE="LITERAL1">%</SEQ>\r
+ <SEQ TYPE="LITERAL1">|</SEQ>\r
+ <SEQ TYPE="LITERAL1">^</SEQ>\r
+ <SEQ TYPE="LITERAL1">~</SEQ>\r
+ <SEQ TYPE="LITERAL1">.</SEQ>\r
+ <SEQ TYPE="LITERAL1">}</SEQ>\r
+ <SEQ TYPE="LITERAL1">{</SEQ>\r
+ <SEQ TYPE="LITERAL1">,</SEQ>\r
+ <SEQ TYPE="LITERAL1">;</SEQ>\r
+ <SEQ TYPE="LITERAL1">]</SEQ>\r
+ <SEQ TYPE="LITERAL1">[</SEQ>\r
+ <SEQ TYPE="LITERAL1">?</SEQ>\r
+ <SEQ TYPE="LITERAL1">@</SEQ>\r
+ <SEQ TYPE="LITERAL1">:</SEQ>\r
+ <SEQ TYPE="LITERAL1">)</SEQ>\r
+ <SEQ TYPE="LITERAL1">'</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0" ?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd"> \r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <KEYWORDS>\r
+ <KEYWORD1>\name</KEYWORD1>\r
+ <KEYWORD1>\alias</KEYWORD1>\r
+ <KEYWORD1>\title</KEYWORD1>\r
+ <KEYWORD1>\description</KEYWORD1>\r
+ <KEYWORD1>\synopsis</KEYWORD1>\r
+ <KEYWORD1>\usage</KEYWORD1>\r
+ <KEYWORD1>\arguments</KEYWORD1>\r
+ <KEYWORD1>\details</KEYWORD1>\r
+ <KEYWORD1>\value</KEYWORD1>\r
+ <KEYWORD1>\references</KEYWORD1>\r
+ <KEYWORD1>\note</KEYWORD1>\r
+ <KEYWORD1>\author</KEYWORD1>\r
+ <KEYWORD1>\seealso</KEYWORD1>\r
+ <KEYWORD1>\examples</KEYWORD1>\r
+ <KEYWORD1>\keyword</KEYWORD1>\r
+ <KEYWORD2>\itemize</KEYWORD2>\r
+ <KEYWORD2>\method</KEYWORD2>\r
+ <KEYWORD2>\docType</KEYWORD2>\r
+ <KEYWORD2>\format</KEYWORD2>\r
+ <KEYWORD2>\source</KEYWORD2>\r
+ <KEYWORD2>\itemize</KEYWORD2>\r
+ <KEYWORD2>\section</KEYWORD2>\r
+ <KEYWORD2>\enumerate</KEYWORD2>\r
+ <KEYWORD2>\describe</KEYWORD2>\r
+ <KEYWORD2>\tabular</KEYWORD2>\r
+ <KEYWORD2>\link</KEYWORD2>\r
+ <KEYWORD2>\item</KEYWORD2>\r
+ <KEYWORD2>\eqn</KEYWORD2>\r
+ <KEYWORD2>\deqn</KEYWORD2>\r
+ <KEYWORD2>\concept</KEYWORD2>\r
+ <KEYWORD3>\emph</KEYWORD3>\r
+ <KEYWORD3>\strong</KEYWORD3>\r
+ <KEYWORD3>\bold</KEYWORD3>\r
+ <KEYWORD3>\sQuote</KEYWORD3>\r
+ <KEYWORD3>\dQuote</KEYWORD3>\r
+ <KEYWORD3>\code</KEYWORD3>\r
+ <KEYWORD3>\preformatted</KEYWORD3>\r
+ <KEYWORD3>\kbd</KEYWORD3>\r
+ <KEYWORD3>\samp</KEYWORD3>\r
+ <KEYWORD3>\pkg</KEYWORD3>\r
+ <KEYWORD3>\file</KEYWORD3>\r
+ <KEYWORD3>\email</KEYWORD3>\r
+ <KEYWORD3>\url</KEYWORD3>\r
+ <KEYWORD3>\var</KEYWORD3>\r
+ <KEYWORD3>\env</KEYWORD3>\r
+ <KEYWORD3>\option</KEYWORD3>\r
+ <KEYWORD3>\command</KEYWORD3>\r
+ <KEYWORD3>\dfn</KEYWORD3>\r
+ <KEYWORD3>\cite</KEYWORD3>\r
+ <KEYWORD3>\acronym</KEYWORD3>\r
+ <KEYWORD3>\tab</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{[(" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}])" />\r
+ <PROPERTY NAME="commentStart" VALUE="comment {" />\r
+ <PROPERTY NAME="commentEnd" VALUE="}" />\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ <PROPERTY NAME="noWordSep" VALUE="_-" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>comment {</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>comment{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2" MATCH_TYPE="OPERATOR">'</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abs</KEYWORD1>\r
+ <KEYWORD1>absolute</KEYWORD1>\r
+ <KEYWORD1>add</KEYWORD1>\r
+ <KEYWORD1>and~</KEYWORD1>\r
+ <KEYWORD1>at</KEYWORD1>\r
+ <KEYWORD1>back</KEYWORD1>\r
+ <KEYWORD1>change</KEYWORD1>\r
+ <KEYWORD1>clear</KEYWORD1>\r
+ <KEYWORD1>complement</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>cp</KEYWORD1>\r
+ <KEYWORD1>divide</KEYWORD1>\r
+ <KEYWORD1>fifth</KEYWORD1>\r
+ <KEYWORD1>find</KEYWORD1>\r
+ <KEYWORD1>first</KEYWORD1>\r
+ <KEYWORD1>fourth</KEYWORD1>\r
+ <KEYWORD1>head</KEYWORD1>\r
+ <KEYWORD1>insert</KEYWORD1>\r
+ <KEYWORD1>last</KEYWORD1>\r
+ <KEYWORD1>make</KEYWORD1>\r
+ <KEYWORD1>max</KEYWORD1>\r
+ <KEYWORD1>maximum</KEYWORD1>\r
+ <KEYWORD1>min</KEYWORD1>\r
+ <KEYWORD1>minimum</KEYWORD1>\r
+ <KEYWORD1>multiply</KEYWORD1>\r
+ <KEYWORD1>negate</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>or~</KEYWORD1>\r
+ <KEYWORD1>pick</KEYWORD1>\r
+ <KEYWORD1>poke</KEYWORD1>\r
+ <KEYWORD1>power</KEYWORD1>\r
+ <KEYWORD1>random</KEYWORD1>\r
+ <KEYWORD1>remainder</KEYWORD1>\r
+ <KEYWORD1>remove</KEYWORD1>\r
+ <KEYWORD1>second</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>skip</KEYWORD1>\r
+ <KEYWORD1>sort</KEYWORD1>\r
+ <KEYWORD1>subtract</KEYWORD1>\r
+ <KEYWORD1>tail</KEYWORD1>\r
+ <KEYWORD1>third</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>trim</KEYWORD1>\r
+ <KEYWORD1>xor~</KEYWORD1>\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>all</KEYWORD1>\r
+ <KEYWORD1>any</KEYWORD1>\r
+ <KEYWORD1>arccosine</KEYWORD1>\r
+ <KEYWORD1>arcsine</KEYWORD1>\r
+ <KEYWORD1>arctangent</KEYWORD1>\r
+ <KEYWORD1>bind</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>browse</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>caret-to-offset</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>checksum</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>comment</KEYWORD1>\r
+ <KEYWORD1>compose</KEYWORD1>\r
+ <KEYWORD1>compress</KEYWORD1>\r
+ <KEYWORD1>cosine</KEYWORD1>\r
+ <KEYWORD1>debase</KEYWORD1>\r
+ <KEYWORD1>decompress</KEYWORD1>\r
+ <KEYWORD1>dehex</KEYWORD1>\r
+ <KEYWORD1>detab</KEYWORD1>\r
+ <KEYWORD1>dh-compute-key</KEYWORD1>\r
+ <KEYWORD1>dh-generate-key</KEYWORD1>\r
+ <KEYWORD1>dh-make-key</KEYWORD1>\r
+ <KEYWORD1>difference</KEYWORD1>\r
+ <KEYWORD1>disarm</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>dsa-generate-key</KEYWORD1>\r
+ <KEYWORD1>dsa-make-key</KEYWORD1>\r
+ <KEYWORD1>dsa-make-signature</KEYWORD1>\r
+ <KEYWORD1>dsa-verify-signature</KEYWORD1>\r
+ <KEYWORD1>either</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>enbase</KEYWORD1>\r
+ <KEYWORD1>entab</KEYWORD1>\r
+ <KEYWORD1>exclude</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>exp</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>form</KEYWORD1>\r
+ <KEYWORD1>free</KEYWORD1>\r
+ <KEYWORD1>get</KEYWORD1>\r
+ <KEYWORD1>get-modes</KEYWORD1>\r
+ <KEYWORD1>halt</KEYWORD1>\r
+ <KEYWORD1>hide</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>intersect</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>log-10</KEYWORD1>\r
+ <KEYWORD1>log-2</KEYWORD1>\r
+ <KEYWORD1>log-e</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>lowercase</KEYWORD1>\r
+ <KEYWORD1>maximum-of</KEYWORD1>\r
+ <KEYWORD1>minimum-of</KEYWORD1>\r
+ <KEYWORD1>mold</KEYWORD1>\r
+ <KEYWORD1>not</KEYWORD1>\r
+ <KEYWORD1>now</KEYWORD1>\r
+ <KEYWORD1>offset-to-caret</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>parse</KEYWORD1>\r
+ <KEYWORD1>prin</KEYWORD1>\r
+ <KEYWORD1>print</KEYWORD1>\r
+ <KEYWORD1>protect</KEYWORD1>\r
+ <KEYWORD1>q</KEYWORD1>\r
+ <KEYWORD1>query</KEYWORD1>\r
+ <KEYWORD1>quit</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>read-io</KEYWORD1>\r
+ <KEYWORD1>recycle</KEYWORD1>\r
+ <KEYWORD1>reduce</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>reverse</KEYWORD1>\r
+ <KEYWORD1>rsa-encrypt</KEYWORD1>\r
+ <KEYWORD1>rsa-generate-key</KEYWORD1>\r
+ <KEYWORD1>rsa-make-key</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>secure</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>set-modes</KEYWORD1>\r
+ <KEYWORD1>show</KEYWORD1>\r
+ <KEYWORD1>sine</KEYWORD1>\r
+ <KEYWORD1>size-text</KEYWORD1>\r
+ <KEYWORD1>square-root</KEYWORD1>\r
+ <KEYWORD1>tangent</KEYWORD1>\r
+ <KEYWORD1>textinfo</KEYWORD1>\r
+ <KEYWORD1>throw</KEYWORD1>\r
+ <KEYWORD1>to-hex</KEYWORD1>\r
+ <KEYWORD1>to-local-file</KEYWORD1>\r
+ <KEYWORD1>to-rebol-file</KEYWORD1>\r
+ <KEYWORD1>trace</KEYWORD1>\r
+ <KEYWORD1>try</KEYWORD1>\r
+ <KEYWORD1>union</KEYWORD1>\r
+ <KEYWORD1>unique</KEYWORD1>\r
+ <KEYWORD1>unprotect</KEYWORD1>\r
+ <KEYWORD1>unset</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>update</KEYWORD1>\r
+ <KEYWORD1>uppercase</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>write</KEYWORD1>\r
+ <KEYWORD1>write-io</KEYWORD1>\r
+ <KEYWORD1>basic-syntax-header</KEYWORD1>\r
+ <KEYWORD1>crlf</KEYWORD1>\r
+ <KEYWORD1>font-fixed</KEYWORD1>\r
+ <KEYWORD1>font-sans-serif</KEYWORD1>\r
+ <KEYWORD1>font-serif</KEYWORD1>\r
+ <KEYWORD1>list-words</KEYWORD1>\r
+ <KEYWORD1>outstr</KEYWORD1>\r
+ <KEYWORD1>val</KEYWORD1>\r
+ <KEYWORD1>value</KEYWORD1>\r
+ <KEYWORD1>about</KEYWORD1>\r
+ <KEYWORD1>alert</KEYWORD1>\r
+ <KEYWORD1>alter</KEYWORD1>\r
+ <KEYWORD1>append</KEYWORD1>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>ask</KEYWORD1>\r
+ <KEYWORD1>boot-prefs</KEYWORD1>\r
+ <KEYWORD1>build-tag</KEYWORD1>\r
+ <KEYWORD1>center-face</KEYWORD1>\r
+ <KEYWORD1>change-dir</KEYWORD1>\r
+ <KEYWORD1>charset</KEYWORD1>\r
+ <KEYWORD1>choose</KEYWORD1>\r
+ <KEYWORD1>clean-path</KEYWORD1>\r
+ <KEYWORD1>clear-fields</KEYWORD1>\r
+ <KEYWORD1>confine</KEYWORD1>\r
+ <KEYWORD1>confirm</KEYWORD1>\r
+ <KEYWORD1>context</KEYWORD1>\r
+ <KEYWORD1>cvs-date</KEYWORD1>\r
+ <KEYWORD1>cvs-version</KEYWORD1>\r
+ <KEYWORD1>decode-cgi</KEYWORD1>\r
+ <KEYWORD1>decode-url</KEYWORD1>\r
+ <KEYWORD1>deflag-face</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <KEYWORD1>demo</KEYWORD1>\r
+ <KEYWORD1>desktop</KEYWORD1>\r
+ <KEYWORD1>dirize</KEYWORD1>\r
+ <KEYWORD1>dispatch</KEYWORD1>\r
+ <KEYWORD1>do-boot</KEYWORD1>\r
+ <KEYWORD1>do-events</KEYWORD1>\r
+ <KEYWORD1>do-face</KEYWORD1>\r
+ <KEYWORD1>do-face-alt</KEYWORD1>\r
+ <KEYWORD1>does</KEYWORD1>\r
+ <KEYWORD1>dump-face</KEYWORD1>\r
+ <KEYWORD1>dump-pane</KEYWORD1>\r
+ <KEYWORD1>echo</KEYWORD1>\r
+ <KEYWORD1>editor</KEYWORD1>\r
+ <KEYWORD1>emailer</KEYWORD1>\r
+ <KEYWORD1>emit</KEYWORD1>\r
+ <KEYWORD1>extract</KEYWORD1>\r
+ <KEYWORD1>find-by-type</KEYWORD1>\r
+ <KEYWORD1>find-key-face</KEYWORD1>\r
+ <KEYWORD1>find-window</KEYWORD1>\r
+ <KEYWORD1>flag-face</KEYWORD1>\r
+ <KEYWORD1>flash</KEYWORD1>\r
+ <KEYWORD1>focus</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>forall</KEYWORD1>\r
+ <KEYWORD1>forever</KEYWORD1>\r
+ <KEYWORD1>forskip</KEYWORD1>\r
+ <KEYWORD1>func</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>get-net-info</KEYWORD1>\r
+ <KEYWORD1>get-style</KEYWORD1>\r
+ <KEYWORD1>has</KEYWORD1>\r
+ <KEYWORD1>help</KEYWORD1>\r
+ <KEYWORD1>hide-popup</KEYWORD1>\r
+ <KEYWORD1>import-email</KEYWORD1>\r
+ <KEYWORD1>inform</KEYWORD1>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD1>insert-event-func</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>launch</KEYWORD1>\r
+ <KEYWORD1>launch-thru</KEYWORD1>\r
+ <KEYWORD1>layout</KEYWORD1>\r
+ <KEYWORD1>license</KEYWORD1>\r
+ <KEYWORD1>list-dir</KEYWORD1>\r
+ <KEYWORD1>load-image</KEYWORD1>\r
+ <KEYWORD1>load-prefs</KEYWORD1>\r
+ <KEYWORD1>load-thru</KEYWORD1>\r
+ <KEYWORD1>make-dir</KEYWORD1>\r
+ <KEYWORD1>make-face</KEYWORD1>\r
+ <KEYWORD1>net-error</KEYWORD1>\r
+ <KEYWORD1>open-events</KEYWORD1>\r
+ <KEYWORD1>parse-email-addrs</KEYWORD1>\r
+ <KEYWORD1>parse-header</KEYWORD1>\r
+ <KEYWORD1>parse-header-date</KEYWORD1>\r
+ <KEYWORD1>parse-xml</KEYWORD1>\r
+ <KEYWORD1>path-thru</KEYWORD1>\r
+ <KEYWORD1>probe</KEYWORD1>\r
+ <KEYWORD1>protect-system</KEYWORD1>\r
+ <KEYWORD1>read-net</KEYWORD1>\r
+ <KEYWORD1>read-thru</KEYWORD1>\r
+ <KEYWORD1>reboot</KEYWORD1>\r
+ <KEYWORD1>reform</KEYWORD1>\r
+ <KEYWORD1>rejoin</KEYWORD1>\r
+ <KEYWORD1>remold</KEYWORD1>\r
+ <KEYWORD1>remove-event-func</KEYWORD1>\r
+ <KEYWORD1>rename</KEYWORD1>\r
+ <KEYWORD1>repend</KEYWORD1>\r
+ <KEYWORD1>replace</KEYWORD1>\r
+ <KEYWORD1>request</KEYWORD1>\r
+ <KEYWORD1>request-color</KEYWORD1>\r
+ <KEYWORD1>request-date</KEYWORD1>\r
+ <KEYWORD1>request-download</KEYWORD1>\r
+ <KEYWORD1>request-file</KEYWORD1>\r
+ <KEYWORD1>request-list</KEYWORD1>\r
+ <KEYWORD1>request-pass</KEYWORD1>\r
+ <KEYWORD1>request-text</KEYWORD1>\r
+ <KEYWORD1>resend</KEYWORD1>\r
+ <KEYWORD1>save-prefs</KEYWORD1>\r
+ <KEYWORD1>save-user</KEYWORD1>\r
+ <KEYWORD1>scroll-para</KEYWORD1>\r
+ <KEYWORD1>send</KEYWORD1>\r
+ <KEYWORD1>set-font</KEYWORD1>\r
+ <KEYWORD1>set-net</KEYWORD1>\r
+ <KEYWORD1>set-para</KEYWORD1>\r
+ <KEYWORD1>set-style</KEYWORD1>\r
+ <KEYWORD1>set-user</KEYWORD1>\r
+ <KEYWORD1>set-user-name</KEYWORD1>\r
+ <KEYWORD1>show-popup</KEYWORD1>\r
+ <KEYWORD1>source</KEYWORD1>\r
+ <KEYWORD1>split-path</KEYWORD1>\r
+ <KEYWORD1>stylize</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>throw-on-error</KEYWORD1>\r
+ <KEYWORD1>to-binary</KEYWORD1>\r
+ <KEYWORD1>to-bitset</KEYWORD1>\r
+ <KEYWORD1>to-block</KEYWORD1>\r
+ <KEYWORD1>to-char</KEYWORD1>\r
+ <KEYWORD1>to-date</KEYWORD1>\r
+ <KEYWORD1>to-decimal</KEYWORD1>\r
+ <KEYWORD1>to-email</KEYWORD1>\r
+ <KEYWORD1>to-event</KEYWORD1>\r
+ <KEYWORD1>to-file</KEYWORD1>\r
+ <KEYWORD1>to-get-word</KEYWORD1>\r
+ <KEYWORD1>to-hash</KEYWORD1>\r
+ <KEYWORD1>to-idate</KEYWORD1>\r
+ <KEYWORD1>to-image</KEYWORD1>\r
+ <KEYWORD1>to-integer</KEYWORD1>\r
+ <KEYWORD1>to-issue</KEYWORD1>\r
+ <KEYWORD1>to-list</KEYWORD1>\r
+ <KEYWORD1>to-lit-path</KEYWORD1>\r
+ <KEYWORD1>to-lit-word</KEYWORD1>\r
+ <KEYWORD1>to-logic</KEYWORD1>\r
+ <KEYWORD1>to-money</KEYWORD1>\r
+ <KEYWORD1>to-none</KEYWORD1>\r
+ <KEYWORD1>to-pair</KEYWORD1>\r
+ <KEYWORD1>to-paren</KEYWORD1>\r
+ <KEYWORD1>to-path</KEYWORD1>\r
+ <KEYWORD1>to-refinement</KEYWORD1>\r
+ <KEYWORD1>to-set-path</KEYWORD1>\r
+ <KEYWORD1>to-set-word</KEYWORD1>\r
+ <KEYWORD1>to-string</KEYWORD1>\r
+ <KEYWORD1>to-tag</KEYWORD1>\r
+ <KEYWORD1>to-time</KEYWORD1>\r
+ <KEYWORD1>to-tuple</KEYWORD1>\r
+ <KEYWORD1>to-url</KEYWORD1>\r
+ <KEYWORD1>to-word</KEYWORD1>\r
+ <KEYWORD1>unfocus</KEYWORD1>\r
+ <KEYWORD1>uninstall</KEYWORD1>\r
+ <KEYWORD1>unview</KEYWORD1>\r
+ <KEYWORD1>upgrade</KEYWORD1>\r
+ <KEYWORD1>Usage</KEYWORD1>\r
+ <KEYWORD1>vbug</KEYWORD1>\r
+ <KEYWORD1>view</KEYWORD1>\r
+ <KEYWORD1>view-install</KEYWORD1>\r
+ <KEYWORD1>view-prefs</KEYWORD1>\r
+ <KEYWORD1>what</KEYWORD1>\r
+ <KEYWORD1>what-dir</KEYWORD1>\r
+ <KEYWORD1>write-user</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>at</KEYWORD1>\r
+ <KEYWORD1>space</KEYWORD1>\r
+ <KEYWORD1>pad</KEYWORD1>\r
+ <KEYWORD1>across</KEYWORD1>\r
+ <KEYWORD1>below</KEYWORD1>\r
+ <KEYWORD1>origin</KEYWORD1>\r
+ <KEYWORD1>guide</KEYWORD1>\r
+ <KEYWORD1>tabs</KEYWORD1>\r
+ <KEYWORD1>indent</KEYWORD1>\r
+ <KEYWORD1>style</KEYWORD1>\r
+ <KEYWORD1>styles</KEYWORD1>\r
+ <KEYWORD1>size</KEYWORD1>\r
+ <KEYWORD1>sense</KEYWORD1>\r
+ <KEYWORD1>backcolor</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>none</KEYWORD1>\r
+ <KEYWORD2>action?</KEYWORD2>\r
+ <KEYWORD2>any-block?</KEYWORD2>\r
+ <KEYWORD2>any-function?</KEYWORD2>\r
+ <KEYWORD2>any-string?</KEYWORD2>\r
+ <KEYWORD2>any-type?</KEYWORD2>\r
+ <KEYWORD2>any-word?</KEYWORD2>\r
+ <KEYWORD2>binary?</KEYWORD2>\r
+ <KEYWORD2>bitset?</KEYWORD2>\r
+ <KEYWORD2>block?</KEYWORD2>\r
+ <KEYWORD2>char?</KEYWORD2>\r
+ <KEYWORD2>datatype?</KEYWORD2>\r
+ <KEYWORD2>date?</KEYWORD2>\r
+ <KEYWORD2>decimal?</KEYWORD2>\r
+ <KEYWORD2>email?</KEYWORD2>\r
+ <KEYWORD2>empty?</KEYWORD2>\r
+ <KEYWORD2>equal?</KEYWORD2>\r
+ <KEYWORD2>error?</KEYWORD2>\r
+ <KEYWORD2>even?</KEYWORD2>\r
+ <KEYWORD2>event?</KEYWORD2>\r
+ <KEYWORD2>file?</KEYWORD2>\r
+ <KEYWORD2>function?</KEYWORD2>\r
+ <KEYWORD2>get-word?</KEYWORD2>\r
+ <KEYWORD2>greater-or-equal?</KEYWORD2>\r
+ <KEYWORD2>greater?</KEYWORD2>\r
+ <KEYWORD2>hash?</KEYWORD2>\r
+ <KEYWORD2>head?</KEYWORD2>\r
+ <KEYWORD2>image?</KEYWORD2>\r
+ <KEYWORD2>index?</KEYWORD2>\r
+ <KEYWORD2>integer?</KEYWORD2>\r
+ <KEYWORD2>issue?</KEYWORD2>\r
+ <KEYWORD2>length?</KEYWORD2>\r
+ <KEYWORD2>lesser-or-equal?</KEYWORD2>\r
+ <KEYWORD2>lesser?</KEYWORD2>\r
+ <KEYWORD2>library?</KEYWORD2>\r
+ <KEYWORD2>list?</KEYWORD2>\r
+ <KEYWORD2>lit-path?</KEYWORD2>\r
+ <KEYWORD2>lit-word?</KEYWORD2>\r
+ <KEYWORD2>logic?</KEYWORD2>\r
+ <KEYWORD2>money?</KEYWORD2>\r
+ <KEYWORD2>native?</KEYWORD2>\r
+ <KEYWORD2>negative?</KEYWORD2>\r
+ <KEYWORD2>none?</KEYWORD2>\r
+ <KEYWORD2>not-equal?</KEYWORD2>\r
+ <KEYWORD2>number?</KEYWORD2>\r
+ <KEYWORD2>object?</KEYWORD2>\r
+ <KEYWORD2>odd?</KEYWORD2>\r
+ <KEYWORD2>op?</KEYWORD2>\r
+ <KEYWORD2>pair?</KEYWORD2>\r
+ <KEYWORD2>paren?</KEYWORD2>\r
+ <KEYWORD2>path?</KEYWORD2>\r
+ <KEYWORD2>port?</KEYWORD2>\r
+ <KEYWORD2>positive?</KEYWORD2>\r
+ <KEYWORD2>refinement?</KEYWORD2>\r
+ <KEYWORD2>routine?</KEYWORD2>\r
+ <KEYWORD2>same?</KEYWORD2>\r
+ <KEYWORD2>series?</KEYWORD2>\r
+ <KEYWORD2>set-path?</KEYWORD2>\r
+ <KEYWORD2>set-word?</KEYWORD2>\r
+ <KEYWORD2>strict-equal?</KEYWORD2>\r
+ <KEYWORD2>strict-not-equal?</KEYWORD2>\r
+ <KEYWORD2>string?</KEYWORD2>\r
+ <KEYWORD2>struct?</KEYWORD2>\r
+ <KEYWORD2>tag?</KEYWORD2>\r
+ <KEYWORD2>tail?</KEYWORD2>\r
+ <KEYWORD2>time?</KEYWORD2>\r
+ <KEYWORD2>tuple?</KEYWORD2>\r
+ <KEYWORD2>unset?</KEYWORD2>\r
+ <KEYWORD2>url?</KEYWORD2>\r
+ <KEYWORD2>word?</KEYWORD2>\r
+ <KEYWORD2>zero?</KEYWORD2>\r
+ <KEYWORD2>connected?</KEYWORD2>\r
+ <KEYWORD2>crypt-strength?</KEYWORD2>\r
+ <KEYWORD2>exists-key?</KEYWORD2>\r
+ <KEYWORD2>input?</KEYWORD2>\r
+ <KEYWORD2>script?</KEYWORD2>\r
+ <KEYWORD2>type?</KEYWORD2>\r
+ <KEYWORD2>value?</KEYWORD2>\r
+ <KEYWORD2>?</KEYWORD2>\r
+ <KEYWORD2>??</KEYWORD2>\r
+ <KEYWORD2>dir?</KEYWORD2>\r
+ <KEYWORD2>exists-thru?</KEYWORD2>\r
+ <KEYWORD2>exists?</KEYWORD2>\r
+ <KEYWORD2>flag-face?</KEYWORD2>\r
+ <KEYWORD2>found?</KEYWORD2>\r
+ <KEYWORD2>in-window?</KEYWORD2>\r
+ <KEYWORD2>info?</KEYWORD2>\r
+ <KEYWORD2>inside?</KEYWORD2>\r
+ <KEYWORD2>link-app?</KEYWORD2>\r
+ <KEYWORD2>link?</KEYWORD2>\r
+ <KEYWORD2>modified?</KEYWORD2>\r
+ <KEYWORD2>offset?</KEYWORD2>\r
+ <KEYWORD2>outside?</KEYWORD2>\r
+ <KEYWORD2>screen-offset?</KEYWORD2>\r
+ <KEYWORD2>size?</KEYWORD2>\r
+ <KEYWORD2>span?</KEYWORD2>\r
+ <KEYWORD2>view?</KEYWORD2>\r
+ <KEYWORD2>viewed?</KEYWORD2>\r
+ <KEYWORD2>win-offset?</KEYWORD2>\r
+ <KEYWORD2>within?</KEYWORD2>\r
+ <KEYWORD3>action!</KEYWORD3>\r
+ <KEYWORD3>any-block!</KEYWORD3>\r
+ <KEYWORD3>any-function!</KEYWORD3>\r
+ <KEYWORD3>any-string!</KEYWORD3>\r
+ <KEYWORD3>any-type!</KEYWORD3>\r
+ <KEYWORD3>any-word!</KEYWORD3>\r
+ <KEYWORD3>binary!</KEYWORD3>\r
+ <KEYWORD3>bitset!</KEYWORD3>\r
+ <KEYWORD3>block!</KEYWORD3>\r
+ <KEYWORD3>char!</KEYWORD3>\r
+ <KEYWORD3>datatype!</KEYWORD3>\r
+ <KEYWORD3>date!</KEYWORD3>\r
+ <KEYWORD3>decimal!</KEYWORD3>\r
+ <KEYWORD3>email!</KEYWORD3>\r
+ <KEYWORD3>error!</KEYWORD3>\r
+ <KEYWORD3>event!</KEYWORD3>\r
+ <KEYWORD3>file!</KEYWORD3>\r
+ <KEYWORD3>function!</KEYWORD3>\r
+ <KEYWORD3>get-word!</KEYWORD3>\r
+ <KEYWORD3>hash!</KEYWORD3>\r
+ <KEYWORD3>image!</KEYWORD3>\r
+ <KEYWORD3>integer!</KEYWORD3>\r
+ <KEYWORD3>issue!</KEYWORD3>\r
+ <KEYWORD3>library!</KEYWORD3>\r
+ <KEYWORD3>list!</KEYWORD3>\r
+ <KEYWORD3>lit-path!</KEYWORD3>\r
+ <KEYWORD3>lit-word!</KEYWORD3>\r
+ <KEYWORD3>logic!</KEYWORD3>\r
+ <KEYWORD3>money!</KEYWORD3>\r
+ <KEYWORD3>native!</KEYWORD3>\r
+ <KEYWORD3>none!</KEYWORD3>\r
+ <KEYWORD3>number!</KEYWORD3>\r
+ <KEYWORD3>object!</KEYWORD3>\r
+ <KEYWORD3>op!</KEYWORD3>\r
+ <KEYWORD3>pair!</KEYWORD3>\r
+ <KEYWORD3>paren!</KEYWORD3>\r
+ <KEYWORD3>path!</KEYWORD3>\r
+ <KEYWORD3>port!</KEYWORD3>\r
+ <KEYWORD3>refinement!</KEYWORD3>\r
+ <KEYWORD3>routine!</KEYWORD3>\r
+ <KEYWORD3>series!</KEYWORD3>\r
+ <KEYWORD3>set-path!</KEYWORD3>\r
+ <KEYWORD3>set-word!</KEYWORD3>\r
+ <KEYWORD3>string!</KEYWORD3>\r
+ <KEYWORD3>struct!</KEYWORD3>\r
+ <KEYWORD3>symbol!</KEYWORD3>\r
+ <KEYWORD3>tag!</KEYWORD3>\r
+ <KEYWORD3>time!</KEYWORD3>\r
+ <KEYWORD3>tuple!</KEYWORD3>\r
+ <KEYWORD3>unset!</KEYWORD3>\r
+ <KEYWORD3>url!</KEYWORD3>\r
+ <KEYWORD3>word!</KEYWORD3>\r
+\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>self</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+\r
+ redcode syntax highlighting file for jedit\r
+\r
+ Will Varfar, 2002\r
+\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=";" />\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" DEFAULT="MARKUP" IGNORE_CASE="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">;redcode</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;author</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;name</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;strategy</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">;password</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+\r
+ <SEQ TYPE="KEYWORD3">.AB</SEQ> <!-- Instructions read the A-field of the A-instruction and the B-field of the B-instruction and write to B-fields. -->\r
+ <SEQ TYPE="KEYWORD3">.BA</SEQ> <!-- Instructions read the B-field of the A-instruction and the A-field of the B-instruction and write to A-fields. -->\r
+ <SEQ TYPE="KEYWORD3">.A</SEQ> <!--Instructions read and write A-fields. -->\r
+ <SEQ TYPE="KEYWORD3">.B</SEQ> <!-- Instructions read and write B-fields. -->\r
+ <SEQ TYPE="KEYWORD3">.F</SEQ> <!-- Instructions read both A- and B-fields of the the A- and B-instruction and write to both A- and B-fields (A to A and B to B). -->\r
+ <SEQ TYPE="KEYWORD3">.X</SEQ> <!-- Instructions read both A- and B-fields of the the A- and B-instruction and write to both A- and B-fields exchanging fields (A to B and B to A). -->\r
+ <SEQ TYPE="KEYWORD3">.I</SEQ> <!-- Instructions read and write entire instructions. -->\r
+\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Arithmetic: -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ> <!-- addition or unary plus -->\r
+ <SEQ TYPE="OPERATOR">-</SEQ> <!-- subtraction or unary minus -->\r
+ <SEQ TYPE="OPERATOR">/</SEQ> <!-- division -->\r
+ <SEQ TYPE="OPERATOR">%</SEQ> <!-- modulo (remainder of division) -->\r
+\r
+ <!-- Comparison (*): -->\r
+ <SEQ TYPE="OPERATOR">==</SEQ> <!-- equality -->\r
+ <SEQ TYPE="OPERATOR">!=</SEQ> <!-- inequality -->\r
+ <SEQ TYPE="OPERATOR"><=</SEQ> <!-- less than or equal -->\r
+ <SEQ TYPE="OPERATOR">>=</SEQ> <!-- greater than or equal -->\r
+ <SEQ TYPE="OPERATOR"><</SEQ> <!-- less than -->\r
+ <SEQ TYPE="OPERATOR">></SEQ> <!-- greater than -->\r
+\r
+ <!-- Logical (*): -->\r
+ <SEQ TYPE="OPERATOR">&&</SEQ> <!-- and -->\r
+ <SEQ TYPE="OPERATOR">||</SEQ> <!-- or -->\r
+ <SEQ TYPE="OPERATOR">!</SEQ> <!-- unary negation -->\r
+\r
+ <!-- Assignment (*): -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ> <!-- (to register variables a..z) -->\r
+\r
+\r
+ <SEQ TYPE="LITERAL1">$</SEQ>\r
+ <SEQ TYPE="LITERAL1">@</SEQ>\r
+ <SEQ TYPE="LITERAL1">#</SEQ>\r
+ <SEQ TYPE="LITERAL1">*</SEQ>\r
+ <SEQ TYPE="LITERAL1">{</SEQ>\r
+ <SEQ TYPE="LITERAL1">}</SEQ>\r
+\r
+ <KEYWORDS>\r
+\r
+ <LITERAL2>CORESIZE</LITERAL2> <!-- value of -s parameter (default: 8000) -->\r
+ <LITERAL2>MAXPROCESSES</LITERAL2> <!-- value of -p parameter (default: 8000) -->\r
+ <LITERAL2>MAXCYCLES</LITERAL2> <!-- value of -c parameter (default: 80000) -->\r
+ <LITERAL2>MAXLENGTH</LITERAL2> <!-- value of -l parameter (default: 100) -->\r
+ <LITERAL2>MINDISTANCE</LITERAL2> <!-- value of -d parameter (default: 100) -->\r
+ <LITERAL2>ROUNDS</LITERAL2> <!-- (+) value of -r parameter (default: 1) -->\r
+ <LITERAL2>PSPACESIZE</LITERAL2> <!-- (+) value of -S parameter (default: 1/16th CORESIZE) -->\r
+ <LITERAL2>CURLINE</LITERAL2> <!-- current line in generated assembly (starts with 0) -->\r
+ <LITERAL2>VERSION</LITERAL2> <!-- pMARS version ("60" is v0.6.0) -->\r
+ <LITERAL2>WARRIORS</LITERAL2> <!-- number of warriors specified on command line -->\r
+\r
+ <KEYWORD1>DAT</KEYWORD1> <!-- terminate process -->\r
+ <KEYWORD1>MOV</KEYWORD1> <!-- move from A to B -->\r
+ <KEYWORD1>ADD</KEYWORD1> <!-- add A to B, store result in B -->\r
+ <KEYWORD1>SUB</KEYWORD1> <!-- subtract A from B, store result in B -->\r
+ <KEYWORD1>MUL</KEYWORD1> <!-- multiply A by B, store result in B -->\r
+ <KEYWORD1>DIV</KEYWORD1> <!-- divide B by A, store result in B if A <> 0, else terminate -->\r
+ <KEYWORD1>MOD</KEYWORD1> <!-- divide B by A, store remainder in B if A <> 0, else terminate -->\r
+ <KEYWORD1>JMP</KEYWORD1> <!-- transfer execution to A -->\r
+ <KEYWORD1>JMZ</KEYWORD1> <!-- transfer execution to A if B is zero -->\r
+ <KEYWORD1>JMN</KEYWORD1> <!-- transfer execution to A if B is non-zero -->\r
+ <KEYWORD1>DJN</KEYWORD1> <!-- decrement B, if B is non-zero, transfer execution to A -->\r
+ <KEYWORD1>SPL</KEYWORD1> <!-- split off process to A -->\r
+ <KEYWORD1>SLT</KEYWORD1> <!-- skip next instruction if A is less than B -->\r
+ <KEYWORD1>CMP</KEYWORD1> <!-- same as SEQ -->\r
+ <KEYWORD1>SEQ</KEYWORD1> <!-- (*) Skip next instruction if A is equal to B -->\r
+ <KEYWORD1>SNE</KEYWORD1> <!-- (*) Skip next instruction if A is not equal to B -->\r
+ <KEYWORD1>NOP</KEYWORD1> <!-- (*) No operation -->\r
+ <KEYWORD1>LDP</KEYWORD1> <!-- (+) Load P-space cell A into core address B -->\r
+ <KEYWORD1>STP</KEYWORD1> <!-- (+) Store A-number into P-space cell B -->\r
+\r
+ <KEYWORD2>EQU</KEYWORD2>\r
+ <KEYWORD2>ORG</KEYWORD2>\r
+ <KEYWORD2>FOR</KEYWORD2>\r
+ <KEYWORD2>ROF</KEYWORD2>\r
+ <KEYWORD2>END</KEYWORD2>\r
+ <KEYWORD2>PIN</KEYWORD2>\r
+ <KEYWORD2>CORESIZE</KEYWORD2> <!-- value of -s parameter (default: 8000) -->\r
+ <KEYWORD2>MAXPROCESSES</KEYWORD2> <!-- value of -p parameter (default: 8000) -->\r
+ <KEYWORD2>MAXCYCLES</KEYWORD2> <!-- value of -c parameter (default: 80000) -->\r
+ <KEYWORD2>MAXLENGTH</KEYWORD2> <!-- value of -l parameter (default: 100) -->\r
+ <KEYWORD2>MINDISTANCE</KEYWORD2> <!-- value of -d parameter (default: 100) -->\r
+ <KEYWORD2>ROUNDS</KEYWORD2> <!-- (+) value of -r parameter (default: 1) -->\r
+ <KEYWORD2>PSPACESIZE</KEYWORD2> <!-- (+) value of -S parameter (default: 1/16th CORESIZE) -->\r
+ <KEYWORD2>CURLINE</KEYWORD2> <!-- current line in generated assembly (starts with 0) -->\r
+ <KEYWORD2>VERSION</KEYWORD2> <!-- pMARS version ("60" is v0.6.0) -->\r
+ <KEYWORD2>WARRIORS</KEYWORD2> <!-- number of warriors specified on command line -->\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
+\r
--- /dev/null
+<?xml version='1.0'?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- RELAX NG Compact Syntax mode, by Randy Hudson. -->\r
+<!-- mode catalog entry:\r
+ \r
+ <MODE NAME="relax-ng-compact" FILE="relax-ng-compact.xml"\r
+ FILE_NAME_GLOB="*.rnc" /> \r
+ -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS> \r
+ \r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ \r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE='LITERAL2'>\r
+ <BEGIN>"""</BEGIN>\r
+ <END>"""</END>\r
+ </SPAN>\r
+ <SPAN TYPE='LITERAL2'>\r
+ <BEGIN>'''</BEGIN>\r
+ <END>'''</END>\r
+ </SPAN>\r
+ \r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">&=</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|=</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ \r
+ <MARK_FOLLOWING TYPE="NULL">\</MARK_FOLLOWING>\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD1>attribute</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>datatypes</KEYWORD1>\r
+ <KEYWORD1>div</KEYWORD1>\r
+ <KEYWORD1>element</KEYWORD1>\r
+ <KEYWORD1>empty</KEYWORD1>\r
+ <KEYWORD1>external</KEYWORD1>\r
+ <KEYWORD1>grammar</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <KEYWORD1>inherit</KEYWORD1>\r
+ <KEYWORD1>list</KEYWORD1>\r
+ <KEYWORD1>mixed</KEYWORD1>\r
+ <KEYWORD1>namespace</KEYWORD1>\r
+ <KEYWORD1>notAllowed</KEYWORD1>\r
+ <KEYWORD1>parent</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+ <KEYWORD2>string</KEYWORD2>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD2>token</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE=".. "/>\r
+ <!-- indent after literal blocks and directives -->\r
+ <PROPERTY NAME="indentNextLines" VALUE=".*::$"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE" ESCAPE="\">\r
+\r
+ <!-- targets -->\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="KEYWORD3">__</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="KEYWORD3">.. _</EOL_SPAN>\r
+\r
+ <!-- section titles -->\r
+ <SEQ_REGEXP HASH_CHAR="===" TYPE="LABEL">={3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="---" TYPE="LABEL">-{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="~~~" TYPE="LABEL">~{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="###" TYPE="LABEL">#{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR='"""' TYPE="LABEL">"{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="^^^" TYPE="LABEL">\^{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="+++" TYPE="LABEL">\+{3,}</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="***" TYPE="LABEL">\*{3,}</SEQ_REGEXP>\r
+\r
+ <!-- replacement -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR=".."\r
+ AT_LINE_START="TRUE"\r
+ TYPE="LITERAL3"\r
+ >\.\.\s\|[^|]+\|</SEQ_REGEXP>\r
+\r
+ <!-- substitution -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="|"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="LITERAL4"\r
+ >\|[^|]+\|</SEQ_REGEXP>\r
+\r
+ <!-- directives: .. name:: -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR=".."\r
+ AT_LINE_START="TRUE"\r
+ TYPE="LITERAL2"\r
+ >\.\.\s[A-z][A-z0-9-_]+::</SEQ_REGEXP>\r
+\r
+ <!-- strong emphasis: **...** -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="**"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD2"\r
+ >\*\*[^*]+\*\*</SEQ_REGEXP>\r
+\r
+ <!-- emphasis: *...* -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="*"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >\*[^\s*][^*]*\*</SEQ_REGEXP>\r
+\r
+ <!-- comments -->\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">.. </EOL_SPAN>\r
+\r
+ <!-- links: `...`_ or `...`__ -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="`"\r
+ TYPE="LABEL"\r
+ >`[A-z0-9]+[^`]+`_{1,2}</SEQ_REGEXP>\r
+\r
+ <!-- footnote reference: [0]_ -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="["\r
+ TYPE="LABEL"\r
+ >\[[0-9]+\]_</SEQ_REGEXP>\r
+\r
+ <!-- footnote reference: [#]_ or [#foo]_ -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="[#"\r
+ TYPE="LABEL"\r
+ >\[#[A-z0-9_]*\]_</SEQ_REGEXP>\r
+\r
+ <!-- footnote reference: [*]_ -->\r
+ <SEQ TYPE="LABEL">[*]_</SEQ>\r
+\r
+ <!-- citation reference: [foo]_ -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="["\r
+ TYPE="LABEL"\r
+ >\[[A-z][A-z0-9_-]*\]_</SEQ_REGEXP>\r
+\r
+ <!-- inline literal: ``...``-->\r
+ <!--<SEQ_REGEXP\r
+ HASH_CHAR="``"\r
+ TYPE="LITERAL1"\r
+ >``[^`]+``</SEQ_REGEXP>-->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>``</BEGIN>\r
+ <END>``</END>\r
+ </SPAN>\r
+\r
+ <!-- interpreted text: `...` -->\r
+ <!--\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="`"\r
+ TYPE="KEYWORD1"\r
+ >`[^`]+`</SEQ_REGEXP>\r
+ -->\r
+ <SPAN TYPE="KEYWORD1">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="```" TYPE="LABEL">`{3,}</SEQ_REGEXP>\r
+\r
+ <!-- :field list: -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR=":"\r
+ TYPE="KEYWORD1"\r
+ >:[A-z][A-z0-9 =\s\t_]*:</SEQ_REGEXP>\r
+\r
+ <!-- table -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="+-"\r
+ TYPE="LABEL"\r
+ >\+-[+-]+</SEQ_REGEXP>\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="+?"\r
+ TYPE="LABEL"\r
+ >\+=[+=]+</SEQ_REGEXP>\r
+\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- RFC mode by Matthieu Casanova -->\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<MODE>\r
+ <RULES HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="FALSE">\r
+ <SEQ_REGEXP HASH_CHAR="[" TYPE="KEYWORD3">\[Page \d+\]</SEQ_REGEXP>\r
+ <SEQ_REGEXP HASH_CHAR="[" TYPE="KEYWORD2">\[RFC\d+\]</SEQ_REGEXP>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <KEYWORDS>\r
+ <!--{{{ Keyword list from RFC2119 -->\r
+ <KEYWORD1>MUST</KEYWORD1>\r
+ <KEYWORD1>MUST NOT</KEYWORD1>\r
+ <KEYWORD1>REQUIRED</KEYWORD1>\r
+ <KEYWORD1>SHALL</KEYWORD1>\r
+ <KEYWORD1>SHALL NOT</KEYWORD1>\r
+ <KEYWORD1>SHOULD</KEYWORD1>\r
+ <KEYWORD1>SHOULD NOT</KEYWORD1>\r
+ <KEYWORD1>RECOMMENDED</KEYWORD1>\r
+ <KEYWORD1>MAY</KEYWORD1>\r
+ <KEYWORD1>OPTIONAL</KEYWORD1> \r
+ <!--}}}-->\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- rhtml (ruby+html) mode -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="commentStart" VALUE="<%#" />\r
+ <PROPERTY NAME="commentEnd" VALUE="%>" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ \r
+ <!-- eRuby comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><%#</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- eRuby assignment -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ruby::MAIN">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- eRuby statement -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ruby::MAIN">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP">\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><%#</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="TAGS_LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="TAGS_LITERAL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS_LITERAL" DEFAULT="LITERAL1">\r
+\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><%</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="MARKUP">\r
+ <BEGIN><%=</BEGIN>\r
+ <END>%></END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!--\r
+jEdit edit mode for Renderman Interface Bytestream (*.rib) files\r
+version 1.0 - 9 nov 2003\r
+by Alessandro Falappa (alessandro@falappa.net)\r
+Initial keyword list taken from a syntax highlighting definition\r
+for TextPad text editor by Kharitonov Konstantin (aqua@sm.bmstu.ru)\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="indentNextLines" VALUE="Begin|WorldBegin|FrameBegin|TransformBegin|AttributeBegin|SolidBegin|ObjectBegin|MotionBegin" />\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="([\p{Digit}]+(e[\p{Digit}]*)?)">\r
+ <EOL_SPAN AT_WHITESPACE_END="TRUE" TYPE="COMMENT1">#</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="LITERALS">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <KEYWORDS>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>color</KEYWORD1>\r
+ <KEYWORD1>point</KEYWORD1>\r
+ <KEYWORD1>vector</KEYWORD1>\r
+ <KEYWORD1>normal</KEYWORD1>\r
+ <KEYWORD1>matrix</KEYWORD1>\r
+ <KEYWORD1>void</KEYWORD1>\r
+ <KEYWORD1>varying</KEYWORD1>\r
+ <KEYWORD1>uniform</KEYWORD1>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>extern</KEYWORD1>\r
+\r
+ <KEYWORD2>Begin</KEYWORD2>\r
+ <KEYWORD2>End</KEYWORD2>\r
+ <KEYWORD2>Declare</KEYWORD2>\r
+ <KEYWORD2>RtContextHandle </KEYWORD2>\r
+ <KEYWORD2>ContextHandle </KEYWORD2>\r
+ <KEYWORD2>Context</KEYWORD2>\r
+ <KEYWORD2>FrameBegin</KEYWORD2>\r
+ <KEYWORD2>FrameEnd</KEYWORD2>\r
+ <KEYWORD2>WorldBegin</KEYWORD2>\r
+ <KEYWORD2>WorldEnd</KEYWORD2>\r
+ <KEYWORD2>SolidBegin</KEYWORD2>\r
+ <KEYWORD2>SolidEnd</KEYWORD2>\r
+ <KEYWORD2>MotionBegin</KEYWORD2>\r
+ <KEYWORD2>MotionEnd</KEYWORD2>\r
+ <KEYWORD2>ObjectBegin</KEYWORD2>\r
+ <KEYWORD2>ObjectEnd</KEYWORD2>\r
+ <KEYWORD2>Format</KEYWORD2>\r
+ <KEYWORD2>FrameAspectRatio</KEYWORD2>\r
+ <KEYWORD2>ScreenWindow</KEYWORD2>\r
+ <KEYWORD2>CropWindow</KEYWORD2>\r
+ <KEYWORD2>Projection</KEYWORD2>\r
+ <KEYWORD2>Clipping</KEYWORD2>\r
+ <KEYWORD2>ClippingPlane</KEYWORD2>\r
+ <KEYWORD2>DepthOfField</KEYWORD2>\r
+ <KEYWORD2>Shutter</KEYWORD2>\r
+ <KEYWORD2>PixelVariance</KEYWORD2>\r
+ <KEYWORD2>PixelSamples</KEYWORD2>\r
+ <KEYWORD2>PixelFilter</KEYWORD2>\r
+ <KEYWORD2>Exposure</KEYWORD2>\r
+ <KEYWORD2>Imager</KEYWORD2>\r
+ <KEYWORD2>Quantize</KEYWORD2>\r
+ <KEYWORD2>Display</KEYWORD2>\r
+ <KEYWORD2>Hider</KEYWORD2>\r
+ <KEYWORD2>ColorSamples</KEYWORD2>\r
+ <KEYWORD2>RelativeDetail</KEYWORD2>\r
+ <KEYWORD2>Option</KEYWORD2>\r
+ <KEYWORD2>AttributeBegin</KEYWORD2>\r
+ <KEYWORD2>AttributeEnd</KEYWORD2>\r
+ <KEYWORD2>Color</KEYWORD2>\r
+ <KEYWORD2>Opacity</KEYWORD2>\r
+ <KEYWORD2>TextureCoordinates</KEYWORD2>\r
+ <KEYWORD2>RtLightHandle</KEYWORD2>\r
+ <KEYWORD2>LightSource</KEYWORD2>\r
+ <KEYWORD2>AreaLightSource</KEYWORD2>\r
+ <KEYWORD2>Illuminate</KEYWORD2>\r
+ <KEYWORD2>Surface</KEYWORD2>\r
+ <KEYWORD2>Displacement</KEYWORD2>\r
+ <KEYWORD2>Atmosphere</KEYWORD2>\r
+ <KEYWORD2>Interior</KEYWORD2>\r
+ <KEYWORD2>Exterior</KEYWORD2>\r
+ <KEYWORD2>ShadingRate</KEYWORD2>\r
+ <KEYWORD2>ShadingInterpolation</KEYWORD2>\r
+ <KEYWORD2>Matte</KEYWORD2>\r
+ <KEYWORD2>Bound</KEYWORD2>\r
+ <KEYWORD2>Detail</KEYWORD2>\r
+ <KEYWORD2>DetailRange</KEYWORD2>\r
+ <KEYWORD2>GeometricApproximation</KEYWORD2>\r
+ <KEYWORD2>Orientation</KEYWORD2>\r
+ <KEYWORD2>ReverseOrientation</KEYWORD2>\r
+ <KEYWORD2>Sides</KEYWORD2>\r
+ <KEYWORD2>Identity</KEYWORD2>\r
+ <KEYWORD2>Transform</KEYWORD2>\r
+ <KEYWORD2>ConcatTransform</KEYWORD2>\r
+ <KEYWORD2>Perspective</KEYWORD2>\r
+ <KEYWORD2>Translate</KEYWORD2>\r
+ <KEYWORD2>Rotate</KEYWORD2>\r
+ <KEYWORD2>Scale</KEYWORD2>\r
+ <KEYWORD2>Skew</KEYWORD2>\r
+ <KEYWORD2>CoordinateSystem</KEYWORD2>\r
+ <KEYWORD2>CoordSysTransform</KEYWORD2>\r
+ <KEYWORD2>TransformPoints</KEYWORD2>\r
+ <KEYWORD2>TransformBegin</KEYWORD2>\r
+ <KEYWORD2>TransformEnd</KEYWORD2>\r
+ <KEYWORD2>Attribute</KEYWORD2>\r
+\r
+ <KEYWORD3>Polygon</KEYWORD3>\r
+ <KEYWORD3>GeneralPolygon</KEYWORD3>\r
+ <KEYWORD3>PointsPolygons</KEYWORD3>\r
+ <KEYWORD3>PointsGeneralPolygons</KEYWORD3>\r
+ <KEYWORD3>Basis</KEYWORD3>\r
+ <KEYWORD3>Patch</KEYWORD3>\r
+ <KEYWORD3>PatchMesh</KEYWORD3>\r
+ <KEYWORD3>NuPatch</KEYWORD3>\r
+ <KEYWORD3>TrimCurve</KEYWORD3>\r
+ <KEYWORD3>SubdivisionMesh</KEYWORD3>\r
+ <KEYWORD3>Sphere</KEYWORD3>\r
+ <KEYWORD3>Cone</KEYWORD3>\r
+ <KEYWORD3>Cylinder</KEYWORD3>\r
+ <KEYWORD3>Hyperboloid</KEYWORD3>\r
+ <KEYWORD3>Paraboloid</KEYWORD3>\r
+ <KEYWORD3>Disk</KEYWORD3>\r
+ <KEYWORD3>Torus</KEYWORD3>\r
+ <KEYWORD3>Points</KEYWORD3>\r
+ <KEYWORD3>Curves</KEYWORD3>\r
+ <KEYWORD3>Blobby</KEYWORD3>\r
+ <KEYWORD3>Procedural</KEYWORD3>\r
+ <KEYWORD3>DelayedReadArchive</KEYWORD3>\r
+ <KEYWORD3>RunProgram</KEYWORD3>\r
+ <KEYWORD3>DynamicLoad</KEYWORD3>\r
+ <KEYWORD3>Geometry</KEYWORD3>\r
+ <KEYWORD3>SolidBegin</KEYWORD3>\r
+ <KEYWORD3>SolidEnd</KEYWORD3>\r
+ <KEYWORD3>RtObjectHandle</KEYWORD3>\r
+ <KEYWORD3>ObjectBegin</KEYWORD3>\r
+ <KEYWORD3>ObjectEnd</KEYWORD3>\r
+ <KEYWORD3>ObjectInstance</KEYWORD3>\r
+\r
+ <KEYWORD4>MakeTexture</KEYWORD4>\r
+ <KEYWORD4>MakeLatLongEnvironment</KEYWORD4>\r
+ <KEYWORD4>MakeCubeFaceEnvironment</KEYWORD4>\r
+ <KEYWORD4>MakeShadow</KEYWORD4>\r
+ <KEYWORD4>ErrorHandler</KEYWORD4>\r
+ <KEYWORD4>ArchiveRecord</KEYWORD4>\r
+ <KEYWORD4>ReadArchive</KEYWORD4>\r
+ <KEYWORD4>Deformation</KEYWORD4>\r
+ <KEYWORD4>MakeBump</KEYWORD4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ <RULES SET="LITERALS" ESCAPE="\" IGNORE_CASE="FALSE" DEFAULT="LITERAL1">\r
+ <KEYWORDS>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>color</KEYWORD1>\r
+ <KEYWORD1>point</KEYWORD1>\r
+ <KEYWORD1>vector</KEYWORD1>\r
+ <KEYWORD1>normal</KEYWORD1>\r
+ <KEYWORD1>matrix</KEYWORD1>\r
+ <KEYWORD1>void</KEYWORD1>\r
+ <KEYWORD1>varying</KEYWORD1>\r
+ <KEYWORD1>uniform</KEYWORD1>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>extern</KEYWORD1>\r
+\r
+ <LITERAL2>P</LITERAL2>\r
+ <LITERAL2>Pw</LITERAL2>\r
+ <LITERAL2>Pz</LITERAL2>\r
+ <LITERAL2>N</LITERAL2>\r
+ <LITERAL2>Cs</LITERAL2>\r
+ <LITERAL2>Os</LITERAL2>\r
+ <LITERAL2>RI_NULL</LITERAL2>\r
+ <LITERAL2>RI_INFINITY</LITERAL2>\r
+ <LITERAL2>orthographic</LITERAL2>\r
+ <LITERAL2>perspective</LITERAL2>\r
+ <LITERAL2>bezier</LITERAL2>\r
+ <LITERAL2>catmull-rom</LITERAL2>\r
+ <LITERAL2>b-spline</LITERAL2>\r
+ <LITERAL2>hermite</LITERAL2>\r
+ <LITERAL2>power</LITERAL2>\r
+ <LITERAL2>catmull-clark</LITERAL2>\r
+ <LITERAL2>hole</LITERAL2>\r
+ <LITERAL2>crease</LITERAL2>\r
+ <LITERAL2>corner</LITERAL2>\r
+ <LITERAL2>interpolateboundary</LITERAL2>\r
+ <LITERAL2>object</LITERAL2>\r
+ <LITERAL2>world</LITERAL2>\r
+ <LITERAL2>camera</LITERAL2>\r
+ <LITERAL2>screen</LITERAL2>\r
+ <LITERAL2>raster</LITERAL2>\r
+ <LITERAL2>NDC</LITERAL2>\r
+ <LITERAL2>box</LITERAL2>\r
+ <LITERAL2>triangle</LITERAL2>\r
+ <LITERAL2>sinc</LITERAL2>\r
+ <LITERAL2>gaussian</LITERAL2>\r
+ <LITERAL2>constant</LITERAL2>\r
+ <LITERAL2>smooth</LITERAL2>\r
+ <LITERAL2>outside</LITERAL2>\r
+ <LITERAL2>inside</LITERAL2>\r
+ <LITERAL2>lh</LITERAL2>\r
+ <LITERAL2>rh</LITERAL2>\r
+ <LITERAL2>bicubic</LITERAL2>\r
+ <LITERAL2>bilinear</LITERAL2>\r
+ <LITERAL2>periodic</LITERAL2>\r
+ <LITERAL2>nonperiodic</LITERAL2>\r
+ <LITERAL2>hidden</LITERAL2>\r
+ <LITERAL2>null</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ </PROPS>\r
+ <RULES>\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1" AT_LINE_START="TRUE">#</EOL_SPAN>\r
+\r
+ <!-- Dependency operators -->\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <!-- %attr -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="ATTR" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%attr(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %verify -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="VERIFY" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%verify(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- Source -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE">Source</MARK_FOLLOWING>\r
+\r
+ <!-- Patch -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD1"\r
+ AT_LINE_START="TRUE">Patch</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="FUNCTION"\r
+ AT_LINE_START="TRUE">%patch</MARK_FOLLOWING>\r
+\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD3" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>%{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$?</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$*</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$<</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>Summary:</KEYWORD1>\r
+ <KEYWORD1>Name:</KEYWORD1>\r
+ <KEYWORD1>Version:</KEYWORD1>\r
+ <KEYWORD1>Release:</KEYWORD1>\r
+ <KEYWORD1>Copyright:</KEYWORD1>\r
+ <KEYWORD1>Group:</KEYWORD1>\r
+ <KEYWORD1>URL:</KEYWORD1>\r
+ <KEYWORD1>Packager:</KEYWORD1>\r
+ <KEYWORD1>Prefix:</KEYWORD1>\r
+ <KEYWORD1>Distribution:</KEYWORD1>\r
+ <KEYWORD1>Vendor:</KEYWORD1>\r
+ <KEYWORD1>Icon:</KEYWORD1>\r
+ <KEYWORD1>Provides:</KEYWORD1>\r
+ <KEYWORD1>Requires:</KEYWORD1>\r
+ <KEYWORD1>Serial:</KEYWORD1>\r
+ <KEYWORD1>Conflicts:</KEYWORD1>\r
+ <KEYWORD1>AutoReqProv:</KEYWORD1>\r
+ <KEYWORD1>BuildArch:</KEYWORD1>\r
+ <KEYWORD1>ExcludeArch:</KEYWORD1>\r
+ <KEYWORD1>ExclusiveArch:</KEYWORD1>\r
+ <KEYWORD1>ExclusiveOS:</KEYWORD1>\r
+ <KEYWORD1>BuildRoot:</KEYWORD1>\r
+ <KEYWORD1>NoSource:</KEYWORD1>\r
+ <KEYWORD1>NoPatch:</KEYWORD1>\r
+\r
+ <LABEL>%prep</LABEL>\r
+ <LABEL>%install</LABEL>\r
+ <LABEL>%description</LABEL>\r
+ <LABEL>%build</LABEL>\r
+ <LABEL>%files</LABEL>\r
+ <LABEL>%clean</LABEL>\r
+ <LABEL>%pre</LABEL>\r
+ <LABEL>%post</LABEL>\r
+ <LABEL>%preun</LABEL>\r
+ <LABEL>%postun</LABEL>\r
+ <LABEL>%verifyscript</LABEL>\r
+\r
+ <FUNCTION>%setup</FUNCTION>\r
+ <FUNCTION>%ifarch</FUNCTION>\r
+ <FUNCTION>%ifnarch</FUNCTION>\r
+ <FUNCTION>%ifos</FUNCTION>\r
+ <FUNCTION>%ifnos</FUNCTION>\r
+ <FUNCTION>%else</FUNCTION>\r
+ <FUNCTION>%endif</FUNCTION>\r
+\r
+ <MARKUP>%doc</MARKUP>\r
+ <MARKUP>%config</MARKUP>\r
+ <MARKUP>%docdir</MARKUP>\r
+ <MARKUP>%dir</MARKUP>\r
+ <MARKUP>%package</MARKUP>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="ATTR" HIGHLIGHT_DIGITS="TRUE">\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="VERIFY">\r
+ <KEYWORDS>\r
+ <KEYWORD2>owner</KEYWORD2>\r
+ <KEYWORD2>group</KEYWORD2>\r
+ <KEYWORD2>mode</KEYWORD2>\r
+ <KEYWORD2>md5</KEYWORD2>\r
+ <KEYWORD2>size</KEYWORD2>\r
+ <KEYWORD2>maj</KEYWORD2>\r
+ <KEYWORD2>min</KEYWORD2>\r
+ <KEYWORD2>symlink</KEYWORD2>\r
+ <KEYWORD2>mtime</KEYWORD2>\r
+ <OPERATOR>not</OPERATOR>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- contributed by Lionel Fiol <lio-sand@ifrance.com> -->\r
+<!-- 30/MAR/2004: initial contribution -->\r
+\r
+<MODE>\r
+ <RULES ESCAPE="\\">\r
+ <!-- groups -->\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <!-- characters as hexadecimal values - eg "\'e9" -->\r
+ <SEQ_REGEXP HASH_CHAR="\'" TYPE="LITERAL2">\\'\w\d</SEQ_REGEXP>\r
+ <!-- control words added after the RTF Specification published in March 1987 - eg "\*\panose" -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">\*\</MARK_FOLLOWING>\r
+ <!-- control words - eg "\par" -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD1">\</MARK_FOLLOWING>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<!-- Ruby mode by Ian Maclean (Ruby edit mode v0.6.2) -->\r
+<!-- tweakage by Chris Morris - clabs.org -->\r
+<!-- further tweakage by Christophe Grandsire -->\r
+<!-- further tweakage by Robert McKinnon 2004 -->\r
+<!-- Major overhaul by Karl von Laudermann -->\r
+<!-- recommended mode catalog entry:\r
+ <MODE NAME="ruby" FILE="ruby.xml" FILE_NAME_GLOB="*.{rb,rbw}" FIRST_LINE_GLOB="#!*/*ruby*" /> -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE=""/>\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}"/>\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true"/>\r
+ <PROPERTY NAME="commentStart" VALUE="=begin"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="=end"/>\r
+ <PROPERTY NAME="lineComment" VALUE="#"/>\r
+ <PROPERTY NAME="indentNextLines" VALUE="\s*((if\s+.*|elsif\s+.*|else\s*|do(\s*|\s+.*)|case\s+.*|when\s+.*|while\s+.*|for\s+.*|until\s+.*|loop\s+.*|def\s+.*|class\s+.*|module\s+.*|begin.*|unless\s+.*)*)"/>\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0b[01]([01_]*[01])?)|(0x[\p{XDigit}]([\p{XDigit}_]*[\p{XDigit}])?)|(0([0-7_]*[0-7])?)|(0d[0-9]([0-9_]*[0-9])?)|([1-9]([0-9_]*[0-9])?)|([0-9]([0-9_]*[0-9])?[Ee]([0-9]([0-9_]*[0-9])?)?)">\r
+ <!-- ^ Binary literal | ^ Hex literal | ^ Octal literal | ^ "0d" Style Dec lit | ^ Normal Dec literal | ^ Float literal w/out dec point, with exp. -->\r
+\r
+ <!-- Ruby comment (Inline Documentation ) -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>=begin</BEGIN>\r
+ <END>=end</END>\r
+ </SPAN>\r
+\r
+ <!-- Class and instance vars -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">@</MARK_FOLLOWING>\r
+\r
+ <!-- Perl-style regexps - from perl.xml -->\r
+ <SEQ_REGEXP TYPE="MARKUP" HASH_CHAR="/" AT_WORD_START="TRUE"\r
+ >/[^\p{Blank}]*?/</SEQ_REGEXP>\r
+\r
+ <!-- String literals -->\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- %Q(Hello world) %(Hello world)-->\r
+ <SPAN_REGEXP HASH_CHAR="%" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%Q?\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %q(Hello world) -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%q(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %Q{Hello world} %{Hello world} -->\r
+ <SPAN_REGEXP HASH_CHAR="%" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%Q?\{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %q{Hello world} -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%q{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- %Q[Hello world] %[Hello world] -->\r
+ <SPAN_REGEXP HASH_CHAR="%" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%Q?\[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %q[Hello world] -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%q[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- %Q<Hello world> %<Hello world> -->\r
+ <SPAN_REGEXP HASH_CHAR="%" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%Q?<</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %q<Hello world> -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%q<</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- I made the next three forms as three instead of two, because the\r
+ first two actually support whitespace as a delimiter, and the third\r
+ one doesn't. -->\r
+ <!-- %Q$Hello world$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%Q" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%Q([^\p{Alnum}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %q$Hello world$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%q" TYPE="LITERAL1">\r
+ <BEGIN>%q([^\p{Alnum}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %$Hello world$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%([^\p{Alnum}\p{Space}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %W(Array of strings) -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%W(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %w(Array of strings) -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%w(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %W{Array of strings} -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%W{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- %w{Array of strings} -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%w{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- %W[Array of strings] -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%W[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- %w[Array of strings] -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%w[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- %W<Array of strings> -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%W<</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- %w<Array of strings> -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>%w<</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- %W$Array of strings$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%W" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN>%W([^\p{Alnum}\p{Space}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- %w@Array of strings@ -->\r
+ <SPAN_REGEXP HASH_CHAR="%w" TYPE="LITERAL1">\r
+ <BEGIN>%w([^\p{Alnum}\p{Space}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Here documents <<"FOO" <<-"FOO" -->\r
+ <!-- Unfortunately, in a SPAN_REGEXP element only the <BEGIN> tag takes\r
+ a regex, not the <END> tag. So an instance of FOO anywhere in the here\r
+ document will terminate highlighting; I couldn't make it smarter. -->\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN><<-?"([\p{Graph}]+)"</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Here documents <<'FOO' <<-'FOO' -->\r
+ <!-- Unfortunately, in a SPAN_REGEXP element only the <BEGIN> tag takes\r
+ a regex, not the <END> tag. So an instance of FOO anywhere in the here\r
+ document will terminate highlighting; I couldn't make it smarter. -->\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL1">\r
+ <BEGIN><<-?'([\p{Graph}]+)'</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Here documents <<FOO <<-FOO -->\r
+ <!-- Unfortunately, in a SPAN_REGEXP element only the <BEGIN> tag takes\r
+ a regex, not the <END> tag. So an instance of FOO anywhere in the here\r
+ document will terminate highlighting; I couldn't make it smarter. -->\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL1" DELEGATE="doubleQuoteLiteral">\r
+ <BEGIN><<-?([A-Za-z_]+)</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Shell command strings -->\r
+\r
+ <!-- `echo foo` -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- %x(echo foo) -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>%x(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %x{echo foo} -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>%x{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- %x[echo foo] -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>%x[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- %x<echo foo> -->\r
+ <SPAN TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>%x<</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- %x$echo foo$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%x" TYPE="LITERAL2" DELEGATE="BackquoteLiteral">\r
+ <BEGIN>%x([^\p{Alnum}\p{Space}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Regular expressions -->\r
+\r
+ <!-- /regexp?/i -->\r
+ <!-- This doesn't really work well, because it can't distinguish a regexp\r
+ from multiple instances of the "/" division operator on the same line. -->\r
+ <!-- <SEQ_REGEXP HASH_CHAR="/" AT_WORD_START="TRUE"\r
+ TYPE="LITERAL3">/[^/]+/[iomx]*</SEQ_REGEXP> -->\r
+\r
+ <!-- %r(regexp?) -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="RegexpLiteral">\r
+ <BEGIN>%r(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- %r{regexp?} -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="RegexpLiteral">\r
+ <BEGIN>%r{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- %r[regexp?] -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="RegexpLiteral">\r
+ <BEGIN>%r[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- %r<regexp?> -->\r
+ <SPAN TYPE="LITERAL3" DELEGATE="RegexpLiteral">\r
+ <BEGIN>%r<</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- %r$regexp?$ -->\r
+ <SPAN_REGEXP HASH_CHAR="%r" TYPE="LITERAL3" DELEGATE="RegexpLiteral">\r
+ <BEGIN>%r([^\p{Alnum}\p{Space}])</BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- (/regexp/) -->\r
+ <SPAN DELEGATE="RegexpLiteral" MATCH_TYPE="OPERATOR" TYPE="LITERAL3">\r
+ <BEGIN>(/</BEGIN>\r
+ <END>/</END>\r
+ </SPAN>\r
+\r
+ <!-- Nested code block -->\r
+ <!-- I included this just because it can appear in a "/" delimited\r
+ regular expression, handling of which is commented out above. So this\r
+ would otherwise be colored as a comment. -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="MAIN">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Std Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Predefined global variables -->\r
+ <SEQ_REGEXP HASH_CHAR="$-" TYPE="KEYWORD3" AT_WORD_START="TRUE">\$-[0adFiIKlpvw](?![\p{Alnum}_])</SEQ_REGEXP>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD3" AT_WORD_START="TRUE">\$[0-9!@&\+`'=~/\\,\.;<>_\*"\$\?\:F](?![\p{Alnum}_])</SEQ_REGEXP>\r
+\r
+ <!-- Because of the ? char, this can't be done as a KEYWORD element -->\r
+ <SEQ TYPE="KEYWORD1" AT_WORD_START="TRUE">defined?</SEQ>\r
+\r
+ <!-- Highlight "include" but not "include?" -->\r
+ <SEQ_REGEXP HASH_CHAR="include" TYPE="KEYWORD2" AT_WORD_START="TRUE">include(?![\p{Alnum}_\?])</SEQ_REGEXP>\r
+\r
+ <!-- Not Operators but like the syntax highlight to match operators -->\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Arithmetic operators -->\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+ <SEQ TYPE="OPERATOR">===</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+ <SEQ TYPE="OPERATOR"><<</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <!-- Logical Operators -->\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+\r
+ <!-- Range operators -->\r
+ <SEQ TYPE="OPERATOR">...</SEQ>\r
+ <SEQ TYPE="OPERATOR">..</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+\r
+ <!-- Symbols -->\r
+ <SEQ_REGEXP AT_WORD_START="TRUE" HASH_CHAR=":" TYPE="LABEL">:[\p{Alpha}_][\p{Alnum}_]*</SEQ_REGEXP>\r
+\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>def</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elsif</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>ensure</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>module</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <KEYWORD1>redo</KEYWORD1>\r
+ <KEYWORD1>rescue</KEYWORD1>\r
+ <KEYWORD1>retry</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>undef</KEYWORD1>\r
+ <KEYWORD1>unless</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>yield</KEYWORD1>\r
+\r
+ <KEYWORD2>load</KEYWORD2>\r
+ <KEYWORD2>require</KEYWORD2>\r
+\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD3>nil</KEYWORD3>\r
+ <KEYWORD3>self</KEYWORD3>\r
+ <KEYWORD3>super</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+\r
+ <KEYWORD3>$defout</KEYWORD3>\r
+ <KEYWORD3>$deferr</KEYWORD3>\r
+ <KEYWORD3>$stderr</KEYWORD3>\r
+ <KEYWORD3>$stdin</KEYWORD3>\r
+ <KEYWORD3>$stdout</KEYWORD3>\r
+ <KEYWORD3>$DEBUG</KEYWORD3>\r
+ <KEYWORD3>$FILENAME</KEYWORD3>\r
+ <KEYWORD3>$LOAD_PATH</KEYWORD3>\r
+ <KEYWORD3>$SAFE</KEYWORD3>\r
+ <KEYWORD3>$VERBOSE</KEYWORD3>\r
+ <KEYWORD3>__FILE__</KEYWORD3>\r
+ <KEYWORD3>__LINE__</KEYWORD3>\r
+ <KEYWORD3>ARGF</KEYWORD3>\r
+ <KEYWORD3>ARGV</KEYWORD3>\r
+ <KEYWORD3>ENV</KEYWORD3>\r
+ <KEYWORD3>DATA</KEYWORD3>\r
+ <KEYWORD3>FALSE</KEYWORD3>\r
+ <KEYWORD3>NIL</KEYWORD3>\r
+ <KEYWORD3>RUBY_PLATFORM</KEYWORD3>\r
+ <KEYWORD3>RUBY_RELEASE_DATE</KEYWORD3>\r
+ <KEYWORD3>RUBY_VERSION</KEYWORD3>\r
+ <KEYWORD3>STDERR</KEYWORD3>\r
+ <KEYWORD3>STDIN</KEYWORD3>\r
+ <KEYWORD3>STDOUT</KEYWORD3>\r
+ <KEYWORD3>SCRIPT_LINES__</KEYWORD3>\r
+ <KEYWORD3>TOPLEVEL_BINDING</KEYWORD3>\r
+ <KEYWORD3>TRUE</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Delegate contents of #{} expression in double quotes to MAIN so that\r
+ it will be syntax highlighted as well -->\r
+ <RULES DEFAULT="LITERAL1" SET="doubleQuoteLiteral">\r
+ <SPAN DELEGATE="MAIN" TYPE="OPERATOR">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="NULL">#$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <!-- Delegate contents of #{} expression in backquotes to MAIN so that\r
+ it will be syntax highlighted as well -->\r
+ <RULES DEFAULT="LITERAL2" SET="BackquoteLiteral">\r
+ <SPAN DELEGATE="MAIN" TYPE="OPERATOR">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="NULL">#$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <!-- Delegate contents of #{} expression in a regexp to MAIN so that\r
+ it will be syntax highlighted as well -->\r
+ <RULES DEFAULT="LITERAL3" SET="RegexpLiteral">\r
+ <SPAN DELEGATE="MAIN" TYPE="OPERATOR">\r
+ <BEGIN>#{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD4">#@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="NULL">#$</MARK_FOLLOWING>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Relational View (rview) mode by Will Sargent <wsargent@atg.com>\r
+-->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ </PROPS>\r
+\r
+ <!--\r
+ Unicode escapes are allowed in identifiers.\r
+ Ignoring case is bad.\r
+ Digits may be returned from functions.\r
+ -->\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Javadoc comment -->\r
+ <SPAN TYPE="COMMENT2" DELEGATE="JAVADOC">\r
+ <BEGIN>/**</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="RVIEWSTMT">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <KEYWORDS>\r
+\r
+ <!--\r
+ Keywords (WAY more than I thought there were, please\r
+ e-mail me if I've left one out).\r
+ -->\r
+ <KEYWORD1>unique</KEYWORD1>\r
+ <KEYWORD1>relationalview</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+\r
+ <KEYWORD1>rowmap</KEYWORD1>\r
+ <KEYWORD1>table</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>subview</KEYWORD1>\r
+ <KEYWORD1>query</KEYWORD1>\r
+\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>jointype</KEYWORD1>\r
+ <KEYWORD1>leftouter</KEYWORD1>\r
+ <KEYWORD1>rightouter</KEYWORD1>\r
+\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+\r
+ <KEYWORD1>sql</KEYWORD1>\r
+ <KEYWORD1>constraints</KEYWORD1>\r
+ <KEYWORD1>where</KEYWORD1>\r
+ <KEYWORD1>orderby</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>distinct</KEYWORD1>\r
+\r
+ <!--\r
+ Allow parameters...\r
+ -->\r
+ <KEYWORD1>allow</KEYWORD1>\r
+ <KEYWORD1>delete</KEYWORD1>\r
+ <!-- also used in update function -->\r
+ <KEYWORD1>update</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>insert</KEYWORD1>\r
+\r
+ <!-- We're allowed to return primitive types -->\r
+ <KEYWORD3>boolean</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>char</KEYWORD3>\r
+ <KEYWORD3>double</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>long</KEYWORD3>\r
+ <KEYWORD3>short</KEYWORD3>\r
+\r
+ <KEYWORD1>useCallableStatement</KEYWORD1>\r
+\r
+ <!--\r
+ JDBC mapping statements (must be UPPERCASE)\r
+ -->\r
+ <KEYWORD3>CHAR</KEYWORD3>\r
+ <KEYWORD3>VARCHAR</KEYWORD3>\r
+ <KEYWORD3>LONGVARCHAR</KEYWORD3>\r
+ <KEYWORD3>NUMERIC</KEYWORD3>\r
+ <KEYWORD3>DECIMAL</KEYWORD3>\r
+ <KEYWORD3>BIT</KEYWORD3>\r
+ <KEYWORD3>TINYINT</KEYWORD3>\r
+ <KEYWORD3>SMALLINT</KEYWORD3>\r
+ <KEYWORD3>INTEGER</KEYWORD3>\r
+ <KEYWORD3>BIGINT</KEYWORD3>\r
+ <KEYWORD3>REAL</KEYWORD3>\r
+ <KEYWORD3>FLOAT</KEYWORD3>\r
+ <KEYWORD3>DOUBLE</KEYWORD3>\r
+ <KEYWORD3>BINARY</KEYWORD3>\r
+ <KEYWORD3>VARBINARY</KEYWORD3>\r
+ <KEYWORD3>LONGVARBINARY</KEYWORD3>\r
+ <KEYWORD3>DATE</KEYWORD3>\r
+ <KEYWORD3>TIME</KEYWORD3>\r
+ <KEYWORD3>TIMESTAMP</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!--\r
+ Everything that happens in between quotes happens here.\r
+ -->\r
+ <RULES SET="RVIEWSTMT" ESCAPE="\" DEFAULT="LITERAL1"\r
+ HIGHLIGHT_DIGITS="TRUE" IGNORE_CASE="TRUE">\r
+ <!-- Allow quoting for characters. -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!--\r
+ Standard arithmetic\r
+ -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <!--\r
+ Standard logic\r
+ -->\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <!--\r
+ For callable statements, { } must be used.\r
+ -->\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <!--\r
+ Escape colons for full tables\r
+ -->\r
+ <SEQ TYPE="NULL">::</SEQ>\r
+\r
+ <!-- Mark most colons as a label indicator -->\r
+ <MARK_FOLLOWING TYPE="LABEL">:</MARK_FOLLOWING>\r
+\r
+ <!-- Function calls (these can happen even inside quotes) -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>BETWEEN</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>desc</KEYWORD1>\r
+\r
+ <!--\r
+ It's possible to do casting to a particular SQL\r
+ type, so include the JDBC types here\r
+ -->\r
+ <KEYWORD3>CHAR</KEYWORD3>\r
+ <KEYWORD3>VARCHAR</KEYWORD3>\r
+ <KEYWORD3>LONGVARCHAR</KEYWORD3>\r
+ <KEYWORD3>NUMERIC</KEYWORD3>\r
+ <KEYWORD3>DECIMAL</KEYWORD3>\r
+ <KEYWORD3>BIT</KEYWORD3>\r
+ <KEYWORD3>TINYINT</KEYWORD3>\r
+ <KEYWORD3>SMALLINT</KEYWORD3>\r
+ <KEYWORD3>INTEGER</KEYWORD3>\r
+ <KEYWORD3>BIGINT</KEYWORD3>\r
+ <KEYWORD3>REAL</KEYWORD3>\r
+ <KEYWORD3>FLOAT</KEYWORD3>\r
+ <KEYWORD3>DOUBLE</KEYWORD3>\r
+ <KEYWORD3>BINARY</KEYWORD3>\r
+ <KEYWORD3>VARBINARY</KEYWORD3>\r
+ <KEYWORD3>LONGVARBINARY</KEYWORD3>\r
+ <KEYWORD3>DATE</KEYWORD3>\r
+ <KEYWORD3>TIME</KEYWORD3>\r
+ <KEYWORD3>TIMESTAMP</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- \r
+ SAS edit mode by Bill McMilleon (bill@mcmilleon.com)\r
+ March 19, 2003\r
+ \r
+ Suggested catalog file entry:\r
+\r
+ <MODE NAME="SAS" FILE="sas.xml" FILE_NAME_GLOB="*.{sas}" />\r
+\r
+-->\r
+ \r
+\r
+<MODE>\r
+\r
+ \r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+\r
+<!-- In fixed form, column 72 is the last column parsed, unless the\r
+\extend_source option is invoked -->\r
+ <!-- TERMINATE AT_CHAR="72" / -->\r
+\r
+ <!-- C style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- Highlighted Operators -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD2>$ASCII</KEYWORD2>\r
+ <KEYWORD2>$BINARY</KEYWORD2>\r
+ <KEYWORD2>$CB</KEYWORD2>\r
+ <KEYWORD2>$CHAR</KEYWORD2>\r
+ <KEYWORD2>$CHARZB</KEYWORD2>\r
+ <KEYWORD2>$EBCDIC</KEYWORD2>\r
+ <KEYWORD2>$HEX</KEYWORD2>\r
+ <KEYWORD2>$OCTAL</KEYWORD2>\r
+ <KEYWORD2>$VARYING</KEYWORD2>\r
+ <KEYWORD2>%BQUOTE</KEYWORD2>\r
+ <KEYWORD2>%DO</KEYWORD2>\r
+ <KEYWORD2>%ELSE</KEYWORD2>\r
+ <KEYWORD2>%END</KEYWORD2>\r
+ <KEYWORD2>%EVAL</KEYWORD2>\r
+ <KEYWORD2>%Global</KEYWORD2>\r
+ <KEYWORD2>%GOTO</KEYWORD2>\r
+ <KEYWORD2>%IF</KEYWORD2>\r
+ <KEYWORD2>%INC</KEYWORD2>\r
+ <KEYWORD2>%INCLUDE</KEYWORD2>\r
+ <KEYWORD2>%INDEX</KEYWORD2>\r
+ <KEYWORD2>%INPUT</KEYWORD2>\r
+ <KEYWORD2>%LENGTH</KEYWORD2>\r
+ <KEYWORD2>%LET</KEYWORD2>\r
+ <KEYWORD2>%LOCAL</KEYWORD2>\r
+ <KEYWORD2>%MACRO</KEYWORD2>\r
+ <KEYWORD2>%MEND</KEYWORD2>\r
+ <KEYWORD2>%NRBQUOTE</KEYWORD2>\r
+ <KEYWORD2>%NRQUOTE</KEYWORD2>\r
+ <KEYWORD2>%NRSTR</KEYWORD2>\r
+ <KEYWORD2>%PUT</KEYWORD2>\r
+ <KEYWORD2>%QSCAN</KEYWORD2>\r
+ <KEYWORD2>%Quote</KEYWORD2>\r
+ <KEYWORD2>%RUN</KEYWORD2>\r
+ <KEYWORD2>%SUBSTR</KEYWORD2>\r
+ <KEYWORD2>%SYSEXEC</KEYWORD2>\r
+ <KEYWORD2>%THEN</KEYWORD2>\r
+ <KEYWORD2>%UNTIL</KEYWORD2>\r
+ <KEYWORD2>%WHILE</KEYWORD2>\r
+ <KEYWORD2>%WINDOW</KEYWORD2>\r
+ <KEYWORD2>_ALL_</KEYWORD2>\r
+ <KEYWORD2>_CHARACTER_</KEYWORD2>\r
+ <KEYWORD2>_CMD_</KEYWORD2>\r
+ <KEYWORD2>_ERROR_</KEYWORD2>\r
+ <KEYWORD2>_I_</KEYWORD2>\r
+ <KEYWORD2>_INFILE_</KEYWORD2>\r
+ <KEYWORD2>_LAST_</KEYWORD2>\r
+ <KEYWORD2>_MSG_</KEYWORD2>\r
+ <KEYWORD2>_N_</KEYWORD2>\r
+ <KEYWORD2>_NULL_</KEYWORD2>\r
+ <KEYWORD2>_NUMERIC_</KEYWORD2>\r
+ <KEYWORD2>_TEMPORARY_</KEYWORD2>\r
+ <KEYWORD2>_TYPE_</KEYWORD2>\r
+ <KEYWORD2>=DATA</KEYWORD2>\r
+ <KEYWORD2>ABORT</KEYWORD2>\r
+ <KEYWORD2>ADD</KEYWORD2>\r
+ <KEYWORD2>ADJRSQ</KEYWORD2>\r
+ <KEYWORD2>AND</KEYWORD2>\r
+ <KEYWORD2>ARRAY</KEYWORD2>\r
+ <KEYWORD2>ATTRIB</KEYWORD2>\r
+ <KEYWORD2>BACKWARD</KEYWORD2>\r
+ <KEYWORD2>BINARY</KEYWORD2>\r
+ <KEYWORD2>BLOCKSIZE</KEYWORD2>\r
+ <KEYWORD2>BY</KEYWORD2>\r
+ <KEYWORD2>BZ</KEYWORD2>\r
+ <KEYWORD2>CALL</KEYWORD2>\r
+ <KEYWORD2>CARDS</KEYWORD2>\r
+ <KEYWORD2>CARDS4</KEYWORD2>\r
+ <KEYWORD2>CHAR</KEYWORD2>\r
+ <KEYWORD2>CLASS</KEYWORD2>\r
+ <KEYWORD2>COL</KEYWORD2>\r
+ <KEYWORD2>COLLIN</KEYWORD2>\r
+ <KEYWORD2>COLUMN</KEYWORD2>\r
+ <KEYWORD2>COMMA</KEYWORD2>\r
+ <KEYWORD2>COMMAX</KEYWORD2>\r
+ <KEYWORD2>CREATE</KEYWORD2>\r
+ <KEYWORD2>DATA</KEYWORD2>\r
+ <KEYWORD2>DATA=</KEYWORD2>\r
+ <KEYWORD2>DATE</KEYWORD2>\r
+ <KEYWORD2>DATETIME</KEYWORD2>\r
+ <KEYWORD2>DDMMYY</KEYWORD2>\r
+ <KEYWORD2>DECENDING</KEYWORD2>\r
+ <KEYWORD2>DEFINE</KEYWORD2>\r
+ <KEYWORD2>DELETE</KEYWORD2>\r
+ <KEYWORD2>DELIMITER</KEYWORD2>\r
+ <KEYWORD2>DISPLAY</KEYWORD2>\r
+ <KEYWORD2>DLM</KEYWORD2>\r
+ <KEYWORD2>DO</KEYWORD2>\r
+ <KEYWORD2>DROP</KEYWORD2>\r
+ <KEYWORD2>ELSE</KEYWORD2>\r
+ <KEYWORD2>END</KEYWORD2>\r
+ <KEYWORD2>ENDSAS</KEYWORD2>\r
+ <KEYWORD2>EOF</KEYWORD2>\r
+ <KEYWORD2>EOV</KEYWORD2>\r
+ <KEYWORD2>EQ</KEYWORD2>\r
+ <KEYWORD2>ERRORS</KEYWORD2>\r
+ <KEYWORD2>FILE</KEYWORD2>\r
+ <KEYWORD2>FILENAME</KEYWORD2>\r
+ <KEYWORD2>FILEVAR</KEYWORD2>\r
+ <KEYWORD2>FIRST.</KEYWORD2>\r
+ <KEYWORD2>FIRSTOBS</KEYWORD2>\r
+ <KEYWORD2>FOOTNOTE</KEYWORD2>\r
+ <KEYWORD2>FOOTNOTE1</KEYWORD2>\r
+ <KEYWORD2>FOOTNOTE2</KEYWORD2>\r
+ <KEYWORD2>FOOTNOTE3</KEYWORD2>\r
+ <KEYWORD2>FORM</KEYWORD2>\r
+ <KEYWORD2>FORMAT</KEYWORD2>\r
+ <KEYWORD2>FORMCHAR</KEYWORD2>\r
+ <KEYWORD2>FORMDELIM</KEYWORD2>\r
+ <KEYWORD2>FORMDLIM</KEYWORD2>\r
+ <KEYWORD2>FORWARD</KEYWORD2>\r
+ <KEYWORD2>FROM</KEYWORD2>\r
+ <KEYWORD2>GO</KEYWORD2>\r
+ <KEYWORD2>GROUP</KEYWORD2>\r
+ <KEYWORD2>GT</KEYWORD2>\r
+ <KEYWORD2>HBAR</KEYWORD2>\r
+ <KEYWORD2>HEX</KEYWORD2>\r
+ <KEYWORD2>HPCT</KEYWORD2>\r
+ <KEYWORD2>HVAR</KEYWORD2>\r
+ <KEYWORD2>IB</KEYWORD2>\r
+ <KEYWORD2>ID</KEYWORD2>\r
+ <KEYWORD2>IEEE</KEYWORD2>\r
+ <KEYWORD2>IF</KEYWORD2>\r
+ <KEYWORD2>IN</KEYWORD2>\r
+ <KEYWORD2>INFILE</KEYWORD2>\r
+ <KEYWORD2>INFORMAT</KEYWORD2>\r
+ <KEYWORD2>INPUT</KEYWORD2>\r
+ <KEYWORD2>INR</KEYWORD2>\r
+ <KEYWORD2>JOIN</KEYWORD2>\r
+ <KEYWORD2>JULIAN</KEYWORD2>\r
+ <KEYWORD2>KEEP</KEYWORD2>\r
+ <KEYWORD2>LABEL</KEYWORD2>\r
+ <KEYWORD2>LAG</KEYWORD2>\r
+ <KEYWORD2>LAST.</KEYWORD2>\r
+ <KEYWORD2>LE</KEYWORD2>\r
+ <KEYWORD2>LIB</KEYWORD2>\r
+ <KEYWORD2>LIBNAME</KEYWORD2>\r
+ <KEYWORD2>LINE</KEYWORD2>\r
+ <KEYWORD2>LINESIZE</KEYWORD2>\r
+ <KEYWORD2>LINK</KEYWORD2>\r
+ <KEYWORD2>LIST</KEYWORD2>\r
+ <KEYWORD2>LOSTCARD</KEYWORD2>\r
+ <KEYWORD2>LRECL</KEYWORD2>\r
+ <KEYWORD2>LS</KEYWORD2>\r
+ <KEYWORD2>MACRO</KEYWORD2>\r
+ <KEYWORD2>MACROGEN</KEYWORD2>\r
+ <KEYWORD2>MAXDEC</KEYWORD2>\r
+ <KEYWORD2>MAXR</KEYWORD2>\r
+ <KEYWORD2>MEDIAN</KEYWORD2>\r
+ <KEYWORD2>MEMTYPE</KEYWORD2>\r
+ <KEYWORD2>MERGE</KEYWORD2>\r
+ <KEYWORD2>MERROR</KEYWORD2>\r
+ <KEYWORD2>MISSOVE</KEYWORD2>\r
+ <KEYWORD2>MLOGIC</KEYWORD2>\r
+ <KEYWORD2>MMDDYY</KEYWORD2>\r
+ <KEYWORD2>MODE</KEYWORD2>\r
+ <KEYWORD2>MODEL</KEYWORD2>\r
+ <KEYWORD2>MONYY</KEYWORD2>\r
+ <KEYWORD2>MPRINT</KEYWORD2>\r
+ <KEYWORD2>MRECALL</KEYWORD2>\r
+ <KEYWORD2>NE</KEYWORD2>\r
+ <KEYWORD2>NEW</KEYWORD2>\r
+ <KEYWORD2>NO</KEYWORD2>\r
+ <KEYWORD2>NOBS</KEYWORD2>\r
+ <KEYWORD2>NOCENTER</KEYWORD2>\r
+ <KEYWORD2>NOCUM</KEYWORD2>\r
+ <KEYWORD2>NODATE</KEYWORD2>\r
+ <KEYWORD2>NODUP</KEYWORD2>\r
+ <KEYWORD2>NODUPKEY</KEYWORD2>\r
+ <KEYWORD2>NOINT</KEYWORD2>\r
+ <KEYWORD2>NONUMBER</KEYWORD2>\r
+ <KEYWORD2>NOPAD</KEYWORD2>\r
+ <KEYWORD2>NOPRINT</KEYWORD2>\r
+ <KEYWORD2>NOROW</KEYWORD2>\r
+ <KEYWORD2>NOT</KEYWORD2>\r
+ <KEYWORD2>NOTITLE</KEYWORD2>\r
+ <KEYWORD2>NOTITLES</KEYWORD2>\r
+ <KEYWORD2>NOXSYNC</KEYWORD2>\r
+ <KEYWORD2>NOXWAIT</KEYWORD2>\r
+ <KEYWORD2>NUMBER</KEYWORD2>\r
+ <KEYWORD2>NWAY</KEYWORD2>\r
+ <KEYWORD2>OBS</KEYWORD2>\r
+ <KEYWORD2>OPTION</KEYWORD2>\r
+ <KEYWORD2>OPTIONS</KEYWORD2>\r
+ <KEYWORD2>OR</KEYWORD2>\r
+ <KEYWORD2>ORDER</KEYWORD2>\r
+ <KEYWORD2>OTHERWISE</KEYWORD2>\r
+ <KEYWORD2>OUT</KEYWORD2>\r
+ <KEYWORD2>OUTPUT</KEYWORD2>\r
+ <KEYWORD2>OVER</KEYWORD2>\r
+ <KEYWORD2>PAD</KEYWORD2>\r
+ <KEYWORD2>PAD2</KEYWORD2>\r
+ <KEYWORD2>PAGESIZE</KEYWORD2>\r
+ <KEYWORD2>PD</KEYWORD2>\r
+ <KEYWORD2>PERCENT</KEYWORD2>\r
+ <KEYWORD2>PIB</KEYWORD2>\r
+ <KEYWORD2>PK</KEYWORD2>\r
+ <KEYWORD2>POINT</KEYWORD2>\r
+ <KEYWORD2>POSITION</KEYWORD2>\r
+ <KEYWORD2>PRINTER</KEYWORD2>\r
+ <KEYWORD2>PROC</KEYWORD2>\r
+ <KEYWORD2>PS</KEYWORD2>\r
+ <KEYWORD2>PUT</KEYWORD2>\r
+ <KEYWORD2>QUIT</KEYWORD2>\r
+ <KEYWORD2>R</KEYWORD2>\r
+ <KEYWORD2>RB</KEYWORD2>\r
+ <KEYWORD2>RECFM</KEYWORD2>\r
+ <KEYWORD2>REG</KEYWORD2>\r
+ <KEYWORD2>REGR</KEYWORD2>\r
+ <KEYWORD2>RENAME</KEYWORD2>\r
+ <KEYWORD2>REPLACE</KEYWORD2>\r
+ <KEYWORD2>RETAIN</KEYWORD2>\r
+ <KEYWORD2>RETURN</KEYWORD2>\r
+ <KEYWORD2>REUSE</KEYWORD2>\r
+ <KEYWORD2>RSQUARE</KEYWORD2>\r
+ <KEYWORD2>RUN</KEYWORD2>\r
+ <KEYWORD2>SASAUTOS</KEYWORD2>\r
+ <KEYWORD2>SCAN</KEYWORD2>\r
+ <KEYWORD2>SELECT</KEYWORD2>\r
+ <KEYWORD2>SELECTION</KEYWORD2>\r
+ <KEYWORD2>SERROR</KEYWORD2>\r
+ <KEYWORD2>SET</KEYWORD2>\r
+ <KEYWORD2>SIMPLE</KEYWORD2>\r
+ <KEYWORD2>SLE</KEYWORD2>\r
+ <KEYWORD2>SLS</KEYWORD2>\r
+ <KEYWORD2>START</KEYWORD2>\r
+ <KEYWORD2>STDIN</KEYWORD2>\r
+ <KEYWORD2>STOP</KEYWORD2>\r
+ <KEYWORD2>STOPOVER</KEYWORD2>\r
+ <KEYWORD2>SUBSTR</KEYWORD2>\r
+ <KEYWORD2>SYMBOL</KEYWORD2>\r
+ <KEYWORD2>SYMBOLGEN</KEYWORD2>\r
+ <KEYWORD2>T</KEYWORD2>\r
+ <KEYWORD2>TABLE</KEYWORD2>\r
+ <KEYWORD2>TABLES</KEYWORD2>\r
+ <KEYWORD2>THEN</KEYWORD2>\r
+ <KEYWORD2>TITLE</KEYWORD2>\r
+ <KEYWORD2>TITLE1</KEYWORD2>\r
+ <KEYWORD2>TITLE2</KEYWORD2>\r
+ <KEYWORD2>TITLE3</KEYWORD2>\r
+ <KEYWORD2>TITLE4</KEYWORD2>\r
+ <KEYWORD2>TITLE5</KEYWORD2>\r
+ <KEYWORD2>TO</KEYWORD2>\r
+ <KEYWORD2>TOL</KEYWORD2>\r
+ <KEYWORD2>UNFORMATTED</KEYWORD2>\r
+ <KEYWORD2>UNTIL</KEYWORD2>\r
+ <KEYWORD2>UPDATE</KEYWORD2>\r
+ <KEYWORD2>VALUE</KEYWORD2>\r
+ <KEYWORD2>VAR</KEYWORD2>\r
+ <KEYWORD2>WHEN</KEYWORD2>\r
+ <KEYWORD2>WHERE</KEYWORD2>\r
+ <KEYWORD2>WHILE</KEYWORD2>\r
+ <KEYWORD2>WINDOW</KEYWORD2>\r
+ <KEYWORD2>WORK</KEYWORD2>\r
+ <KEYWORD2>X</KEYWORD2>\r
+ <KEYWORD2>XSYNC</KEYWORD2>\r
+ <KEYWORD2>XWAIT</KEYWORD2>\r
+ <KEYWORD2>YES</KEYWORD2>\r
+ <KEYWORD2>YYMMDD</KEYWORD2>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+</MODE>\r
+\r
+\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd"><MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="#|"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="|#"/>\r
+ <PROPERTY NAME="lineComment" VALUE=";"/>\r
+ <PROPERTY NAME="noWordSep" VALUE="_-+?:*/!"/>\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="("/>\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")"/>\r
+ <PROPERTY NAME="multipleBracketIndent" VALUE="true" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" NO_WORD_SEP="_-+?:*/!">\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>#|</BEGIN>\r
+ <END>|#</END>\r
+ </SPAN>\r
+ <SEQ TYPE="NULL">'(</SEQ>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">'</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">#\</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">#b</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">#d</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">#o</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1">#x</MARK_FOLLOWING>\r
+ <EOL_SPAN TYPE="COMMENT1">;</EOL_SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <KEYWORDS>\r
+ <KEYWORD1>and</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>cond</KEYWORD1>\r
+ <KEYWORD1>cond-expand</KEYWORD1>\r
+ <KEYWORD1>define</KEYWORD1>\r
+ <KEYWORD1>define-macro</KEYWORD1>\r
+ <KEYWORD1>delay</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>fluid-let</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>lambda</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>let*</KEYWORD1>\r
+ <KEYWORD1>letrec</KEYWORD1>\r
+ <KEYWORD1>or</KEYWORD1>\r
+ <KEYWORD1>quasiquote</KEYWORD1>\r
+ <KEYWORD1>quote</KEYWORD1>\r
+ <KEYWORD1>set!</KEYWORD1>\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>acos</KEYWORD2>\r
+ <KEYWORD2>angle</KEYWORD2>\r
+ <KEYWORD2>append</KEYWORD2>\r
+ <KEYWORD2>apply</KEYWORD2>\r
+ <KEYWORD2>asin</KEYWORD2>\r
+ <KEYWORD2>assoc</KEYWORD2>\r
+ <KEYWORD2>assq</KEYWORD2>\r
+ <KEYWORD2>assv</KEYWORD2>\r
+ <KEYWORD2>atan</KEYWORD2>\r
+ <KEYWORD2>car</KEYWORD2>\r
+ <KEYWORD2>cdr</KEYWORD2>\r
+ <KEYWORD2>caar</KEYWORD2>\r
+ <KEYWORD2>cadr</KEYWORD2>\r
+ <KEYWORD2>cdar</KEYWORD2>\r
+ <KEYWORD2>cddr</KEYWORD2>\r
+ <KEYWORD2>caaar</KEYWORD2>\r
+ <KEYWORD2>caadr</KEYWORD2>\r
+ <KEYWORD2>cadar</KEYWORD2>\r
+ <KEYWORD2>caddr</KEYWORD2>\r
+ <KEYWORD2>cdaar</KEYWORD2>\r
+ <KEYWORD2>cdadr</KEYWORD2>\r
+ <KEYWORD2>cddar</KEYWORD2>\r
+ <KEYWORD2>cdddr</KEYWORD2>\r
+ <KEYWORD2>call-with-current-continuation</KEYWORD2>\r
+ <KEYWORD2>call-with-input-file</KEYWORD2>\r
+ <KEYWORD2>call-with-output-file</KEYWORD2>\r
+ <KEYWORD2>call-with-values</KEYWORD2>\r
+ <KEYWORD2>call/cc</KEYWORD2>\r
+ <KEYWORD2>catch</KEYWORD2>\r
+ <KEYWORD2>ceiling</KEYWORD2>\r
+ <KEYWORD2>char->integer</KEYWORD2>\r
+ <KEYWORD2>char-downcase</KEYWORD2>\r
+ <KEYWORD2>char-upcase</KEYWORD2>\r
+ <KEYWORD2>close-input-port</KEYWORD2>\r
+ <KEYWORD2>close-output-port</KEYWORD2>\r
+ <KEYWORD2>cons</KEYWORD2>\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>current-input-port</KEYWORD2>\r
+ <KEYWORD2>current-output-port</KEYWORD2>\r
+ <KEYWORD2>delete-file</KEYWORD2>\r
+ <KEYWORD2>display</KEYWORD2>\r
+ <KEYWORD2>dynamic-wind</KEYWORD2>\r
+ <KEYWORD2>eval</KEYWORD2>\r
+ <KEYWORD2>exit</KEYWORD2>\r
+ <KEYWORD2>exact->inexact</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>expt</KEYWORD2>\r
+ <KEYWORD2>file-or-directory-modify-seconds</KEYWORD2>\r
+ <KEYWORD2>floor</KEYWORD2>\r
+ <KEYWORD2>force</KEYWORD2>\r
+ <KEYWORD2>for-each</KEYWORD2>\r
+ <KEYWORD2>gcd</KEYWORD2>\r
+ <KEYWORD2>gensym</KEYWORD2>\r
+ <KEYWORD2>get-output-string</KEYWORD2>\r
+ <KEYWORD2>getenv</KEYWORD2>\r
+ <KEYWORD2>imag-part</KEYWORD2>\r
+ <KEYWORD2>integer->char</KEYWORD2>\r
+ <KEYWORD2>lcm</KEYWORD2>\r
+ <KEYWORD2>length</KEYWORD2>\r
+ <KEYWORD2>list</KEYWORD2>\r
+ <KEYWORD2>list->string</KEYWORD2>\r
+ <KEYWORD2>list->vector</KEYWORD2>\r
+ <KEYWORD2>list-ref</KEYWORD2>\r
+ <KEYWORD2>list-tail</KEYWORD2>\r
+ <KEYWORD2>load</KEYWORD2>\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>magnitude</KEYWORD2>\r
+ <KEYWORD2>make-polar</KEYWORD2>\r
+ <KEYWORD2>make-rectangular</KEYWORD2>\r
+ <KEYWORD2>make-string</KEYWORD2>\r
+ <KEYWORD2>make-vector</KEYWORD2>\r
+ <KEYWORD2>map</KEYWORD2>\r
+ <KEYWORD2>max</KEYWORD2>\r
+ <KEYWORD2>member</KEYWORD2>\r
+ <KEYWORD2>memq</KEYWORD2>\r
+ <KEYWORD2>memv</KEYWORD2>\r
+ <KEYWORD2>min</KEYWORD2>\r
+ <KEYWORD2>modulo</KEYWORD2>\r
+ <KEYWORD2>newline</KEYWORD2>\r
+ <KEYWORD2>nil</KEYWORD2>\r
+ <KEYWORD2>not</KEYWORD2>\r
+ <KEYWORD2>number->string</KEYWORD2>\r
+ <KEYWORD2>open-input-file</KEYWORD2>\r
+ <KEYWORD2>open-input-string</KEYWORD2>\r
+ <KEYWORD2>open-output-file</KEYWORD2>\r
+ <KEYWORD2>open-output-string</KEYWORD2>\r
+ <KEYWORD2>peek-char</KEYWORD2>\r
+ <KEYWORD2>quotient</KEYWORD2>\r
+ <KEYWORD2>read</KEYWORD2>\r
+ <KEYWORD2>read-char</KEYWORD2>\r
+ <KEYWORD2>read-line</KEYWORD2>\r
+ <KEYWORD2>real-part</KEYWORD2>\r
+ <KEYWORD2>remainder</KEYWORD2>\r
+ <KEYWORD2>reverse</KEYWORD2>\r
+ <KEYWORD2>reverse!</KEYWORD2>\r
+ <KEYWORD2>round</KEYWORD2>\r
+ <KEYWORD2>set-car!</KEYWORD2>\r
+ <KEYWORD2>set-cdr!</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>sqrt</KEYWORD2>\r
+ <KEYWORD2>string</KEYWORD2>\r
+ <KEYWORD2>string->list</KEYWORD2>\r
+ <KEYWORD2>string->number</KEYWORD2>\r
+ <KEYWORD2>string->symbol</KEYWORD2>\r
+ <KEYWORD2>string-append</KEYWORD2>\r
+ <KEYWORD2>string-copy</KEYWORD2>\r
+ <KEYWORD2>string-fill!</KEYWORD2>\r
+ <KEYWORD2>string-length</KEYWORD2>\r
+ <KEYWORD2>string-ref</KEYWORD2>\r
+ <KEYWORD2>string-set!</KEYWORD2>\r
+ <KEYWORD2>substring</KEYWORD2>\r
+ <KEYWORD2>symbol->string</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>tan</KEYWORD2>\r
+ <KEYWORD2>truncate</KEYWORD2>\r
+ <KEYWORD2>values</KEYWORD2>\r
+ <KEYWORD2>vector</KEYWORD2>\r
+ <KEYWORD2>vector->list</KEYWORD2>\r
+ <KEYWORD2>vector-fill!</KEYWORD2>\r
+ <KEYWORD2>vector-length</KEYWORD2>\r
+ <KEYWORD2>vector-ref</KEYWORD2>\r
+ <KEYWORD2>vector-set!</KEYWORD2>\r
+ <KEYWORD2>with-input-from-file</KEYWORD2>\r
+ <KEYWORD2>with-output-to-file</KEYWORD2>\r
+ <KEYWORD2>write</KEYWORD2>\r
+ <KEYWORD2>write-char</KEYWORD2>\r
+ <KEYWORD3>boolean?</KEYWORD3>\r
+ <KEYWORD3>char-alphabetic?</KEYWORD3>\r
+ <KEYWORD3>char-ci<=?</KEYWORD3>\r
+ <KEYWORD3>char-ci<?</KEYWORD3>\r
+ <KEYWORD3>char-ci=?</KEYWORD3>\r
+ <KEYWORD3>char-ci>=?</KEYWORD3>\r
+ <KEYWORD3>char-ci>?</KEYWORD3>\r
+ <KEYWORD3>char-lower-case?</KEYWORD3>\r
+ <KEYWORD3>char-numeric?</KEYWORD3>\r
+ <KEYWORD3>char-ready?</KEYWORD3>\r
+ <KEYWORD3>char-upper-case?</KEYWORD3>\r
+ <KEYWORD3>char-whitespace?</KEYWORD3>\r
+ <KEYWORD3>char<=?</KEYWORD3>\r
+ <KEYWORD3>char<?</KEYWORD3>\r
+ <KEYWORD3>char=?</KEYWORD3>\r
+ <KEYWORD3>char>=?</KEYWORD3>\r
+ <KEYWORD3>char>?</KEYWORD3>\r
+ <KEYWORD3>char?</KEYWORD3>\r
+ <KEYWORD3>complex?</KEYWORD3>\r
+ <KEYWORD3>eof-object?</KEYWORD3>\r
+ <KEYWORD3>eq?</KEYWORD3>\r
+ <KEYWORD3>equal?</KEYWORD3>\r
+ <KEYWORD3>eqv?</KEYWORD3>\r
+ <KEYWORD3>even?</KEYWORD3>\r
+ <KEYWORD3>exact?</KEYWORD3>\r
+ <KEYWORD3>file-exists?</KEYWORD3>\r
+ <KEYWORD3>inexact?</KEYWORD3>\r
+ <KEYWORD3>input-port?</KEYWORD3>\r
+ <KEYWORD3>integer?</KEYWORD3>\r
+ <KEYWORD3>list?</KEYWORD3>\r
+ <KEYWORD3>negative?</KEYWORD3>\r
+ <KEYWORD3>null?</KEYWORD3>\r
+ <KEYWORD3>number?</KEYWORD3>\r
+ <KEYWORD3>odd?</KEYWORD3>\r
+ <KEYWORD3>output-port?</KEYWORD3>\r
+ <KEYWORD3>pair?</KEYWORD3>\r
+ <KEYWORD3>port?</KEYWORD3>\r
+ <KEYWORD3>positive?</KEYWORD3>\r
+ <KEYWORD3>procedure?</KEYWORD3>\r
+ <KEYWORD3>rational?</KEYWORD3>\r
+ <KEYWORD3>real?</KEYWORD3>\r
+ <KEYWORD3>string-ci<=?</KEYWORD3>\r
+ <KEYWORD3>string-ci<?</KEYWORD3>\r
+ <KEYWORD3>string-ci=?</KEYWORD3>\r
+ <KEYWORD3>string-ci>=?</KEYWORD3>\r
+ <KEYWORD3>string-ci>?</KEYWORD3>\r
+ <KEYWORD3>string<=?</KEYWORD3>\r
+ <KEYWORD3>string<?</KEYWORD3>\r
+ <KEYWORD3>string=?</KEYWORD3>\r
+ <KEYWORD3>string>=?</KEYWORD3>\r
+ <KEYWORD3>string>?</KEYWORD3>\r
+ <KEYWORD3>string?</KEYWORD3>\r
+ <KEYWORD3>symbol?</KEYWORD3>\r
+ <KEYWORD3>vector?</KEYWORD3>\r
+ <KEYWORD3>zero?</KEYWORD3>\r
+ <LITERAL2>#t</LITERAL2>\r
+ <LITERAL2>#f</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ sdl_pr.xml K. J. Turner <kjt@cs.stir.ac.uk> 26th February 2004\r
+\r
+ SDL (Specification and Description Language) is an ITU standard (Z.100)\r
+ for a formal specification language used in communications and system specification generally.\r
+\r
+ This mode handles SDL/PR (Phrase Representation), but does not (yet) deal with SDL 2000.\r
+\r
+ Auto-indentation occurs if the following are at the start of a line (ignoring\r
+ leading white space): "block", "channel", "connection", "decision", "generator", "input", "macro", "newtype", "operator", "package", "procedure", "process", "refinement", "service", "start", "state", "substructure", "syntype", "system".\r
+\r
+ This also happens if the following appear on their own (i.e. also ignoring\r
+ trailing white space): "signal".\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="*/"/>\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE="\s*(block|channel|connection|decision|generator|input|macro|newtype|operator|package|procedure|process|refinement|service|start|state|substructure|syntype|system).*|\s*(signal)\s*"/>\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- SDT/TAU Comments -->\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>/*#SDTREF</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- Standard Comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <!-- String Literals -->\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- Standard Operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">//</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">and</SEQ>\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">mod</SEQ>\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">not</SEQ>\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">or</SEQ>\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">rem</SEQ>\r
+ <SEQ TYPE="OPERATOR" AT_WORD_START="TRUE">xor</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Reserved Words -->\r
+ <KEYWORD1>active</KEYWORD1>\r
+ <KEYWORD1>adding</KEYWORD1>\r
+ <KEYWORD1>all</KEYWORD1>\r
+ <KEYWORD1>alternative</KEYWORD1>\r
+ <KEYWORD1>any</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>atleast</KEYWORD1>\r
+ <KEYWORD1>axioms</KEYWORD1>\r
+ <KEYWORD1>block</KEYWORD1>\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>channel</KEYWORD1>\r
+ <KEYWORD1>comment</KEYWORD1>\r
+ <KEYWORD1>connect</KEYWORD1>\r
+ <KEYWORD1>connection</KEYWORD1>\r
+ <KEYWORD1>constant</KEYWORD1>\r
+ <KEYWORD1>constants</KEYWORD1>\r
+ <KEYWORD1>create</KEYWORD1>\r
+ <KEYWORD1>dcl</KEYWORD1>\r
+ <KEYWORD1>decision</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>endalternative</KEYWORD1>\r
+ <KEYWORD1>endblock</KEYWORD1>\r
+ <KEYWORD1>endchannel</KEYWORD1>\r
+ <KEYWORD1>endconnection</KEYWORD1>\r
+ <KEYWORD1>enddecision</KEYWORD1>\r
+ <KEYWORD1>endgenerator</KEYWORD1>\r
+ <KEYWORD1>endmacro</KEYWORD1>\r
+ <KEYWORD1>endnewtype</KEYWORD1>\r
+ <KEYWORD1>endoperator</KEYWORD1>\r
+ <KEYWORD1>endpackage</KEYWORD1>\r
+ <KEYWORD1>endprocedure</KEYWORD1>\r
+ <KEYWORD1>endprocess</KEYWORD1>\r
+ <KEYWORD1>endrefinement</KEYWORD1>\r
+ <KEYWORD1>endselect</KEYWORD1>\r
+ <KEYWORD1>endservice</KEYWORD1>\r
+ <KEYWORD1>endstate</KEYWORD1>\r
+ <KEYWORD1>endsubstructure</KEYWORD1>\r
+ <KEYWORD1>endsyntype</KEYWORD1>\r
+ <KEYWORD1>endsystem</KEYWORD1>\r
+ <KEYWORD1>env</KEYWORD1>\r
+ <KEYWORD1>error</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>exported</KEYWORD1>\r
+ <KEYWORD1>external</KEYWORD1>\r
+ <KEYWORD1>fi</KEYWORD1>\r
+ <KEYWORD1>finalized</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>fpar</KEYWORD1>\r
+ <KEYWORD1>from</KEYWORD1>\r
+ <KEYWORD1>gate</KEYWORD1>\r
+ <KEYWORD1>generator</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>imported</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>inherits</KEYWORD1>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD1>interface</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>literal</KEYWORD1>\r
+ <KEYWORD1>literals</KEYWORD1>\r
+ <KEYWORD1>macro</KEYWORD1>\r
+ <KEYWORD1>macrodefinition</KEYWORD1>\r
+ <KEYWORD1>macroid</KEYWORD1>\r
+ <KEYWORD1>map</KEYWORD1>\r
+ <KEYWORD1>nameclass</KEYWORD1>\r
+ <KEYWORD1>newtype</KEYWORD1>\r
+ <KEYWORD1>nextstate</KEYWORD1>\r
+ <KEYWORD1>nodelay</KEYWORD1>\r
+ <KEYWORD1>noequality</KEYWORD1>\r
+ <KEYWORD1>none</KEYWORD1>\r
+ <KEYWORD1>now</KEYWORD1>\r
+ <KEYWORD1>offspring</KEYWORD1>\r
+ <KEYWORD1>operator</KEYWORD1>\r
+ <KEYWORD1>operators</KEYWORD1>\r
+ <KEYWORD1>ordering</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>parent</KEYWORD1>\r
+ <KEYWORD1>priority</KEYWORD1>\r
+ <KEYWORD1>procedure</KEYWORD1>\r
+ <KEYWORD1>process</KEYWORD1>\r
+ <KEYWORD1>provided</KEYWORD1>\r
+ <KEYWORD1>redefined</KEYWORD1>\r
+ <KEYWORD1>referenced</KEYWORD1>\r
+ <KEYWORD1>refinement</KEYWORD1>\r
+ <KEYWORD1>remote</KEYWORD1>\r
+ <KEYWORD1>reset</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>returns</KEYWORD1>\r
+ <KEYWORD1>revealed</KEYWORD1>\r
+ <KEYWORD1>reverse</KEYWORD1>\r
+ <KEYWORD1>route</KEYWORD1>\r
+ <KEYWORD1>save</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>self</KEYWORD1>\r
+ <KEYWORD1>sender</KEYWORD1>\r
+ <KEYWORD1>service</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>signal</KEYWORD1>\r
+ <KEYWORD1>signallist</KEYWORD1>\r
+ <KEYWORD1>signalroute</KEYWORD1>\r
+ <KEYWORD1>signalset</KEYWORD1>\r
+ <KEYWORD1>spelling</KEYWORD1>\r
+ <KEYWORD1>start</KEYWORD1>\r
+ <KEYWORD1>state</KEYWORD1>\r
+ <KEYWORD1>stop</KEYWORD1>\r
+ <KEYWORD1>struct</KEYWORD1>\r
+ <KEYWORD1>substructure</KEYWORD1>\r
+ <KEYWORD1>synonym</KEYWORD1>\r
+ <KEYWORD1>syntype</KEYWORD1>\r
+ <KEYWORD1>system</KEYWORD1>\r
+ <KEYWORD1>task</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>this</KEYWORD1>\r
+ <KEYWORD1>timer</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>via</KEYWORD1>\r
+ <KEYWORD1>view</KEYWORD1>\r
+ <KEYWORD1>viewed</KEYWORD1>\r
+ <KEYWORD1>virtual</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+\r
+ <!-- Standard Library Sorts -->\r
+ <KEYWORD2>Boolean</KEYWORD2>\r
+ <KEYWORD2>Character</KEYWORD2>\r
+ <KEYWORD2>Charstring</KEYWORD2>\r
+ <KEYWORD2>Duration</KEYWORD2>\r
+ <KEYWORD2>Integer</KEYWORD2>\r
+ <KEYWORD2>Natural</KEYWORD2>\r
+ <KEYWORD2>Real</KEYWORD2>\r
+ <KEYWORD2>PId</KEYWORD2>\r
+ <KEYWORD2>Time</KEYWORD2>\r
+\r
+ <!-- Standard Library Generators -->\r
+ <KEYWORD3>Array</KEYWORD3>\r
+ <KEYWORD3>String</KEYWORD3>\r
+ <KEYWORD3>Powerset</KEYWORD3>\r
+\r
+ <!-- Standard Library Literals -->\r
+ <LITERAL1>false</LITERAL1>\r
+ <LITERAL1>null</LITERAL1>\r
+ <LITERAL1>true</LITERAL1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES>\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD Entity declarations -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::ENTITY-TAGS">\r
+ <BEGIN><!ENTITY</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CDATA sections -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::CDATA">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comments -->\r
+ <EOL_SPAN TYPE="COMMENT2">#!</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$?</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$*</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$@</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$$</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$<</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+ <MARK_PREVIOUS TYPE="KEYWORD2" MATCH_TYPE="OPERATOR">=</MARK_PREVIOUS>\r
+\r
+ <!-- weird stuff -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="EXEC">\r
+ <BEGIN>$((</BEGIN>\r
+ <END>))</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="EXEC">\r
+ <BEGIN>$(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="EXEC">\r
+ <BEGIN>$[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="EXEC">\r
+ <BEGIN>`</BEGIN>\r
+ <END>`</END>\r
+ </SPAN>\r
+\r
+ <!-- Literals -->\r
+ <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- Readins -->\r
+ <SPAN_REGEXP HASH_CHAR="<<" TYPE="LITERAL1" DELEGATE="LITERAL">\r
+ <BEGIN><![CDATA[<<[\p{Space}'"]*([\p{Alnum}_]+)[\p{Space}'"]*]]></BEGIN>\r
+ <END>$1</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+\r
+ <!-- %jobnumber -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">%</MARK_FOLLOWING>\r
+\r
+ <!-- functions -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>elif</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>fi</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <OPERATOR>;;</OPERATOR>\r
+ <KEYWORD1>esac</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>done</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ </KEYWORDS>\r
+\r
+ <!-- some of these should be marked OPERATOR -->\r
+ <!-- <SEQ TYPE="NULL">)</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">=</SEQ>\r
+ <SEQ TYPE="NULL">!</SEQ>\r
+ <SEQ TYPE="NULL">>=</SEQ>\r
+ <SEQ TYPE="NULL"><=</SEQ>\r
+ <SEQ TYPE="NULL">+</SEQ>\r
+ <SEQ TYPE="NULL">-</SEQ>\r
+ <SEQ TYPE="NULL">/</SEQ>\r
+ <SEQ TYPE="NULL">*</SEQ>\r
+ <SEQ TYPE="NULL">^</SEQ>\r
+ <SEQ TYPE="NULL">~</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ SEQ TYPE="NULL">.</SEQ\r
+ <SEQ TYPE="NULL">,</SEQ>\r
+ <SEQ TYPE="NULL">;</SEQ>\r
+ <SEQ TYPE="NULL">]</SEQ>\r
+ <SEQ TYPE="NULL">[</SEQ>\r
+ <SEQ TYPE="NULL">?</SEQ>\r
+ <SEQ TYPE="NULL">:</SEQ> -->\r
+ </RULES>\r
+\r
+ <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+ </RULES>\r
+\r
+ <RULES SET="EXEC" DEFAULT="KEYWORD3" ESCAPE="\">\r
+ <!-- Variables -->\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>$((</BEGIN>\r
+ <END>))</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>$(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>$[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- SSI -->\r
+ <!-- SSI directives should ALWAYS end like this, with a space\r
+ before the tag end, so let's make it colorize poorly otherwise -->\r
+ <!-- ... or really? see bug report 964860 -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="SSI">\r
+ <BEGIN><!--#</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="SSI" DEFAULT="KEYWORD3">\r
+ <SPAN TYPE="LITERAL1" MATCH_TYPE="OPERATOR" DELEGATE="SSI-EXPRESSION">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- MD: i don't think this is valid\r
+ <SPAN TYPE="LITERAL1" MATCH_TYPE="OPERATOR" DELEGATE="SSI-EXPRESSION">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ -->\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>config</KEYWORD1>\r
+ <KEYWORD1>echo</KEYWORD1>\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>flastmod</KEYWORD1>\r
+ <KEYWORD1>fsize</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+\r
+ <KEYWORD2>cgi</KEYWORD2>\r
+ <KEYWORD2>errmsg</KEYWORD2>\r
+ <KEYWORD2>file</KEYWORD2>\r
+ <KEYWORD2>sizefmt</KEYWORD2>\r
+ <KEYWORD2>timefmt</KEYWORD2>\r
+ <KEYWORD2>var</KEYWORD2>\r
+ <KEYWORD2>cmd</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="SSI-EXPRESSION" DEFAULT="LITERAL1" ESCAPE="\">\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="["/>\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE="]"/>\r
+ <PROPERTY NAME="commentStart" VALUE="""/>\r
+ <PROPERTY NAME="commentEnd" VALUE="""/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" ESCAPE="\"\r
+ HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="-?\d+([./]\d+)?">\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2">#</MARK_FOLLOWING>\r
+ \r
+ <SEQ TYPE="MARKUP">@</SEQ>\r
+ \r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+ <SPAN TYPE="KEYWORD1">\r
+ <BEGIN>|</BEGIN>\r
+ <END>|</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL4">&</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">`</MARK_FOLLOWING>\r
+ \r
+ <MARK_FOLLOWING TYPE="LITERAL3">$\</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL3">$</MARK_FOLLOWING>\r
+ \r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Smalltalk mode, by Marcio Marchini mqm@magma.ca -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE=""" />\r
+ <PROPERTY NAME="commentEnd" VALUE=""" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="[" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="]" />\r
+\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="KEYWORD3" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR">#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1" MATCH_TYPE="OPERATOR">$</MARK_FOLLOWING>\r
+\r
+\r
+ <KEYWORDS>\r
+ <!-- Constants -->\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>nil</KEYWORD1>\r
+\r
+ <!-- Reserved identifiers -->\r
+ <KEYWORD2>self</KEYWORD2>\r
+ <KEYWORD2>super</KEYWORD2>\r
+\r
+ <!-- not really keywords, but a different color works well-->\r
+ <KEYWORD3>isNil</KEYWORD3>\r
+ <KEYWORD3>not</KEYWORD3>\r
+\r
+ <!-- not really -->\r
+ <LITERAL2>Smalltalk</LITERAL2>\r
+ <LITERAL2>Transcript</LITERAL2>\r
+\r
+ <!-- base classes -->\r
+ <LITERAL2>Date</LITERAL2>\r
+ <LITERAL2>Time</LITERAL2>\r
+ <LITERAL2>Boolean</LITERAL2>\r
+ <LITERAL2>True</LITERAL2>\r
+ <LITERAL2>False</LITERAL2>\r
+ <LITERAL2>Character</LITERAL2>\r
+ <LITERAL2>String</LITERAL2>\r
+ <LITERAL2>Array</LITERAL2>\r
+ <LITERAL2>Symbol</LITERAL2>\r
+ <LITERAL2>Integer</LITERAL2>\r
+ <LITERAL2>Object</LITERAL2>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ SMI MIB mode by Scott Allen (scotta@idirect.com)\r
+ For "Structure of Management Information" version 2 (SMIv2)\r
+ "Management Information Base" (MIB) modules as used by the\r
+ "Simple Network Management Protocol" (SNMP).\r
+\r
+ As per RFC's 2578, 2579 and 2580\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+\r
+ <PROPERTY NAME="noWordSep" VALUE="-_" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="unindentNextLines" VALUE=".*::=\s*\{.*\}\s*$" />\r
+ <PROPERTY NAME="indentNextLines"\r
+ VALUE=".*(::=|AGENT-CAPABILITIES|DESCRIPTION|IMPORTS|MODULE-COMPLIANCE|MODULE-IDENTITY|NOTIFICATION-GROUP|NOTIFICATION-TYPE|OBJECT-GROUP|OBJECT-IDENTITY|OBJECT-TYPE|TEXTUAL-CONVENTION)\s*$" />\r
+ </PROPS>\r
+\r
+ <RULES\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE">\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">::=</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <SEQ TYPE="KEYWORD2">OBJECT IDENTIFIER</SEQ>\r
+ <SEQ TYPE="KEYWORD2">SEQUENCE OF</SEQ>\r
+ <SEQ TYPE="KEYWORD2">OCTET STRING</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <FUNCTION>AGENT-CAPABILITIES</FUNCTION>\r
+ <FUNCTION>BEGIN</FUNCTION>\r
+ <FUNCTION>END</FUNCTION>\r
+ <FUNCTION>FROM</FUNCTION>\r
+ <FUNCTION>IMPORTS</FUNCTION>\r
+ <FUNCTION>MODULE-COMPLIANCE</FUNCTION>\r
+ <FUNCTION>MODULE-IDENTITY</FUNCTION>\r
+ <FUNCTION>NOTIFICATION-GROUP</FUNCTION>\r
+ <FUNCTION>NOTIFICATION-TYPE</FUNCTION>\r
+ <FUNCTION>OBJECT-GROUP</FUNCTION>\r
+ <FUNCTION>OBJECT-IDENTITY</FUNCTION>\r
+ <FUNCTION>OBJECT-TYPE</FUNCTION>\r
+ <FUNCTION>TEXTUAL-CONVENTION</FUNCTION>\r
+\r
+ <KEYWORD1>ACCESS</KEYWORD1>\r
+ <KEYWORD1>AUGMENTS</KEYWORD1>\r
+ <KEYWORD1>CONTACT-INFO</KEYWORD1>\r
+ <KEYWORD1>CREATION-REQUIRES</KEYWORD1>\r
+ <KEYWORD1>DEFINITIONS</KEYWORD1>\r
+ <KEYWORD1>DEFVAL</KEYWORD1>\r
+ <KEYWORD1>DESCRIPTION</KEYWORD1>\r
+ <KEYWORD1>DISPLAY-HINT</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>INCLUDES</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>LAST-UPDATED</KEYWORD1>\r
+ <KEYWORD1>MANDATORY-GROUPS</KEYWORD1>\r
+ <KEYWORD1>MAX-ACCESS</KEYWORD1>\r
+ <KEYWORD1>MIN-ACCESS</KEYWORD1>\r
+ <KEYWORD1>MODULE</KEYWORD1>\r
+ <KEYWORD1>NOTIFICATIONS</KEYWORD1>\r
+ <KEYWORD1>OBJECT</KEYWORD1>\r
+ <KEYWORD1>OBJECTS</KEYWORD1>\r
+ <KEYWORD1>ORGANIZATION</KEYWORD1>\r
+ <KEYWORD1>PRODUCT-RELEASE</KEYWORD1>\r
+ <KEYWORD1>REFERENCE</KEYWORD1>\r
+ <KEYWORD1>REVISION</KEYWORD1>\r
+ <KEYWORD1>STATUS</KEYWORD1>\r
+ <KEYWORD1>SYNTAX</KEYWORD1>\r
+ <KEYWORD1>SUPPORTS</KEYWORD1>\r
+ <KEYWORD1>UNITS</KEYWORD1>\r
+ <KEYWORD1>VARIATION</KEYWORD1>\r
+ <KEYWORD1>WRITE-SYNTAX</KEYWORD1>\r
+\r
+ <KEYWORD2>AutonomousType</KEYWORD2>\r
+ <KEYWORD2>BITS</KEYWORD2>\r
+ <KEYWORD2>Counter32</KEYWORD2>\r
+ <KEYWORD2>Counter64</KEYWORD2>\r
+ <KEYWORD2>DateAndTime</KEYWORD2>\r
+ <KEYWORD2>DisplayString</KEYWORD2>\r
+ <KEYWORD2>Gauge32</KEYWORD2>\r
+ <KEYWORD2>InstancePointer</KEYWORD2>\r
+ <KEYWORD2>INTEGER</KEYWORD2>\r
+ <KEYWORD2>Integer32</KEYWORD2>\r
+ <KEYWORD2>IpAddress</KEYWORD2>\r
+ <KEYWORD2>MacAddress</KEYWORD2>\r
+ <KEYWORD2>Opaque</KEYWORD2>\r
+ <KEYWORD2>PhysAddress</KEYWORD2>\r
+ <KEYWORD2>RowPointer</KEYWORD2>\r
+ <KEYWORD2>RowStatus</KEYWORD2>\r
+ <KEYWORD2>SEQUENCE</KEYWORD2>\r
+ <KEYWORD2>TAddress</KEYWORD2>\r
+ <KEYWORD2>TDomain</KEYWORD2>\r
+ <KEYWORD2>TestAndIncr</KEYWORD2>\r
+ <KEYWORD2>TimeInterval</KEYWORD2>\r
+ <KEYWORD2>TimeStamp</KEYWORD2>\r
+ <KEYWORD2>TimeTicks</KEYWORD2>\r
+ <KEYWORD2>TruthValue</KEYWORD2>\r
+ <KEYWORD2>StorageType</KEYWORD2>\r
+ <KEYWORD2>Unsigned32</KEYWORD2>\r
+ <KEYWORD2>VariablePointer</KEYWORD2>\r
+\r
+ <KEYWORD3>accessible-for-notify</KEYWORD3>\r
+ <KEYWORD3>current</KEYWORD3>\r
+ <KEYWORD3>deprecated</KEYWORD3>\r
+ <KEYWORD3>not-accessible</KEYWORD3>\r
+ <KEYWORD3>obsolete</KEYWORD3>\r
+ <KEYWORD3>read-create</KEYWORD3>\r
+ <KEYWORD3>read-only</KEYWORD3>\r
+ <KEYWORD3>read-write</KEYWORD3>\r
+ <KEYWORD3>SIZE</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE="_,+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><-</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <MARK_PREVIOUS AT_WHITESPACE_END="TRUE"\r
+ MATCH_TYPE="OPERATOR"\r
+ TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>sizeof</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <KEYWORD1>function</KEYWORD1>\r
+\r
+ <LITERAL2>T</LITERAL2>\r
+ <LITERAL2>F</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN DELEGATE="pl-sql::MAIN">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!></SEQ>\r
+ <SEQ TYPE="OPERATOR">!<</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ \r
+ <KEYWORDS>\r
+ <!-- reserved words -->\r
+ <KEYWORD1>LOAD</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>INFILE</KEYWORD1>\r
+ <KEYWORD1>BADFILE</KEYWORD1>\r
+ <KEYWORD1>DISCARDFILE</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>FIELDS</KEYWORD1>\r
+ <KEYWORD1>TERMINATED</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>OPTIONALLY</KEYWORD1>\r
+ <KEYWORD1>ENCLOSED</KEYWORD1>\r
+ <KEYWORD1>EXTERNAL</KEYWORD1>\r
+ <KEYWORD1>TRAILING</KEYWORD1>\r
+ <KEYWORD1>NULLCOLS</KEYWORD1>\r
+ <KEYWORD1>NULLIF</KEYWORD1>\r
+ <KEYWORD1>DATA</KEYWORD1>\r
+ <KEYWORD1>BLANKS</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>POSITION</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>APPEND</KEYWORD1>\r
+ <KEYWORD1>REPLACE</KEYWORD1>\r
+ <KEYWORD1>EOF</KEYWORD1>\r
+ <KEYWORD1>LOBFILE</KEYWORD1>\r
+ <KEYWORD1>TRUNCATE</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ \r
+ <!--function-->\r
+ <KEYWORD1>COUNT</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>SDF</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>SYSDATE</KEYWORD1>\r
+\r
+ <!-- data types -->\r
+ <KEYWORD1>binary</KEYWORD1>\r
+ <KEYWORD1>bit</KEYWORD1>\r
+ <KEYWORD1>blob</KEYWORD1>\r
+ <KEYWORD1>boolean</KEYWORD1>\r
+ <KEYWORD1>char</KEYWORD1>\r
+ <KEYWORD1>character</KEYWORD1>\r
+ <KEYWORD1>constant</KEYWORD1>\r
+ <KEYWORD1>date</KEYWORD1>\r
+ <KEYWORD1>datetime</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>double</KEYWORD1>\r
+ <KEYWORD1>filler</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>image</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <KEYWORD1>integer</KEYWORD1>\r
+ <KEYWORD1>money</KEYWORD1>\r
+ <!-- KEYWORD1>name</KEYWORD1 -->\r
+ <KEYWORD1>numeric</KEYWORD1>\r
+ <KEYWORD1>nchar</KEYWORD1>\r
+ <KEYWORD1>nvarchar</KEYWORD1>\r
+ <KEYWORD1>ntext</KEYWORD1>\r
+ <KEYWORD1>object</KEYWORD1>\r
+ <KEYWORD1>pls_integer</KEYWORD1>\r
+ <KEYWORD1>raw</KEYWORD1>\r
+ <KEYWORD1>real</KEYWORD1>\r
+ <KEYWORD1>smalldatetime</KEYWORD1>\r
+ <KEYWORD1>smallint</KEYWORD1>\r
+ <KEYWORD1>smallmoney</KEYWORD1>\r
+ <KEYWORD1>sequence</KEYWORD1>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>timestamp</KEYWORD1>\r
+ <KEYWORD1>tinyint</KEYWORD1>\r
+ <KEYWORD1>uniqueidentifier</KEYWORD1>\r
+ <KEYWORD1>varbinary</KEYWORD1>\r
+ <KEYWORD1>varchar</KEYWORD1>\r
+ <KEYWORD1>varchar2</KEYWORD1>\r
+ <KEYWORD1>varray</KEYWORD1>\r
+ <KEYWORD1>zoned</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
+ \r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- SQR Mode by Richard F. Ashwell III -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="!" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Normal comments. -->\r
+ <EOL_SPAN TYPE="COMMENT1">!</EOL_SPAN>\r
+\r
+ <!-- Literal String --> \r
+ <SPAN TYPE="LABEL" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN> \r
+\r
+ <!-- SQR Replacement String --> \r
+ <SPAN TYPE="LABEL" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN> \r
+ \r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ \r
+ <MARK_FOLLOWING TYPE="LITERAL1">$</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL2">#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="MARKUP">&</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <!-- Section KeyWords -->\r
+ <FUNCTION>begin-procedure</FUNCTION> \r
+ <FUNCTION>end-procedure</FUNCTION> \r
+ <FUNCTION>begin-report</FUNCTION>\r
+ <FUNCTION>end-report</FUNCTION>\r
+ <FUNCTION>begin-heading</FUNCTION>\r
+ <FUNCTION>end-heading</FUNCTION>\r
+ <FUNCTION>begin-setup</FUNCTION>\r
+ <FUNCTION>end-setup</FUNCTION>\r
+ <FUNCTION>begin-footing</FUNCTION>\r
+ <FUNCTION>end-footing</FUNCTION>\r
+ <FUNCTION>begin-program</FUNCTION>\r
+ <FUNCTION>end-program</FUNCTION>\r
+\r
+ <!-- Block Keywords -->\r
+ <KEYWORD1>begin-select</KEYWORD1>\r
+ <KEYWORD1>end-select</KEYWORD1>\r
+ <KEYWORD1>begin-sql</KEYWORD1>\r
+ <KEYWORD1>end-sql</KEYWORD1>\r
+ \r
+ <!-- SQR Functional Keywords -->\r
+ <KEYWORD2>add</KEYWORD2> \r
+ <KEYWORD2>array-add</KEYWORD2> \r
+ <KEYWORD2>array-divide</KEYWORD2> \r
+ <KEYWORD2>array-multiply</KEYWORD2> \r
+ <KEYWORD2>array-subtract</KEYWORD2> \r
+ <KEYWORD2>ask</KEYWORD2>\r
+ <KEYWORD2>break</KEYWORD2>\r
+ <KEYWORD2>call</KEYWORD2> \r
+ <KEYWORD2>clear-array</KEYWORD2> \r
+ <KEYWORD2>close</KEYWORD2> \r
+ <KEYWORD2>columns</KEYWORD2> \r
+ <KEYWORD2>commit</KEYWORD2> \r
+ <KEYWORD2>concat</KEYWORD2> \r
+ <KEYWORD2>connect</KEYWORD2> \r
+ <KEYWORD2>create-array</KEYWORD2>\r
+ <KEYWORD2>date-time</KEYWORD2> \r
+ <KEYWORD2>display</KEYWORD2> \r
+ <KEYWORD2>divide</KEYWORD2> \r
+ <KEYWORD2>do</KEYWORD2> \r
+ <KEYWORD2>dollar-symbol</KEYWORD2>\r
+ <KEYWORD2>else</KEYWORD2> \r
+ <KEYWORD2>encode</KEYWORD2> \r
+ <KEYWORD2>end-evaluate</KEYWORD2> \r
+ <KEYWORD2>end-if</KEYWORD2> \r
+ <KEYWORD2>end-while</KEYWORD2> \r
+ <KEYWORD2>evaluate</KEYWORD2> \r
+ <KEYWORD2>execute</KEYWORD2> \r
+ <KEYWORD2>extract</KEYWORD2>\r
+ <KEYWORD2>find</KEYWORD2> \r
+ <KEYWORD2>font</KEYWORD2>\r
+ <KEYWORD2>get</KEYWORD2> \r
+ <KEYWORD2>goto</KEYWORD2> \r
+ <KEYWORD2>graphic</KEYWORD2>\r
+ <KEYWORD2>if</KEYWORD2>\r
+ <KEYWORD2>last-page</KEYWORD2> \r
+ <KEYWORD2>let</KEYWORD2> \r
+ <KEYWORD2>lookup</KEYWORD2> \r
+ <KEYWORD2>lowercase</KEYWORD2>\r
+ <KEYWORD2>money-symbol</KEYWORD2> \r
+ <KEYWORD2>move</KEYWORD2> \r
+ <KEYWORD2>multiply</KEYWORD2>\r
+ <KEYWORD2>new-page</KEYWORD2> \r
+ <KEYWORD2>new-report</KEYWORD2> \r
+ <KEYWORD2>next-column</KEYWORD2> \r
+ <KEYWORD2>next-listing</KEYWORD2> \r
+ <KEYWORD2>no-formfeed</KEYWORD2>\r
+ <KEYWORD2>open</KEYWORD2>\r
+ <KEYWORD2>page-number</KEYWORD2> \r
+ <KEYWORD2>page-size</KEYWORD2> \r
+ <KEYWORD2>position</KEYWORD2> \r
+ <KEYWORD2>print</KEYWORD2> \r
+ <KEYWORD2>print-bar-code</KEYWORD2> \r
+ <KEYWORD2>print-chart</KEYWORD2> \r
+ <KEYWORD2>print-direct</KEYWORD2> \r
+ <KEYWORD2>print-image</KEYWORD2> \r
+ <KEYWORD2>printer-deinit</KEYWORD2> \r
+ <KEYWORD2>printer-init</KEYWORD2> \r
+ <KEYWORD2>put</KEYWORD2>\r
+ <KEYWORD2>read</KEYWORD2> \r
+ <KEYWORD2>rollback</KEYWORD2>\r
+ <KEYWORD2>show</KEYWORD2> \r
+ <KEYWORD2>stop</KEYWORD2> \r
+ <KEYWORD2>string</KEYWORD2> \r
+ <KEYWORD2>subtract</KEYWORD2>\r
+ <KEYWORD2>unstring</KEYWORD2> \r
+ <KEYWORD2>uppercase</KEYWORD2> \r
+ <KEYWORD2>use</KEYWORD2> \r
+ <KEYWORD2>use-column</KEYWORD2> \r
+ <KEYWORD2>use-printer-type</KEYWORD2> \r
+ <KEYWORD2>use-procedure</KEYWORD2> \r
+ <KEYWORD2>use-report</KEYWORD2> \r
+ <KEYWORD2>use-report</KEYWORD2>\r
+ <KEYWORD2>while</KEYWORD2> \r
+ <KEYWORD2>write</KEYWORD2>\r
+ <KEYWORD2>to</KEYWORD2>\r
+\r
+ <!-- SQL Keywords -->\r
+ <KEYWORD3>from</KEYWORD3>\r
+ <KEYWORD3>where</KEYWORD3>\r
+ <KEYWORD3>and</KEYWORD3>\r
+ <KEYWORD3>between</KEYWORD3>\r
+ <KEYWORD3>or</KEYWORD3>\r
+ <KEYWORD3>in</KEYWORD3>\r
+ \r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Highlighting for squid.conf by Kris Kopicki (29/11/2003). For squid 2.5-stable -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#"/>\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Comment -->\r
+ <EOL_SPAN TYPE="COMMENT1">#</EOL_SPAN>\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD1>http_port</KEYWORD1>\r
+ <KEYWORD1>https_port</KEYWORD1>\r
+ <KEYWORD1>ssl_unclean_shutdown</KEYWORD1>\r
+ <KEYWORD1>icp_port</KEYWORD1>\r
+ <KEYWORD1>htcp_port</KEYWORD1>\r
+ <KEYWORD1>mcast_groups</KEYWORD1>\r
+ <KEYWORD1>udp_incoming_address</KEYWORD1>\r
+ <KEYWORD1>udp_outgoing_address</KEYWORD1>\r
+ <KEYWORD1>cache_peer</KEYWORD1>\r
+ <KEYWORD1>cache_peer_domain</KEYWORD1>\r
+ <KEYWORD1>neighbor_type_domain</KEYWORD1>\r
+ <KEYWORD1>icp_query_timeout</KEYWORD1>\r
+ <KEYWORD1>maximum_icp_query_timeout</KEYWORD1>\r
+ <KEYWORD1>mcast_icp_query_timeout</KEYWORD1>\r
+ <KEYWORD1>dead_peer_timeout</KEYWORD1>\r
+ <KEYWORD1>hierarchy_stoplist</KEYWORD1>\r
+ <KEYWORD1>no_cache</KEYWORD1>\r
+ <KEYWORD1>cache_mem</KEYWORD1>\r
+ <KEYWORD1>cache_swap_low</KEYWORD1>\r
+ <KEYWORD1>cache_swap_high</KEYWORD1>\r
+ <KEYWORD1>maximum_object_size</KEYWORD1>\r
+ <KEYWORD1>minimum_object_size</KEYWORD1>\r
+ <KEYWORD1>maximum_object_size_in_memory</KEYWORD1>\r
+ <KEYWORD1>ipcache_size</KEYWORD1>\r
+ <KEYWORD1>ipcache_low</KEYWORD1>\r
+ <KEYWORD1>ipcache_high</KEYWORD1>\r
+ <KEYWORD1>fqdncache_size</KEYWORD1>\r
+ <KEYWORD1>cache_replacement_policy</KEYWORD1>\r
+ <KEYWORD1>memory_replacement_policy</KEYWORD1>\r
+ <KEYWORD1>cache_dir</KEYWORD1>\r
+ <KEYWORD1>cache_access_log</KEYWORD1>\r
+ <KEYWORD1>cache_log</KEYWORD1>\r
+ <KEYWORD1>cache_store_log</KEYWORD1>\r
+ <KEYWORD1>cache_swap_log</KEYWORD1>\r
+ <KEYWORD1>emulate_httpd_log</KEYWORD1>\r
+ <KEYWORD1>log_ip_on_direct</KEYWORD1>\r
+ <KEYWORD1>mime_table</KEYWORD1>\r
+ <KEYWORD1>log_mime_hdrs</KEYWORD1>\r
+ <KEYWORD1>useragent_log</KEYWORD1>\r
+ <KEYWORD1>referer_log</KEYWORD1>\r
+ <KEYWORD1>pid_filename</KEYWORD1>\r
+ <KEYWORD1>debug_options</KEYWORD1>\r
+ <KEYWORD1>log_fqdn</KEYWORD1>\r
+ <KEYWORD1>client_netmask</KEYWORD1>\r
+ <KEYWORD1>ftp_user</KEYWORD1>\r
+ <KEYWORD1>ftp_list_width</KEYWORD1>\r
+ <KEYWORD1>ftp_passive</KEYWORD1>\r
+ <KEYWORD1>ftp_sanitycheck</KEYWORD1>\r
+ <KEYWORD1>cache_dns_program</KEYWORD1>\r
+ <KEYWORD1>dns_children</KEYWORD1>\r
+ <KEYWORD1>dns_retransmit_interval</KEYWORD1>\r
+ <KEYWORD1>dns_timeout</KEYWORD1>\r
+ <KEYWORD1>dns_defnames</KEYWORD1>\r
+ <KEYWORD1>dns_nameservers</KEYWORD1>\r
+ <KEYWORD1>hosts_file</KEYWORD1>\r
+ <KEYWORD1>diskd_program</KEYWORD1>\r
+ <KEYWORD1>unlinkd_program</KEYWORD1>\r
+ <KEYWORD1>pinger_program</KEYWORD1>\r
+ <KEYWORD1>redirect_program</KEYWORD1>\r
+ <KEYWORD1>redirect_children</KEYWORD1>\r
+ <KEYWORD1>redirect_rewrites_host_header</KEYWORD1>\r
+ <KEYWORD1>redirector_access</KEYWORD1>\r
+ <KEYWORD1>auth_param</KEYWORD1>\r
+ <KEYWORD1>authenticate_cache_garbage_interval</KEYWORD1>\r
+ <KEYWORD1>authenticate_ttl</KEYWORD1>\r
+ <KEYWORD1>authenticate_ip_ttl</KEYWORD1>\r
+ <KEYWORD1>external_acl_type</KEYWORD1>\r
+ <KEYWORD1>wais_relay_host</KEYWORD1>\r
+ <KEYWORD1>wais_relay_port</KEYWORD1>\r
+ <KEYWORD1>request_header_max_size</KEYWORD1>\r
+ <KEYWORD1>request_body_max_size</KEYWORD1>\r
+ <KEYWORD1>refresh_pattern</KEYWORD1>\r
+ <KEYWORD1>quick_abort_min</KEYWORD1>\r
+ <KEYWORD1>quick_abort_max</KEYWORD1>\r
+ <KEYWORD1>quick_abort_pct</KEYWORD1>\r
+ <KEYWORD1>negative_ttl</KEYWORD1>\r
+ <KEYWORD1>positive_dns_ttl</KEYWORD1>\r
+ <KEYWORD1>negative_dns_ttl</KEYWORD1>\r
+ <KEYWORD1>range_offset_limit</KEYWORD1>\r
+ <KEYWORD1>connect_timeout</KEYWORD1>\r
+ <KEYWORD1>peer_connect_timeout</KEYWORD1>\r
+ <KEYWORD1>read_timeout</KEYWORD1>\r
+ <KEYWORD1>request_timeout</KEYWORD1>\r
+ <KEYWORD1>persistent_request_timeout</KEYWORD1>\r
+ <KEYWORD1>client_lifetime</KEYWORD1>\r
+ <KEYWORD1>half_closed_clients</KEYWORD1>\r
+ <KEYWORD1>pconn_timeout</KEYWORD1>\r
+ <KEYWORD1>ident_timeout</KEYWORD1>\r
+ <KEYWORD1>shutdown_lifetime</KEYWORD1>\r
+ <KEYWORD1>acl</KEYWORD1>\r
+ <KEYWORD1>http_access</KEYWORD1>\r
+ <KEYWORD1>http_reply_access</KEYWORD1>\r
+ <KEYWORD1>icp_access</KEYWORD1>\r
+ <KEYWORD1>miss_access</KEYWORD1>\r
+ <KEYWORD1>cache_peer_access</KEYWORD1>\r
+ <KEYWORD1>ident_lookup_access</KEYWORD1>\r
+ <KEYWORD1>tcp_outgoing_tos</KEYWORD1>\r
+ <KEYWORD1>tcp_outgoing_address</KEYWORD1>\r
+ <KEYWORD1>reply_body_max_size</KEYWORD1>\r
+ <KEYWORD1>cache_mgr</KEYWORD1>\r
+ <KEYWORD1>cache_effective_user</KEYWORD1>\r
+ <KEYWORD1>cache_effective_group</KEYWORD1>\r
+ <KEYWORD1>visible_hostname</KEYWORD1>\r
+ <KEYWORD1>unique_hostname</KEYWORD1>\r
+ <KEYWORD1>hostname_aliases</KEYWORD1>\r
+ <KEYWORD1>announce_period</KEYWORD1>\r
+ <KEYWORD1>announce_host</KEYWORD1>\r
+ <KEYWORD1>announce_file</KEYWORD1>\r
+ <KEYWORD1>announce_port</KEYWORD1>\r
+ <KEYWORD1>httpd_accel_host</KEYWORD1>\r
+ <KEYWORD1>httpd_accel_port</KEYWORD1>\r
+ <KEYWORD1>httpd_accel_single_host</KEYWORD1>\r
+ <KEYWORD1>httpd_accel_with_proxy</KEYWORD1>\r
+ <KEYWORD1>httpd_accel_uses_host_header</KEYWORD1>\r
+ <KEYWORD1>dns_testnames</KEYWORD1>\r
+ <KEYWORD1>logfile_rotate</KEYWORD1>\r
+ <KEYWORD1>append_domain</KEYWORD1>\r
+ <KEYWORD1>tcp_recv_bufsize</KEYWORD1>\r
+ <KEYWORD1>err_html_text</KEYWORD1>\r
+ <KEYWORD1>deny_info</KEYWORD1>\r
+ <KEYWORD1>memory_pools</KEYWORD1>\r
+ <KEYWORD1>memory_pools_limit</KEYWORD1>\r
+ <KEYWORD1>forwarded_for</KEYWORD1>\r
+ <KEYWORD1>log_icp_queries</KEYWORD1>\r
+ <KEYWORD1>icp_hit_stale</KEYWORD1>\r
+ <KEYWORD1>minimum_direct_hops</KEYWORD1>\r
+ <KEYWORD1>minimum_direct_rtt</KEYWORD1>\r
+ <KEYWORD1>cachemgr_passwd</KEYWORD1>\r
+ <KEYWORD1>store_avg_object_size</KEYWORD1>\r
+ <KEYWORD1>store_objects_per_bucket</KEYWORD1>\r
+ <KEYWORD1>client_db</KEYWORD1>\r
+ <KEYWORD1>netdb_low</KEYWORD1>\r
+ <KEYWORD1>netdb_high</KEYWORD1>\r
+ <KEYWORD1>netdb_ping_period</KEYWORD1>\r
+ <KEYWORD1>query_icmp</KEYWORD1>\r
+ <KEYWORD1>test_reachability</KEYWORD1>\r
+ <KEYWORD1>buffered_logs</KEYWORD1>\r
+ <KEYWORD1>reload_into_ims</KEYWORD1>\r
+ <KEYWORD1>always_direct</KEYWORD1>\r
+ <KEYWORD1>never_direct</KEYWORD1>\r
+ <KEYWORD1>header_access</KEYWORD1>\r
+ <KEYWORD1>header_replace</KEYWORD1>\r
+ <KEYWORD1>icon_directory</KEYWORD1>\r
+ <KEYWORD1>error_directory</KEYWORD1>\r
+ <KEYWORD1>maximum_single_addr_tries</KEYWORD1>\r
+ <KEYWORD1>snmp_port</KEYWORD1>\r
+ <KEYWORD1>snmp_access</KEYWORD1>\r
+ <KEYWORD1>snmp_incoming_address</KEYWORD1>\r
+ <KEYWORD1>snmp_outgoing_address</KEYWORD1>\r
+ <KEYWORD1>as_whois_server</KEYWORD1>\r
+ <KEYWORD1>wccp_router</KEYWORD1>\r
+ <KEYWORD1>wccp_version</KEYWORD1>\r
+ <KEYWORD1>wccp_incoming_address</KEYWORD1>\r
+ <KEYWORD1>wccp_outgoing_address</KEYWORD1>\r
+ <KEYWORD1>delay_pools</KEYWORD1>\r
+ <KEYWORD1>delay_class</KEYWORD1>\r
+ <KEYWORD1>delay_access</KEYWORD1>\r
+ <KEYWORD1>delay_parameters</KEYWORD1>\r
+ <KEYWORD1>delay_initial_bucket_level</KEYWORD1>\r
+ <KEYWORD1>incoming_icp_average</KEYWORD1>\r
+ <KEYWORD1>incoming_http_average</KEYWORD1>\r
+ <KEYWORD1>incoming_dns_average</KEYWORD1>\r
+ <KEYWORD1>min_icp_poll_cnt</KEYWORD1>\r
+ <KEYWORD1>min_dns_poll_cnt</KEYWORD1>\r
+ <KEYWORD1>min_http_poll_cnt</KEYWORD1>\r
+ <KEYWORD1>max_open_disk_fds</KEYWORD1>\r
+ <KEYWORD1>offline_mode</KEYWORD1>\r
+ <KEYWORD1>uri_whitespace</KEYWORD1>\r
+ <KEYWORD1>broken_posts</KEYWORD1>\r
+ <KEYWORD1>mcast_miss_addr</KEYWORD1>\r
+ <KEYWORD1>mcast_miss_ttl</KEYWORD1>\r
+ <KEYWORD1>mcast_miss_port</KEYWORD1>\r
+ <KEYWORD1>mcast_miss_encode_key</KEYWORD1>\r
+ <KEYWORD1>nonhierarchical_direct</KEYWORD1>\r
+ <KEYWORD1>prefer_direct</KEYWORD1>\r
+ <KEYWORD1>strip_query_terms</KEYWORD1>\r
+ <KEYWORD1>coredump_dir</KEYWORD1>\r
+ <KEYWORD1>redirector_bypass</KEYWORD1>\r
+ <KEYWORD1>ignore_unknown_nameservers</KEYWORD1>\r
+ <KEYWORD1>digest_generation</KEYWORD1>\r
+ <KEYWORD1>digest_bits_per_entry</KEYWORD1>\r
+ <KEYWORD1>digest_rebuild_period</KEYWORD1>\r
+ <KEYWORD1>digest_rewrite_period</KEYWORD1>\r
+ <KEYWORD1>digest_swapout_chunk_size</KEYWORD1>\r
+ <KEYWORD1>digest_rebuild_chunk_percentage</KEYWORD1>\r
+ <KEYWORD1>chroot</KEYWORD1>\r
+ <KEYWORD1>client_persistent_connections</KEYWORD1>\r
+ <KEYWORD1>server_persistent_connections</KEYWORD1>\r
+ <KEYWORD1>pipeline_prefetch</KEYWORD1>\r
+ <KEYWORD1>extension_methods</KEYWORD1>\r
+ <KEYWORD1>request_entities</KEYWORD1>\r
+ <KEYWORD1>high_response_time_warning</KEYWORD1>\r
+ <KEYWORD1>high_page_fault_warning</KEYWORD1>\r
+ <KEYWORD1>high_memory_warning</KEYWORD1>\r
+ <KEYWORD1>store_dir_select_algorithm</KEYWORD1>\r
+ <KEYWORD1>forward_log</KEYWORD1>\r
+ <KEYWORD1>ie_refresh</KEYWORD1>\r
+ <KEYWORD1>vary_ignore_expire</KEYWORD1>\r
+ <KEYWORD1>sleep_after_fork</KEYWORD1>\r
+ \r
+ <KEYWORD2>dst</KEYWORD2>\r
+ <KEYWORD2>src</KEYWORD2>\r
+ <KEYWORD2>method</KEYWORD2>\r
+ <KEYWORD2>port</KEYWORD2>\r
+ <KEYWORD2>proxy_auth</KEYWORD2>\r
+ \r
+ <LITERAL2>on</LITERAL2>\r
+ <LITERAL2>off</LITERAL2>\r
+ <LITERAL2>allow</LITERAL2>\r
+ <LITERAL2>deny</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- S# mode, by Barry Carr (Ixian Software Components Ltd)\r
+ based on Marcio Marchini mqm@magma.ca Smalltalk mode -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="commentStart" VALUE=""" />\r
+ <PROPERTY NAME="commentEnd" VALUE=""" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="[" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="]" />\r
+\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
+ <!-- Standard literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT3">#</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">""</EOL_SPAN>\r
+\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL2" >\r
+ <BEGIN>«</BEGIN>\r
+ <END>»</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">:=</SEQ>\r
+ <SEQ TYPE="OPERATOR">_</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">==</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">//</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">^^</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">-></SEQ>\r
+ <SEQ TYPE="OPERATOR">&&</SEQ>\r
+ <SEQ TYPE="OPERATOR">||</SEQ>\r
+ <SEQ TYPE="OPERATOR">^|</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">~=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!==</SEQ>\r
+ <SEQ TYPE="OPERATOR">~~</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="KEYWORD3" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR">#</MARK_FOLLOWING>\r
+ <MARK_FOLLOWING TYPE="LITERAL1" MATCH_TYPE="OPERATOR">$</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <!-- Constants -->\r
+ <KEYWORD1>disable</KEYWORD1>\r
+ <KEYWORD1>enable</KEYWORD1>\r
+ <KEYWORD1>no</KEYWORD1>\r
+ <KEYWORD1>off</KEYWORD1>\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>yes</KEYWORD1>\r
+\r
+ <!-- Reserved identifiers -->\r
+ <KEYWORD2>self</KEYWORD2>\r
+ <KEYWORD2>true</KEYWORD2>\r
+ <KEYWORD2>false</KEYWORD2>\r
+ <KEYWORD2>nil</KEYWORD2>\r
+ <KEYWORD2>super</KEYWORD2>\r
+ <KEYWORD2>thread</KEYWORD2>\r
+ <KEYWORD2>sender</KEYWORD2>\r
+ <KEYWORD2>senderMethod</KEYWORD2>\r
+ <KEYWORD2>blockSelf</KEYWORD2>\r
+ <KEYWORD2>scheduler</KEYWORD2>\r
+ <KEYWORD2>¼</KEYWORD2>\r
+\r
+ <!-- not really keywords, but a different color works well-->\r
+ <KEYWORD4>isNil</KEYWORD4>\r
+ <KEYWORD4>not</KEYWORD4>\r
+\r
+ <!-- not really -->\r
+ <LITERAL2>Smalltalk</LITERAL2>\r
+ <LITERAL2>Transcript</LITERAL2>\r
+\r
+ <!-- base classes -->\r
+ <LITERAL2>Date</LITERAL2>\r
+ <LITERAL2>Time</LITERAL2>\r
+ <LITERAL2>Boolean</LITERAL2>\r
+ <LITERAL2>True</LITERAL2>\r
+ <LITERAL2>False</LITERAL2>\r
+ <LITERAL2>Character</LITERAL2>\r
+ <LITERAL2>String</LITERAL2>\r
+ <LITERAL2>Array</LITERAL2>\r
+ <LITERAL2>Symbol</LITERAL2>\r
+ <LITERAL2>Integer</LITERAL2>\r
+ <LITERAL2>Object</LITERAL2>\r
+\r
+ <LITERAL3>Application</LITERAL3>\r
+ <LITERAL3>Category</LITERAL3>\r
+ <LITERAL3>Class</LITERAL3>\r
+ <LITERAL3>Compiler</LITERAL3>\r
+ <LITERAL3>EntryPoint</LITERAL3>\r
+ <LITERAL3>Enum</LITERAL3>\r
+ <LITERAL3>Eval</LITERAL3>\r
+ <LITERAL3>Exception</LITERAL3>\r
+ <LITERAL3>Function</LITERAL3>\r
+ <LITERAL3>IconResource</LITERAL3>\r
+ <LITERAL3>Interface</LITERAL3>\r
+ <LITERAL3>Literal</LITERAL3>\r
+ <LITERAL3>Namespace</LITERAL3>\r
+ <LITERAL3>Method</LITERAL3>\r
+ <LITERAL3>Mixin</LITERAL3>\r
+ <LITERAL3>Module</LITERAL3>\r
+ <LITERAL3>Project</LITERAL3>\r
+ <LITERAL3>Reference</LITERAL3>\r
+ <LITERAL3>Require</LITERAL3>\r
+ <LITERAL3>Resource</LITERAL3>\r
+ <LITERAL3>Signal</LITERAL3>\r
+ <LITERAL3>Struct</LITERAL3>\r
+ <LITERAL3>Subsystem</LITERAL3>\r
+ <LITERAL3>Specifications</LITERAL3>\r
+ <LITERAL3>Warning</LITERAL3>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="svn-commit" FILE="svn-commit.xml"/>\r
+-->\r
+\r
+<MODE>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">\r
+ <SEQ TYPE="COMMENT1" \r
+ DELEGATE="CHANGED" \r
+ AT_LINE_START="TRUE"\r
+ >--This line, and those below, will be ignored--</SEQ>\r
+ </RULES>\r
+ <RULES SET="CHANGED">\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">A</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">D</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">M</EOL_SPAN>\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT2">_</EOL_SPAN>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN>%{</BEGIN>\r
+ <END>%}</END>\r
+ </SPAN>\r
+\r
+ <!-- swig directive -->\r
+ <MARK_FOLLOWING AT_WORD_START="TRUE" TYPE="KEYWORD4">%</MARK_FOLLOWING>\r
+\r
+ <IMPORT DELEGATE="c::MAIN"/>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Tcl mode by Michael Jacobson.\r
+ cplusplus and pascal modes used as reference.\r
+ 2006/10/20 Jean-Francois Larvoire: \r
+ - Fixed comments detection: Only # at the beginning of Tcl commands are comments!\r
+ - Quoted strings can span multiple lines.\r
+ - Added recursive in-string substituted command and variable analysis.\r
+ - Added numerous missing tcl keywords and variables up to version 8.4.14.\r
+ - Removed $ on global variable keywords, as they're often used with $::.\r
+ - Added Expect keywords, as KEYWORD2. (send was already in tk as KEYWORD2)\r
+ - Avoid colouring substituted variables that are homonyms of a keyword.\r
+ - Highlight hexadecimal numbers too.\r
+ 2006/10/23 Jean-Francois Larvoire:\r
+ - Strings and blocks only begin at word start.\r
+ - Updated {# comment detection to manage the whole {} block. This catches\r
+ all { and }, and makes it unnecessary to define them as KEYWORDs.\r
+ - Bug fix: Do not delegate content evaluation for ${} scalar variables.\r
+ Limitations:\r
+ - Unbalanced quotes or brackets within braces, such as in regular expressions,\r
+ will confuse the analysis. Workaround: If possible, use a \ to escape the\r
+ unbalanced character. Else add a ;# comment with a closing " or ].\r
+ Known bugs:\r
+ - Continuation line detection does not work. Same bug as espace chars below.\r
+ - ; highlighting as an OPERATOR does not work.\r
+ Known bugs (Were there before, and I failed to fix them):\r
+ - \c escape colouring does not work for escapes embedded in words.\r
+ I attemted numerous workarounds using spans and regexps, but they\r
+ all seem to fail to detect anything beginning with a \. And using\r
+ NO_ESCAPE="TRUE" does not help.\r
+ - {} within quoted strings should not affect indentation. -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true" />\r
+ </PROPS>\r
+\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE" \r
+ DIGIT_RE="0x\p{XDigit}+|\d+">\r
+\r
+ <!-- Continuation line. Processed before anything else by Tcl. (Does not work)-->\r
+ <EOL_SPAN_REGEXP TYPE="OPERATOR" HASH_CHAR="\">\\$</EOL_SPAN_REGEXP>\r
+\r
+ <!-- Comments after a ; command separator -->\r
+ <!-- Note: The ; isn't bolded as other operators. Why?-->\r
+ <EOL_SPAN_REGEXP TYPE="OPERATOR" HASH_CHAR=";" DELEGATE="TCL_COMMENT">;\s*(?=#)</EOL_SPAN_REGEXP>\r
+ <!-- Comments at the { opening of a block -->\r
+ <SPAN_REGEXP TYPE="OPERATOR" HASH_CHAR="{" DELEGATE="TCL_COMMENT">\r
+ <BEGIN>\{\s*(?=#)</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+ <!-- Comments on a line of their own. -->\r
+ <EOL_SPAN TYPE="COMMENT1" AT_WHITESPACE_END="TRUE">#</EOL_SPAN>\r
+\r
+ <!-- Quoted strings -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE" AT_WORD_START="TRUE" DELEGATE="TCL_STRING">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- Avoid colouring substituted variables that are homonyms of a keyword -->\r
+ <!-- Indexed array variable. Delegate to MAIN, as the index string is evaluated by Tcl.-->\r
+ <SPAN_REGEXP TYPE="NULL" HASH_CHAR="$" DELEGATE="MAIN">\r
+ <BEGIN>\$(\w|::)+\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+ <!-- General scalar variable. Do not delegate, as the ${} block content is not evalutated by Tcl. -->\r
+ <SPAN TYPE="NULL">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <!-- Plain scalar variable. -->\r
+ <SEQ_REGEXP TYPE="NULL" HASH_CHAR="$">\$(\w|::)+</SEQ_REGEXP>\r
+\r
+ <!-- Sub-block -->\r
+ <SPAN TYPE="OPERATOR" NO_LINE_BREAK="FALSE" AT_WORD_START="TRUE" DELEGATE="MAIN">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Sub-commands to be substituted -->\r
+ <SPAN TYPE="OPERATOR" NO_LINE_BREAK="FALSE" DELEGATE="MAIN">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Escaped characters -->\r
+ <SEQ TYPE="KEYWORD3">\a</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\b</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\f</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\n</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\r</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\t</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\v</SEQ>\r
+\r
+ <!-- Tcl syntax operators. -->\r
+ <!-- Note that "{}[]" are already caught above.-->\r
+ <!-- Delegate to main, as a new command begins after the ; -->\r
+ <SEQ TYPE="OPERATOR" DELEGATE="MAIN">;</SEQ>\r
+ <SEQ TYPE="NULL">::</SEQ>\r
+\r
+ <!-- Math expression operators -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Tcl keywords-->\r
+ <KEYWORD1>append</KEYWORD1>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>concat</KEYWORD1>\r
+ <KEYWORD1>console</KEYWORD1>\r
+ <KEYWORD1>eval</KEYWORD1>\r
+ <KEYWORD1>expr</KEYWORD1>\r
+ <KEYWORD1>format</KEYWORD1>\r
+ <KEYWORD1>global</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>trace</KEYWORD1>\r
+ <KEYWORD1>unset</KEYWORD1>\r
+ <KEYWORD1>upvar</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>lappend</KEYWORD1>\r
+ <KEYWORD1>lindex</KEYWORD1>\r
+ <KEYWORD1>linsert</KEYWORD1>\r
+ <KEYWORD1>list</KEYWORD1>\r
+ <KEYWORD1>llength</KEYWORD1>\r
+ <KEYWORD1>lrange</KEYWORD1>\r
+ <KEYWORD1>lreplace</KEYWORD1>\r
+ <KEYWORD1>lsearch</KEYWORD1>\r
+ <KEYWORD1>lsort</KEYWORD1>\r
+ <KEYWORD1>split</KEYWORD1>\r
+ <KEYWORD1>scan</KEYWORD1>\r
+ <KEYWORD1>string</KEYWORD1>\r
+ <KEYWORD1>regexp</KEYWORD1>\r
+ <KEYWORD1>regsub</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elseif</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>proc</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>source</KEYWORD1>\r
+ <KEYWORD1>unknown</KEYWORD1>\r
+ <KEYWORD1>uplevel</KEYWORD1>\r
+ <KEYWORD1>cd</KEYWORD1>\r
+ <KEYWORD1>close</KEYWORD1>\r
+ <KEYWORD1>eof</KEYWORD1>\r
+ <KEYWORD1>file</KEYWORD1>\r
+ <KEYWORD1>flush</KEYWORD1>\r
+ <KEYWORD1>gets</KEYWORD1>\r
+ <KEYWORD1>glob</KEYWORD1>\r
+ <KEYWORD1>open</KEYWORD1>\r
+ <KEYWORD1>read</KEYWORD1>\r
+ <KEYWORD1>puts</KEYWORD1>\r
+ <KEYWORD1>pwd</KEYWORD1>\r
+ <KEYWORD1>seek</KEYWORD1>\r
+ <KEYWORD1>tell</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>error</KEYWORD1>\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>pid</KEYWORD1>\r
+ <KEYWORD1>after</KEYWORD1>\r
+ <KEYWORD1>time</KEYWORD1>\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>history</KEYWORD1>\r
+ <KEYWORD1>rename</KEYWORD1>\r
+ <KEYWORD1>info</KEYWORD1>\r
+ <!-- expr keywords-->\r
+ <KEYWORD1>ceil</KEYWORD1>\r
+ <KEYWORD1>floor</KEYWORD1>\r
+ <KEYWORD1>round</KEYWORD1>\r
+ <KEYWORD1>incr</KEYWORD1>\r
+ <KEYWORD1>abs</KEYWORD1>\r
+ <KEYWORD1>acos</KEYWORD1>\r
+ <KEYWORD1>cos</KEYWORD1>\r
+ <KEYWORD1>cosh</KEYWORD1>\r
+ <KEYWORD1>asin</KEYWORD1>\r
+ <KEYWORD1>sin</KEYWORD1>\r
+ <KEYWORD1>sinh</KEYWORD1>\r
+ <KEYWORD1>atan</KEYWORD1>\r
+ <KEYWORD1>atan2</KEYWORD1>\r
+ <KEYWORD1>tan</KEYWORD1>\r
+ <KEYWORD1>tanh</KEYWORD1>\r
+ <KEYWORD1>log</KEYWORD1>\r
+ <KEYWORD1>log10</KEYWORD1>\r
+ <KEYWORD1>fmod</KEYWORD1>\r
+ <KEYWORD1>pow</KEYWORD1>\r
+ <KEYWORD1>hypot</KEYWORD1>\r
+ <KEYWORD1>sqrt</KEYWORD1>\r
+ <KEYWORD1>double</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <!-- New Tcl keywords up to tcl 8.4.14 -->\r
+ <KEYWORD1>bgerror</KEYWORD1>\r
+ <KEYWORD1>binary</KEYWORD1>\r
+ <KEYWORD1>clock</KEYWORD1>\r
+ <KEYWORD1>dde</KEYWORD1>\r
+ <KEYWORD1>encoding</KEYWORD1>\r
+ <KEYWORD1>fblocked</KEYWORD1>\r
+ <KEYWORD1>fconfigure</KEYWORD1>\r
+ <KEYWORD1>fcopy</KEYWORD1>\r
+ <KEYWORD1>fileevent</KEYWORD1>\r
+ <KEYWORD1>filename</KEYWORD1>\r
+ <KEYWORD1>http</KEYWORD1>\r
+ <KEYWORD1>interp</KEYWORD1>\r
+ <KEYWORD1>load</KEYWORD1>\r
+ <KEYWORD1>lset</KEYWORD1>\r
+ <KEYWORD1>memory</KEYWORD1>\r
+ <KEYWORD1>msgcat</KEYWORD1>\r
+ <KEYWORD1>namespace</KEYWORD1>\r
+ <KEYWORD1>package</KEYWORD1>\r
+ <KEYWORD1>pkg::create</KEYWORD1>\r
+ <KEYWORD1>pkg_mkIndex</KEYWORD1>\r
+ <KEYWORD1>registry</KEYWORD1>\r
+ <KEYWORD1>resource</KEYWORD1>\r
+ <KEYWORD1>socket</KEYWORD1>\r
+ <KEYWORD1>subst</KEYWORD1>\r
+ <KEYWORD1>update</KEYWORD1>\r
+ <KEYWORD1>variable</KEYWORD1>\r
+ <KEYWORD1>vwait</KEYWORD1>\r
+ <!-- Standard library of Tcl interpretor procedures -->\r
+ <KEYWORD1>auto_execok</KEYWORD1>\r
+ <KEYWORD1>auto_import</KEYWORD1>\r
+ <KEYWORD1>auto_load</KEYWORD1>\r
+ <KEYWORD1>auto_mkindex</KEYWORD1>\r
+ <KEYWORD1>auto_mkindex_old</KEYWORD1>\r
+ <KEYWORD1>auto_qualify</KEYWORD1>\r
+ <KEYWORD1>auto_reset</KEYWORD1>\r
+ <KEYWORD1>parray</KEYWORD1>\r
+ <KEYWORD1>tcl_endOfWord</KEYWORD1>\r
+ <KEYWORD1>tcl_findLibrary</KEYWORD1>\r
+ <KEYWORD1>tcl_startOfNextWord</KEYWORD1>\r
+ <KEYWORD1>tcl_startOfPreviousWord</KEYWORD1>\r
+ <KEYWORD1>tcl_wordBreakAfter</KEYWORD1>\r
+ <KEYWORD1>tcl_wordBreakBefore</KEYWORD1>\r
+\r
+ <!-- Tk keywords -->\r
+ <KEYWORD2>bind</KEYWORD2>\r
+ <KEYWORD2>button</KEYWORD2>\r
+ <KEYWORD2>canvas</KEYWORD2>\r
+ <KEYWORD2>checkbutton</KEYWORD2>\r
+ <KEYWORD2>destroy</KEYWORD2>\r
+ <KEYWORD2>entry</KEYWORD2>\r
+ <KEYWORD2>focus</KEYWORD2>\r
+ <KEYWORD2>frame</KEYWORD2>\r
+ <KEYWORD2>grab</KEYWORD2>\r
+ <KEYWORD2>image</KEYWORD2>\r
+ <KEYWORD2>label</KEYWORD2>\r
+ <KEYWORD2>listbox</KEYWORD2>\r
+ <KEYWORD2>lower</KEYWORD2>\r
+ <KEYWORD2>menu</KEYWORD2>\r
+ <KEYWORD2>menubutton</KEYWORD2>\r
+ <KEYWORD2>message</KEYWORD2>\r
+ <KEYWORD2>option</KEYWORD2>\r
+ <KEYWORD2>pack</KEYWORD2>\r
+ <KEYWORD2>placer</KEYWORD2>\r
+ <KEYWORD2>radiobutton</KEYWORD2>\r
+ <KEYWORD2>raise</KEYWORD2>\r
+ <KEYWORD2>scale</KEYWORD2>\r
+ <KEYWORD2>scrollbar</KEYWORD2>\r
+ <KEYWORD2>selection</KEYWORD2>\r
+ <KEYWORD2>send</KEYWORD2>\r
+ <KEYWORD2>text</KEYWORD2>\r
+ <KEYWORD2>tk</KEYWORD2>\r
+ <KEYWORD2>tkerror</KEYWORD2>\r
+ <KEYWORD2>tkwait</KEYWORD2>\r
+ <KEYWORD2>toplevel</KEYWORD2>\r
+ <KEYWORD2>update</KEYWORD2>\r
+ <KEYWORD2>winfo</KEYWORD2>\r
+ <KEYWORD2>wm</KEYWORD2>\r
+\r
+ <!-- Expect keywords. Using KEYWORD2 as send is already one -->\r
+ <!-- KEYWORD2 close -->\r
+ <KEYWORD2>debug</KEYWORD2>\r
+ <KEYWORD2>disconnect</KEYWORD2>\r
+ <!-- KEYWORD2 exit -->\r
+ <KEYWORD2>exp_continue</KEYWORD2>\r
+ <KEYWORD2>exp_internal</KEYWORD2>\r
+ <KEYWORD2>exp_open</KEYWORD2>\r
+ <KEYWORD2>exp_pid</KEYWORD2>\r
+ <KEYWORD2>exp_version</KEYWORD2>\r
+ <KEYWORD2>expect</KEYWORD2>\r
+ <KEYWORD2>expect_after</KEYWORD2>\r
+ <KEYWORD2>expect_background</KEYWORD2>\r
+ <KEYWORD2>expect_before</KEYWORD2>\r
+ <KEYWORD2>expect_tty</KEYWORD2>\r
+ <KEYWORD2>expect_user</KEYWORD2>\r
+ <KEYWORD2>fork</KEYWORD2>\r
+ <KEYWORD2>inter_return</KEYWORD2>\r
+ <KEYWORD2>interact</KEYWORD2>\r
+ <KEYWORD2>interpreter</KEYWORD2>\r
+ <KEYWORD2>log_file</KEYWORD2>\r
+ <KEYWORD2>log_user</KEYWORD2>\r
+ <KEYWORD2>match_max</KEYWORD2>\r
+ <KEYWORD2>overlay</KEYWORD2>\r
+ <KEYWORD2>parity</KEYWORD2>\r
+ <KEYWORD2>promptl</KEYWORD2>\r
+ <KEYWORD2>prompt2</KEYWORD2>\r
+ <KEYWORD2>remove_nulls</KEYWORD2>\r
+ <!-- KEYWORD2 send -->\r
+ <KEYWORD2>send_error </KEYWORD2>\r
+ <KEYWORD2>send_log</KEYWORD2>\r
+ <KEYWORD2>send_tty</KEYWORD2>\r
+ <KEYWORD2>send_user</KEYWORD2>\r
+ <KEYWORD2>sleep</KEYWORD2>\r
+ <KEYWORD2>spawn</KEYWORD2>\r
+ <KEYWORD2>strace</KEYWORD2>\r
+ <KEYWORD2>stty</KEYWORD2>\r
+ <KEYWORD2>system</KEYWORD2>\r
+ <KEYWORD2>timestamp</KEYWORD2>\r
+ <KEYWORD2>trap</KEYWORD2>\r
+ <KEYWORD2>wait</KEYWORD2>\r
+ <!-- Arguments to expect commands-->\r
+ <KEYWORD3>full_buffer</KEYWORD3>\r
+ <KEYWORD3>timeout</KEYWORD3>\r
+ <!-- KEYWORD3 eof-->\r
+\r
+ <!-- Global variables-->\r
+ <KEYWORD3>argv0</KEYWORD3>\r
+ <KEYWORD3>argv</KEYWORD3>\r
+ <KEYWORD3>argc</KEYWORD3>\r
+ <KEYWORD3>tk_version</KEYWORD3>\r
+ <KEYWORD3>tk_library</KEYWORD3>\r
+ <KEYWORD3>tk_strictMotif</KEYWORD3>\r
+ <!-- New global variables up to tcl 8.4.14 -->\r
+ <KEYWORD3>env</KEYWORD3>\r
+ <KEYWORD3>errorCode</KEYWORD3>\r
+ <KEYWORD3>errorInfo</KEYWORD3>\r
+ <KEYWORD3>geometry</KEYWORD3>\r
+ <KEYWORD3>tcl_library</KEYWORD3>\r
+ <KEYWORD3>tcl_patchLevel</KEYWORD3>\r
+ <KEYWORD3>tcl_pkgPath</KEYWORD3>\r
+ <KEYWORD3>tcl_platform</KEYWORD3>\r
+ <KEYWORD3>tcl_precision</KEYWORD3>\r
+ <KEYWORD3>tcl_rcFileName</KEYWORD3>\r
+ <KEYWORD3>tcl_rcRsrcName</KEYWORD3>\r
+ <KEYWORD3>tcl_traceCompile</KEYWORD3>\r
+ <KEYWORD3>tcl_traceExec</KEYWORD3>\r
+ <KEYWORD3>tcl_wordchars</KEYWORD3>\r
+ <KEYWORD3>tcl_nonwordchars</KEYWORD3>\r
+ <KEYWORD3>tcl_version</KEYWORD3>\r
+ <KEYWORD3>tcl_interactive</KEYWORD3>\r
+\r
+ <!-- Common arguments to tcl and Tk keywords -->\r
+ <KEYWORD3>exact</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ <KEYWORD3>indices</KEYWORD3>\r
+ <KEYWORD3>nocase</KEYWORD3>\r
+ <KEYWORD3>nocomplain</KEYWORD3>\r
+ <KEYWORD3>nonewline</KEYWORD3>\r
+ <KEYWORD3>code</KEYWORD3>\r
+ <KEYWORD3>errorinfo</KEYWORD3>\r
+ <KEYWORD3>errorcode</KEYWORD3>\r
+ <KEYWORD3>atime</KEYWORD3>\r
+ <KEYWORD3>anymore</KEYWORD3>\r
+ <KEYWORD3>args</KEYWORD3>\r
+ <KEYWORD3>body</KEYWORD3>\r
+ <KEYWORD3>compare</KEYWORD3>\r
+ <KEYWORD3>cmdcount</KEYWORD3>\r
+ <KEYWORD3>commands</KEYWORD3>\r
+ <KEYWORD3>ctime</KEYWORD3>\r
+ <KEYWORD3>current</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>dev</KEYWORD3>\r
+ <KEYWORD3>dirname</KEYWORD3>\r
+ <KEYWORD3>donesearch</KEYWORD3>\r
+ <KEYWORD3>errorinfo</KEYWORD3>\r
+ <KEYWORD3>executable</KEYWORD3>\r
+ <KEYWORD3>extension</KEYWORD3>\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>globals</KEYWORD3>\r
+ <KEYWORD3>gid</KEYWORD3>\r
+ <KEYWORD3>index</KEYWORD3>\r
+ <KEYWORD3>ino</KEYWORD3>\r
+ <KEYWORD3>isdirectory</KEYWORD3>\r
+ <KEYWORD3>isfile</KEYWORD3>\r
+ <KEYWORD3>keep</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>level</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>library</KEYWORD3>\r
+ <KEYWORD3>locals</KEYWORD3>\r
+ <KEYWORD3>lstat</KEYWORD3>\r
+ <KEYWORD3>match</KEYWORD3>\r
+ <KEYWORD3>mode</KEYWORD3>\r
+ <KEYWORD3>mtime</KEYWORD3>\r
+ <KEYWORD3>names</KEYWORD3>\r
+ <KEYWORD3>nextelement</KEYWORD3>\r
+ <KEYWORD3>nextid</KEYWORD3>\r
+ <KEYWORD3>nlink</KEYWORD3>\r
+ <KEYWORD3>none</KEYWORD3>\r
+ <KEYWORD3>procs</KEYWORD3>\r
+ <KEYWORD3>owned</KEYWORD3>\r
+ <KEYWORD3>range</KEYWORD3>\r
+ <KEYWORD3>readable</KEYWORD3>\r
+ <KEYWORD3>readlink</KEYWORD3>\r
+ <KEYWORD3>redo</KEYWORD3>\r
+ <KEYWORD3>release</KEYWORD3>\r
+ <KEYWORD3>rootname</KEYWORD3>\r
+ <KEYWORD3>script</KEYWORD3>\r
+ <KEYWORD3>show</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+ <KEYWORD3>startsearch</KEYWORD3>\r
+ <KEYWORD3>stat</KEYWORD3>\r
+ <KEYWORD3>status</KEYWORD3>\r
+ <KEYWORD3>substitute</KEYWORD3>\r
+ <KEYWORD3>tail</KEYWORD3>\r
+ <KEYWORD3>tclversion</KEYWORD3>\r
+ <KEYWORD3>tolower</KEYWORD3>\r
+ <KEYWORD3>toupper</KEYWORD3>\r
+ <KEYWORD3>trim</KEYWORD3>\r
+ <KEYWORD3>trimleft</KEYWORD3>\r
+ <KEYWORD3>trimright</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>uid</KEYWORD3>\r
+ <KEYWORD3>variable</KEYWORD3>\r
+ <KEYWORD3>vars</KEYWORD3>\r
+ <KEYWORD3>vdelete</KEYWORD3>\r
+ <KEYWORD3>vinfo</KEYWORD3>\r
+ <KEYWORD3>visibility</KEYWORD3>\r
+ <KEYWORD3>window</KEYWORD3>\r
+ <KEYWORD3>writable</KEYWORD3>\r
+ <KEYWORD3>accelerator</KEYWORD3>\r
+ <KEYWORD3>activeforeground</KEYWORD3>\r
+ <KEYWORD3>activebackground</KEYWORD3>\r
+ <KEYWORD3>anchor</KEYWORD3>\r
+ <KEYWORD3>aspect</KEYWORD3>\r
+ <KEYWORD3>background</KEYWORD3>\r
+ <KEYWORD3>before</KEYWORD3>\r
+ <KEYWORD3>bg</KEYWORD3>\r
+ <KEYWORD3>borderwidth</KEYWORD3>\r
+ <KEYWORD3>bd</KEYWORD3>\r
+ <KEYWORD3>bitmap</KEYWORD3>\r
+ <KEYWORD3>command</KEYWORD3>\r
+ <KEYWORD3>cursor</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+ <KEYWORD3>expand</KEYWORD3>\r
+ <KEYWORD3>family</KEYWORD3>\r
+ <KEYWORD3>fg</KEYWORD3>\r
+ <KEYWORD3>fill</KEYWORD3>\r
+ <KEYWORD3>font</KEYWORD3>\r
+ <KEYWORD3>force</KEYWORD3>\r
+ <KEYWORD3>foreground</KEYWORD3>\r
+ <KEYWORD3>from</KEYWORD3>\r
+ <KEYWORD3>height</KEYWORD3>\r
+ <KEYWORD3>icon</KEYWORD3>\r
+ <KEYWORD3>question</KEYWORD3>\r
+ <KEYWORD3>warning</KEYWORD3>\r
+ <KEYWORD3>in</KEYWORD3>\r
+ <KEYWORD3>ipadx</KEYWORD3>\r
+ <KEYWORD3>ipady</KEYWORD3>\r
+ <KEYWORD3>justify</KEYWORD3>\r
+ <KEYWORD3>left</KEYWORD3>\r
+ <KEYWORD3>center</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>padx</KEYWORD3>\r
+ <KEYWORD3>pady</KEYWORD3>\r
+ <KEYWORD3>offvalue</KEYWORD3>\r
+ <KEYWORD3>onvalue</KEYWORD3>\r
+ <KEYWORD3>orient</KEYWORD3>\r
+ <KEYWORD3>horizontal</KEYWORD3>\r
+ <KEYWORD3>vertical</KEYWORD3>\r
+ <KEYWORD3>outline</KEYWORD3>\r
+ <KEYWORD3>oversrike</KEYWORD3>\r
+ <KEYWORD3>relief</KEYWORD3>\r
+ <KEYWORD3>raised</KEYWORD3>\r
+ <KEYWORD3>sunken</KEYWORD3>\r
+ <KEYWORD3>flat</KEYWORD3>\r
+ <KEYWORD3>groove</KEYWORD3>\r
+ <KEYWORD3>ridge</KEYWORD3>\r
+ <KEYWORD3>solid</KEYWORD3>\r
+ <KEYWORD3>screen</KEYWORD3>\r
+ <KEYWORD3>selectbackground</KEYWORD3>\r
+ <KEYWORD3>selectforeground</KEYWORD3>\r
+ <KEYWORD3>setgrid</KEYWORD3>\r
+ <KEYWORD3>side</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+ <KEYWORD3>slant</KEYWORD3>\r
+ <KEYWORD3>left</KEYWORD3>\r
+ <KEYWORD3>right</KEYWORD3>\r
+ <KEYWORD3>top</KEYWORD3>\r
+ <KEYWORD3>bottom</KEYWORD3>\r
+ <KEYWORD3>spacing1</KEYWORD3>\r
+ <KEYWORD3>spacing2</KEYWORD3>\r
+ <KEYWORD3>spacing3</KEYWORD3>\r
+ <KEYWORD3>state</KEYWORD3>\r
+ <KEYWORD3>stipple</KEYWORD3>\r
+ <KEYWORD3>takefocus</KEYWORD3>\r
+ <KEYWORD3>tearoff</KEYWORD3>\r
+ <KEYWORD3>textvariable</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>to</KEYWORD3>\r
+ <KEYWORD3>type</KEYWORD3>\r
+ <KEYWORD3>abortretryignore</KEYWORD3>\r
+ <KEYWORD3>ok</KEYWORD3>\r
+ <KEYWORD3>okcancel</KEYWORD3>\r
+ <KEYWORD3>retrycancel</KEYWORD3>\r
+ <KEYWORD3>yesno</KEYWORD3>\r
+ <KEYWORD3>yesnocancel</KEYWORD3>\r
+ <KEYWORD3>underline</KEYWORD3>\r
+ <KEYWORD3>value</KEYWORD3>\r
+ <KEYWORD3>variable</KEYWORD3>\r
+ <KEYWORD3>weight</KEYWORD3>\r
+ <KEYWORD3>width</KEYWORD3>\r
+ <KEYWORD3>xscrollcommand</KEYWORD3>\r
+ <KEYWORD3>yscrollcommand</KEYWORD3>\r
+ <KEYWORD3>active</KEYWORD3>\r
+ <KEYWORD3>add</KEYWORD3>\r
+ <KEYWORD3>arc</KEYWORD3>\r
+ <KEYWORD3>aspect</KEYWORD3>\r
+ <KEYWORD3>bitmap</KEYWORD3>\r
+ <KEYWORD3>cascade</KEYWORD3>\r
+ <KEYWORD3>cget</KEYWORD3>\r
+ <KEYWORD3>children</KEYWORD3>\r
+ <KEYWORD3>class</KEYWORD3>\r
+ <KEYWORD3>clear</KEYWORD3>\r
+ <KEYWORD3>client</KEYWORD3>\r
+ <KEYWORD3>create</KEYWORD3>\r
+ <KEYWORD3>colormodel</KEYWORD3>\r
+ <KEYWORD3>command</KEYWORD3>\r
+ <KEYWORD3>configure</KEYWORD3>\r
+ <KEYWORD3>deiconify</KEYWORD3>\r
+ <KEYWORD3>delete</KEYWORD3>\r
+ <KEYWORD3>disabled</KEYWORD3>\r
+ <KEYWORD3>exists</KEYWORD3>\r
+ <KEYWORD3>focusmodel</KEYWORD3>\r
+ <KEYWORD3>flash</KEYWORD3>\r
+ <KEYWORD3>forget</KEYWORD3>\r
+ <KEYWORD3>geometry</KEYWORD3>\r
+ <KEYWORD3>get</KEYWORD3>\r
+ <KEYWORD3>group</KEYWORD3>\r
+ <KEYWORD3>handle</KEYWORD3>\r
+ <KEYWORD3>iconbitmap</KEYWORD3>\r
+ <KEYWORD3>iconify</KEYWORD3>\r
+ <KEYWORD3>iconmask</KEYWORD3>\r
+ <KEYWORD3>iconname</KEYWORD3>\r
+ <KEYWORD3>iconposition</KEYWORD3>\r
+ <KEYWORD3>iconwindow</KEYWORD3>\r
+ <KEYWORD3>idletasks</KEYWORD3>\r
+ <KEYWORD3>insert</KEYWORD3>\r
+ <KEYWORD3>interps</KEYWORD3>\r
+ <KEYWORD3>itemconfigure</KEYWORD3>\r
+ <KEYWORD3>invoke</KEYWORD3>\r
+ <KEYWORD3>line</KEYWORD3>\r
+ <KEYWORD3>mark</KEYWORD3>\r
+ <KEYWORD3>maxsize</KEYWORD3>\r
+ <KEYWORD3>minsize</KEYWORD3>\r
+ <KEYWORD3>move</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>normal</KEYWORD3>\r
+ <KEYWORD3>overrideredirect</KEYWORD3>\r
+ <KEYWORD3>oval</KEYWORD3>\r
+ <KEYWORD3>own</KEYWORD3>\r
+ <KEYWORD3>photo</KEYWORD3>\r
+ <KEYWORD3>polygon</KEYWORD3>\r
+ <KEYWORD3>positionfrom</KEYWORD3>\r
+ <KEYWORD3>propagate</KEYWORD3>\r
+ <KEYWORD3>protocol</KEYWORD3>\r
+ <KEYWORD3>ranges</KEYWORD3>\r
+ <KEYWORD3>rectangle</KEYWORD3>\r
+ <KEYWORD3>remove</KEYWORD3>\r
+ <KEYWORD3>resizable</KEYWORD3>\r
+ <KEYWORD3>separator</KEYWORD3>\r
+ <KEYWORD3>slaves</KEYWORD3>\r
+ <KEYWORD3>sizefrom</KEYWORD3>\r
+ <KEYWORD3>state</KEYWORD3>\r
+ <KEYWORD3>tag</KEYWORD3>\r
+ <KEYWORD3>title</KEYWORD3>\r
+ <KEYWORD3>transient</KEYWORD3>\r
+ <KEYWORD3>window</KEYWORD3>\r
+ <KEYWORD3>withdraw</KEYWORD3>\r
+ <KEYWORD3>xview</KEYWORD3>\r
+ <KEYWORD3>yview</KEYWORD3>\r
+ <KEYWORD3>Activate</KEYWORD3>\r
+ <KEYWORD3>Alt</KEYWORD3>\r
+ <KEYWORD3>Any</KEYWORD3>\r
+ <KEYWORD3>B1</KEYWORD3>\r
+ <KEYWORD3>B2</KEYWORD3>\r
+ <KEYWORD3>B3</KEYWORD3>\r
+ <KEYWORD3>Button1</KEYWORD3>\r
+ <KEYWORD3>Button2</KEYWORD3>\r
+ <KEYWORD3>Button3</KEYWORD3>\r
+ <KEYWORD3>ButtonPress</KEYWORD3>\r
+ <KEYWORD3>ButtonRelease</KEYWORD3>\r
+ <KEYWORD3>Double</KEYWORD3>\r
+ <KEYWORD3>Circulate</KEYWORD3>\r
+ <KEYWORD3>Colormap</KEYWORD3>\r
+ <KEYWORD3>Configure</KEYWORD3>\r
+ <KEYWORD3>Control</KEYWORD3>\r
+ <KEYWORD3>Deactivate</KEYWORD3>\r
+ <KEYWORD3>Escape</KEYWORD3>\r
+ <KEYWORD3>Expose</KEYWORD3>\r
+ <KEYWORD3>FocusIn</KEYWORD3>\r
+ <KEYWORD3>FocusOut</KEYWORD3>\r
+ <KEYWORD3>Gravity</KEYWORD3>\r
+ <KEYWORD3>Key</KEYWORD3>\r
+ <KEYWORD3>KeyPress</KEYWORD3>\r
+ <KEYWORD3>KeyRelease</KEYWORD3>\r
+ <KEYWORD3>Lock</KEYWORD3>\r
+ <KEYWORD3>Meta</KEYWORD3>\r
+ <KEYWORD3>Property</KEYWORD3>\r
+ <KEYWORD3>Reparent</KEYWORD3>\r
+ <KEYWORD3>Shift</KEYWORD3>\r
+ <KEYWORD3>Unmap</KEYWORD3>\r
+ <KEYWORD3>Visibility</KEYWORD3>\r
+ <KEYWORD3>Button</KEYWORD3>\r
+ <KEYWORD3>ButtonPress</KEYWORD3>\r
+ <KEYWORD3>ButtonRelease</KEYWORD3>\r
+ <KEYWORD3>Destroy</KEYWORD3>\r
+ <KEYWORD3>Escape</KEYWORD3>\r
+ <KEYWORD3>Enter</KEYWORD3>\r
+ <KEYWORD3>Leave</KEYWORD3>\r
+ <KEYWORD3>Motion</KEYWORD3>\r
+ <KEYWORD3>MenuSelect</KEYWORD3>\r
+ <KEYWORD3>Triple</KEYWORD3>\r
+ <KEYWORD3>all</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="TCL_COMMENT" DEFAULT="OPERATOR">\r
+ <!-- Allows catching blocks starting with a comment.\r
+ or comments following a ; -->\r
+ <SEQ_REGEXP TYPE="COMMENT1" HASH_CHAR="#" DELEGATE="MAIN">#.*</SEQ_REGEXP>\r
+ </RULES>\r
+\r
+ <RULES SET="TCL_STRING" DEFAULT="LITERAL1">\r
+ <PROPS>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="" />\r
+ </PROPS>\r
+\r
+ <!-- Continuation line. Processed before anything else by Tcl.-->\r
+ <EOL_SPAN_REGEXP TYPE="OPERATOR" HASH_CHAR="\">\\$</EOL_SPAN_REGEXP>\r
+\r
+ <!-- Avoid colouring variables substituted inside strings -->\r
+ <SPAN_REGEXP TYPE="NULL" HASH_CHAR="$" DELEGATE="MAIN">\r
+ <BEGIN>\$(\w|::)+\(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="NULL" HASH_CHAR="$" DELEGATE="MAIN">\r
+ <BEGIN>\$\{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN_REGEXP>\r
+ <SEQ_REGEXP TYPE="NULL" HASH_CHAR="$">\$(\w|::)+</SEQ_REGEXP>\r
+\r
+ <!-- Sub-commands to be substituted -->\r
+ <SPAN TYPE="OPERATOR" NO_LINE_BREAK="FALSE" DELEGATE="MAIN">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Escaped characters -->\r
+ <SEQ TYPE="KEYWORD3">\a</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\b</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\f</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\n</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\r</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\t</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\v</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="%" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE="{}" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE">\r
+ <!-- $$...$$ -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="MATH">\r
+ <BEGIN>$$</BEGIN>\r
+ <END>$$</END>\r
+ </SPAN>\r
+\r
+ <!-- $...$ -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="MATH">\r
+ <BEGIN>$</BEGIN>\r
+ <END>$</END>\r
+ </SPAN>\r
+\r
+ <!-- \[...\] (LaTeX math mode) -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="MATH">\r
+ <BEGIN>\[</BEGIN>\r
+ <END>\]</END>\r
+ </SPAN>\r
+\r
+ <!-- some commands must be handled specially -->\r
+ <SEQ TYPE="KEYWORD1">\$</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\\</SEQ>\r
+ <SEQ TYPE="KEYWORD1">\%</SEQ>\r
+\r
+ <!-- \iffalse ... \fi - a block comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>\iffalse</BEGIN>\r
+ <END>\fi</END>\r
+ </SPAN>\r
+\r
+ <!-- \begin{verbatim} ... \end{verbatim} -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="VERBATIM">\r
+ <BEGIN>\begin{verbatim}</BEGIN>\r
+ <END>\end{verbatim}</END>\r
+ </SPAN>\r
+\r
+ <!-- \verb|sometext| -->\r
+ <SPAN TYPE="KEYWORD1" DELEGATE="VERBATIM"\r
+ NO_LINE_BREAK="TRUE">\r
+ <BEGIN>\verb|</BEGIN>\r
+ <END>|</END>\r
+ </SPAN>\r
+ <!-- \... commands -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD1">\</MARK_FOLLOWING>\r
+\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+\r
+ <!-- word separators -->\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="MATH" DEFAULT="MARKUP">\r
+ <!-- some commands must be handled specially -->\r
+ <SEQ TYPE="KEYWORD3">\$</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\\</SEQ>\r
+ <SEQ TYPE="KEYWORD3">\%</SEQ>\r
+\r
+ <!-- \... commands -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD3">\</MARK_FOLLOWING>\r
+\r
+ <!-- word separators -->\r
+ <SEQ TYPE="KEYWORD2">)</SEQ>\r
+ <SEQ TYPE="KEYWORD2">(</SEQ>\r
+ <SEQ TYPE="KEYWORD2">{</SEQ>\r
+ <SEQ TYPE="KEYWORD2">}</SEQ>\r
+ <SEQ TYPE="KEYWORD2">[</SEQ>\r
+ <SEQ TYPE="KEYWORD2">]</SEQ>\r
+ <SEQ TYPE="KEYWORD2">=</SEQ>\r
+ <SEQ TYPE="KEYWORD2">!</SEQ>\r
+ <SEQ TYPE="KEYWORD2">+</SEQ>\r
+ <SEQ TYPE="KEYWORD2">-</SEQ>\r
+ <SEQ TYPE="KEYWORD2">/</SEQ>\r
+ <SEQ TYPE="KEYWORD2">*</SEQ>\r
+ <SEQ TYPE="KEYWORD2">></SEQ>\r
+ <SEQ TYPE="KEYWORD2"><</SEQ>\r
+ <SEQ TYPE="KEYWORD2">&</SEQ>\r
+ <SEQ TYPE="KEYWORD2">|</SEQ>\r
+ <SEQ TYPE="KEYWORD2">^</SEQ>\r
+ <SEQ TYPE="KEYWORD2">~</SEQ>\r
+ <SEQ TYPE="KEYWORD2">.</SEQ>\r
+ <SEQ TYPE="KEYWORD2">,</SEQ>\r
+ <SEQ TYPE="KEYWORD2">;</SEQ>\r
+ <SEQ TYPE="KEYWORD2">?</SEQ>\r
+ <SEQ TYPE="KEYWORD2">:</SEQ>\r
+ <SEQ TYPE="KEYWORD2">'</SEQ>\r
+ <SEQ TYPE="KEYWORD2">"</SEQ>\r
+ <SEQ TYPE="KEYWORD2">`</SEQ>\r
+\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="VERBATIM" DEFAULT="NULL" />\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="@c" />\r
+ </PROPS>\r
+ <RULES>\r
+ <!-- comments -->\r
+ <EOL_SPAN TYPE="COMMENT1">@c </EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">@comment </EOL_SPAN>\r
+\r
+ <!-- @... commands -->\r
+ <MARK_FOLLOWING TYPE="KEYWORD1">@</MARK_FOLLOWING>\r
+\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- The most complicated edit mode ever, for plain text mode -->\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <RULES>\r
+ <TERMINATE AT_CHAR="0" />\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+ Tpl mode by Brant Gurganus <brantgurganus2001@cherokeescouting.org>\r
+ Adapted from ColdFusion\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ \r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT3">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+ \r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ \r
+ <!-- TPL markup start tags -->\r
+ <SPAN TYPE="KEYWORD3" DELEGATE="TPL">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ </RULES>\r
+ \r
+ <RULES SET="TPL" DEFAULT="KEYWORD1" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ \r
+ <SPAN TYPE="LABEL">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LABEL">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ \r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ \r
+ <KEYWORDS>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <OPERATOR>=</OPERATOR>\r
+ <KEYWORD2>START</KEYWORD2>\r
+ <KEYWORD2>END</KEYWORD2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ \r
+ <RULES SET="TAGS" DEFAULT="MARKUP" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <MARK_PREVIOUS TYPE="FUNCTION"\r
+ MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!></SEQ>\r
+ <SEQ TYPE="OPERATOR">!<</SEQ>\r
+ <SEQ TYPE="OPERATOR">::</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <MARK_FOLLOWING TYPE="LITERAL2">@</MARK_FOLLOWING>\r
+\r
+ <KEYWORDS>\r
+ <!-- reserved words -->\r
+ <KEYWORD1>ABSOLUTE</KEYWORD1>\r
+ <KEYWORD1>ADD</KEYWORD1>\r
+ <KEYWORD1>ALTER</KEYWORD1>\r
+ <KEYWORD1>ANSI_NULLS</KEYWORD1>\r
+ <KEYWORD1>AS</KEYWORD1>\r
+ <KEYWORD1>ASC</KEYWORD1>\r
+ <KEYWORD1>AUTHORIZATION</KEYWORD1>\r
+ <KEYWORD1>BACKUP</KEYWORD1>\r
+ <KEYWORD1>BEGIN</KEYWORD1>\r
+ <KEYWORD1>BREAK</KEYWORD1>\r
+ <KEYWORD1>BROWSE</KEYWORD1>\r
+ <KEYWORD1>BULK</KEYWORD1>\r
+ <KEYWORD1>BY</KEYWORD1>\r
+ <KEYWORD1>CASCADE</KEYWORD1>\r
+ <KEYWORD1>CHECK</KEYWORD1>\r
+ <KEYWORD1>CHECKPOINT</KEYWORD1>\r
+ <KEYWORD1>CLOSE</KEYWORD1>\r
+ <KEYWORD1>CLUSTERED</KEYWORD1>\r
+ <KEYWORD1>COLUMN</KEYWORD1>\r
+ <KEYWORD1>COMMIT</KEYWORD1>\r
+ <KEYWORD1>COMMITTED</KEYWORD1>\r
+ <KEYWORD1>COMPUTE</KEYWORD1>\r
+ <KEYWORD1>CONFIRM</KEYWORD1>\r
+ <KEYWORD1>CONSTRAINT</KEYWORD1>\r
+ <KEYWORD1>CONTAINS</KEYWORD1>\r
+ <KEYWORD1>CONTAINSTABLE</KEYWORD1>\r
+ <KEYWORD1>CONTINUE</KEYWORD1>\r
+ <KEYWORD1>CONTROLROW</KEYWORD1>\r
+ <KEYWORD1>CREATE</KEYWORD1>\r
+ <KEYWORD1>CURRENT</KEYWORD1>\r
+ <KEYWORD1>CURRENT_DATE</KEYWORD1>\r
+ <KEYWORD1>CURRENT_TIME</KEYWORD1>\r
+ <KEYWORD1>CURSOR</KEYWORD1>\r
+ <KEYWORD1>DATABASE</KEYWORD1>\r
+ <KEYWORD1>DBCC</KEYWORD1>\r
+ <KEYWORD1>DEALLOCATE</KEYWORD1>\r
+ <KEYWORD1>DECLARE</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>DELETE</KEYWORD1>\r
+ <KEYWORD1>DENY</KEYWORD1>\r
+ <KEYWORD1>DESC</KEYWORD1>\r
+ <KEYWORD1>DISK</KEYWORD1>\r
+ <KEYWORD1>DISTINCT</KEYWORD1>\r
+ <KEYWORD1>DISTRIBUTED</KEYWORD1>\r
+ <KEYWORD1>DOUBLE</KEYWORD1>\r
+ <KEYWORD1>DROP</KEYWORD1>\r
+ <KEYWORD1>DUMMY</KEYWORD1>\r
+ <KEYWORD1>DUMP</KEYWORD1>\r
+ <KEYWORD1>DYNAMIC</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>ERRLVL</KEYWORD1>\r
+ <KEYWORD1>ERROREXIT</KEYWORD1>\r
+ <KEYWORD1>ESCAPE</KEYWORD1>\r
+ <KEYWORD1>EXCEPT</KEYWORD1>\r
+ <KEYWORD1>EXEC</KEYWORD1>\r
+ <KEYWORD1>EXECUTE</KEYWORD1>\r
+ <KEYWORD1>EXIT</KEYWORD1>\r
+ <KEYWORD1>FAST_FORWARD</KEYWORD1>\r
+ <KEYWORD1>FETCH</KEYWORD1>\r
+ <KEYWORD1>FILE</KEYWORD1>\r
+ <KEYWORD1>FILLFACTOR</KEYWORD1>\r
+ <KEYWORD1>FIRST</KEYWORD1>\r
+ <KEYWORD1>FLOPPY</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FOREIGN</KEYWORD1>\r
+ <KEYWORD1>FORWARD_ONLY</KEYWORD1>\r
+ <KEYWORD1>FREETEXT</KEYWORD1>\r
+ <KEYWORD1>FREETEXTTABLE</KEYWORD1>\r
+ <KEYWORD1>FROM</KEYWORD1>\r
+ <KEYWORD1>FULL</KEYWORD1>\r
+ <KEYWORD1>FUNCTION</KEYWORD1>\r
+ <KEYWORD1>GLOBAL</KEYWORD1>\r
+ <KEYWORD1>GOTO</KEYWORD1>\r
+ <KEYWORD1>GRANT</KEYWORD1>\r
+ <KEYWORD1>GROUP</KEYWORD1>\r
+ <KEYWORD1>HAVING</KEYWORD1>\r
+ <KEYWORD1>HOLDLOCK</KEYWORD1>\r
+ <KEYWORD1>ID</KEYWORD1>\r
+ <KEYWORD1>IDENTITYCOL</KEYWORD1>\r
+ <KEYWORD1>IDENTITY_INSERT</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>INDEX</KEYWORD1>\r
+ <KEYWORD1>INNER</KEYWORD1>\r
+ <KEYWORD1>INSENSITIVE</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>INTO</KEYWORD1>\r
+ <KEYWORD1>IS</KEYWORD1>\r
+ <KEYWORD1>ISOLATION</KEYWORD1>\r
+ <KEYWORD1>KEY</KEYWORD1>\r
+ <KEYWORD1>KEYSET</KEYWORD1>\r
+ <KEYWORD1>KILL</KEYWORD1>\r
+ <KEYWORD1>LAST</KEYWORD1>\r
+ <KEYWORD1>LEVEL</KEYWORD1>\r
+ <KEYWORD1>LINENO</KEYWORD1>\r
+ <KEYWORD1>LOAD</KEYWORD1>\r
+ <KEYWORD1>LOCAL</KEYWORD1>\r
+ <KEYWORD1>MAX</KEYWORD1>\r
+ <KEYWORD1>MIN</KEYWORD1>\r
+ <KEYWORD1>MIRROREXIT</KEYWORD1>\r
+ <KEYWORD1>NATIONAL</KEYWORD1>\r
+ <KEYWORD1>NEXT</KEYWORD1>\r
+ <KEYWORD1>NOCHECK</KEYWORD1>\r
+ <KEYWORD1>NONCLUSTERED</KEYWORD1>\r
+ <KEYWORD1>OF</KEYWORD1>\r
+ <KEYWORD1>OFF</KEYWORD1>\r
+ <KEYWORD1>OFFSETS</KEYWORD1>\r
+ <KEYWORD1>ON</KEYWORD1>\r
+ <KEYWORD1>ONCE</KEYWORD1>\r
+ <KEYWORD1>ONLY</KEYWORD1>\r
+ <KEYWORD1>OPEN</KEYWORD1>\r
+ <KEYWORD1>OPENDATASOURCE</KEYWORD1>\r
+ <KEYWORD1>OPENQUERY</KEYWORD1>\r
+ <KEYWORD1>OPENROWSET</KEYWORD1>\r
+ <KEYWORD1>OPTIMISTIC</KEYWORD1>\r
+ <KEYWORD1>OPTION</KEYWORD1>\r
+ <KEYWORD1>ORDER</KEYWORD1>\r
+ <KEYWORD1>OUTPUT</KEYWORD1>\r
+ <KEYWORD1>OVER</KEYWORD1>\r
+ <KEYWORD1>PERCENT</KEYWORD1>\r
+ <KEYWORD1>PERM</KEYWORD1>\r
+ <KEYWORD1>PERMANENT</KEYWORD1>\r
+ <KEYWORD1>PIPE</KEYWORD1>\r
+ <KEYWORD1>PLAN</KEYWORD1>\r
+ <KEYWORD1>PRECISION</KEYWORD1>\r
+ <KEYWORD1>PREPARE</KEYWORD1>\r
+ <KEYWORD1>PRIMARY</KEYWORD1>\r
+ <KEYWORD1>PRINT</KEYWORD1>\r
+ <KEYWORD1>PRIOR</KEYWORD1>\r
+ <KEYWORD1>PRIVILEGES</KEYWORD1>\r
+ <KEYWORD1>PROC</KEYWORD1>\r
+ <KEYWORD1>PROCEDURE</KEYWORD1>\r
+ <KEYWORD1>PROCESSEXIT</KEYWORD1>\r
+ <KEYWORD1>PUBLIC</KEYWORD1>\r
+ <KEYWORD1>QUOTED_IDENTIFIER</KEYWORD1>\r
+ <KEYWORD1>RAISERROR</KEYWORD1>\r
+ <KEYWORD1>READ</KEYWORD1>\r
+ <KEYWORD1>READTEXT</KEYWORD1>\r
+ <KEYWORD1>READ_ONLY</KEYWORD1>\r
+ <KEYWORD1>RECONFIGURE</KEYWORD1>\r
+ <KEYWORD1>REFERENCES</KEYWORD1>\r
+ <KEYWORD1>RELATIVE</KEYWORD1>\r
+ <KEYWORD1>REPEATABLE</KEYWORD1>\r
+ <KEYWORD1>REPLICATION</KEYWORD1>\r
+ <KEYWORD1>RESTORE</KEYWORD1>\r
+ <KEYWORD1>RESTRICT</KEYWORD1>\r
+ <KEYWORD1>RETURN</KEYWORD1>\r
+ <KEYWORD1>RETURNS</KEYWORD1>\r
+ <KEYWORD1>REVOKE</KEYWORD1>\r
+ <KEYWORD1>ROLLBACK</KEYWORD1>\r
+ <KEYWORD1>ROWGUIDCOL</KEYWORD1>\r
+ <KEYWORD1>RULE</KEYWORD1>\r
+ <KEYWORD1>SAVE</KEYWORD1>\r
+ <KEYWORD1>SCHEMA</KEYWORD1>\r
+ <KEYWORD1>SCROLL</KEYWORD1>\r
+ <KEYWORD1>SCROLL_LOCKS</KEYWORD1>\r
+ <KEYWORD1>SELECT</KEYWORD1>\r
+ <KEYWORD1>SERIALIZABLE</KEYWORD1>\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>SETUSER</KEYWORD1>\r
+ <KEYWORD1>SHUTDOWN</KEYWORD1>\r
+ <KEYWORD1>STATIC</KEYWORD1>\r
+ <KEYWORD1>STATISTICS</KEYWORD1>\r
+ <KEYWORD1>TABLE</KEYWORD1>\r
+ <KEYWORD1>TAPE</KEYWORD1>\r
+ <KEYWORD1>TEMP</KEYWORD1>\r
+ <KEYWORD1>TEMPORARY</KEYWORD1>\r
+ <KEYWORD1>TEXTIMAGE_ON</KEYWORD1>\r
+ <KEYWORD1>THEN</KEYWORD1>\r
+ <KEYWORD1>TO</KEYWORD1>\r
+ <KEYWORD1>TOP</KEYWORD1>\r
+ <KEYWORD1>TRAN</KEYWORD1>\r
+ <KEYWORD1>TRANSACTION</KEYWORD1>\r
+ <KEYWORD1>TRIGGER</KEYWORD1>\r
+ <KEYWORD1>TRUNCATE</KEYWORD1>\r
+ <KEYWORD1>TSEQUAL</KEYWORD1>\r
+ <KEYWORD1>UNCOMMITTED</KEYWORD1>\r
+ <KEYWORD1>UNION</KEYWORD1>\r
+ <KEYWORD1>UNIQUE</KEYWORD1>\r
+ <KEYWORD1>UPDATE</KEYWORD1>\r
+ <KEYWORD1>UPDATETEXT</KEYWORD1>\r
+ <KEYWORD1>USE</KEYWORD1>\r
+ <KEYWORD1>VALUES</KEYWORD1>\r
+ <KEYWORD1>VARYING</KEYWORD1>\r
+ <KEYWORD1>VIEW</KEYWORD1>\r
+ <KEYWORD1>WAITFOR</KEYWORD1>\r
+ <KEYWORD1>WHEN</KEYWORD1>\r
+ <KEYWORD1>WHERE</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>WITH</KEYWORD1>\r
+ <KEYWORD1>WORK</KEYWORD1>\r
+ <KEYWORD1>WRITETEXT</KEYWORD1>\r
+\r
+ <!-- data types -->\r
+ <KEYWORD1>binary</KEYWORD1>\r
+ <KEYWORD1>bit</KEYWORD1>\r
+ <KEYWORD1>char</KEYWORD1>\r
+ <KEYWORD1>character</KEYWORD1>\r
+ <KEYWORD1>datetime</KEYWORD1>\r
+ <KEYWORD1>decimal</KEYWORD1>\r
+ <KEYWORD1>float</KEYWORD1>\r
+ <KEYWORD1>image</KEYWORD1>\r
+ <KEYWORD1>int</KEYWORD1>\r
+ <KEYWORD1>integer</KEYWORD1>\r
+ <KEYWORD1>money</KEYWORD1>\r
+ <KEYWORD1>name</KEYWORD1>\r
+ <KEYWORD1>numeric</KEYWORD1>\r
+ <KEYWORD1>nchar</KEYWORD1>\r
+ <KEYWORD1>nvarchar</KEYWORD1>\r
+ <KEYWORD1>ntext</KEYWORD1>\r
+ <KEYWORD1>real</KEYWORD1>\r
+ <KEYWORD1>smalldatetime</KEYWORD1>\r
+ <KEYWORD1>smallint</KEYWORD1>\r
+ <KEYWORD1>smallmoney</KEYWORD1>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>timestamp</KEYWORD1>\r
+ <KEYWORD1>tinyint</KEYWORD1>\r
+ <KEYWORD1>uniqueidentifier</KEYWORD1>\r
+ <KEYWORD1>varbinary</KEYWORD1>\r
+ <KEYWORD1>varchar</KEYWORD1>\r
+\r
+ <!-- system functions -->\r
+ <KEYWORD2>@@CONNECTIONS</KEYWORD2>\r
+ <KEYWORD2>@@CPU_BUSY</KEYWORD2>\r
+ <KEYWORD2>@@CURSOR_ROWS</KEYWORD2>\r
+ <KEYWORD2>@@DATEFIRST</KEYWORD2>\r
+ <KEYWORD2>@@DBTS</KEYWORD2>\r
+ <KEYWORD2>@@ERROR</KEYWORD2>\r
+ <KEYWORD2>@@FETCH_STATUS</KEYWORD2>\r
+ <KEYWORD2>@@IDENTITY</KEYWORD2>\r
+ <KEYWORD2>@@IDLE</KEYWORD2>\r
+ <KEYWORD2>@@IO_BUSY</KEYWORD2>\r
+ <KEYWORD2>@@LANGID</KEYWORD2>\r
+ <KEYWORD2>@@LANGUAGE</KEYWORD2>\r
+ <KEYWORD2>@@LOCK_TIMEOUT</KEYWORD2>\r
+ <KEYWORD2>@@MAX_CONNECTIONS</KEYWORD2>\r
+ <KEYWORD2>@@MAX_PRECISION</KEYWORD2>\r
+ <KEYWORD2>@@NESTLEVEL</KEYWORD2>\r
+ <KEYWORD2>@@OPTIONS</KEYWORD2>\r
+ <KEYWORD2>@@PACKET_ERRORS</KEYWORD2>\r
+ <KEYWORD2>@@PACK_RECEIVED</KEYWORD2>\r
+ <KEYWORD2>@@PACK_SENT</KEYWORD2>\r
+ <KEYWORD2>@@PROCID</KEYWORD2>\r
+ <KEYWORD2>@@REMSERVER</KEYWORD2>\r
+ <KEYWORD2>@@ROWCOUNT</KEYWORD2>\r
+ <KEYWORD2>@@SERVERNAME</KEYWORD2>\r
+ <KEYWORD2>@@SERVICENAME</KEYWORD2>\r
+ <KEYWORD2>@@SPID</KEYWORD2>\r
+ <KEYWORD2>@@TEXTSIZE</KEYWORD2>\r
+ <KEYWORD2>@@TIMETICKS</KEYWORD2>\r
+ <KEYWORD2>@@TOTAL_ERRORS</KEYWORD2>\r
+ <KEYWORD2>@@TOTAL_READ</KEYWORD2>\r
+ <KEYWORD2>@@TOTAL_WRITE</KEYWORD2>\r
+ <KEYWORD2>@@TRANCOUNT</KEYWORD2>\r
+ <KEYWORD2>@@VERSION</KEYWORD2>\r
+ <KEYWORD2>ABS</KEYWORD2>\r
+ <KEYWORD2>ACOS</KEYWORD2>\r
+ <KEYWORD2>APP_NAME</KEYWORD2>\r
+ <KEYWORD2>ASCII</KEYWORD2>\r
+ <KEYWORD2>ASIN</KEYWORD2>\r
+ <KEYWORD2>ATAN</KEYWORD2>\r
+ <KEYWORD2>ATN2</KEYWORD2>\r
+ <KEYWORD2>AVG</KEYWORD2>\r
+ <KEYWORD2>BINARY_CHECKSUM</KEYWORD2>\r
+ <KEYWORD2>CASE</KEYWORD2>\r
+ <KEYWORD2>CAST</KEYWORD2>\r
+ <KEYWORD2>CEILING</KEYWORD2>\r
+ <KEYWORD2>CHARINDEX</KEYWORD2>\r
+ <KEYWORD2>CHECKSUM</KEYWORD2>\r
+ <KEYWORD2>CHECKSUM_AGG</KEYWORD2>\r
+ <KEYWORD2>COALESCE</KEYWORD2>\r
+ <KEYWORD2>COLLATIONPROPERTY</KEYWORD2>\r
+ <KEYWORD2>COLUMNPROPERTY</KEYWORD2>\r
+ <KEYWORD2>COL_LENGTH</KEYWORD2>\r
+ <KEYWORD2>COL_NAME</KEYWORD2>\r
+ <KEYWORD2>CONVERT</KEYWORD2>\r
+ <KEYWORD2>COS</KEYWORD2>\r
+ <KEYWORD2>COT</KEYWORD2>\r
+ <KEYWORD2>COUNT</KEYWORD2>\r
+ <KEYWORD2>COUNT_BIG</KEYWORD2>\r
+ <KEYWORD2>CURRENT_DATE</KEYWORD2>\r
+ <KEYWORD2>CURRENT_TIME</KEYWORD2>\r
+ <KEYWORD2>CURRENT_TIMESTAMP</KEYWORD2>\r
+ <KEYWORD2>CURRENT_USER</KEYWORD2>\r
+ <KEYWORD2>CURSOR_STATUS</KEYWORD2>\r
+ <KEYWORD2>DATABASEPROPERTY</KEYWORD2>\r
+ <KEYWORD2>DATALENGTH</KEYWORD2>\r
+ <KEYWORD2>DATEADD</KEYWORD2>\r
+ <KEYWORD2>DATEDIFF</KEYWORD2>\r
+ <KEYWORD2>DATENAME</KEYWORD2>\r
+ <KEYWORD2>DATEPART</KEYWORD2>\r
+ <KEYWORD2>DAY</KEYWORD2>\r
+ <KEYWORD2>DB_ID</KEYWORD2>\r
+ <KEYWORD2>DB_NAME</KEYWORD2>\r
+ <KEYWORD2>DEGREES</KEYWORD2>\r
+ <KEYWORD2>DIFFERENCE</KEYWORD2>\r
+ <KEYWORD2>EXP</KEYWORD2>\r
+ <KEYWORD2>FILEGROUPPROPERTY</KEYWORD2>\r
+ <KEYWORD2>FILEGROUP_ID</KEYWORD2>\r
+ <KEYWORD2>FILEGROUP_NAME</KEYWORD2>\r
+ <KEYWORD2>FILEPROPERTY</KEYWORD2>\r
+ <KEYWORD2>FILE_ID</KEYWORD2>\r
+ <KEYWORD2>FILE_NAME</KEYWORD2>\r
+ <KEYWORD2>FLOOR</KEYWORD2>\r
+ <KEYWORD2>FORMATMESSAGE</KEYWORD2>\r
+ <KEYWORD2>FULLTEXTCATALOGPROPERTY</KEYWORD2>\r
+ <KEYWORD2>FULLTEXTSERVICEPROPERTY</KEYWORD2>\r
+ <KEYWORD2>GETANSINULL</KEYWORD2>\r
+ <KEYWORD2>GETDATE</KEYWORD2>\r
+ <KEYWORD2>GETUTCDATE</KEYWORD2>\r
+ <KEYWORD2>GROUPING</KEYWORD2>\r
+ <KEYWORD2>HOST_ID</KEYWORD2>\r
+ <KEYWORD2>HOST_NAME</KEYWORD2>\r
+ <KEYWORD2>IDENTITY</KEYWORD2>\r
+ <KEYWORD2>IDENTITY_INSERT</KEYWORD2>\r
+ <KEYWORD2>IDENT_CURRENT</KEYWORD2>\r
+ <KEYWORD2>IDENT_INCR</KEYWORD2>\r
+ <KEYWORD2>IDENT_SEED</KEYWORD2>\r
+ <KEYWORD2>INDEXPROPERTY</KEYWORD2>\r
+ <KEYWORD2>INDEX_COL</KEYWORD2>\r
+ <KEYWORD2>ISDATE</KEYWORD2>\r
+ <KEYWORD2>ISNULL</KEYWORD2>\r
+ <KEYWORD2>ISNUMERIC</KEYWORD2>\r
+ <KEYWORD2>IS_MEMBER</KEYWORD2>\r
+ <KEYWORD2>IS_SRVROLEMEMBER</KEYWORD2>\r
+ <KEYWORD2>LEFT</KEYWORD2>\r
+ <KEYWORD2>LEN</KEYWORD2>\r
+ <KEYWORD2>LOG10</KEYWORD2>\r
+ <KEYWORD2>LOG</KEYWORD2>\r
+ <KEYWORD2>LOWER</KEYWORD2>\r
+ <KEYWORD2>LTRIM</KEYWORD2>\r
+ <KEYWORD2>MONTH</KEYWORD2>\r
+ <KEYWORD2>NEWID</KEYWORD2>\r
+ <KEYWORD2>NULLIF</KEYWORD2>\r
+ <KEYWORD2>OBJECTPROPERTY</KEYWORD2>\r
+ <KEYWORD2>OBJECT_ID</KEYWORD2>\r
+ <KEYWORD2>OBJECT_NAME</KEYWORD2>\r
+ <KEYWORD2>PARSENAME</KEYWORD2>\r
+ <KEYWORD2>PATINDEX</KEYWORD2>\r
+ <KEYWORD2>PERMISSIONS</KEYWORD2>\r
+ <KEYWORD2>PI</KEYWORD2>\r
+ <KEYWORD2>POWER</KEYWORD2>\r
+ <KEYWORD2>QUOTENAME</KEYWORD2>\r
+ <KEYWORD2>RADIANS</KEYWORD2>\r
+ <KEYWORD2>RAND</KEYWORD2>\r
+ <KEYWORD2>REPLACE</KEYWORD2>\r
+ <KEYWORD2>REPLICATE</KEYWORD2>\r
+ <KEYWORD2>REVERSE</KEYWORD2>\r
+ <KEYWORD2>RIGHT</KEYWORD2>\r
+ <KEYWORD2>ROUND</KEYWORD2>\r
+ <KEYWORD2>ROWCOUNT_BIG</KEYWORD2>\r
+ <KEYWORD2>RTRIM</KEYWORD2>\r
+ <KEYWORD2>SCOPE_IDENTITY</KEYWORD2>\r
+ <KEYWORD2>SERVERPROPERTY</KEYWORD2>\r
+ <KEYWORD2>SESSIONPROPERTY</KEYWORD2>\r
+ <KEYWORD2>SESSION_USER</KEYWORD2>\r
+ <KEYWORD2>SIGN</KEYWORD2>\r
+ <KEYWORD2>SIN</KEYWORD2>\r
+ <KEYWORD2>SOUNDEX</KEYWORD2>\r
+ <KEYWORD2>SPACE</KEYWORD2>\r
+ <KEYWORD2>SQRT</KEYWORD2>\r
+ <KEYWORD2>SQUARE</KEYWORD2>\r
+ <KEYWORD2>STATS_DATE</KEYWORD2>\r
+ <KEYWORD2>STDEV</KEYWORD2>\r
+ <KEYWORD2>STDEVP</KEYWORD2>\r
+ <KEYWORD2>STR</KEYWORD2>\r
+ <KEYWORD2>STUFF</KEYWORD2>\r
+ <KEYWORD2>SUBSTRING</KEYWORD2>\r
+ <KEYWORD2>SUM</KEYWORD2>\r
+ <KEYWORD2>SUSER_ID</KEYWORD2>\r
+ <KEYWORD2>SUSER_NAME</KEYWORD2>\r
+ <KEYWORD2>SUSER_SID</KEYWORD2>\r
+ <KEYWORD2>SUSER_SNAME</KEYWORD2>\r
+ <KEYWORD2>SYSTEM_USER</KEYWORD2>\r
+ <KEYWORD2>TAN</KEYWORD2>\r
+ <KEYWORD2>TEXTPTR</KEYWORD2>\r
+ <KEYWORD2>TEXTVALID</KEYWORD2>\r
+ <KEYWORD2>TYPEPROPERTY</KEYWORD2>\r
+ <KEYWORD2>UNICODE</KEYWORD2>\r
+ <KEYWORD2>UPPER</KEYWORD2>\r
+ <KEYWORD2>USER</KEYWORD2>\r
+ <KEYWORD2>USER_ID</KEYWORD2>\r
+ <KEYWORD2>USER_NAME</KEYWORD2>\r
+ <KEYWORD2>VAR</KEYWORD2>\r
+ <KEYWORD2>VARP</KEYWORD2>\r
+ <KEYWORD2>YEAR</KEYWORD2>\r
+\r
+ <!-- operators -->\r
+ <KEYWORD1>ALL</KEYWORD1>\r
+ <KEYWORD1>AND</KEYWORD1>\r
+ <KEYWORD1>ANY</KEYWORD1>\r
+ <KEYWORD1>BETWEEN</KEYWORD1>\r
+ <KEYWORD1>CROSS</KEYWORD1>\r
+ <KEYWORD1>EXISTS</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>INTERSECT</KEYWORD1>\r
+ <KEYWORD1>JOIN</KEYWORD1>\r
+ <KEYWORD1>LIKE</KEYWORD1>\r
+ <KEYWORD1>NOT</KEYWORD1>\r
+ <KEYWORD1>NULL</KEYWORD1>\r
+ <KEYWORD1>OR</KEYWORD1>\r
+ <KEYWORD1>OUTER</KEYWORD1>\r
+ <KEYWORD1>SOME</KEYWORD1>\r
+\r
+ <!-- SQL Server 7.0 system stored procedures -->\r
+ <KEYWORD3>sp_add_agent_parameter</KEYWORD3>\r
+ <KEYWORD3>sp_add_agent_profile</KEYWORD3>\r
+ <KEYWORD3>sp_add_alert</KEYWORD3>\r
+ <KEYWORD3>sp_add_category</KEYWORD3>\r
+ <KEYWORD3>sp_add_data_file_recover_suspect_db</KEYWORD3>\r
+ <KEYWORD3>sp_add_job</KEYWORD3>\r
+ <KEYWORD3>sp_add_jobschedule</KEYWORD3>\r
+ <KEYWORD3>sp_add_jobserver</KEYWORD3>\r
+ <KEYWORD3>sp_add_jobstep</KEYWORD3>\r
+ <KEYWORD3>sp_add_log_file_recover_suspect_db</KEYWORD3>\r
+ <KEYWORD3>sp_add_notification</KEYWORD3>\r
+ <KEYWORD3>sp_add_operator</KEYWORD3>\r
+ <KEYWORD3>sp_add_targetservergroup</KEYWORD3>\r
+ <KEYWORD3>sp_add_targetsvrgrp_member</KEYWORD3>\r
+ <KEYWORD3>sp_addalias</KEYWORD3>\r
+ <KEYWORD3>sp_addapprole</KEYWORD3>\r
+ <KEYWORD3>sp_addarticle</KEYWORD3>\r
+ <KEYWORD3>sp_adddistpublisher</KEYWORD3>\r
+ <KEYWORD3>sp_adddistributiondb</KEYWORD3>\r
+ <KEYWORD3>sp_adddistributor</KEYWORD3>\r
+ <KEYWORD3>sp_addextendedproc</KEYWORD3>\r
+ <KEYWORD3>sp_addgroup</KEYWORD3>\r
+ <KEYWORD3>sp_addlinkedserver</KEYWORD3>\r
+ <KEYWORD3>sp_addlinkedsrvlogin</KEYWORD3>\r
+ <KEYWORD3>sp_addlinkedsrvlogin</KEYWORD3>\r
+ <KEYWORD3>sp_addlogin</KEYWORD3>\r
+ <KEYWORD3>sp_addmergearticle</KEYWORD3>\r
+ <KEYWORD3>sp_addmergefilter</KEYWORD3>\r
+ <KEYWORD3>sp_addmergepublication</KEYWORD3>\r
+ <KEYWORD3>sp_addmergepullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_addmergepullsubscription_agent</KEYWORD3>\r
+ <KEYWORD3>sp_addmergesubscription</KEYWORD3>\r
+ <KEYWORD3>sp_addmessage</KEYWORD3>\r
+ <KEYWORD3>sp_addpublication</KEYWORD3>\r
+ <KEYWORD3>sp_addpublication_snapshot</KEYWORD3>\r
+ <KEYWORD3>sp_addpublisher70</KEYWORD3>\r
+ <KEYWORD3>sp_addpullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_addpullsubscription_agent</KEYWORD3>\r
+ <KEYWORD3>sp_addremotelogin</KEYWORD3>\r
+ <KEYWORD3>sp_addrole</KEYWORD3>\r
+ <KEYWORD3>sp_addrolemember</KEYWORD3>\r
+ <KEYWORD3>sp_addserver</KEYWORD3>\r
+ <KEYWORD3>sp_addsrvrolemember</KEYWORD3>\r
+ <KEYWORD3>sp_addsubscriber</KEYWORD3>\r
+ <KEYWORD3>sp_addsubscriber_schedule</KEYWORD3>\r
+ <KEYWORD3>sp_addsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_addsynctriggers</KEYWORD3>\r
+ <KEYWORD3>sp_addtabletocontents</KEYWORD3>\r
+ <KEYWORD3>sp_addtask</KEYWORD3>\r
+ <KEYWORD3>sp_addtype</KEYWORD3>\r
+ <KEYWORD3>sp_addumpdevice</KEYWORD3>\r
+ <KEYWORD3>sp_adduser</KEYWORD3>\r
+ <KEYWORD3>sp_altermessage</KEYWORD3>\r
+ <KEYWORD3>sp_apply_job_to_targets</KEYWORD3>\r
+ <KEYWORD3>sp_approlepassword</KEYWORD3>\r
+ <KEYWORD3>sp_article_validation</KEYWORD3>\r
+ <KEYWORD3>sp_articlecolumn</KEYWORD3>\r
+ <KEYWORD3>sp_articlefilter</KEYWORD3>\r
+ <KEYWORD3>sp_articlesynctranprocs</KEYWORD3>\r
+ <KEYWORD3>sp_articleview</KEYWORD3>\r
+ <KEYWORD3>sp_attach_db</KEYWORD3>\r
+ <KEYWORD3>sp_attach_single_file_db</KEYWORD3>\r
+ <KEYWORD3>sp_autostats</KEYWORD3>\r
+ <KEYWORD3>sp_bindefault</KEYWORD3>\r
+ <KEYWORD3>sp_bindrule</KEYWORD3>\r
+ <KEYWORD3>sp_bindsession</KEYWORD3>\r
+ <KEYWORD3>sp_browsereplcmds</KEYWORD3>\r
+ <KEYWORD3>sp_catalogs</KEYWORD3>\r
+ <KEYWORD3>sp_certify_removable</KEYWORD3>\r
+ <KEYWORD3>sp_change_agent_parameter</KEYWORD3>\r
+ <KEYWORD3>sp_change_agent_profile</KEYWORD3>\r
+ <KEYWORD3>sp_change_subscription_properties</KEYWORD3>\r
+ <KEYWORD3>sp_change_users_login</KEYWORD3>\r
+ <KEYWORD3>sp_changearticle</KEYWORD3>\r
+ <KEYWORD3>sp_changedbowner</KEYWORD3>\r
+ <KEYWORD3>sp_changedistpublisher</KEYWORD3>\r
+ <KEYWORD3>sp_changedistributiondb</KEYWORD3>\r
+ <KEYWORD3>sp_changedistributor_password</KEYWORD3>\r
+ <KEYWORD3>sp_changedistributor_property</KEYWORD3>\r
+ <KEYWORD3>sp_changegroup</KEYWORD3>\r
+ <KEYWORD3>sp_changemergearticle</KEYWORD3>\r
+ <KEYWORD3>sp_changemergefilter</KEYWORD3>\r
+ <KEYWORD3>sp_changemergepublication</KEYWORD3>\r
+ <KEYWORD3>sp_changemergepullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_changemergesubscription</KEYWORD3>\r
+ <KEYWORD3>sp_changeobjectowner</KEYWORD3>\r
+ <KEYWORD3>sp_changepublication</KEYWORD3>\r
+ <KEYWORD3>sp_changesubscriber</KEYWORD3>\r
+ <KEYWORD3>sp_changesubscriber_schedule</KEYWORD3>\r
+ <KEYWORD3>sp_changesubstatus</KEYWORD3>\r
+ <KEYWORD3>sp_check_for_sync_trigger</KEYWORD3>\r
+ <KEYWORD3>sp_column_privileges</KEYWORD3>\r
+ <KEYWORD3>sp_column_privileges_ex</KEYWORD3>\r
+ <KEYWORD3>sp_columns</KEYWORD3>\r
+ <KEYWORD3>sp_columns_ex</KEYWORD3>\r
+ <KEYWORD3>sp_configure</KEYWORD3>\r
+ <KEYWORD3>sp_create_removable</KEYWORD3>\r
+ <KEYWORD3>sp_createorphan</KEYWORD3>\r
+ <KEYWORD3>sp_createstats</KEYWORD3>\r
+ <KEYWORD3>sp_cursor</KEYWORD3>\r
+ <KEYWORD3>sp_cursor_list</KEYWORD3>\r
+ <KEYWORD3>sp_cursorclose</KEYWORD3>\r
+ <KEYWORD3>sp_cursorexecute</KEYWORD3>\r
+ <KEYWORD3>sp_cursorfetch</KEYWORD3>\r
+ <KEYWORD3>sp_cursoropen</KEYWORD3>\r
+ <KEYWORD3>sp_cursoroption</KEYWORD3>\r
+ <KEYWORD3>sp_cursorprepare</KEYWORD3>\r
+ <KEYWORD3>sp_cursorunprepare</KEYWORD3>\r
+ <KEYWORD3>sp_cycle_errorlog</KEYWORD3>\r
+ <KEYWORD3>sp_databases</KEYWORD3>\r
+ <KEYWORD3>sp_datatype_info</KEYWORD3>\r
+ <KEYWORD3>sp_dbcmptlevel</KEYWORD3>\r
+ <KEYWORD3>sp_dbfixedrolepermission</KEYWORD3>\r
+ <KEYWORD3>sp_dboption</KEYWORD3>\r
+ <KEYWORD3>sp_defaultdb</KEYWORD3>\r
+ <KEYWORD3>sp_defaultlanguage</KEYWORD3>\r
+ <KEYWORD3>sp_delete_alert</KEYWORD3>\r
+ <KEYWORD3>sp_delete_backuphistory</KEYWORD3>\r
+ <KEYWORD3>sp_delete_category</KEYWORD3>\r
+ <KEYWORD3>sp_delete_job</KEYWORD3>\r
+ <KEYWORD3>sp_delete_jobschedule</KEYWORD3>\r
+ <KEYWORD3>sp_delete_jobserver</KEYWORD3>\r
+ <KEYWORD3>sp_delete_jobstep</KEYWORD3>\r
+ <KEYWORD3>sp_delete_notification</KEYWORD3>\r
+ <KEYWORD3>sp_delete_operator</KEYWORD3>\r
+ <KEYWORD3>sp_delete_targetserver</KEYWORD3>\r
+ <KEYWORD3>sp_delete_targetservergroup</KEYWORD3>\r
+ <KEYWORD3>sp_delete_targetsvrgrp_member</KEYWORD3>\r
+ <KEYWORD3>sp_deletemergeconflictrow</KEYWORD3>\r
+ <KEYWORD3>sp_denylogin</KEYWORD3>\r
+ <KEYWORD3>sp_depends</KEYWORD3>\r
+ <KEYWORD3>sp_describe_cursor</KEYWORD3>\r
+ <KEYWORD3>sp_describe_cursor_columns</KEYWORD3>\r
+ <KEYWORD3>sp_describe_cursor_tables</KEYWORD3>\r
+ <KEYWORD3>sp_detach_db</KEYWORD3>\r
+ <KEYWORD3>sp_drop_agent_parameter</KEYWORD3>\r
+ <KEYWORD3>sp_drop_agent_profile</KEYWORD3>\r
+ <KEYWORD3>sp_dropalias</KEYWORD3>\r
+ <KEYWORD3>sp_dropapprole</KEYWORD3>\r
+ <KEYWORD3>sp_droparticle</KEYWORD3>\r
+ <KEYWORD3>sp_dropdevice</KEYWORD3>\r
+ <KEYWORD3>sp_dropdistpublisher</KEYWORD3>\r
+ <KEYWORD3>sp_dropdistributiondb</KEYWORD3>\r
+ <KEYWORD3>sp_dropdistributor</KEYWORD3>\r
+ <KEYWORD3>sp_dropextendedproc</KEYWORD3>\r
+ <KEYWORD3>sp_dropgroup</KEYWORD3>\r
+ <KEYWORD3>sp_droplinkedsrvlogin</KEYWORD3>\r
+ <KEYWORD3>sp_droplinkedsrvlogin</KEYWORD3>\r
+ <KEYWORD3>sp_droplogin</KEYWORD3>\r
+ <KEYWORD3>sp_dropmergearticle</KEYWORD3>\r
+ <KEYWORD3>sp_dropmergefilter</KEYWORD3>\r
+ <KEYWORD3>sp_dropmergepublication</KEYWORD3>\r
+ <KEYWORD3>sp_dropmergepullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_dropmergesubscription</KEYWORD3>\r
+ <KEYWORD3>sp_dropmessage</KEYWORD3>\r
+ <KEYWORD3>sp_droporphans</KEYWORD3>\r
+ <KEYWORD3>sp_droppublication</KEYWORD3>\r
+ <KEYWORD3>sp_droppullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_dropremotelogin</KEYWORD3>\r
+ <KEYWORD3>sp_droprole</KEYWORD3>\r
+ <KEYWORD3>sp_droprolemember</KEYWORD3>\r
+ <KEYWORD3>sp_dropserver</KEYWORD3>\r
+ <KEYWORD3>sp_dropsrvrolemember</KEYWORD3>\r
+ <KEYWORD3>sp_dropsubscriber</KEYWORD3>\r
+ <KEYWORD3>sp_dropsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_droptask</KEYWORD3>\r
+ <KEYWORD3>sp_droptype</KEYWORD3>\r
+ <KEYWORD3>sp_dropuser</KEYWORD3>\r
+ <KEYWORD3>sp_dropwebtask</KEYWORD3>\r
+ <KEYWORD3>sp_dsninfo</KEYWORD3>\r
+ <KEYWORD3>sp_dumpparamcmd</KEYWORD3>\r
+ <KEYWORD3>sp_enumcodepages</KEYWORD3>\r
+ <KEYWORD3>sp_enumcustomresolvers</KEYWORD3>\r
+ <KEYWORD3>sp_enumdsn</KEYWORD3>\r
+ <KEYWORD3>sp_enumfullsubscribers</KEYWORD3>\r
+ <KEYWORD3>sp_execute</KEYWORD3>\r
+ <KEYWORD3>sp_executesql</KEYWORD3>\r
+ <KEYWORD3>sp_expired_subscription_cleanup</KEYWORD3>\r
+ <KEYWORD3>sp_fkeys</KEYWORD3>\r
+ <KEYWORD3>sp_foreignkeys</KEYWORD3>\r
+ <KEYWORD3>sp_fulltext_catalog</KEYWORD3>\r
+ <KEYWORD3>sp_fulltext_column</KEYWORD3>\r
+ <KEYWORD3>sp_fulltext_database</KEYWORD3>\r
+ <KEYWORD3>sp_fulltext_service</KEYWORD3>\r
+ <KEYWORD3>sp_fulltext_table</KEYWORD3>\r
+ <KEYWORD3>sp_generatefilters</KEYWORD3>\r
+ <KEYWORD3>sp_get_distributor</KEYWORD3>\r
+ <KEYWORD3>sp_getbindtoken</KEYWORD3>\r
+ <KEYWORD3>sp_getmergedeletetype</KEYWORD3>\r
+ <KEYWORD3>sp_grant_publication_access</KEYWORD3>\r
+ <KEYWORD3>sp_grantdbaccess</KEYWORD3>\r
+ <KEYWORD3>sp_grantlogin</KEYWORD3>\r
+ <KEYWORD3>sp_help</KEYWORD3>\r
+ <KEYWORD3>sp_help_agent_default</KEYWORD3>\r
+ <KEYWORD3>sp_help_agent_parameter</KEYWORD3>\r
+ <KEYWORD3>sp_help_agent_profile</KEYWORD3>\r
+ <KEYWORD3>sp_help_alert</KEYWORD3>\r
+ <KEYWORD3>sp_help_category</KEYWORD3>\r
+ <KEYWORD3>sp_help_downloadlist</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_catalogs</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_catalogs_cursor</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_columns</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_columns_cursor</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_tables</KEYWORD3>\r
+ <KEYWORD3>sp_help_fulltext_tables_cursor</KEYWORD3>\r
+ <KEYWORD3>sp_help_job</KEYWORD3>\r
+ <KEYWORD3>sp_help_jobhistory</KEYWORD3>\r
+ <KEYWORD3>sp_help_jobschedule</KEYWORD3>\r
+ <KEYWORD3>sp_help_jobserver</KEYWORD3>\r
+ <KEYWORD3>sp_help_jobstep</KEYWORD3>\r
+ <KEYWORD3>sp_help_notification</KEYWORD3>\r
+ <KEYWORD3>sp_help_operator</KEYWORD3>\r
+ <KEYWORD3>sp_help_publication_access</KEYWORD3>\r
+ <KEYWORD3>sp_help_targetserver</KEYWORD3>\r
+ <KEYWORD3>sp_help_targetservergroup</KEYWORD3>\r
+ <KEYWORD3>sp_helparticle</KEYWORD3>\r
+ <KEYWORD3>sp_helparticlecolumns</KEYWORD3>\r
+ <KEYWORD3>sp_helpconstraint</KEYWORD3>\r
+ <KEYWORD3>sp_helpdb</KEYWORD3>\r
+ <KEYWORD3>sp_helpdbfixedrole</KEYWORD3>\r
+ <KEYWORD3>sp_helpdevice</KEYWORD3>\r
+ <KEYWORD3>sp_helpdistpublisher</KEYWORD3>\r
+ <KEYWORD3>sp_helpdistributiondb</KEYWORD3>\r
+ <KEYWORD3>sp_helpdistributor</KEYWORD3>\r
+ <KEYWORD3>sp_helpextendedproc</KEYWORD3>\r
+ <KEYWORD3>sp_helpfile</KEYWORD3>\r
+ <KEYWORD3>sp_helpfilegroup</KEYWORD3>\r
+ <KEYWORD3>sp_helpgroup</KEYWORD3>\r
+ <KEYWORD3>sp_helphistory</KEYWORD3>\r
+ <KEYWORD3>sp_helpindex</KEYWORD3>\r
+ <KEYWORD3>sp_helplanguage</KEYWORD3>\r
+ <KEYWORD3>sp_helplinkedsrvlogin</KEYWORD3>\r
+ <KEYWORD3>sp_helplogins</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergearticle</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergearticleconflicts</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergeconflictrows</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergedeleteconflictrows</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergefilter</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergepublication</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergepullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_helpmergesubscription</KEYWORD3>\r
+ <KEYWORD3>sp_helpntgroup</KEYWORD3>\r
+ <KEYWORD3>sp_helppublication</KEYWORD3>\r
+ <KEYWORD3>sp_helppullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_helpremotelogin</KEYWORD3>\r
+ <KEYWORD3>sp_helpreplicationdboption</KEYWORD3>\r
+ <KEYWORD3>sp_helprole</KEYWORD3>\r
+ <KEYWORD3>sp_helprolemember</KEYWORD3>\r
+ <KEYWORD3>sp_helprotect</KEYWORD3>\r
+ <KEYWORD3>sp_helpserver</KEYWORD3>\r
+ <KEYWORD3>sp_helpsort</KEYWORD3>\r
+ <KEYWORD3>sp_helpsrvrole</KEYWORD3>\r
+ <KEYWORD3>sp_helpsrvrolemember</KEYWORD3>\r
+ <KEYWORD3>sp_helpsubscriberinfo</KEYWORD3>\r
+ <KEYWORD3>sp_helpsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_helpsubscription_properties</KEYWORD3>\r
+ <KEYWORD3>sp_helptask</KEYWORD3>\r
+ <KEYWORD3>sp_helptext</KEYWORD3>\r
+ <KEYWORD3>sp_helptrigger</KEYWORD3>\r
+ <KEYWORD3>sp_helpuser</KEYWORD3>\r
+ <KEYWORD3>sp_indexes</KEYWORD3>\r
+ <KEYWORD3>sp_indexoption</KEYWORD3>\r
+ <KEYWORD3>sp_link_publication</KEYWORD3>\r
+ <KEYWORD3>sp_linkedservers</KEYWORD3>\r
+ <KEYWORD3>sp_lock</KEYWORD3>\r
+ <KEYWORD3>sp_makewebtask</KEYWORD3>\r
+ <KEYWORD3>sp_manage_jobs_by_login</KEYWORD3>\r
+ <KEYWORD3>sp_mergedummyupdate</KEYWORD3>\r
+ <KEYWORD3>sp_mergesubscription_cleanup</KEYWORD3>\r
+ <KEYWORD3>sp_monitor</KEYWORD3>\r
+ <KEYWORD3>sp_msx_defect</KEYWORD3>\r
+ <KEYWORD3>sp_msx_enlist</KEYWORD3>\r
+ <KEYWORD3>sp_OACreate</KEYWORD3>\r
+ <KEYWORD3>sp_OADestroy</KEYWORD3>\r
+ <KEYWORD3>sp_OAGetErrorInfo</KEYWORD3>\r
+ <KEYWORD3>sp_OAGetProperty</KEYWORD3>\r
+ <KEYWORD3>sp_OAMethod</KEYWORD3>\r
+ <KEYWORD3>sp_OASetProperty</KEYWORD3>\r
+ <KEYWORD3>sp_OAStop</KEYWORD3>\r
+ <KEYWORD3>sp_password</KEYWORD3>\r
+ <KEYWORD3>sp_pkeys</KEYWORD3>\r
+ <KEYWORD3>sp_post_msx_operation</KEYWORD3>\r
+ <KEYWORD3>sp_prepare</KEYWORD3>\r
+ <KEYWORD3>sp_primarykeys</KEYWORD3>\r
+ <KEYWORD3>sp_processmail</KEYWORD3>\r
+ <KEYWORD3>sp_procoption</KEYWORD3>\r
+ <KEYWORD3>sp_publication_validation</KEYWORD3>\r
+ <KEYWORD3>sp_purge_jobhistory</KEYWORD3>\r
+ <KEYWORD3>sp_purgehistory</KEYWORD3>\r
+ <KEYWORD3>sp_reassigntask</KEYWORD3>\r
+ <KEYWORD3>sp_recompile</KEYWORD3>\r
+ <KEYWORD3>sp_refreshsubscriptions</KEYWORD3>\r
+ <KEYWORD3>sp_refreshview</KEYWORD3>\r
+ <KEYWORD3>sp_reinitmergepullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_reinitmergesubscription</KEYWORD3>\r
+ <KEYWORD3>sp_reinitpullsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_reinitsubscription</KEYWORD3>\r
+ <KEYWORD3>sp_remoteoption</KEYWORD3>\r
+ <KEYWORD3>sp_remove_job_from_targets</KEYWORD3>\r
+ <KEYWORD3>sp_removedbreplication</KEYWORD3>\r
+ <KEYWORD3>sp_rename</KEYWORD3>\r
+ <KEYWORD3>sp_renamedb</KEYWORD3>\r
+ <KEYWORD3>sp_replcmds</KEYWORD3>\r
+ <KEYWORD3>sp_replcounters</KEYWORD3>\r
+ <KEYWORD3>sp_repldone</KEYWORD3>\r
+ <KEYWORD3>sp_replflush</KEYWORD3>\r
+ <KEYWORD3>sp_replication_agent_checkup</KEYWORD3>\r
+ <KEYWORD3>sp_replicationdboption</KEYWORD3>\r
+ <KEYWORD3>sp_replsetoriginator</KEYWORD3>\r
+ <KEYWORD3>sp_replshowcmds</KEYWORD3>\r
+ <KEYWORD3>sp_repltrans</KEYWORD3>\r
+ <KEYWORD3>sp_reset_connection</KEYWORD3>\r
+ <KEYWORD3>sp_resync_targetserver</KEYWORD3>\r
+ <KEYWORD3>sp_revoke_publication_access</KEYWORD3>\r
+ <KEYWORD3>sp_revokedbaccess</KEYWORD3>\r
+ <KEYWORD3>sp_revokelogin</KEYWORD3>\r
+ <KEYWORD3>sp_runwebtask</KEYWORD3>\r
+ <KEYWORD3>sp_script_synctran_commands</KEYWORD3>\r
+ <KEYWORD3>sp_scriptdelproc</KEYWORD3>\r
+ <KEYWORD3>sp_scriptinsproc</KEYWORD3>\r
+ <KEYWORD3>sp_scriptmappedupdproc</KEYWORD3>\r
+ <KEYWORD3>sp_scriptupdproc</KEYWORD3>\r
+ <KEYWORD3>sp_sdidebug</KEYWORD3>\r
+ <KEYWORD3>sp_server_info</KEYWORD3>\r
+ <KEYWORD3>sp_serveroption</KEYWORD3>\r
+ <KEYWORD3>sp_serveroption</KEYWORD3>\r
+ <KEYWORD3>sp_setapprole</KEYWORD3>\r
+ <KEYWORD3>sp_setnetname</KEYWORD3>\r
+ <KEYWORD3>sp_spaceused</KEYWORD3>\r
+ <KEYWORD3>sp_special_columns</KEYWORD3>\r
+ <KEYWORD3>sp_sproc_columns</KEYWORD3>\r
+ <KEYWORD3>sp_srvrolepermission</KEYWORD3>\r
+ <KEYWORD3>sp_start_job</KEYWORD3>\r
+ <KEYWORD3>sp_statistics</KEYWORD3>\r
+ <KEYWORD3>sp_stop_job</KEYWORD3>\r
+ <KEYWORD3>sp_stored_procedures</KEYWORD3>\r
+ <KEYWORD3>sp_subscription_cleanup</KEYWORD3>\r
+ <KEYWORD3>sp_table_privileges</KEYWORD3>\r
+ <KEYWORD3>sp_table_privileges_ex</KEYWORD3>\r
+ <KEYWORD3>sp_table_validation</KEYWORD3>\r
+ <KEYWORD3>sp_tableoption</KEYWORD3>\r
+ <KEYWORD3>sp_tables</KEYWORD3>\r
+ <KEYWORD3>sp_tables_ex</KEYWORD3>\r
+ <KEYWORD3>sp_unbindefault</KEYWORD3>\r
+ <KEYWORD3>sp_unbindrule</KEYWORD3>\r
+ <KEYWORD3>sp_unprepare</KEYWORD3>\r
+ <KEYWORD3>sp_update_agent_profile</KEYWORD3>\r
+ <KEYWORD3>sp_update_alert</KEYWORD3>\r
+ <KEYWORD3>sp_update_category</KEYWORD3>\r
+ <KEYWORD3>sp_update_job</KEYWORD3>\r
+ <KEYWORD3>sp_update_jobschedule</KEYWORD3>\r
+ <KEYWORD3>sp_update_jobstep</KEYWORD3>\r
+ <KEYWORD3>sp_update_notification</KEYWORD3>\r
+ <KEYWORD3>sp_update_operator</KEYWORD3>\r
+ <KEYWORD3>sp_update_targetservergroup</KEYWORD3>\r
+ <KEYWORD3>sp_updatestats</KEYWORD3>\r
+ <KEYWORD3>sp_updatetask</KEYWORD3>\r
+ <KEYWORD3>sp_validatelogins</KEYWORD3>\r
+ <KEYWORD3>sp_validname</KEYWORD3>\r
+ <KEYWORD3>sp_who</KEYWORD3>\r
+ <KEYWORD3>xp_cmdshell</KEYWORD3>\r
+ <KEYWORD3>xp_deletemail</KEYWORD3>\r
+ <KEYWORD3>xp_enumgroups</KEYWORD3>\r
+ <KEYWORD3>xp_findnextmsg</KEYWORD3>\r
+ <KEYWORD3>xp_findnextmsg</KEYWORD3>\r
+ <KEYWORD3>xp_grantlogin</KEYWORD3>\r
+ <KEYWORD3>xp_logevent</KEYWORD3>\r
+ <KEYWORD3>xp_loginconfig</KEYWORD3>\r
+ <KEYWORD3>xp_logininfo</KEYWORD3>\r
+ <KEYWORD3>xp_msver</KEYWORD3>\r
+ <KEYWORD3>xp_readmail</KEYWORD3>\r
+ <KEYWORD3>xp_revokelogin</KEYWORD3>\r
+ <KEYWORD3>xp_sendmail</KEYWORD3>\r
+ <KEYWORD3>xp_sprintf</KEYWORD3>\r
+ <KEYWORD3>xp_sqlinventory</KEYWORD3>\r
+ <KEYWORD3>xp_sqlmaint</KEYWORD3>\r
+ <KEYWORD3>xp_sqltrace</KEYWORD3>\r
+ <KEYWORD3>xp_sscanf</KEYWORD3>\r
+ <KEYWORD3>xp_startmail</KEYWORD3>\r
+ <KEYWORD3>xp_stopmail</KEYWORD3>\r
+ <KEYWORD3>xp_trace_addnewqueue</KEYWORD3>\r
+ <KEYWORD3>xp_trace_deletequeuedefinition</KEYWORD3>\r
+ <KEYWORD3>xp_trace_destroyqueue</KEYWORD3>\r
+ <KEYWORD3>xp_trace_enumqueuedefname</KEYWORD3>\r
+ <KEYWORD3>xp_trace_enumqueuehandles</KEYWORD3>\r
+ <KEYWORD3>xp_trace_eventclassrequired</KEYWORD3>\r
+ <KEYWORD3>xp_trace_flushqueryhistory</KEYWORD3>\r
+ <KEYWORD3>xp_trace_generate_event</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getappfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getconnectionidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getcpufilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getdbidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getdurationfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_geteventfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_geteventnames</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getevents</KEYWORD3>\r
+ <KEYWORD3>xp_trace_gethostfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_gethpidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getindidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getntdmfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getntnmfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getobjidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getqueueautostart</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getqueuedestination</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getqueueproperties</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getreadfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getserverfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getseverityfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getspidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getsysobjectsfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_gettextfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getuserfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_getwritefilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_loadqueuedefinition</KEYWORD3>\r
+ <KEYWORD3>xp_trace_pausequeue</KEYWORD3>\r
+ <KEYWORD3>xp_trace_restartqueue</KEYWORD3>\r
+ <KEYWORD3>xp_trace_savequeuedefinition</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setappfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setconnectionidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setcpufilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setdbidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setdurationfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_seteventclassrequired</KEYWORD3>\r
+ <KEYWORD3>xp_trace_seteventfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_sethostfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_sethpidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setindidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setntdmfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setntnmfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setobjidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setqueryhistory</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setqueueautostart</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setqueuecreateinfo</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setqueuedestination</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setreadfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setserverfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setseverityfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setspidfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setsysobjectsfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_settextfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setuserfilter</KEYWORD3>\r
+ <KEYWORD3>xp_trace_setwritefilter</KEYWORD3>\r
+ <KEYWORD3>fn_helpcollations</KEYWORD3>\r
+ <KEYWORD3>fn_servershareddrives</KEYWORD3>\r
+ <KEYWORD3>fn_virtualfilestats</KEYWORD3>\r
+\r
+ <!-- SQL Server 7.0 system tables -->\r
+ <KEYWORD3>backupfile</KEYWORD3>\r
+ <KEYWORD3>backupmediafamily</KEYWORD3>\r
+ <KEYWORD3>backupmediaset</KEYWORD3>\r
+ <KEYWORD3>backupset</KEYWORD3>\r
+ <KEYWORD3>MSagent_parameters</KEYWORD3>\r
+ <KEYWORD3>MSagent_profiles</KEYWORD3>\r
+ <KEYWORD3>MSarticles</KEYWORD3>\r
+ <KEYWORD3>MSdistpublishers</KEYWORD3>\r
+ <KEYWORD3>MSdistribution_agents</KEYWORD3>\r
+ <KEYWORD3>MSdistribution_history</KEYWORD3>\r
+ <KEYWORD3>MSdistributiondbs</KEYWORD3>\r
+ <KEYWORD3>MSdistributor</KEYWORD3>\r
+ <KEYWORD3>MSlogreader_agents</KEYWORD3>\r
+ <KEYWORD3>MSlogreader_history</KEYWORD3>\r
+ <KEYWORD3>MSmerge_agents</KEYWORD3>\r
+ <KEYWORD3>MSmerge_contents</KEYWORD3>\r
+ <KEYWORD3>MSmerge_delete_conflicts</KEYWORD3>\r
+ <KEYWORD3>MSmerge_genhistory</KEYWORD3>\r
+ <KEYWORD3>MSmerge_history</KEYWORD3>\r
+ <KEYWORD3>MSmerge_replinfo</KEYWORD3>\r
+ <KEYWORD3>MSmerge_subscriptions</KEYWORD3>\r
+ <KEYWORD3>MSmerge_tombstone</KEYWORD3>\r
+ <KEYWORD3>MSpublication_access</KEYWORD3>\r
+ <KEYWORD3>Mspublications</KEYWORD3>\r
+ <KEYWORD3>Mspublisher_databases</KEYWORD3>\r
+ <KEYWORD3>MSrepl_commands</KEYWORD3>\r
+ <KEYWORD3>MSrepl_errors</KEYWORD3>\r
+ <KEYWORD3>Msrepl_originators</KEYWORD3>\r
+ <KEYWORD3>MSrepl_transactions</KEYWORD3>\r
+ <KEYWORD3>MSrepl_version</KEYWORD3>\r
+ <KEYWORD3>MSreplication_objects</KEYWORD3>\r
+ <KEYWORD3>MSreplication_subscriptions</KEYWORD3>\r
+ <KEYWORD3>MSsnapshot_agents</KEYWORD3>\r
+ <KEYWORD3>MSsnapshot_history</KEYWORD3>\r
+ <KEYWORD3>MSsubscriber_info</KEYWORD3>\r
+ <KEYWORD3>MSsubscriber_schedule</KEYWORD3>\r
+ <KEYWORD3>MSsubscription_properties</KEYWORD3>\r
+ <KEYWORD3>MSsubscriptions</KEYWORD3>\r
+ <KEYWORD3>restorefile</KEYWORD3>\r
+ <KEYWORD3>restorefilegroup</KEYWORD3>\r
+ <KEYWORD3>restorehistory</KEYWORD3>\r
+ <KEYWORD3>sysalerts</KEYWORD3>\r
+ <KEYWORD3>sysallocations</KEYWORD3>\r
+ <KEYWORD3>sysaltfiles</KEYWORD3>\r
+ <KEYWORD3>sysarticles</KEYWORD3>\r
+ <KEYWORD3>sysarticleupdates</KEYWORD3>\r
+ <KEYWORD3>syscacheobjects</KEYWORD3>\r
+ <KEYWORD3>syscategories</KEYWORD3>\r
+ <KEYWORD3>syscharsets</KEYWORD3>\r
+ <KEYWORD3>syscolumns</KEYWORD3>\r
+ <KEYWORD3>syscomments</KEYWORD3>\r
+ <KEYWORD3>sysconfigures</KEYWORD3>\r
+ <KEYWORD3>sysconstraints</KEYWORD3>\r
+ <KEYWORD3>syscurconfigs</KEYWORD3>\r
+ <KEYWORD3>sysdatabases</KEYWORD3>\r
+ <KEYWORD3>sysdatabases</KEYWORD3>\r
+ <KEYWORD3>sysdepends</KEYWORD3>\r
+ <KEYWORD3>sysdevices</KEYWORD3>\r
+ <KEYWORD3>sysdownloadlist</KEYWORD3>\r
+ <KEYWORD3>sysfilegroups</KEYWORD3>\r
+ <KEYWORD3>sysfiles</KEYWORD3>\r
+ <KEYWORD3>sysforeignkeys</KEYWORD3>\r
+ <KEYWORD3>sysfulltextcatalogs</KEYWORD3>\r
+ <KEYWORD3>sysindexes</KEYWORD3>\r
+ <KEYWORD3>sysindexkeys</KEYWORD3>\r
+ <KEYWORD3>sysjobhistory</KEYWORD3>\r
+ <KEYWORD3>sysjobs</KEYWORD3>\r
+ <KEYWORD3>sysjobschedules</KEYWORD3>\r
+ <KEYWORD3>sysjobservers</KEYWORD3>\r
+ <KEYWORD3>sysjobsteps</KEYWORD3>\r
+ <KEYWORD3>syslanguages</KEYWORD3>\r
+ <KEYWORD3>syslockinfo</KEYWORD3>\r
+ <KEYWORD3>syslogins</KEYWORD3>\r
+ <KEYWORD3>sysmembers</KEYWORD3>\r
+ <KEYWORD3>sysmergearticles</KEYWORD3>\r
+ <KEYWORD3>sysmergepublications</KEYWORD3>\r
+ <KEYWORD3>sysmergeschemachange</KEYWORD3>\r
+ <KEYWORD3>sysmergesubscriptions</KEYWORD3>\r
+ <KEYWORD3>sysmergesubsetfilters</KEYWORD3>\r
+ <KEYWORD3>sysmessages</KEYWORD3>\r
+ <KEYWORD3>sysnotifications</KEYWORD3>\r
+ <KEYWORD3>sysobjects</KEYWORD3>\r
+ <KEYWORD3>sysobjects</KEYWORD3>\r
+ <KEYWORD3>sysoledbusers</KEYWORD3>\r
+ <KEYWORD3>sysoperators</KEYWORD3>\r
+ <KEYWORD3>sysperfinfo</KEYWORD3>\r
+ <KEYWORD3>syspermissions</KEYWORD3>\r
+ <KEYWORD3>sysprocesses</KEYWORD3>\r
+ <KEYWORD3>sysprotects</KEYWORD3>\r
+ <KEYWORD3>syspublications</KEYWORD3>\r
+ <KEYWORD3>sysreferences</KEYWORD3>\r
+ <KEYWORD3>sysremotelogins</KEYWORD3>\r
+ <KEYWORD3>sysreplicationalerts</KEYWORD3>\r
+ <KEYWORD3>sysservers</KEYWORD3>\r
+ <KEYWORD3>sysservers</KEYWORD3>\r
+ <KEYWORD3>syssubscriptions</KEYWORD3>\r
+ <KEYWORD3>systargetservergroupmembers</KEYWORD3>\r
+ <KEYWORD3>systargetservergroups</KEYWORD3>\r
+ <KEYWORD3>systargetservers</KEYWORD3>\r
+ <KEYWORD3>systaskids</KEYWORD3>\r
+ <KEYWORD3>systypes</KEYWORD3>\r
+ <KEYWORD3>sysusers</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+<MODE>\r
+ <!--\r
+ Made by Krassimir Berov: k.berov@gmail.com \r
+ -->\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="lineComment" VALUE="#" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="[" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="]" />\r
+ <PROPERTY NAME="unalignedOpenBrackets" VALUE="(" />\r
+ <PROPERTY NAME="unalignedCloseBrackets" VALUE=")" />\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true" />\r
+ <PROPERTY NAME="indentNextLine" VALUE="(FOREACH|FOR|WHILE|IF|ELSIF|ELSE|UNLESS|SWITCH|CASE|TRY|CATCH)(\s.*?)?;" />\r
+ </PROPS>\r
+\r
+ <!-- ESCAPE is not exactly right but it is needed to correctly\r
+ handle JavaScript in on* parameters -->\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ><!-- give priority to TT -->\r
+\r
+ </RULES>\r
+\r
+ <RULES SET="JAVASCRIPT" DEFAULT="MARKUP" IGNORE_CASE="TRUE">\r
+ <SEQ TYPE="MARKUP" DELEGATE="javascript::MAIN">></SEQ>\r
+ <!-- handle <SCRIPT SRC="..."> properly -->\r
+ <SEQ TYPE="MARKUP" DELEGATE="html::MAIN">SRC=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="css::MAIN">></SEQ>\r
+ </RULES>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>[%#</BEGIN>\r
+ <END>%]</END>\r
+ </SPAN>\r
+ <SPAN_REGEXP DELEGATE="perl::MAIN" HASH_CHAR="[%">\r
+ <BEGIN>\[%\s*?PERL\s*?%\]</BEGIN>\r
+ <END>\[%\s*?END\s*?%\]</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN TYPE="LITERAL3" DELEGATE="TT">\r
+ <BEGIN>[%</BEGIN>\r
+ <END>%]</END>\r
+ </SPAN>\r
+ </RULES>\r
+ <RULES SET="TT"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE" DELEGATE="VARIABLE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <!-- Scalar variables -->\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD2">\$#?[\w:]+</SEQ_REGEXP>\r
+ <!-- Scalar variables\r
+ <SEQ_REGEXP ->ADD HASH_CHARS here if uncommenting<- TYPE="KEYWORD2">\s[a-z_0-9]+\s</SEQ_REGEXP> -->\r
+ <!-- Compound Variables -->\r
+ <MARK_PREVIOUS TYPE="KEYWORD4" MATCH_TYPE="CONTEXT">.</MARK_PREVIOUS>\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="CONTEXT">(</MARK_PREVIOUS>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">]</SEQ>\r
+ <SEQ TYPE="OPERATOR">[</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <KEYWORDS>\r
+ <!-- Template directives -->\r
+ <KEYWORD1>SET</KEYWORD1>\r
+ <KEYWORD1>GET</KEYWORD1>\r
+ <KEYWORD1>CALL</KEYWORD1>\r
+ <KEYWORD1>DEFAULT</KEYWORD1>\r
+ <KEYWORD1>IF</KEYWORD1>\r
+ <KEYWORD1>ELSIF</KEYWORD1>\r
+ <KEYWORD1>ELSE</KEYWORD1>\r
+ <KEYWORD1>UNLESS</KEYWORD1>\r
+ <KEYWORD1>LAST</KEYWORD1>\r
+ <KEYWORD1>NEXT</KEYWORD1>\r
+ <KEYWORD1>FOR</KEYWORD1>\r
+ <KEYWORD1>FOREACH</KEYWORD1>\r
+ <KEYWORD1>WHILE</KEYWORD1>\r
+ <KEYWORD1>SWITCH</KEYWORD1>\r
+ <KEYWORD1>CASE</KEYWORD1>\r
+ <KEYWORD1>PROCESS</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>INSERT</KEYWORD1>\r
+ <KEYWORD1>WRAPPER</KEYWORD1>\r
+ <KEYWORD1>BLOCK</KEYWORD1>\r
+ <KEYWORD1>MACRO</KEYWORD1>\r
+ <KEYWORD1>END</KEYWORD1>\r
+ <KEYWORD1>USE</KEYWORD1>\r
+ <KEYWORD1>IN</KEYWORD1>\r
+ <KEYWORD1>FILTER</KEYWORD1>\r
+ <KEYWORD1>TRY</KEYWORD1>\r
+ <KEYWORD1>THROW</KEYWORD1>\r
+ <KEYWORD1>CATCH</KEYWORD1>\r
+ <KEYWORD1>FINAL</KEYWORD1>\r
+ <KEYWORD1>META</KEYWORD1>\r
+ <KEYWORD1>TAGS</KEYWORD1>\r
+ <KEYWORD1>DEBUG</KEYWORD1>\r
+ <KEYWORD1>PERL</KEYWORD1>\r
+ <!-- Compile Time Constant Folding -->\r
+ <KEYWORD1>constants</KEYWORD1>\r
+ <!-- Special Variables -->\r
+ <KEYWORD2>template</KEYWORD2>\r
+ <KEYWORD2>component</KEYWORD2>\r
+ <KEYWORD2>loop</KEYWORD2>\r
+ <KEYWORD2>error</KEYWORD2>\r
+ <KEYWORD2>content</KEYWORD2>\r
+\r
+ <!-- VMethods -->\r
+ <!-- Scalar Virtual Methods -->\r
+ <KEYWORD3>defined</KEYWORD3>\r
+ <KEYWORD3>length</KEYWORD3>\r
+ <KEYWORD3>repeat</KEYWORD3>\r
+ <KEYWORD3>replace</KEYWORD3>\r
+ <KEYWORD3>match</KEYWORD3>\r
+ <KEYWORD3>search</KEYWORD3>\r
+ <KEYWORD3>split</KEYWORD3>\r
+ <KEYWORD3>chunk</KEYWORD3>\r
+ <KEYWORD3>list</KEYWORD3>\r
+ <KEYWORD3>hash</KEYWORD3>\r
+ <KEYWORD3>size</KEYWORD3>\r
+\r
+ <!-- Hash Virtual Methods -->\r
+ <KEYWORD3>keys</KEYWORD3>\r
+ <KEYWORD3>values</KEYWORD3>\r
+ <KEYWORD3>each</KEYWORD3>\r
+ <KEYWORD3>sort</KEYWORD3>\r
+ <KEYWORD3>nsort</KEYWORD3>\r
+ <KEYWORD3>import</KEYWORD3>\r
+ <KEYWORD3>defined</KEYWORD3>\r
+ <KEYWORD3>exists</KEYWORD3>\r
+ <KEYWORD3>item</KEYWORD3>\r
+\r
+ <!-- List Virtual Methods -->\r
+ <KEYWORD3>first</KEYWORD3>\r
+ <KEYWORD3>last</KEYWORD3>\r
+ <KEYWORD3>max</KEYWORD3>\r
+ <KEYWORD3>reverse</KEYWORD3>\r
+ <KEYWORD3>join</KEYWORD3>\r
+ <KEYWORD3>grep</KEYWORD3>\r
+ <KEYWORD3>unshift</KEYWORD3>\r
+ <KEYWORD3>push</KEYWORD3>\r
+ <KEYWORD3>shift</KEYWORD3>\r
+ <KEYWORD3>pop</KEYWORD3>\r
+ <KEYWORD3>unique</KEYWORD3>\r
+ <KEYWORD3>merge</KEYWORD3>\r
+ <KEYWORD3>slice</KEYWORD3>\r
+ <KEYWORD3>splice</KEYWORD3>\r
+ <KEYWORD3>count</KEYWORD3>\r
+\r
+ <!-- Standard filters -->\r
+ <FUNCTION>format</FUNCTION>\r
+ <FUNCTION>upper</FUNCTION>\r
+ <FUNCTION>lower</FUNCTION>\r
+ <FUNCTION>ucfirst</FUNCTION>\r
+ <FUNCTION>lcfirst</FUNCTION>\r
+ <FUNCTION>trim</FUNCTION>\r
+ <FUNCTION>collapse</FUNCTION>\r
+ <FUNCTION>html</FUNCTION>\r
+ <FUNCTION>html_entity</FUNCTION>\r
+ <FUNCTION>html_para</FUNCTION>\r
+ <FUNCTION>html_break</FUNCTION>\r
+ <FUNCTION>html_para_break</FUNCTION>\r
+ <FUNCTION>html_line_break</FUNCTION>\r
+ <FUNCTION>uri</FUNCTION>\r
+ <FUNCTION>url</FUNCTION>\r
+ <FUNCTION>indent</FUNCTION>\r
+ <FUNCTION>truncate</FUNCTION>\r
+ <FUNCTION>repeat</FUNCTION>\r
+ <FUNCTION>remove</FUNCTION>\r
+ <FUNCTION>replace</FUNCTION>\r
+ <FUNCTION>redirect</FUNCTION>\r
+ <FUNCTION>eval</FUNCTION>\r
+ <FUNCTION>evaltt</FUNCTION>\r
+ <FUNCTION>perl</FUNCTION>\r
+ <FUNCTION>evalperl</FUNCTION>\r
+ <FUNCTION>stdout</FUNCTION>\r
+ <FUNCTION>stderr</FUNCTION>\r
+ <FUNCTION>null</FUNCTION>\r
+ <FUNCTION>latex</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- catalog entry:\r
+\r
+<MODE NAME="twiki" FILE="twiki.xml"\r
+ FILE_NAME_GLOB="*.twiki"/>\r
+\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="noTabs" VALUE="true" />\r
+ <PROPERTY NAME="wrap" VALUE="soft" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" HIGHLIGHT_DIGITS="FALSE" IGNORE_CASE="FALSE">\r
+\r
+ <!-- though not encouraged, HTML is supported -->\r
+ <IMPORT DELEGATE="html::MAIN"/>\r
+\r
+ <!-- signature - a convention, not actual markup -->\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="COMMENT1">-- </EOL_SPAN>\r
+\r
+ <!-- header -->\r
+ <EOL_SPAN_REGEXP HASH_CHAR="---+" \r
+ TYPE="KEYWORD1" \r
+ AT_LINE_START="TRUE"\r
+ >-{3}[+]{1,6}(?:!!)?\s</EOL_SPAN_REGEXP>\r
+\r
+ <!-- bold -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="*"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >\*[^\s*][^*]*\*</SEQ_REGEXP>\r
+\r
+ <!-- bold and italic -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="__"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >__\w.*?\w__</SEQ_REGEXP>\r
+\r
+ <!-- italic -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="_"\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >_\w.*?\w_</SEQ_REGEXP>\r
+\r
+ <!-- bold and fixed font -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="=="\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >==\w.*?\w==</SEQ_REGEXP>\r
+\r
+ <!-- fixed font -->\r
+ <SEQ_REGEXP\r
+ HASH_CHAR="="\r
+ AT_LINE_START="FALSE"\r
+ TYPE="KEYWORD4"\r
+ >=\w.*?\w=</SEQ_REGEXP>\r
+\r
+ <!-- separator -->\r
+ <EOL_SPAN AT_LINE_START="TRUE" TYPE="KEYWORD4">---</EOL_SPAN>\r
+\r
+ <!-- wiki words -->\r
+ <SEQ_REGEXP HASH_CHARS="ABCDEFGHIJKLMNOPQRSTUVWXYZ" AT_WORD_START="TRUE" TYPE="KEYWORD2">[A-Z][A-Z.]*[a-z.]+(?:[A-Z][A-Z.]*[a-z.]*[a-z])+</SEQ_REGEXP>\r
+\r
+ <!-- links -->\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN>[[</BEGIN>\r
+ <END>]]</END>\r
+ </SPAN>\r
+\r
+ <!-- verbatim -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN><verbatim></BEGIN>\r
+ <END></verbatim></END>\r
+ </SPAN>\r
+\r
+ <!-- prevent a link -->\r
+ <SEQ TYPE="LITERAL2"><nop></SEQ>\r
+\r
+ <!-- disable links -->\r
+ <SPAN TYPE="LITERAL2">\r
+ <BEGIN><noautolink></BEGIN>\r
+ <END></noautolink></END>\r
+ </SPAN>\r
+\r
+ <!-- terms -->\r
+ <SEQ_REGEXP HASH_CHAR=" " TYPE="KEYWORD2" AT_LINE_START="FALSE"\r
+ >\s{3}\w(?:&nbsp;|-|\w)*?\w+:\s</SEQ_REGEXP>\r
+\r
+ <!-- twiki variables -->\r
+ <SEQ_REGEXP HASH_CHAR="%" \r
+ TYPE="FUNCTION"\r
+ >%[A-Z]+(?:\{[^\}]+\})?%</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <!-- variables, just here for complete-word -->\r
+ <NULL>ATTACHURL</NULL>\r
+ <NULL>ATTACHURLPATH</NULL>\r
+ <NULL>BASETOPIC</NULL>\r
+ <NULL>BASEWEB</NULL>\r
+ <NULL>GMTIME</NULL>\r
+ <NULL>HOMETOPIC</NULL>\r
+ <NULL>HTTP_HOST</NULL>\r
+ <NULL>INCLUDE</NULL>\r
+ <NULL>INCLUDINGTOPIC</NULL>\r
+ <NULL>INCLUDINGWEB</NULL>\r
+ <NULL>MAINWEB</NULL>\r
+ <NULL>NOTIFYTOPIC</NULL>\r
+ <NULL>PUBURL</NULL>\r
+ <NULL>PUBURLPATH</NULL>\r
+ <NULL>REMOTE_ADDR</NULL>\r
+ <NULL>REMOTE_PORT</NULL>\r
+ <NULL>REMOTE_USER</NULL>\r
+ <NULL>SCRIPTSUFFIX</NULL>\r
+ <NULL>SCRIPTURL</NULL>\r
+ <NULL>SCRIPTURLPATH</NULL>\r
+ <NULL>SEARCH</NULL>\r
+ <NULL>SERVERTIME</NULL>\r
+ <NULL>SPACEDTOPIC</NULL>\r
+ <NULL>STARTINCLUDE</NULL>\r
+ <NULL>STATISTICSTOPIC</NULL>\r
+ <NULL>STOPINCLUDE</NULL>\r
+ <NULL>TOC</NULL>\r
+ <NULL>TOPIC</NULL>\r
+ <NULL>TOPICLIST</NULL>\r
+ <NULL>TWIKIWEB</NULL>\r
+ <NULL>URLENCODE</NULL>\r
+ <NULL>URLPARAM</NULL>\r
+ <NULL>USERNAME</NULL>\r
+ <NULL>WEB</NULL>\r
+ <NULL>WEBLIST</NULL>\r
+ <NULL>WEBPREFSTOPIC</NULL>\r
+ <NULL>WIKIHOMEURL</NULL>\r
+ <NULL>WIKINAME</NULL>\r
+ <NULL>WIKIPREFSTOPIC</NULL>\r
+ <NULL>WIKITOOLNAME</NULL>\r
+ <NULL>WIKIUSERNAME</NULL>\r
+ <NULL>WIKIUSERSTOPIC</NULL>\r
+ <NULL>WIKIVERSION</NULL>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+</MODE>\r
+\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- TypoScript syntax highlighting, by Neil Bertram <neil@tasmanstudios.co.nz>\r
+ Based on Kasper's highlighter in ExtDevEval and his "TypoScript Syntax and In-depth Study"\r
+ available at http://typo3.org/documentation/document-library/doc_core_ts/\r
+\r
+ -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="#"/>\r
+ <PROPERTY NAME="lineComment" VALUE="/"/>\r
+ <PROPERTY NAME="commentStart" VALUE="/*"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="*/"/>\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="({"/>\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE=")}"/>\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true"/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE" NO_WORD_SEP=":" DEFAULT="MARKUP">\r
+ <!-- Include statement (<INCLUDE_TYPOSCRIPT: source="FILE: fileadmin/html/mainmenu_typoscript.txt">) -->\r
+ <SPAN TYPE="KEYWORD4" NO_LINE_BREAK="TRUE" AT_LINE_START="TRUE">\r
+ <BEGIN><INCLUDE</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- Assignments (using the = operator) are delegated to the assignment rule for more flexibility -->\r
+ <EOL_SPAN TYPE="OPERATOR" DELEGATE="typoscript::assignment" AT_LINE_START="FALSE" AT_WHITESPACE_END="FALSE">=</EOL_SPAN>\r
+\r
+ <!-- Multi-line assignments (using the (blah blah) syntax) -->\r
+ <SPAN TYPE="OPERATOR" AT_LINE_START="FALSE" NO_LINE_BREAK="FALSE" DELEGATE="typoscript::assignment">\r
+ <BEGIN>(</BEGIN>\r
+ <END>)</END>\r
+ </SPAN>\r
+\r
+ <!-- Object copies (using the < operator)\r
+ Note that object references (=<) are not highlighted due to the fact\r
+ that they're only supported by the core template engine, and not\r
+ actually a feature of typoscript itself\r
+ -->\r
+ <EOL_SPAN TYPE="OPERATOR" AT_LINE_START="FALSE" DELEGATE="typoscript::copy"><</EOL_SPAN>\r
+\r
+ <!-- Comments\r
+ - note that block comments must start/end at the beginning of the trimmed line\r
+ but this is difficult to accomplish here, so we just force it to be line-start\r
+ -->\r
+ <EOL_SPAN AT_WORD_START="TRUE" TYPE="COMMENT4">#</EOL_SPAN>\r
+ <SPAN TYPE="COMMENT1" NO_LINE_BREAK="FALSE" AT_LINE_START="TRUE">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN AT_WORD_START="TRUE" TYPE="COMMENT2">/</EOL_SPAN>\r
+\r
+ <!-- Conditionals (anything inside square brackets at a word start -->\r
+ <SPAN TYPE="KEYWORD1" NO_LINE_BREAK="TRUE" AT_WORD_START="TRUE">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Special characters that haven't been caught yet -->\r
+ <SEQ TYPE="NULL">{</SEQ>\r
+ <SEQ TYPE="NULL">}</SEQ>\r
+ <SEQ TYPE="NULL">(</SEQ>\r
+ <SEQ TYPE="NULL">)</SEQ>\r
+ </RULES>\r
+\r
+ <!-- Rule for both single and multi-line assignments -->\r
+ <RULES SET="assignment" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE" DEFAULT="LITERAL1">\r
+ <!-- TypoScript constants inserted with {$blah} are highlighted -->\r
+ <SPAN TYPE="LABEL" AT_WORD_START="FALSE" AT_LINE_START="FALSE">\r
+ <BEGIN>{$</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- Rule for object copies -->\r
+ <RULES SET="copy" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="FALSE" DEFAULT="KEYWORD2">\r
+ <!-- nothing right now -->\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
+ <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="TRUE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <!-- Silly comment -->\r
+ <SEQ TYPE="COMMENT1">/**/</SEQ>\r
+\r
+ <!-- Java comment (C style) -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">@</SEQ>\r
+ <SEQ TYPE="OPERATOR">#</SEQ>\r
+ <SEQ TYPE="OPERATOR">$</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">\\</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">`</SEQ>\r
+\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_WHITESPACE_END="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>abstract</KEYWORD1>\r
+ <KEYWORD1>auto</KEYWORD1>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>coerce</KEYWORD1>\r
+ <KEYWORD1>collapscategories</KEYWORD1>\r
+ <KEYWORD1>config</KEYWORD1>\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>defaultproperties</KEYWORD1>\r
+ <KEYWORD1>deprecated</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>dontcollapsecategories</KEYWORD1>\r
+ <KEYWORD1>edfindable</KEYWORD1>\r
+ <KEYWORD1>editconst</KEYWORD1>\r
+ <KEYWORD1>editinline</KEYWORD1>\r
+ <KEYWORD1>editinlinenew</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>enum</KEYWORD1>\r
+ <KEYWORD1>event</KEYWORD1>\r
+ <KEYWORD1>exec</KEYWORD1>\r
+ <KEYWORD1>export</KEYWORD1>\r
+ <KEYWORD1>exportstructs</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>false</KEYWORD1>\r
+ <KEYWORD1>final</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>foreach</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>globalconfig</KEYWORD1>\r
+ <KEYWORD1>hidecategories</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>ignores</KEYWORD1>\r
+ <KEYWORD1>input</KEYWORD1>\r
+ <KEYWORD1>iterator</KEYWORD1>\r
+ <KEYWORD1>latent</KEYWORD1>\r
+ <KEYWORD1>local</KEYWORD1>\r
+ <KEYWORD1>localized</KEYWORD1>\r
+ <KEYWORD1>native</KEYWORD1>\r
+ <KEYWORD1>nativereplication</KEYWORD1>\r
+ <KEYWORD1>noexport</KEYWORD1>\r
+ <KEYWORD1>noteditinlinenew</KEYWORD1>\r
+ <KEYWORD1>notplaceable</KEYWORD1>\r
+ <KEYWORD1>operator</KEYWORD1>\r
+ <KEYWORD1>optional</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>perobjectconfig</KEYWORD1>\r
+ <KEYWORD1>placeable</KEYWORD1>\r
+ <KEYWORD1>postoperator</KEYWORD1>\r
+ <KEYWORD1>preoperator</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+ <KEYWORD1>protected</KEYWORD1>\r
+ <KEYWORD1>reliable</KEYWORD1>\r
+ <KEYWORD1>replication</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>safereplace</KEYWORD1>\r
+ <KEYWORD1>showcategories</KEYWORD1>\r
+ <KEYWORD1>simulated</KEYWORD1>\r
+ <KEYWORD1>singular</KEYWORD1>\r
+ <KEYWORD1>state</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>struct</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>transient</KEYWORD1>\r
+ <KEYWORD1>travel</KEYWORD1>\r
+ <KEYWORD1>true</KEYWORD1>\r
+ <KEYWORD1>unreliable</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>var</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>within</KEYWORD1>\r
+\r
+ <KEYWORD2>default</KEYWORD2>\r
+ <KEYWORD2>global</KEYWORD2>\r
+ <KEYWORD2>none</KEYWORD2>\r
+ <KEYWORD2>self</KEYWORD2>\r
+ <KEYWORD2>static</KEYWORD2>\r
+ <KEYWORD2>super</KEYWORD2>\r
+\r
+ <KEYWORD3>bool</KEYWORD3>\r
+ <KEYWORD3>byte</KEYWORD3>\r
+ <KEYWORD3>float</KEYWORD3>\r
+ <KEYWORD3>int</KEYWORD3>\r
+ <KEYWORD3>name</KEYWORD3>\r
+ <KEYWORD3>string</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- VBScript mode by Andre Kaplan -->\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="lineComment" VALUE="'" />\r
+ </PROPS>\r
+\r
+ <RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <!-- conditional compilation -->\r
+ <EOL_SPAN TYPE="KEYWORD2">#if</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#else</EOL_SPAN>\r
+ <EOL_SPAN TYPE="KEYWORD2">#end</EOL_SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">'</EOL_SPAN>\r
+ <EOL_SPAN TYPE="COMMENT1">rem </EOL_SPAN>\r
+\r
+ <!-- Comparison operators -->\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><></SEQ>\r
+ <SEQ TYPE="OPERATOR">.</SEQ>\r
+ <!-- See in keywords: is -->\r
+\r
+ <!-- Arithmetic operators -->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">\</SEQ>\r
+ <!-- See in keywords: mod -->\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+\r
+ <!-- Concatenation operators -->\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <!-- <SEQ TYPE="OPERATOR">+</SEQ> -->\r
+\r
+ <!-- Logical operators -->\r
+ <!-- See in keywords: and, or, not, xor, eqv -->\r
+\r
+ <!-- EOL Continuation -->\r
+<!-- <SEQ TYPE="NULL">_</SEQ>-->\r
+ <!-- Instruction separator -->\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="TRUE">:</MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <!-- Conditional Statements -->\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elseif</KEYWORD1>\r
+ <KEYWORD1>select</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+\r
+ <!-- Loop Statements -->\r
+ <!-- For..Next -->\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>step</KEYWORD1>\r
+ <KEYWORD1>next</KEYWORD1>\r
+ <!-- For Each..Next -->\r
+ <KEYWORD1>each</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <!-- Do..Loop -->\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>until</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <!-- While..Wend -->\r
+ <KEYWORD1>wend</KEYWORD1>\r
+\r
+ <!-- Closing, Exit Statements -->\r
+ <KEYWORD1>exit</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+\r
+ <!-- Methods, Functions, Class, Properties, Variables -->\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>sub</KEYWORD1>\r
+ <KEYWORD1>class</KEYWORD1>\r
+ <KEYWORD1>property</KEYWORD1>\r
+ <KEYWORD1>get</KEYWORD1>\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>set</KEYWORD1>\r
+\r
+ <!-- Parameters passing -->\r
+ <KEYWORD1>byval</KEYWORD1>\r
+ <KEYWORD1>byref</KEYWORD1>\r
+\r
+ <!-- Declaration -->\r
+ <KEYWORD1>const</KEYWORD1>\r
+ <KEYWORD1>dim</KEYWORD1>\r
+ <KEYWORD1>redim</KEYWORD1>\r
+ <KEYWORD1>preserve</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+\r
+ <!-- Object Assignement/Instantiation -->\r
+ <KEYWORD1>set</KEYWORD1>\r
+ <KEYWORD1>with</KEYWORD1>\r
+ <KEYWORD1>new</KEYWORD1>\r
+\r
+ <!-- Visibility -->\r
+ <KEYWORD1>public</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>private</KEYWORD1>\r
+\r
+ <!-- Comments -->\r
+ <KEYWORD1>rem</KEYWORD1>\r
+\r
+ <!-- Function Call - Dynamic Evaluation -->\r
+ <KEYWORD1>call</KEYWORD1>\r
+ <KEYWORD1>execute</KEYWORD1>\r
+ <KEYWORD1>eval</KEYWORD1>\r
+\r
+ <!-- Miscellaneous -->\r
+ <KEYWORD1>on</KEYWORD1>\r
+ <KEYWORD1>error</KEYWORD1>\r
+ <KEYWORD1>goto</KEYWORD1>\r
+ <KEYWORD1>resume</KEYWORD1>\r
+ <KEYWORD1>option</KEYWORD1>\r
+ <KEYWORD1>explicit</KEYWORD1>\r
+ <KEYWORD1>erase</KEYWORD1>\r
+ <KEYWORD1>randomize</KEYWORD1>\r
+\r
+ <!-- Operators -->\r
+ <!-- Comparison operators -->\r
+ <OPERATOR>is</OPERATOR>\r
+ <!-- Arithmetic operators -->\r
+ <OPERATOR>mod</OPERATOR>\r
+ <!-- Logical operators -->\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>xor</OPERATOR>\r
+ <OPERATOR>imp</OPERATOR>\r
+\r
+ <!-- Datatypes Constants/Literals -->\r
+ <KEYWORD3>false</KEYWORD3>\r
+ <KEYWORD3>true</KEYWORD3>\r
+ <KEYWORD3>empty</KEYWORD3>\r
+ <KEYWORD3>nothing</KEYWORD3>\r
+ <KEYWORD3>null</KEYWORD3>\r
+\r
+ <!-- VBScript Constants -->\r
+ <!-- Color constants -->\r
+ <LITERAL2>vbblack</LITERAL2>\r
+ <LITERAL2>vbred</LITERAL2>\r
+ <LITERAL2>vbgreen</LITERAL2>\r
+ <LITERAL2>vbyellow</LITERAL2>\r
+ <LITERAL2>vbblue</LITERAL2>\r
+ <LITERAL2>vbmagenta</LITERAL2>\r
+ <LITERAL2>vbcyan</LITERAL2>\r
+ <LITERAL2>vbwhite</LITERAL2>\r
+\r
+ <!-- Date & Time Constants -->\r
+<!-- <LITERAL2>vbSunday</LITERAL2>\r
+ <LITERAL2>vbMonday</LITERAL2>\r
+ <LITERAL2>vbTuesday</LITERAL2>\r
+ <LITERAL2>vbWednesday</LITERAL2>\r
+ <LITERAL2>vbThursday</LITERAL2>\r
+ <LITERAL2>vbFriday</LITERAL2>\r
+ <LITERAL2>vbSaturday</LITERAL2>\r
+ <LITERAL2>vbUseSystem</LITERAL2>\r
+ <LITERAL2>vbUseSystemDayOfWeek</LITERAL2>\r
+ <LITERAL2>vbFirstJan1</LITERAL2>\r
+ <LITERAL2>vbFirstFourDays</LITERAL2>\r
+ <LITERAL2>vbFirstFullWeek</LITERAL2>\r
+-->\r
+ <!-- Date Format Constants -->\r
+ <LITERAL2>vbGeneralDate</LITERAL2>\r
+ <LITERAL2>vbLongDate</LITERAL2>\r
+ <LITERAL2>vbShortDate</LITERAL2>\r
+ <LITERAL2>vbLongTime</LITERAL2>\r
+ <LITERAL2>vbShortTime</LITERAL2>\r
+\r
+ <!-- Miscellaneous -->\r
+ <LITERAL2>vbObjectError</LITERAL2>\r
+ <KEYWORD2>Err</KEYWORD2>\r
+\r
+ <!-- MsgBox Constants -->\r
+ <LITERAL2>vbOKOnly</LITERAL2>\r
+ <LITERAL2>vbOKCancel</LITERAL2>\r
+ <LITERAL2>vbAbortRetryIgnore</LITERAL2>\r
+ <LITERAL2>vbYesNoCancel</LITERAL2>\r
+ <LITERAL2>vbYesNo</LITERAL2>\r
+ <LITERAL2>vbRetryCancel</LITERAL2>\r
+ <LITERAL2>vbCritical</LITERAL2>\r
+ <LITERAL2>vbQuestion</LITERAL2>\r
+ <LITERAL2>vbExclamation</LITERAL2>\r
+ <LITERAL2>vbInformation</LITERAL2>\r
+ <LITERAL2>vbDefaultButton1</LITERAL2>\r
+ <LITERAL2>vbDefaultButton2</LITERAL2>\r
+ <LITERAL2>vbDefaultButton3</LITERAL2>\r
+ <LITERAL2>vbDefaultButton4</LITERAL2>\r
+ <LITERAL2>vbApplicationModal</LITERAL2>\r
+ <LITERAL2>vbSystemModal</LITERAL2>\r
+ <LITERAL2>vbOK</LITERAL2>\r
+ <LITERAL2>vbCancel</LITERAL2>\r
+ <LITERAL2>vbAbort</LITERAL2>\r
+ <LITERAL2>vbRetry</LITERAL2>\r
+ <LITERAL2>vbIgnore</LITERAL2>\r
+ <LITERAL2>vbYes</LITERAL2>\r
+ <LITERAL2>vbNo</LITERAL2>\r
+\r
+ <!-- Tristate Constants -->\r
+ <LITERAL2>vbUseDefault</LITERAL2>\r
+ <LITERAL2>vbTrue</LITERAL2>\r
+ <LITERAL2>vbFalse</LITERAL2>\r
+\r
+ <!-- String Constants -->\r
+ <LITERAL2>vbcr</LITERAL2>\r
+ <LITERAL2>vbcrlf</LITERAL2>\r
+ <LITERAL2>vbformfeed</LITERAL2>\r
+ <LITERAL2>vblf</LITERAL2>\r
+ <LITERAL2>vbnewline</LITERAL2>\r
+ <LITERAL2>vbnullchar</LITERAL2>\r
+ <LITERAL2>vbnullstring</LITERAL2>\r
+ <LITERAL2>vbtab</LITERAL2>\r
+ <LITERAL2>vbverticaltab</LITERAL2>\r
+ <!-- VarType Constants -->\r
+ <LITERAL2>vbempty</LITERAL2>\r
+ <LITERAL2>vbnull</LITERAL2>\r
+ <LITERAL2>vbinteger</LITERAL2>\r
+ <LITERAL2>vblong</LITERAL2>\r
+ <LITERAL2>vbsingle</LITERAL2>\r
+ <LITERAL2>vbdouble</LITERAL2>\r
+ <LITERAL2>vbcurrency</LITERAL2>\r
+ <LITERAL2>vbdate</LITERAL2>\r
+ <LITERAL2>vbstring</LITERAL2>\r
+ <LITERAL2>vbobject</LITERAL2>\r
+ <LITERAL2>vberror</LITERAL2>\r
+ <LITERAL2>vbboolean</LITERAL2>\r
+ <LITERAL2>vbvariant</LITERAL2>\r
+ <LITERAL2>vbdataobject</LITERAL2>\r
+ <LITERAL2>vbdecimal</LITERAL2>\r
+ <LITERAL2>vbbyte</LITERAL2>\r
+ <LITERAL2>vbarray</LITERAL2>\r
+\r
+ <!-- Built-in Functions -->\r
+ <!-- Array Handling -->\r
+ <KEYWORD2>array</KEYWORD2>\r
+ <KEYWORD2>lbound</KEYWORD2>\r
+ <KEYWORD2>ubound</KEYWORD2>\r
+ <!-- Conversion Functions (Variant) -->\r
+ <KEYWORD2>cbool</KEYWORD2>\r
+ <KEYWORD2>cbyte</KEYWORD2>\r
+ <KEYWORD2>ccur</KEYWORD2>\r
+ <KEYWORD2>cdate</KEYWORD2>\r
+ <KEYWORD2>cdbl</KEYWORD2>\r
+ <KEYWORD2>cint</KEYWORD2>\r
+ <KEYWORD2>clng</KEYWORD2>\r
+ <KEYWORD2>csng</KEYWORD2>\r
+ <KEYWORD2>cstr</KEYWORD2>\r
+ <!-- Conversion Functions (Radix) -->\r
+ <KEYWORD2>hex</KEYWORD2>\r
+ <KEYWORD2>oct</KEYWORD2>\r
+ <!-- Date/Time Functions -->\r
+ <KEYWORD2>date</KEYWORD2>\r
+ <KEYWORD2>time</KEYWORD2>\r
+ <KEYWORD2>dateadd</KEYWORD2>\r
+ <KEYWORD2>datediff</KEYWORD2>\r
+ <KEYWORD2>datepart</KEYWORD2>\r
+ <KEYWORD2>dateserial</KEYWORD2>\r
+ <KEYWORD2>datevalue</KEYWORD2>\r
+ <KEYWORD2>day</KEYWORD2>\r
+ <KEYWORD2>month</KEYWORD2>\r
+ <KEYWORD2>monthname</KEYWORD2>\r
+ <KEYWORD2>weekday</KEYWORD2>\r
+ <KEYWORD2>weekdayname</KEYWORD2>\r
+ <KEYWORD2>year</KEYWORD2>\r
+ <KEYWORD2>hour</KEYWORD2>\r
+ <KEYWORD2>minute</KEYWORD2>\r
+ <KEYWORD2>second</KEYWORD2>\r
+ <KEYWORD2>now</KEYWORD2>\r
+ <KEYWORD2>timeserial</KEYWORD2>\r
+ <KEYWORD2>timevalue</KEYWORD2>\r
+ <!-- Formatting Strings -->\r
+ <KEYWORD2>formatcurrency</KEYWORD2>\r
+ <KEYWORD2>formatdatetime</KEYWORD2>\r
+ <KEYWORD2>formatnumber</KEYWORD2>\r
+ <KEYWORD2>formatpercent</KEYWORD2>\r
+ <!-- Input/Output -->\r
+ <KEYWORD2>inputbox</KEYWORD2>\r
+ <KEYWORD2>loadpicture</KEYWORD2>\r
+ <KEYWORD2>msgbox</KEYWORD2>\r
+ <!-- Math Functions -->\r
+ <KEYWORD2>atn</KEYWORD2>\r
+ <KEYWORD2>cos</KEYWORD2>\r
+ <KEYWORD2>sin</KEYWORD2>\r
+ <KEYWORD2>tan</KEYWORD2>\r
+ <KEYWORD2>exp</KEYWORD2>\r
+ <KEYWORD2>log</KEYWORD2>\r
+ <KEYWORD2>sqr</KEYWORD2>\r
+ <KEYWORD2>rnd</KEYWORD2>\r
+ <!-- Miscellaneous -->\r
+ <KEYWORD2>rgb</KEYWORD2>\r
+ <!-- Objects -->\r
+ <KEYWORD2>createobject</KEYWORD2>\r
+ <KEYWORD2>getobject</KEYWORD2>\r
+ <KEYWORD2>getref</KEYWORD2>\r
+ <!-- Rounding -->\r
+ <KEYWORD2>abs</KEYWORD2>\r
+ <KEYWORD2>int</KEYWORD2>\r
+ <KEYWORD2>fix</KEYWORD2>\r
+ <KEYWORD2>round</KEYWORD2>\r
+ <KEYWORD2>sgn</KEYWORD2>\r
+ <!-- Script Engine ID -->\r
+ <KEYWORD2>scriptengine</KEYWORD2>\r
+ <KEYWORD2>scriptenginebuildversion</KEYWORD2>\r
+ <KEYWORD2>scriptenginemajorversion</KEYWORD2>\r
+ <KEYWORD2>scriptengineminorversion</KEYWORD2>\r
+ <!-- Strings -->\r
+ <KEYWORD2>asc</KEYWORD2>\r
+ <KEYWORD2>ascb</KEYWORD2>\r
+ <KEYWORD2>ascw</KEYWORD2>\r
+ <KEYWORD2>chr</KEYWORD2>\r
+ <KEYWORD2>chrb</KEYWORD2>\r
+ <KEYWORD2>chrw</KEYWORD2>\r
+ <KEYWORD2>filter</KEYWORD2>\r
+ <KEYWORD2>instr</KEYWORD2>\r
+ <KEYWORD2>instrb</KEYWORD2>\r
+ <KEYWORD2>instrrev</KEYWORD2>\r
+ <KEYWORD2>join</KEYWORD2>\r
+ <KEYWORD2>len</KEYWORD2>\r
+ <KEYWORD2>lenb</KEYWORD2>\r
+ <KEYWORD2>lcase</KEYWORD2>\r
+ <KEYWORD2>ucase</KEYWORD2>\r
+ <KEYWORD2>left</KEYWORD2>\r
+ <KEYWORD2>leftb</KEYWORD2>\r
+ <KEYWORD2>mid</KEYWORD2>\r
+ <KEYWORD2>midb</KEYWORD2>\r
+ <KEYWORD2>right</KEYWORD2>\r
+ <KEYWORD2>rightb</KEYWORD2>\r
+ <KEYWORD2>replace</KEYWORD2>\r
+ <KEYWORD2>space</KEYWORD2>\r
+ <KEYWORD2>split</KEYWORD2>\r
+ <KEYWORD2>strcomp</KEYWORD2>\r
+ <KEYWORD2>string</KEYWORD2>\r
+ <KEYWORD2>strreverse</KEYWORD2>\r
+ <KEYWORD2>ltrim</KEYWORD2>\r
+ <KEYWORD2>rtrim</KEYWORD2>\r
+ <KEYWORD2>trim</KEYWORD2>\r
+ <!-- Variants -->\r
+ <KEYWORD2>isarray</KEYWORD2>\r
+ <KEYWORD2>isdate</KEYWORD2>\r
+ <KEYWORD2>isempty</KEYWORD2>\r
+ <KEYWORD2>isnull</KEYWORD2>\r
+ <KEYWORD2>isnumeric</KEYWORD2>\r
+ <KEYWORD2>isobject</KEYWORD2>\r
+ <KEYWORD2>typename</KEYWORD2>\r
+ <KEYWORD2>vartype</KEYWORD2>\r
+\r
+ <!-- Comment/Uncomment your favorite ADO Constants-->\r
+\r
+ <!-- ADO Constants-->\r
+\r
+ <!-- CursorTypeEnum Values -->\r
+ <LITERAL2>adOpenForwardOnly</LITERAL2>\r
+ <LITERAL2>adOpenKeyset</LITERAL2>\r
+ <LITERAL2>adOpenDynamic</LITERAL2>\r
+ <LITERAL2>adOpenStatic</LITERAL2>\r
+\r
+ <!-- CursorOptionEnum Values -->\r
+<!-- <LITERAL2>adHoldRecords</LITERAL2>\r
+ <LITERAL2>adMovePrevious</LITERAL2>\r
+ <LITERAL2>adAddNew</LITERAL2>\r
+ <LITERAL2>adDelete</LITERAL2>\r
+ <LITERAL2>adUpdate</LITERAL2>\r
+ <LITERAL2>adBookmark</LITERAL2>\r
+ <LITERAL2>adApproxPosition</LITERAL2>\r
+ <LITERAL2>adUpdateBatch</LITERAL2>\r
+ <LITERAL2>adResync</LITERAL2>\r
+ <LITERAL2>adNotify</LITERAL2>\r
+ <LITERAL2>adFind</LITERAL2>\r
+ <LITERAL2>adSeek</LITERAL2>\r
+ <LITERAL2>adIndex</LITERAL2>\r
+-->\r
+ <!-- LockTypeEnum Values -->\r
+ <LITERAL2>adLockReadOnly</LITERAL2>\r
+ <LITERAL2>adLockPessimistic</LITERAL2>\r
+ <LITERAL2>adLockOptimistic</LITERAL2>\r
+ <LITERAL2>adLockBatchOptimistic</LITERAL2>\r
+\r
+ <!-- ExecuteOptionEnum Values -->\r
+ <LITERAL2>adRunAsync</LITERAL2>\r
+ <LITERAL2>adAsyncExecute</LITERAL2>\r
+ <LITERAL2>adAsyncFetch</LITERAL2>\r
+ <LITERAL2>adAsyncFetchNonBlocking</LITERAL2>\r
+ <LITERAL2>adExecuteNoRecords</LITERAL2>\r
+\r
+ <!-- ConnectOptionEnum Values -->\r
+<!-- <LITERAL2>adAsyncConnect</LITERAL2>\r
+-->\r
+ <!-- ObjectStateEnum Values -->\r
+ <LITERAL2>adStateClosed</LITERAL2>\r
+ <LITERAL2>adStateOpen</LITERAL2>\r
+ <LITERAL2>adStateConnecting</LITERAL2>\r
+ <LITERAL2>adStateExecuting</LITERAL2>\r
+ <LITERAL2>adStateFetching</LITERAL2>\r
+\r
+ <!-- CursorLocationEnum Values -->\r
+ <LITERAL2>adUseServer</LITERAL2>\r
+ <LITERAL2>adUseClient</LITERAL2>\r
+\r
+ <!-- DataTypeEnum Values -->\r
+ <LITERAL2>adEmpty</LITERAL2>\r
+ <LITERAL2>adTinyInt</LITERAL2>\r
+ <LITERAL2>adSmallInt</LITERAL2>\r
+ <LITERAL2>adInteger</LITERAL2>\r
+ <LITERAL2>adBigInt</LITERAL2>\r
+ <LITERAL2>adUnsignedTinyInt</LITERAL2>\r
+ <LITERAL2>adUnsignedSmallInt</LITERAL2>\r
+ <LITERAL2>adUnsignedInt</LITERAL2>\r
+ <LITERAL2>adUnsignedBigInt</LITERAL2>\r
+ <LITERAL2>adSingle</LITERAL2>\r
+ <LITERAL2>adDouble</LITERAL2>\r
+ <LITERAL2>adCurrency</LITERAL2>\r
+ <LITERAL2>adDecimal</LITERAL2>\r
+ <LITERAL2>adNumeric</LITERAL2>\r
+ <LITERAL2>adBoolean</LITERAL2>\r
+ <LITERAL2>adError</LITERAL2>\r
+ <LITERAL2>adUserDefined</LITERAL2>\r
+ <LITERAL2>adVariant</LITERAL2>\r
+ <LITERAL2>adIDispatch</LITERAL2>\r
+ <LITERAL2>adIUnknown</LITERAL2>\r
+ <LITERAL2>adGUID</LITERAL2>\r
+ <LITERAL2>adDate</LITERAL2>\r
+ <LITERAL2>adDBDate</LITERAL2>\r
+ <LITERAL2>adDBTime</LITERAL2>\r
+ <LITERAL2>adDBTimeStamp</LITERAL2>\r
+ <LITERAL2>adBSTR</LITERAL2>\r
+ <LITERAL2>adChar</LITERAL2>\r
+ <LITERAL2>adVarChar</LITERAL2>\r
+ <LITERAL2>adLongVarChar</LITERAL2>\r
+ <LITERAL2>adWChar</LITERAL2>\r
+ <LITERAL2>adVarWChar</LITERAL2>\r
+ <LITERAL2>adLongVarWChar</LITERAL2>\r
+ <LITERAL2>adBinary</LITERAL2>\r
+ <LITERAL2>adVarBinary</LITERAL2>\r
+ <LITERAL2>adLongVarBinary</LITERAL2>\r
+ <LITERAL2>adChapter</LITERAL2>\r
+ <LITERAL2>adFileTime</LITERAL2>\r
+ <LITERAL2>adDBFileTime</LITERAL2>\r
+ <LITERAL2>adPropVariant</LITERAL2>\r
+ <LITERAL2>adVarNumeric</LITERAL2>\r
+\r
+ <!-- FieldAttributeEnum Values -->\r
+<!-- <LITERAL2>adFldMayDefer</LITERAL2>\r
+ <LITERAL2>adFldUpdatable</LITERAL2>\r
+ <LITERAL2>adFldUnknownUpdatable</LITERAL2>\r
+ <LITERAL2>adFldFixed</LITERAL2>\r
+ <LITERAL2>adFldIsNullable</LITERAL2>\r
+ <LITERAL2>adFldMayBeNull</LITERAL2>\r
+ <LITERAL2>adFldLong</LITERAL2>\r
+ <LITERAL2>adFldRowID</LITERAL2>\r
+ <LITERAL2>adFldRowVersion</LITERAL2>\r
+ <LITERAL2>adFldCacheDeferred</LITERAL2>\r
+ <LITERAL2>adFldKeyColumn</LITERAL2>\r
+-->\r
+\r
+ <!-- EditModeEnum Values -->\r
+<!-- <LITERAL2>adEditNone</LITERAL2>\r
+ <LITERAL2>adEditInProgress</LITERAL2>\r
+ <LITERAL2>adEditAdd</LITERAL2>\r
+ <LITERAL2>adEditDelete</LITERAL2>\r
+-->\r
+ <!-- RecordStatusEnum Values -->\r
+<!-- <LITERAL2>adRecOK</LITERAL2>\r
+ <LITERAL2>adRecNew</LITERAL2>\r
+ <LITERAL2>adRecModified</LITERAL2>\r
+ <LITERAL2>adRecDeleted</LITERAL2>\r
+ <LITERAL2>adRecUnmodified</LITERAL2>\r
+ <LITERAL2>adRecInvalid</LITERAL2>\r
+ <LITERAL2>adRecMultipleChanges</LITERAL2>\r
+ <LITERAL2>adRecPendingChanges</LITERAL2>\r
+ <LITERAL2>adRecCanceled</LITERAL2>\r
+ <LITERAL2>adRecCantRelease</LITERAL2>\r
+ <LITERAL2>adRecConcurrencyViolation</LITERAL2>\r
+ <LITERAL2>adRecIntegrityViolation</LITERAL2>\r
+ <LITERAL2>adRecMaxChangesExceeded</LITERAL2>\r
+ <LITERAL2>adRecObjectOpen</LITERAL2>\r
+ <LITERAL2>adRecOutOfMemory</LITERAL2>\r
+ <LITERAL2>adRecPermissionDenied</LITERAL2>\r
+ <LITERAL2>adRecSchemaViolation</LITERAL2>\r
+ <LITERAL2>adRecDBDeleted</LITERAL2>\r
+-->\r
+ <!-- GetRowsOptionEnum Values -->\r
+<!-- <LITERAL2>adGetRowsRest</LITERAL2>\r
+-->\r
+\r
+ <!-- PositionEnum Values -->\r
+<!-- <LITERAL2>adPosUnknown</LITERAL2>\r
+ <LITERAL2>adPosBOF</LITERAL2>\r
+ <LITERAL2>adPosEOF</LITERAL2>\r
+-->\r
+\r
+ <!-- enum Values -->\r
+<!-- <LITERAL2>adBookmarkCurrent</LITERAL2>\r
+ <LITERAL2>adBookmarkFirst</LITERAL2>\r
+ <LITERAL2>adBookmarkLast</LITERAL2>\r
+-->\r
+ <!-- MarshalOptionsEnum Values -->\r
+<!-- <LITERAL2>adMarshalAll</LITERAL2>\r
+ <LITERAL2>adMarshalModifiedOnly</LITERAL2>\r
+-->\r
+ <!-- AffectEnum Values -->\r
+<!-- <LITERAL2>adAffectCurrent</LITERAL2>\r
+ <LITERAL2>adAffectGroup</LITERAL2>\r
+ <LITERAL2>adAffectAll</LITERAL2>\r
+ <LITERAL2>adAffectAllChapters</LITERAL2>\r
+-->\r
+\r
+ <!-- ResyncEnum Values -->\r
+<!-- <LITERAL2>adResyncUnderlyingValues</LITERAL2>\r
+ <LITERAL2>adResyncAllValues</LITERAL2>\r
+-->\r
+ <!-- CompareEnum Values -->\r
+<!-- <LITERAL2>adCompareLessThan</LITERAL2>\r
+ <LITERAL2>adCompareEqual</LITERAL2>\r
+ <LITERAL2>adCompareGreaterThan</LITERAL2>\r
+ <LITERAL2>adCompareNotEqual</LITERAL2>\r
+ <LITERAL2>adCompareNotComparable</LITERAL2>\r
+-->\r
+ <!-- FilterGroupEnum Values -->\r
+<!-- <LITERAL2>adFilterNone</LITERAL2>\r
+ <LITERAL2>adFilterPendingRecords</LITERAL2>\r
+ <LITERAL2>adFilterAffectedRecords</LITERAL2>\r
+ <LITERAL2>adFilterFetchedRecords</LITERAL2>\r
+ <LITERAL2>adFilterPredicate</LITERAL2>\r
+ <LITERAL2>adFilterConflictingRecords</LITERAL2>\r
+-->\r
+ <!-- SearchDirectionEnum Values -->\r
+<!-- <LITERAL2>adSearchForward</LITERAL2>\r
+ <LITERAL2>adSearchBackward</LITERAL2>\r
+-->\r
+\r
+ <!-- PersistFormatEnum Values -->\r
+ <LITERAL2>adPersistADTG</LITERAL2>\r
+ <LITERAL2>adPersistXML</LITERAL2>\r
+\r
+ <!-- StringFormatEnum Values -->\r
+<!-- <LITERAL2>adStringXML</LITERAL2>\r
+ <LITERAL2>adStringHTML</LITERAL2>\r
+ <LITERAL2>adClipString</LITERAL2>\r
+-->\r
+ <!-- ConnectPromptEnum Values -->\r
+<!-- <LITERAL2>adPromptAlways</LITERAL2>\r
+ <LITERAL2>adPromptComplete</LITERAL2>\r
+ <LITERAL2>adPromptCompleteRequired</LITERAL2>\r
+ <LITERAL2>adPromptNever</LITERAL2>\r
+-->\r
+ <!-- ConnectModeEnum Values -->\r
+<!-- <LITERAL2>adModeUnknown</LITERAL2>\r
+ <LITERAL2>adModeRead</LITERAL2>\r
+ <LITERAL2>adModeWrite</LITERAL2>\r
+ <LITERAL2>adModeReadWrite</LITERAL2>\r
+ <LITERAL2>adModeShareDenyRead</LITERAL2>\r
+ <LITERAL2>adModeShareDenyWrite</LITERAL2>\r
+ <LITERAL2>adModeShareExclusive</LITERAL2>\r
+ <LITERAL2>adModeShareDenyNone</LITERAL2>\r
+-->\r
+ <!-- IsolationLevelEnum Values -->\r
+<!-- <LITERAL2>adXactUnspecified</LITERAL2>\r
+ <LITERAL2>adXactChaos</LITERAL2>\r
+ <LITERAL2>adXactReadUncommitted</LITERAL2>\r
+ <LITERAL2>adXactBrowse</LITERAL2>\r
+ <LITERAL2>adXactCursorStability</LITERAL2>\r
+ <LITERAL2>adXactReadCommitted</LITERAL2>\r
+ <LITERAL2>adXactRepeatableRead</LITERAL2>\r
+ <LITERAL2>adXactSerializable</LITERAL2>\r
+ <LITERAL2>adXactIsolated</LITERAL2>\r
+-->\r
+ <!-- XactAttributeEnum Values -->\r
+<!-- <LITERAL2>adXactCommitRetaining</LITERAL2>\r
+ <LITERAL2>adXactAbortRetaining</LITERAL2>\r
+-->\r
+ <!-- PropertyAttributesEnum Values -->\r
+<!-- <LITERAL2>adPropNotSupported</LITERAL2>\r
+ <LITERAL2>adPropRequired</LITERAL2>\r
+ <LITERAL2>adPropOptional</LITERAL2>\r
+ <LITERAL2>adPropRead</LITERAL2>\r
+ <LITERAL2>adPropWrite</LITERAL2>\r
+-->\r
+ <!-- ErrorValueEnum Values -->\r
+<!-- <LITERAL2>adErrInvalidArgument</LITERAL2>\r
+ <LITERAL2>adErrNoCurrentRecord</LITERAL2>\r
+ <LITERAL2>adErrIllegalOperation</LITERAL2>\r
+ <LITERAL2>adErrInTransaction</LITERAL2>\r
+ <LITERAL2>adErrFeatureNotAvailable</LITERAL2>\r
+ <LITERAL2>adErrItemNotFound</LITERAL2>\r
+ <LITERAL2>adErrObjectInCollection</LITERAL2>\r
+ <LITERAL2>adErrObjectNotSet</LITERAL2>\r
+ <LITERAL2>adErrDataConversion</LITERAL2>\r
+ <LITERAL2>adErrObjectClosed</LITERAL2>\r
+ <LITERAL2>adErrObjectOpen</LITERAL2>\r
+ <LITERAL2>adErrProviderNotFound</LITERAL2>\r
+ <LITERAL2>adErrBoundToCommand</LITERAL2>\r
+ <LITERAL2>adErrInvalidParamInfo</LITERAL2>\r
+ <LITERAL2>adErrInvalidConnection</LITERAL2>\r
+ <LITERAL2>adErrNotReentrant</LITERAL2>\r
+ <LITERAL2>adErrStillExecuting</LITERAL2>\r
+ <LITERAL2>adErrOperationCancelled</LITERAL2>\r
+ <LITERAL2>adErrStillConnecting</LITERAL2>\r
+ <LITERAL2>adErrNotExecuting</LITERAL2>\r
+ <LITERAL2>adErrUnsafeOperation</LITERAL2>\r
+-->\r
+ <!-- ParameterAttributesEnum Values -->\r
+ <LITERAL2>adParamSigned</LITERAL2>\r
+ <LITERAL2>adParamNullable</LITERAL2>\r
+ <LITERAL2>adParamLong</LITERAL2>\r
+\r
+ <!-- ParameterDirectionEnum Values -->\r
+ <LITERAL2>adParamUnknown</LITERAL2>\r
+ <LITERAL2>adParamInput</LITERAL2>\r
+ <LITERAL2>adParamOutput</LITERAL2>\r
+ <LITERAL2>adParamInputOutput</LITERAL2>\r
+ <LITERAL2>adParamReturnValue</LITERAL2>\r
+\r
+ <!-- CommandTypeEnum Values -->\r
+ <LITERAL2>adCmdUnknown</LITERAL2>\r
+ <LITERAL2>adCmdText</LITERAL2>\r
+ <LITERAL2>adCmdTable</LITERAL2>\r
+ <LITERAL2>adCmdStoredProc</LITERAL2>\r
+ <LITERAL2>adCmdFile</LITERAL2>\r
+ <LITERAL2>adCmdTableDirect</LITERAL2>\r
+\r
+ <!-- EventStatusEnum Values -->\r
+<!-- <LITERAL2>adStatusOK</LITERAL2>\r
+ <LITERAL2>adStatusErrorsOccurred</LITERAL2>\r
+ <LITERAL2>adStatusCantDeny</LITERAL2>\r
+ <LITERAL2>adStatusCancel</LITERAL2>\r
+ <LITERAL2>adStatusUnwantedEvent</LITERAL2>\r
+-->\r
+ <!-- EventReasonEnum Values -->\r
+<!-- <LITERAL2>adRsnAddNew</LITERAL2>\r
+ <LITERAL2>adRsnDelete</LITERAL2>\r
+ <LITERAL2>adRsnUpdate</LITERAL2>\r
+ <LITERAL2>adRsnUndoUpdate</LITERAL2>\r
+ <LITERAL2>adRsnUndoAddNew</LITERAL2>\r
+ <LITERAL2>adRsnUndoDelete</LITERAL2>\r
+ <LITERAL2>adRsnRequery</LITERAL2>\r
+ <LITERAL2>adRsnResynch</LITERAL2>\r
+ <LITERAL2>adRsnClose</LITERAL2>\r
+ <LITERAL2>adRsnMove</LITERAL2>\r
+ <LITERAL2>adRsnFirstChange</LITERAL2>\r
+ <LITERAL2>adRsnMoveFirst</LITERAL2>\r
+ <LITERAL2>adRsnMoveNext</LITERAL2>\r
+ <LITERAL2>adRsnMovePrevious</LITERAL2>\r
+ <LITERAL2>adRsnMoveLast</LITERAL2>\r
+-->\r
+ <!-- SchemaEnum Values -->\r
+<!-- <LITERAL2>adSchemaProviderSpecific</LITERAL2>\r
+ <LITERAL2>adSchemaAsserts</LITERAL2>\r
+ <LITERAL2>adSchemaCatalogs</LITERAL2>\r
+ <LITERAL2>adSchemaCharacterSets</LITERAL2>\r
+ <LITERAL2>adSchemaCollations</LITERAL2>\r
+ <LITERAL2>adSchemaColumns</LITERAL2>\r
+ <LITERAL2>adSchemaCheckConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaConstraintColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaConstraintTableUsage</LITERAL2>\r
+ <LITERAL2>adSchemaKeyColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaReferentialConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaTableConstraints</LITERAL2>\r
+ <LITERAL2>adSchemaColumnsDomainUsage</LITERAL2>\r
+ <LITERAL2>adSchemaIndexes</LITERAL2>\r
+ <LITERAL2>adSchemaColumnPrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaTablePrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaUsagePrivileges</LITERAL2>\r
+ <LITERAL2>adSchemaProcedures</LITERAL2>\r
+ <LITERAL2>adSchemaSchemata</LITERAL2>\r
+ <LITERAL2>adSchemaSQLLanguages</LITERAL2>\r
+ <LITERAL2>adSchemaStatistics</LITERAL2>\r
+ <LITERAL2>adSchemaTables</LITERAL2>\r
+ <LITERAL2>adSchemaTranslations</LITERAL2>\r
+ <LITERAL2>adSchemaProviderTypes</LITERAL2>\r
+ <LITERAL2>adSchemaViews</LITERAL2>\r
+ <LITERAL2>adSchemaViewColumnUsage</LITERAL2>\r
+ <LITERAL2>adSchemaViewTableUsage</LITERAL2>\r
+ <LITERAL2>adSchemaProcedureParameters</LITERAL2>\r
+ <LITERAL2>adSchemaForeignKeys</LITERAL2>\r
+ <LITERAL2>adSchemaPrimaryKeys</LITERAL2>\r
+ <LITERAL2>adSchemaProcedureColumns</LITERAL2>\r
+ <LITERAL2>adSchemaDBInfoKeywords</LITERAL2>\r
+ <LITERAL2>adSchemaDBInfoLiterals</LITERAL2>\r
+ <LITERAL2>adSchemaCubes</LITERAL2>\r
+ <LITERAL2>adSchemaDimensions</LITERAL2>\r
+ <LITERAL2>adSchemaHierarchies</LITERAL2>\r
+ <LITERAL2>adSchemaLevels</LITERAL2>\r
+ <LITERAL2>adSchemaMeasures</LITERAL2>\r
+ <LITERAL2>adSchemaProperties</LITERAL2>\r
+ <LITERAL2>adSchemaMembers</LITERAL2>\r
+-->\r
+ <!-- SeekEnum Values -->\r
+<!-- <LITERAL2>adSeekFirstEQ</LITERAL2>\r
+ <LITERAL2>adSeekLastEQ</LITERAL2>\r
+ <LITERAL2>adSeekAfterEQ</LITERAL2>\r
+ <LITERAL2>adSeekAfter</LITERAL2>\r
+ <LITERAL2>adSeekBeforeEQ</LITERAL2>\r
+ <LITERAL2>adSeekBefore</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_UPDATECRITERIA_ENUM Values -->\r
+<!-- <LITERAL2>adCriteriaKey</LITERAL2>\r
+ <LITERAL2>adCriteriaAllCols</LITERAL2>\r
+ <LITERAL2>adCriteriaUpdCols</LITERAL2>\r
+ <LITERAL2>adCriteriaTimeStamp</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_ASYNCTHREADPRIORITY_ENUM Values -->\r
+<!-- <LITERAL2>adPriorityLowest</LITERAL2>\r
+ <LITERAL2>adPriorityBelowNormal</LITERAL2>\r
+ <LITERAL2>adPriorityNormal</LITERAL2>\r
+ <LITERAL2>adPriorityAboveNormal</LITERAL2>\r
+ <LITERAL2>adPriorityHighest</LITERAL2>\r
+-->\r
+ <!-- CEResyncEnum Values -->\r
+<!-- <LITERAL2>adResyncNone</LITERAL2>\r
+ <LITERAL2>adResyncAutoIncrement</LITERAL2>\r
+ <LITERAL2>adResyncConflicts</LITERAL2>\r
+ <LITERAL2>adResyncUpdates</LITERAL2>\r
+ <LITERAL2>adResyncInserts</LITERAL2>\r
+ <LITERAL2>adResyncAll</LITERAL2>\r
+-->\r
+ <!-- ADCPROP_AUTORECALC_ENUM Values -->\r
+<!-- <LITERAL2>adRecalcUpFront</LITERAL2>\r
+ <LITERAL2>adRecalcAlways</LITERAL2>\r
+-->\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="#*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*#" />\r
+ <PROPERTY NAME="lineComment" VALUE="##" />\r
+ <!-- Auto indent -->\r
+ <PROPERTY NAME="indentNextLines" VALUE="^\s*(#(foreach|if|elseif|else))\s*\(.*\)\s*"/>\r
+ <PROPERTY NAME="unindentThisLine" VALUE="^\s*#(end|elseif|else)\b.*"/>\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="html::TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ <IMPORT DELEGATE="VELOCITY" />\r
+ </RULES>\r
+\r
+ <RULES SET="VELOCITY">\r
+ <SPAN TYPE="COMMENT2">\r
+ <BEGIN>#*</BEGIN>\r
+ <END>*#</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT3">##</EOL_SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD3" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD3"\r
+ >\$!?[A-z][A-z0-9._-]*</SEQ_REGEXP>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>#set</KEYWORD1>\r
+ <KEYWORD1>#foreach</KEYWORD1>\r
+ <KEYWORD1>#end</KEYWORD1>\r
+ <KEYWORD1>#if</KEYWORD1>\r
+ <KEYWORD1>#else</KEYWORD1>\r
+ <KEYWORD1>#elseif</KEYWORD1>\r
+ <KEYWORD1>#parse</KEYWORD1>\r
+ <KEYWORD1>#macro</KEYWORD1>\r
+ <KEYWORD1>#stop</KEYWORD1>\r
+ <KEYWORD1>#include</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="JAVASCRIPT" DEFAULT="MARKUP" IGNORE_CASE="TRUE">\r
+ <SEQ TYPE="MARKUP" DELEGATE="JAVASCRIPT2">></SEQ>\r
+ <!-- handle <SCRIPT SRC="..."> properly -->\r
+ <SEQ TYPE="MARKUP" DELEGATE="BACK_TO_HTML">SRC=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="JAVASCRIPT2"\r
+ ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
+\r
+ <IMPORT DELEGATE="VELOCITY" />\r
+ <IMPORT DELEGATE="javascript::MAIN" />\r
+ </RULES>\r
+\r
+ <RULES SET="BACK_TO_HTML" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="MAIN">></SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="CSS2">></SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS2"\r
+ IGNORE_CASE="TRUE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="[\p{Digit}]+(pt|pc|in|mm|cm|em|ex|px|ms|s|%)"\r
+ NO_WORD_SEP="-_">\r
+\r
+ <IMPORT DELEGATE="VELOCITY" />\r
+ <IMPORT DELEGATE="css::MAIN" />\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!-- Written By: Wojciech Stryjewski - thvortex@sourceforge.net -->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <!-- Rules for indenting:\r
+ - Case expressions (a line ending with colon) are indented\r
+ - Keywords begin, module, task, etc. always indented\r
+ - Keywords if, while, etc. indent only if ; not on the same line\r
+ -->\r
+ <PROPERTY NAME="indentNextLines" VALUE="(.*:\s*)|(\s*(begin|fork|task|table|specify|primitive|module|generate|function|case[xz]?)\b.*)|(\s*(always|if|else|for|forever|initial|repeat|while)\b[^;]*)" />\r
+\r
+ <PROPERTY NAME="commentStart" VALUE="/*" />\r
+ <PROPERTY NAME="commentEnd" VALUE="*/" />\r
+ <PROPERTY NAME="lineComment" VALUE="//" />\r
+ <PROPERTY NAME="noWordSep" VALUE="_'" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="([\p{Digit}]|_)+" NO_WORD_SEP="'">\r
+ <!-- Comments -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>/*</BEGIN>\r
+ <END>*/</END>\r
+ </SPAN>\r
+ <EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>\r
+\r
+ <!--String Literals -->\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="DIGIT">'d</SEQ>\r
+ <SEQ TYPE="DIGIT">'h</SEQ>\r
+ <SEQ TYPE="DIGIT">'b</SEQ>\r
+ <SEQ TYPE="DIGIT">'o</SEQ>\r
+\r
+ <!-- Function calls, module instantiation, system tasks with args -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Operators -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- Regular Keywords -->\r
+ <KEYWORD1>always</KEYWORD1>\r
+ <KEYWORD1>assign</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>casex</KEYWORD1>\r
+ <KEYWORD1>casez</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>deassign</KEYWORD1>\r
+ <KEYWORD1>disable</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>endcase</KEYWORD1>\r
+ <KEYWORD1>endfunction</KEYWORD1>\r
+ <KEYWORD1>endgenerate</KEYWORD1>\r
+ <KEYWORD1>endmodule</KEYWORD1>\r
+ <KEYWORD1>endprimitive</KEYWORD1>\r
+ <KEYWORD1>endspecify</KEYWORD1>\r
+ <KEYWORD1>endtable</KEYWORD1>\r
+ <KEYWORD1>endtask</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>force</KEYWORD1>\r
+ <KEYWORD1>forever</KEYWORD1>\r
+ <KEYWORD1>fork</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>generate</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>initial</KEYWORD1>\r
+ <KEYWORD1>join</KEYWORD1>\r
+ <KEYWORD1>macromodule</KEYWORD1>\r
+ <KEYWORD1>module</KEYWORD1>\r
+ <KEYWORD1>negedge</KEYWORD1>\r
+ <KEYWORD1>posedge</KEYWORD1>\r
+ <KEYWORD1>primitive</KEYWORD1>\r
+ <KEYWORD1>repeat</KEYWORD1>\r
+ <KEYWORD1>release</KEYWORD1>\r
+ <KEYWORD1>specify</KEYWORD1>\r
+ <KEYWORD1>table</KEYWORD1>\r
+ <KEYWORD1>task</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+\r
+ <!-- Compiler Directives -->\r
+ <KEYWORD2>`include</KEYWORD2>\r
+ <KEYWORD2>`define</KEYWORD2>\r
+ <KEYWORD2>`undef</KEYWORD2>\r
+ <KEYWORD2>`ifdef</KEYWORD2>\r
+ <KEYWORD2>`ifndef</KEYWORD2>\r
+ <KEYWORD2>`else</KEYWORD2>\r
+ <KEYWORD2>`endif</KEYWORD2>\r
+ <KEYWORD2>`timescale</KEYWORD2>\r
+ <KEYWORD2>`resetall</KEYWORD2>\r
+ <KEYWORD2>`signed</KEYWORD2>\r
+ <KEYWORD2>`unsigned</KEYWORD2>\r
+ <KEYWORD2>`celldefine</KEYWORD2>\r
+ <KEYWORD2>`endcelldefine</KEYWORD2>\r
+ <KEYWORD2>`default_nettype</KEYWORD2>\r
+ <KEYWORD2>`unconnected_drive</KEYWORD2>\r
+ <KEYWORD2>`nounconnected_drive</KEYWORD2>\r
+ <KEYWORD2>`protect</KEYWORD2>\r
+ <KEYWORD2>`endprotect</KEYWORD2>\r
+ <KEYWORD2>`protected</KEYWORD2>\r
+ <KEYWORD2>`endprotected</KEYWORD2>\r
+ <KEYWORD2>`remove_gatename</KEYWORD2>\r
+ <KEYWORD2>`noremove_gatename</KEYWORD2>\r
+ <KEYWORD2>`remove_netname</KEYWORD2>\r
+ <KEYWORD2>`noremove_netname</KEYWORD2>\r
+ <KEYWORD2>`expand_vectornets</KEYWORD2>\r
+ <KEYWORD2>`noexpand_vectornets</KEYWORD2>\r
+ <KEYWORD2>`autoexpand_vectornets</KEYWORD2>\r
+\r
+ <!-- Type Declaration Keywords -->\r
+ <KEYWORD3>integer</KEYWORD3>\r
+ <KEYWORD3>reg</KEYWORD3>\r
+ <KEYWORD3>time</KEYWORD3>\r
+ <KEYWORD3>realtime</KEYWORD3>\r
+ <KEYWORD3>defparam</KEYWORD3>\r
+ <KEYWORD3>parameter</KEYWORD3>\r
+ <KEYWORD3>event</KEYWORD3>\r
+ <KEYWORD3>wire</KEYWORD3>\r
+ <KEYWORD3>wand</KEYWORD3>\r
+ <KEYWORD3>wor</KEYWORD3>\r
+ <KEYWORD3>tri</KEYWORD3>\r
+ <KEYWORD3>triand</KEYWORD3>\r
+ <KEYWORD3>trior</KEYWORD3>\r
+ <KEYWORD3>tri0</KEYWORD3>\r
+ <KEYWORD3>tri1</KEYWORD3>\r
+ <KEYWORD3>trireg</KEYWORD3>\r
+ <KEYWORD3>vectored</KEYWORD3>\r
+ <KEYWORD3>scalared</KEYWORD3>\r
+ <KEYWORD3>input</KEYWORD3>\r
+ <KEYWORD3>output</KEYWORD3>\r
+ <KEYWORD3>inout</KEYWORD3>\r
+\r
+ <!-- Signal Strengths -->\r
+ <KEYWORD3>supply0</KEYWORD3>\r
+ <KEYWORD3>supply1</KEYWORD3>\r
+ <KEYWORD3>strong0</KEYWORD3>\r
+ <KEYWORD3>strong1</KEYWORD3>\r
+ <KEYWORD3>pull0</KEYWORD3>\r
+ <KEYWORD3>pull1</KEYWORD3>\r
+ <KEYWORD3>weak0</KEYWORD3>\r
+ <KEYWORD3>weak1</KEYWORD3>\r
+ <KEYWORD3>highz0</KEYWORD3>\r
+ <KEYWORD3>highz1</KEYWORD3>\r
+ <KEYWORD3>small</KEYWORD3>\r
+ <KEYWORD3>medium</KEYWORD3>\r
+ <KEYWORD3>large</KEYWORD3>\r
+\r
+ <!-- System Tasks With No/Optional Arguments -->\r
+ <FUNCTION>$stop</FUNCTION>\r
+ <FUNCTION>$finish</FUNCTION>\r
+ <FUNCTION>$time</FUNCTION>\r
+ <FUNCTION>$stime</FUNCTION>\r
+ <FUNCTION>$realtime</FUNCTION>\r
+ <FUNCTION>$settrace</FUNCTION>\r
+ <FUNCTION>$cleartrace</FUNCTION>\r
+ <FUNCTION>$showscopes</FUNCTION>\r
+ <FUNCTION>$showvars</FUNCTION>\r
+ <FUNCTION>$monitoron</FUNCTION>\r
+ <FUNCTION>$monitoroff</FUNCTION>\r
+ <FUNCTION>$random</FUNCTION>\r
+ <FUNCTION>$printtimescale</FUNCTION>\r
+ <FUNCTION>$timeformat</FUNCTION>\r
+\r
+ <!-- Built-in primitives -->\r
+ <FUNCTION>and</FUNCTION>\r
+ <FUNCTION>nand</FUNCTION>\r
+ <FUNCTION>or</FUNCTION>\r
+ <FUNCTION>nor</FUNCTION>\r
+ <FUNCTION>xor</FUNCTION>\r
+ <FUNCTION>xnor</FUNCTION>\r
+ <FUNCTION>buf</FUNCTION>\r
+ <FUNCTION>bufif0</FUNCTION>\r
+ <FUNCTION>bufif1</FUNCTION>\r
+ <FUNCTION>not</FUNCTION>\r
+ <FUNCTION>notif0</FUNCTION>\r
+ <FUNCTION>notif1</FUNCTION>\r
+ <FUNCTION>nmos</FUNCTION>\r
+ <FUNCTION>pmos</FUNCTION>\r
+ <FUNCTION>cmos</FUNCTION>\r
+ <FUNCTION>rnmos</FUNCTION>\r
+ <FUNCTION>rpmos</FUNCTION>\r
+ <FUNCTION>rcmos</FUNCTION>\r
+ <FUNCTION>tran</FUNCTION>\r
+ <FUNCTION>tranif0</FUNCTION>\r
+ <FUNCTION>tranif1</FUNCTION>\r
+ <FUNCTION>rtran</FUNCTION>\r
+ <FUNCTION>rtranif0</FUNCTION>\r
+ <FUNCTION>rtranif1</FUNCTION>\r
+ <FUNCTION>pullup</FUNCTION>\r
+ <FUNCTION>pulldown</FUNCTION>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!-- VHDL mode, contributed by Dante Fabrizio and Nitsan Vardi -->\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="label" VALUE="VHDL" />\r
+ <PROPERTY NAME="lineComment" VALUE="--" />\r
+ </PROPS>\r
+ <RULES ESCAPE="\" IGNORE_CASE="TRUE">\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="NULL">'event</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">/=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!</SEQ>\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">**</SEQ>\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+ <SEQ TYPE="OPERATOR">&</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">^</SEQ>\r
+ <SEQ TYPE="OPERATOR">~</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
+ AT_LINE_START="FALSE">: </MARK_PREVIOUS>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>architecture</KEYWORD1>\r
+ <KEYWORD1>alias</KEYWORD1>\r
+ <KEYWORD1>assert</KEYWORD1>\r
+ <KEYWORD1>entity</KEYWORD1>\r
+ <KEYWORD1>process</KEYWORD1>\r
+ <KEYWORD1>variable</KEYWORD1>\r
+ <KEYWORD1>signal</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>generic</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>out</KEYWORD1>\r
+ <KEYWORD1>inout</KEYWORD1>\r
+ <KEYWORD1>begin</KEYWORD1>\r
+ <KEYWORD1>end</KEYWORD1>\r
+ <KEYWORD1>component</KEYWORD1>\r
+ <KEYWORD1>use</KEYWORD1>\r
+ <KEYWORD1>library</KEYWORD1>\r
+ <KEYWORD1>loop</KEYWORD1>\r
+ <KEYWORD1>constant</KEYWORD1>\r
+ <KEYWORD1>break</KEYWORD1>\r
+ <KEYWORD1>case</KEYWORD1>\r
+ <KEYWORD1>port</KEYWORD1>\r
+ <KEYWORD1>is</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>of</KEYWORD1>\r
+ <KEYWORD1>array</KEYWORD1>\r
+ <KEYWORD1>catch</KEYWORD1>\r
+ <KEYWORD1>continue</KEYWORD1>\r
+ <KEYWORD1>default</KEYWORD1>\r
+ <KEYWORD1>do</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+ <KEYWORD1>elsif</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>downto</KEYWORD1>\r
+ <KEYWORD1>upto</KEYWORD1>\r
+ <KEYWORD1>extends</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>implements</KEYWORD1>\r
+ <KEYWORD1>instanceof</KEYWORD1>\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>static</KEYWORD1>\r
+ <KEYWORD1>switch</KEYWORD1>\r
+ <KEYWORD1>type</KEYWORD1>\r
+ <KEYWORD1>while</KEYWORD1>\r
+ <KEYWORD1>others</KEYWORD1>\r
+ <KEYWORD1>all</KEYWORD1>\r
+ <KEYWORD1>record</KEYWORD1>\r
+ <KEYWORD1>range</KEYWORD1>\r
+ <KEYWORD1>wait</KEYWORD1>\r
+\r
+ <KEYWORD2>package</KEYWORD2>\r
+ <KEYWORD2>import</KEYWORD2>\r
+ <KEYWORD2>std_logic</KEYWORD2>\r
+ <KEYWORD2>std_ulogic</KEYWORD2>\r
+ <KEYWORD2>std_logic_vector</KEYWORD2>\r
+ <KEYWORD2>std_ulogic_vector</KEYWORD2>\r
+ <KEYWORD2>integer</KEYWORD2>\r
+ <KEYWORD2>natural</KEYWORD2>\r
+ <KEYWORD2>bit</KEYWORD2>\r
+ <KEYWORD2>bit_vector</KEYWORD2>\r
+\r
+\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>nor</OPERATOR>\r
+ <OPERATOR>not</OPERATOR>\r
+ <OPERATOR>nand</OPERATOR>\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>xnor</OPERATOR>\r
+ <OPERATOR>sll</OPERATOR>\r
+ <OPERATOR>srl</OPERATOR>\r
+ <OPERATOR>sla</OPERATOR>\r
+ <OPERATOR>sra</OPERATOR>\r
+ <OPERATOR>rol</OPERATOR>\r
+ <OPERATOR>ror</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+ <OPERATOR>rem</OPERATOR>\r
+ <OPERATOR>abs</OPERATOR>\r
+\r
+ <KEYWORD3>EVENT</KEYWORD3>\r
+ <KEYWORD3>BASE</KEYWORD3>\r
+ <KEYWORD3>LEFT</KEYWORD3>\r
+ <KEYWORD3>RIGHT</KEYWORD3>\r
+ <KEYWORD3>LOW</KEYWORD3>\r
+ <KEYWORD3>HIGH</KEYWORD3>\r
+ <KEYWORD3>ASCENDING</KEYWORD3>\r
+ <KEYWORD3>IMAGE</KEYWORD3>\r
+ <KEYWORD3>VALUE</KEYWORD3>\r
+ <KEYWORD3>POS</KEYWORD3>\r
+ <KEYWORD3>VAL</KEYWORD3>\r
+ <KEYWORD3>SUCC</KEYWORD3>\r
+ <KEYWORD3>VAL</KEYWORD3>\r
+ <KEYWORD3>POS</KEYWORD3>\r
+ <KEYWORD3>PRED</KEYWORD3>\r
+ <KEYWORD3>VAL</KEYWORD3>\r
+ <KEYWORD3>POS</KEYWORD3>\r
+ <KEYWORD3>LEFTOF</KEYWORD3>\r
+ <KEYWORD3>RIGHTOF</KEYWORD3>\r
+ <KEYWORD3>LEFT</KEYWORD3>\r
+ <KEYWORD3>RIGHT</KEYWORD3>\r
+ <KEYWORD3>LOW</KEYWORD3>\r
+ <KEYWORD3>HIGH</KEYWORD3>\r
+ <KEYWORD3>RANGE</KEYWORD3>\r
+ <KEYWORD3>REVERSE</KEYWORD3>\r
+ <KEYWORD3>LENGTH</KEYWORD3>\r
+ <KEYWORD3>ASCENDING</KEYWORD3>\r
+ <KEYWORD3>DELAYED</KEYWORD3>\r
+ <KEYWORD3>STABLE</KEYWORD3>\r
+ <KEYWORD3>QUIET</KEYWORD3>\r
+ <KEYWORD3>TRANSACTION</KEYWORD3>\r
+ <KEYWORD3>EVENT</KEYWORD3>\r
+ <KEYWORD3>ACTIVE</KEYWORD3>\r
+ <KEYWORD3>LAST</KEYWORD3>\r
+ <KEYWORD3>LAST</KEYWORD3>\r
+ <KEYWORD3>LAST</KEYWORD3>\r
+ <KEYWORD3>DRIVING</KEYWORD3>\r
+ <KEYWORD3>DRIVING</KEYWORD3>\r
+ <KEYWORD3>SIMPLE</KEYWORD3>\r
+ <KEYWORD3>INSTANCE</KEYWORD3>\r
+ <KEYWORD3>PATH</KEYWORD3>\r
+\r
+ <FUNCTION>rising_edge</FUNCTION>\r
+ <FUNCTION>shift_left</FUNCTION>\r
+ <FUNCTION>shift_right</FUNCTION>\r
+ <FUNCTION>rotate_left</FUNCTION>\r
+ <FUNCTION>rotate_right</FUNCTION>\r
+ <FUNCTION>resize</FUNCTION>\r
+ <FUNCTION>std_match</FUNCTION>\r
+ <FUNCTION>to_integer</FUNCTION>\r
+ <FUNCTION>to_unsigned</FUNCTION>\r
+ <FUNCTION>to_signed</FUNCTION>\r
+ <FUNCTION>unsigned</FUNCTION>\r
+ <FUNCTION>signed</FUNCTION>\r
+ <FUNCTION>to_bit</FUNCTION>\r
+ <FUNCTION>to_bitvector</FUNCTION>\r
+ <FUNCTION>to_stdulogic</FUNCTION>\r
+ <FUNCTION>to_stdlogicvector</FUNCTION>\r
+ <FUNCTION>to_stdulogicvector</FUNCTION>\r
+\r
+ <LITERAL2>false</LITERAL2>\r
+ <LITERAL2>true</LITERAL2>\r
+ </KEYWORDS>\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES>\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD Entity declarations -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="ENTITY-TAGS">\r
+ <BEGIN><!ENTITY</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CDATA sections -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="CDATA">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- PI directives -->\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN><?</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" NO_WORD_SEP="-_">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="MARKUP">/</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ </RULES>\r
+ <RULES SET="DTD-TAGS" DEFAULT="KEYWORD2" IGNORE_CASE="FALSE" NO_WORD_SEP="-_">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>--</BEGIN>\r
+ <END>--</END>\r
+ </SPAN>\r
+\r
+ <!-- Parameter entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>%</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- This appears in some SGML documents -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="MAIN">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>CDATA</KEYWORD1>\r
+ <KEYWORD1>EMPTY</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>IGNORE</KEYWORD1>\r
+ <KEYWORD1>NDATA</KEYWORD1>\r
+ <KEYWORD1>#IMPLIED</KEYWORD1>\r
+ <KEYWORD1>#PCDATA</KEYWORD1>\r
+ <KEYWORD1>#REQUIRED</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ <RULES SET="ENTITY-TAGS" DEFAULT="KEYWORD2">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>--</BEGIN>\r
+ <END>--</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>SYSTEM</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+ <RULES SET="CDATA" DEFAULT="COMMENT2">\r
+ <!-- no rules -->\r
+ </RULES>\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ <PROPERTY NAME="commentStart" VALUE="(:" />\r
+ <PROPERTY NAME="commentEnd" VALUE=":)" />\r
+ <PROPERTY NAME="wordBreakChars" VALUE=":,+=<>/?^&*" />\r
+\r
+ <!-- Auto indent -->\r
+ <!-- <PROPERTY NAME="indentOpenBrackets" VALUE="{" /> -->\r
+ <!-- <PROPERTY NAME="indentCloseBrackets" VALUE="}" /> -->\r
+ <PROPERTY NAME="indentNextLine"\r
+ VALUE="\s*(((if)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
+ <!-- set this to 'true' if you want to use GNU coding style -->\r
+ <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
+ <PROPERTY NAME="lineUpClosingBracket" VALUE="true" />\r
+ </PROPS>\r
+ <RULES>\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+\r
+ <!-- DTD Entity declarations -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="ENTITY-TAGS">\r
+ <BEGIN><!ENTITY</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- CDATA sections -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="CDATA">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- PI directives -->\r
+ <SPAN TYPE="KEYWORD3">\r
+ <BEGIN><?</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><![CDATA[<[a-zA-Z/]\w*]]></BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" NO_WORD_SEP="-_">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+\r
+ <SEQ TYPE="MARKUP">/</SEQ>\r
+ <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>\r
+ </RULES>\r
+\r
+ <RULES SET="DTD-TAGS" DEFAULT="KEYWORD2" IGNORE_CASE="FALSE">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>--</BEGIN>\r
+ <END>--</END>\r
+ </SPAN>\r
+\r
+ <!-- Parameter entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>%</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- This appears in some SGML documents -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="MAIN">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">(</SEQ>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>CDATA</KEYWORD1>\r
+ <KEYWORD1>EMPTY</KEYWORD1>\r
+ <KEYWORD1>INCLUDE</KEYWORD1>\r
+ <KEYWORD1>IGNORE</KEYWORD1>\r
+ <KEYWORD1>NDATA</KEYWORD1>\r
+ <KEYWORD1>#IMPLIED</KEYWORD1>\r
+ <KEYWORD1>#PCDATA</KEYWORD1>\r
+ <KEYWORD1>#REQUIRED</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="ENTITY-TAGS" DEFAULT="KEYWORD2">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>--</BEGIN>\r
+ <END>--</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">%</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <KEYWORD1>SYSTEM</KEYWORD1>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="CDATA" DEFAULT="COMMENT2">\r
+ <!-- no rules -->\r
+ </RULES>\r
+\r
+ <RULES ESCAPE="\"\r
+ IGNORE_CASE="FALSE"\r
+ HIGHLIGHT_DIGITS="TRUE"\r
+ DIGIT_RE="(0x\p{XDigit}+[lL]?|\d+(e\d*)?[lLdDfF]?)">\r
+\r
+ <!-- XQuery style comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN>(:</BEGIN>\r
+ <END>:)</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+\r
+\r
+\r
+ <!-- Function calls -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">>=</SEQ>\r
+ <SEQ TYPE="OPERATOR"><</SEQ>\r
+ <SEQ TYPE="OPERATOR"><=</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR"><<</SEQ>\r
+ <SEQ TYPE="OPERATOR">>></SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+<!--\r
+ <SEQ TYPE="OPERATOR">-</SEQ>\r
+ -->\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+\r
+ <!-- unary -/+ ? -->\r
+\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <SEQ TYPE="OPERATOR">//</SEQ>\r
+\r
+ <SEQ TYPE="OPERATOR">}</SEQ>\r
+ <SEQ TYPE="OPERATOR">{</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <OPERATOR>some</OPERATOR>\r
+ <OPERATOR>every</OPERATOR>\r
+\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>and</OPERATOR>\r
+\r
+ <OPERATOR>instance of</OPERATOR>\r
+\r
+ <OPERATOR>treat as</OPERATOR>\r
+\r
+ <OPERATOR>castable as</OPERATOR>\r
+\r
+ <OPERATOR>cast as</OPERATOR>\r
+\r
+ <OPERATOR>eq</OPERATOR>\r
+ <OPERATOR>ne</OPERATOR>\r
+ <OPERATOR>lt</OPERATOR>\r
+ <OPERATOR>gt</OPERATOR>\r
+ <OPERATOR>ge</OPERATOR>\r
+ <OPERATOR>is</OPERATOR>\r
+\r
+ <OPERATOR>to</OPERATOR>\r
+\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>idiv</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+\r
+ <OPERATOR>union</OPERATOR>\r
+\r
+ <OPERATOR>intersect</OPERATOR>\r
+ <OPERATOR>except</OPERATOR>\r
+\r
+ <KEYWORD1>return</KEYWORD1>\r
+ <KEYWORD1>for</KEYWORD1>\r
+ <KEYWORD1>in</KEYWORD1>\r
+ <KEYWORD1>to</KEYWORD1>\r
+ <KEYWORD1>at</KEYWORD1>\r
+\r
+ <KEYWORD1>let</KEYWORD1>\r
+ <KEYWORD1>:=</KEYWORD1>\r
+\r
+ <KEYWORD1>where</KEYWORD1>\r
+\r
+ <KEYWORD1>stable</KEYWORD1>\r
+ <KEYWORD1>order</KEYWORD1>\r
+ <KEYWORD1>by</KEYWORD1>\r
+\r
+ <LITERAL2>ascending</LITERAL2>\r
+ <LITERAL2>descending</LITERAL2>\r
+\r
+ <LITERAL2>greatest</LITERAL2>\r
+ <LITERAL2>least</LITERAL2>\r
+ <LITERAL2>collation</LITERAL2>\r
+\r
+ <KEYWORD3>typeswitch</KEYWORD3>\r
+ <KEYWORD3>default</KEYWORD3>\r
+\r
+ <KEYWORD1>cast</KEYWORD1>\r
+ <KEYWORD1>as</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>then</KEYWORD1>\r
+ <KEYWORD1>else</KEYWORD1>\r
+\r
+ <LITERAL2>true</LITERAL2>\r
+ <LITERAL2>false</LITERAL2>\r
+\r
+ <KEYWORD3>xquery</KEYWORD3>\r
+ <KEYWORD3>version</KEYWORD3>\r
+\r
+ <KEYWORD3>declare</KEYWORD3>\r
+ <KEYWORD3>function</KEYWORD3>\r
+ <KEYWORD3>library</KEYWORD3>\r
+ <KEYWORD3>variable</KEYWORD3>\r
+ <KEYWORD3>module</KEYWORD3>\r
+ <KEYWORD3>namespace</KEYWORD3>\r
+ <KEYWORD3>local</KEYWORD3>\r
+\r
+ <KEYWORD3>validate</KEYWORD3>\r
+ <KEYWORD3>import</KEYWORD3>\r
+ <KEYWORD3>schema</KEYWORD3>\r
+ <KEYWORD3>validation</KEYWORD3>\r
+ <KEYWORD3>collection</KEYWORD3>\r
+\r
+ <KEYWORD3>ancestor</KEYWORD3>\r
+ <KEYWORD3>descendant</KEYWORD3>\r
+ <KEYWORD3>self</KEYWORD3>\r
+ <KEYWORD3>parent</KEYWORD3>\r
+ <KEYWORD3>child</KEYWORD3>\r
+ <KEYWORD3>self</KEYWORD3>\r
+ <KEYWORD3>descendant-or-self</KEYWORD3>\r
+ <KEYWORD3>ancestor-or-self</KEYWORD3>\r
+ <KEYWORD3>preceding-sibling</KEYWORD3>\r
+ <KEYWORD3>following-sibling</KEYWORD3>\r
+ <KEYWORD3>following</KEYWORD3>\r
+ <KEYWORD3>preceding</KEYWORD3>\r
+\r
+ <KEYWORD4>xs:integer</KEYWORD4>\r
+ <KEYWORD4>xs:decimal</KEYWORD4>\r
+ <KEYWORD4>xs:double</KEYWORD4>\r
+ <KEYWORD4>xs:string</KEYWORD4>\r
+ <KEYWORD4>xs:date</KEYWORD4>\r
+ <KEYWORD4>xs:time</KEYWORD4>\r
+ <KEYWORD4>xs:dateTime</KEYWORD4>\r
+ <KEYWORD4>xs:boolean</KEYWORD4>\r
+\r
+ <KEYWORD4>item</KEYWORD4>\r
+ <KEYWORD4>element</KEYWORD4>\r
+ <KEYWORD4>attribute</KEYWORD4>\r
+ <KEYWORD4>comment</KEYWORD4>\r
+ <KEYWORD4>document</KEYWORD4>\r
+ <KEYWORD4>document-node</KEYWORD4>\r
+ <KEYWORD4>node</KEYWORD4>\r
+ <KEYWORD4>empty</KEYWORD4>\r
+\r
+ <FUNCTION>zero-or-one</FUNCTION>\r
+ <FUNCTION>avg</FUNCTION>\r
+ <FUNCTION>base-uri</FUNCTION>\r
+ <FUNCTION>boolean</FUNCTION>\r
+ <FUNCTION>ceiling</FUNCTION>\r
+ <FUNCTION>codepoints-to-string</FUNCTION>\r
+ <FUNCTION>collection</FUNCTION>\r
+ <FUNCTION>compare</FUNCTION>\r
+ <FUNCTION>concat</FUNCTION>\r
+ <FUNCTION>contains</FUNCTION>\r
+ <FUNCTION>count</FUNCTION>\r
+ <FUNCTION>current-date</FUNCTION>\r
+ <FUNCTION>current-dateTime</FUNCTION>\r
+ <FUNCTION>current-time</FUNCTION>\r
+ <FUNCTION>data</FUNCTION>\r
+ <FUNCTION>day-from-date</FUNCTION>\r
+ <FUNCTION>day-from-dateTime</FUNCTION>\r
+ <FUNCTION>days-from-duration</FUNCTION>\r
+ <FUNCTION>deep-equal</FUNCTION>\r
+ <FUNCTION>distinct-values</FUNCTION>\r
+ <FUNCTION>doc</FUNCTION>\r
+ <FUNCTION>adjust-time-to-timezone</FUNCTION>\r
+ <FUNCTION>adjust-dateTime-to-timezone</FUNCTION>\r
+ <FUNCTION>string-length</FUNCTION>\r
+ <FUNCTION>string-join</FUNCTION>\r
+ <FUNCTION>string</FUNCTION>\r
+ <FUNCTION>starts-with</FUNCTION>\r
+ <FUNCTION>seconds-from-time</FUNCTION>\r
+ <FUNCTION>seconds-from-duration</FUNCTION>\r
+ <FUNCTION>seconds-from-dateTime</FUNCTION>\r
+ <FUNCTION>round-half-to-even</FUNCTION>\r
+ <FUNCTION>round</FUNCTION>\r
+ <FUNCTION>root</FUNCTION>\r
+ <FUNCTION>reverse</FUNCTION>\r
+ <FUNCTION>replace</FUNCTION>\r
+ <FUNCTION>remove</FUNCTION>\r
+ <FUNCTION>prefix-from-QName</FUNCTION>\r
+ <FUNCTION>position</FUNCTION>\r
+ <FUNCTION>one-or-more</FUNCTION>\r
+ <FUNCTION>number</FUNCTION>\r
+ <FUNCTION>QName</FUNCTION>\r
+ <FUNCTION>abs</FUNCTION>\r
+ <FUNCTION>adjust-date-to-timezone</FUNCTION>\r
+ <FUNCTION>doc-available</FUNCTION>\r
+ <FUNCTION>doctype</FUNCTION>\r
+ <FUNCTION>document</FUNCTION>\r
+ <FUNCTION>last</FUNCTION>\r
+ <FUNCTION>local-name</FUNCTION>\r
+ <FUNCTION>local-name-from-QName</FUNCTION>\r
+ <FUNCTION>lower-case</FUNCTION>\r
+ <FUNCTION>match-all</FUNCTION>\r
+ <FUNCTION>match-any</FUNCTION>\r
+ <FUNCTION>matches</FUNCTION>\r
+ <FUNCTION>max</FUNCTION>\r
+ <FUNCTION>min</FUNCTION>\r
+ <FUNCTION>minutes-from-dateTime</FUNCTION>\r
+ <FUNCTION>minutes-from-duration</FUNCTION>\r
+ <FUNCTION>minutes-from-time</FUNCTION>\r
+ <FUNCTION>month-from-date</FUNCTION>\r
+ <FUNCTION>month-from-dateTime</FUNCTION>\r
+ <FUNCTION>name</FUNCTION>\r
+ <FUNCTION>namespace-uri</FUNCTION>\r
+ <FUNCTION>namespace-uri-for-prefix</FUNCTION>\r
+ <FUNCTION>namespace-uri-from-QName</FUNCTION>\r
+ <FUNCTION>node-name</FUNCTION>\r
+ <FUNCTION>normalize-space</FUNCTION>\r
+ <FUNCTION>lang</FUNCTION>\r
+ <FUNCTION>item-at</FUNCTION>\r
+ <FUNCTION>document-uri</FUNCTION>\r
+ <FUNCTION>empty</FUNCTION>\r
+ <FUNCTION>encode-for-uri</FUNCTION>\r
+ <FUNCTION>ends-with</FUNCTION>\r
+ <FUNCTION>error</FUNCTION>\r
+ <FUNCTION>escape-html-uri</FUNCTION>\r
+ <FUNCTION>escape-uri</FUNCTION>\r
+ <FUNCTION>exactly-one</FUNCTION>\r
+ <FUNCTION>exists</FUNCTION>\r
+ <FUNCTION>false</FUNCTION>\r
+ <FUNCTION>floor</FUNCTION>\r
+ <FUNCTION>hours-from-dateTime</FUNCTION>\r
+ <FUNCTION>hours-from-duration</FUNCTION>\r
+ <FUNCTION>hours-from-time</FUNCTION>\r
+ <FUNCTION>id</FUNCTION>\r
+ <FUNCTION>implicit-timezone</FUNCTION>\r
+ <FUNCTION>in-scope-prefixes</FUNCTION>\r
+ <FUNCTION>index-of</FUNCTION>\r
+ <FUNCTION>insert-before</FUNCTION>\r
+ <FUNCTION>iri-to-uri</FUNCTION>\r
+ <FUNCTION>string-pad</FUNCTION>\r
+ <FUNCTION>string-to-codepoints</FUNCTION>\r
+ <FUNCTION>sum</FUNCTION>\r
+ <FUNCTION>timezone-from-date</FUNCTION>\r
+ <FUNCTION>timezone-from-dateTime</FUNCTION>\r
+ <FUNCTION>timezone-from-time</FUNCTION>\r
+ <FUNCTION>not</FUNCTION>\r
+ <FUNCTION>tokenize</FUNCTION>\r
+ <FUNCTION>translate</FUNCTION>\r
+ <FUNCTION>true</FUNCTION>\r
+ <FUNCTION>unordered</FUNCTION>\r
+ <FUNCTION>upper-case</FUNCTION>\r
+ <FUNCTION>xcollection</FUNCTION>\r
+ <FUNCTION>year-from-date</FUNCTION>\r
+ <FUNCTION>year-from-dateTime</FUNCTION>\r
+ <FUNCTION>substring-before</FUNCTION>\r
+ <FUNCTION>subsequence</FUNCTION>\r
+ <FUNCTION>substring</FUNCTION>\r
+ <FUNCTION>substring-after</FUNCTION>\r
+\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd"><!--\r
+ ======================================================================\r
+ Edit mode for XSLT 1.0 and XSLT 2.0\r
+ ======================================================================\r
+ Token types:\r
+\r
+ COMMENT1 XML comments\r
+ COMMENT2 XPath 2.0 comments - top or nested within COMMENT3\r
+ COMMENT3 XPath 2.0 comments - nested within COMMENT2\r
+ COMMENT4 Default task names used in Task List\r
+ DIGIT Digits\r
+ FUNCTION Functions\r
+ INVALID -\r
+ KEYWORD1 XSLT element names\r
+ KEYWORD2 XSLT attribute names\r
+ KEYWORD3 Attribute values\r
+ KEYWORD4 Axes specifiers\r
+ LABEL Namespace prefixes\r
+ LITERAL1 String literals\r
+ LITERAL2 Parameter and variable references\r
+ LITERAL3 Entity references and processing instructions\r
+ LITERAL4 DTD constructs and CDATA sections\r
+ MARKUP Result elements and extension elements\r
+ OPERATOR XPath 2.0 keywords + some other stuff\r
+ ======================================================================\r
+-->\r
+\r
+<MODE>\r
+\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--"/>\r
+ <PROPERTY NAME="commentEnd" VALUE="-->"/>\r
+ </PROPS>\r
+\r
+ <RULES HIGHLIGHT_DIGITS="FALSE" IGNORE_CASE="FALSE">\r
+\r
+ <!-- XML comments -->\r
+ <SPAN DELEGATE="TASKS" TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- Assume 'xsl' prefix for XSLT elements -->\r
+ <SPAN_REGEXP HASH_CHAR="<" DELEGATE="XSLTAGS" TYPE="KEYWORD2">\r
+ <BEGIN><(?=xsl:)</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <SPAN_REGEXP HASH_CHAR="<" DELEGATE="XSLTAGS" TYPE="KEYWORD2">\r
+ <BEGIN><(?=/xsl:)</BEGIN>\r
+ <END>></END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- CDATA marked sections. Reuse common xml mode -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::CDATA">\r
+ <BEGIN><![CDATA[</BEGIN>\r
+ <END>]]></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD constructs. Reuse common xml mode -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- Entity references -->\r
+ <SPAN TYPE="LITERAL3" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <!-- Processing instructions -->\r
+ <SPAN TYPE="LITERAL3">\r
+ <BEGIN><?</BEGIN>\r
+ <END>?></END>\r
+ </SPAN>\r
+\r
+ <!-- Result elements and extension elements -->\r
+ <SPAN DELEGATE="TAGS" TYPE="MARKUP">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- XML comments -->\r
+ <RULES DEFAULT="COMMENT1" IGNORE_CASE="FALSE" SET="TASKS">\r
+ <!-- Default task names used in Task List -->\r
+ <KEYWORDS>\r
+ <COMMENT4>DEBUG:</COMMENT4>\r
+ <COMMENT4>DONE:</COMMENT4>\r
+ <COMMENT4>FIXME:</COMMENT4>\r
+ <COMMENT4>IDEA:</COMMENT4>\r
+ <COMMENT4>NOTE:</COMMENT4>\r
+ <COMMENT4>QUESTION:</COMMENT4>\r
+ <COMMENT4>TODO:</COMMENT4>\r
+ <COMMENT4>XXX</COMMENT4>\r
+ <COMMENT4>???</COMMENT4>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <!-- Result elements and extension elements -->\r
+ <RULES DEFAULT="MARKUP" HIGHLIGHT_DIGITS="FALSE" NO_WORD_SEP=".-_:" SET="TAGS">\r
+\r
+ <!-- Highlight all AVTs in result attribute values. -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="AVT">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="MARKUP" DELEGATE="AVT">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- Namespace declarations -->\r
+ <SEQ TYPE="OPERATOR">xmlns:</SEQ>\r
+ <!-- Default namespace declaration. Not really used in XSLT -->\r
+ <SEQ TYPE="OPERATOR">xmlns</SEQ>\r
+\r
+ <!-- Namespace prefixes -->\r
+ <MARK_PREVIOUS TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ </RULES>\r
+\r
+ <!-- AVTs -->\r
+ <RULES DEFAULT="KEYWORD3" HIGHLIGHT_DIGITS="FALSE" NO_WORD_SEP=".-_:" SET="AVT">\r
+\r
+ <!-- Literal curly braces ({}) must be written as {{ or }} -->\r
+ <SEQ>{{</SEQ>\r
+ <SEQ>}}</SEQ><!-- Does nothing. Is overridden by the SPAN below. -->\r
+\r
+ <!-- The AVT itself -->\r
+ <SPAN DELEGATE="XPATH" TYPE="OPERATOR">\r
+ <BEGIN>{</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+\r
+ <!-- Entity references -->\r
+ <SPAN TYPE="LITERAL3" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ </RULES>\r
+\r
+ <!-- XSLT tags -->\r
+ <RULES DEFAULT="KEYWORD2" HIGHLIGHT_DIGITS="FALSE" NO_WORD_SEP=".-_:" SET="XSLTAGS">\r
+\r
+ <!-- If we spot something that looks like an AVT, assume it is. Lazy, I know... -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="AVT">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="AVT">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- XSLT attributes that contains XPath expressions or match patterns -->\r
+ <!-- count -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="count" DELEGATE="XPATH">\r
+ <BEGIN>count[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="count" DELEGATE="XPATH">\r
+ <BEGIN>count[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- from -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="from" DELEGATE="XPATH">\r
+ <BEGIN>from[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="from" DELEGATE="XPATH">\r
+ <BEGIN>from[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- group-adjacent -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-adjacent" DELEGATE="XPATH">\r
+ <BEGIN>group-adjacent[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-adjacent" DELEGATE="XPATH">\r
+ <BEGIN>group-adjacent[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- group-by -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-by" DELEGATE="XPATH">\r
+ <BEGIN>group-by[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-by" DELEGATE="XPATH">\r
+ <BEGIN>group-by[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- group-ending-with -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-ending-with" DELEGATE="XPATH">\r
+ <BEGIN>group-ending-with[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-ending-with" DELEGATE="XPATH">\r
+ <BEGIN>group-ending-with[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- group-starting-with -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-starting-with" DELEGATE="XPATH">\r
+ <BEGIN>group-starting-with[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="group-starting-with" DELEGATE="XPATH">\r
+ <BEGIN>group-starting-with[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- match -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="match" DELEGATE="XPATH">\r
+ <BEGIN>match[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="match" DELEGATE="XPATH">\r
+ <BEGIN>match[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- select -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="select" DELEGATE="XPATH">\r
+ <BEGIN>select[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="select" DELEGATE="XPATH">\r
+ <BEGIN>select[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- test -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="test" DELEGATE="XPATH">\r
+ <BEGIN>test[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="test" DELEGATE="XPATH">\r
+ <BEGIN>test[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+ <!-- use -->\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="use" DELEGATE="XPATH">\r
+ <BEGIN>use[\p{Space}]*=[\p{Space}]*"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN_REGEXP>\r
+ <SPAN_REGEXP TYPE="KEYWORD2" HASH_CHAR="use" DELEGATE="XPATH">\r
+ <BEGIN>use[\p{Space}]*=[\p{Space}]*'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN_REGEXP>\r
+\r
+ <!-- Namespace declarations -->\r
+ <SEQ TYPE="OPERATOR">xmlns:</SEQ>\r
+ <!-- Default namespace declaration. Not really used in XSLT -->\r
+ <SEQ TYPE="OPERATOR">xmlns</SEQ>\r
+\r
+ <!-- Namespace prefixes -->\r
+ <MARK_PREVIOUS TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- XSLT 2.0 element names -->\r
+ <KEYWORDS>\r
+ <KEYWORD1>analyze-string</KEYWORD1>\r
+ <KEYWORD1>apply-imports</KEYWORD1>\r
+ <KEYWORD1>apply-templates</KEYWORD1>\r
+ <KEYWORD1>attribute</KEYWORD1>\r
+ <KEYWORD1>attribute-set</KEYWORD1>\r
+ <KEYWORD1>call-template</KEYWORD1>\r
+ <KEYWORD1>character-map</KEYWORD1>\r
+ <KEYWORD1>choose</KEYWORD1>\r
+ <KEYWORD1>comment</KEYWORD1>\r
+ <KEYWORD1>copy</KEYWORD1>\r
+ <KEYWORD1>copy-of</KEYWORD1>\r
+ <KEYWORD1>date-format</KEYWORD1>\r
+ <KEYWORD1>decimal-format</KEYWORD1>\r
+ <KEYWORD1>element</KEYWORD1>\r
+ <KEYWORD1>fallback</KEYWORD1>\r
+ <KEYWORD1>for-each</KEYWORD1>\r
+ <KEYWORD1>for-each-group</KEYWORD1>\r
+ <KEYWORD1>function</KEYWORD1>\r
+ <KEYWORD1>if</KEYWORD1>\r
+ <KEYWORD1>import</KEYWORD1>\r
+ <KEYWORD1>import-schema</KEYWORD1>\r
+ <KEYWORD1>include</KEYWORD1>\r
+ <KEYWORD1>key</KEYWORD1>\r
+ <KEYWORD1>matching-substring</KEYWORD1>\r
+ <KEYWORD1>message</KEYWORD1>\r
+ <KEYWORD1>namespace</KEYWORD1>\r
+ <KEYWORD1>namespace-alias</KEYWORD1>\r
+ <KEYWORD1>next-match</KEYWORD1>\r
+ <KEYWORD1>non-matching-substring</KEYWORD1>\r
+ <KEYWORD1>number</KEYWORD1>\r
+ <KEYWORD1>otherwise</KEYWORD1>\r
+ <KEYWORD1>output</KEYWORD1>\r
+ <KEYWORD1>output-character</KEYWORD1>\r
+ <KEYWORD1>param</KEYWORD1>\r
+ <KEYWORD1>preserve-space</KEYWORD1>\r
+ <KEYWORD1>processing-instruction</KEYWORD1>\r
+ <KEYWORD1>result-document</KEYWORD1>\r
+ <KEYWORD1>sequence</KEYWORD1>\r
+ <KEYWORD1>sort</KEYWORD1>\r
+ <KEYWORD1>sort-key</KEYWORD1>\r
+ <KEYWORD1>strip-space</KEYWORD1>\r
+ <KEYWORD1>stylesheet</KEYWORD1>\r
+ <KEYWORD1>template</KEYWORD1>\r
+ <KEYWORD1>text</KEYWORD1>\r
+ <KEYWORD1>transform</KEYWORD1>\r
+ <KEYWORD1>value-of</KEYWORD1>\r
+ <KEYWORD1>variable</KEYWORD1>\r
+ <KEYWORD1>when</KEYWORD1>\r
+ <KEYWORD1>with-param</KEYWORD1>\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <RULES DEFAULT="KEYWORD3" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="[\p{Digit}]+([\p{Punct}][\p{Digit}]+)?" NO_WORD_SEP=".-_" SET="XPATH">\r
+ <!-- String literals -->\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+ <SPAN TYPE="LITERAL1">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <!-- XPath comments -->\r
+ <SPAN TYPE="COMMENT2" DELEGATE="XPATHCOMMENT2">\r
+ <BEGIN>(:</BEGIN>\r
+ <END>:)</END>\r
+ </SPAN>\r
+\r
+ <!-- Axes specifiers -->\r
+ <MARK_PREVIOUS TYPE="KEYWORD4">::</MARK_PREVIOUS>\r
+ <!-- Abbreviated 'attribute::' -->\r
+ <SEQ TYPE="KEYWORD4">@</SEQ>\r
+\r
+ <!-- XPath 2.0 operators + some other stuff -->\r
+ <!-- Comparison expressions -->\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+ <SEQ TYPE="OPERATOR">!=</SEQ>\r
+ <SEQ TYPE="OPERATOR">></SEQ>\r
+ <SEQ TYPE="OPERATOR">&gt;</SEQ><!-- Treat as operator -->\r
+ <SEQ TYPE="OPERATOR">&lt;</SEQ><!-- Treat as operator -->\r
+ <!-- Optional occurrence indicator -->\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <!-- Addition operator, one-or-more occurrence indicator-->\r
+ <SEQ TYPE="OPERATOR">+</SEQ>\r
+ <!-- Multiplication operator, zero-or-more occurrence indicator, node test -->\r
+ <SEQ TYPE="OPERATOR">*</SEQ>\r
+ <!-- Path expression step separator -->\r
+ <SEQ TYPE="OPERATOR">/</SEQ>\r
+ <!-- Union operator -->\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <!-- Sequence expression item separator -->\r
+ <SEQ TYPE="OPERATOR">,</SEQ>\r
+\r
+ <!-- Predicates -->\r
+ <SPAN TYPE="OPERATOR" DELEGATE="XPATH">\r
+ <BEGIN>[</BEGIN>\r
+ <END>]</END>\r
+ </SPAN>\r
+\r
+ <!-- Entity references -->\r
+ <SPAN TYPE="LITERAL3" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+\r
+ <!-- Namespace prefixes -->\r
+ <MARK_PREVIOUS TYPE="LABEL">:</MARK_PREVIOUS>\r
+\r
+ <!-- Functions -->\r
+ <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
+ <SEQ TYPE="OPERATOR">)</SEQ>\r
+\r
+ <!-- Variables -->\r
+ <MARK_FOLLOWING TYPE="LITERAL2">$</MARK_FOLLOWING>\r
+ <!-- XPath 2.0 keywords + some other stuff -->\r
+ <KEYWORDS>\r
+ <!-- Keywords -->\r
+ <OPERATOR>and</OPERATOR>\r
+ <OPERATOR>as</OPERATOR>\r
+ <OPERATOR>castable</OPERATOR>\r
+ <OPERATOR>div</OPERATOR>\r
+ <OPERATOR>else</OPERATOR>\r
+ <OPERATOR>eq</OPERATOR>\r
+ <OPERATOR>every</OPERATOR>\r
+ <OPERATOR>except</OPERATOR>\r
+ <OPERATOR>for</OPERATOR>\r
+ <OPERATOR>ge</OPERATOR>\r
+ <OPERATOR>gt</OPERATOR>\r
+ <OPERATOR>idiv</OPERATOR>\r
+ <OPERATOR>if</OPERATOR>\r
+ <OPERATOR>in</OPERATOR>\r
+ <OPERATOR>instance</OPERATOR>\r
+ <OPERATOR>intersect</OPERATOR>\r
+ <OPERATOR>is</OPERATOR>\r
+ <OPERATOR>isnot</OPERATOR>\r
+ <OPERATOR>le</OPERATOR>\r
+ <OPERATOR>lt</OPERATOR>\r
+ <OPERATOR>mod</OPERATOR>\r
+ <OPERATOR>nillable</OPERATOR>\r
+ <OPERATOR>ne</OPERATOR>\r
+ <OPERATOR>of</OPERATOR>\r
+ <OPERATOR>or</OPERATOR>\r
+ <OPERATOR>return</OPERATOR>\r
+ <OPERATOR>satisfies</OPERATOR>\r
+ <OPERATOR>some</OPERATOR>\r
+ <OPERATOR>then</OPERATOR>\r
+ <OPERATOR>to</OPERATOR>\r
+ <OPERATOR>treat</OPERATOR>\r
+ <OPERATOR>union</OPERATOR>\r
+\r
+ <!-- Subtraction operator -->\r
+ <OPERATOR>-</OPERATOR>\r
+\r
+ </KEYWORDS>\r
+\r
+ </RULES>\r
+\r
+ <!-- XPath comments - top or nested within COMMENT3 -->\r
+ <RULES DEFAULT="COMMENT2" SET="XPATHCOMMENT2">\r
+ <SPAN TYPE="COMMENT3" DELEGATE="XPATHCOMMENT3">\r
+ <BEGIN>(:</BEGIN>\r
+ <END>:)</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- XPath comments - nested within COMMENT2 -->\r
+ <RULES DEFAULT="COMMENT3" SET="XPATHCOMMENT3">\r
+ <SPAN TYPE="COMMENT2" DELEGATE="XPATHCOMMENT2">\r
+ <BEGIN>(:</BEGIN>\r
+ <END>:)</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+</MODE>\r
--- /dev/null
+<?xml version="1.0"?>\r
+\r
+<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
+\r
+<!--\r
+<MODE NAME="zpt" FILE="zpt.xml"\r
+ FILE_NAME_GLOB="*.{pt,zpt}"/>\r
+-->\r
+\r
+<MODE>\r
+ <PROPS>\r
+ <PROPERTY NAME="commentStart" VALUE="<!--" />\r
+ <PROPERTY NAME="commentEnd" VALUE="-->" />\r
+ </PROPS>\r
+ <RULES IGNORE_CASE="TRUE">\r
+ <!-- SGML comment -->\r
+ <SPAN TYPE="COMMENT1">\r
+ <BEGIN><!--</BEGIN>\r
+ <END>--></END>\r
+ </SPAN>\r
+\r
+ <!-- JavaScript -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT">\r
+ <BEGIN><SCRIPT</BEGIN>\r
+ <END></SCRIPT></END>\r
+ </SPAN>\r
+\r
+ <!-- stylesheet -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="CSS">\r
+ <BEGIN><STYLE</BEGIN>\r
+ <END></STYLE></END>\r
+ </SPAN>\r
+\r
+ <!-- DTD instructions -->\r
+ <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">\r
+ <BEGIN><!</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- markup tags -->\r
+ <SPAN TYPE="MARKUP" DELEGATE="TAGS">\r
+ <BEGIN><</BEGIN>\r
+ <END>></END>\r
+ </SPAN>\r
+\r
+ <!-- SGML entities -->\r
+ <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">\r
+ <BEGIN>&</BEGIN>\r
+ <END>;</END>\r
+ </SPAN>\r
+ </RULES>\r
+\r
+ <!-- ESCAPE is not exactly right but it is needed to correctly\r
+ handle JavaScript in on* parameters -->\r
+ <RULES SET="TAGS" DEFAULT="MARKUP" ESCAPE="\">\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRIBUTE">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL1" DELEGATE="ATTRIBUTE">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SEQ TYPE="OPERATOR">=</SEQ>\r
+\r
+ <KEYWORDS>\r
+ <!-- TAL -->\r
+ <KEYWORD1>tal</KEYWORD1>\r
+ <KEYWORD3>attributes</KEYWORD3>\r
+ <KEYWORD3>define</KEYWORD3>\r
+ <KEYWORD3>condition</KEYWORD3>\r
+ <KEYWORD3>content</KEYWORD3>\r
+ <KEYWORD3>omit-tag</KEYWORD3>\r
+ <KEYWORD3>on-error</KEYWORD3>\r
+ <KEYWORD3>repeat</KEYWORD3>\r
+ <KEYWORD3>replace</KEYWORD3>\r
+\r
+ <!-- METAL -->\r
+ <KEYWORD1>metal</KEYWORD1>\r
+ <KEYWORD3>define-macro</KEYWORD3>\r
+ <KEYWORD3>define-slot</KEYWORD3>\r
+ <KEYWORD3>fill-slot</KEYWORD3>\r
+ <KEYWORD3>use-macro</KEYWORD3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="ATTRIBUTE" DEFAULT="LITERAL1">\r
+ <SEQ TYPE="OPERATOR">:</SEQ>\r
+ <SEQ TYPE="OPERATOR">;</SEQ>\r
+ <SEQ TYPE="OPERATOR">?</SEQ>\r
+ <SEQ TYPE="OPERATOR">|</SEQ>\r
+ <SEQ TYPE="LITERAL2">$$</SEQ>\r
+\r
+ <SPAN TYPE="LITERAL4">\r
+ <BEGIN>"</BEGIN>\r
+ <END>"</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="LITERAL4">\r
+ <BEGIN>'</BEGIN>\r
+ <END>'</END>\r
+ </SPAN>\r
+\r
+ <SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">\r
+ <BEGIN>${</BEGIN>\r
+ <END>}</END>\r
+ </SPAN>\r
+ <MARK_FOLLOWING TYPE="KEYWORD2">$</MARK_FOLLOWING>\r
+ <!-- highligh python expressions -->\r
+ <!--\r
+ <SEQ TYPE="LITERAL2" DELEGATE="python::MAIN"\r
+ AT_LINE_START="FALSE">python:</SEQ>\r
+ -->\r
+ <KEYWORDS>\r
+ <!-- TALES expression types -->\r
+ <KEYWORD4>exists</KEYWORD4>\r
+ <KEYWORD4>nocall</KEYWORD4>\r
+ <KEYWORD4>not</KEYWORD4>\r
+ <KEYWORD4>path</KEYWORD4>\r
+ <KEYWORD4>python</KEYWORD4>\r
+ <KEYWORD4>string</KEYWORD4>\r
+ <KEYWORD4>structure</KEYWORD4>\r
+\r
+ <!-- built-in TALES variables -->\r
+ <!-- NOTE: root, here, container, template, \r
+ request, user, and modules are optional -->\r
+ <LITERAL3>CONTEXTS</LITERAL3>\r
+ <LITERAL3>attrs</LITERAL3>\r
+ <LITERAL3>container</LITERAL3>\r
+ <LITERAL3>default</LITERAL3>\r
+ <LITERAL3>here</LITERAL3>\r
+ <LITERAL3>modules</LITERAL3>\r
+ <LITERAL3>nothing</LITERAL3>\r
+ <LITERAL3>options</LITERAL3>\r
+ <LITERAL3>repeat</LITERAL3>\r
+ <LITERAL3>request</LITERAL3>\r
+ <LITERAL3>root</LITERAL3>\r
+ <LITERAL3>template</LITERAL3>\r
+ <LITERAL3>user</LITERAL3>\r
+\r
+ <!-- repeat variable attributes -->\r
+ <LITERAL3>index</LITERAL3>\r
+ <LITERAL3>number</LITERAL3>\r
+ <LITERAL3>even</LITERAL3>\r
+ <LITERAL3>odd</LITERAL3>\r
+ <LITERAL3>start</LITERAL3>\r
+ <LITERAL3>end</LITERAL3>\r
+ <LITERAL3>first</LITERAL3>\r
+ <LITERAL3>last</LITERAL3>\r
+ <LITERAL3>length</LITERAL3>\r
+ <LITERAL3>letter</LITERAL3>\r
+ <LITERAL3>Letter</LITERAL3>\r
+ <LITERAL3>roman</LITERAL3>\r
+ <LITERAL3>Roman</LITERAL3>\r
+ </KEYWORDS>\r
+ </RULES>\r
+\r
+ <RULES SET="JAVASCRIPT" DEFAULT="MARKUP" IGNORE_CASE="TRUE">\r
+ <SEQ TYPE="MARKUP" DELEGATE="javascript::MAIN">></SEQ>\r
+ <SEQ TYPE="MARKUP" DELEGATE="BACK_TO_HTML">SRC=</SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="BACK_TO_HTML" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="zpt::MAIN">></SEQ>\r
+ </RULES>\r
+\r
+ <RULES SET="CSS" DEFAULT="MARKUP">\r
+ <SEQ TYPE="MARKUP" DELEGATE="css::MAIN">></SEQ>\r
+ </RULES>\r
+</MODE>\r
+\r
--- /dev/null
+IN: temporary
+USING: xmode.rules tools.test ;
+
+[ { 1 2 3 } ] [ f { 1 2 3 } ?push-all ] unit-test
+[ { 1 2 3 } ] [ { 1 2 3 } f ?push-all ] unit-test
+[ V{ 1 2 3 4 5 } ] [ { 1 2 3 } { 4 5 } ?push-all ] unit-test
--- /dev/null
+USING: xmode.tokens xmode.keyword-map kernel
+sequences vectors assocs strings memoize regexp ;
+IN: xmode.rules
+
+TUPLE: string-matcher string ignore-case? ;
+
+C: <string-matcher> string-matcher
+
+! Based on org.gjt.sp.jedit.syntax.ParserRuleSet
+TUPLE: rule-set
+name
+props
+keywords
+rules
+imports
+terminate-char
+ignore-case?
+default
+escape-rule
+highlight-digits?
+digit-re
+no-word-sep
+finalized?
+;
+
+: init-rule-set ( ruleset -- )
+ #! Call after constructor.
+ >r H{ } clone H{ } clone V{ } clone r>
+ {
+ set-rule-set-rules
+ set-rule-set-props
+ set-rule-set-imports
+ } set-slots ;
+
+: <rule-set> ( -- ruleset )
+ rule-set construct-empty dup init-rule-set ;
+
+MEMO: standard-rule-set ( id -- ruleset )
+ <rule-set> [ set-rule-set-default ] keep ;
+
+: import-rule-set ( import ruleset -- )
+ rule-set-imports push ;
+
+: inverted-index ( hashes key index -- )
+ [ swapd [ ?push ] change-at ] 2curry each ;
+
+: ?push-all ( seq1 seq2 -- seq1+seq2 )
+ [
+ over [ >r V{ } like r> over push-all ] [ nip ] if
+ ] when* ;
+
+: rule-set-no-word-sep* ( ruleset -- str )
+ dup rule-set-no-word-sep
+ swap rule-set-keywords dup [ keyword-map-no-word-sep* ] when
+ "_" 3append ;
+
+! Match restrictions
+TUPLE: matcher text at-line-start? at-whitespace-end? at-word-start? ;
+
+C: <matcher> matcher
+
+! Based on org.gjt.sp.jedit.syntax.ParserRule
+TUPLE: rule
+no-line-break?
+no-word-break?
+no-escape?
+start
+end
+match-token
+body-token
+delegate
+chars
+;
+
+: construct-rule ( class -- rule )
+ >r rule construct-empty r> construct-delegate ; inline
+
+TUPLE: seq-rule ;
+
+TUPLE: span-rule ;
+
+TUPLE: eol-span-rule ;
+
+: init-span ( rule -- )
+ dup rule-delegate [ drop ] [
+ dup rule-body-token standard-rule-set
+ swap set-rule-delegate
+ ] if ;
+
+: init-eol-span ( rule -- )
+ dup init-span
+ t swap set-rule-no-line-break? ;
+
+TUPLE: mark-following-rule ;
+
+TUPLE: mark-previous-rule ;
+
+TUPLE: escape-rule ;
+
+: <escape-rule> ( string -- rule )
+ f <string-matcher> f f f <matcher>
+ escape-rule construct-rule
+ [ set-rule-start ] keep ;
+
+GENERIC: text-hash-char ( text -- ch )
+
+M: f text-hash-char ;
+
+M: string-matcher text-hash-char string-matcher-string first ;
+
+M: regexp text-hash-char drop f ;
+
+: rule-chars* ( rule -- string )
+ dup rule-chars
+ swap rule-start matcher-text
+ text-hash-char [ add ] when* ;
+
+: add-rule ( rule ruleset -- )
+ >r dup rule-chars* >upper swap
+ r> rule-set-rules inverted-index ;
+
+: add-escape-rule ( string ruleset -- )
+ over [
+ >r <escape-rule> r>
+ 2dup set-rule-set-escape-rule
+ add-rule
+ ] [
+ 2drop
+ ] if ;
--- /dev/null
+Syntax highlighting engine using jEdit mode files
--- /dev/null
+USING: parser words sequences namespaces kernel assocs ;
+IN: xmode.tokens
+
+! Based on org.gjt.sp.jedit.syntax.Token
+SYMBOL: tokens
+
+: string>token ( string -- id ) tokens get at ;
+
+: TOKENS:
+ ";" parse-tokens [
+ create-in dup define-symbol
+ dup word-name swap
+ ] H{ } map>assoc tokens set-global ; parsing
+
+TOKENS: COMMENT1 COMMENT2 COMMENT3 COMMENT4 DIGIT FUNCTION
+INVALID KEYWORD1 KEYWORD2 KEYWORD3 KEYWORD4 LABEL LITERAL1
+LITERAL2 LITERAL3 LITERAL4 MARKUP OPERATOR END NULL ;
+
+TUPLE: token str id ;
+
+C: <token> token
--- /dev/null
+<company type="public"><employee name="Joe">VP Sales</employee><employee name="Jane">CFO</employee></company>
--- /dev/null
+IN: temporary
+USING: xmode.utilities tools.test xml xml.data
+kernel strings vectors sequences io.files prettyprint assocs ;
+
+[ "hi" 3 ] [
+ { 1 2 3 4 5 6 7 8 } [ H{ { 3 "hi" } } at ] map-find
+] unit-test
+
+[ f f ] [
+ { 1 2 3 4 5 6 7 8 } [ H{ { 11 "hi" } } at ] map-find
+] unit-test
+
+TUPLE: company employees type ;
+
+: <company> V{ } clone f company construct-boa ;
+
+: add-employee company-employees push ;
+
+<TAGS: parse-employee-tag
+
+TUPLE: employee name description ;
+
+TAG: employee
+ employee construct-empty
+ { { "name" f set-employee-name } { f set-employee-description } }
+ init-from-tag swap add-employee ;
+
+TAGS>
+
+\ parse-employee-tag see
+
+: parse-company-tag
+ [
+ <company>
+ { { "type" >upper set-company-type } }
+ init-from-tag dup
+ ] keep
+ tag-children [ tag? ] subset
+ [ parse-employee-tag ] curry* each ;
+
+[
+ T{ company f
+ V{
+ T{ employee f "Joe" "VP Sales" }
+ T{ employee f "Jane" "CFO" }
+ }
+ "PUBLIC"
+ "This is a great company"
+ }
+] [
+ "extra/xmode/utilities/test.xml"
+ resource-path <file-reader> read-xml parse-company-tag
+] unit-test
--- /dev/null
+USING: sequences assocs kernel quotations namespaces xml.data
+xml.utilities combinators macros parser words ;
+IN: xmode.utilities
+
+: implies >r not r> or ; inline
+
+: child-tags ( tag -- seq ) tag-children [ tag? ] subset ;
+
+: map-find ( seq quot -- result elt )
+ f -rot
+ [ nip ] swap [ dup ] 3compose find
+ >r [ drop f ] unless r> ; inline
+
+: tag-init-form ( spec -- quot )
+ {
+ { [ dup quotation? ] [ [ object get tag get ] swap compose ] }
+ { [ dup length 2 = ] [
+ first2 [
+ >r >r tag get children>string
+ r> [ execute ] when* object get r> execute
+ ] 2curry
+ ] }
+ { [ dup length 3 = ] [
+ first3 [
+ >r >r tag get at
+ r> [ execute ] when* object get r> execute
+ ] 3curry
+ ] }
+ } cond ;
+
+: with-tag-initializer ( tag obj quot -- )
+ [ object set tag set ] swap compose with-scope ; inline
+
+MACRO: (init-from-tag) ( specs -- )
+ [ tag-init-form ] map concat [ ] like
+ [ with-tag-initializer ] curry ;
+
+: init-from-tag ( tag tuple specs -- tuple )
+ over >r (init-from-tag) r> ; inline
+
+SYMBOL: tag-handlers
+SYMBOL: tag-handler-word
+
+: <TAGS:
+ CREATE tag-handler-word set
+ H{ } clone tag-handlers set ; parsing
+
+: (TAG:) swap tag-handlers get set-at ;
+
+: TAG:
+ f set-word
+ scan parse-definition
+ (TAG:) ; parsing
+
+: TAGS>
+ tag-handler-word get
+ tag-handlers get >alist [ >r dup name-tag r> case ] curry
+ define-compound ; parsing
--- /dev/null
+<!-- Syntax tokens -->\r
+<!ENTITY % token_values "NULL | COMMENT1 | COMMENT2 | COMMENT3 | COMMENT4 |\r
+ DIGIT | FUNCTION | INVALID | KEYWORD1 | KEYWORD2 | KEYWORD3 | KEYWORD4 |\r
+ LABEL | LITERAL1 | LITERAL2 | LITERAL3 | LITERAL4 | MARKUP | OPERATOR" >\r
+<!ENTITY % tokens "( %token_values; )" >\r
+\r
+<!-- Entities for attributes shared by multiple rules -->\r
+<!ENTITY % att-bool '( TRUE | FALSE ) #IMPLIED' >\r
+<!ENTITY % att-type 'TYPE %tokens; #IMPLIED' >\r
+<!ENTITY % att-position-mix 'AT_LINE_START %att-bool;\r
+ AT_WHITESPACE_END %att-bool;\r
+ AT_WORD_START %att-bool; ' >\r
+<!ENTITY % att-match-type 'MATCH_TYPE ( %token_values; | CONTEXT | RULE ) #IMPLIED' >\r
+<!ENTITY % att-delegate 'DELEGATE CDATA #IMPLIED' >\r
+<!ENTITY % att-span-mix 'NO_LINE_BREAK %att-bool;\r
+ NO_WORD_BREAK %att-bool;\r
+ NO_ESCAPE %att-bool; '>\r
+<!ENTITY % att-hash-char 'HASH_CHAR CDATA #IMPLIED\r
+ HASH_CHARS CDATA #IMPLIED' >\r
+\r
+<!-- MODE element -->\r
+<!ELEMENT MODE ( PROPS?, RULES* ) >\r
+\r
+<!-- MODE children -->\r
+<!-- PROPS element -->\r
+<!ELEMENT PROPS ( PROPERTY+ ) >\r
+\r
+<!-- PROPS children -->\r
+<!ELEMENT PROPERTY EMPTY >\r
+<!ATTLIST PROPERTY\r
+ NAME CDATA #REQUIRED\r
+ VALUE CDATA #REQUIRED >\r
+\r
+<!-- RULES element -->\r
+<!ELEMENT RULES ( PROPS?, ( IMPORT | TERMINATE | SEQ | SEQ_REGEXP | SPAN\r
+ | SPAN_REGEXP | EOL_SPAN | EOL_SPAN_REGEXP | MARK_PREVIOUS\r
+ | MARK_FOLLOWING )*, KEYWORDS? ) >\r
+\r
+<!-- RULES attributes -->\r
+<!ATTLIST RULES\r
+ SET CDATA #IMPLIED\r
+ IGNORE_CASE %att-bool;\r
+ HIGHLIGHT_DIGITS %att-bool;\r
+ DIGIT_RE CDATA #IMPLIED\r
+ ESCAPE CDATA #IMPLIED\r
+ DEFAULT %tokens; #IMPLIED\r
+ NO_WORD_SEP CDATA #IMPLIED >\r
+\r
+<!-- IMPORT element -->\r
+<!ELEMENT IMPORT EMPTY >\r
+<!ATTLIST IMPORT DELEGATE CDATA #REQUIRED >\r
+\r
+<!-- TERMINATE element -->\r
+<!ELEMENT TERMINATE EMPTY >\r
+<!ATTLIST TERMINATE AT_CHAR CDATA #REQUIRED >\r
+\r
+<!-- SEQ element -->\r
+<!ELEMENT SEQ ( #PCDATA ) >\r
+\r
+<!-- SEQ attributes -->\r
+<!ATTLIST SEQ\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-delegate; >\r
+\r
+<!-- SEQ_REGEXP element -->\r
+<!ELEMENT SEQ_REGEXP ( #PCDATA ) >\r
+\r
+<!-- SEQ_REGEXP attributes -->\r
+<!ATTLIST SEQ_REGEXP\r
+ %att-hash-char;\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-delegate; >\r
+\r
+<!-- SPAN element -->\r
+<!ELEMENT SPAN ( BEGIN, END ) >\r
+\r
+<!-- SPAN attributes -->\r
+<!ATTLIST SPAN\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-span-mix;\r
+ %att-match-type;\r
+ %att-delegate; >\r
+\r
+<!-- SPAN_REGEXP element -->\r
+<!ELEMENT SPAN_REGEXP ( BEGIN, END ) >\r
+\r
+<!-- SPAN_REGEXP attributes -->\r
+<!ATTLIST SPAN_REGEXP\r
+ %att-hash-char;\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-span-mix;\r
+ %att-match-type;\r
+ %att-delegate; >\r
+\r
+<!-- SPAN and SPAN_REGEXP children -->\r
+<!ELEMENT BEGIN ( #PCDATA ) >\r
+<!ATTLIST BEGIN %att-position-mix; >\r
+<!ELEMENT END ( #PCDATA ) >\r
+<!ATTLIST END %att-position-mix; >\r
+\r
+<!-- EOL_SPAN element -->\r
+<!ELEMENT EOL_SPAN ( #PCDATA ) >\r
+\r
+<!-- EOL_SPAN attributes -->\r
+<!ATTLIST EOL_SPAN\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-match-type;\r
+ %att-delegate; >\r
+\r
+<!-- EOL_SPAN_REGEXP element -->\r
+<!ELEMENT EOL_SPAN_REGEXP ( #PCDATA ) >\r
+\r
+<!-- EOL_SPAN_REGEXP attributes -->\r
+<!ATTLIST EOL_SPAN_REGEXP\r
+ %att-hash-char;\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-match-type;\r
+ %att-delegate; >\r
+\r
+<!-- MARK_FOLLOWING element -->\r
+<!ELEMENT MARK_FOLLOWING ( #PCDATA ) >\r
+\r
+<!-- MARK_FOLLOWING attributes -->\r
+<!ATTLIST MARK_FOLLOWING\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-match-type; >\r
+\r
+<!-- MARK_PREVIOUS element -->\r
+<!ELEMENT MARK_PREVIOUS ( #PCDATA ) >\r
+\r
+<!-- MARK_PREVIOUS attributes -->\r
+<!ATTLIST MARK_PREVIOUS\r
+ %att-type;\r
+ %att-position-mix;\r
+ %att-match-type; >\r
+\r
+<!-- KEYWORDS element -->\r
+<!ELEMENT KEYWORDS (%tokens;)+ >\r
+\r
+<!-- KEYWORDS children -->\r
+<!ELEMENT COMMENT1 ( #PCDATA ) >\r
+<!ELEMENT COMMENT2 ( #PCDATA ) >\r
+<!ELEMENT COMMENT3 ( #PCDATA ) >\r
+<!ELEMENT COMMENT4 ( #PCDATA ) >\r
+<!ELEMENT DIGIT ( #PCDATA ) >\r
+<!ELEMENT FUNCTION ( #PCDATA ) >\r
+<!ELEMENT KEYWORD1 ( #PCDATA ) >\r
+<!ELEMENT KEYWORD2 ( #PCDATA ) >\r
+<!ELEMENT KEYWORD3 ( #PCDATA ) >\r
+<!ELEMENT KEYWORD4 ( #PCDATA ) >\r
+<!ELEMENT LABEL ( #PCDATA ) >\r
+<!ELEMENT LITERAL1 ( #PCDATA ) >\r
+<!ELEMENT LITERAL2 ( #PCDATA ) >\r
+<!ELEMENT LITERAL3 ( #PCDATA ) >\r
+<!ELEMENT LITERAL4 ( #PCDATA ) >\r
+<!ELEMENT MARKUP ( #PCDATA ) >\r
+<!ELEMENT NULL ( #PCDATA ) >\r
+<!ELEMENT OPERATOR ( #PCDATA ) >\r
+<!ELEMENT INVALID ( #PCDATA ) >\r
}
check_gcc_version() {
+ echo -n "Checking gcc version..."
GCC_VERSION=`gcc --version`
+ check_ret gcc
if [[ $GCC_VERSION == *3.3.* ]] ; then
+ echo "bad!"
echo "You have a known buggy version of gcc (3.3)"
echo "Install gcc 3.4 or higher and try again."
exit 3
fi
+ echo "ok."
}
check_installed_programs() {
check_library_exists() {
GCC_TEST=factor-library-test.c
GCC_OUT=factor-library-test.out
- echo "Checking for library $1"
+ echo -n "Checking for library $1..."
echo "int main(){return 0;}" > $GCC_TEST
gcc $GCC_TEST -o $GCC_OUT -l $1
if [[ $? -ne 0 ]] ; then
+ echo "not found!"
echo "Warning: library $1 not found."
echo "***Factor will compile NO_UI=1"
NO_UI=1
fi
rm -f $GCC_TEST
+ check_ret rm
rm -f $GCC_OUT
+ check_ret rm
+ echo "found."
}
check_X11_libraries() {
}
find_os() {
+ echo "Finding OS..."
uname_s=`uname -s`
+ check_ret uname
case $uname_s in
CYGWIN_NT-5.2-WOW64) OS=windows-nt;;
*CYGWIN_NT*) OS=windows-nt;;
}
find_architecture() {
+ echo "Finding ARCH..."
uname_m=`uname -m`
+ check_ret uname
case $uname_m in
i386) ARCH=x86;;
i686) ARCH=x86;;
*86) ARCH=x86;;
+ *86_64) ARCH=x86;;
"Power Macintosh") ARCH=ppc;;
esac
}
}
find_word_size() {
+ echo "Finding WORD..."
C_WORD=factor-word-size
write_test_program
gcc -o $C_WORD $C_WORD.c
echo FACTOR_BINARY=$FACTOR_BINARY
echo MAKE_TARGET=$MAKE_TARGET
echo BOOT_IMAGE=$BOOT_IMAGE
+ echo MAKE_IMAGE_TARGET=$MAKE_IMAGE_TARGET
}
set_build_info() {
if ! [[ -n $OS && -n $ARCH && -n $WORD ]] ; then
+ echo "OS: $OS"
+ echo "ARCH: $ARCH"
+ echo "WORD: $WORD"
echo "OS, ARCH, or WORD is empty. Please report this"
exit 5
fi
MAKE_TARGET=$OS-$ARCH-$WORD
+ MAKE_IMAGE_TARGET=$ARCH.$WORD
BOOT_IMAGE=boot.$ARCH.$WORD.image
if [[ $OS == macosx && $ARCH == ppc ]] ; then
+ MAKE_IMAGE_TARGET=$OS-$ARCH
MAKE_TARGET=$OS-$ARCH
BOOT_IMAGE=boot.macosx-ppc.image
fi
+ if [[ $OS == linux && $ARCH == ppc ]] ; then
+ MAKE_IMAGE_TARGET=$OS-$ARCH
+ MAKE_TARGET=$OS-$ARCH
+ BOOT_IMAGE=boot.linux-ppc.image
+ fi
}
find_build_info() {
}
git_pull_factorcode() {
+ echo "Updating the git repository from factorcode.org..."
git pull git://factorcode.org/git/factor.git
check_ret git
}
maybe_download_dlls() {
if [[ $OS == windows-nt ]] ; then
wget http://factorcode.org/dlls/freetype6.dll
- check_ret
+ check_ret wget
wget http://factorcode.org/dlls/zlib1.dll
- check_ret
+ check_ret wget
chmod 777 *.dll
- check_ret
+ check_ret chmod
fi
}
}
usage() {
- echo "usage: $0 install|update"
+ echo "usage: $0 install|install-x11|update|quick-update"
}
install() {
git_pull_factorcode
make_clean
make_factor
+}
+
+update_bootstrap() {
delete_boot_images
get_boot_image
bootstrap
}
+refresh_image() {
+ ./$FACTOR_BINARY -script -e="refresh-all save 0 USE: system exit"
+ check_ret factor
+}
+
+make_boot_image() {
+ ./$FACTOR_BINARY -script -e="\"$MAKE_IMAGE_TARGET\" USE: bootstrap.image make-image save 0 USE: system exit"
+ check_ret factor
+
+}
+
+install_libraries() {
+ sudo apt-get install libc6-dev libfreetype6-dev libx11-dev xorg-dev glutg3-dev wget git-core git-doc rlwrap
+}
+
case "$1" in
install) install ;;
- update) update ;;
+ install-x11) install_libraries; install ;;
+ self-update) update; make_boot_image; bootstrap;;
+ quick-update) update; refresh_image ;;
+ update) update; update_bootstrap ;;
*) usage ;;
esac
+source misc/version.sh
+
TARGET=$1
-if [ "$TARGET" = "x86" ]; then
+if [ "$1" = "x86" ]; then
CPU="x86.32"
+ TARGET=macosx-x86-32
else
- CPU="ppc"
+ CPU="macosx-ppc"
+ TARGET=macosx-ppc
fi
-make macosx-$TARGET
-Factor.app/Contents/MacOS/factor -i=boot.$CPU.image -no-user-init
+BOOT_IMAGE=boot.$CPU.image
+wget http://factorcode.org/images/$VERSION/$BOOT_IMAGE
+
+make $TARGET
+Factor.app/Contents/MacOS/factor -i=$BOOT_IMAGE -no-user-init
-VERSION=0.91
DISK_IMAGE_DIR=Factor-$VERSION
DISK_IMAGE=Factor-$VERSION-$TARGET.dmg
-exec ./cp_dir {} $DISK_IMAGE_DIR/Factor/{} \;
hdiutil create -srcfolder "$DISK_IMAGE_DIR" -fs HFS+ \
-volname "$DISK_IMAGE_DIR" "$DISK_IMAGE"
+
+ssh linode mkdir -p w/downloads/$VERSION/
+scp $DISK_IMAGE linode:w/downloads/$VERSION/
--- /dev/null
+source misc/version.sh
+rm -rf .git
+cd ..
+tar cfz Factor-$VERSION.tar.gz factor/
+
+ssh linode mkdir -p w/downloads/$VERSION/
+scp Factor-$VERSION.tar.gz linode:w/downloads/$VERSION/
--- /dev/null
+export VERSION=0.92
+source misc/version.sh
+
CPU=$1
-VERSION=0.91
if [ "$CPU" = "x86" ]; then
FLAGS="-no-sse2"
fi
make windows-nt-x86
+
+wget http://factorcode.org/dlls/freetype6.dll
+wget http://factorcode.org/dlls/zlib1.dll
+wget http://factorcode.org/images/$VERSION/boot.x86.32.image
+
CMD="./factor-nt -i=boot.x86.32.image -no-user-init $FLAGS"
echo $CMD
$CMD
+rm -rf .git/
rm -rf Factor.app/
rm -rf vm/
rm -f Makefile
rm -f cp_dir
rm -f boot.*.image
+FILE=Factor-$VERSION-win32-$CPU.zip
+
cd ..
-zip -r Factor-$VERSION-win32-$CPU.zip Factor/
+zip -r $FILE Factor/
+
+ssh linode mkdir -p w/downloads/$VERSION/
+scp $FILE linode:w/downloads/$VERSION/
+++ /dev/null
-! Copyright (C) 2007 Doug Coleman.
-! See http://factorcode.org/license.txt for BSD license.
-
-USING: arrays calendar concurrency generic kernel math
-namespaces sequences threads ;
-IN: alarms-internals
-
-! for now a V{ }, eventually a min-heap to store alarms
-SYMBOL: alarms
-SYMBOL: alarm-receiver
-SYMBOL: alarm-looper
-
-TUPLE: alarm time quot ;
-
-: add-alarm ( alarm -- )
- alarms get-global push ;
-
-: remove-alarm ( alarm -- )
- alarms get-global remove alarms set-global ;
-
-: handle-alarm ( alarm -- )
- dup delegate {
- { "register" [ add-alarm ] }
- { "unregister" [ remove-alarm ] }
- } case ;
-
-: expired-alarms ( -- seq )
- now alarms get-global
- [ alarm-time compare-timestamps 0 > ] subset-with ;
-
-: unexpired-alarms ( -- seq )
- now alarms get-global
- [ alarm-time compare-timestamps 0 <= ] subset-with ;
-
-: call-alarm ( alarm -- )
- alarm-quot spawn drop ;
-
-: do-alarms ( -- )
- alarms get-global expired-alarms
- [ call-alarm ] each
- unexpired-alarms alarms set-global ;
-
-: alarm-receive-loop ( -- )
- receive dup alarm? [ handle-alarm ] [ drop ] if
- alarm-receive-loop ;
-
-: start-alarm-receiver ( -- )
- [
- alarm-receive-loop
- ] spawn alarm-receiver set-global ;
-
-: alarm-loop ( -- )
- alarms get-global empty? [
- do-alarms
- ] unless 100 sleep alarm-loop ;
-
-: start-alarm-looper ( -- )
- [
- alarm-loop
- ] spawn alarm-looper set-global ;
-
-: send-alarm ( alarm -- )
- over set-delegate
- alarm-receiver get-global send ;
-
-: start-alarm-daemon ( -- process )
- alarms get-global [
- V{ } clone alarms set-global
- start-alarm-looper
- start-alarm-receiver
- ] unless ;
-
-start-alarm-daemon
-
-IN: alarms
-
-: register-alarm ( alarm -- )
- "register" send-alarm ;
-
-: unregister-alarm ( alarm -- )
- "unregister" send-alarm ;
-
-: change-alarm ( alarm-old alarm-new -- )
- "register" send-alarm
- "unregister" send-alarm ;
-
-
-! Example:
-! now 5 seconds +dt [ "hi" print flush ] <alarm> register-alarm
+++ /dev/null
-REQUIRES: libs/calendar libs/concurrency ;
-PROVIDE: libs/alarms
-{ +files+ {
- "alarms.factor"
-} } ;
+++ /dev/null
-REQUIRES: libs/lazy-lists libs/null-stream libs/shuffle ;
-PROVIDE: apps/random-tester
-{ +files+ {
- "utils.factor"
- "random.factor"
- "random-tester.factor"
- "random-tester2.factor"
- "type.factor"
-} } ;
+++ /dev/null
-USING: kernel math math-internals memory sequences namespaces errors
-assocs words arrays parser compiler syntax io
-quotations tools prettyprint optimizer inference ;
-IN: random-tester
-
-! n-foo>bar -- list of words of type 'foo' that take n parameters
-! and output a 'bar'
-
-
-! Math vocabulary words
-: 1-x>y
- {
- 1+ 1- >bignum >digit >fixnum abs absq arg
- bitnot bits>double bits>float ceiling cis conjugate cos cosec cosech
- cosh cot coth denominator double>bits exp float>bits floor imaginary
- log neg numerator real sec ! next-power-of-2
- sech sgn sin sinh sq sqrt tan tanh truncate
- } ;
-
-: 1-x>y-throws
- {
- recip log2
- asec asech acot acoth acosec acosech acos acosh asin asinh atan atanh
- } ;
-
-: 2-x>y ( -- seq ) { * + - /f max min polar> bitand bitor bitxor align } ;
-: 2-x>y-throws ( -- seq ) { / /i mod rem } ;
-
-: 1-integer>x
- {
- 1+ 1- >bignum >digit >fixnum abs absq arg
- bitnot bits>double bits>float ceiling cis conjugate cos cosec cosech
- cosh cot coth denominator exp floor imaginary
- log neg next-power-of-2 numerator real sec
- sech sgn sin sinh sq sqrt tan tanh truncate
- } ;
-
-: 1-ratio>x
- {
- 1+ 1- >bignum >digit >fixnum abs absq arg ceiling
- cis conjugate cos cosec cosech
- cosh cot coth exp floor imaginary
- log neg next-power-of-2 real sec
- sech sgn sin sinh sq sqrt tan tanh truncate
- } ;
-
-: 1-float>x ( -- seq )
- {
- 1+ 1- >bignum >digit >fixnum abs absq arg
- ceiling cis conjugate cos cosec cosech
- cosh cot coth double>bits exp float>bits floor imaginary
- log neg real sec ! next-power-of-2
- sech sgn sin sinh sq sqrt tan tanh truncate
- } ;
-
-: 1-complex>x
- {
- 1+ 1- abs absq arg conjugate cos cosec cosech
- cosh cot coth exp imaginary log neg real
- sec sech sin sinh sq sqrt tan tanh
- } ;
-
-: 1-integer>x-throws
- {
- recip log2
- asec asech acot acoth acosec acosech acos acosh asin asinh atan atanh
- } ;
-
-: 1-ratio>x-throws
- {
- recip
- asec asech acot acoth acosec acosech acos acosh asin asinh atan atanh
- } ;
-
-: 1-integer>integer
- {
- 1+ 1- >bignum >digit >fixnum abs absq bitnot ceiling conjugate
- denominator floor imaginary
- neg next-power-of-2 numerator real sgn sq truncate
- } ;
-
-: 1-ratio>ratio
- { 1+ 1- >digit abs absq conjugate neg real sq } ;
-
-: 1-float>float
- {
- 1+ 1- >digit abs absq arg ceiling
- conjugate exp floor neg real sq truncate
- } ;
-
-: 1-complex>complex
- {
- 1+ 1- abs absq arg conjugate cosec cosech cosh cot coth exp log
- neg sech sin sinh sq sqrt tanh
- } ;
-
-: 2-integer>x { * + - /f max min polar> bitand bitor bitxor align } ;
-: 2-ratio>x { * + - /f max min polar> } ;
-: 2-float>x { float+ float- float* float/f + - * /f max min polar> } ;
-: 2-complex>x { * + - /f } ;
-
-: 2-integer>integer { * + - max min bitand bitor bitxor align } ;
-: 2-ratio>ratio { * + - max min } ;
-: 2-float>float { float* float+ float- float/f max min /f + - } ;
-: 2-complex>complex { * + - /f } ;
-
-
-SYMBOL: last-quot
-SYMBOL: first-arg
-SYMBOL: second-arg
-: 0-runtime-check ( quot -- )
- #! Checks the runtime only, not the compiler
- #! Evaluates the quotation twice and makes sure the results agree
- [ last-quot set ] keep
- [ call ] keep
- call
- ! 2dup swap unparse write " " write unparse print flush
- = [ last-quot get . "problem in runtime" throw ] unless ;
-
-: 1-runtime-check ( quot -- )
- #! Checks the runtime only, not the compiler
- #! Evaluates the quotation twice and makes sure the results agree
- #! For quotations that are given one argument
- [ last-quot set first-arg set ] 2keep
- [ call ] 2keep
- call
- 2dup swap unparse write " " write unparse print flush
- = [ "problem in runtime" throw ] unless ;
-
-: 1-interpreted-vs-compiled-check ( x quot -- )
- #! Checks the runtime output vs the compiler output
- #! quot: ( x -- y )
- 2dup swap unparse write " " write . flush
- [ last-quot set first-arg set ] 2keep
- [ call ] 2keep compile-1
- 2dup swap unparse write " " write unparse print flush
- = [ "problem in math1" throw ] unless ;
-
-: 2-interpreted-vs-compiled-check ( x y quot -- )
- #! Checks the runtime output vs the compiler output
- #! quot: ( x y -- z )
- .s flush
- [ last-quot set first-arg set second-arg set ] 3keep
- [ call ] 3keep compile-1
- 2dup swap unparse write " " write unparse print flush
- = [ "problem in math2" throw ] unless ;
-
-: 0-interpreted-vs-compiled-check-catch ( quot -- )
- #! Check the runtime output vs the compiler output for words that throw
- #!
- dup .
- [ last-quot set ] keep
- [ catch [ "caught: " write dup print-error ] when* ] keep
- [ compile-1 ] catch [ nip "caught: " write dup print-error ] when*
- = [ "problem in math3" throw ] unless ;
-
-: 1-interpreted-vs-compiled-check-catch ( quot -- )
- #! Check the runtime output vs the compiler output for words that throw
- 2dup swap unparse write " " write .
- ! "." write
- [ last-quot set first-arg set ] 2keep
- [ catch [ nip "caught: " write dup print-error ] when* ] 2keep
- [ compile-1 ] catch [ 2nip "caught: " write dup print-error ] when*
- = [ "problem in math4" throw ] unless ;
-
-: 2-interpreted-vs-compiled-check-catch ( quot -- )
- #! Check the runtime output vs the compiler output for words that throw
- ! 3dup rot unparse write " " write swap unparse write " " write .
- "." write
- [ last-quot set first-arg set second-arg set ] 3keep
- [ catch [ 2nip "caught: " write dup print-error ] when* ] 3keep
- [ compile-1 ] catch [ 2nip nip "caught: " write dup print-error ] when*
- = [ "problem in math5" throw ] unless ;
-
-
-! RANDOM QUOTATIONS TO TEST
-: random-1-integer>x-quot ( -- quot ) 1-integer>x random 1quotation ;
-: random-1-ratio>x-quot ( -- quot ) 1-ratio>x random 1quotation ;
-: random-1-float>x-quot ( -- quot ) 1-float>x random 1quotation ;
-: random-1-complex>x-quot ( -- quot ) 1-complex>x random 1quotation ;
-
-: test-1-integer>x ( -- )
- random-integer random-1-integer>x-quot 1-interpreted-vs-compiled-check ;
-: test-1-ratio>x ( -- )
- random-ratio random-1-ratio>x-quot 1-interpreted-vs-compiled-check ;
-: test-1-float>x ( -- )
- random-float random-1-float>x-quot 1-interpreted-vs-compiled-check ;
-: test-1-complex>x ( -- )
- random-complex random-1-complex>x-quot 1-interpreted-vs-compiled-check ;
-
-
-: random-1-float>float-quot ( -- obj ) 1-float>float random 1quotation ;
-: random-2-float>float-quot ( -- obj ) 2-float>float random 1quotation ;
-: nrandom-2-float>float-quot ( -- obj )
- [
- 5
- [
- {
- [ 2-float>float random , random-float , ]
- [ 1-float>float random , ]
- } do-one
- ] times
- 2-float>float random ,
- ] [ ] make ;
-
-: test-1-float>float ( -- )
- random-float random-1-float>float-quot 1-interpreted-vs-compiled-check ;
-: test-2-float>float ( -- )
- random-float random-float random-2-float>float-quot
- 2-interpreted-vs-compiled-check ;
-
-: test-n-2-float>float ( -- )
- random-float random-float nrandom-2-float>float-quot
- 2-interpreted-vs-compiled-check ;
-
-: test-1-integer>x-runtime ( -- )
- random-integer random-1-integer>x-quot 1-runtime-check ;
-
-: random-1-integer>x-throws-quot ( -- obj ) 1-integer>x-throws random 1quotation ;
-: random-1-ratio>x-throws-quot ( -- obj ) 1-ratio>x-throws random 1quotation ;
-: test-1-integer>x-throws ( -- obj )
- random-integer random-1-integer>x-throws-quot
- 1-interpreted-vs-compiled-check-catch ;
-: test-1-ratio>x-throws ( -- obj )
- random-ratio random-1-ratio>x-throws-quot
- 1-interpreted-vs-compiled-check-catch ;
-
-
-
-: test-2-integer>x-throws ( -- )
- [
- random-integer , random-integer ,
- 2-x>y-throws random ,
- ] [ ] make 2-interpreted-vs-compiled-check-catch ;
-
-! : test-^-ratio ( -- )
- ! [
- ! random-ratio , random-ratio , \ ^ ,
- ! ] [ ] make interp-compile-check-catch ;
-
-: test-0-float?-when
- [
- random-number , \ dup , \ float? , 1-float>x random 1quotation , \ when ,
- ] [ ] make 0-runtime-check ;
-
-: test-1-integer?-when
- random-integer [
- \ dup , \ integer? , 1-integer>x random 1quotation , \ when ,
- ] [ ] make 1-interpreted-vs-compiled-check ;
-
-: test-1-ratio?-when
- random-ratio [
- \ dup , \ ratio? , 1-ratio>x random 1quotation , \ when ,
- ] [ ] make 1-interpreted-vs-compiled-check ;
-
-: test-1-float?-when
- random-float [
- \ dup , \ float? , 1-float>x random 1quotation , \ when ,
- ] [ ] make 1-interpreted-vs-compiled-check ;
-
-: test-1-complex?-when
- random-complex [
- \ dup , \ complex? , 1-complex>x random 1quotation , \ when ,
- ] [ ] make 1-interpreted-vs-compiled-check ;
-
-
-: many-word-test ( -- )
- #! defines words a1000 down to a0, which does a trivial addition
- "random-tester-scratchpad" vocabularies get delete-at
- "random-tester-scratchpad" set-in
- "a0" "random-tester-scratchpad" create [ 1 1 + ] define-compound
- 100 [
- [ 1+ "a" swap unparse append "random-tester-scratchpad" create ] keep
- "a" swap unparse append [ parse ] catch [ :1 ] when define-compound
- ] each ;
-
-: compile-loop ( -- )
- 10 [ many-word-test "a100" parse first compile ] times ;
-
-: random-test
- "----" print
- {
- test-1-integer>x
- test-1-ratio>x
- test-1-float>x
- test-1-complex>x
- test-1-integer>x-throws
- test-1-ratio>x-throws
- test-1-float>float
- test-2-float>float
- ! test-n-2-float>float
- test-1-integer>x-runtime
- ! test-0-float?-when
- test-1-integer?-when
- test-1-ratio?-when
- test-1-float?-when
- test-1-complex?-when
- ! full-gc
- ! code-gc
- } random dup . execute nl ;
-
+++ /dev/null
-USING: compiler errors inference interpreter io kernel math
-memory namespaces prettyprint random-tester sequences tools
-quotations words arrays definitions generic graphs
-hashtables byte-arrays assocs network ;
-IN: random-tester2
-
-: dangerous-words ( -- array )
- {
- die
- set-walker-hook exit
- >r r> ndrop
-
- set-callstack set-word set-word-prop
- set-catchstack set-namestack set-retainstack
- set-continuation-retain continuation-catch
- set-continuation-name catchstack retainstack
- set-no-math-method-generic
- set-no-math-method-right
- set-check-method-class
- set-check-create-name
- set-pathname-string
- set-check-create-vocab
- set-check-method-generic
- <check-create> check-create?
- reset-generic forget-class
- create forget-word forget-vocab forget
- forget-methods forget-predicate
- remove-word-prop empty-method
- continue-with <continuation>
-
- define-compound define make-generic
- define-method define-predicate-class
- define-tuple-class define-temp define-tuple-slots
- define-writer define-predicate define-generic
- (define-union-class)
- define-declared define-class
- define-union-class define-inline
- ?make-generic define-reader define-slot define-slots
- define-typecheck define-slot-word define-union-class
- define-simple-generic with-methods define-constructor
- predicate-word condition-continuation define-symbol
- tuple-predicate (sort-classes)
-
- stdio
- close readln read1 read read-until
- stream-read stream-readln stream-read1 lines
- contents stream-copy stream-flush
- lines-loop
- stream-format set-line-reader-cr
- <client-stream> <server> <client>
- <duplex-stream> <file-writer> <file-reader>
- <style-stream> style-stream default-constructor
- init-namespaces plain-writer
-
- with-datastack <quotation> datastack-underflow.
- (delegates) simple-slot , # %
- <continuation> continue-with set-delegate
- callcc0 callcc1
-
- :r :s :c
-
- (next-power-of-2) (^) d>w/w w>h/h millis
- (random) ^n integer, first-bignum
- most-positive-fixnum ^ init-random next-power-of-2
- most-negative-fixnum
-
- clear-assoc build-graph
-
- set-word-def set-word-name
- set-word-props
- set set-axis set-delegate set-global set-restart-obj
-
-
-
- gensym random
-
- double>bits float>bits >bignum
-
- class-predicates delete (delete) memq?
- prune join concat group at+
- normalize norm vneg vmax vmin v- v+ [v-]
- times repeat (repeat)
- supremum infimum at norm-sq
- product sum curry remove-all member? subseq?
-
- ! O(n) on bignums
- (add-vertex) (prune) (split) digits>integer
- substitute ?head ?tail add-vertex all? base> closure
- drop-prefix
- find-last-sep format-column head? index index*
- last-index mismatch push-new remove-vertex reset-props
- seq-quot-uses sequence= split split, split1 start
- start* string-lines string>integer tail? v.
-
- stack-picture
-
- ! allot crashes
- at+ natural-sort
-
- # % (delegates) +@ , . .s <continuation>
- <quotation> <word> be> bin> callstack changed-word
- changed-words continue-with counter dec
- global
- hex> inc le> namespace namestack nest oct> off
- on parent-dir path+
- simple-slot simple-slots string>number tabular-output
- unxref-word xref-word xref-words vocabularies
- with-datastack
-
- bind if-graph ! 0 >n ! GCs
-
- move-backward move-forward open-slice (open-slice) ! infinite loop
- (assoc-stack) ! infinite loop
-
- case ! 100000000000 t case ! takes a long time
- } ;
-
-: safe-words ( -- array )
- dangerous-words {
- "arrays" "assocs" "bit-arrays" "byte-arrays"
- "errors" "generic" "graphs" "hashtables" "io"
- "kernel" "math" "namespaces" "quotations" "sbufs"
- "queues" "strings" "sequences" "vectors" "words"
- } [ words ] map concat seq-diff natural-sort ;
-
-safe-words \ safe-words set-global
-
-: databank ( -- array )
- {
- ! V{ } H{ } V{ 3 } { 3 } { } "" "asdf"
- pi 1/0. -1/0. 0/0. [ ]
- f t "" 0 0.0 3.14 2 -3 -7 20 3/4 -3/4 1.2/3 3.5
- C{ 2 2 } C{ 1/0. 1/0. }
- } ;
-
-: setup-test ( #data #code -- data... quot )
- #! variable stack effect
- >r [ databank random ] times r>
- [ drop \ safe-words get random ] map >quotation ;
-
-SYMBOL: before
-SYMBOL: after
-SYMBOL: quot
-SYMBOL: err
-err off
-
-: test-compiler ( data... quot -- ... )
- err off
- dup quot set
- datastack clone dup pop* before set
- [ call ] catch drop datastack clone after set
- clear
- before get [ ] each
- quot get [ compile-1 ] [ err on ] recover ;
-
-: do-test ( data... quot -- )
- .s flush test-compiler
- err get [
- datastack after get 2dup = [
- 2drop
- ] [
- [ . ] each
- "--" print [ . ] each quot get .
- "not =" throw
- ] if
- ] unless
- clear ;
-
-: random-test* ( #data #code -- )
- setup-test do-test ;
-
-: run-random-tester2
- 100000000000000 [ 6 3 random-test* ] times ;
-
-
-! A worthwhile test that has not been run extensively
-
-1000 [ drop gensym ] map "syms" set-global
-
-: fooify-test
- "syms" get-global random
- 2000 random >quotation
- over set-word-def
- 100 random zero? [ code-gc ] when
- compile fooify-test ;
-
+++ /dev/null
-USING: kernel math sequences namespaces errors hashtables words
-arrays parser compiler syntax io tools prettyprint optimizer
-inference ;
-IN: random-tester
-
-! Tweak me
-: max-length 15 ; inline
-: max-value 1000000000 ; inline
-
-: 10% ( -- bool ) 10 random 8 > ;
-: 20% ( -- bool ) 10 random 7 > ;
-: 30% ( -- bool ) 10 random 6 > ;
-: 40% ( -- bool ) 10 random 5 > ;
-: 50% ( -- bool ) 10 random 4 > ;
-: 60% ( -- bool ) 10 random 3 > ;
-: 70% ( -- bool ) 10 random 2 > ;
-: 80% ( -- bool ) 10 random 1 > ;
-: 90% ( -- bool ) 10 random 0 > ;
-
-! varying bit-length random number
-: random-bits ( n -- int )
- random 2 swap ^ random ;
-
-: random-seq ( -- seq )
- { [ ] { } V{ } "" } random
- [ max-length random [ max-value random , ] times ] swap make ;
-
-: random-string
- [ max-length random [ max-value random , ] times ] "" make ;
-
-SYMBOL: special-integers
-[ { -1 0 1 } % most-negative-fixnum , most-positive-fixnum , first-bignum , ]
-{ } make \ special-integers set-global
-: special-integers ( -- seq ) \ special-integers get ;
-SYMBOL: special-floats
-[ { 0.0 -0.0 } % e , pi , 1./0. , -1./0. , 0./0. , epsilon , epsilon neg , ]
-{ } make \ special-floats set-global
-: special-floats ( -- seq ) \ special-floats get ;
-SYMBOL: special-complexes
-[
- { -1 0 1 i -i } %
- e , e neg , pi , pi neg ,
- 0 pi rect> , 0 pi neg rect> , pi neg 0 rect> , pi pi rect> ,
- pi pi neg rect> , pi neg pi rect> , pi neg pi neg rect> ,
- e neg e neg rect> , e e rect> ,
-] { } make \ special-complexes set-global
-: special-complexes ( -- seq ) \ special-complexes get ;
-
-: random-fixnum ( -- fixnum )
- most-positive-fixnum random 1+ coin-flip [ neg 1- ] when >fixnum ;
-
-: random-bignum ( -- bignum )
- 400 random-bits first-bignum + coin-flip [ neg ] when ;
-
-: random-integer ( -- n )
- coin-flip [
- random-fixnum
- ] [
- coin-flip [ random-bignum ] [ special-integers random ] if
- ] if ;
-
-: random-positive-integer ( -- int )
- random-integer dup 0 < [
- neg
- ] [
- dup 0 = [ 1 + ] when
- ] if ;
-
-: random-ratio ( -- ratio )
- 1000000000 dup [ random ] 2apply 1+ / coin-flip [ neg ] when dup [ drop random-ratio ] unless 10% [ drop 0 ] when ;
-
-: random-float ( -- float )
- coin-flip [ random-ratio ] [ special-floats random ] if
- coin-flip
- [ .0000000000000000001 /f ] [ coin-flip [ .00000000000000001 * ] when ] if
- >float ;
-
-: random-number ( -- number )
- {
- [ random-integer ]
- [ random-ratio ]
- [ random-float ]
- } do-one ;
-
-: random-complex ( -- C )
- random-number random-number rect> ;
-
+++ /dev/null
-USING: arrays errors generic hashtables io kernel lazy-lists math
-memory modules namespaces null-stream prettyprint random-tester2
-quotations sequences strings
-tools vectors words ;
-IN: random-tester
-
-: inert ;
-TUPLE: inert-object ;
-
-: inputs ( -- seq )
- {
- 0 -1 -1000000000000000000000000 2
- inert
- -29/2
- 1000000000000000000000000000000/1111111111111111111111111111111111
- 3/4
- -1000000000000000000000000/111111111111111111
- -3.14 1/0. 0.0 -1/0. 3.14 0/0.
- 20102101010100110110
- C{ 1 -1 }
- W{ 55 }
- { }
- f t
- ""
- "asdf"
- [ ]
- ! DLL" libm.dylib"
- ! ALIEN: 1
- T{ inert-object f }
- }
- [
- H{ { 1 2 } { "asdf" "foo" } } clone ,
- H{ } clone ,
- V{ 1 0 65536 } clone ,
- V{ } clone ,
- SBUF" " clone ,
- B{ } clone ,
- ?{ } clone ,
- ] { } make append ;
-
-TUPLE: success quot inputs outputs input-types output-types ;
-
-SYMBOL: err
-SYMBOL: last-time
-SYMBOL: quot
-SYMBOL: output
-SYMBOL: input
-SYMBOL: silent
-t silent set-global
-
-: test-quot ( input quot -- success/f )
- ! 2dup swap . . flush
- ! dup [ hash+ ] = [ 2dup . . flush ] when
- err off
- quot set input set
- silent get [
- quot get last-time get = [
- quot get
- dup . flush
- last-time set
- ] unless
- ] unless
- [
- clear
- input get >vector set-datastack quot get
- [ [ [ call ] { } make drop ] with-null-stream ]
- [ err on ] recover
- datastack clone output set
- ] with-saved-datastack
- err get [
- f
- ] [
- quot get input get output get
- 2dup [ [ type ] map ] 2apply <success>
- ] if ;
-
-: test-inputs ( word -- seq )
- [
- [ word-input-count inputs swap ] keep
- 1quotation [
- test-quot [ , ] when*
- ] curry each-permutation
- ] { } make ;
-
-: >types ( quot -- seq )
- map concat prune natural-sort ;
-
-: >output-types ( seq -- seq )
- #! input seq is the result of test-inputs
- [ success-output-types ] >types ;
-
-: >input-types ( seq -- seq )
- #! input seq is the result of test-inputs
- [ success-input-types ] >types ;
-
-TUPLE: typed quot inputs outputs ;
-
-: successes>typed ( seq -- typed )
- dup empty? [
- drop f { } clone { } clone <typed>
- ] [
- [ first success-quot ] keep
- [ >input-types ] keep >output-types <typed>
- ] if ;
-
-: word>type-check ( word -- tuple )
- [
- dup test-inputs
- successes>typed ,
- ] curry [ with-saved-datastack ] { } make first ;
-
-: type>name ( n -- string )
- dup integer? [
- {
- "fixnum"
- "bignum"
- "word"
- "obj"
- "ratio"
- "float"
- "complex"
- "wrapper"
- "array"
- "boolean"
- "hashtable"
- "vector"
- "string"
- "sbuf"
- "quotation"
- "dll"
- "alien"
- "tuple"
- } nth
- ] when ;
-
-: replace-subseqs ( seq new old -- seq )
- [
- swapd split1 [ append swap add ] [ nip ] if*
- ] 2each ;
-
-: type-array>name ( seq -- seq )
- {
- { "object" { 0 1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 } }
- { "seq3" { 0 1 8 9 11 12 13 14 } }
- { "seq2" { 0 8 9 11 12 13 14 } }
- { "seq" { 8 9 11 12 13 14 } }
- { "number" { 0 1 4 5 6 } }
- { "real" { 0 1 4 5 } }
- { "rational" { 0 1 4 } }
- { "integer" { 0 1 } }
- { "float/complex" { 5 6 } }
- { "word/f" { 2 9 } }
- } flip first2 replace-subseqs [ type>name ] map ;
-
-: buggy?
- [ word>type-check ] catch [
- drop f
- ] [
- 2array [ [ type-array>name ] map ] map
- [ [ length 1 = ] all? ] all? not
- ] if ;
-
-: variable-stack-effect?
- [ word>type-check ] catch nip ;
-
-: find-words ( quot -- seq )
- \ safe-words get
- [
- word-input-count 3 <=
- ] subset swap subset ;
-
-: find-safe ( -- seq ) [ buggy? not ] find-words ;
-
-: find-buggy ( -- seq ) [ buggy? ] find-words ;
-
-: test-word ( output input word -- ? )
- 1quotation test-quot dup [
- success-outputs sequence=
- ] [
- nip
- ] if ;
-
-: word-finder ( inputs outputs -- seq )
- swap safe-words
- [ >r 2dup r> test-word ] subset 2nip ;
-
-: (enumeration-test)
- [
- [ stack-effect effect-in length ] catch [ 4 < ] unless
- ] subset [ [ test-inputs successes>typed , ] each ] { } make ;
-
-! full-gc finds corrupted memory faster
-
-: enumeration-test ( -- seq )
- [
- \ safe-words get
- f silent set
- (enumeration-test)
- ] with-scope ;
-
-: array>all-quots ( seq n -- seq )
- [
- [ 1+ [ >quotation , ] each-permutation ] each-with
- ] { } make ;
-
-: array>all ( seq n -- seq )
- dupd array>all-quots append ;
-
-: quot-finder ( inputs outputs -- seq )
- swap safe-words 2 array>all
- [
- 3 [ >quotation >r 2dup r> [ test-quot ] keep
- swap [ , ] [ drop ] if ] each-permutation
- ] { } make ;
-
-: word-frequency ( -- alist )
- all-words [ dup usage length 2array ] map sort-values ;
-
+++ /dev/null
-USING: generic kernel math sequences namespaces errors
-assocs words arrays parser compiler syntax io
-quotations optimizer inference shuffle tools prettyprint ;
-IN: random-tester
-
-: word-input-count ( word -- n )
- [ stack-effect effect-in length ] [ 2drop 0 ] recover ;
-
-: type-error? ( exception -- ? )
- [ swap execute or ] curry
- >r { no-method? no-math-method? } f r> reduce ;
-
-! HASHTABLES
-: random-hash-entry ( hash -- key value )
- [ keys random dup ] keep at ;
-
-: coin-flip ( -- bool ) 2 random zero? ;
-: do-one ( seq -- ) random call ; inline
-
-: nzero-array ( seq -- )
- dup length >r 0 r> [ pick set-nth ] each-with drop ;
-
-: zero-array ( n -- seq ) [ drop 0 ] map ;
-
-TUPLE: p-list seq max count count-vec ;
-: make-p-list ( seq n -- tuple )
- >r dup length [ 1- ] keep r>
- [ ^ 0 swap 2array ] keep
- zero-array <p-list> ;
-
-: inc-seq ( seq max -- )
- 2dup [ < ] curry find-last over -1 = [
- 3drop nzero-array
- ] [
- nipd 1+ 2over swap set-nth
- 1+ over length rot <slice> nzero-array
- ] if ;
-
-: inc-count ( tuple -- )
- [ p-list-count first2 >r 1+ r> 2array ] keep
- set-p-list-count ;
-
-: get-permutation ( tuple -- seq )
- [ p-list-seq ] keep p-list-count-vec [ swap nth ] map-with ;
-
-: p-list-next ( tuple -- seq/f )
- dup p-list-count first2 < [
- [
- [ get-permutation ] keep
- [ p-list-count-vec ] keep p-list-max
- inc-seq
- ] keep inc-count
- ] [
- drop f
- ] if ;
-
-: (permutations) ( tuple -- )
- dup p-list-next [ , (permutations) ] [ drop ] if* ;
-
-: permutations ( seq n -- seq )
- make-p-list [ (permutations) ] { } make ;
-
-: (each-permutation) ( tuple quot -- )
- over p-list-next [
- [ rot drop swap call ] 3keep
- drop (each-permutation)
- ] [
- 2drop
- ] if* ; inline
-
-: each-permutation ( seq n quot -- )
- >r make-p-list r> (each-permutation) ;
-
-SYMBOL: saved-datastack
-: with-saved-datastack
- >r datastack saved-datastack set r> call
- saved-datastack get set-datastack ; inline
--- /dev/null
+! Copyright (C) 2006 Chris Double.
+! See http://factorcode.org/license.txt for BSD license.
+!
+! Create a test database like follows:
+!
+! sqlite3 history.db
+! > create table rss (url text, title text, link text, primary key (url));
+! > create table entries (url text, link text, title text, description text, pubdate text, primary key(url, link));
+! > [eof]
+!
+IN: rss.reader
+USING: kernel html namespaces sequences io quotations
+assocs sqlite.tuple-db sqlite io.files html.elements
+rss webapps.continuation ;
+
+TUPLE: reader-feed url title link ;
+
+C: <reader-feed> reader-feed
+
+TUPLE: reader-entry url link title description pubdate ;
+
+C: <reader-entry> reader-entry
+
+reader-feed default-mapping set-mapping
+reader-entry default-mapping set-mapping
+
+: init-db ( -- )
+ db get-global [ sqlite-close ] when*
+ "rss-reader.db" exists? [
+ "rss-reader.db" sqlite-open db set-global
+ ] [
+ "rss-reader.db" sqlite-open dup db set-global
+ dup reader-feed create-tuple-table
+ reader-entry create-tuple-table
+ ] if ;
+
+: add-feed ( url -- )
+ "" "" <reader-feed> db get swap insert-tuple ;
+
+: remove-feed ( url -- )
+ f f <reader-feed> db get swap find-tuples [ db get swap delete-tuple ] each ;
+
+: all-urls ( -- urls )
+ f f f <reader-feed> db get swap find-tuples [ reader-feed-url ] map ;
+
+: ask-for-url ( -- url )
+ [
+ <html>
+ <head> <title> "Enter a Feed URL" write </title> </head>
+ <body>
+ <form =action "post" =method form>
+ "URL: " write
+ <input "text" =type "url" =name "100" =size input/>
+ <input "submit" =type input/>
+ </form>
+ </body>
+ </html>
+ ] show "url" swap at ;
+
+: get-entries ( url -- entries )
+ f f f f <reader-entry> db get swap find-tuples ;
+
+: display-entries ( url -- )
+ [
+ <html>
+ <head> <title> "View entries for " write over write </title> </head>
+ <body>
+ swap get-entries [
+ <h2> dup reader-entry-title write </h2>
+ <p>
+ reader-entry-description write
+ </p>
+ ] each
+ <p> <a =href a> "Back" write </a> </p>
+ </body>
+ </html>
+ ] show 2drop ;
+
+: rss>reader-feed ( url rss -- reader-feed )
+ [ feed-title ] keep feed-link <reader-feed> ;
+
+: rss-entry>reader-entry ( url entry -- reader-entry )
+ [ entry-link ] keep
+ [ entry-title ] keep
+ [ entry-description ] keep
+ entry-pub-date
+ <reader-entry> ;
+
+: update-feed-database ( url -- )
+ dup remove-feed
+ dup news-get
+ 2dup rss>reader-feed db get swap save-tuple
+ feed-entries [
+ dupd rss-entry>reader-entry
+ dup >r reader-entry-link f f f <reader-entry> db get swap find-tuples [ db get swap delete-tuple ] each r>
+ db get swap save-tuple
+ ] curry* each ;
+
+: update-feeds ( seq -- )
+ [ update-feed-database ] each
+ [
+ <html>
+ <head> <title> "Feeds Updated" write </title> </head>
+ <body>
+ <p> "Feeds Updated." write </p>
+ <p> <a =href a> "Back" write </a> </p>
+ </body>
+ </html>
+ ] show drop ;
+
+: maintain-feeds ( -- )
+ [
+ <html>
+ <head> <title> "Maintain Feeds" write </title> </head>
+ <body>
+ <p>
+ <table "1" =border table>
+ all-urls [
+ <tr>
+ <td> dup write </td>
+ <td> dup [ remove-feed ] curry "Remove" swap quot-href </td>
+ <td> [ display-entries ] curry "Database" swap quot-href </td>
+ </tr>
+ ] each
+ </table>
+ </p>
+ <p> "Add Feed" [ ask-for-url add-feed ] quot-href </p>
+ <p> "Update Feeds" [ all-urls update-feeds ] quot-href </p>
+ </body>
+ </html>
+ ] show-final ;
+
+"maintain-feeds" [ init-db maintain-feeds ] install-cont-responder
+++ /dev/null
-REQUIRES: libs/memoize ;
-PROVIDE: libs/regexp
-{ +files+ {
- "tables.factor"
- "regexp.factor"
-} } { +tests+ {
- "test/regexp.factor"
- "test/tables.factor"
-} } ;
-
+++ /dev/null
-USING: arrays errors generic assocs io kernel math
-memoize namespaces kernel sequences strings tables
-vectors ;
-USE: interpreter
-USE: prettyprint
-USE: test
-
-IN: regexp-internals
-
-SYMBOL: trans-table
-SYMBOL: eps
-SYMBOL: start-state
-SYMBOL: final-state
-
-SYMBOL: paren-count
-SYMBOL: currentstate
-SYMBOL: stack
-
-SYMBOL: bot
-SYMBOL: eot
-SYMBOL: alternation
-SYMBOL: lparen
-SYMBOL: rparen
-
-: regexp-init ( -- )
- 0 paren-count set
- -1 currentstate set
- V{ } clone stack set
- <vector-table> final-state over add-column trans-table set ;
-
-: paren-underflow? ( -- )
- paren-count get 0 < [ "too many rparen" throw ] when ;
-
-: unbalanced-paren? ( -- )
- paren-count get 0 > [ "neesds closing paren" throw ] when ;
-
-: inc-paren-count ( -- )
- paren-count [ 1+ ] change ;
-
-: dec-paren-count ( -- )
- paren-count [ 1- ] change paren-underflow? ;
-
-: push-stack ( n -- ) stack get push ;
-: next-state ( -- n )
- currentstate [ 1+ ] change currentstate get ;
-: current-state ( -- n ) currentstate get ;
-
-: set-trans-table ( row col data -- )
- <entry> trans-table get set-value ;
-
-: add-trans-table ( row col data -- )
- <entry> trans-table get add-value ;
-
-: data-stack-slice ( token -- seq )
- stack get reverse [ index ] keep cut reverse dup pop* stack set reverse ;
-
-: find-start-state ( table -- n )
- start-state t rot find-by-column first ;
-
-: find-final-state ( table -- n )
- final-state t rot find-by-column first ;
-
-: final-state? ( row table -- ? )
- get-row final-state swap key? ;
-
-: switch-rows ( r1 r2 -- )
- [ 2array [ trans-table get get-row ] each ] 2keep
- 2array [ trans-table get set-row ] each ;
-
-: set-table-prop ( prop s table -- )
- pick over add-column table-rows
- [
- pick rot member? [
- pick t swap rot set-at
- ] [
- drop
- ] if
- ] assoc-each 2drop ;
-
-: add-numbers ( n obj -- obj )
- dup sequence? [
- [ + ] map-with
- ] [
- dup number? [ + ] [ nip ] if
- ] if ;
-
-: increment-cols ( n row -- )
- ! n row
- dup [ >r pick r> add-numbers swap pick set-at ] assoc-each 2drop ;
-
-: complex-count ( c -- ci-cr+1 )
- >rect swap - 1+ ;
-
-: copy-rows ( c1 -- )
- #! copy rows to the bottom with a new row-name c1_range higher
- [ complex-count ] keep trans-table get table-rows ! 2 C{ 0 1 } rows
- [ drop [ over real >= ] keep pick imaginary <= and ] assoc-subset nip
- [ clone [ >r over r> increment-cols ] keep swap pick + trans-table get set-row ] assoc-each ! 2
- currentstate get 1+ dup pick + 1- rect> push-stack
- currentstate [ + ] change ;
-
-
-! s1 final f ! s1 eps s2 ! output s0,s3
-: apply-concat ( seq -- )
- ! "Concat: " write dup .
- dup pop over pop swap
- over imaginary final-state f set-trans-table
- 2dup >r imaginary eps r> real add-trans-table
- >r real r> imaginary rect> swap push ;
-
-! swap 0, 4 so 0 is incoming
-! ! s1 final f ! s3 final f ! s4 e s0 ! s4 e s2 ! s1 e s5 ! s3 e s5
-! ! s5 final t ! s4,s5 push
-
-SYMBOL: saved-state
-: apply-alternation ( seq -- )
- ! "Alternation: " print
- dup pop over pop* over pop swap
- next-state trans-table get add-row
- >r >rect >r saved-state set current-state r> rect> r>
- ! 4,1 2,3
- over real saved-state get trans-table get swap-rows
- saved-state get start-state t set-trans-table
- over real start-state f set-trans-table
- over imaginary final-state f set-trans-table
- dup imaginary final-state f set-trans-table
- over real saved-state get eps rot add-trans-table
- dup real saved-state get eps rot add-trans-table
- imaginary eps next-state add-trans-table
- imaginary eps current-state add-trans-table
- current-state final-state t set-trans-table
- saved-state get current-state rect> swap push ;
-
-! s1 final f ! s1 e s0 ! s2 e s0 ! s2 e s3 ! s1 e s3 ! s3 final t
-: apply-kleene-closure ( -- )
- ! "Apply kleene closure" print
- stack get pop
- next-state trans-table get add-row
- >rect >r [ saved-state set ] keep current-state
- [ trans-table get swap-rows ] keep r> rect>
-
- dup imaginary final-state f set-trans-table
- dup imaginary eps pick real add-trans-table
- saved-state get eps pick real add-trans-table
- saved-state get eps next-state add-trans-table
- imaginary eps current-state add-trans-table
- current-state final-state t add-trans-table
- saved-state get current-state rect> push-stack ;
-
-: apply-plus-closure ( -- )
- ! "Apply plus closure" print
- stack get peek copy-rows
- apply-kleene-closure stack get apply-concat ;
-
-: apply-alternation? ( seq -- ? )
- dup length dup 3 < [
- 2drop f
- ] [
- 2 - swap nth alternation =
- ] if ;
-
-: apply-concat? ( seq -- ? )
- dup length dup 2 < [
- 2drop f
- ] [
- 2 - swap nth complex?
- ] if ;
-
-: (apply) ( slice -- slice )
- dup length 1 > [
- {
- { [ dup apply-alternation? ]
- [ [ apply-alternation ] keep (apply) ] }
- { [ dup apply-concat? ]
- [ [ apply-concat ] keep (apply) ] }
- } cond
- ] when ;
-
-: apply-til-last ( tokens -- slice )
- data-stack-slice (apply) ;
-
-: maybe-concat ( -- )
- stack get apply-concat? [ stack get apply-concat ] when ;
-
-: maybe-concat-loop ( -- )
- stack get length maybe-concat stack get length > [
- maybe-concat-loop
- ] when ;
-
-: create-nontoken-nfa ( tok -- )
- next-state swap next-state <entry>
- [ trans-table get set-value ] keep
- entry-value final-state t set-trans-table
- current-state [ 1- ] keep rect> push-stack ;
-
-! stack gets: alternation C{ 0 1 }
-: apply-question-closure ( -- )
- alternation push-stack
- eps create-nontoken-nfa stack get apply-alternation ;
-
-! {2} exactly twice, {2,} 2 or more, {2,4} exactly 2,3,4 times
-! : apply-bracket-closure ( c1 -- )
- ! ;
-SYMBOL: character-class
-SYMBOL: brace
-SYMBOL: escaped-character
-SYMBOL: octal
-SYMBOL: hex
-SYMBOL: control
-SYMBOL: posix
-
-: addto-character-class ( char -- )
- ;
-
-: make-escaped ( char -- )
- {
- ! TODO: POSIX character classes (US-ASCII only)
- ! TODO: Classes for Unicode blocks and categories
-
- ! { CHAR: { [ ] } ! left brace
- { CHAR: \\ [ ] } ! backaslash
-
- { CHAR: 0 [ ] } ! octal \0n \0nn \0mnn (0 <= m <= 3, 0 <= n <= 7)
- { CHAR: x [ ] } ! \xhh
- { CHAR: u [ ] } ! \uhhhh
- { CHAR: t [ ] } ! tab \u0009
- { CHAR: n [ ] } ! newline \u000a
- { CHAR: r [ ] } ! carriage-return \u000d
- { CHAR: f [ ] } ! form-feed \u000c
- { CHAR: a [ ] } ! alert (bell) \u0007
- { CHAR: e [ ] } ! escape \u001b
- { CHAR: c [ ] } ! control character corresoding to X in \cX
-
- { CHAR: d [ ] } ! [0-9]
- { CHAR: D [ ] } ! [^0-9]
- { CHAR: s [ ] } ! [ \t\n\x0B\f\r]
- { CHAR: S [ ] } ! [^\s]
- { CHAR: w [ ] } ! [a-zA-Z_0-9]
- { CHAR: W [ ] } ! [^\w]
-
- { CHAR: b [ ] } ! a word boundary
- { CHAR: B [ ] } ! a non-word boundary
- { CHAR: A [ ] } ! the beginning of input
- { CHAR: G [ ] } ! the end of the previous match
- { CHAR: Z [ ] } ! the end of the input but for the
- ! final terminator, if any
- { CHAR: z [ ] } ! the end of the input
- } case ;
-
-: handle-character-class ( char -- )
- {
- { [ \ escaped-character get ] [ make-escaped \ escaped-character off ] }
- { [ dup CHAR: ] = ] [ \ character-class off ] }
- { [ t ] [ addto-character-class ] }
- } cond ;
-
-: parse-token ( char -- )
- {
- ! { [ \ character-class get ] [ ] }
- ! { [ \ escaped-character get ] [ ] }
- ! { [ dup CHAR: [ = ] [ \ character-class on ] }
- ! { [ dup CHAR: \\ = ] [ drop \ escaped-character on ] }
-
- ! { [ dup CHAR: ^ = ] [ ] }
- ! { [ dup CHAR: $ = ] [ ] }
- ! { [ dup CHAR: { = ] [ ] }
- ! { [ dup CHAR: } = ] [ ] }
-
- { [ dup CHAR: | = ]
- [ drop maybe-concat-loop alternation push-stack ] }
- { [ dup CHAR: * = ]
- [ drop apply-kleene-closure ] }
- { [ dup CHAR: + = ]
- [ drop apply-plus-closure ] }
- { [ dup CHAR: ? = ]
- [ drop apply-question-closure ] }
-
- { [ dup CHAR: ( = ]
- [ drop inc-paren-count lparen push-stack ] }
- { [ dup CHAR: ) = ]
- [
- drop dec-paren-count lparen apply-til-last
- stack get push-all
- ] } ! apply
-
-
- { [ dup bot = ] [ push-stack ] }
- { [ dup eot = ]
- [
- drop unbalanced-paren? maybe-concat-loop bot apply-til-last
- dup length 1 = [
- pop real start-state t set-trans-table
- ] [
- drop
- ] if
- ] }
- { [ t ] [ create-nontoken-nfa ] }
- } cond ;
-
-: cut-at-index ( i string ch -- i subseq )
- -rot [ index* ] 2keep >r >r [ 1+ ] keep r> swap r> subseq ;
-
-: parse-character-class ( index string -- new-index obj )
- 2dup >r 1+ r> nth CHAR: ] = [ >r 1+ r> ] when
- cut-at-index ;
-
-: (parse-regexp) ( str -- )
- dup length [
- 2dup swap character-class get [
- parse-character-class
- "CHARACTER CLASS: " write .
- character-class off
- nip ! adjust index
- ] [
- nth parse-token
- ] if
- ] repeat ;
-
-: parse-regexp ( str -- )
- bot parse-token
- ! [ "parsing: " write dup ch>string . parse-token ] each
- [ parse-token ] each
- ! (parse-regexp)
- eot parse-token ;
-
-: push-all-diff ( seq seq -- diff )
- [ swap seq-diff ] 2keep push-all ;
-
-: prune-sort ( vec -- vec )
- prune natural-sort >vector ;
-
-SYMBOL: ttable
-SYMBOL: transition
-SYMBOL: check-list
-SYMBOL: initial-check-list
-SYMBOL: result
-
-: init-find ( data state table -- )
- ttable set
- dup sequence? [ clone >vector ] [ V{ } clone [ push ] keep ] if
- [ check-list set ] keep clone initial-check-list set
- V{ } clone result set
- transition set ;
-
-: (find-next-state) ( -- )
- check-list get [
- [
- ttable get get-row transition get swap at*
- [ dup sequence? [ % ] [ , ] if ] [ drop ] if
- ] each
- ] { } make
- result get push-all-diff
- check-list set
- result get prune-sort result set ;
-
-: (find-next-state-recursive) ( -- )
- check-list get empty? [ (find-next-state) (find-next-state-recursive) ] unless ;
-
-: find-epsilon-closure ( state table -- vec )
- eps -rot init-find
- (find-next-state-recursive) result get initial-check-list get append natural-sort ;
-
-: find-next-state ( data state table -- vec )
- find-epsilon-closure check-list set
- V{ } clone result set transition set
- (find-next-state) result get ttable get find-epsilon-closure ;
-
-: filter-cols ( vec -- vec )
- #! remove info columns state-state, eps, final
- clone start-state over delete-at eps over delete-at
- final-state over delete-at ;
-
-SYMBOL: old-table
-SYMBOL: new-table
-SYMBOL: todo-states
-SYMBOL: transitions
-
-: init-nfa>dfa ( table -- )
- <vector-table> new-table set
- [ table-columns clone filter-cols keys transitions set ] keep
- dup [ find-start-state ] keep find-epsilon-closure
- V{ } clone [ push ] keep todo-states set
- old-table set ;
-
-: create-row ( state table -- )
- 2dup row-exists?
- [ 2drop ] [ [ add-row ] 2keep drop todo-states get push ] if ;
-
-: (nfa>dfa) ( -- )
- todo-states get dup empty? [
- pop transitions get [
- 2dup swap old-table get find-next-state
- dup empty? [
- 3drop
- ] [
- dup new-table get create-row
- <entry> new-table get set-value
- ] if
- ] each-with
- ] unless* todo-states get empty? [ (nfa>dfa) ] unless ;
-
-: nfa>dfa ( table -- table )
- init-nfa>dfa
- (nfa>dfa)
- start-state old-table get find-start-state
- new-table get set-table-prop
- final-state old-table get find-final-state
- new-table get [ set-table-prop ] keep ;
-
-SYMBOL: regexp
-SYMBOL: text
-SYMBOL: matches
-SYMBOL: partial-matches
-TUPLE: partial-match index row count ;
-! a state is a vector
-! state is a key in a hashtable. the value is a hashtable of transition states
-
-: save-partial-match ( index row -- )
- 1 <partial-match> dup partial-match-index
- \ partial-matches get set-at ;
-
-: inc-partial-match ( partial-match -- )
- [ partial-match-count 1+ ] keep set-partial-match-count ;
-
-: check-final-state ( partial-match -- )
- dup partial-match-row regexp get final-state? [
- clone dup partial-match-index matches get set-at
- ] [
- drop
- ] if ;
-
-: check-trivial-match ( row regexp -- )
- dupd final-state? [
- >r 0 r> 0 <partial-match>
- 0 matches get set-at
- ] [
- drop
- ] if ;
-
-: update-partial-match ( char partial-match -- )
- tuck partial-match-row regexp get get-row at* [
- over set-partial-match-row
- inc-partial-match
- ] [
- drop
- partial-match-index partial-matches get delete-at
- ] if ;
-
-: regexp-step ( index char start-state -- )
- ! check partial-matches
- over \ partial-matches get
- [ nip update-partial-match ] assoc-each-with
-
- ! check new match
- at* [
- save-partial-match
- ] [
- 2drop
- ] if
- partial-matches get values [ check-final-state ] each ;
-
-: regexp-match ( text regexp -- seq )
- #! text is the haystack
- #! regexp is a table describing the needle
- H{ } clone \ matches set
- H{ } clone \ partial-matches set
- dup regexp set
- >r dup text set r>
- [ find-start-state ] keep
- 2dup check-trivial-match
- get-row
- swap [ length ] keep
- [ pick regexp-step ] 2each drop
- matches get values [
- [ partial-match-index ] keep
- partial-match-count dupd + text get <slice>
- ] map ;
-
-IN: regexp
-MEMO: make-regexp ( str -- table )
- [
- regexp-init
- parse-regexp
- trans-table get nfa>dfa
- ] with-scope ;
-
-! TODO: make compatible with
-! http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html
-
-! Greedy
-! Match the longest possible string, default
-! a+
-
-! Reluctant
-! Match on shortest possible string
-! / in vi does this (find next)
-! a+?
-
-! Possessive
-! Match only when the entire text string matches
-! a++
+++ /dev/null
-USING: errors generic kernel namespaces
-sequences vectors assocs ;
-IN: tables
-
-TUPLE: table rows columns ;
-TUPLE: entry row-key column-key value ;
-GENERIC: add-value ( entry table -- )
-
-C: table ( -- obj )
- H{ } clone over set-table-rows
- H{ } clone over set-table-columns ;
-
-: (add-row) ( row-key table -- row )
- 2dup table-rows at* [
- 2nip
- ] [
- drop H{ } clone [ -rot table-rows set-at ] keep
- ] if ;
-
-: add-row ( row-key table -- )
- (add-row) drop ;
-
-: add-column ( column-key table -- )
- t -rot table-columns set-at ;
-
-: set-row ( row row-key table -- )
- table-rows set-at ;
-
-: lookup-row ( row-key table -- row/f ? )
- table-rows at* ;
-
-: row-exists? ( row-key table -- ? )
- lookup-row nip ;
-
-: lookup-column ( column-key table -- column/f ? )
- table-columns at* ;
-
-: column-exists? ( column-key table -- ? )
- lookup-column nip ;
-
-TUPLE: no-row key ;
-TUPLE: no-column key ;
-
-: get-row ( row-key table -- row )
- dupd lookup-row [
- nip
- ] [
- drop <no-row> throw
- ] if ;
-
-: get-column ( column-key table -- column )
- dupd lookup-column [
- nip
- ] [
- drop <no-column> throw
- ] if ;
-
-: get-value ( row-key column-key table -- obj ? )
- swapd lookup-row [
- at*
- ] [
- 2drop f f
- ] if ;
-
-: (set-value) ( entry table -- value column-key row )
- [ >r entry-column-key r> add-column ] 2keep
- dupd >r entry-row-key r> (add-row)
- >r [ entry-value ] keep entry-column-key r> ;
-
-: set-value ( entry table -- )
- (set-value) set-at ;
-
-: swap-rows ( row-key1 row-key2 table -- )
- [ tuck get-row >r get-row r> ] 3keep
- >r >r rot r> r> [ set-row ] keep set-row ;
-
-: member?* ( obj obj -- bool )
- 2dup = [ 2drop t ] [ member? ] if ;
-
-: find-by-column ( column-key data table -- seq )
- swapd 2dup lookup-column 2drop
- [
- table-rows [
- pick swap at* [
- >r pick r> member?* [ , ] [ drop ] if
- ] [
- 2drop
- ] if
- ] assoc-each
- ] { } make 2nip ;
-
-
-TUPLE: vector-table ;
-C: vector-table ( -- obj )
- <table> over set-delegate ;
-
-: add-hash-vector ( value key hash -- )
- 2dup at* [
- dup vector? [
- 2nip push
- ] [
- V{ } clone [ push ] keep
- -rot >r >r [ push ] keep r> r> set-at
- ] if
- ] [
- drop set-at
- ] if ;
-
-M: vector-table add-value ( entry table -- )
- (set-value) add-hash-vector ;
-
+++ /dev/null
-USING: kernel sequences namespaces errors io math tables arrays generic hashtables vectors strings parser ;
-USING: prettyprint test ;
-USING: regexp-internals regexp ;
-
-[ "dog" ] [ "dog" "cat|dog" make-regexp regexp-match first >string ] unit-test
-[ "cat" ] [ "cat" "cat|dog" make-regexp regexp-match first >string ] unit-test
-[ "a" ] [ "a" "a|b|c" make-regexp regexp-match first >string ] unit-test
-[ "" ] [ "" "a*" make-regexp regexp-match first >string ] unit-test
-[ "aaaa" ] [ "aaaa" "a*" make-regexp regexp-match first >string ] unit-test
-[ "aaaa" ] [ "aaaa" "a+" make-regexp regexp-match first >string ] unit-test
-[ t ] [ "" "a+" make-regexp regexp-match empty? ] unit-test
-[ "cadog" ] [ "cadog" "ca(t|d)og" make-regexp regexp-match first >string ] unit-test
-[ "catog" ] [ "catog" "ca(t|d)og" make-regexp regexp-match first >string ] unit-test
-[ "cadog" ] [ "abcadoghi" "ca(t|d)og" make-regexp regexp-match first >string ] unit-test
-[ t ] [ "abcatdoghi" "ca(t|d)og" make-regexp regexp-match empty? ] unit-test
-
-[ "abcdefghijklmnopqrstuvwxyz" ] [ "abcdefghijklmnopqrstuvwxyz" "a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+" make-regexp regexp-match first >string ] unit-test
-[ "aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz" ] [ "aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz" "a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+" make-regexp regexp-match first >string ] unit-test
-[ t ] [ "aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyy" "a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+" make-regexp regexp-match empty? ] unit-test
-[ "abcdefghijklmnopqrstuvwxyz" ] [ "abcdefghijklmnopqrstuvwxyz" "a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*" make-regexp regexp-match first >string ] unit-test
-[ "" ] [ "" "a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*" make-regexp regexp-match first >string ] unit-test
-[ "az" ] [ "az" "a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*" make-regexp regexp-match first >string ] unit-test
-
-[ t ] [ "abc" "a?b?c?" make-regexp regexp-match length 3 = ] unit-test
-[ "ac" ] [ "ac" "a?b?c?" make-regexp regexp-match first >string ] unit-test
-[ "" ] [ "" "a?b?c?" make-regexp regexp-match first >string ] unit-test
-[ t ] [ "aabc" "a?b?c?" make-regexp regexp-match length 4 = ] unit-test
-[ "abbbccdefefffeffe" ] [ "abbbccdefefffeffe" "(a?b*c+d(e|f)*)+" make-regexp regexp-match first >string ] unit-test
-[ t ] [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" "a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" make-regexp regexp-match length 29 = ] unit-test
-
+++ /dev/null
-USING: kernel tables test ;
-
-: test-table
- <table>
- "a" "c" "z" <entry> over set-value
- "a" "o" "y" <entry> over set-value
- "a" "l" "x" <entry> over set-value
- "b" "o" "y" <entry> over set-value
- "b" "l" "x" <entry> over set-value
- "b" "s" "u" <entry> over set-value ;
-
-[
- T{ table f
- H{
- { "a" H{ { "l" "x" } { "c" "z" } { "o" "y" } } }
- { "b" H{ { "l" "x" } { "s" "u" } { "o" "y" } } }
- }
- H{ { "l" t } { "s" t } { "c" t } { "o" t } } }
-] [ test-table ] unit-test
-
-[ "x" t ] [ "a" "l" test-table get-value ] unit-test
-[ "har" t ] [
- "a" "z" "har" <entry> test-table [ set-value ] keep
- >r "a" "z" r> get-value
-] unit-test
-
-: vector-test-table
- <vector-table>
- "a" "c" "z" <entry> over add-value
- "a" "c" "r" <entry> over add-value
- "a" "o" "y" <entry> over add-value
- "a" "l" "x" <entry> over add-value
- "b" "o" "y" <entry> over add-value
- "b" "l" "x" <entry> over add-value
- "b" "s" "u" <entry> over add-value ;
-
-[
-T{ vector-table
- T{ table f
- H{
- { "a"
- H{ { "l" "x" } { "c" V{ "z" "r" } } { "o" "y" } } }
- { "b"
- H{ { "l" "x" } { "s" "u" } { "o" "y" } } }
- }
- H{ { "l" t } { "s" t } { "c" t } { "o" t } } }
-}
-] [ vector-test-table ] unit-test
-
--- /dev/null
+<% USING: namespaces io kernel furnace words prettyprint
+generic sequences parser ; %>
+
+<% "model" get %>
+
+<form action="<% dup class dup word-vocabulary use+ unparse write %>-update" method="post">
+
+<% dup crud-index [ %>
+
+<input type="hidden" name="crud-index" value="<% write %>"/>
+
+<% ] when* %>
+
+<table>
+
+<% dup tuple-slots swap class "slot-names" word-prop [ %> <tr><td><% dup write %>:</td>
+ <td><input type="text" name="<% write %>" value="<% write %>"/></td></tr><% ] 2each %>
+
+</table>
+<input type="submit" name="submit" value="submit"/>
+</form>
\ No newline at end of file
--- /dev/null
+<% USING: namespaces kernel io sequences generic words
+prettyprint furnace parser ; %>
+
+<% "model" get dup sequence? not [ unparse %>
+<p><a href="<% write %>-new">New</a></p><% ] [ %>
+
+<p><a href="<% first class unparse write %>-new">New</a></p>
+
+<table>
+<% "model" get dup first class dup
+ word-vocabulary use+ "slot-names" word-prop %>
+<tr><% [ %><th><% write %></th><% ] each %></tr>
+
+<% [ %>
+
+<tr><% dup tuple-slots [ %><td><% write %></td><% ] each %>
+
+ <% dup crud-index swap class dup "crud-index" word-prop swap unparse %>
+ <td><a href="<% 3dup write %>-show?<% write %>=<% write %>">Show</a></td>
+ <td><a href="<% 3dup write %>-edit?<% write %>=<% write %>">Edit</a></td>
+ <td><a href="<% write %>-delete?<% write %>=<% write %>">Delete</a></td></tr>
+
+<% ] each %>
+
+</table>
+
+<% ] if %>
\ No newline at end of file
--- /dev/null
+<% USING: namespaces io kernel words generic sequences
+prettyprint furnace parser ; %>
+
+<% "model" get [ %>
+
+<% dup tuple-slots over class dup
+ word-vocabulary use+ "slot-names" word-prop %>
+
+<table>
+
+<% [ %><tr><td><% write %>:</td><td><% write %></td></tr><% ] 2each %>
+
+</table>
+
+<% dup crud-index swap class dup "crud-index" word-prop swap unparse %>
+<p><a href="<% 3dup write %>-edit?<% write %>=<% write %>">Edit</a> |
+ <a href="<% [ write %>-delete?<% write %>=<% write ] keep %>">Delete</a> |
+ <a href="<% dup write %>-new">New</a> | <a href="<% write %>-list">List</a></p>
+
+<% ] [ %><p>No such tuple</p><% ] if* %>
\ No newline at end of file
--- /dev/null
+USING: http.server help.markup help.syntax kernel prettyprint
+sequences parser namespaces words classes math tuples.private
+quotations arrays strings ;
+
+IN: furnace.scaffold
+
+TUPLE: furnace-model model ;
+C: <furnace-model> furnace-model
+
+HELP: furnace-model "This definition exists to circumvent a limitation in furnace with regard to sending arbitrary objects as models to .furnace templates." ;
+
+: crud-create ( class string -- word )
+ swap unparse "-" rot 3append in get create ;
+
+HELP: crud-create
+{ $values { "class" class } { "string" string } { "word" word } }
+{ $description "A CRUD utility function - creates a new action word for a given class and suffix string" } ;
+
+: crud-word ( class string -- word )
+ swap unparse "-" rot 3append parse first ;
+HELP: crud-word
+{ $values { "class" class } { "string" string } { "word" word } }
+{ $description "A CRUD utility function - looks up a word that has been crud-created" } ;
+
+: crud-index ( tuple -- )
+ dup class dup "crud-index" word-prop crud-word execute ;
+
+: crud-lookup ( string class -- obj )
+ get-global [ crud-index = ] curry* subset
+ dup empty? [ drop f ] [ first ] if ;
+HELP: crud-lookup
+{ $values { "string" string } { "class" class } { "obj" object } }
+{ $description "A CRUD utility function - looks up an object in the store by the pre-designated index." } ;
+
+: crud-lookup* ( string class -- tuple )
+ tuck crud-lookup
+ [ ] [ dup "slot-names" word-prop length 2 + <tuple> ] ?if ;
+
+HELP: crud-lookup*
+{ $values { "string" string } { "class" class } { "tuple" tuple } }
+"A CRUD utility function - same as crud-lookup, but always returns a tuple of the given class. When the lookup fails, returns a tuple of the given class with all slots set to f." ;
+
+: render-page ( model template title -- )
+ [
+ [ render-component ] simple-html-document
+ ] serve-html ;
+
+: crud-page ( model template title -- )
+ [ "libs/furnace/crud-templates" template-path set render-page ]
+ with-scope ;
+
+: define-list ( class -- word )
+ dup "list" crud-create swap
+ [ dup get-global dup empty? -rot ? <furnace-model> "list" "List" crud-page ]
+ curry dupd define-compound ;
+
+: define-show ( class -- word )
+ dup "show" crud-create swap
+ [ crud-lookup <furnace-model> "show" "Show" crud-page ]
+ curry dupd define-compound ;
+
+: define-edit ( class -- word )
+ dup "edit" crud-create swap
+ [ crud-lookup* <furnace-model> "edit" "Edit" crud-page ]
+ curry dupd define-compound ;
+
+: define-new ( class -- word )
+ dup "new" crud-create swap "edit" crud-word
+ [ f swap execute ]
+ curry dupd define-compound ;
+
+: define-update ( class -- word )
+ dup "update" crud-create swap
+ [
+ tuck crud-lookup [ over get-global remove over set-global ] when*
+ dup >r "constructor" word-prop execute
+ r> 2dup get-global swap add over set-global swap
+ crud-index swap "show" crud-word execute
+ ] curry dupd define-compound ;
+
+: define-delete ( class -- word )
+ dup "delete" crud-create swap
+ [
+ tuck crud-lookup [ over get-global remove over set-global ] when*
+ "list" crud-word execute
+ ] curry dupd define-compound ;
+
+: define-lookup ( class -- )
+ dup "crud-index" word-prop ">" pick unparse 3append in get create
+ swap [ crud-lookup ] curry define-compound ;
+
+: define-lookup* ( class -- )
+ dup "crud-index" word-prop ">" pick unparse "*" append 3append
+ in get create swap [ crud-lookup* ] curry define-compound ;
+
+: scaffold-params ( class -- array )
+ "crud-index" word-prop 1array 1array ;
+
+: scaffold ( class index realm -- )
+ -rot dupd "crud-index" set-word-prop
+ [ define-lookup ] keep [ define-lookup* ] keep
+ [ get-global [ { } over set-global ] unless ] keep
+ [ define-list { } rot define-authenticated-action ] 2keep
+ [ dup define-show swap scaffold-params rot
+ define-authenticated-action ] 2keep
+ [ dup define-edit swap scaffold-params rot
+ define-authenticated-action ] 2keep
+ [ define-new { } rot define-authenticated-action ] 2keep
+ [ dup define-update swap "slot-names" word-prop
+ "crud-index" add [ 1array ] map rot
+ define-authenticated-action ] 2keep
+ dup define-delete swap scaffold-params rot
+ define-authenticated-action ;
+
+HELP: scaffold
+{ $values { "class" class } { "index" "an index" } { "realm" "a realm" } }
+"If realm is not f, then realm is used as the basic authentication realm for the scaffolding actions." ;
+
+ARTICLE: { "furnace" "crud" } "CRUD Scaffolding"
+{ $code
+ "\"libs/furnace\" require"
+ "USING: furnace httpd threads ;"
+ "IN: furnace:crud-example"
+ "TUPLE: foo bar baz ;"
+ "\"crud-example\" \"foo-list\" f web-app"
+ "foo \"bar\" f scaffold"
+ "[ 8888 httpd ] in-thread"
+} ;
\ No newline at end of file
--- /dev/null
+include vm/Config.macosx
+include vm/Config.x86.64
+CFLAGS += -arch x86_64
+#include <ucontext.h>
+
+INLINE void *ucontext_stack_pointer(void *uap)
+{
+ ucontext_t *ucontext = (ucontext_t *)uap;
+ return (void *)ucontext->uc_mcontext.gregs[15];
+}
+
#define UAP_PROGRAM_COUNTER(ucontext) \
(((ucontext_t *)(ucontext))->uc_mcontext.gregs[16])
--- /dev/null
+/* Fault handler information. MacOSX version.
+Copyright (C) 1993-1999, 2002-2003 Bruno Haible <clisp.org at bruno>
+Copyright (C) 2003 Paolo Bonzini <gnu.org at bonzini>
+
+Used under BSD license with permission from Paolo Bonzini and Bruno Haible,
+2005-03-10:
+
+http://sourceforge.net/mailarchive/message.php?msg_name=200503102200.32002.bruno%40clisp.org
+
+Modified for Factor by Slava Pestov and Daniel Ehrenberg */
+#define MACH_EXC_STATE_TYPE x86_exception_state64_t
+#define MACH_EXC_STATE_FLAVOR x86_EXCEPTION_STATE64
+#define MACH_EXC_STATE_COUNT x86_EXCEPTION_STATE64_COUNT
+#define MACH_THREAD_STATE_TYPE x86_thread_state64_t
+#define MACH_THREAD_STATE_FLAVOR x86_THREAD_STATE64
+#define MACH_THREAD_STATE_COUNT MACHINE_THREAD_STATE_COUNT
+
+#if __DARWIN_UNIX03
+ #define MACH_EXC_STATE_FAULT(exc_state) (exc_state)->__faultvaddr
+ #define MACH_STACK_POINTER(thr_state) (thr_state)->__rsp
+ #define MACH_PROGRAM_COUNTER(thr_state) (thr_state)->__rip
+ #define UAP_PROGRAM_COUNTER(ucontext) \
+ MACH_PROGRAM_COUNTER(&(((ucontext_t *)(ucontext))->uc_mcontext->__ss))
+#else
+ #define MACH_EXC_STATE_FAULT(exc_state) (exc_state)->faultvaddr
+ #define MACH_STACK_POINTER(thr_state) (thr_state)->rsp
+ #define MACH_PROGRAM_COUNTER(thr_state) (thr_state)->rip
+ #define UAP_PROGRAM_COUNTER(ucontext) \
+ MACH_PROGRAM_COUNTER(&(((ucontext_t *)(ucontext))->uc_mcontext->ss))
+#endif
+
+INLINE CELL fix_stack_pointer(CELL sp)
+{
+ return ((sp + 8) & ~15) - 8;
+}
ret = sigaction(signum, act, oldact);
}
while(ret == -1 && errno == EINTR);
+
+ if(ret == -1)
+ fatal_error("sigaction failed", 0);
}
void unix_init_signals(void)
DEFINE_PRIMITIVE(cwd)
{
- F_CHAR buf[MAX_PATH + 4];
+ F_CHAR buf[MAX_UNICODE_PATH];
- if(!GetCurrentDirectory(MAX_PATH + 4, buf))
+ if(!GetCurrentDirectory(MAX_UNICODE_PATH, buf))
io_error();
box_u16_string(buf);
void c_to_factor_toplevel(CELL quot)
{
- AddVectoredExceptionHandler(0, (void*)exception_handler);
+ if(!AddVectoredExceptionHandler(0, (void*)exception_handler))
+ fatal_error("AddVectoredExceptionHandler failed", 0);
c_to_factor(quot);
RemoveVectoredExceptionHandler((void*)exception_handler);
}
return safe_strdup(full_path);
}
-DEFINE_PRIMITIVE(stat)
+void stat_not_found(void)
+{
+ dpush(F);
+ dpush(F);
+ dpush(F);
+ dpush(F);
+}
+
+void find_file_stat(F_CHAR *path)
{
+ // FindFirstFile is the only call that can stat c:\pagefile.sys
WIN32_FIND_DATA st;
HANDLE h;
- F_CHAR *path = unbox_u16_string();
- if(INVALID_HANDLE_VALUE == (h = FindFirstFile(
- path,
- &st)))
- {
- dpush(F);
- dpush(F);
- dpush(F);
- dpush(F);
- }
+ if(INVALID_HANDLE_VALUE == (h = FindFirstFile(path, &st)))
+ stat_not_found();
else
{
box_boolean(st.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
}
}
+DEFINE_PRIMITIVE(stat)
+{
+ HANDLE h;
+ BY_HANDLE_FILE_INFORMATION bhfi;
+
+ F_CHAR *path = unbox_u16_string();
+ //wprintf(L"path = %s\n", path);
+ h = CreateFileW(path,
+ GENERIC_READ,
+ FILE_SHARE_READ,
+ NULL,
+ OPEN_EXISTING,
+ FILE_FLAG_BACKUP_SEMANTICS,
+ NULL);
+ if(h == INVALID_HANDLE_VALUE)
+ {
+ find_file_stat(path);
+ return;
+ }
+
+ if(!GetFileInformationByHandle(h, &bhfi))
+ stat_not_found();
+ else {
+ box_boolean(bhfi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
+ dpush(tag_fixnum(0));
+ box_unsigned_8(
+ (u64)bhfi.nFileSizeLow | (u64)bhfi.nFileSizeHigh << 32);
+ u64 lo = bhfi.ftLastWriteTime.dwLowDateTime;
+ u64 hi = bhfi.ftLastWriteTime.dwHighDateTime;
+ u64 modTime = (hi << 32) + lo;
+
+ box_unsigned_8((modTime - EPOCH_OFFSET) / 10000000);
+ }
+ CloseHandle(h);
+}
+
DEFINE_PRIMITIVE(read_dir)
{
HANDLE dir;
#include "os-macosx-x86.32.h"
#elif defined(FACTOR_PPC)
#include "os-macosx-ppc.h"
+ #elif defined(FACTOR_AMD64)
+ #include "os-macosx-x86.64.h"
#else
#error "Unsupported Mac OS X flavor"
#endif
#elif defined(FACTOR_ARM)
#include "os-linux-arm.h"
#elif defined(FACTOR_AMD64)
- #include "os-unix-ucontext.h"
#include "os-linux-x86-64.h"
#else
#error "Unsupported Linux flavor"
DEFINE_PRIMITIVE(curry)
{
- F_CURRY *curry = allot_object(CURRY_TYPE,sizeof(F_CURRY));
+ F_CURRY *curry;
switch(type_of(dpeek()))
{
case QUOTATION_TYPE:
case CURRY_TYPE:
+ curry = allot_object(CURRY_TYPE,sizeof(F_CURRY));
curry->quot = dpop();
curry->obj = dpop();
dpush(tag_object(curry));