diff options
| author | Georg Brandl <georg@python.org> | 2021-01-18 21:24:00 +0100 |
|---|---|---|
| committer | Georg Brandl <georg@python.org> | 2021-01-18 22:08:36 +0100 |
| commit | 2a3d3a7d5b9c60dedf6638d876161d9563faebcf (patch) | |
| tree | 809c0b4a686db98f5954afa1944404cd9652c6b2 /tests/lexers/sml | |
| parent | f0445be718da83541ea3401aad882f3937147263 (diff) | |
| download | pygments-git-examplefiles.tar.gz | |
Move test_examplefiles to new tests/lexers scheme.examplefiles
Diffstat (limited to 'tests/lexers/sml')
| -rw-r--r-- | tests/lexers/sml/example.txt | 7265 | ||||
| -rw-r--r-- | tests/lexers/sml/example2.txt | 15617 | ||||
| -rw-r--r-- | tests/lexers/sml/example3.txt | 2141 |
3 files changed, 25023 insertions, 0 deletions
diff --git a/tests/lexers/sml/example.txt b/tests/lexers/sml/example.txt new file mode 100644 index 00000000..f2b6f7e7 --- /dev/null +++ b/tests/lexers/sml/example.txt @@ -0,0 +1,7265 @@ +---input--- +(* Internal Syntax *) +(* Author: Frank Pfenning, Carsten Schuermann *) +(* Modified: Roberto Virga *) + +signature INTSYN = +sig + + type cid = int (* Constant identifier *) + type mid = int (* Structure identifier *) + type csid = int (* CS module identifier *) + + + type FgnExp = exn (* foreign expression representation *) + exception UnexpectedFgnExp of FgnExp + (* raised by a constraint solver + if passed an incorrect arg *) + type FgnCnstr = exn (* foreign constraint representation *) + exception UnexpectedFgnCnstr of FgnCnstr + (* raised by a constraint solver + if passed an incorrect arg *) + + (* Contexts *) + + datatype 'a Ctx = (* Contexts *) + Null (* G ::= . *) + | Decl of 'a Ctx * 'a (* | G, D *) + + val ctxPop : 'a Ctx -> 'a Ctx + val ctxLookup: 'a Ctx * int -> 'a + val ctxLength: 'a Ctx -> int + + datatype Depend = (* Dependency information *) + No (* P ::= No *) + | Maybe (* | Maybe *) + | Meta (* | Meta *) + + (* expressions *) + + datatype Uni = (* Universes: *) + Kind (* L ::= Kind *) + | Type (* | Type *) + + datatype Exp = (* Expressions: *) + Uni of Uni (* U ::= L *) + | Pi of (Dec * Depend) * Exp (* | Pi (D, P). V *) + | Root of Head * Spine (* | H @ S *) + | Redex of Exp * Spine (* | U @ S *) + | Lam of Dec * Exp (* | lam D. U *) + | EVar of Exp option ref * Dec Ctx * Exp * (Cnstr ref) list ref + (* | X<I> : G|-V, Cnstr *) + | EClo of Exp * Sub (* | U[s] *) + | AVar of Exp option ref (* | A<I> *) + + | FgnExp of csid * FgnExp (* | (foreign expression) *) + + | NVar of int (* | n (linear, + fully applied variable + used in indexing *) + + and Head = (* Head: *) + BVar of int (* H ::= k *) + | Const of cid (* | c *) + | Proj of Block * int (* | #k(b) *) + | Skonst of cid (* | c# *) + | Def of cid (* | d (strict) *) + | NSDef of cid (* | d (non strict) *) + | FVar of string * Exp * Sub (* | F[s] *) + | FgnConst of csid * ConDec (* | (foreign constant) *) + + and Spine = (* Spines: *) + Nil (* S ::= Nil *) + | App of Exp * Spine (* | U ; S *) + | SClo of Spine * Sub (* | S[s] *) + + and Sub = (* Explicit substitutions: *) + Shift of int (* s ::= ^n *) + | Dot of Front * Sub (* | Ft.s *) + + and Front = (* Fronts: *) + Idx of int (* Ft ::= k *) + | Exp of Exp (* | U *) + | Axp of Exp (* | U *) + | Block of Block (* | _x *) + | Undef (* | _ *) + + and Dec = (* Declarations: *) + Dec of string option * Exp (* D ::= x:V *) + | BDec of string option * (cid * Sub) (* | v:l[s] *) + | ADec of string option * int (* | v[^-d] *) + | NDec of string option + + and Block = (* Blocks: *) + Bidx of int (* b ::= v *) + | LVar of Block option ref * Sub * (cid * Sub) + (* | L(l[^k],t) *) + | Inst of Exp list (* | U1, ..., Un *) + (* It would be better to consider having projections count + like substitutions, then we could have Inst of Sub here, + which would simplify a lot of things. + + I suggest however to wait until the next big overhaul + of the system -- cs *) + + +(* | BClo of Block * Sub (* | b[s] *) *) + + (* constraints *) + + and Cnstr = (* Constraint: *) + Solved (* Cnstr ::= solved *) + | Eqn of Dec Ctx * Exp * Exp (* | G|-(U1 == U2) *) + | FgnCnstr of csid * FgnCnstr (* | (foreign) *) + + and Status = (* Status of a constant: *) + Normal (* inert *) + | Constraint of csid * (Dec Ctx * Spine * int -> Exp option) + (* acts as constraint *) + | Foreign of csid * (Spine -> Exp) (* is converted to foreign *) + + and FgnUnify = (* Result of foreign unify *) + Succeed of FgnUnifyResidual list + (* succeed with a list of residual operations *) + | Fail + + and FgnUnifyResidual = + Assign of Dec Ctx * Exp * Exp * Sub + (* perform the assignment G |- X = U [ss] *) + | Delay of Exp * Cnstr ref + (* delay cnstr, associating it with all the rigid EVars in U *) + + (* Global signature *) + + and ConDec = (* Constant declaration *) + ConDec of string * mid option * int * Status + (* a : K : kind or *) + * Exp * Uni (* c : A : type *) + | ConDef of string * mid option * int (* a = A : K : kind or *) + * Exp * Exp * Uni (* d = M : A : type *) + * Ancestor (* Ancestor info for d or a *) + | AbbrevDef of string * mid option * int + (* a = A : K : kind or *) + * Exp * Exp * Uni (* d = M : A : type *) + | BlockDec of string * mid option (* %block l : SOME G1 PI G2 *) + * Dec Ctx * Dec list + | BlockDef of string * mid option * cid list + (* %block l = (l1 | ... | ln) *) + | SkoDec of string * mid option * int (* sa: K : kind or *) + * Exp * Uni (* sc: A : type *) + + and Ancestor = (* Ancestor of d or a *) + Anc of cid option * int * cid option (* head(expand(d)), height, head(expand[height](d)) *) + (* NONE means expands to {x:A}B *) + + datatype StrDec = (* Structure declaration *) + StrDec of string * mid option + + (* Form of constant declaration *) + datatype ConDecForm = + FromCS (* from constraint domain *) + | Ordinary (* ordinary declaration *) + | Clause (* %clause declaration *) + + (* Type abbreviations *) + type dctx = Dec Ctx (* G = . | G,D *) + type eclo = Exp * Sub (* Us = U[s] *) + type bclo = Block * Sub (* Bs = B[s] *) + type cnstr = Cnstr ref + + exception Error of string (* raised if out of space *) + + (* standard operations on foreign expressions *) + structure FgnExpStd : sig + (* convert to internal syntax *) + structure ToInternal : FGN_OPN where type arg = unit + where type result = Exp + + (* apply function to subterms *) + structure Map : FGN_OPN where type arg = Exp -> Exp + where type result = Exp + + (* apply function to subterms, for effect *) + structure App : FGN_OPN where type arg = Exp -> unit + where type result = unit + + (* test for equality *) + structure EqualTo : FGN_OPN where type arg = Exp + where type result = bool + + (* unify with another term *) + structure UnifyWith : FGN_OPN where type arg = Dec Ctx * Exp + where type result = FgnUnify + + (* fold a function over the subterms *) + val fold : (csid * FgnExp) -> (Exp * 'a -> 'a) -> 'a -> 'a + end + + (* standard operations on foreign constraints *) + structure FgnCnstrStd : sig + (* convert to internal syntax *) + structure ToInternal : FGN_OPN where type arg = unit + where type result = (Dec Ctx * Exp) list + + (* awake *) + structure Awake : FGN_OPN where type arg = unit + where type result = bool + + (* simplify *) + structure Simplify : FGN_OPN where type arg = unit + where type result = bool + end + + val conDecName : ConDec -> string + val conDecParent : ConDec -> mid option + val conDecImp : ConDec -> int + val conDecStatus : ConDec -> Status + val conDecType : ConDec -> Exp + val conDecBlock : ConDec -> dctx * Dec list + val conDecUni : ConDec -> Uni + + val strDecName : StrDec -> string + val strDecParent : StrDec -> mid option + + val sgnReset : unit -> unit + val sgnSize : unit -> cid * mid + + val sgnAdd : ConDec -> cid + val sgnLookup: cid -> ConDec + val sgnApp : (cid -> unit) -> unit + + val sgnStructAdd : StrDec -> mid + val sgnStructLookup : mid -> StrDec + + val constType : cid -> Exp (* type of c or d *) + val constDef : cid -> Exp (* definition of d *) + val constImp : cid -> int + val constStatus : cid -> Status + val constUni : cid -> Uni + val constBlock : cid -> dctx * Dec list + + (* Declaration Contexts *) + + val ctxDec : dctx * int -> Dec (* get variable declaration *) + val blockDec : dctx * Block * int -> Dec + + (* Explicit substitutions *) + + val id : Sub (* id *) + val shift : Sub (* ^ *) + val invShift : Sub (* ^-1 *) + + val bvarSub : int * Sub -> Front (* k[s] *) + val frontSub : Front * Sub -> Front (* H[s] *) + val decSub : Dec * Sub -> Dec (* x:V[s] *) + val blockSub : Block * Sub -> Block (* B[s] *) + + val comp : Sub * Sub -> Sub (* s o s' *) + val dot1 : Sub -> Sub (* 1 . (s o ^) *) + val invDot1 : Sub -> Sub (* (^ o s) o ^-1) *) + + (* EVar related functions *) + + val newEVar : dctx * Exp -> Exp (* creates X:G|-V, [] *) + val newAVar : unit -> Exp (* creates A (bare) *) + val newTypeVar : dctx -> Exp (* creates X:G|-type, [] *) + val newLVar : Sub * (cid * Sub) -> Block + (* creates B:(l[^k],t) *) + + (* Definition related functions *) + val headOpt : Exp -> Head option + val ancestor : Exp -> Ancestor + val defAncestor : cid -> Ancestor + + (* Type related functions *) + + (* Not expanding type definitions *) + val targetHeadOpt : Exp -> Head option (* target type family or NONE *) + val targetHead : Exp -> Head (* target type family *) + + (* Expanding type definitions *) + val targetFamOpt : Exp -> cid option (* target type family or NONE *) + val targetFam : Exp -> cid (* target type family *) + + (* Used in Flit *) + val rename : cid * string -> unit + +end; (* signature INTSYN *) + +---tokens--- +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'y' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +'f' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'c' Comment.Multiline +'h' Comment.Multiline +'u' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n' Text + +'signature' Keyword.Reserved +' ' Text +'INTSYN' Name.Namespace +' ' Text +'=' Punctuation +'\n' Text + +'sig' Keyword.Reserved +'\n\n ' Text +'type' Keyword.Reserved +' ' Text +'cid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'mid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'csid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'FgnExp' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'exn' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'exception' Keyword.Reserved +' ' Text +'UnexpectedFgnExp' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnExp' Name.Class +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'\n' Comment.Multiline + +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'type' Name.Class +' ' Text +'FgnCnstr' Name.Class +' ' Text +'=' Name.Class +' ' Text +'exn' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'exception' Name.Class +' ' Text +'UnexpectedFgnCnstr' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnCnstr' Name.Class +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'datatype' Name.Class +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Null' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Name +' ' Text +'Decl' Name +' ' Text +'of' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +"'a" Name.Decorator +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n \n ' Text +'val' Keyword.Reserved +' ' Text +'ctxPop' Name.Variable +' ' Text +':' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'ctxLookup' Name.Variable +':' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +'\n ' Text +'val' Keyword.Reserved +' ' Text +'ctxLength' Name.Variable +':' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'->' Punctuation +' ' Text +'int' Name +'\n\n ' Text +'datatype' Keyword.Reserved +' ' Text +'Depend' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'No' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Maybe' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Meta' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +'Uni' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Kind' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Type' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +'Exp' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Uni' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Uni' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Pi' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'*' Name +' ' Text +'Depend' Name +')' Punctuation +' ' Text +'*' Name +' ' Text +'Exp' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'D' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +')' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Root' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Head' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +' ' Comment.Multiline +'@' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Redex' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'@' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Lam' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'EVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Cnstr' Name +' ' Text +'ref' Name +')' Punctuation +' ' Text +'list' Name +' ' Text +'ref' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +'<' Comment.Multiline +'I' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'EClo' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'AVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'<' Comment.Multiline +'I' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'|' Punctuation +' ' Text +'FgnExp' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'FgnExp' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'|' Punctuation +' ' Text +'NVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'p' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Head' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'BVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Const' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Proj' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'#' Comment.Multiline +'k' Comment.Multiline +'(' Comment.Multiline +'b' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Skonst' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'#' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Def' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'NSDef' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FgnConst' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'ConDec' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Spine' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Nil' Name.Class +'\t\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'App' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +';' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'SClo' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Spine' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Sub' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Shift' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Dot' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Front' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'.' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Front' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Idx' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Exp' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Axp' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Block' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Undef' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Dec' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Dec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'BDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +')' Punctuation +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +':' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'ADec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'[' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'d' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'NDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'option' Name +' \n\n ' Text +'and' Keyword.Reserved +' ' Text +'Block' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Bidx' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'LVar' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +']' Comment.Multiline +',' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Inst' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'list' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'1' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'j' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'k' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +'s' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'g' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'y' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'C' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Cnstr' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Solved' Name.Class +' \t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Eqn' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'2' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FgnCnstr' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'FgnCnstr' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Status' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Normal' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Constraint' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +' ' Text +'option' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Foreign' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Spine' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +')' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'FgnUnify' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Succeed' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnUnifyResidual' Name +' ' Text +'list' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Fail' Name.Class +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'FgnUnifyResidual' Keyword.Type +' ' Text +'=' Punctuation +'\n ' Text +'Assign' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Delay' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Cnstr' Name +' ' Text +'ref' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'ConDec' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'ConDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'*' Name +' ' Text +'Status' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'ConDef' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Ancestor' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'AbbrevDef' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'BlockDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +'I' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'list' Name +'\n ' Text +'|' Punctuation +' ' Text +'BlockDef' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'cid' Name +' ' Text +'list' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'SkoDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'a' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'c' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Ancestor' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Anc' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'*' Name +' ' Text +'cid' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'[' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +']' Comment.Multiline +'(' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'{' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'A' Comment.Multiline +'}' Comment.Multiline +'B' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +'StrDec' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'StrDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +'ConDecForm' Keyword.Type +' ' Text +'=' Punctuation +'\n ' Text +'FromCS' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Ordinary' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Clause' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'b' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'dctx' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'eclo' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' \t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'bclo' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' \t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'cnstr' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Cnstr' Name +' ' Text +'ref' Name +'\n\n ' Text +'' Text +'exception' Keyword.Reserved +' ' Text +'Error' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name.Class +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'FgnExpStd' Name.Class +' ' Text +':' Name.Class +' ' Text +'sig' Name.Class +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'y' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'ToInternal' Name.Class +' ' Text +':' Name.Class +' ' Text +'FGN_OPN' Name.Class +' ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'arg' Name.Class +' ' Text +'=' Name.Class +' ' Text +'unit' Name.Class +'\n ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'result' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Exp' Name.Class +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'p' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'Map' Name.Class +' ' Text +':' Name.Class +' ' Text +'FGN_OPN' Name.Class +' ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'arg' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Exp' Name.Class +' ' Text +'->' Name.Class +' ' Text +'Exp' Name.Class +'\n\t\t\t ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'result' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Exp' Name.Class +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'p' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'s' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'f' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'App' Name.Class +' ' Text +':' Name.Class +' ' Text +'FGN_OPN' Name.Class +' ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'arg' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Exp' Name.Class +' ' Text +'->' Name.Class +' ' Text +'unit' Name.Class +'\n\t\t\t ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'result' Name.Class +' ' Text +'=' Name.Class +' ' Text +'unit' Name.Class +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'q' Comment.Multiline +'u' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'EqualTo' Name.Class +' ' Text +':' Name.Class +' ' Text +'FGN_OPN' Name.Class +' ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'arg' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Exp' Name.Class +'\n ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'result' Name.Class +' ' Text +'=' Name.Class +' ' Text +'bool' Name.Class +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Name.Class +' ' Text +'UnifyWith' Name.Class +' ' Text +':' Name.Class +' ' Text +'FGN_OPN' Name.Class +' ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'arg' Name.Class +' ' Text +'=' Name.Class +' ' Text +'Dec' Name.Class +' ' Text +'Ctx' Name.Class +' ' Text +'*' Name.Class +' ' Text +'Exp' Name.Class +'\n ' Text +'where' Name.Class +' ' Text +'type' Name.Class +' ' Text +'result' Name.Class +' ' Text +'=' Name.Class +' ' Text +'FgnUnify' Name.Class +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Name.Class +' ' Text +'fold' Name.Class +' ' Text +':' Name.Class +' ' Text +'(' Punctuation +'csid' Name +' ' Text +'*' Name +' ' Text +'FgnExp' Name +')' Punctuation +' ' Text +'->' Punctuation +' ' Text +'(' Punctuation +'Exp' Name +' ' Text +'*' Name +' ' Text +"'a" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +')' Punctuation +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +'\n ' Text +'end' Keyword.Reserved +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Keyword.Reserved +' ' Text +'FgnCnstrStd' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'sig' Keyword.Reserved +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'y' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'structure' Keyword.Reserved +' ' Text +'ToInternal' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'FGN_OPN' Name +' ' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n ' Text +'' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +')' Punctuation +' ' Text +'list' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'w' Comment.Multiline +'a' Comment.Multiline +'k' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'Awake' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'FGN_OPN' Name +' ' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n ' Text +'' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'bool' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'Simplify' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'FGN_OPN' Name +' ' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n ' Text +'' Text +'where' Keyword.Reserved +' ' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'bool' Name +'\n ' Text +'' Text +'end' Keyword.Reserved +'\n \n ' Text +'val' Keyword.Reserved +' ' Text +'conDecName' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'string' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecParent' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'mid' Name +' ' Text +'option' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecImp' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'int' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecStatus' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'Status' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecType' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecBlock' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'dctx' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'list' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'conDecUni' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'Uni' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'strDecName' Name.Variable +' ' Text +':' Punctuation +' ' Text +'StrDec' Name +' ' Text +'->' Punctuation +' ' Text +'string' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'strDecParent' Name.Variable +' ' Text +':' Punctuation +' ' Text +'StrDec' Name +' ' Text +'->' Punctuation +' ' Text +'mid' Name +' ' Text +'option' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnReset' Name.Variable +' ' Text +':' Punctuation +' ' Text +'unit' Name +' ' Text +'->' Punctuation +' ' Text +'unit' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnSize' Name.Variable +' ' Text +':' Punctuation +' ' Text +'unit' Name +' ' Text +'->' Punctuation +' ' Text +'cid' Name +' ' Text +'*' Name +' ' Text +'mid' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnAdd' Name.Variable +' ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'->' Punctuation +' ' Text +'cid' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnLookup' Name.Variable +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'ConDec' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnApp' Name.Variable +' ' Text +':' Punctuation +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'unit' Name +')' Punctuation +' ' Text +'->' Punctuation +' ' Text +'unit' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnStructAdd' Name.Variable +' ' Text +':' Punctuation +' ' Text +'StrDec' Name +' ' Text +'->' Punctuation +' ' Text +'mid' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnStructLookup' Name.Variable +' ' Text +':' Punctuation +' ' Text +'mid' Name +' ' Text +'->' Punctuation +' ' Text +'StrDec' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'constType' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'constDef' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'constImp' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'int' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'constStatus' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'Status' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'constUni' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'Uni' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'constBlock' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'dctx' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'list' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'ctxDec' Name.Variable +' ' Text +':' Punctuation +' ' Text +'dctx' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +'Dec' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'blockDec' Name.Variable +' ' Text +':' Punctuation +' ' Text +'dctx' Name +' ' Text +'*' Name +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +'Dec' Name +' \n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'id' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'shift' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'invShift' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'bvarSub' Name.Variable +' ' Text +':' Punctuation +' ' Text +'int' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Front' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'frontSub' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Front' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Front' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'decSub' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Dec' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Dec' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'blockSub' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Block' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'comp' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Sub' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'dot1' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'invDot1' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +' ' Text +'->' Punctuation +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'1' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'newEVar' Name.Variable +' ' Text +':' Punctuation +' ' Text +'dctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +':' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n ' Text +'val' Keyword.Reserved +' ' Text +'newAVar' Name.Variable +' ' Text +':' Punctuation +' ' Text +'unit' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'b' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n ' Text +'val' Keyword.Reserved +' ' Text +'newTypeVar' Name.Variable +' ' Text +':' Punctuation +' ' Text +'dctx' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +':' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'newLVar' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Sub' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +')' Punctuation +' ' Text +'->' Punctuation +' ' Text +'Block' Name +'\t\n\t\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +':' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +']' Comment.Multiline +',' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'headOpt' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Head' Name +' ' Text +'option' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'ancestor' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Ancestor' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'defAncestor' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'->' Punctuation +' ' Text +'Ancestor' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'targetHeadOpt' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Head' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'targetHead' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Head' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'targetFamOpt' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'cid' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'targetFam' Name.Variable +' ' Text +':' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'cid' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'rename' Name.Variable +' ' Text +':' Punctuation +' ' Text +'cid' Name +' ' Text +'*' Name +' ' Text +'string' Name +' ' Text +'->' Punctuation +' ' Text +'unit' Name +'\n\n' Text + +'end' Keyword.Reserved +';' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'N' Comment.Multiline +'T' Comment.Multiline +'S' Comment.Multiline +'Y' Comment.Multiline +'N' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n' Text diff --git a/tests/lexers/sml/example2.txt b/tests/lexers/sml/example2.txt new file mode 100644 index 00000000..6a93cc55 --- /dev/null +++ b/tests/lexers/sml/example2.txt @@ -0,0 +1,15617 @@ +---input--- +(* Internal Syntax *) +(* Author: Frank Pfenning, Carsten Schuermann *) +(* Modified: Roberto Virga *) + +functor IntSyn (structure Global : GLOBAL) :> INTSYN = +struct + + type cid = int (* Constant identifier *) + type name = string (* Variable name *) + type mid = int (* Structure identifier *) + type csid = int (* CS module identifier *) + + + (* Contexts *) + datatype 'a Ctx = (* Contexts *) + Null (* G ::= . *) + | Decl of 'a Ctx * 'a (* | G, D *) + + (* ctxPop (G) => G' + Invariant: G = G',D + *) + fun ctxPop (Decl (G, D)) = G + + exception Error of string (* raised if out of space *) + (* ctxLookup (G, k) = D, kth declaration in G from right to left + Invariant: 1 <= k <= |G|, where |G| is length of G + *) + + fun ctxLookup (Decl (G', D), 1) = D + | ctxLookup (Decl (G', _), k') = ctxLookup (G', k'-1) +(* | ctxLookup (Null, k') = (print ("Looking up k' = " ^ Int.toString k' ^ "\n"); raise Error "Out of Bounce\n")*) + (* ctxLookup (Null, k') should not occur by invariant *) + + (* ctxLength G = |G|, the number of declarations in G *) + fun ctxLength G = + let + fun ctxLength' (Null, n) = n + | ctxLength' (Decl(G, _), n)= ctxLength' (G, n+1) + in + ctxLength' (G, 0) + end + + type FgnExp = exn (* foreign expression representation *) + exception UnexpectedFgnExp of FgnExp + (* raised by a constraint solver + if passed an incorrect arg *) + + type FgnCnstr = exn (* foreign unification constraint + representation *) + exception UnexpectedFgnCnstr of FgnCnstr + (* raised by a constraint solver + if passed an incorrect arg *) + + datatype Depend = (* Dependency information *) + No (* P ::= No *) + | Maybe (* | Maybe *) + | Meta (* | Meta *) + + (* Expressions *) + + datatype Uni = (* Universes: *) + Kind (* L ::= Kind *) + | Type (* | Type *) + + datatype Exp = (* Expressions: *) + Uni of Uni (* U ::= L *) + | Pi of (Dec * Depend) * Exp (* | bPi (D, P). V *) + | Root of Head * Spine (* | C @ S *) + | Redex of Exp * Spine (* | U @ S *) + | Lam of Dec * Exp (* | lam D. U *) + | EVar of Exp option ref * Dec Ctx * Exp * (Cnstr ref) list ref + (* | X<I> : G|-V, Cnstr *) + + | EClo of Exp * Sub (* | U[s] *) + | AVar of Exp option ref (* | A<I> *) + | NVar of int (* | n (linear, fully applied) *) + (* grafting variable *) + + | FgnExp of csid * FgnExp + (* | (foreign expression) *) + + and Head = (* Heads: *) + BVar of int (* H ::= k *) + | Const of cid (* | c *) + | Proj of Block * int (* | #k(b) *) + | Skonst of cid (* | c# *) + | Def of cid (* | d *) + | NSDef of cid (* | d (non strict) *) + | FVar of name * Exp * Sub (* | F[s] *) + | FgnConst of csid * ConDec (* | (foreign constant) *) + + and Spine = (* Spines: *) + Nil (* S ::= Nil *) + | App of Exp * Spine (* | U ; S *) + | SClo of Spine * Sub (* | S[s] *) + + and Sub = (* Explicit substitutions: *) + Shift of int (* s ::= ^n *) + | Dot of Front * Sub (* | Ft.s *) + + and Front = (* Fronts: *) + Idx of int (* Ft ::= k *) + | Exp of Exp (* | U *) + | Axp of Exp (* | U (assignable) *) + | Block of Block (* | _x *) + | Undef (* | _ *) + + and Dec = (* Declarations: *) + Dec of name option * Exp (* D ::= x:V *) + | BDec of name option * (cid * Sub) (* | v:l[s] *) + | ADec of name option * int (* | v[^-d] *) + | NDec of name option + + and Block = (* Blocks: *) + Bidx of int (* b ::= v *) + | LVar of Block option ref * Sub * (cid * Sub) + (* | L(l[^k],t) *) + | Inst of Exp list (* | u1, ..., Un *) + + + (* Constraints *) + + and Cnstr = (* Constraint: *) + Solved (* Cnstr ::= solved *) + | Eqn of Dec Ctx * Exp * Exp (* | G|-(U1 == U2) *) + | FgnCnstr of csid * FgnCnstr (* | (foreign) *) + + and Status = (* Status of a constant: *) + Normal (* inert *) + | Constraint of csid * (Dec Ctx * Spine * int -> Exp option) + (* acts as constraint *) + | Foreign of csid * (Spine -> Exp) (* is converted to foreign *) + + and FgnUnify = (* Result of foreign unify *) + Succeed of FgnUnifyResidual list + (* succeed with a list of residual operations *) + | Fail + + and FgnUnifyResidual = (* Residual of foreign unify *) + Assign of Dec Ctx * Exp * Exp * Sub + (* perform the assignment G |- X = U [ss] *) + | Delay of Exp * Cnstr ref + (* delay cnstr, associating it with all the rigid EVars in U *) + + (* Global signature *) + + and ConDec = (* Constant declaration *) + ConDec of string * mid option * int * Status + (* a : K : kind or *) + * Exp * Uni (* c : A : type *) + | ConDef of string * mid option * int (* a = A : K : kind or *) + * Exp * Exp * Uni (* d = M : A : type *) + * Ancestor (* Ancestor info for d or a *) + | AbbrevDef of string * mid option * int + (* a = A : K : kind or *) + * Exp * Exp * Uni (* d = M : A : type *) + | BlockDec of string * mid option (* %block l : SOME G1 PI G2 *) + * Dec Ctx * Dec list + + | BlockDef of string * mid option * cid list + (* %block l = (l1 | ... | ln) *) + + | SkoDec of string * mid option * int (* sa: K : kind or *) + * Exp * Uni (* sc: A : type *) + + and Ancestor = (* Ancestor of d or a *) + Anc of cid option * int * cid option (* head(expand(d)), height, head(expand[height](d)) *) + (* NONE means expands to {x:A}B *) + + datatype StrDec = (* Structure declaration *) + StrDec of string * mid option + + (* Form of constant declaration *) + datatype ConDecForm = + FromCS (* from constraint domain *) + | Ordinary (* ordinary declaration *) + | Clause (* %clause declaration *) + + (* Type abbreviations *) + type dctx = Dec Ctx (* G = . | G,D *) + type eclo = Exp * Sub (* Us = U[s] *) + type bclo = Block * Sub (* Bs = B[s] *) + type cnstr = Cnstr ref + +(* exception Error of string (* raised if out of space *) *) + + + structure FgnExpStd = struct + + structure ToInternal = FgnOpnTable (type arg = unit + type result = Exp) + + structure Map = FgnOpnTable (type arg = Exp -> Exp + type result = Exp) + + structure App = FgnOpnTable (type arg = Exp -> unit + type result = unit) + + structure EqualTo = FgnOpnTable (type arg = Exp + type result = bool) + + structure UnifyWith = FgnOpnTable (type arg = Dec Ctx * Exp + type result = FgnUnify) + + + + fun fold csfe f b = let + val r = ref b + fun g U = r := f (U,!r) + in + App.apply csfe g ; !r + end + + end + + structure FgnCnstrStd = struct + + structure ToInternal = FgnOpnTable (type arg = unit + type result = (Dec Ctx * Exp) list) + + structure Awake = FgnOpnTable (type arg = unit + type result = bool) + + structure Simplify = FgnOpnTable (type arg = unit + type result = bool) + + end + + fun conDecName (ConDec (name, _, _, _, _, _)) = name + | conDecName (ConDef (name, _, _, _, _, _, _)) = name + | conDecName (AbbrevDef (name, _, _, _, _, _)) = name + | conDecName (SkoDec (name, _, _, _, _)) = name + | conDecName (BlockDec (name, _, _, _)) = name + | conDecName (BlockDef (name, _, _)) = name + + fun conDecParent (ConDec (_, parent, _, _, _, _)) = parent + | conDecParent (ConDef (_, parent, _, _, _, _, _)) = parent + | conDecParent (AbbrevDef (_, parent, _, _, _, _)) = parent + | conDecParent (SkoDec (_, parent, _, _, _)) = parent + | conDecParent (BlockDec (_, parent, _, _)) = parent + | conDecParent (BlockDef (_, parent, _)) = parent + + + (* conDecImp (CD) = k + + Invariant: + If CD is either a declaration, definition, abbreviation, or + a Skolem constant + then k stands for the number of implicit elements. + *) + fun conDecImp (ConDec (_, _, i, _, _, _)) = i + | conDecImp (ConDef (_, _, i, _, _, _, _)) = i + | conDecImp (AbbrevDef (_, _, i, _, _, _)) = i + | conDecImp (SkoDec (_, _, i, _, _)) = i + | conDecImp (BlockDec (_, _, _, _)) = 0 (* watch out -- carsten *) + + fun conDecStatus (ConDec (_, _, _, status, _, _)) = status + | conDecStatus _ = Normal + + (* conDecType (CD) = V + + Invariant: + If CD is either a declaration, definition, abbreviation, or + a Skolem constant + then V is the respective type + *) + fun conDecType (ConDec (_, _, _, _, V, _)) = V + | conDecType (ConDef (_, _, _, _, V, _, _)) = V + | conDecType (AbbrevDef (_, _, _, _, V, _)) = V + | conDecType (SkoDec (_, _, _, V, _)) = V + + + (* conDecBlock (CD) = (Gsome, Lpi) + + Invariant: + If CD is block definition + then Gsome is the context of some variables + and Lpi is the list of pi variables + *) + fun conDecBlock (BlockDec (_, _, Gsome, Lpi)) = (Gsome, Lpi) + + (* conDecUni (CD) = L + + Invariant: + If CD is either a declaration, definition, abbreviation, or + a Skolem constant + then L is the respective universe + *) + fun conDecUni (ConDec (_, _, _, _, _, L)) = L + | conDecUni (ConDef (_, _, _, _, _, L, _)) = L + | conDecUni (AbbrevDef (_, _, _, _, _, L)) = L + | conDecUni (SkoDec (_, _, _, _, L)) = L + + + fun strDecName (StrDec (name, _)) = name + + fun strDecParent (StrDec (_, parent)) = parent + + local + val maxCid = Global.maxCid + val dummyEntry = ConDec("", NONE, 0, Normal, Uni (Kind), Kind) + val sgnArray = Array.array (maxCid+1, dummyEntry) + : ConDec Array.array + val nextCid = ref(0) + + val maxMid = Global.maxMid + val sgnStructArray = Array.array (maxMid+1, StrDec("", NONE)) + : StrDec Array.array + val nextMid = ref (0) + + in + (* Invariants *) + (* Constant declarations are all well-typed *) + (* Constant declarations are stored in beta-normal form *) + (* All definitions are strict in all their arguments *) + (* If Const(cid) is valid, then sgnArray(cid) = ConDec _ *) + (* If Def(cid) is valid, then sgnArray(cid) = ConDef _ *) + + fun sgnClean (i) = if i >= !nextCid then () + else (Array.update (sgnArray, i, dummyEntry); + sgnClean (i+1)) + + fun sgnReset () = ((* Fri Dec 20 12:04:24 2002 -fp *) + (* this circumvents a space leak *) + sgnClean (0); + nextCid := 0; nextMid := 0) + fun sgnSize () = (!nextCid, !nextMid) + + fun sgnAdd (conDec) = + let + val cid = !nextCid + in + if cid > maxCid + then raise Error ("Global signature size " ^ Int.toString (maxCid+1) ^ " exceeded") + else (Array.update (sgnArray, cid, conDec) ; + nextCid := cid + 1; + cid) + end + + (* 0 <= cid < !nextCid *) + fun sgnLookup (cid) = Array.sub (sgnArray, cid) + + fun sgnApp (f) = + let + fun sgnApp' (cid) = + if cid = !nextCid then () else (f cid; sgnApp' (cid+1)) + in + sgnApp' (0) + end + + fun sgnStructAdd (strDec) = + let + val mid = !nextMid + in + if mid > maxMid + then raise Error ("Global signature size " ^ Int.toString (maxMid+1) ^ " exceeded") + else (Array.update (sgnStructArray, mid, strDec) ; + nextMid := mid + 1; + mid) + end + + (* 0 <= mid < !nextMid *) + fun sgnStructLookup (mid) = Array.sub (sgnStructArray, mid) + + (* A hack used in Flit - jcreed 6/05 *) + fun rename (cid, new) = + let + val newConDec = case sgnLookup cid of + ConDec (n,m,i,s,e,u) => ConDec(new,m,i,s,e,u) + | ConDef (n,m,i,e,e',u,a) => ConDef(new,m,i,e,e',u,a) + | AbbrevDef (n,m,i,e,e',u) => AbbrevDef (new,m,i,e,e',u) + | BlockDec (n,m,d,d') => BlockDec (new,m,d,d') + | SkoDec (n,m,i,e,u) => SkoDec (new,m,i,e,u) + in + Array.update (sgnArray, cid, newConDec) + end + + end + + fun constDef (d) = + (case sgnLookup (d) + of ConDef(_, _, _, U,_, _, _) => U + | AbbrevDef (_, _, _, U,_, _) => U) + + fun constType (c) = conDecType (sgnLookup c) + fun constImp (c) = conDecImp (sgnLookup c) + fun constUni (c) = conDecUni (sgnLookup c) + fun constBlock (c) = conDecBlock (sgnLookup c) + + fun constStatus (c) = + (case sgnLookup (c) + of ConDec (_, _, _, status, _, _) => status + | _ => Normal) + + + (* Explicit Substitutions *) + + (* id = ^0 + + Invariant: + G |- id : G id is patsub + *) + val id = Shift(0) + + (* shift = ^1 + + Invariant: + G, V |- ^ : G ^ is patsub + *) + val shift = Shift(1) + + (* invShift = ^-1 = _.^0 + Invariant: + G |- ^-1 : G, V ^-1 is patsub + *) + val invShift = Dot(Undef, id) + + + (* comp (s1, s2) = s' + + Invariant: + If G' |- s1 : G + and G'' |- s2 : G' + then s' = s1 o s2 + and G'' |- s1 o s2 : G + + If s1, s2 patsub + then s' patsub + *) + fun comp (Shift (0), s) = s + (* next line is an optimization *) + (* roughly 15% on standard suite for Twelf 1.1 *) + (* Sat Feb 14 10:15:16 1998 -fp *) + | comp (s, Shift (0)) = s + | comp (Shift (n), Dot (Ft, s)) = comp (Shift (n-1), s) + | comp (Shift (n), Shift (m)) = Shift (n+m) + | comp (Dot (Ft, s), s') = Dot (frontSub (Ft, s'), comp (s, s')) + + (* bvarSub (n, s) = Ft' + + Invariant: + If G |- s : G' G' |- n : V + then Ft' = Ftn if s = Ft1 .. Ftn .. ^k + or Ft' = ^(n+k) if s = Ft1 .. Ftm ^k and m<n + and G |- Ft' : V [s] + *) + and bvarSub (1, Dot(Ft, s)) = Ft + | bvarSub (n, Dot(Ft, s)) = bvarSub (n-1, s) + | bvarSub (n, Shift(k)) = Idx (n+k) + + (* blockSub (B, s) = B' + + Invariant: + If G |- s : G' + and G' |- B block + then G |- B' block + and B [s] == B' + *) + (* in front of substitutions, first case is irrelevant *) + (* Sun Dec 2 11:56:41 2001 -fp *) + and blockSub (Bidx k, s) = + (case bvarSub (k, s) + of Idx k' => Bidx k' + | Block B => B) + | blockSub (LVar (ref (SOME B), sk, _), s) = + blockSub (B, comp (sk, s)) + (* -fp Sun Dec 1 21:18:30 2002 *) + (* --cs Sun Dec 1 11:25:41 2002 *) + (* Since always . |- t : Gsome, discard s *) + (* where is this needed? *) + (* Thu Dec 6 20:30:26 2001 -fp !!! *) + | blockSub (LVar (r as ref NONE, sk, (l, t)), s) = + LVar(r, comp(sk, s), (l, t)) + (* was: + LVar (r, comp(sk, s), (l, comp (t, s))) + July 22, 2010 -fp -cs + *) + (* comp(^k, s) = ^k' for some k' by invariant *) + | blockSub (L as Inst ULs, s') = Inst (map (fn U => EClo (U, s')) ULs) + (* this should be right but somebody should verify *) + + (* frontSub (Ft, s) = Ft' + + Invariant: + If G |- s : G' G' |- Ft : V + then Ft' = Ft [s] + and G |- Ft' : V [s] + + NOTE: EClo (U, s) might be undefined, so if this is ever + computed eagerly, we must introduce an "Undefined" exception, + raise it in whnf and handle it here so Exp (EClo (U, s)) => Undef + *) + and frontSub (Idx (n), s) = bvarSub (n, s) + | frontSub (Exp (U), s) = Exp (EClo (U, s)) + | frontSub (Undef, s) = Undef + | frontSub (Block (B), s) = Block (blockSub (B, s)) + + (* decSub (x:V, s) = D' + + Invariant: + If G |- s : G' G' |- V : L + then D' = x:V[s] + and G |- V[s] : L + *) + (* First line is an optimization suggested by cs *) + (* D[id] = D *) + (* Sat Feb 14 18:37:44 1998 -fp *) + (* seems to have no statistically significant effect *) + (* undo for now Sat Feb 14 20:22:29 1998 -fp *) + (* + fun decSub (D, Shift(0)) = D + | decSub (Dec (x, V), s) = Dec (x, EClo (V, s)) + *) + fun decSub (Dec (x, V), s) = Dec (x, EClo (V, s)) + | decSub (NDec x, s) = NDec x + | decSub (BDec (n, (l, t)), s) = BDec (n, (l, comp (t, s))) + + (* dot1 (s) = s' + + Invariant: + If G |- s : G' + then s' = 1. (s o ^) + and for all V s.t. G' |- V : L + G, V[s] |- s' : G', V + + If s patsub then s' patsub + *) + (* first line is an optimization *) + (* roughly 15% on standard suite for Twelf 1.1 *) + (* Sat Feb 14 10:16:16 1998 -fp *) + fun dot1 (s as Shift (0)) = s + | dot1 s = Dot (Idx(1), comp(s, shift)) + + (* invDot1 (s) = s' + invDot1 (1. s' o ^) = s' + + Invariant: + s = 1 . s' o ^ + If G' |- s' : G + (so G',V[s] |- s : G,V) + *) + fun invDot1 (s) = comp (comp(shift, s), invShift) + + + (* Declaration Contexts *) + + (* ctxDec (G, k) = x:V + Invariant: + If |G| >= k, where |G| is size of G, + then G |- k : V and G |- V : L + *) + fun ctxDec (G, k) = + let (* ctxDec' (G'', k') = x:V + where G |- ^(k-k') : G'', 1 <= k' <= k + *) + fun ctxDec' (Decl (G', Dec (x, V')), 1) = Dec (x, EClo (V', Shift (k))) + | ctxDec' (Decl (G', BDec (n, (l, s))), 1) = BDec (n, (l, comp (s, Shift (k)))) + | ctxDec' (Decl (G', _), k') = ctxDec' (G', k'-1) + (* ctxDec' (Null, k') should not occur by invariant *) + in + ctxDec' (G, k) + end + + (* blockDec (G, v, i) = V + + Invariant: + If G (v) = l[s] + and Sigma (l) = SOME Gsome BLOCK Lblock + and G |- s : Gsome + then G |- pi (v, i) : V + *) + + fun blockDec (G, v as (Bidx k), i) = + let + val BDec (_, (l, s)) = ctxDec (G, k) + (* G |- s : Gsome *) + val (Gsome, Lblock) = conDecBlock (sgnLookup l) + fun blockDec' (t, D :: L, 1, j) = decSub (D, t) + | blockDec' (t, _ :: L, n, j) = + blockDec' (Dot (Exp (Root (Proj (v, j), Nil)), t), + L, n-1, j+1) + in + blockDec' (s, Lblock, i, 1) + end + + + (* EVar related functions *) + + (* newEVar (G, V) = newEVarCnstr (G, V, nil) *) + fun newEVar (G, V) = EVar(ref NONE, G, V, ref nil) + + (* newAVar G = new AVar (assignable variable) *) + (* AVars carry no type, ctx, or cnstr *) + fun newAVar () = AVar(ref NONE) + + (* newTypeVar (G) = X, X new + where G |- X : type + *) + fun newTypeVar (G) = EVar(ref NONE, G, Uni(Type), ref nil) + + (* newLVar (l, s) = (l[s]) *) + fun newLVar (sk, (cid, t)) = LVar (ref NONE, sk, (cid, t)) + + (* Definition related functions *) + (* headOpt (U) = SOME(H) or NONE, U should be strict, normal *) + fun headOpt (Root (H, _)) = SOME(H) + | headOpt (Lam (_, U)) = headOpt U + | headOpt _ = NONE + + fun ancestor' (NONE) = Anc(NONE, 0, NONE) + | ancestor' (SOME(Const(c))) = Anc(SOME(c), 1, SOME(c)) + | ancestor' (SOME(Def(d))) = + (case sgnLookup(d) + of ConDef(_, _, _, _, _, _, Anc(_, height, cOpt)) + => Anc(SOME(d), height+1, cOpt)) + | ancestor' (SOME _) = (* FgnConst possible, BVar impossible by strictness *) + Anc(NONE, 0, NONE) + (* ancestor(U) = ancestor info for d = U *) + fun ancestor (U) = ancestor' (headOpt U) + + (* defAncestor(d) = ancestor of d, d must be defined *) + fun defAncestor (d) = + (case sgnLookup(d) + of ConDef(_, _, _, _, _, _, anc) => anc) + + (* Type related functions *) + + (* targetHeadOpt (V) = SOME(H) or NONE + where H is the head of the atomic target type of V, + NONE if V is a kind or object or have variable type. + Does not expand type definitions. + *) + (* should there possibly be a FgnConst case? also targetFamOpt -kw *) + fun targetHeadOpt (Root (H, _)) = SOME(H) + | targetHeadOpt (Pi(_, V)) = targetHeadOpt V + | targetHeadOpt (Redex (V, S)) = targetHeadOpt V + | targetHeadOpt (Lam (_, V)) = targetHeadOpt V + | targetHeadOpt (EVar (ref (SOME(V)),_,_,_)) = targetHeadOpt V + | targetHeadOpt (EClo (V, s)) = targetHeadOpt V + | targetHeadOpt _ = NONE + (* Root(Bvar _, _), Root(FVar _, _), Root(FgnConst _, _), + EVar(ref NONE,..), Uni, FgnExp _ + *) + (* Root(Skonst _, _) can't occur *) + (* targetHead (A) = a + as in targetHeadOpt, except V must be a valid type + *) + fun targetHead (A) = valOf (targetHeadOpt A) + + (* targetFamOpt (V) = SOME(cid) or NONE + where cid is the type family of the atomic target type of V, + NONE if V is a kind or object or have variable type. + Does expand type definitions. + *) + fun targetFamOpt (Root (Const(cid), _)) = SOME(cid) + | targetFamOpt (Pi(_, V)) = targetFamOpt V + | targetFamOpt (Root (Def(cid), _)) = targetFamOpt (constDef cid) + | targetFamOpt (Redex (V, S)) = targetFamOpt V + | targetFamOpt (Lam (_, V)) = targetFamOpt V + | targetFamOpt (EVar (ref (SOME(V)),_,_,_)) = targetFamOpt V + | targetFamOpt (EClo (V, s)) = targetFamOpt V + | targetFamOpt _ = NONE + (* Root(Bvar _, _), Root(FVar _, _), Root(FgnConst _, _), + EVar(ref NONE,..), Uni, FgnExp _ + *) + (* Root(Skonst _, _) can't occur *) + (* targetFam (A) = a + as in targetFamOpt, except V must be a valid type + *) + fun targetFam (A) = valOf (targetFamOpt A) + +end; (* functor IntSyn *) + +structure IntSyn :> INTSYN = + IntSyn (structure Global = Global); + +---tokens--- +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'y' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +'f' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'c' Comment.Multiline +'h' Comment.Multiline +'u' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n' Text + +'functor' Keyword.Reserved +' ' Text +'IntSyn' Name.Namespace +' ' Text +'(' Punctuation +'structure' Keyword.Reserved +' ' Text +'Global' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'GLOBAL' Name +')' Punctuation +' ' Text +':>' Punctuation +' ' Text +'INTSYN' Name +' ' Text +'=' Punctuation +'\n' Text + +'struct' Keyword.Reserved +'\n\n ' Text +'type' Keyword.Reserved +' ' Text +'cid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'name' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'string' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'mid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'csid' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Keyword.Type +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Null' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Decl' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +"'a" Name.Decorator +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'P' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +',' Comment.Multiline +'D' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'fun' Keyword.Reserved +' ' Text +'ctxPop' Name.Function +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'D' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'G' Name +'\n\n ' Text +'exception' Keyword.Reserved +' ' Text +'Error' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'L' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +'u' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'fun' Name.Class +' ' Text +'ctxLookup' Name.Class +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +'D' Name +')' Punctuation +',' Punctuation +' ' Text +'1' Literal.Number.Integer +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'D' Name +'\n ' Text +'|' Punctuation +' ' Text +'ctxLookup' Name.Function +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +',' Punctuation +' ' Text +"k'" Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'ctxLookup' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +"k'" Name +'-' Name +'1' Literal.Number.Integer +')' Punctuation +'\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'L' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +'u' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'N' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'"' Comment.Multiline +'L' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'"' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'.' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +'"' Comment.Multiline +'\\' Comment.Multiline +'n' Comment.Multiline +'"' Comment.Multiline +')' Comment.Multiline +';' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'"' Comment.Multiline +'O' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'\\' Comment.Multiline +'n' Comment.Multiline +'"' Comment.Multiline +')' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'L' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +'u' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'N' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'L' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'u' Comment.Multiline +'m' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'ctxLength' Name.Function +' ' Text +'G' Name +' ' Text +'=' Punctuation +'\n ' Text +'let' Keyword.Reserved +' \n\t' Text +'fun' Keyword.Reserved +' ' Text +"ctxLength'" Name.Function +' ' Text +'(' Punctuation +'Null' Name +',' Punctuation +' ' Text +'n' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'n' Name +'\n\t ' Text +'|' Punctuation +' ' Text +"ctxLength'" Name.Function +' ' Text +'(' Punctuation +'Decl' Name +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'n' Name +')' Punctuation +'=' Punctuation +' ' Text +"ctxLength'" Name +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'n' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +'\n ' Text +'in' Keyword.Reserved +'\n\t' Text +"ctxLength'" Name +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'0' Literal.Number.Integer +')' Punctuation +'\n ' Text +'end' Keyword.Reserved +'\n \n ' Text +'type' Keyword.Reserved +' ' Text +'FgnExp' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'exn' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'exception' Keyword.Reserved +' ' Text +'UnexpectedFgnExp' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnExp' Name.Class +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'\n' Comment.Multiline + +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +'\t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'type' Name.Class +' ' Text +'FgnCnstr' Name.Class +' ' Text +'=' Name.Class +' ' Text +'exn' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'exception' Name.Class +' ' Text +'UnexpectedFgnCnstr' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnCnstr' Name.Class +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'datatype' Name.Class +' ' Text +'Depend' Name.Class +' ' Text +'=' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'No' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Name.Class +' ' Text +'Maybe' Name.Class +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Name.Class +' ' Text +'Meta' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'datatype' Name.Class +' ' Text +'Uni' Name.Class +' ' Text +'=' Name.Class +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Kind' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Name.Class +' ' Text +'Type' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'datatype' Name.Class +' ' Text +'Exp' Name.Class +' ' Text +'=' Name.Class +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Uni' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'Uni' Name.Class +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Name.Class +' ' Text +'Pi' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'*' Name +' ' Text +'Depend' Name +')' Punctuation +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'P' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'D' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +')' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Root' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Head' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +' ' Comment.Multiline +'@' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Redex' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'@' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Lam' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'EVar' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Cnstr' Name +' ' Text +'ref' Name +')' Punctuation +' ' Text +'list' Name +' ' Text +'ref' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +'<' Comment.Multiline +'I' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'|' Punctuation +' ' Text +'EClo' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'AVar' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'<' Comment.Multiline +'I' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n ' Text +'|' Punctuation +' ' Text +'NVar' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'p' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'g' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'f' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'|' Punctuation +' ' Text +'FgnExp' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'FgnExp' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n \n ' Text +'and' Keyword.Reserved +' ' Text +'Head' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'BVar' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Const' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Proj' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'#' Comment.Multiline +'k' Comment.Multiline +'(' Comment.Multiline +'b' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Skonst' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'#' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Def' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'NSDef' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FVar' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'name' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FgnConst' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'ConDec' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n \n ' Text +'and' Keyword.Reserved +' ' Text +'Spine' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Nil' Name +'\t\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'App' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +';' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'SClo' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Spine' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Sub' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Shift' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Dot' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Front' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'.' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Front' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Idx' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Exp' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Axp' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Block' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +'x' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Undef' Name.Function +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Dec' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Dec' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'name' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'BDec' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'name' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +')' Punctuation +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +':' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'ADec' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'name' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +' \t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'[' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'d' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'NDec' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'name' Name +' ' Text +'option' Name +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Block' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Bidx' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +' \t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'LVar' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Block' Name +' ' Text +'option' Name +' ' Text +'ref' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'cid' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +']' Comment.Multiline +',' Comment.Multiline +'t' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Inst' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'list' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'1' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Cnstr' Name.Function +' ' Text +'=' Punctuation +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Solved' Name +' \t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +':' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Eqn' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'2' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'FgnCnstr' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'FgnCnstr' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Status' Name.Function +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Normal' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Constraint' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Spine' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +' ' Text +'option' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Foreign' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'csid' Name +' ' Text +'*' Name +' ' Text +'(' Punctuation +'Spine' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +')' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'FgnUnify' Name.Function +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Succeed' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'FgnUnifyResidual' Name +' ' Text +'list' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Fail' Name.Function +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'FgnUnifyResidual' Name.Function +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Assign' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Delay' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Cnstr' Name +' ' Text +'ref' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'ConDec' Name.Function +' ' Text +'=' Punctuation +'\t\t\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'ConDec' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'*' Name +' ' Text +'Status' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'ConDef' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Ancestor' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'AbbrevDef' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'BlockDec' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'P' Comment.Multiline +'I' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Dec' Name +' ' Text +'list' Name +'\n\n ' Text +'|' Punctuation +' ' Text +'BlockDef' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'cid' Name +' ' Text +'list' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'n' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'|' Punctuation +' ' Text +'SkoDec' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +'\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'a' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'*' Name +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Uni' Name +'\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'c' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'and' Keyword.Reserved +' ' Text +'Ancestor' Name.Function +' ' Text +'=' Punctuation +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Anc' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'cid' Name +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'*' Name +' ' Text +'cid' Name +' ' Text +'option' Name +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'(' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'[' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +']' Comment.Multiline +'(' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'{' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'A' Comment.Multiline +'}' Comment.Multiline +'B' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'datatype' Keyword.Reserved +' ' Text +'StrDec' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'StrDec' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'string' Name +' ' Text +'*' Name +' ' Text +'mid' Name +' ' Text +'option' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'datatype' Keyword.Reserved +' ' Text +'ConDecForm' Keyword.Type +' ' Text +'=' Punctuation +'\n ' Text +'FromCS' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Ordinary' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'Clause' Name.Class +'\t\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'%' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'b' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'dctx' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +'\t\t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'eclo' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' \t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'bclo' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Block' Name +' ' Text +'*' Name +' ' Text +'Sub' Name +' \t\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'cnstr' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Cnstr' Name +' ' Text +'ref' Name +'\n\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'FgnExpStd' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n\n ' Text +'structure' Keyword.Reserved +' ' Text +'ToInternal' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n\t\t\t\t\t' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'Map' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'Exp' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'App' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +' ' Text +'->' Punctuation +' ' Text +'unit' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'EqualTo' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'bool' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'UnifyWith' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'FgnUnify' Name +')' Punctuation +'\n\n\t\t\t \n\n ' Text +'' Text +'fun' Keyword.Reserved +' ' Text +'fold' Name.Function +' ' Text +'csfe' Name +' ' Text +'f' Name +' ' Text +'b' Name +' ' Text +'=' Punctuation +' ' Text +'let' Keyword.Reserved +'\n\t' Text +'val' Keyword.Reserved +' ' Text +'r' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'ref' Name +' ' Text +'b' Name +'\n\t' Text +'fun' Keyword.Reserved +' ' Text +'g' Name.Function +' ' Text +'U' Name +' ' Text +'=' Punctuation +' ' Text +'r' Name +' ' Text +':=' Name +' ' Text +'f' Name +' ' Text +'(' Punctuation +'U' Name +',' Punctuation +'!' Name +'r' Name +')' Punctuation +'\n ' Text +'in' Keyword.Reserved +'\n\t' Text +'App' Name.Namespace +'.' Punctuation +'apply' Name +' ' Text +'csfe' Name +' ' Text +'g' Name +' ' Text +';' Punctuation +' ' Text +'!' Name +'r' Name +'\n ' Text +'end' Keyword.Reserved +'\n\n ' Text +'end' Keyword.Reserved +'\n\n ' Text +'structure' Keyword.Reserved +' ' Text +'FgnCnstrStd' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n\n ' Text +'structure' Keyword.Reserved +' ' Text +'ToInternal' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n\t\t\t\t\t' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'Ctx' Name +' ' Text +'*' Name +' ' Text +'Exp' Name +')' Punctuation +' ' Text +'list' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'Awake' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'bool' Name +')' Punctuation +'\n\n ' Text +'' Text +'structure' Keyword.Reserved +' ' Text +'Simplify' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'FgnOpnTable' Name +' ' Text +'(' Punctuation +'type' Keyword.Reserved +' ' Text +'arg' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'unit' Name +'\n\t\t\t\t ' Text +'' Text +'type' Keyword.Reserved +' ' Text +'result' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'bool' Name +')' Punctuation +'\n\n ' Text +'' Text +'end' Keyword.Reserved +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'ConDef' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'AbbrevDef' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'SkoDec' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'BlockDec' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecName' Name.Function +' ' Text +'(' Punctuation +'BlockDef' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'ConDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'AbbrevDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'SkoDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'BlockDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecParent' Name.Function +' ' Text +'(' Punctuation +'BlockDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n \n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'I' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'b' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'k' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'u' Comment.Multiline +'m' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'.' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecImp' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'i' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecImp' Name.Function +' ' Text +'(' Punctuation +'ConDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'i' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecImp' Name.Function +' ' Text +'(' Punctuation +'AbbrevDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'i' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecImp' Name.Function +' ' Text +'(' Punctuation +'SkoDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'i' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecImp' Name.Function +' ' Text +'(' Punctuation +'BlockDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0' Literal.Number.Integer +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'c' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecStatus' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'status' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'status' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecStatus' Name.Function +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Normal' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'b' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'k' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecType' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecType' Name.Function +' ' Text +'(' Punctuation +'ConDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecType' Name.Function +' ' Text +'(' Punctuation +'AbbrevDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecType' Name.Function +' ' Text +'(' Punctuation +'SkoDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'V' Name +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'B' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +')' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecBlock' Name.Function +' ' Text +'(' Punctuation +'BlockDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'Gsome' Name +',' Punctuation +' ' Text +'Lpi' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'Gsome' Name +',' Punctuation +' ' Text +'Lpi' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'b' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'k' Comment.Multiline +'o' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'conDecUni' Name.Function +' ' Text +'(' Punctuation +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'L' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'L' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecUni' Name.Function +' ' Text +'(' Punctuation +'ConDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'L' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'L' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecUni' Name.Function +' ' Text +'(' Punctuation +'AbbrevDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'L' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'L' Name +'\n ' Text +'|' Punctuation +' ' Text +'conDecUni' Name.Function +' ' Text +'(' Punctuation +'SkoDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'L' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'L' Name +'\n\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'strDecName' Name.Function +' ' Text +'(' Punctuation +'StrDec' Name +' ' Text +'(' Punctuation +'name' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'name' Name +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'strDecParent' Name.Function +' ' Text +'(' Punctuation +'StrDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'parent' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'parent' Name +'\n\n ' Text +'local' Keyword.Reserved +'\n ' Text +'val' Keyword.Reserved +' ' Text +'maxCid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Global' Name.Namespace +'.' Punctuation +'maxCid' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'dummyEntry' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'ConDec' Name +'(' Punctuation +'"' Literal.String.Double +'"' Literal.String.Double +',' Punctuation +' ' Text +'NONE' Name +',' Punctuation +' ' Text +'0' Literal.Number.Integer +',' Punctuation +' ' Text +'Normal' Name +',' Punctuation +' ' Text +'Uni' Name +' ' Text +'(' Punctuation +'Kind' Name +')' Punctuation +',' Punctuation +' ' Text +'Kind' Name +')' Punctuation +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnArray' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Array' Name.Namespace +'.' Punctuation +'array' Name +' ' Text +'(' Punctuation +'maxCid' Name +'+' Name +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'dummyEntry' Name +')' Punctuation +'\n ' Text +':' Punctuation +' ' Text +'ConDec' Name +' ' Text +'Array' Name.Namespace +'.' Punctuation +'array' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'nextCid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'ref' Name +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'maxMid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Global' Name.Namespace +'.' Punctuation +'maxMid' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'sgnStructArray' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Array' Name.Namespace +'.' Punctuation +'array' Name +' ' Text +'(' Punctuation +'maxMid' Name +'+' Name +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'StrDec' Name +'(' Punctuation +'"' Literal.String.Double +'"' Literal.String.Double +',' Punctuation +' ' Text +'NONE' Name +')' Punctuation +')' Punctuation +'\n ' Text +':' Punctuation +' ' Text +'StrDec' Name +' ' Text +'Array' Name.Namespace +'.' Punctuation +'array' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'nextMid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'ref' Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +'\n\n ' Text +'in' Keyword.Reserved +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +'-' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'-' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'u' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'A' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +'(' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'(' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'A' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +'(' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnClean' Name.Function +' ' Text +'(' Punctuation +'i' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'if' Keyword.Reserved +' ' Text +'i' Name +' ' Text +'>=' Name +' ' Text +'!' Name +'nextCid' Name +' ' Text +'then' Keyword.Reserved +' ' Text +'(' Punctuation +')' Punctuation +'\n ' Text +'else' Keyword.Reserved +' ' Text +'(' Punctuation +'Array' Name.Namespace +'.' Punctuation +'update' Name +' ' Text +'(' Punctuation +'sgnArray' Name +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'dummyEntry' Name +')' Punctuation +';' Punctuation +'\n\t\t\t ' Text +'sgnClean' Name +' ' Text +'(' Punctuation +'i' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +')' Punctuation +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnReset' Name.Function +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'2' Comment.Multiline +':' Comment.Multiline +'0' Comment.Multiline +'4' Comment.Multiline +':' Comment.Multiline +'2' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'0' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\t\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'m' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\t\t ' Text +'sgnClean' Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +';' Punctuation +'\n\t\t ' Text +'nextCid' Name +' ' Text +':=' Name +' ' Text +'0' Literal.Number.Integer +';' Punctuation +' ' Text +'nextMid' Name +' ' Text +':=' Name +' ' Text +'0' Literal.Number.Integer +')' Punctuation +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnSize' Name.Function +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'!' Name +'nextCid' Name +',' Punctuation +' ' Text +'!' Name +'nextMid' Name +')' Punctuation +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnAdd' Name.Function +' ' Text +'(' Punctuation +'conDec' Name +')' Punctuation +' ' Text +'=' Punctuation +' \n ' Text +'let' Keyword.Reserved +'\n\t ' Text +'val' Keyword.Reserved +' ' Text +'cid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'!' Name +'nextCid' Name +'\n\t' Text +'in' Keyword.Reserved +'\n\t ' Text +'if' Keyword.Reserved +' ' Text +'cid' Name +' ' Text +'>' Name +' ' Text +'maxCid' Name +'\n\t ' Text +'then' Keyword.Reserved +' ' Text +'raise' Keyword.Reserved +' ' Text +'Error' Name +' ' Text +'(' Punctuation +'"' Literal.String.Double +'G' Literal.String.Double +'l' Literal.String.Double +'o' Literal.String.Double +'b' Literal.String.Double +'a' Literal.String.Double +'l' Literal.String.Double +' ' Literal.String.Double +'s' Literal.String.Double +'i' Literal.String.Double +'g' Literal.String.Double +'n' Literal.String.Double +'a' Literal.String.Double +'t' Literal.String.Double +'u' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +' ' Literal.String.Double +'s' Literal.String.Double +'i' Literal.String.Double +'z' Literal.String.Double +'e' Literal.String.Double +' ' Literal.String.Double +'"' Literal.String.Double +' ' Text +'^' Name +' ' Text +'Int' Name.Namespace +'.' Punctuation +'toString' Name +' ' Text +'(' Punctuation +'maxCid' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +' ' Text +'^' Name +' ' Text +'"' Literal.String.Double +' ' Literal.String.Double +'e' Literal.String.Double +'x' Literal.String.Double +'c' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'d' Literal.String.Double +'e' Literal.String.Double +'d' Literal.String.Double +'"' Literal.String.Double +')' Punctuation +'\n\t ' Text +'else' Keyword.Reserved +' ' Text +'(' Punctuation +'Array' Name.Namespace +'.' Punctuation +'update' Name +' ' Text +'(' Punctuation +'sgnArray' Name +',' Punctuation +' ' Text +'cid' Name +',' Punctuation +' ' Text +'conDec' Name +')' Punctuation +' ' Text +';' Punctuation +'\n\t\t' Text +'nextCid' Name +' ' Text +':=' Name +' ' Text +'cid' Name +' ' Text +'+' Name +' ' Text +'1' Literal.Number.Integer +';' Punctuation +'\n\t\t' Text +'cid' Name +')' Punctuation +'\n\t' Text +'end' Keyword.Reserved +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +' ' Comment.Multiline +'!' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'C' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnLookup' Name.Function +' ' Text +'(' Punctuation +'cid' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Array' Name.Namespace +'.' Punctuation +'sub' Name +' ' Text +'(' Punctuation +'sgnArray' Name +',' Punctuation +' ' Text +'cid' Name +')' Punctuation +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnApp' Name.Function +' ' Text +'(' Punctuation +'f' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'let' Keyword.Reserved +'\n\t ' Text +'fun' Keyword.Reserved +' ' Text +"sgnApp'" Name.Function +' ' Text +'(' Punctuation +'cid' Name +')' Punctuation +' ' Text +'=' Punctuation +' \n\t ' Text +'if' Keyword.Reserved +' ' Text +'cid' Name +' ' Text +'=' Punctuation +' ' Text +'!' Name +'nextCid' Name +' ' Text +'then' Keyword.Reserved +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +'else' Keyword.Reserved +' ' Text +'(' Punctuation +'f' Name +' ' Text +'cid' Name +';' Punctuation +' ' Text +"sgnApp'" Name +' ' Text +'(' Punctuation +'cid' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +')' Punctuation +' \n\t' Text +'in' Keyword.Reserved +'\n\t ' Text +"sgnApp'" Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +'\n\t' Text +'end' Keyword.Reserved +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnStructAdd' Name.Function +' ' Text +'(' Punctuation +'strDec' Name +')' Punctuation +' ' Text +'=' Punctuation +' \n ' Text +'let' Keyword.Reserved +'\n\t ' Text +'val' Keyword.Reserved +' ' Text +'mid' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'!' Name +'nextMid' Name +'\n\t' Text +'in' Keyword.Reserved +'\n\t ' Text +'if' Keyword.Reserved +' ' Text +'mid' Name +' ' Text +'>' Name +' ' Text +'maxMid' Name +'\n\t ' Text +'then' Keyword.Reserved +' ' Text +'raise' Keyword.Reserved +' ' Text +'Error' Name +' ' Text +'(' Punctuation +'"' Literal.String.Double +'G' Literal.String.Double +'l' Literal.String.Double +'o' Literal.String.Double +'b' Literal.String.Double +'a' Literal.String.Double +'l' Literal.String.Double +' ' Literal.String.Double +'s' Literal.String.Double +'i' Literal.String.Double +'g' Literal.String.Double +'n' Literal.String.Double +'a' Literal.String.Double +'t' Literal.String.Double +'u' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +' ' Literal.String.Double +'s' Literal.String.Double +'i' Literal.String.Double +'z' Literal.String.Double +'e' Literal.String.Double +' ' Literal.String.Double +'"' Literal.String.Double +' ' Text +'^' Name +' ' Text +'Int' Name.Namespace +'.' Punctuation +'toString' Name +' ' Text +'(' Punctuation +'maxMid' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +' ' Text +'^' Name +' ' Text +'"' Literal.String.Double +' ' Literal.String.Double +'e' Literal.String.Double +'x' Literal.String.Double +'c' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'d' Literal.String.Double +'e' Literal.String.Double +'d' Literal.String.Double +'"' Literal.String.Double +')' Punctuation +'\n\t ' Text +'else' Keyword.Reserved +' ' Text +'(' Punctuation +'Array' Name.Namespace +'.' Punctuation +'update' Name +' ' Text +'(' Punctuation +'sgnStructArray' Name +',' Punctuation +' ' Text +'mid' Name +',' Punctuation +' ' Text +'strDec' Name +')' Punctuation +' ' Text +';' Punctuation +'\n\t\t' Text +'nextMid' Name +' ' Text +':=' Name +' ' Text +'mid' Name +' ' Text +'+' Name +' ' Text +'1' Literal.Number.Integer +';' Punctuation +'\n\t\t' Text +'mid' Name +')' Punctuation +'\n\t' Text +'end' Keyword.Reserved +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +' ' Comment.Multiline +'!' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'M' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'sgnStructLookup' Name.Function +' ' Text +'(' Punctuation +'mid' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Array' Name.Namespace +'.' Punctuation +'sub' Name +' ' Text +'(' Punctuation +'sgnStructArray' Name +',' Punctuation +' ' Text +'mid' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'j' Comment.Multiline +'c' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'6' Comment.Multiline +'/' Comment.Multiline +'0' Comment.Multiline +'5' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'rename' Name.Function +' ' Text +'(' Punctuation +'cid' Name +',' Punctuation +' ' Text +'new' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n\t' Text +'let' Keyword.Reserved +'\n\t ' Text +'val' Keyword.Reserved +' ' Text +'newConDec' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'case' Keyword.Reserved +' ' Text +'sgnLookup' Name +' ' Text +'cid' Name +' ' Text +'of' Keyword.Reserved +' \n\t\t' Text +'ConDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'s' Name +',' Punctuation +'e' Name +',' Punctuation +'u' Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'ConDec' Name +'(' Punctuation +'new' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'s' Name +',' Punctuation +'e' Name +',' Punctuation +'u' Name +')' Punctuation +'\n\t ' Text +'|' Name +' ' Text +'ConDef' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +"e'" Name +',' Punctuation +'u' Name +',' Punctuation +'a' Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'ConDef' Name +'(' Punctuation +'new' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +"e'" Name +',' Punctuation +'u' Name +',' Punctuation +'a' Name +')' Punctuation +'\n\t ' Text +'|' Name +' ' Text +'AbbrevDef' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +"e'" Name +',' Punctuation +'u' Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'AbbrevDef' Name +' ' Text +'(' Punctuation +'new' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +"e'" Name +',' Punctuation +'u' Name +')' Punctuation +'\n\t ' Text +'|' Name +' ' Text +'BlockDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +'m' Name +',' Punctuation +'d' Name +',' Punctuation +"d'" Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'BlockDec' Name +' ' Text +'(' Punctuation +'new' Name +',' Punctuation +'m' Name +',' Punctuation +'d' Name +',' Punctuation +"d'" Name +')' Punctuation +'\n\t ' Text +'|' Name +' ' Text +'SkoDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +'u' Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'SkoDec' Name +' ' Text +'(' Punctuation +'new' Name +',' Punctuation +'m' Name +',' Punctuation +'i' Name +',' Punctuation +'e' Name +',' Punctuation +'u' Name +')' Punctuation +'\n\t' Text +'in' Keyword.Reserved +'\n\t ' Text +'Array' Name.Namespace +'.' Punctuation +'update' Name +' ' Text +'(' Punctuation +'sgnArray' Name +',' Punctuation +' ' Text +'cid' Name +',' Punctuation +' ' Text +'newConDec' Name +')' Punctuation +'\n\t' Text +'end' Keyword.Reserved +'\n\n ' Text +'end' Keyword.Reserved +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'constDef' Name.Function +' ' Text +'(' Punctuation +'d' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'sgnLookup' Name +' ' Text +'(' Punctuation +'d' Name +')' Punctuation +'\n\t ' Text +'of' Keyword.Reserved +' ' Text +'ConDef' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'U' Name +',' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'U' Name +'\n\t ' Text +'|' Name +' ' Text +'AbbrevDef' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'U' Name +',' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'U' Name +')' Punctuation +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'constType' Name.Function +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'conDecType' Name +' ' Text +'(' Punctuation +'sgnLookup' Name +' ' Text +'c' Name +')' Punctuation +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'constImp' Name.Function +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'conDecImp' Name +' ' Text +'(' Punctuation +'sgnLookup' Name +' ' Text +'c' Name +')' Punctuation +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'constUni' Name.Function +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'conDecUni' Name +' ' Text +'(' Punctuation +'sgnLookup' Name +' ' Text +'c' Name +')' Punctuation +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'constBlock' Name.Function +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'conDecBlock' Name +' ' Text +'(' Punctuation +'sgnLookup' Name +' ' Text +'c' Name +')' Punctuation +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'constStatus' Name.Function +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'sgnLookup' Name +' ' Text +'(' Punctuation +'c' Name +')' Punctuation +'\n\t ' Text +'of' Keyword.Reserved +' ' Text +'ConDec' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'status' Name +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'status' Name +'\n ' Text +'|' Name +' ' Text +'_' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'Normal' Name +')' Punctuation +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'id' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Shift' Name +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'1' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'shift' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Shift' Name +'(' Punctuation +'1' Literal.Number.Integer +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'S' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +'.' Comment.Multiline +'^' Comment.Multiline +'0' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'-' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'invShift' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'Dot' Name +'(' Punctuation +'Undef' Name +',' Punctuation +' ' Text +'id' Name +')' Punctuation +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +'1' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'2' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'2' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'1' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'comp' Name.Function +' ' Text +'(' Punctuation +'Shift' Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'s' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'z' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'5' Comment.Multiline +'%' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'.' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'e' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'0' Comment.Multiline +':' Comment.Multiline +'1' Comment.Multiline +'5' Comment.Multiline +':' Comment.Multiline +'1' Comment.Multiline +'6' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'9' Comment.Multiline +'9' Comment.Multiline +'8' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'comp' Name.Function +' ' Text +'(' Punctuation +'s' Name +',' Punctuation +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'s' Name +'\n ' Text +'|' Punctuation +' ' Text +'comp' Name.Function +' ' Text +'(' Punctuation +'Shift' Name +' ' Text +'(' Punctuation +'n' Name +')' Punctuation +',' Punctuation +' ' Text +'Dot' Name +' ' Text +'(' Punctuation +'Ft' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'Shift' Name +' ' Text +'(' Punctuation +'n' Name +'-' Name +'1' Literal.Number.Integer +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'comp' Name.Function +' ' Text +'(' Punctuation +'Shift' Name +' ' Text +'(' Punctuation +'n' Name +')' Punctuation +',' Punctuation +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'m' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'n' Name +'+' Name +'m' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'comp' Name.Function +' ' Text +'(' Punctuation +'Dot' Name +' ' Text +'(' Punctuation +'Ft' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +',' Punctuation +' ' Text +"s'" Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Dot' Name +' ' Text +'(' Punctuation +'frontSub' Name +' ' Text +'(' Punctuation +'Ft' Name +',' Punctuation +' ' Text +"s'" Name +')' Punctuation +',' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'s' Name +',' Punctuation +' ' Text +"s'" Name +')' Punctuation +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'(' Comment.Multiline +'n' Comment.Multiline +'+' Comment.Multiline +'k' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'<' Comment.Multiline +'n' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'and' Keyword.Reserved +' ' Text +'bvarSub' Name.Function +' ' Text +'(' Punctuation +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'Dot' Name +'(' Punctuation +'Ft' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Ft' Name +'\n ' Text +'|' Punctuation +' ' Text +'bvarSub' Name.Function +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'Dot' Name +'(' Punctuation +'Ft' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'bvarSub' Name +' ' Text +'(' Punctuation +'n' Name +'-' Name +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'s' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'bvarSub' Name.Function +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'Shift' Name +'(' Punctuation +'k' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Idx' Name +' ' Text +'(' Punctuation +'n' Name +'+' Name +'k' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'B' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'1' Comment.Multiline +':' Comment.Multiline +'5' Comment.Multiline +'6' Comment.Multiline +':' Comment.Multiline +'4' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'0' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'and' Keyword.Reserved +' ' Text +'blockSub' Name.Function +' ' Text +'(' Punctuation +'Bidx' Name +' ' Text +'k' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'bvarSub' Name +' ' Text +'(' Punctuation +'k' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +'\n\t ' Text +'of' Keyword.Reserved +' ' Text +'Idx' Name +' ' Text +"k'" Name +' ' Text +'=>' Punctuation +' ' Text +'Bidx' Name +' ' Text +"k'" Name +'\n ' Text +'|' Name +' ' Text +'Block' Name +' ' Text +'B' Name +' ' Text +'=>' Punctuation +' ' Text +'B' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'blockSub' Name.Function +' ' Text +'(' Punctuation +'LVar' Name +' ' Text +'(' Punctuation +'ref' Name +' ' Text +'(' Punctuation +'SOME' Name +' ' Text +'B' Name +')' Punctuation +',' Punctuation +' ' Text +'sk' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'blockSub' Name +' ' Text +'(' Punctuation +'B' Name +',' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'sk' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'1' Comment.Multiline +':' Comment.Multiline +'1' Comment.Multiline +'8' Comment.Multiline +':' Comment.Multiline +'3' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'0' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'-' Comment.Multiline +'c' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'1' Comment.Multiline +':' Comment.Multiline +'2' Comment.Multiline +'5' Comment.Multiline +':' Comment.Multiline +'4' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'0' Comment.Multiline +'2' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'w' Comment.Multiline +'a' Comment.Multiline +'y' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +'?' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'h' Comment.Multiline +'u' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'6' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +':' Comment.Multiline +'3' Comment.Multiline +'0' Comment.Multiline +':' Comment.Multiline +'2' Comment.Multiline +'6' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'0' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'!' Comment.Multiline +'!' Comment.Multiline +'!' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'blockSub' Name.Function +' ' Text +'(' Punctuation +'LVar' Name +' ' Text +'(' Punctuation +'r' Name +' ' Text +'as' Keyword.Reserved +' ' Text +'ref' Name +' ' Text +'NONE' Name +',' Punctuation +' ' Text +'sk' Name +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' \n ' Text +'LVar' Name +'(' Punctuation +'r' Name +',' Punctuation +' ' Text +'comp' Name +'(' Punctuation +'sk' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +'\t' Comment.Multiline +'L' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'r' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +'k' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +'\n' Comment.Multiline + +'\t' Comment.Multiline +'J' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'2' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +'1' Comment.Multiline +'0' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'c' Comment.Multiline +'s' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\t' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'(' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'|' Punctuation +' ' Text +'blockSub' Name.Function +' ' Text +'(' Punctuation +'L' Name +' ' Text +'as' Keyword.Reserved +' ' Text +'Inst' Name +' ' Text +'ULs' Name +',' Punctuation +' ' Text +"s'" Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Inst' Name +' ' Text +'(' Punctuation +'map' Name +' ' Text +'(' Punctuation +'fn' Keyword.Reserved +' ' Text +'U' Name +' ' Text +'=>' Punctuation +' ' Text +'EClo' Name +' ' Text +'(' Punctuation +'U' Name +',' Punctuation +' ' Text +"s'" Name +')' Punctuation +')' Punctuation +' ' Text +'ULs' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'b' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' \n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'t' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'T' Comment.Multiline +'E' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'C' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'u' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'"' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +'"' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'E' Comment.Multiline +'C' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +'>' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'and' Keyword.Reserved +' ' Text +'frontSub' Name.Function +' ' Text +'(' Punctuation +'Idx' Name +' ' Text +'(' Punctuation +'n' Name +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'bvarSub' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'frontSub' Name.Function +' ' Text +'(' Punctuation +'Exp' Name +' ' Text +'(' Punctuation +'U' Name +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Exp' Name +' ' Text +'(' Punctuation +'EClo' Name +' ' Text +'(' Punctuation +'U' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'frontSub' Name.Function +' ' Text +'(' Punctuation +'Undef' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Undef' Name +'\n ' Text +'|' Punctuation +' ' Text +'frontSub' Name.Function +' ' Text +'(' Punctuation +'Block' Name +' ' Text +'(' Punctuation +'B' Name +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Block' Name +' ' Text +'(' Punctuation +'blockSub' Name +' ' Text +'(' Punctuation +'B' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'z' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'g' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'[' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'e' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'8' Comment.Multiline +':' Comment.Multiline +'3' Comment.Multiline +'7' Comment.Multiline +':' Comment.Multiline +'4' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'9' Comment.Multiline +'9' Comment.Multiline +'8' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'e' Comment.Multiline +'m' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'f' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'w' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'e' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'2' Comment.Multiline +'0' Comment.Multiline +':' Comment.Multiline +'2' Comment.Multiline +'2' Comment.Multiline +':' Comment.Multiline +'2' Comment.Multiline +'9' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'9' Comment.Multiline +'9' Comment.Multiline +'8' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'D' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'0' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'S' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'x' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'x' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'C' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +')' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'decSub' Name.Function +' ' Text +'(' Punctuation +'Dec' Name +' ' Text +'(' Punctuation +'x' Name +',' Punctuation +' ' Text +'V' Name +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Dec' Name +' ' Text +'(' Punctuation +'x' Name +',' Punctuation +' ' Text +'EClo' Name +' ' Text +'(' Punctuation +'V' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'decSub' Name.Function +' ' Text +'(' Punctuation +'NDec' Name +' ' Text +'x' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'NDec' Name +' ' Text +'x' Name +'\n ' Text +'|' Punctuation +' ' Text +'decSub' Name.Function +' ' Text +'(' Punctuation +'BDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'BDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'t' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +')' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'.' Comment.Multiline +'t' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'b' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'z' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'5' Comment.Multiline +'%' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'u' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'w' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'.' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'e' Comment.Multiline +'b' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'4' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'0' Comment.Multiline +':' Comment.Multiline +'1' Comment.Multiline +'6' Comment.Multiline +':' Comment.Multiline +'1' Comment.Multiline +'6' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +'9' Comment.Multiline +'9' Comment.Multiline +'8' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'f' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'dot1' Name.Function +' ' Text +'(' Punctuation +'s' Name +' ' Text +'as' Keyword.Reserved +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'0' Literal.Number.Integer +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'s' Name +'\n ' Text +'|' Punctuation +' ' Text +'dot1' Name.Function +' ' Text +'s' Name +' ' Text +'=' Punctuation +' ' Text +'Dot' Name +' ' Text +'(' Punctuation +'Idx' Name +'(' Punctuation +'1' Literal.Number.Integer +')' Punctuation +',' Punctuation +' ' Text +'comp' Name +'(' Punctuation +'s' Name +',' Punctuation +' ' Text +'shift' Name +')' Punctuation +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'D' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'D' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'1' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +'\n' Comment.Multiline + +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +',' Comment.Multiline +'V' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +'V' Comment.Multiline +')' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'invDot1' Name.Function +' ' Text +'(' Punctuation +'s' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'comp' Name +'(' Punctuation +'shift' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +',' Punctuation +' ' Text +'invShift' Name +')' Punctuation +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'>' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'G' Comment.Multiline +'|' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'z' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'ctxDec' Name.Function +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'k' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'let' Keyword.Reserved +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +"'" Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'x' Comment.Multiline +':' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +'\t' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'^' Comment.Multiline +'(' Comment.Multiline +'k' Comment.Multiline +'-' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +"'" Comment.Multiline +"'" Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'1' Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'<' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\t' Text +'fun' Keyword.Reserved +' ' Text +"ctxDec'" Name.Function +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +'Dec' Name +' ' Text +'(' Punctuation +'x' Name +',' Punctuation +' ' Text +"V'" Name +')' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'1' Literal.Number.Integer +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Dec' Name +' ' Text +'(' Punctuation +'x' Name +',' Punctuation +' ' Text +'EClo' Name +' ' Text +'(' Punctuation +"V'" Name +',' Punctuation +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'k' Name +')' Punctuation +')' Punctuation +')' Punctuation +'\n\t ' Text +'|' Punctuation +' ' Text +"ctxDec'" Name.Function +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +'BDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'1' Literal.Number.Integer +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'BDec' Name +' ' Text +'(' Punctuation +'n' Name +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'comp' Name +' ' Text +'(' Punctuation +'s' Name +',' Punctuation +' ' Text +'Shift' Name +' ' Text +'(' Punctuation +'k' Name +')' Punctuation +')' Punctuation +')' Punctuation +')' Punctuation +'\n\t ' Text +'|' Punctuation +' ' Text +"ctxDec'" Name.Function +' ' Text +'(' Punctuation +'Decl' Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +',' Punctuation +' ' Text +"k'" Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +"ctxDec'" Name +' ' Text +'(' Punctuation +"G'" Name +',' Punctuation +' ' Text +"k'" Name +'-' Name +'1' Literal.Number.Integer +')' Punctuation +'\n\t ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +"'" Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'N' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +"'" Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'in' Keyword.Reserved +'\n\t' Text +"ctxDec'" Name +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'k' Name +')' Punctuation +'\n ' Text +'end' Keyword.Reserved +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +':' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'v' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'L' Comment.Multiline +'O' Comment.Multiline +'C' Comment.Multiline +'K' Comment.Multiline +' ' Comment.Multiline +'L' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'k' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'i' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'v' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +'blockDec' Name.Function +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'v' Name +' ' Text +'as' Keyword.Reserved +' ' Text +'(' Punctuation +'Bidx' Name +' ' Text +'k' Name +')' Punctuation +',' Punctuation +' ' Text +'i' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'let' Keyword.Reserved +' \n ' Text +'val' Keyword.Reserved +' ' Text +'BDec' Name.Variable +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'(' Punctuation +'l' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'ctxDec' Name +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'k' Name +')' Punctuation +' \n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'(' Punctuation +'Gsome' Name +',' Punctuation +' ' Text +'Lblock' Name +')' Punctuation +' ' Text +'=' Name.Variable +' ' Text +'conDecBlock' Name +' ' Text +'(' Punctuation +'sgnLookup' Name +' ' Text +'l' Name +')' Punctuation +'\n ' Text +'fun' Keyword.Reserved +' ' Text +"blockDec'" Name.Function +' ' Text +'(' Punctuation +'t' Name +',' Punctuation +' ' Text +'D' Name +' ' Text +'::' Name +' ' Text +'L' Name +',' Punctuation +' ' Text +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'j' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'decSub' Name +' ' Text +'(' Punctuation +'D' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +'\n\t' Text +'|' Punctuation +' ' Text +"blockDec'" Name.Function +' ' Text +'(' Punctuation +'t' Name +',' Punctuation +' ' Text +'_' Punctuation +' ' Text +'::' Name +' ' Text +'L' Name +',' Punctuation +' ' Text +'n' Name +',' Punctuation +' ' Text +'j' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n\t ' Text +"blockDec'" Name +' ' Text +'(' Punctuation +'Dot' Name +' ' Text +'(' Punctuation +'Exp' Name +' ' Text +'(' Punctuation +'Root' Name +' ' Text +'(' Punctuation +'Proj' Name +' ' Text +'(' Punctuation +'v' Name +',' Punctuation +' ' Text +'j' Name +')' Punctuation +',' Punctuation +' ' Text +'Nil' Name +')' Punctuation +')' Punctuation +',' Punctuation +' ' Text +'t' Name +')' Punctuation +',' Punctuation +'\n\t\t\t ' Text +'L' Name +',' Punctuation +' ' Text +'n' Name +'-' Name +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'j' Name +'+' Name +'1' Literal.Number.Integer +')' Punctuation +'\n ' Text +'in' Keyword.Reserved +'\n ' Text +"blockDec'" Name +' ' Text +'(' Punctuation +'s' Name +',' Punctuation +' ' Text +'Lblock' Name +',' Punctuation +' ' Text +'i' Name +',' Punctuation +' ' Text +'1' Literal.Number.Integer +')' Punctuation +'\n ' Text +'end' Keyword.Reserved +'\n\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'C' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'newEVar' Name.Function +' ' Text +'(' Punctuation +'G' Name +',' Punctuation +' ' Text +'V' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'EVar' Name +'(' Punctuation +'ref' Name +' ' Text +'NONE' Name +',' Punctuation +' ' Text +'G' Name +',' Punctuation +' ' Text +'V' Name +',' Punctuation +' ' Text +'ref' Name +' ' Text +'nil' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'A' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'r' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'x' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'newAVar' Name.Function +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'AVar' Name +'(' Punctuation +'ref' Name +' ' Text +'NONE' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'G' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'G' Comment.Multiline +' ' Comment.Multiline +'|' Comment.Multiline +'-' Comment.Multiline +' ' Comment.Multiline +'X' Comment.Multiline +' ' Comment.Multiline +':' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'newTypeVar' Name.Function +' ' Text +'(' Punctuation +'G' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'EVar' Name +'(' Punctuation +'ref' Name +' ' Text +'NONE' Name +',' Punctuation +' ' Text +'G' Name +',' Punctuation +' ' Text +'Uni' Name +'(' Punctuation +'Type' Name +')' Punctuation +',' Punctuation +' ' Text +'ref' Name +' ' Text +'nil' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'w' Comment.Multiline +'L' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'l' Comment.Multiline +'[' Comment.Multiline +'s' Comment.Multiline +']' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'newLVar' Name.Function +' ' Text +'(' Punctuation +'sk' Name +',' Punctuation +' ' Text +'(' Punctuation +'cid' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'LVar' Name +' ' Text +'(' Punctuation +'ref' Name +' ' Text +'NONE' Name +',' Punctuation +' ' Text +'sk' Name +',' Punctuation +' ' Text +'(' Punctuation +'cid' Name +',' Punctuation +' ' Text +'t' Name +')' Punctuation +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +'(' Comment.Multiline +'H' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'m' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'headOpt' Name.Function +' ' Text +'(' Punctuation +'Root' Name +' ' Text +'(' Punctuation +'H' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'SOME' Name +'(' Punctuation +'H' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'headOpt' Name.Function +' ' Text +'(' Punctuation +'Lam' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'U' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'headOpt' Name +' ' Text +'U' Name +'\n ' Text +'|' Punctuation +' ' Text +'headOpt' Name.Function +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'NONE' Name +'\n\n ' Text +'fun' Keyword.Reserved +' ' Text +"ancestor'" Name.Function +' ' Text +'(' Punctuation +'NONE' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Anc' Name +'(' Punctuation +'NONE' Name +',' Punctuation +' ' Text +'0' Literal.Number.Integer +',' Punctuation +' ' Text +'NONE' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +"ancestor'" Name.Function +' ' Text +'(' Punctuation +'SOME' Name +'(' Punctuation +'Const' Name +'(' Punctuation +'c' Name +')' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'Anc' Name +'(' Punctuation +'SOME' Name +'(' Punctuation +'c' Name +')' Punctuation +',' Punctuation +' ' Text +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'SOME' Name +'(' Punctuation +'c' Name +')' Punctuation +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +"ancestor'" Name.Function +' ' Text +'(' Punctuation +'SOME' Name +'(' Punctuation +'Def' Name +'(' Punctuation +'d' Name +')' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'sgnLookup' Name +'(' Punctuation +'d' Name +')' Punctuation +'\n\t ' Text +'of' Keyword.Reserved +' ' Text +'ConDef' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'Anc' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'height' Name +',' Punctuation +' ' Text +'cOpt' Name +')' Punctuation +')' Punctuation +'\n ' Text +'=>' Punctuation +' ' Text +'Anc' Name +'(' Punctuation +'SOME' Name +'(' Punctuation +'d' Name +')' Punctuation +',' Punctuation +' ' Text +'height' Name +'+' Name +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'cOpt' Name +')' Punctuation +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +"ancestor'" Name.Function +' ' Text +'(' Punctuation +'SOME' Name +' ' Text +'_' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'o' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'B' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'p' Comment.Multiline +'o' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'Anc' Name +'(' Punctuation +'NONE' Name +',' Punctuation +' ' Text +'0' Literal.Number.Integer +',' Punctuation +' ' Text +'NONE' Name +')' Punctuation +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'(' Comment.Multiline +'U' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'ancestor' Name.Function +' ' Text +'(' Punctuation +'U' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +"ancestor'" Name +' ' Text +'(' Punctuation +'headOpt' Name +' ' Text +'U' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'A' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +'(' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'defAncestor' Name.Function +' ' Text +'(' Punctuation +'d' Name +')' Punctuation +' ' Text +'=' Punctuation +'\n ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'sgnLookup' Name +'(' Punctuation +'d' Name +')' Punctuation +'\n\t ' Text +'of' Keyword.Reserved +' ' Text +'ConDef' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +',' Punctuation +' ' Text +'anc' Name +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'anc' Name +')' Punctuation +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'l' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'H' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'V' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +'(' Comment.Multiline +'H' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'H' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'j' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'.' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'o' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'.' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'l' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'o' Comment.Multiline +'s' Comment.Multiline +'s' Comment.Multiline +'i' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +'?' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'s' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'F' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'-' Comment.Multiline +'k' Comment.Multiline +'w' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'Root' Name +' ' Text +'(' Punctuation +'H' Name +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'SOME' Name +'(' Punctuation +'H' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'Pi' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetHeadOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'Redex' Name +' ' Text +'(' Punctuation +'V' Name +',' Punctuation +' ' Text +'S' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetHeadOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'Lam' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetHeadOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'EVar' Name +' ' Text +'(' Punctuation +'ref' Name +' ' Text +'(' Punctuation +'SOME' Name +'(' Punctuation +'V' Name +')' Punctuation +')' Punctuation +',' Punctuation +'_' Punctuation +',' Punctuation +'_' Punctuation +',' Punctuation +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetHeadOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'(' Punctuation +'EClo' Name +' ' Text +'(' Punctuation +'V' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetHeadOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetHeadOpt' Name.Function +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'NONE' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'B' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'F' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'(' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +',' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'S' Comment.Multiline +'k' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +"'" Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'H' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'A' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'H' Comment.Multiline +'e' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'targetHead' Name.Function +' ' Text +'(' Punctuation +'A' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'valOf' Name +' ' Text +'(' Punctuation +'targetHeadOpt' Name +' ' Text +'A' Name +')' Punctuation +'\n \n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'F' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'V' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'O' Comment.Multiline +'M' Comment.Multiline +'E' Comment.Multiline +'(' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'w' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'k' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'j' Comment.Multiline +'e' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'i' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'.' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'D' Comment.Multiline +'o' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'d' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'.' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'Root' Name +' ' Text +'(' Punctuation +'Const' Name +'(' Punctuation +'cid' Name +')' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'SOME' Name +'(' Punctuation +'cid' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'Pi' Name +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'Root' Name +' ' Text +'(' Punctuation +'Def' Name +'(' Punctuation +'cid' Name +')' Punctuation +',' Punctuation +' ' Text +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'(' Punctuation +'constDef' Name +' ' Text +'cid' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'Redex' Name +' ' Text +'(' Punctuation +'V' Name +',' Punctuation +' ' Text +'S' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'Lam' Name +' ' Text +'(' Punctuation +'_' Punctuation +',' Punctuation +' ' Text +'V' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'EVar' Name +' ' Text +'(' Punctuation +'ref' Name +' ' Text +'(' Punctuation +'SOME' Name +'(' Punctuation +'V' Name +')' Punctuation +')' Punctuation +',' Punctuation +'_' Punctuation +',' Punctuation +'_' Punctuation +',' Punctuation +'_' Punctuation +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'(' Punctuation +'EClo' Name +' ' Text +'(' Punctuation +'V' Name +',' Punctuation +' ' Text +'s' Name +')' Punctuation +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'targetFamOpt' Name +' ' Text +'V' Name +'\n ' Text +'|' Punctuation +' ' Text +'targetFamOpt' Name.Function +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'NONE' Name +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'B' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'F' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'E' Comment.Multiline +'V' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'(' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'f' Comment.Multiline +' ' Comment.Multiline +'N' Comment.Multiline +'O' Comment.Multiline +'N' Comment.Multiline +'E' Comment.Multiline +',' Comment.Multiline +'.' Comment.Multiline +'.' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'U' Comment.Multiline +'n' Comment.Multiline +'i' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'F' Comment.Multiline +'g' Comment.Multiline +'n' Comment.Multiline +'E' Comment.Multiline +'x' Comment.Multiline +'p' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +'(' Comment.Multiline +'S' Comment.Multiline +'k' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'_' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +"'" Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'F' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'A' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'=' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'F' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'O' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'x' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +'p' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'V' Comment.Multiline +' ' Comment.Multiline +'m' Comment.Multiline +'u' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'i' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +'p' Comment.Multiline +'e' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'targetFam' Name.Function +' ' Text +'(' Punctuation +'A' Name +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'valOf' Name +' ' Text +'(' Punctuation +'targetFamOpt' Name +' ' Text +'A' Name +')' Punctuation +'\n \n' Text + +'end' Keyword.Reserved +';' Punctuation +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'u' Comment.Multiline +'n' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'I' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'S' Comment.Multiline +'y' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n' Text + +'structure' Keyword.Reserved +' ' Text +'IntSyn' Name.Namespace +' ' Text +':>' Punctuation +' ' Text +'INTSYN' Name +' ' Text +'=' Punctuation +'\n ' Text +'IntSyn' Name +' ' Text +'(' Punctuation +'structure' Keyword.Reserved +' ' Text +'Global' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'Global' Name +')' Punctuation +';' Punctuation +'\n' Text diff --git a/tests/lexers/sml/example3.txt b/tests/lexers/sml/example3.txt new file mode 100644 index 00000000..e58b18d0 --- /dev/null +++ b/tests/lexers/sml/example3.txt @@ -0,0 +1,2141 @@ +---input--- +structure C = struct + val a = 12 + fun f x = x + 5 +end + +(*(*(*(*(* This file is all pretty strange Standard ML *)*)*)*) (**)*) +(* Robert J. Simmons *) + +(* Comments (* can be nested *) *) +structure S = struct + val x = (1, 2, "three") +end + +structure Sv = struct + (* These look good *) + val x = (1, 2, "three") + val z = #2 x + + (* Although these look bad (not all the numbers are constants), * + * they never occur in practice, as they are equivalent to the above. *) + val x = {1 = 1, 3 = "three", 2 = 2} + val z = # + 2 x + + val || = 12 +end + +signature S = sig end + +structure S = struct + val x = (1, 2, "three") + datatype 'a t = T of 'a + and u = U of v * v + withtype v = {left: int t, right: int t} + exception E1 of int and E2 + fun 'a id (x: 'a) : 'a = x + + val + 'a id = fn (x : 'a) => x +end + +signature R = sig + type t + val x : t + val f : t * int -> int +end +structure R : R = struct + datatype t = T of int + val x : t = T 0 + fun f (T x, i : int) : int = x + i + fun 'a id (x: 'a) : 'a = x +end + +signature BA_Z = sig + val s: int + include S R +end + +structure b______ = struct (* What (* A * strange * name *) for ) a ( struct *) + +val !%&$#+-/:<=>?@\~`^|* = 3 + +type struct' = int list +and 'a sig' = 'a list +and ('a, 'b) end' = 'b option * 'a list + +structure baz = struct + structure Bar = struct + val foo = !%&$#+-/:<=>?@\~`^|* + end +end + +infixr +!+ +fun (a +!+ b) = (op +) (a, b) + +open baz S R + +val$$$ = fn x => fn y => fn z => fn w => w +val (foo, ++, bar, ||) = (4, baz.Bar.foo, !%&$#+-/:<=>?@\~`^|*, Bar.foo) +val _ = $$$foo++bar|| + +val val'ue : ' list = [] +val struct3 : (' -> ') = fn x => x +val end_struct_' : ('a -> 'a) = fn x => x +val x : (''a -> ''a) = fn x => x +val x : ('''' -> '''') = fn x => x +val x : unit = print "Weird, huh?\n" +val w = {x=1,y=2,##= =3,4=3} +val {##=, x, 4=a,...} = w +val z = #4 w +val z = # ##= w + +fun f x y 0 = 4 + | f x y z = 4 + Sv.|| + +exception Foo of int +datatype ('0, 'b, '_, ') f'o'o = Bar | baZ12' | dsfa_fad | #@$ | Bug +and (', ''', '''', ''''') bar = + Bee of unit + | Ben of (', ''', '''', ''''') f'o'o * int + | X of ''' list + +fun q x = raise Foo x +and h x = raise Foo (~x) + +val x = 4 +and y = 5 + +fun q 0 = 4 + | q 1 = (case 1 of 1 => 2 | 3 => 4 | x => y) + | q y = case y of 1 => 2 | 3 => 4 | x => y + +val x = ref true +fun q 0 = 4 + | q 1 = if false then case 1 of 1 => 2 | 3 => 4 | x => y else 19 + | q 2 = (while !x handle Match => !x | Fail _ => !x do () ; 2) + | q x = (raise Match) handle Domain => 9 | Match => 3 + +fun p 0 = 12 + | p 1 = 8 + | p 2 = r false + | p x = r true +and r true = 19 + | r false = 12 + +val _ = 123 +val _ = 0001 +val _ = ~123 +val _ = ~0001 +val _ = 0w12412 +val _ = 0w12412 +val _ = 0xfA0 +val _ = ~0xfA0 +val _ = 0wxfA0 +val _ = 1.4 +val _ = ~1.4 +val _ = 1e~2 +val _ = 1E~2 +val _ = 1e2 +val _ = 1E2 +val _ = 1.4e~2 +val _ = 1.4E~2 +val _ = 1.4e2 +val _ = 1.4E2 + +val c = #"\000" +val st = "foo \ + \ bar" ^ "baz \ + \ and \ + \ such\n" + +val () = print st + +val _ = foo::bar::4::[++] + +end + +---tokens--- +'structure' Keyword.Reserved +' ' Text +'C' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'val' Keyword.Reserved +' ' Text +'a' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'12' Literal.Number.Integer +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'f' Name.Function +' ' Text +'x' Name +' ' Text +'=' Punctuation +' ' Text +'x' Name +' ' Text +'+' Name +' ' Text +'5' Literal.Number.Integer +'\n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'(*' Comment.Multiline +'(*' Comment.Multiline +'(*' Comment.Multiline +'(*' Comment.Multiline +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'h' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'i' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +'t' Comment.Multiline +'t' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'d' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'M' Comment.Multiline +'L' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'*)' Comment.Multiline +'*)' Comment.Multiline +'*)' Comment.Multiline +' ' Comment.Multiline +'(*' Comment.Multiline +'*)' Comment.Multiline +'*)' Comment.Multiline +'\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'R' Comment.Multiline +'o' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'J' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'S' Comment.Multiline +'i' Comment.Multiline +'m' Comment.Multiline +'m' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n' Text + +'(*' Comment.Multiline +' ' Comment.Multiline +'C' Comment.Multiline +'o' Comment.Multiline +'m' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'(*' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'e' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n' Text + +'structure' Keyword.Reserved +' ' Text +'S' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'2' Literal.Number.Integer +',' Punctuation +' ' Text +'"' Literal.String.Double +'t' Literal.String.Double +'h' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'"' Literal.String.Double +')' Punctuation +'\n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'structure' Keyword.Reserved +' ' Text +'Sv' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'T' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'g' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'2' Literal.Number.Integer +',' Punctuation +' ' Text +'"' Literal.String.Double +'t' Literal.String.Double +'h' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'"' Literal.String.Double +')' Punctuation +'\n ' Text +'val' Keyword.Reserved +' ' Text +'z' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'#2' Name.Label +' ' Text +'x' Name +'\n\n ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +'l' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'o' Comment.Multiline +'u' Comment.Multiline +'g' Comment.Multiline +'h' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'s' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'l' Comment.Multiline +'o' Comment.Multiline +'o' Comment.Multiline +'k' Comment.Multiline +' ' Comment.Multiline +'b' Comment.Multiline +'a' Comment.Multiline +'d' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +'n' Comment.Multiline +'o' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'l' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'u' Comment.Multiline +'m' Comment.Multiline +'b' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'c' Comment.Multiline +'o' Comment.Multiline +'n' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +'s' Comment.Multiline +')' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*' Comment.Multiline +'\n' Comment.Multiline + +' ' Comment.Multiline +' ' Comment.Multiline +' ' Comment.Multiline +'*' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'e' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'o' Comment.Multiline +'c' Comment.Multiline +'c' Comment.Multiline +'u' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +'i' Comment.Multiline +'n' Comment.Multiline +' ' Comment.Multiline +'p' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +'i' Comment.Multiline +'c' Comment.Multiline +'e' Comment.Multiline +',' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'s' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +'y' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'r' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'e' Comment.Multiline +'q' Comment.Multiline +'u' Comment.Multiline +'i' Comment.Multiline +'v' Comment.Multiline +'a' Comment.Multiline +'l' Comment.Multiline +'e' Comment.Multiline +'n' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'o' Comment.Multiline +' ' Comment.Multiline +'t' Comment.Multiline +'h' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +'b' Comment.Multiline +'o' Comment.Multiline +'v' Comment.Multiline +'e' Comment.Multiline +'.' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n ' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'{' Punctuation +'1' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'3' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'"' Literal.String.Double +'t' Literal.String.Double +'h' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'"' Literal.String.Double +',' Punctuation +' ' Text +'2' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'2' Literal.Number.Integer +'}' Punctuation +'\n ' Text +'val' Keyword.Reserved +' ' Text +'z' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'#\n 2' Name.Label +' ' Text +'x' Name +'\n\n ' Text +'val' Keyword.Reserved +' ' Text +'||' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'12' Literal.Number.Integer +'\n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'signature' Keyword.Reserved +' ' Text +'S' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'sig' Keyword.Reserved +' ' Text +'end' Keyword.Reserved +'\n\n' Text + +'structure' Keyword.Reserved +' ' Text +'S' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'1' Literal.Number.Integer +',' Punctuation +' ' Text +'2' Literal.Number.Integer +',' Punctuation +' ' Text +'"' Literal.String.Double +'t' Literal.String.Double +'h' Literal.String.Double +'r' Literal.String.Double +'e' Literal.String.Double +'e' Literal.String.Double +'"' Literal.String.Double +')' Punctuation +'\n ' Text +'datatype' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +'t' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'T' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +"'a" Name.Decorator +'\n ' Text +'and' Keyword.Reserved +' ' Text +'u' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'U' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'v' Name +' ' Text +'*' Name +' ' Text +'v' Name +'\n ' Text +'withtype' Keyword.Reserved +' ' Text +'v' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'{' Punctuation +'left' Name +':' Punctuation +' ' Text +'int' Name +' ' Text +'t' Name +',' Punctuation +' ' Text +'right' Name +':' Punctuation +' ' Text +'int' Name +' ' Text +'t' Name +'}' Punctuation +'\n ' Text +'' Text +'exception' Keyword.Reserved +' ' Text +'E1' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name.Class +' ' Text +'and' Keyword.Reserved +' ' Text +'E2' Name.Class +'\n ' Text +'fun' Name.Class +' ' Text +"'a" Name.Decorator +' ' Text +'id' Name +' ' Text +'(' Punctuation +'x' Name +':' Punctuation +' ' Text +"'a" Name.Decorator +')' Punctuation +' ' Text +':' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'=' Punctuation +' ' Text +'x' Name +'\n\n ' Text +'val' Keyword.Reserved +' \n ' Text +"'a" Name.Decorator +' ' Text +'id' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'(' Punctuation +'x' Name +' ' Text +':' Punctuation +' ' Text +"'a" Name.Decorator +')' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'x' Name +'\n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'signature' Keyword.Reserved +' ' Text +'R' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'sig' Keyword.Reserved +'\n ' Text +'type' Keyword.Reserved +' ' Text +'t' Keyword.Type +'\n ' Text +'' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +':' Punctuation +' ' Text +'t' Name +'\n ' Text +'val' Keyword.Reserved +' ' Text +'f' Name.Variable +' ' Text +':' Punctuation +' ' Text +'t' Name +' ' Text +'*' Name +' ' Text +'int' Name +' ' Text +'->' Punctuation +' ' Text +'int' Name +'\n' Text + +'end' Keyword.Reserved +'\n' Text + +'structure' Keyword.Reserved +' ' Text +'R' Name.Namespace +' ' Text +':' Punctuation +' ' Text +'R' Name +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'datatype' Keyword.Reserved +' ' Text +'t' Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'T' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name +'\n ' Text +'' Text +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +':' Punctuation +' ' Text +'t' Name +' ' Text +'=' Punctuation +' ' Text +'T' Name +' ' Text +'0' Literal.Number.Integer +'\n ' Text +'fun' Keyword.Reserved +' ' Text +'f' Name.Function +' ' Text +'(' Punctuation +'T' Name +' ' Text +'x' Name +',' Punctuation +' ' Text +'i' Name +' ' Text +':' Punctuation +' ' Text +'int' Name +')' Punctuation +' ' Text +':' Punctuation +' ' Text +'int' Name +' ' Text +'=' Punctuation +' ' Text +'x' Name +' ' Text +'+' Name +' ' Text +'i' Name +'\n ' Text +'fun' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +'id' Name.Function +' ' Text +'(' Punctuation +'x' Name +':' Punctuation +' ' Text +"'a" Name.Decorator +')' Punctuation +' ' Text +':' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'=' Punctuation +' ' Text +'x' Name +'\n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'signature' Keyword.Reserved +' ' Text +'BA_Z' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'sig' Keyword.Reserved +' \n ' Text +'val' Keyword.Reserved +' ' Text +'s' Name.Variable +':' Punctuation +' ' Text +'int' Name +'\n ' Text +'include' Keyword.Reserved +' ' Text +'S' Name.Namespace +' ' Text +'R' Name.Namespace +'\n' Text + +'' Text +'end' Keyword.Reserved +' \n\n' Text + +'structure' Keyword.Reserved +' ' Text +'b______' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +' ' Text +'(*' Comment.Multiline +' ' Comment.Multiline +'W' Comment.Multiline +'h' Comment.Multiline +'a' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'(*' Comment.Multiline +' ' Comment.Multiline +'A' Comment.Multiline +' ' Comment.Multiline +'*' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'a' Comment.Multiline +'n' Comment.Multiline +'g' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*' Comment.Multiline +' ' Comment.Multiline +'n' Comment.Multiline +'a' Comment.Multiline +'m' Comment.Multiline +'e' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +' ' Comment.Multiline +'f' Comment.Multiline +'o' Comment.Multiline +'r' Comment.Multiline +' ' Comment.Multiline +')' Comment.Multiline +' ' Comment.Multiline +'a' Comment.Multiline +' ' Comment.Multiline +'(' Comment.Multiline +' ' Comment.Multiline +'s' Comment.Multiline +'t' Comment.Multiline +'r' Comment.Multiline +'u' Comment.Multiline +'c' Comment.Multiline +'t' Comment.Multiline +' ' Comment.Multiline +'*)' Comment.Multiline +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'!%&$#+-/:<=>?@\\~`^|*' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'3' Literal.Number.Integer +'\n\n' Text + +'type' Keyword.Reserved +' ' Text +"struct'" Keyword.Type +' ' Text +'=' Punctuation +' ' Text +'int' Name +' ' Text +'list' Name +'\n' Text + +'and' Keyword.Reserved +' ' Text +"'a" Name.Decorator +' ' Text +"sig'" Keyword.Type +' ' Text +'=' Punctuation +' ' Text +"'a" Name.Decorator +' ' Text +'list' Name +'\n' Text + +'and' Keyword.Reserved +' ' Text +'(' Punctuation +"'a" Name.Decorator +',' Punctuation +' ' Text +"'b" Name.Decorator +')' Punctuation +' ' Text +"end'" Keyword.Type +' ' Text +'=' Punctuation +' ' Text +"'b" Name.Decorator +' ' Text +'option' Name +' ' Text +'*' Name +' ' Text +"'a" Name.Decorator +' ' Text +'list' Name +'\n\n' Text + +'' Text +'structure' Keyword.Reserved +' ' Text +'baz' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +'\n ' Text +'structure' Keyword.Reserved +' ' Text +'Bar' Name.Namespace +' ' Text +'=' Punctuation +' ' Text +'struct' Keyword.Reserved +' \n ' Text +'val' Keyword.Reserved +' ' Text +'foo' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'!%&$#+-/:<=>?@\\~`^|*' Name +'\n ' Text +'end' Keyword.Reserved +' \n' Text + +'end' Keyword.Reserved +'\n\n' Text + +'infixr' Keyword.Reserved +' ' Text +'+!+' Name +' \n' Text + +'fun' Keyword.Reserved +' ' Text +'(' Punctuation +'a' Name +' ' Text +'+!+' Name +' ' Text +'b' Name +')' Punctuation +' ' Text +'=' Name.Function +' ' Text +'(' Punctuation +'op' Keyword.Reserved +' ' Text +'+' Name +')' Punctuation +' ' Text +'(' Punctuation +'a' Name +',' Punctuation +' ' Text +'b' Name +')' Punctuation +'\n\n' Text + +'open' Keyword.Reserved +' ' Text +'baz' Name.Namespace +' ' Text +'S' Name.Namespace +' ' Text +'R' Name.Namespace +'\n\n' Text + +'' Text +'val' Keyword.Reserved +'$$$' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'y' Name +' ' Text +'=>' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'z' Name +' ' Text +'=>' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'w' Name +' ' Text +'=>' Punctuation +' ' Text +'w' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'(' Punctuation +'foo' Name +',' Punctuation +' ' Text +'++' Name +',' Punctuation +' ' Text +'bar' Name +',' Punctuation +' ' Text +'||' Name +')' Punctuation +' ' Text +'=' Name.Variable +' ' Text +'(' Punctuation +'4' Literal.Number.Integer +',' Punctuation +' ' Text +'baz' Name.Namespace +'.' Punctuation +'Bar' Name.Namespace +'.' Punctuation +'foo' Name +',' Punctuation +' ' Text +'!%&$#+-/:<=>?@\\~`^|*' Name +',' Punctuation +' ' Text +'Bar' Name.Namespace +'.' Punctuation +'foo' Name +')' Punctuation +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'$$$' Name +'foo' Name +'++' Name +'bar' Name +'||' Name +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +"val'ue" Name.Variable +' ' Text +':' Punctuation +' ' Text +"'" Name.Decorator +' ' Text +'list' Name +' ' Text +'=' Punctuation +' ' Text +'[' Punctuation +']' Punctuation +'\n' Text + +'val' Keyword.Reserved +' ' Text +'struct3' Name.Variable +' ' Text +':' Punctuation +' ' Text +'(' Punctuation +"'" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"'" Name.Decorator +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'x' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +"end_struct_'" Name.Variable +' ' Text +':' Punctuation +' ' Text +'(' Punctuation +"'a" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"'a" Name.Decorator +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'x' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +':' Punctuation +' ' Text +'(' Punctuation +"''a" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"''a" Name.Decorator +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'x' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +':' Punctuation +' ' Text +'(' Punctuation +"''''" Name.Decorator +' ' Text +'->' Punctuation +' ' Text +"''''" Name.Decorator +')' Punctuation +' ' Text +'=' Punctuation +' ' Text +'fn' Keyword.Reserved +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'x' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +':' Punctuation +' ' Text +'unit' Name +' ' Text +'=' Punctuation +' ' Text +'print' Name +' ' Text +'"' Literal.String.Double +'W' Literal.String.Double +'e' Literal.String.Double +'i' Literal.String.Double +'r' Literal.String.Double +'d' Literal.String.Double +',' Literal.String.Double +' ' Literal.String.Double +'h' Literal.String.Double +'u' Literal.String.Double +'h' Literal.String.Double +'?' Literal.String.Double +'\\n' Literal.String.Escape +'"' Literal.String.Double +'\n' Text + +'val' Keyword.Reserved +' ' Text +'w' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'{' Punctuation +'x' Name +'=' Punctuation +'1' Literal.Number.Integer +',' Punctuation +'y' Name +'=' Punctuation +'2' Literal.Number.Integer +',' Punctuation +'##=' Name +' ' Text +'=' Punctuation +'3' Literal.Number.Integer +',' Punctuation +'4' Literal.Number.Integer +'=' Punctuation +'3' Literal.Number.Integer +'}' Punctuation +'\n' Text + +'val' Keyword.Reserved +' ' Text +'{' Punctuation +'##=' Name +',' Punctuation +' ' Text +'x' Name +',' Punctuation +' ' Text +'4' Literal.Number.Integer +'=' Punctuation +'a' Name +',' Punctuation +'...' Punctuation +'}' Punctuation +' ' Text +'=' Punctuation +' ' Text +'w' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'z' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'#4' Name.Label +' ' Text +'w' Name +'\n' Text + +'val' Keyword.Reserved +' ' Text +'z' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'# ##=' Name.Label +' ' Text +'w' Name +'\n\n' Text + +'fun' Keyword.Reserved +' ' Text +'f' Name.Function +' ' Text +'x' Name +' ' Text +'y' Name +' ' Text +'0' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'4' Literal.Number.Integer +' \n ' Text +'|' Punctuation +' ' Text +'f' Name.Function +' ' Text +'x' Name +' ' Text +'y' Name +' ' Text +'z' Name +' ' Text +'=' Punctuation +' ' Text +'4' Literal.Number.Integer +' ' Text +'+' Name +' ' Text +'Sv' Name.Namespace +'.' Punctuation +'||' Name +'\n\n' Text + +'exception' Keyword.Reserved +' ' Text +'Foo' Name.Class +' ' Text +'of' Keyword.Reserved +' ' Text +'int' Name.Class +'\n' Text + +'datatype' Name.Class +' ' Text +'(' Punctuation +"'0" Name.Decorator +',' Punctuation +' ' Text +"'b" Name.Decorator +',' Punctuation +' ' Text +"'_" Name.Decorator +',' Punctuation +' ' Text +"'" Name.Decorator +')' Punctuation +' ' Text +"f'o'o" Name +' ' Text +'=' Punctuation +' ' Text +'Bar' Name +' ' Text +'|' Punctuation +' ' Text +"baZ12'" Name.Function +' ' Text +'|' Punctuation +' ' Text +'dsfa_fad' Name.Function +' ' Text +'|' Punctuation +' ' Text +'#@$' Name.Function +' ' Text +'|' Punctuation +' ' Text +'Bug' Name.Function +'\n' Text + +'and' Keyword.Reserved +' ' Text +'(' Punctuation +"'" Name.Decorator +',' Punctuation +' ' Text +"'''" Name.Decorator +',' Punctuation +' ' Text +"''''" Name.Decorator +',' Punctuation +' ' Text +"'''''" Name.Decorator +')' Punctuation +' ' Text +'bar' Name.Function +' ' Text +'=' Punctuation +' \n ' Text +'Bee' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'unit' Name +'\n ' Text +'|' Punctuation +' ' Text +'Ben' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +'(' Punctuation +"'" Name.Decorator +',' Punctuation +' ' Text +"'''" Name.Decorator +',' Punctuation +' ' Text +"''''" Name.Decorator +',' Punctuation +' ' Text +"'''''" Name.Decorator +')' Punctuation +' ' Text +"f'o'o" Name +' ' Text +'*' Name +' ' Text +'int' Name +'\n ' Text +'|' Punctuation +' ' Text +'X' Name.Function +' ' Text +'of' Keyword.Reserved +' ' Text +"'''" Name.Decorator +' ' Text +'list' Name +'\n\n' Text + +'fun' Keyword.Reserved +' ' Text +'q' Name.Function +' ' Text +'x' Name +' ' Text +'=' Punctuation +' ' Text +'raise' Keyword.Reserved +' ' Text +'Foo' Name +' ' Text +'x' Name +'\n' Text + +'and' Keyword.Reserved +' ' Text +'h' Name.Function +' ' Text +'x' Name +' ' Text +'=' Punctuation +' ' Text +'raise' Keyword.Reserved +' ' Text +'Foo' Name +' ' Text +'(' Punctuation +'~' Name +'x' Name +')' Punctuation +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'4' Literal.Number.Integer +'\n' Text + +'and' Keyword.Reserved +' ' Text +'y' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'5' Literal.Number.Integer +'\n\n' Text + +'fun' Keyword.Reserved +' ' Text +'q' Name.Function +' ' Text +'0' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'4' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'q' Name.Function +' ' Text +'1' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'case' Keyword.Reserved +' ' Text +'1' Literal.Number.Integer +' ' Text +'of' Keyword.Reserved +' ' Text +'1' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'2' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'3' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'4' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'y' Name +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'q' Name.Function +' ' Text +'y' Name +' ' Text +'=' Punctuation +' ' Text +'case' Keyword.Reserved +' ' Text +'y' Name +' ' Text +'of' Keyword.Reserved +' ' Text +'1' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'2' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'3' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'4' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'y' Name +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'x' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'ref' Name +' ' Text +'true' Name +'\n' Text + +'fun' Keyword.Reserved +' ' Text +'q' Name.Function +' ' Text +'0' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'4' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'q' Name.Function +' ' Text +'1' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'if' Keyword.Reserved +' ' Text +'false' Name +' ' Text +'then' Keyword.Reserved +' ' Text +'case' Keyword.Reserved +' ' Text +'1' Literal.Number.Integer +' ' Text +'of' Keyword.Reserved +' ' Text +'1' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'2' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'3' Literal.Number.Integer +' ' Text +'=>' Punctuation +' ' Text +'4' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'x' Name +' ' Text +'=>' Punctuation +' ' Text +'y' Name +' ' Text +'else' Keyword.Reserved +' ' Text +'19' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'q' Name.Function +' ' Text +'2' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'while' Keyword.Reserved +' ' Text +'!' Name +'x' Name +' ' Text +'handle' Keyword.Reserved +' ' Text +'Match' Name +' ' Text +'=>' Punctuation +' ' Text +'!' Name +'x' Name +' ' Text +'|' Name +' ' Text +'Fail' Name +' ' Text +'_' Punctuation +' ' Text +'=>' Punctuation +' ' Text +'!' Name +'x' Name +' ' Text +'do' Keyword.Reserved +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +';' Punctuation +' ' Text +'2' Literal.Number.Integer +')' Punctuation +'\n ' Text +'|' Punctuation +' ' Text +'q' Name.Function +' ' Text +'x' Name +' ' Text +'=' Punctuation +' ' Text +'(' Punctuation +'raise' Keyword.Reserved +' ' Text +'Match' Name +')' Punctuation +' ' Text +'handle' Keyword.Reserved +' ' Text +'Domain' Name +' ' Text +'=>' Punctuation +' ' Text +'9' Literal.Number.Integer +' ' Text +'|' Name +' ' Text +'Match' Name +' ' Text +'=>' Punctuation +' ' Text +'3' Literal.Number.Integer +'\n\n' Text + +'fun' Keyword.Reserved +' ' Text +'p' Name.Function +' ' Text +'0' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'12' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'p' Name.Function +' ' Text +'1' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'8' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'p' Name.Function +' ' Text +'2' Literal.Number.Integer +' ' Text +'=' Punctuation +' ' Text +'r' Name +' ' Text +'false' Name +'\n ' Text +'|' Punctuation +' ' Text +'p' Name.Function +' ' Text +'x' Name +' ' Text +'=' Punctuation +' ' Text +'r' Name +' ' Text +'true' Name +'\n' Text + +'and' Keyword.Reserved +' ' Text +'r' Name.Function +' ' Text +'true' Name +' ' Text +'=' Punctuation +' ' Text +'19' Literal.Number.Integer +'\n ' Text +'|' Punctuation +' ' Text +'r' Name.Function +' ' Text +'false' Name +' ' Text +'=' Punctuation +' ' Text +'12' Literal.Number.Integer +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'123' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0001' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'~123' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'~0001' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0w12412' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0w12412' Literal.Number.Integer +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0xfA0' Literal.Number.Hex +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'~0xfA0' Literal.Number.Hex +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'0wxfA0' Literal.Number.Hex +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1.4' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'~1.4' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1e~2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1E~2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1e2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1E2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1.4e~2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1.4E~2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1.4e2' Literal.Number.Float +'\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'1.4E2' Literal.Number.Float +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'c' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'#"' Literal.String.Char +'\\000' Literal.String.Escape +'"' Literal.String.Char +'\n' Text + +'val' Keyword.Reserved +' ' Text +'st' Name.Variable +' ' Text +'=' Punctuation +' ' Text +'"' Literal.String.Double +'f' Literal.String.Double +'o' Literal.String.Double +'o' Literal.String.Double +' ' Literal.String.Double +'\\\n \t \\' Literal.String.Interpol +' ' Literal.String.Double +'b' Literal.String.Double +'a' Literal.String.Double +'r' Literal.String.Double +'"' Literal.String.Double +' ' Text +'^' Name +' ' Text +'"' Literal.String.Double +'b' Literal.String.Double +'a' Literal.String.Double +'z' Literal.String.Double +' ' Literal.String.Double +'\\ \n \t \\' Literal.String.Interpol +' ' Literal.String.Double +'a' Literal.String.Double +'n' Literal.String.Double +'d' Literal.String.Double +' ' Literal.String.Double +'\\ \n \t \\' Literal.String.Interpol +' ' Literal.String.Double +'s' Literal.String.Double +'u' Literal.String.Double +'c' Literal.String.Double +'h' Literal.String.Double +'\\n' Literal.String.Escape +'"' Literal.String.Double +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'(' Punctuation +')' Punctuation +' ' Text +'=' Name.Variable +' ' Text +'print' Name +' ' Text +'st' Name +'\n\n' Text + +'val' Keyword.Reserved +' ' Text +'_' Punctuation +' ' Text +'=' Punctuation +' ' Text +'foo' Name +'::' Name +'bar' Name +'::' Name +'4' Literal.Number.Integer +'::' Name +'[' Punctuation +'++' Name +']' Punctuation +'\n\n' Text + +'end' Keyword.Reserved +'\n' Text |
