<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE language><language name="Swift" version="2" kateversion="5.62" section="Sources" extensions="*.swift" license="MIT" author="I. Elland (igor@elland.me)" style="cstyle" indenter="cstyle"><highlighting><list name="keywords"><item>@testable</item><item>as</item><item>class</item><item>didGet</item><item>didSet</item><item>dynamic</item><item>enum</item><item>extension</item><item>fileprivate</item><item>final</item><item>func</item><item>get</item><item>import</item><item>infix</item><item>internal</item><item>is</item><item>lazy</item><item>let</item><item>mutating</item><item>nonmutating</item><item>operator</item><item>override</item><item>private</item><item>protocol</item><item>public</item><item>rethrows</item><item>return</item><item>set</item><item>static</item><item>struct</item><item>throw</item><item>throws</item><item>typealias</item><item>typeof</item><item>var</item><item>where</item><item>willGet</item><item>willSet</item></list><list name="controlFlowKeyword"><item>actor</item><item>async</item><item>await</item><item>break</item><item>case</item><item>catch</item><item>continue</item><item>defer</item><item>do</item><item>else</item><item>fallthrough</item><item>fatalError</item><item>for</item><item>guard</item><item>if</item><item>in</item><item>inout</item><item>repeat</item><item>switch</item><item>try</item><item>while</item></list><list name="predeclared"><item>default</item><item>deinit</item><item>false</item><item>init</item><item>nil</item><item>required</item><item>self</item><item>strong</item><item>super</item><item>true</item><item>unowned</item><item>weak</item></list><list name="types"><item>Boolean</item><item>Byte</item><item>Char</item><item>Double</item><item>Float</item><item>Int</item><item>Long</item><item>Nothing</item><item>Short</item><item>String</item><item>Unit</item></list><contexts><context name="Start" attribute="Normal Text" fallthroughContext="Normal"><StringDetect String="#!" attribute="Comment" context="Shebang"/></context><context name="FindComments" attribute="Normal Text"><StringDetect String="//" attribute="Comment" context="CommentSingleLine"/><StringDetect String="/*" attribute="Comment" context="CommentMultiline" beginRegion="Comment"/></context><context name="TypeDeclaration" attribute="Normal Text" fallthroughContext="#pop"><keyword String="keywords" attribute="Keyword"/><DetectChar char="&lt;" attribute="Symbol" context="TypeParameters"/><DetectChar char="(" attribute="Symbol" context="Parameters"/><DetectChar char=":" attribute="Symbol" context="SuperTypes"/><DetectChar char="{" attribute="Symbol" context="#pop" lookAhead="1"/><DetectIdentifier attribute="Normal Text"/><DetectSpaces attribute="Normal Text"/><IncludeRules context="FindComments"/></context><context name="TypeParameters" attribute="Normal Text"><keyword String="keywords" attribute="Keyword"/><DetectChar char=":" attribute="Symbol" context="TypeName"/><DetectChar char="*" attribute="Symbol"/><DetectChar char=">" attribute="Symbol" context="#pop"/><DetectChar char="&lt;" attribute="Symbol" context="TypeParameters"/><DetectIdentifier attribute="Data Type" context="DataTypeSuffix"/><DetectSpaces attribute="Normal Text"/><IncludeRules context="FindComments"/></context><context name="TypeName" attribute="Normal Text"><AnyChar String=",*" attribute="Symbol" context="#pop"/><DetectChar char="(" attribute="Symbol" context="FunctionType"/><StringDetect String="->" attribute="Symbol"/><DetectIdentifier attribute="Data Type" context="#pop!DataTypeSuffix"/></context><context name="DataTypeSuffix" attribute="Normal Text" fallthroughContext="#pop" lineEndContext="#pop"><DetectChar char="?" attribute="Symbol" context="#pop"/></context><context name="Normal" attribute="Normal Text"><DetectSpaces/><DetectChar char="." attribute="Symbol" context="Dot" lookAhead="1"/><DetectChar char="{" attribute="Symbol" beginRegion="Brace1"/><DetectChar char="}" attribute="Symbol" endRegion="Brace1"/><IncludeRules context="FindComments"/><AnyChar String="()[]&amp;|+,-/*&lt;=>;!%?:~^" attribute="Symbol"/><AnyChar String="0123456789" context="Number" lookAhead="1"/><DetectChar char='"' context="String" lookAhead="1"/><DetectChar char="'" context="Char" lookAhead="1"/><WordDetect String="let" attribute="Keyword" context="VariableDeclaration"/><WordDetect String="var" attribute="Keyword" context="VariableDeclaration"/><WordDetect String="func" attribute="Keyword" context="FunctionDeclaration"/><WordDetect String="@testable" attribute="Keyword" context="Imports"/><WordDetect String="import" attribute="Keyword" context="Imports"/><DetectChar char="@" attribute="Annotation" context="Annotation"/><WordDetect String="struct" attribute="Keyword" context="TypeDeclaration"/><WordDetect String="class" attribute="Keyword" context="TypeDeclaration"/><WordDetect String="protocol" attribute="Keyword" context="TypeDeclaration"/><WordDetect String="enum" attribute="Keyword" context="TypeDeclaration"/><WordDetect String="extension" attribute="Keyword" context="TypeDeclaration"/><keyword String="predeclared" attribute="Keyword"/><keyword String="keywords" attribute="Keyword"/><keyword String="controlFlowKeyword" attribute="ControlFlowKeyword"/><DetectIdentifier attribute="Normal Text"/></context><context name="Parameters" attribute="Normal Text"><keyword String="keywords" attribute="Keyword"/><DetectChar char=")" attribute="Symbol" context="#pop"/><DetectChar char=":" attribute="Symbol" context="TypeName"/><DetectChar char="=" attribute="Symbol" context="Expression"/><DetectIdentifier attribute="Variable"/><DetectChar char="," attribute="Symbol"/><DetectSpaces attribute="Normal Text"/><IncludeRules context="FindComments"/></context><context name="Char" attribute="Normal Text"><HlCChar attribute="Char" context="#pop"/><RegExpr String="'\\u[0-9a-fA-F]{4}'" attribute="Char" context="#pop"/><RegExpr String="'(\\(u[0-9a-fA-F]*|.))?'?" attribute="Error" context="#pop"/></context><context name="CommentMultiline" attribute="Comment"><StringDetect String="*/" attribute="Comment" context="#pop" endRegion="Comment"/><StringDetect String="/*" attribute="Comment" context="CommentMultiline" beginRegion="Comment"/><DetectSpaces/><IncludeRules context="##Comments"/><DetectIdentifier/></context><context name="Dot" attribute="Normal Text"><IncludeRules context="FindFloat"/><DetectChar char="." attribute="Symbol" context="#pop"/></context><context name="FindFloat" attribute="Normal Text"><RegExpr String="(\b(?:[0-9]++(_++[0-9]++)*+)(\.(((?:[0-9]++(_++[0-9]++)*+)(?:[eE][-+]?(?:[0-9]++(_++[0-9]++)*+))?+|(?:[eE][-+]?(?:[0-9]++(_++[0-9]++)*+)))[fF]?\b|[fF]\b)?|(?:[eE][-+]?(?:[0-9]++(_++[0-9]++)*+))[fF]?\b|[fF]\b)|\.(?:[0-9]++(_++[0-9]++)*+)(?:[eE][-+]?(?:[0-9]++(_++[0-9]++)*+))?[fF]?\b)|\b0[xX]((?:[0-9a-fA-F]++(_++[0-9a-fA-F]++)*+)\.?+(?:[0-9a-fA-F]++(_++[0-9a-fA-F]++)*+)?+|\.(?:[0-9a-fA-F]++(_++[0-9a-fA-F]++)*+)?)[pP][-+]?(?:[0-9]++(_++[0-9]++)*+)[fF]?\b" attribute="Float" context="#pop"/></context><context name="FindSubExpression" attribute="Normal Text"><DetectSpaces attribute="Normal Text"/><AnyChar String="({" attribute="Symbol" context="ExpressionInner"/><DetectChar char="&lt;" context="MaybeTypeParameters" lookAhead="1"/><DetectChar char="." attribute="Symbol" context="Dot" lookAhead="1"/><AnyChar String="0123456789" context="Number" lookAhead="1"/><DetectChar char='"' context="String" lookAhead="1"/><DetectChar char="'" context="Char" lookAhead="1"/><IncludeRules context="FindComments"/><DetectIdentifier attribute="Normal Text"/></context><context name="Imports" attribute="Normal Text" lineEndContext="#pop"><AnyChar String=".*" attribute="Symbol"/><WordDetect String="as" attribute="Keyword" context="TypeName"/><DetectIdentifier attribute="Imports"/><DetectChar char=";" attribute="Symbol" context="#pop"/></context><context name="Interpolation" attribute="String"><StringDetect String="${" attribute="String Interpolation" context="#pop!InInterpolation"/><DetectChar char="$" attribute="String Interpolation" context="#pop!Variable"/></context><context name="Number" attribute="Normal Text"><IncludeRules context="FindFloat"/><RegExpr String="\b0[xX](?:[0-9a-fA-F]++(_++[0-9a-fA-F]++)*+)[lL]?\b" attribute="Hex" context="#pop"/><RegExpr String="\b0[bB][01]++(_++[01]++)*+[uUlL]?\b" attribute="Binary" context="#pop"/><RegExpr String="\b(0|[1-9][0-9]*+(_++[0-9_]++)*+)[uUlL]?\b" attribute="Decimal" context="#pop"/><AnyChar String="0123456789" attribute="Error" context="#pop"/></context><context name="String" attribute="String" lineEndContext="#pop"><StringDetect String='"""' attribute="String" context="#pop!MultiLineString" beginRegion="MultiLineString"/><DetectChar char='"' attribute="String" context="#pop!SingleLineString"/></context><context name="StringEscapedChar" attribute="String" lineEndContext="#pop"><HlCStringChar attribute="String Char" context="#pop"/><StringDetect String="\$" attribute="String Char" context="#pop"/><RegExpr String="\\u[0-9a-fA-F]{4}" attribute="String Char" context="#pop"/><RegExpr String="\\(u[0-9a-fA-F]*|.)?" attribute="Error" context="#pop"/></context><context name="VariableDeclaration" attribute="Normal Text"><DetectIdentifier attribute="Variable" context="#pop"/></context><context name="Annotation" attribute="Normal Text" fallthroughContext="#pop" lineEndContext="#pop"><DetectIdentifier attribute="Annotation" context="#pop"/></context><context name="CommentSingleLine" attribute="Comment" lineEndContext="#pop"><DetectSpaces/><IncludeRules context="##Comments"/><DetectIdentifier/></context><context name="Expression" attribute="Normal Text"><DetectChar char=")" attribute="Symbol" context="#pop" lookAhead="1"/><DetectChar char="}" attribute="Error" context="#pop"/><DetectChar char="," attribute="Symbol" context="#pop"/><IncludeRules context="FindSubExpression"/></context><context name="ExpressionInner" attribute="Normal Text"><AnyChar String=")}" attribute="Symbol" context="#pop"/><IncludeRules context="FindSubExpression"/></context><context name="FunctionDeclaration" attribute="Normal Text" fallthroughContext="#pop"><keyword String="keywords" attribute="Keyword"/><DetectChar char="." attribute="Symbol"/><DetectChar char="(" attribute="Symbol" context="Parameters"/><DetectChar char="&lt;" attribute="Symbol" context="TypeParameters"/><DetectChar char=":" attribute="Symbol" context="TypeName"/><AnyChar String="->[]?" attribute="Normal Text"/><DetectIdentifier attribute="Function"/><DetectSpaces attribute="Normal Text"/><IncludeRules context="FindComments"/></context><context name="FunctionType" attribute="Normal Text"><DetectChar char=")" attribute="Symbol" context="#pop"/><DetectIdentifier attribute="Data Type" context="DataTypeSuffix"/><StringDetect String="->" attribute="Symbol"/><DetectChar char="," attribute="Symbol"/></context><context name="InInterpolation" attribute="String Interpolation"><DetectChar char="}" attribute="String Interpolation" context="#pop"/><IncludeRules context="Normal"/></context><context name="MaybeTypeParameters" attribute="Normal Text" lineEndContext="#pop"><RegExpr String="&lt;\w" context="#pop!TypeParameters" lookAhead="1"/><DetectChar char="&lt;" attribute="Symbol" context="#pop"/></context><context name="MultiLineString" attribute="String"><DetectChar char="\" context="StringEscapedChar" lookAhead="1"/><DetectChar char="$" context="Interpolation" lookAhead="1"/><DetectChar char='"' context="MultiLineStringFinal" lookAhead="1"/></context><context name="MultiLineStringFinal" attribute="String"><StringDetect String='""""' context="MultiLineStringNoFinal" lookAhead="1"/><StringDetect String='"""' attribute="String" context="#pop#pop" endRegion="MultiLineString"/><StringDetect String='""' attribute="String" context="#pop"/><DetectChar char='"' attribute="String" context="#pop"/></context><context name="MultiLineStringNoFinal" attribute="String"><DetectChar char='"' attribute="String" context="#pop"/></context><context name="Shebang" attribute="Normal Text" lineEndContext="#pop!Normal"/><context name="SingleLineString" attribute="String" lineEndContext="#pop"><DetectChar char="\" context="StringEscapedChar" lookAhead="1"/><DetectChar char="$" context="Interpolation" lookAhead="1"/><DetectChar char='"' attribute="String" context="#pop"/></context><context name="SuperTypes" attribute="Normal Text" fallthroughContext="#pop"><keyword String="keywords" attribute="Keyword" context="#pop#pop" lookAhead="1"/><DetectChar char="," attribute="Symbol"/><DetectChar char="{" attribute="Symbol" context="#pop" lookAhead="1"/><DetectChar char="(" attribute="Symbol" context="Parameters"/><DetectChar char="&lt;" attribute="Symbol" context="TypeParameters"/><DetectIdentifier attribute="Data Type"/><DetectSpaces attribute="Normal Text"/><IncludeRules context="FindComments"/></context><context name="Variable" attribute="String" fallthroughContext="#pop" lineEndContext="#pop"><DetectIdentifier attribute="String Interpolation" context="#pop"/></context></contexts><itemDatas><itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="0"/><itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="0"/><itemData name="ControlFlowKeyword" defStyleNum="dsControlFlow" spellChecking="0"/><itemData name="Function" defStyleNum="dsFunction" spellChecking="0"/><itemData name="Variable" defStyleNum="dsVariable" spellChecking="0"/><itemData name="Imports" defStyleNum="dsImport" spellChecking="0"/><itemData name="Annotation" defStyleNum="dsAttribute" spellChecking="0"/><itemData name="Data Type" defStyleNum="dsDataType" spellChecking="0"/><itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="0"/><itemData name="Hex" defStyleNum="dsBaseN" spellChecking="0"/><itemData name="Binary" defStyleNum="dsBaseN" spellChecking="0"/><itemData name="Float" defStyleNum="dsFloat" spellChecking="0"/><itemData name="Char" defStyleNum="dsChar" spellChecking="0"/><itemData name="String" defStyleNum="dsString"/><itemData name="String Char" defStyleNum="dsSpecialChar" spellChecking="0"/><itemData name="String Interpolation" defStyleNum="dsSpecialString"/><itemData name="Comment" defStyleNum="dsComment"/><itemData name="Symbol" defStyleNum="dsOperator" spellChecking="0"/><itemData name="Error" defStyleNum="dsError" spellChecking="0"/></itemDatas></highlighting><general><comments><comment name="singleLine" start="//"/><comment name="multiLine" start="/*" end="*/" region="Comment"/></comments><keywords casesensitive="1"/></general></language>