---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 : G|-V, Cnstr *) | EClo of Exp * Sub (* | U[s] *) | AVar of Exp option ref (* | A *) | 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 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