<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE language><language name="CoffeeScript" alternativeNames="Coffee;Coffee-Script" version="16" kateversion="5.62" section="Scripts" extensions="Cakefile;*.coffee;*.coco;*.cson" mimetype="text/x-coffeescript;application/x-coffeescript;application/vnd.coffeescript" indenter="python" author="Max Shawabkeh (max99x@gmail.com)" license="MIT"><highlighting><list name="value_keywords"><item>Infinity</item><item>NaN</item><item>false</item><item>no</item><item>null</item><item>off</item><item>on</item><item>true</item><item>undefined</item><item>yes</item></list><list name="keywords"><item>and</item><item>break</item><item>by</item><item>catch</item><item>constructor</item><item>continue</item><item>delete</item><item>do</item><item>else</item><item>finally</item><item>for</item><item>if</item><item>in</item><item>is</item><item>isnt</item><item>loop</item><item>not</item><item>of</item><item>or</item><item>return</item><item>super</item><item>switch</item><item>then</item><item>throw</item><item>try</item><item>typeof</item><item>unless</item><item>until</item><item>when</item><item>where</item><item>while</item></list><list name="class_keywords"><item>class</item><item>extends</item><item>instanceof</item><item>new</item></list><list name="reserved"><item>__bind</item><item>__extends</item><item>__hasProp</item><item>__indexOf</item><item>__slice</item><item>case</item><item>const</item><item>default</item><item>enum</item><item>export</item><item>function</item><item>import</item><item>let</item><item>native</item><item>var</item><item>void</item><item>with</item></list><list name="globals"><item>Array</item><item>Boolean</item><item>Date</item><item>Function</item><item>Math</item><item>Number</item><item>Object</item><item>RegExp</item><item>String</item><item>clearInterval</item><item>clearTimeout</item><item>console</item><item>decodeURI</item><item>decodeURIComponent</item><item>encodeURI</item><item>encodeURIComponent</item><item>escape</item><item>eval</item><item>isFinite</item><item>isNaN</item><item>parseFloat</item><item>parseInt</item><item>setInterval</item><item>setTimeout</item><item>unescape</item></list><list name="browser_globals"><item>alert</item><item>document</item><item>history</item><item>location</item><item>navigator</item><item>prompt</item><item>screen</item><item>window</item></list><list name="nodejs_globals"><item>GLOBAL</item><item>exports</item><item>process</item><item>require</item></list><contexts><context name="Normal" attribute="Normal"><DetectSpaces/><Float attribute="Float"/><Int attribute="Decimal"/><HlCOct attribute="Oct"/><HlCHex attribute="Hex"/><keyword String="keywords" attribute="Keyword"/><keyword String="class_keywords" attribute="Keyword" context="Class"/><keyword String="value_keywords" attribute="Value Keywords"/><keyword String="reserved" attribute="Reserved"/><keyword String="globals" attribute="Globals"/><keyword String="browser_globals" attribute="Browser Globals"/><keyword String="nodejs_globals" attribute="Node.js Globals"/><RegExpr String="(?:@[_$a-zA-Z][$\w]*|\bthis)\b" attribute="Accessor"/><RegExpr String="(?:\((?:\'[^']*'|&#34;[^&#34;]*&#34;|[^()])*\))?\s*(?:\-|=)>" attribute="Function" insensitive="1"/><RegExpr String="[_$a-z][$\w]*\b" attribute="Identifier" insensitive="1"/><StringDetect String="'''" attribute="String" context="Heredoc" beginRegion="Heredoc"/><StringDetect String='"""' attribute="String" context="Rich Heredoc" beginRegion="Rich Heredoc"/><DetectChar char="'" attribute="String" context="String"/><DetectChar char='"' attribute="String" context="Rich String"/><StringDetect String="```" attribute="Javascript" context="Javascript Triple Backticks" beginRegion="Javascript TB"/><DetectChar char="`" attribute="Javascript" context="Javascript" beginRegion="Javascript"/><StringDetect String="###" attribute="Comment" context="Multiline Comment" beginRegion="Comment"/><DetectChar char="#" attribute="Comment" context="Comment"/><StringDetect String="///" attribute="Regex" context="Multiline Regex" beginRegion="Multiline Regex"/><RegExpr String="/(?:[^/\\\r\n]|\\.)*/[mig]{0,3}" attribute="Regex"/><DetectChar char="." attribute="Symbol" context="Member Object"/><AnyChar String="():!%&amp;+,-/.*&lt;=>?[]|~^;{}" attribute="Symbol"/></context><context name="Escape" attribute="String"><RegExpr String="\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u\{[0-9a-fA-F]+\}|[\\0bfnrtv&#34;'])" attribute="Escape"/><RegExpr String="\\[ux1-7]" attribute="Error"/><RegExpr String="\\." attribute="Literal Character Escape"/><LineContinue attribute="Escape"/></context><context name="Overwrite Javascript" attribute="Normal" noIndentationBasedFolding="1"><StringDetect String="\`" attribute="JavaScript Template" context="Javascript Template" beginRegion="Template"/><RegExpr String="\b(String)\s*(\.)\s*(raw)\s*\\`" context="Javascript StartRawTemplate" lookAhead="1"/><RegExpr String="[a-zA-Z_$[:^ascii:]][\w$[:^ascii:]]*(?=\s*\\`)" attribute="JavaScript Function Name"/><RegExpr String="\bString\s*\.\s*raw(?=\s*`)" attribute="Error"/><RegExpr String="[a-zA-Z_$[:^ascii:]][\w$[:^ascii:]]*(?=\s*`)" attribute="Normal"/><DetectChar char="{" attribute="Normal" context="JavaScript Object" beginRegion="Brace"/></context><context name="Comment" attribute="Comment" lineEndContext="#pop"><IncludeRules context="##Comments"/></context><context name="Embedding" attribute="Normal"><DetectChar char="}" attribute="Embedding" context="#pop"/></context><context name="JavaScript-TB Object" attribute="Normal" noIndentationBasedFolding="1"><StringDetect String="```" attribute="Javascript" context="#pop" lookAhead="1"/><DetectChar char="}" attribute="Normal" context="#pop" endRegion="Brace"/><DetectChar char="{" attribute="Normal" context="JavaScript-TB Object" beginRegion="Brace"/><IncludeRules context="Object##JavaScript"/></context><context name="Class" attribute="Normal"><DetectSpaces/><RegExpr String="[@$:.\w\[\]]+" attribute="Class" context="#pop"/></context><context name="Heredoc" attribute="String" noIndentationBasedFolding="1"><IncludeRules context="Escape"/><StringDetect String="'''" attribute="String" context="#pop" endRegion="Heredoc"/></context><context name="JavaScript Object" attribute="Normal" noIndentationBasedFolding="1"><DetectChar char="`" context="#pop" lookAhead="1"/><DetectChar char="}" attribute="Normal" context="#pop" endRegion="Brace"/><IncludeRules context="Overwrite Javascript"/><IncludeRules context="Object##JavaScript"/></context><context name="Javascript" attribute="Normal" noIndentationBasedFolding="1"><DetectChar char="`" attribute="Javascript" context="#pop" endRegion="Javascript"/><IncludeRules context="Overwrite Javascript"/><IncludeRules context="Normal##JavaScript" includeAttrib="1"/></context><context name="Javascript RawTemplate" attribute="JavaScript Template" noIndentationBasedFolding="1"><StringDetect String="\\" attribute="JavaScript Template"/><StringDetect String="\`" attribute="JavaScript Template" context="RegExpAfterString##JavaScript" endRegion="Template"/><DetectChar char="`" context="#pop" lookAhead="1"/><RegExpr String="(?:[^\\\s](?=`)|\S(?=\s+`))" attribute="Error"/></context><context name="Javascript StartRawTemplate" attribute="JavaScript Template" lineEndContext="#pop" noIndentationBasedFolding="1"><DetectSpaces/><StringDetect String="\`" attribute="JavaScript Template" context="#pop!Javascript RawTemplate" beginRegion="Template"/><StringDetect String="%1" attribute="JavaScript Built-in Objects" dynamic="1"/><DetectChar char="2" attribute="JavaScript Symbol" dynamic="1"/><StringDetect String="%3" attribute="JavaScript Function Name" dynamic="1"/></context><context name="Javascript Substitution" attribute="Normal" noIndentationBasedFolding="1"><DetectChar char="`" attribute="Javascript" context="#pop" lookAhead="1"/><DetectChar char="}" attribute="JavaScript Substitution" context="#pop"/><IncludeRules context="Overwrite Javascript"/><IncludeRules context="Substitution##JavaScript"/></context><context name="Javascript Template" attribute="JavaScript Template" noIndentationBasedFolding="1"><StringDetect String="\\\`" attribute="Escape"/><StringDetect String="\`" attribute="JavaScript Template" context="RegExpAfterString##JavaScript" endRegion="Template"/><DetectChar char="`" context="#pop" lookAhead="1"/><StringDetect String="${" attribute="JavaScript Substitution" context="Javascript Substitution"/><IncludeRules context="Template##JavaScript"/><RegExpr String="(?:[^\\\s](?=`)|\S(?=\s+`))" attribute="Error"/></context><context name="Javascript Triple Backticks" attribute="Normal" noIndentationBasedFolding="1"><StringDetect String="```" attribute="Javascript" context="#pop" endRegion="Javascript TB"/><DetectChar char="{" attribute="Normal" context="JavaScript-TB Object" beginRegion="Brace"/><IncludeRules context="Normal##JavaScript" includeAttrib="1"/></context><context name="Member Object" attribute="Normal" fallthroughContext="#pop" lineEndContext="#pop"><RegExpr String="\s*[_$a-z][$\w]*" attribute="Identifier" context="#pop" insensitive="1"/></context><context name="Multiline Comment" attribute="Comment" noIndentationBasedFolding="1"><StringDetect String="###" attribute="Comment" context="#pop" endRegion="Comment"/><IncludeRules context="##Comments"/></context><context name="Multiline Regex" attribute="Regex" noIndentationBasedFolding="1"><HlCStringChar attribute="Regex"/><DetectChar char="#" attribute="Comment" context="Comment"/><RegExpr String="///[mig]{0,3}" attribute="Regex" context="#pop" endRegion="Multiline Regex"/></context><context name="Rich Heredoc" attribute="String" noIndentationBasedFolding="1"><IncludeRules context="Escape"/><StringDetect String="#{" attribute="Embedding" context="Embedding"/><StringDetect String='"""' attribute="String" context="#pop" endRegion="Rich Heredoc"/></context><context name="Rich String" attribute="String"><IncludeRules context="Escape"/><StringDetect String="#{" attribute="Embedding" context="Embedding"/><DetectChar char='"' attribute="String" context="#pop"/></context><context name="String" attribute="String"><IncludeRules context="Escape"/><DetectChar char="'" attribute="String" context="#pop"/></context></contexts><itemDatas><itemData name="Normal" defStyleNum="dsNormal" spellChecking="0"/><itemData name="Identifier" defStyleNum="dsNormal" spellChecking="0"/><itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="0"/><itemData name="Function" defStyleNum="dsFunction" spellChecking="0"/><itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="0"/><itemData name="Float" defStyleNum="dsFloat" spellChecking="0"/><itemData name="Oct" defStyleNum="dsBaseN" spellChecking="0"/><itemData name="Hex" defStyleNum="dsBaseN" spellChecking="0"/><itemData name="String" defStyleNum="dsString" spellChecking="0"/><itemData name="Comment" defStyleNum="dsComment"/><itemData name="Symbol" defStyleNum="dsKeyword" spellChecking="0"/><itemData name="Embedding" defStyleNum="dsChar" spellChecking="0"/><itemData name="Accessor" defStyleNum="dsDataType" spellChecking="0"/><itemData name="Class" defStyleNum="dsDataType" spellChecking="0" bold="1"/><itemData name="Javascript" defStyleNum="dsAlert" spellChecking="0" italic="1"/><itemData name="Regex" defStyleNum="dsString" spellChecking="0"/><itemData name="Reserved" defStyleNum="dsAlert" spellChecking="0"/><itemData name="Value Keywords" defStyleNum="dsOthers" spellChecking="0"/><itemData name="Globals" defStyleNum="dsOthers" spellChecking="0"/><itemData name="Browser Globals" defStyleNum="dsNormal" spellChecking="0"/><itemData name="Node.js Globals" defStyleNum="dsNormal" spellChecking="0"/><itemData name="Escape" defStyleNum="dsSpecialChar" spellChecking="0"/><itemData name="Literal Character Escape" defStyleNum="dsChar" spellChecking="0"/><itemData name="Error" defStyleNum="dsError" spellChecking="0"/><itemData name="JavaScript Template" defStyleNum="dsVerbatimString"/><itemData name="JavaScript Substitution" defStyleNum="dsSpecialChar" spellChecking="0"/><itemData name="JavaScript Function Name" defStyleNum="dsFunction" spellChecking="0"/><itemData name="JavaScript Built-in Objects" defStyleNum="dsBuiltIn" spellChecking="0"/><itemData name="JavaScript Symbol" defStyleNum="dsOperator" spellChecking="0"/></itemDatas></highlighting><general><folding indentationsensitive="1"/><comments><comment name="singleLine" start="#" position="afterwhitespace"/><comment name="multiLine" start="###" end="###" region="Comment"/></comments><keywords casesensitive="1" additionalDeliminator="#'`"/><emptyLines><emptyLine regexpr="(?:\s+|\s*#.*)"/></emptyLines></general></language>