<?xml version="1.0"?>

<!DOCTYPE MODE SYSTEM "xmode.dtd">

<MODE>
	<PROPS>
		<PROPERTY NAME="tabSize" VALUE="4" />
		<PROPERTY NAME="indentOpenBrackets" VALUE="{" />
		<PROPERTY NAME="indentCloseBrackets" VALUE="}" />
		<PROPERTY NAME="indentPrevLine"	VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />
		<PROPERTY NAME="doubleBracketIndent" VALUE="true" />
		<PROPERTY NAME="commentStart" VALUE="/*" />
		<PROPERTY NAME="commentEnd" VALUE="*/" />
		<PROPERTY NAME="lineComment" VALUE="//" />
		<PROPERTY NAME="commentStart" VALUE="&lt;!--" />
		<PROPERTY NAME="commentEnd" VALUE="--&gt;" />
		<PROPERTY NAME="commentStart" VALUE="&lt;!---" />
		<PROPERTY NAME="commentEnd" VALUE="---&gt;" />
	</PROPS>
	
	<RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
		<!-- CFML comment -->
		<SPAN TYPE="COMMENT2">
			<BEGIN>&lt;!---</BEGIN>
			<END>---&gt;</END>
		</SPAN>
		
		<!-- CFSCRIPT multi-line comment -->
		<SPAN TYPE="COMMENT1">
			<BEGIN>/*</BEGIN>
			<END>*/</END>
		</SPAN>
		
		<!-- - CFSCRIPT single-line comment - -->
		<EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>

		<!-- SGML comment -->
		<SPAN TYPE="COMMENT1">
			<BEGIN>&lt;!--</BEGIN>
			<END>--&gt;</END>
		</SPAN>
		
		<!-- CFScript -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFSCRIPT">
			<BEGIN>&lt;CFSCRIPT&gt;</BEGIN>
			<END>&lt;/CFSCRIPT&gt;</END>
		</SPAN>
		
		<!-- CFOutput -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFOUTPUT">
			<BEGIN>&lt;CFOUTPUT&gt;</BEGIN>
			<END>&lt;/CFOUTPUT&gt;</END>
		</SPAN>
		
		<!-- CFML markup start tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;CF</BEGIN>
			<END>&gt;</END>
		</SPAN>
		
		<!-- CFML markup end tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;/CF</BEGIN>
			<END>&gt;</END>
		</SPAN>

		<!-- JavaScript -->
		<SPAN TYPE="MARKUP" DELEGATE="javascript::MAIN">
			<BEGIN>&lt;SCRIPT</BEGIN>
			<END>&lt;/SCRIPT&gt;</END>
		</SPAN>

		<!-- stylesheet -->
		<SPAN TYPE="MARKUP" DELEGATE="css::MAIN">
			<BEGIN>&lt;STYLE</BEGIN>
			<END>&lt;/STYLE&gt;</END>
		</SPAN>

		<!-- markup tags -->
		<SPAN TYPE="MARKUP" DELEGATE="TAGS">
			<BEGIN>&lt;</BEGIN>
			<END>&gt;</END>
		</SPAN>

		<!-- SGML entities -->
		<SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">
			<BEGIN>&amp;</BEGIN>
			<END>;</END>
		</SPAN>
	</RULES>
	
	<RULES SET="CFTAGSTRINGS" DEFAULT="LITERAL1">
		<SPAN TYPE="LITERAL2">
			<BEGIN>#</BEGIN>
			<END>#</END>
		</SPAN>
	</RULES>

	<RULES SET="CFOUTPUT" DEFAULT="KEYWORD1" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
		<SPAN TYPE="LITERAL2">
			<BEGIN>#</BEGIN>
			<END>#</END>
		</SPAN>

		<!-- CFML markup start tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;CF</BEGIN>
			<END>&gt;</END>
		</SPAN>

		<!-- CFML markup end tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;/CF</BEGIN>
			<END>&gt;</END>
		</SPAN>
		
		<!-- CFML markup start tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFSCRIPT">
			<BEGIN>&lt;CFSCRIPT&gt;</BEGIN>
			<END>&lt;/CFSCRIPT&gt;</END>
		</SPAN>

		<!-- markup tags -->
		<SPAN TYPE="MARKUP" DELEGATE="TAGS">
			<BEGIN>&lt;</BEGIN>
			<END>&gt;</END>
		</SPAN>

		<!-- SGML entities -->
		<SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">
			<BEGIN>&amp;</BEGIN>
			<END>;</END>
		</SPAN>
	</RULES>
	
	<RULES SET="TAGS" DEFAULT="MARKUP" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
		<SPAN TYPE="LITERAL1" DELEGATE="CFTAGSTRINGS">
			<BEGIN>"</BEGIN>
			<END>"</END>
		</SPAN>
		<SPAN TYPE="LITERAL1" DELEGATE="CFTAGSTRINGS">
			<BEGIN>'</BEGIN>
			<END>'</END>
		</SPAN>

		<SEQ TYPE="OPERATOR">=</SEQ>

		<!-- CFML markup start tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;CF</BEGIN>
			<END>&gt;</END>
		</SPAN>

		<!-- CFML markup end tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFTAGS">
			<BEGIN>&lt;/CF</BEGIN>
			<END>&gt;</END>
		</SPAN>
		
		<!-- CFML markup start tags -->
		<SPAN TYPE="KEYWORD3" DELEGATE="CFSCRIPT">
			<BEGIN>&lt;CFSCRIPT&gt;</BEGIN>
			<END>&lt;/CFSCRIPT&gt;</END>
		</SPAN>
	</RULES>
	
	<RULES SET="CFSCRIPT" DEFAULT="KEYWORD1" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
		<WHITESPACE> </WHITESPACE>
		<WHITESPACE>	</WHITESPACE>
	
		<!-- CFSCRIPT multi-line comment -->
		<SPAN TYPE="COMMENT1">
			<BEGIN>/*</BEGIN>
			<END>*/</END>
		</SPAN>
		
		<!-- - CFSCRIPT single-line comment - -->
		<EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>
	
		<SPAN TYPE="LABEL">
			<BEGIN>"</BEGIN>
			<END>"</END>
		</SPAN>
		<SPAN TYPE="LABEL">
			<BEGIN>'</BEGIN>
			<END>'</END>
		</SPAN>
		
		<SEQ TYPE="LITERAL2">(</SEQ>
		<SEQ TYPE="LITERAL2">)</SEQ>
		
		<SEQ TYPE="OPERATOR">=</SEQ>
		<SEQ TYPE="OPERATOR">+</SEQ>
		<SEQ TYPE="OPERATOR">-</SEQ>
		<SEQ TYPE="OPERATOR">/</SEQ>
		<SEQ TYPE="OPERATOR">&gt;=</SEQ>
		<SEQ TYPE="OPERATOR">&lt;=</SEQ>
		<SEQ TYPE="OPERATOR">&gt;&lt;</SEQ>
		<SEQ TYPE="OPERATOR">*</SEQ>
		<SEQ TYPE="OPERATOR">!!</SEQ>
		<SEQ TYPE="OPERATOR">&amp;&amp;</SEQ>
		
		<KEYWORDS>
			<OPERATOR>IS</OPERATOR>
			<OPERATOR>EQ</OPERATOR>
			<OPERATOR>NEQ</OPERATOR>
			<OPERATOR>GT</OPERATOR>
			<OPERATOR>GE</OPERATOR>
			<OPERATOR>GTE</OPERATOR>
			<OPERATOR>LT</OPERATOR>
			<OPERATOR>LE</OPERATOR>
			<OPERATOR>LTE</OPERATOR>
			
			<OPERATOR>LESS</OPERATOR>
			<OPERATOR>GREATER</OPERATOR>
			<OPERATOR>THAN</OPERATOR>
			
			<OPERATOR>AND</OPERATOR>
			<OPERATOR>OR</OPERATOR>
			<OPERATOR>NOT</OPERATOR>
			<OPERATOR>XOR</OPERATOR>
			
			<FUNCTION>{</FUNCTION>
			<FUNCTION>}</FUNCTION>
			<FUNCTION>for</FUNCTION>
			<FUNCTION>while</FUNCTION>
			<FUNCTION>if</FUNCTION>
			<FUNCTION>}else</FUNCTION>
			<FUNCTION>}else{</FUNCTION>
			<FUNCTION>if(</FUNCTION>
			<FUNCTION>else</FUNCTION>
			<FUNCTION>break</FUNCTION>
			<FUNCTION>function</FUNCTION>
			<FUNCTION>try</FUNCTION>
			<FUNCTION>catch</FUNCTION>
			<FUNCTION>throw</FUNCTION>
			<FUNCTION>switch</FUNCTION>
			<FUNCTION>case</FUNCTION>
			<FUNCTION>try{</FUNCTION>
			<FUNCTION>catch(</FUNCTION>
			<FUNCTION>throw(</FUNCTION>
			<FUNCTION>switch(</FUNCTION>
			<FUNCTION>case(</FUNCTION>
			
			<FUNCTION>ArrayAppend</FUNCTION>
			<FUNCTION>ArrayAvg</FUNCTION>
			<FUNCTION>ArrayClear</FUNCTION>
			<FUNCTION>ArrayDeleteAt</FUNCTION>
			<FUNCTION>ArrayInsertAt</FUNCTION>
			<FUNCTION>ArrayIsEmpty</FUNCTION>
			<FUNCTION>ArrayLen</FUNCTION>
			<FUNCTION>ArrayMax</FUNCTION>
			<FUNCTION>ArrayMin</FUNCTION>
			<FUNCTION>ArrayNew</FUNCTION>
			<FUNCTION>ArrayPrepend</FUNCTION>
			<FUNCTION>ArrayResize</FUNCTION>
			<FUNCTION>ArraySet</FUNCTION>
			<FUNCTION>ArraySort</FUNCTION>
			<FUNCTION>ArraySum</FUNCTION>
			<FUNCTION>ArraySwap</FUNCTION>
			<FUNCTION>ArrayToList</FUNCTION>
			<FUNCTION>IsArray</FUNCTION>
			<FUNCTION>ListToArray</FUNCTION>

			<FUNCTION>CreateDate</FUNCTION>
			<FUNCTION>CreateDateTime</FUNCTION>
			<FUNCTION>CreateODBCTime</FUNCTION>
			<FUNCTION>CreateODBCDate</FUNCTION>
			<FUNCTION>CreateODBCDateTime</FUNCTION>
			<FUNCTION>CreateTime</FUNCTION>
			<FUNCTION>CreateTimeSpan</FUNCTION>
			<FUNCTION>DateAdd</FUNCTION>
			<FUNCTION>DateCompare</FUNCTION>
			<FUNCTION>DateDiff</FUNCTION>
			<FUNCTION>DatePart</FUNCTION>
			<FUNCTION>Day</FUNCTION>
			<FUNCTION>DayOfWeek</FUNCTION>
			<FUNCTION>DayOfWeekAsString</FUNCTION>
			<FUNCTION>DayOfYear</FUNCTION>
			<FUNCTION>DaysInMonth</FUNCTION>
			<FUNCTION>DaysInYear</FUNCTION>
			<FUNCTION>FirstDayOfMonth</FUNCTION>
			<FUNCTION>Hour</FUNCTION>
			<FUNCTION>Minute</FUNCTION>
			<FUNCTION>Month</FUNCTION>
			<FUNCTION>MonthAsString</FUNCTION>
			<FUNCTION>Now</FUNCTION>
			<FUNCTION>ParseDateTime</FUNCTION>
			<FUNCTION>Quarter</FUNCTION>
			<FUNCTION>Second</FUNCTION>
			<FUNCTION>Week</FUNCTION>
			<FUNCTION>Year</FUNCTION>

			<FUNCTION>IsArray</FUNCTION>
			<FUNCTION>IsAuthenticated</FUNCTION>
			<FUNCTION>IsAuthorized</FUNCTION>
			<FUNCTION>IsBoolean</FUNCTION>
			<FUNCTION>IsDate</FUNCTION>
			<FUNCTION>IsDebugMode</FUNCTION>
			<FUNCTION>IsDefined</FUNCTION>
			<FUNCTION>IsLeapYear</FUNCTION>
			<FUNCTION>IsNumeric</FUNCTION>
			<FUNCTION>IsNumericDate</FUNCTION>
			<FUNCTION>IsQuery</FUNCTION>
			<FUNCTION>IsSimpleValue</FUNCTION>
			<FUNCTION>IsStruct</FUNCTION>

			<FUNCTION>DateFormat</FUNCTION>
			<FUNCTION>DecimalFormat</FUNCTION>
			<FUNCTION>DollarFormat</FUNCTION>
			<FUNCTION>FormatBaseN</FUNCTION>
			<FUNCTION>HTMLCodeFormat</FUNCTION>
			<FUNCTION>HTMLEditFormat</FUNCTION>
			<FUNCTION>NumberFormat</FUNCTION>
			<FUNCTION>ParagraphFormat</FUNCTION>
			<FUNCTION>TimeFormat</FUNCTION>
			<FUNCTION>YesNoFormat</FUNCTION>

			<FUNCTION>DE</FUNCTION>
			<FUNCTION>Evaluate</FUNCTION>
			<FUNCTION>IIf</FUNCTION>
			<FUNCTION>SetVariable</FUNCTION>

			<FUNCTION>ArrayToList</FUNCTION>
			<FUNCTION>ListAppend</FUNCTION>
			<FUNCTION>ListChangeDelims</FUNCTION>
			<FUNCTION>ListContains</FUNCTION>
			<FUNCTION>ListContainsNoCase</FUNCTION>
			<FUNCTION>ListDeleteAt</FUNCTION>
			<FUNCTION>ListFind</FUNCTION>
			<FUNCTION>ListFindNoCase</FUNCTION>
			<FUNCTION>ListFirst</FUNCTION>
			<FUNCTION>ListGetAt</FUNCTION>
			<FUNCTION>ListInsertAt</FUNCTION>
			<FUNCTION>ListLast</FUNCTION>
			<FUNCTION>ListLen</FUNCTION>
			<FUNCTION>ListPrepend</FUNCTION>
			<FUNCTION>ListRest</FUNCTION>
			<FUNCTION>ListSetAt</FUNCTION>
			<FUNCTION>ListToArray</FUNCTION>

			<FUNCTION>StructClear</FUNCTION>
			<FUNCTION>StructCopy</FUNCTION>
			<FUNCTION>StructCount</FUNCTION>
			<FUNCTION>StructDelete</FUNCTION>
			<FUNCTION>StructFind</FUNCTION>
			<FUNCTION>StructInsert</FUNCTION>
			<FUNCTION>StructIsEmpty</FUNCTION>
			<FUNCTION>StructKeyExists</FUNCTION>
			<FUNCTION>StructNew</FUNCTION>
			<FUNCTION>StructUpdate</FUNCTION>

			<FUNCTION>GetLocale</FUNCTION>
			<FUNCTION>LSCurrencyFormat</FUNCTION>
			<FUNCTION>LSDateFormat</FUNCTION>
			<FUNCTION>LSIsCurrency</FUNCTION>
			<FUNCTION>LSIsDate</FUNCTION>
			<FUNCTION>LSIsNumeric</FUNCTION>
			<FUNCTION>LSNumberFormat</FUNCTION>
			<FUNCTION>LSParseCurrency</FUNCTION>
			<FUNCTION>LSParseDateTime</FUNCTION>
			<FUNCTION>LSParseNumber</FUNCTION>
			<FUNCTION>LSTimeFormat</FUNCTION>
			<FUNCTION>SetLocale</FUNCTION>

			<FUNCTION>Abs</FUNCTION>
			<FUNCTION>Atn</FUNCTION>
			<FUNCTION>BitAnd</FUNCTION>
			<FUNCTION>BitMaskClear</FUNCTION>
			<FUNCTION>BitMaskRead</FUNCTION>
			<FUNCTION>BitMaskSet</FUNCTION>
			<FUNCTION>BitNot</FUNCTION>
			<FUNCTION>BitOr</FUNCTION>
			<FUNCTION>BitSHLN</FUNCTION>
			<FUNCTION>BitSHRN</FUNCTION>
			<FUNCTION>BitXor</FUNCTION>
			<FUNCTION>Ceiling</FUNCTION>
			<FUNCTION>Cos</FUNCTION>
			<FUNCTION>DecrementValue</FUNCTION>
			<FUNCTION>Exp</FUNCTION>
			<FUNCTION>Fix</FUNCTION>
			<FUNCTION>IncrementValue</FUNCTION>
			<FUNCTION>InputBaseN</FUNCTION>
			<FUNCTION>Int</FUNCTION>
			<FUNCTION>Log</FUNCTION>
			<FUNCTION>Log10</FUNCTION>
			<FUNCTION>Max</FUNCTION>
			<FUNCTION>Min</FUNCTION>
			<FUNCTION>Pi</FUNCTION>
			<FUNCTION>Rand</FUNCTION>
			<FUNCTION>Randomize</FUNCTION>
			<FUNCTION>RandRange</FUNCTION>
			<FUNCTION>Round</FUNCTION>
			<FUNCTION>Sgn</FUNCTION>
			<FUNCTION>Sin</FUNCTION>
			<FUNCTION>Sqr</FUNCTION>
			<FUNCTION>Tan</FUNCTION>

			<FUNCTION>Asc</FUNCTION>
			<FUNCTION>Chr</FUNCTION>
			<FUNCTION>CJustify</FUNCTION>
			<FUNCTION>Compare</FUNCTION>
			<FUNCTION>CompareNoCase</FUNCTION>
			<FUNCTION>Find</FUNCTION>
			<FUNCTION>FindNoCase</FUNCTION>
			<FUNCTION>FindOneOf</FUNCTION>
			<FUNCTION>GetToken</FUNCTION>
			<FUNCTION>Insert</FUNCTION>
			<FUNCTION>LCase</FUNCTION>
			<FUNCTION>Left</FUNCTION>
			<FUNCTION>Len</FUNCTION>
			<FUNCTION>LJustify</FUNCTION>
			<FUNCTION>LTrim</FUNCTION>
			<FUNCTION>Mid</FUNCTION>
			<FUNCTION>REFind</FUNCTION>
			<FUNCTION>REFindNoCase</FUNCTION>
			<FUNCTION>RemoveChars</FUNCTION>
			<FUNCTION>RepeatString</FUNCTION>
			<FUNCTION>Replace</FUNCTION>
			<FUNCTION>ReplaceList</FUNCTION>
			<FUNCTION>ReplaceNoCase</FUNCTION>
			<FUNCTION>REReplace</FUNCTION>
			<FUNCTION>REReplaceNoCase</FUNCTION>
			<FUNCTION>Reverse</FUNCTION>
			<FUNCTION>Right</FUNCTION>
			<FUNCTION>RJustify</FUNCTION>
			<FUNCTION>RTrim</FUNCTION>
			<FUNCTION>SpanExcluding</FUNCTION>
			<FUNCTION>SpanIncluding</FUNCTION>
			<FUNCTION>Trim</FUNCTION>
			<FUNCTION>UCase</FUNCTION>
			<FUNCTION>Val</FUNCTION>

			<FUNCTION>DirectoryExists</FUNCTION>
			<FUNCTION>ExpandPath</FUNCTION>
			<FUNCTION>FileExists</FUNCTION>
			<FUNCTION>GetDirectoryFromPath</FUNCTION>
			<FUNCTION>GetFileFromPath</FUNCTION>
			<FUNCTION>GetTempDirectory</FUNCTION>
			<FUNCTION>GetTempFile</FUNCTION>
			<FUNCTION>GetTemplatePath</FUNCTION>

			<FUNCTION>QueryAddRow</FUNCTION>
			<FUNCTION>QueryNew</FUNCTION>
			<FUNCTION>QuerySetCell</FUNCTION>

			<FUNCTION>Decrypt</FUNCTION>
			<FUNCTION>DeleteClientVariable</FUNCTION>
			<FUNCTION>Encrypt</FUNCTION>
			<FUNCTION>GetBaseTagData</FUNCTION>
			<FUNCTION>GetBaseTagList</FUNCTION>
			<FUNCTION>GetClientVariablesList</FUNCTION>
			<FUNCTION>GetTickCount</FUNCTION>
			<FUNCTION>PreserveSingleQuotes</FUNCTION>
			<FUNCTION>QuotedValueList</FUNCTION>
			<FUNCTION>StripCR</FUNCTION>
			<FUNCTION>URLEncodedFormat</FUNCTION>
			<FUNCTION>ValueList</FUNCTION>
			<FUNCTION>WriteOutput</FUNCTION>

			<FUNCTION>ParameterExists</FUNCTION>
		</KEYWORDS>
	</RULES>

	<RULES SET="CFTAGS" DEFAULT="KEYWORD3" HIGHLIGHT_DIGITS="TRUE">
		<WHITESPACE> </WHITESPACE>
		<WHITESPACE>	</WHITESPACE>

		<SPAN TYPE="LITERAL1" DELEGATE="CFTAGSTRINGS">
			<BEGIN>"</BEGIN>
			<END>"</END>
		</SPAN>
		<SPAN TYPE="LITERAL1" DELEGATE="CFTAGSTRINGS">
			<BEGIN>'</BEGIN>
			<END>'</END>
		</SPAN>

		<SEQ TYPE="OPERATOR">=</SEQ>
		<SEQ TYPE="KEYWORD3">##</SEQ>

		<KEYWORDS>
			<KEYWORD2>ArrayAppend</KEYWORD2>
			<KEYWORD2>ArrayAvg</KEYWORD2>
			<KEYWORD2>ArrayClear</KEYWORD2>
			<KEYWORD2>ArrayDeleteAt</KEYWORD2>
			<KEYWORD2>ArrayInsertAt</KEYWORD2>
			<KEYWORD2>ArrayIsEmpty</KEYWORD2>
			<KEYWORD2>ArrayLen</KEYWORD2>
			<KEYWORD2>ArrayMax</KEYWORD2>
			<KEYWORD2>ArrayMin</KEYWORD2>
			<KEYWORD2>ArrayNew</KEYWORD2>
			<KEYWORD2>ArrayPrepend</KEYWORD2>
			<KEYWORD2>ArrayResize</KEYWORD2>
			<KEYWORD2>ArraySet</KEYWORD2>
			<KEYWORD2>ArraySort</KEYWORD2>
			<KEYWORD2>ArraySum</KEYWORD2>
			<KEYWORD2>ArraySwap</KEYWORD2>
			<KEYWORD2>ArrayToList</KEYWORD2>
			<KEYWORD2>IsArray</KEYWORD2>
			<KEYWORD2>ListToArray</KEYWORD2>

			<KEYWORD2>CreateDate</KEYWORD2>
			<KEYWORD2>CreateDateTime</KEYWORD2>
			<KEYWORD2>CreateODBCTime</KEYWORD2>
			<KEYWORD2>CreateODBCDate</KEYWORD2>
			<KEYWORD2>CreateODBCDateTime</KEYWORD2>
			<KEYWORD2>CreateTime</KEYWORD2>
			<KEYWORD2>CreateTimeSpan</KEYWORD2>
			<KEYWORD2>DateAdd</KEYWORD2>
			<KEYWORD2>DateCompare</KEYWORD2>
			<KEYWORD2>DateDiff</KEYWORD2>
			<KEYWORD2>DatePart</KEYWORD2>
			<KEYWORD2>Day</KEYWORD2>
			<KEYWORD2>DayOfWeek</KEYWORD2>
			<KEYWORD2>DayOfWeekAsString</KEYWORD2>
			<KEYWORD2>DayOfYear</KEYWORD2>
			<KEYWORD2>DaysInMonth</KEYWORD2>
			<KEYWORD2>DaysInYear</KEYWORD2>
			<KEYWORD2>FirstDayOfMonth</KEYWORD2>
			<KEYWORD2>Hour</KEYWORD2>
			<KEYWORD2>Minute</KEYWORD2>
			<KEYWORD2>Month</KEYWORD2>
			<KEYWORD2>MonthAsString</KEYWORD2>
			<KEYWORD2>Now</KEYWORD2>
			<KEYWORD2>ParseDateTime</KEYWORD2>
			<KEYWORD2>Quarter</KEYWORD2>
			<KEYWORD2>Second</KEYWORD2>
			<KEYWORD2>Week</KEYWORD2>
			<KEYWORD2>Year</KEYWORD2>

			<KEYWORD2>IsArray</KEYWORD2>
			<KEYWORD2>IsAuthenticated</KEYWORD2>
			<KEYWORD2>IsAuthorized</KEYWORD2>
			<KEYWORD2>IsBoolean</KEYWORD2>
			<KEYWORD2>IsDate</KEYWORD2>
			<KEYWORD2>IsDebugMode</KEYWORD2>
			<KEYWORD2>IsDefined</KEYWORD2>
			<KEYWORD2>IsLeapYear</KEYWORD2>
			<KEYWORD2>IsNumeric</KEYWORD2>
			<KEYWORD2>IsNumericDate</KEYWORD2>
			<KEYWORD2>IsQuery</KEYWORD2>
			<KEYWORD2>IsSimpleValue</KEYWORD2>
			<KEYWORD2>IsStruct</KEYWORD2>

			<KEYWORD2>DateFormat</KEYWORD2>
			<KEYWORD2>DecimalFormat</KEYWORD2>
			<KEYWORD2>DollarFormat</KEYWORD2>
			<KEYWORD2>FormatBaseN</KEYWORD2>
			<KEYWORD2>HTMLCodeFormat</KEYWORD2>
			<KEYWORD2>HTMLEditFormat</KEYWORD2>
			<KEYWORD2>NumberFormat</KEYWORD2>
			<KEYWORD2>ParagraphFormat</KEYWORD2>
			<KEYWORD2>TimeFormat</KEYWORD2>
			<KEYWORD2>YesNoFormat</KEYWORD2>

			<KEYWORD2>DE</KEYWORD2>
			<KEYWORD2>Evaluate</KEYWORD2>
			<KEYWORD2>IIf</KEYWORD2>
			<KEYWORD2>SetVariable</KEYWORD2>

			<KEYWORD2>ArrayToList</KEYWORD2>
			<KEYWORD2>ListAppend</KEYWORD2>
			<KEYWORD2>ListChangeDelims</KEYWORD2>
			<KEYWORD2>ListContains</KEYWORD2>
			<KEYWORD2>ListContainsNoCase</KEYWORD2>
			<KEYWORD2>ListDeleteAt</KEYWORD2>
			<KEYWORD2>ListFind</KEYWORD2>
			<KEYWORD2>ListFindNoCase</KEYWORD2>
			<KEYWORD2>ListFirst</KEYWORD2>
			<KEYWORD2>ListGetAt</KEYWORD2>
			<KEYWORD2>ListInsertAt</KEYWORD2>
			<KEYWORD2>ListLast</KEYWORD2>
			<KEYWORD2>ListLen</KEYWORD2>
			<KEYWORD2>ListPrepend</KEYWORD2>
			<KEYWORD2>ListRest</KEYWORD2>
			<KEYWORD2>ListSetAt</KEYWORD2>
			<KEYWORD2>ListToArray</KEYWORD2>

			<KEYWORD2>StructClear</KEYWORD2>
			<KEYWORD2>StructCopy</KEYWORD2>
			<KEYWORD2>StructCount</KEYWORD2>
			<KEYWORD2>StructDelete</KEYWORD2>
			<KEYWORD2>StructFind</KEYWORD2>
			<KEYWORD2>StructInsert</KEYWORD2>
			<KEYWORD2>StructIsEmpty</KEYWORD2>
			<KEYWORD2>StructKeyExists</KEYWORD2>
			<KEYWORD2>StructNew</KEYWORD2>
			<KEYWORD2>StructUpdate</KEYWORD2>

			<KEYWORD2>GetLocale</KEYWORD2>
			<KEYWORD2>LSCurrencyFormat</KEYWORD2>
			<KEYWORD2>LSDateFormat</KEYWORD2>
			<KEYWORD2>LSIsCurrency</KEYWORD2>
			<KEYWORD2>LSIsDate</KEYWORD2>
			<KEYWORD2>LSIsNumeric</KEYWORD2>
			<KEYWORD2>LSNumberFormat</KEYWORD2>
			<KEYWORD2>LSParseCurrency</KEYWORD2>
			<KEYWORD2>LSParseDateTime</KEYWORD2>
			<KEYWORD2>LSParseNumber</KEYWORD2>
			<KEYWORD2>LSTimeFormat</KEYWORD2>
			<KEYWORD2>SetLocale</KEYWORD2>

			<KEYWORD2>Abs</KEYWORD2>
			<KEYWORD2>Atn</KEYWORD2>
			<KEYWORD2>BitAnd</KEYWORD2>
			<KEYWORD2>BitMaskClear</KEYWORD2>
			<KEYWORD2>BitMaskRead</KEYWORD2>
			<KEYWORD2>BitMaskSet</KEYWORD2>
			<KEYWORD2>BitNot</KEYWORD2>
			<KEYWORD2>BitOr</KEYWORD2>
			<KEYWORD2>BitSHLN</KEYWORD2>
			<KEYWORD2>BitSHRN</KEYWORD2>
			<KEYWORD2>BitXor</KEYWORD2>
			<KEYWORD2>Ceiling</KEYWORD2>
			<KEYWORD2>Cos</KEYWORD2>
			<KEYWORD2>DecrementValue</KEYWORD2>
			<KEYWORD2>Exp</KEYWORD2>
			<KEYWORD2>Fix</KEYWORD2>
			<KEYWORD2>IncrementValue</KEYWORD2>
			<KEYWORD2>InputBaseN</KEYWORD2>
			<KEYWORD2>Int</KEYWORD2>
			<KEYWORD2>Log</KEYWORD2>
			<KEYWORD2>Log10</KEYWORD2>
			<KEYWORD2>Max</KEYWORD2>
			<KEYWORD2>Min</KEYWORD2>
			<KEYWORD2>Pi</KEYWORD2>
			<KEYWORD2>Rand</KEYWORD2>
			<KEYWORD2>Randomize</KEYWORD2>
			<KEYWORD2>RandRange</KEYWORD2>
			<KEYWORD2>Round</KEYWORD2>
			<KEYWORD2>Sgn</KEYWORD2>
			<KEYWORD2>Sin</KEYWORD2>
			<KEYWORD2>Sqr</KEYWORD2>
			<KEYWORD2>Tan</KEYWORD2>

			<KEYWORD2>Asc</KEYWORD2>
			<KEYWORD2>Chr</KEYWORD2>
			<KEYWORD2>CJustify</KEYWORD2>
			<KEYWORD2>Compare</KEYWORD2>
			<KEYWORD2>CompareNoCase</KEYWORD2>
			<KEYWORD2>Find</KEYWORD2>
			<KEYWORD2>FindNoCase</KEYWORD2>
			<KEYWORD2>FindOneOf</KEYWORD2>
			<KEYWORD2>GetToken</KEYWORD2>
			<KEYWORD2>Insert</KEYWORD2>
			<KEYWORD2>LCase</KEYWORD2>
			<KEYWORD2>Left</KEYWORD2>
			<KEYWORD2>Len</KEYWORD2>
			<KEYWORD2>LJustify</KEYWORD2>
			<KEYWORD2>LTrim</KEYWORD2>
			<KEYWORD2>Mid</KEYWORD2>
			<KEYWORD2>REFind</KEYWORD2>
			<KEYWORD2>REFindNoCase</KEYWORD2>
			<KEYWORD2>RemoveChars</KEYWORD2>
			<KEYWORD2>RepeatString</KEYWORD2>
			<KEYWORD2>Replace</KEYWORD2>
			<KEYWORD2>ReplaceList</KEYWORD2>
			<KEYWORD2>ReplaceNoCase</KEYWORD2>
			<KEYWORD2>REReplace</KEYWORD2>
			<KEYWORD2>REReplaceNoCase</KEYWORD2>
			<KEYWORD2>Reverse</KEYWORD2>
			<KEYWORD2>Right</KEYWORD2>
			<KEYWORD2>RJustify</KEYWORD2>
			<KEYWORD2>RTrim</KEYWORD2>
			<KEYWORD2>SpanExcluding</KEYWORD2>
			<KEYWORD2>SpanIncluding</KEYWORD2>
			<KEYWORD2>Trim</KEYWORD2>
			<KEYWORD2>UCase</KEYWORD2>
			<KEYWORD2>Val</KEYWORD2>

			<KEYWORD2>DirectoryExists</KEYWORD2>
			<KEYWORD2>ExpandPath</KEYWORD2>
			<KEYWORD2>FileExists</KEYWORD2>
			<KEYWORD2>GetDirectoryFromPath</KEYWORD2>
			<KEYWORD2>GetFileFromPath</KEYWORD2>
			<KEYWORD2>GetTempDirectory</KEYWORD2>
			<KEYWORD2>GetTempFile</KEYWORD2>
			<KEYWORD2>GetTemplatePath</KEYWORD2>

			<KEYWORD2>QueryAddRow</KEYWORD2>
			<KEYWORD2>QueryNew</KEYWORD2>
			<KEYWORD2>QuerySetCell</KEYWORD2>

			<KEYWORD2>Decrypt</KEYWORD2>
			<KEYWORD2>DeleteClientVariable</KEYWORD2>
			<KEYWORD2>Encrypt</KEYWORD2>
			<KEYWORD2>GetBaseTagData</KEYWORD2>
			<KEYWORD2>GetBaseTagList</KEYWORD2>
			<KEYWORD2>GetClientVariablesList</KEYWORD2>
			<KEYWORD2>GetTickCount</KEYWORD2>
			<KEYWORD2>PreserveSingleQuotes</KEYWORD2>
			<KEYWORD2>QuotedValueList</KEYWORD2>
			<KEYWORD2>StripCR</KEYWORD2>
			<KEYWORD2>URLEncodedFormat</KEYWORD2>
			<KEYWORD2>ValueList</KEYWORD2>
			<KEYWORD2>WriteOutput</KEYWORD2>

			<KEYWORD2>ParameterExists</KEYWORD2>

			<OPERATOR>IS</OPERATOR>
			<OPERATOR>EQ</OPERATOR>
			<OPERATOR>NEQ</OPERATOR>
			<OPERATOR>GT</OPERATOR>
			<OPERATOR>GE</OPERATOR>
			<OPERATOR>GTE</OPERATOR>
			<OPERATOR>LT</OPERATOR>
			<OPERATOR>LE</OPERATOR>
			<OPERATOR>LTE</OPERATOR>

			<OPERATOR>LESS</OPERATOR>
			<OPERATOR>GREATER</OPERATOR>
			<OPERATOR>THAN</OPERATOR>

			<OPERATOR>AND</OPERATOR>
			<OPERATOR>OR</OPERATOR>
			<OPERATOR>NOT</OPERATOR>
			<OPERATOR>XOR</OPERATOR>
		</KEYWORDS>
	</RULES>
</MODE>
