---input--- (* Internal Syntax *) (* Author: Frank Pfenning, Carsten Schuermann *) (* Modified: Roberto Virga *) signature INTSYN = sig type cid = int (* Constant identifier *) type mid = int (* Structure identifier *) type csid = int (* CS module identifier *) type FgnExp = exn (* foreign expression representation *) exception UnexpectedFgnExp of FgnExp (* raised by a constraint solver if passed an incorrect arg *) type FgnCnstr = exn (* foreign constraint representation *) exception UnexpectedFgnCnstr of FgnCnstr (* raised by a constraint solver if passed an incorrect arg *) (* Contexts *) datatype 'a Ctx = (* Contexts *) Null (* G ::= . *) | Decl of 'a Ctx * 'a (* | G, D *) val ctxPop : 'a Ctx -> 'a Ctx val ctxLookup: 'a Ctx * int -> 'a val ctxLength: 'a Ctx -> int datatype Depend = (* Dependency information *) No (* P ::= No *) | Maybe (* | Maybe *) | Meta (* | Meta *) (* expressions *) datatype Uni = (* Universes: *) Kind (* L ::= Kind *) | Type (* | Type *) datatype Exp = (* Expressions: *) Uni of Uni (* U ::= L *) | Pi of (Dec * Depend) * Exp (* | Pi (D, P). V *) | Root of Head * Spine (* | H @ S *) | Redex of Exp * Spine (* | U @ S *) | Lam of Dec * Exp (* | lam D. U *) | EVar of Exp option ref * Dec Ctx * Exp * (Cnstr ref) list ref (* | X : G|-V, Cnstr *) | EClo of Exp * Sub (* | U[s] *) | AVar of Exp option ref (* | A *) | FgnExp of csid * FgnExp (* | (foreign expression) *) | NVar of int (* | n (linear, fully applied variable used in indexing *) and Head = (* Head: *) BVar of int (* H ::= k *) | Const of cid (* | c *) | Proj of Block * int (* | #k(b) *) | Skonst of cid (* | c# *) | Def of cid (* | d (strict) *) | NSDef of cid (* | d (non strict) *) | FVar of string * Exp * Sub (* | F[s] *) | FgnConst of csid * ConDec (* | (foreign constant) *) and Spine = (* Spines: *) Nil (* S ::= Nil *) | App of Exp * Spine (* | U ; S *) | SClo of Spine * Sub (* | S[s] *) and Sub = (* Explicit substitutions: *) Shift of int (* s ::= ^n *) | Dot of Front * Sub (* | Ft.s *) and Front = (* Fronts: *) Idx of int (* Ft ::= k *) | Exp of Exp (* | U *) | Axp of Exp (* | U *) | Block of Block (* | _x *) | Undef (* | _ *) and Dec = (* Declarations: *) Dec of string option * Exp (* D ::= x:V *) | BDec of string option * (cid * Sub) (* | v:l[s] *) | ADec of string option * int (* | v[^-d] *) | NDec of string option and Block = (* Blocks: *) Bidx of int (* b ::= v *) | LVar of Block option ref * Sub * (cid * Sub) (* | L(l[^k],t) *) | Inst of Exp list (* | U1, ..., Un *) (* It would be better to consider having projections count like substitutions, then we could have Inst of Sub here, which would simplify a lot of things. I suggest however to wait until the next big overhaul of the system -- cs *) (* | BClo of Block * Sub (* | b[s] *) *) (* constraints *) and Cnstr = (* Constraint: *) Solved (* Cnstr ::= solved *) | Eqn of Dec Ctx * Exp * Exp (* | G|-(U1 == U2) *) | FgnCnstr of csid * FgnCnstr (* | (foreign) *) and Status = (* Status of a constant: *) Normal (* inert *) | Constraint of csid * (Dec Ctx * Spine * int -> Exp option) (* acts as constraint *) | Foreign of csid * (Spine -> Exp) (* is converted to foreign *) and FgnUnify = (* Result of foreign unify *) Succeed of FgnUnifyResidual list (* succeed with a list of residual operations *) | Fail and FgnUnifyResidual = Assign of Dec Ctx * Exp * Exp * Sub (* perform the assignment G |- X = U [ss] *) | Delay of Exp * Cnstr ref (* delay cnstr, associating it with all the rigid EVars in U *) (* Global signature *) and ConDec = (* Constant declaration *) ConDec of string * mid option * int * Status (* a : K : kind or *) * Exp * Uni (* c : A : type *) | ConDef of string * mid option * int (* a = A : K : kind or *) * Exp * Exp * Uni (* d = M : A : type *) * Ancestor (* Ancestor info for d or a *) | AbbrevDef of string * mid option * int (* a = A : K : kind or *) * Exp * Exp * Uni (* d = M : A : type *) | BlockDec of string * mid option (* %block l : SOME G1 PI G2 *) * Dec Ctx * Dec list | BlockDef of string * mid option * cid list (* %block l = (l1 | ... | ln) *) | SkoDec of string * mid option * int (* sa: K : kind or *) * Exp * Uni (* sc: A : type *) and Ancestor = (* Ancestor of d or a *) Anc of cid option * int * cid option (* head(expand(d)), height, head(expand[height](d)) *) (* NONE means expands to {x:A}B *) datatype StrDec = (* Structure declaration *) StrDec of string * mid option (* Form of constant declaration *) datatype ConDecForm = FromCS (* from constraint domain *) | Ordinary (* ordinary declaration *) | Clause (* %clause declaration *) (* Type abbreviations *) type dctx = Dec Ctx (* G = . | G,D *) type eclo = Exp * Sub (* Us = U[s] *) type bclo = Block * Sub (* Bs = B[s] *) type cnstr = Cnstr ref exception Error of string (* raised if out of space *) (* standard operations on foreign expressions *) structure FgnExpStd : sig (* convert to internal syntax *) structure ToInternal : FGN_OPN where type arg = unit where type result = Exp (* apply function to subterms *) structure Map : FGN_OPN where type arg = Exp -> Exp where type result = Exp (* apply function to subterms, for effect *) structure App : FGN_OPN where type arg = Exp -> unit where type result = unit (* test for equality *) structure EqualTo : FGN_OPN where type arg = Exp where type result = bool (* unify with another term *) structure UnifyWith : FGN_OPN where type arg = Dec Ctx * Exp where type result = FgnUnify (* fold a function over the subterms *) val fold : (csid * FgnExp) -> (Exp * 'a -> 'a) -> 'a -> 'a end (* standard operations on foreign constraints *) structure FgnCnstrStd : sig (* convert to internal syntax *) structure ToInternal : FGN_OPN where type arg = unit where type result = (Dec Ctx * Exp) list (* awake *) structure Awake : FGN_OPN where type arg = unit where type result = bool (* simplify *) structure Simplify : FGN_OPN where type arg = unit where type result = bool end val conDecName : ConDec -> string val conDecParent : ConDec -> mid option val conDecImp : ConDec -> int val conDecStatus : ConDec -> Status val conDecType : ConDec -> Exp val conDecBlock : ConDec -> dctx * Dec list val conDecUni : ConDec -> Uni val strDecName : StrDec -> string val strDecParent : StrDec -> mid option val sgnReset : unit -> unit val sgnSize : unit -> cid * mid val sgnAdd : ConDec -> cid val sgnLookup: cid -> ConDec val sgnApp : (cid -> unit) -> unit val sgnStructAdd : StrDec -> mid val sgnStructLookup : mid -> StrDec val constType : cid -> Exp (* type of c or d *) val constDef : cid -> Exp (* definition of d *) val constImp : cid -> int val constStatus : cid -> Status val constUni : cid -> Uni val constBlock : cid -> dctx * Dec list (* Declaration Contexts *) val ctxDec : dctx * int -> Dec (* get variable declaration *) val blockDec : dctx * Block * int -> Dec (* Explicit substitutions *) val id : Sub (* id *) val shift : Sub (* ^ *) val invShift : Sub (* ^-1 *) val bvarSub : int * Sub -> Front (* k[s] *) val frontSub : Front * Sub -> Front (* H[s] *) val decSub : Dec * Sub -> Dec (* x:V[s] *) val blockSub : Block * Sub -> Block (* B[s] *) val comp : Sub * Sub -> Sub (* s o s' *) val dot1 : Sub -> Sub (* 1 . (s o ^) *) val invDot1 : Sub -> Sub (* (^ o s) o ^-1) *) (* EVar related functions *) val newEVar : dctx * Exp -> Exp (* creates X:G|-V, [] *) val newAVar : unit -> Exp (* creates A (bare) *) val newTypeVar : dctx -> Exp (* creates X:G|-type, [] *) val newLVar : Sub * (cid * Sub) -> Block (* creates B:(l[^k],t) *) (* Definition related functions *) val headOpt : Exp -> Head option val ancestor : Exp -> Ancestor val defAncestor : cid -> Ancestor (* Type related functions *) (* Not expanding type definitions *) val targetHeadOpt : Exp -> Head option (* target type family or NONE *) val targetHead : Exp -> Head (* target type family *) (* Expanding type definitions *) val targetFamOpt : Exp -> cid option (* target type family or NONE *) val targetFam : Exp -> cid (* target type family *) (* Used in Flit *) val rename : cid * string -> unit end; (* signature INTSYN *) ---tokens--- '(*' Comment.Multiline ' ' Comment.Multiline 'I' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'y' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'x' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline ' \n' Text '(*' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline 'u' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline 'P' Comment.Multiline 'f' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'c' Comment.Multiline 'h' Comment.Multiline 'u' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n' Text '(*' Comment.Multiline ' ' Comment.Multiline 'M' Comment.Multiline 'o' Comment.Multiline 'd' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'R' Comment.Multiline 'o' Comment.Multiline 'b' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'V' Comment.Multiline 'i' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n' Text 'signature' Keyword.Reserved ' ' Text 'INTSYN' Name.Namespace ' ' Text '=' Punctuation '\n' Text 'sig' Keyword.Reserved '\n\n ' Text 'type' Keyword.Reserved ' ' Text 'cid' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'int' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'mid' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'int' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'u' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'csid' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'int' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'S' Comment.Multiline ' ' Comment.Multiline 'm' Comment.Multiline 'o' Comment.Multiline 'd' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'FgnExp' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'exn' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'exception' Keyword.Reserved ' ' Text 'UnexpectedFgnExp' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'FgnExp' Name.Class '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'o' Comment.Multiline 'l' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline '\n' Comment.Multiline '\t' Comment.Multiline '\t' Comment.Multiline '\t' Comment.Multiline '\t' Comment.Multiline '\t' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'type' Name.Class ' ' Text 'FgnCnstr' Name.Class ' ' Text '=' Name.Class ' ' Text 'exn' Name.Class ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'exception' Name.Class ' ' Text 'UnexpectedFgnCnstr' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'FgnCnstr' Name.Class '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'o' Comment.Multiline 'l' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'datatype' Name.Class ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name ' ' Text '=' Punctuation '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Null' Name '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Name ' ' Text 'Decl' Name ' ' Text 'of' Keyword.Reserved ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text "'a" Name.Decorator '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n \n ' Text 'val' Keyword.Reserved ' ' Text 'ctxPop' Name.Variable ' ' Text ':' Punctuation ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name ' ' Text '->' Punctuation ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'ctxLookup' Name.Variable ':' Punctuation ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '->' Punctuation ' ' Text "'a" Name.Decorator '\n ' Text 'val' Keyword.Reserved ' ' Text 'ctxLength' Name.Variable ':' Punctuation ' ' Text "'a" Name.Decorator ' ' Text 'Ctx' Name ' ' Text '->' Punctuation ' ' Text 'int' Name '\n\n ' Text 'datatype' Keyword.Reserved ' ' Text 'Depend' Keyword.Type ' ' Text '=' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline 'e' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'No' Name.Class ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'P' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Maybe' Name.Class ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'M' Comment.Multiline 'a' Comment.Multiline 'y' Comment.Multiline 'b' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Meta' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'M' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '' Text 'datatype' Keyword.Reserved ' ' Text 'Uni' Keyword.Type ' ' Text '=' Punctuation '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Kind' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'L' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'K' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Type' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'T' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '' Text 'datatype' Keyword.Reserved ' ' Text 'Exp' Keyword.Type ' ' Text '=' Punctuation '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Uni' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Uni' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'L' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Pi' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text '(' Punctuation 'Dec' Name ' ' Text '*' Name ' ' Text 'Depend' Name ')' Punctuation ' ' Text '*' Name ' ' Text 'Exp' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'P' Comment.Multiline 'i' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'D' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'P' Comment.Multiline ')' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline 'V' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Root' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Head' Name ' ' Text '*' Name ' ' Text 'Spine' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'H' Comment.Multiline ' ' Comment.Multiline '@' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Redex' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Spine' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline '@' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Lam' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Dec' Name ' ' Text '*' Name ' ' Text 'Exp' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'EVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text 'option' Name ' ' Text 'ref' Name ' ' Text '*' Name ' ' Text 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'Cnstr' Name ' ' Text 'ref' Name ')' Punctuation ' ' Text 'list' Name ' ' Text 'ref' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'X' Comment.Multiline '<' Comment.Multiline 'I' Comment.Multiline '>' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline '|' Comment.Multiline '-' Comment.Multiline 'V' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'EClo' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Sub' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'AVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text 'option' Name ' ' Text 'ref' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline '<' Comment.Multiline 'I' Comment.Multiline '>' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '|' Punctuation ' ' Text 'FgnExp' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'csid' Name ' ' Text '*' Name ' ' Text 'FgnExp' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '|' Punctuation ' ' Text 'NVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'int' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'p' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'v' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'i' Comment.Multiline 'a' Comment.Multiline 'b' Comment.Multiline 'l' Comment.Multiline 'e' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'u' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Head' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'H' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 'd' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'BVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'int' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'H' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Const' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'cid' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Proj' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Block' Name ' ' Text '*' Name ' ' Text 'int' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '#' Comment.Multiline 'k' Comment.Multiline '(' Comment.Multiline 'b' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Skonst' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'cid' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline '#' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Def' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'cid' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'i' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'NSDef' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'cid' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'n' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'i' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'FVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Sub' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'FgnConst' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'csid' Name ' ' Text '*' Name ' ' Text 'ConDec' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Spine' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'p' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Nil' Name.Class '\t\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'App' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Spine' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ';' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'SClo' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Spine' Name ' ' Text '*' Name ' ' Text 'Sub' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Sub' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'c' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Shift' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'int' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline '^' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Dot' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Front' Name ' ' Text '*' Name ' ' Text 'Sub' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 't' Comment.Multiline '.' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Front' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 'r' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Idx' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'int' Name '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Exp' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Axp' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Block' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Block' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '_' Comment.Multiline 'x' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Undef' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '_' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Dec' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Dec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'Exp' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'x' Comment.Multiline ':' Comment.Multiline 'V' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'BDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'cid' Name ' ' Text '*' Name ' ' Text 'Sub' Name ')' Punctuation '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'v' Comment.Multiline ':' Comment.Multiline 'l' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'ADec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name '\t ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'v' Comment.Multiline '[' Comment.Multiline '^' Comment.Multiline '-' Comment.Multiline 'd' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'NDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text 'option' Name ' \n\n ' Text 'and' Keyword.Reserved ' ' Text 'Block' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 'c' Comment.Multiline 'k' Comment.Multiline 's' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Bidx' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'int' Name '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'v' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'LVar' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Block' Name ' ' Text 'option' Name ' ' Text 'ref' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'cid' Name ' ' Text '*' Name ' ' Text 'Sub' Name ')' Punctuation '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'L' Comment.Multiline '(' Comment.Multiline 'l' Comment.Multiline '[' Comment.Multiline '^' Comment.Multiline 'k' Comment.Multiline ']' Comment.Multiline ',' Comment.Multiline 't' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Inst' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text 'list' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline '1' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline '.' Comment.Multiline '.' Comment.Multiline '.' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'I' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'o' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'a' Comment.Multiline 'v' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'o' Comment.Multiline 'j' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'k' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'a' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'I' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'h' Comment.Multiline 'i' Comment.Multiline 'c' Comment.Multiline 'h' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'o' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'm' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline 's' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '\n' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'I' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'g' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'o' Comment.Multiline 'w' Comment.Multiline 'e' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'n' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'h' Comment.Multiline 'a' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline '\n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'y' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline '-' Comment.Multiline '-' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n\n' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline 'C' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 'c' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline '*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'b' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Cnstr' Keyword.Type ' ' Text '=' Punctuation '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Solved' Name.Class ' \t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ':' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'o' Comment.Multiline 'l' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Eqn' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline '|' Comment.Multiline '-' Comment.Multiline '(' Comment.Multiline 'U' Comment.Multiline '1' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline '2' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'FgnCnstr' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'csid' Name ' ' Text '*' Name ' ' Text 'FgnCnstr' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Status' Keyword.Type ' ' Text '=' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Normal' Name.Class ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Constraint' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'csid' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Spine' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name ' ' Text 'option' Name ')' Punctuation '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Foreign' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'csid' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'Spine' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name ')' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'FgnUnify' Keyword.Type ' ' Text '=' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'R' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'l' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Succeed' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'FgnUnifyResidual' Name ' ' Text 'list' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'c' Comment.Multiline 'c' Comment.Multiline 'e' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline 'u' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Fail' Name.Class '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'FgnUnifyResidual' Keyword.Type ' ' Text '=' Punctuation '\n ' Text 'Assign' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Sub' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline 'm' Comment.Multiline 'e' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline '-' Comment.Multiline ' ' Comment.Multiline 'X' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Delay' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Cnstr' Name ' ' Text 'ref' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'o' Comment.Multiline 'c' Comment.Multiline 'i' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'V' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 'b' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'ConDec' Keyword.Type ' ' Text '=' Punctuation '\t\t\t ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'ConDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '*' Name ' ' Text 'Status' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'K' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Uni' Name '\t ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'ConDef' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'K' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Uni' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'M' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Ancestor' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'AbbrevDef' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'K' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Uni' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'M' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'BlockDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline '%' Comment.Multiline 'b' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 'c' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 'O' Comment.Multiline 'M' Comment.Multiline 'E' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline '1' Comment.Multiline ' ' Comment.Multiline 'P' Comment.Multiline 'I' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline '2' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Dec' Name ' ' Text 'list' Name '\n ' Text '|' Punctuation ' ' Text 'BlockDef' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'cid' Name ' ' Text 'list' Name '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline '%' Comment.Multiline 'b' Comment.Multiline 'l' Comment.Multiline 'o' Comment.Multiline 'c' Comment.Multiline 'k' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'l' Comment.Multiline '1' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline '.' Comment.Multiline '.' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'l' Comment.Multiline 'n' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'SkoDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'a' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'K' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Uni' Name '\t ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'c' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline ':' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'and' Keyword.Reserved ' ' Text 'Ancestor' Keyword.Type ' ' Text '=' Punctuation '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'Anc' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'cid' Name ' ' Text 'option' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '*' Name ' ' Text 'cid' Name ' ' Text 'option' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 'd' Comment.Multiline '(' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline '(' Comment.Multiline 'd' Comment.Multiline ')' Comment.Multiline ')' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'h' Comment.Multiline 't' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 'd' Comment.Multiline '(' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline '[' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'h' Comment.Multiline 't' Comment.Multiline ']' Comment.Multiline '(' Comment.Multiline 'd' Comment.Multiline ')' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'O' Comment.Multiline 'N' Comment.Multiline 'E' Comment.Multiline ' ' Comment.Multiline 'm' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline '{' Comment.Multiline 'x' Comment.Multiline ':' Comment.Multiline 'A' Comment.Multiline '}' Comment.Multiline 'B' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '' Text 'datatype' Keyword.Reserved ' ' Text 'StrDec' Keyword.Type ' ' Text '=' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'S' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'u' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'StrDec' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name ' ' Text '*' Name ' ' Text 'mid' Name ' ' Text 'option' Name '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'datatype' Keyword.Reserved ' ' Text 'ConDecForm' Keyword.Type ' ' Text '=' Punctuation '\n ' Text 'FromCS' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'r' Comment.Multiline 'o' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'o' Comment.Multiline 'm' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Ordinary' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'd' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '|' Punctuation ' ' Text 'Clause' Name.Class '\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline '%' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'u' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'T' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'b' Comment.Multiline 'b' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'v' Comment.Multiline 'i' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'dctx' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'Dec' Name ' ' Text 'Ctx' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline '|' Comment.Multiline ' ' Comment.Multiline 'G' Comment.Multiline ',' Comment.Multiline 'D' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'eclo' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'Exp' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' \t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'bclo' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'Block' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' \t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '=' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'type' Keyword.Reserved ' ' Text 'cnstr' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'Cnstr' Name ' ' Text 'ref' Name '\n\n ' Text '' Text 'exception' Keyword.Reserved ' ' Text 'Error' Name.Class ' ' Text 'of' Keyword.Reserved ' ' Text 'string' Name.Class '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'u' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'c' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'FgnExpStd' Name.Class ' ' Text ':' Name.Class ' ' Text 'sig' Name.Class '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'y' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'x' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'ToInternal' Name.Class ' ' Text ':' Name.Class ' ' Text 'FGN_OPN' Name.Class ' ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'arg' Name.Class ' ' Text '=' Name.Class ' ' Text 'unit' Name.Class '\n ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'result' Name.Class ' ' Text '=' Name.Class ' ' Text 'Exp' Name.Class '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'p' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'Map' Name.Class ' ' Text ':' Name.Class ' ' Text 'FGN_OPN' Name.Class ' ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'arg' Name.Class ' ' Text '=' Name.Class ' ' Text 'Exp' Name.Class ' ' Text '->' Name.Class ' ' Text 'Exp' Name.Class '\n\t\t\t ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'result' Name.Class ' ' Text '=' Name.Class ' ' Text 'Exp' Name.Class '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'p' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline 's' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'f' Comment.Multiline 'f' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'App' Name.Class ' ' Text ':' Name.Class ' ' Text 'FGN_OPN' Name.Class ' ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'arg' Name.Class ' ' Text '=' Name.Class ' ' Text 'Exp' Name.Class ' ' Text '->' Name.Class ' ' Text 'unit' Name.Class '\n\t\t\t ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'result' Name.Class ' ' Text '=' Name.Class ' ' Text 'unit' Name.Class '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'q' Comment.Multiline 'u' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'EqualTo' Name.Class ' ' Text ':' Name.Class ' ' Text 'FGN_OPN' Name.Class ' ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'arg' Name.Class ' ' Text '=' Name.Class ' ' Text 'Exp' Name.Class '\n ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'result' Name.Class ' ' Text '=' Name.Class ' ' Text 'bool' Name.Class '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'w' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'o' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Name.Class ' ' Text 'UnifyWith' Name.Class ' ' Text ':' Name.Class ' ' Text 'FGN_OPN' Name.Class ' ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'arg' Name.Class ' ' Text '=' Name.Class ' ' Text 'Dec' Name.Class ' ' Text 'Ctx' Name.Class ' ' Text '*' Name.Class ' ' Text 'Exp' Name.Class '\n ' Text 'where' Name.Class ' ' Text 'type' Name.Class ' ' Text 'result' Name.Class ' ' Text '=' Name.Class ' ' Text 'FgnUnify' Name.Class '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'l' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'h' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'm' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Name.Class ' ' Text 'fold' Name.Class ' ' Text ':' Name.Class ' ' Text '(' Punctuation 'csid' Name ' ' Text '*' Name ' ' Text 'FgnExp' Name ')' Punctuation ' ' Text '->' Punctuation ' ' Text '(' Punctuation 'Exp' Name ' ' Text '*' Name ' ' Text "'a" Name.Decorator ' ' Text '->' Punctuation ' ' Text "'a" Name.Decorator ')' Punctuation ' ' Text '->' Punctuation ' ' Text "'a" Name.Decorator ' ' Text '->' Punctuation ' ' Text "'a" Name.Decorator '\n ' Text 'end' Keyword.Reserved '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Keyword.Reserved ' ' Text 'FgnCnstrStd' Name.Namespace ' ' Text ':' Punctuation ' ' Text 'sig' Keyword.Reserved '\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 'v' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'r' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 'l' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'y' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'x' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'structure' Keyword.Reserved ' ' Text 'ToInternal' Name.Namespace ' ' Text ':' Punctuation ' ' Text 'FGN_OPN' Name ' ' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'arg' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'unit' Name '\n ' Text '' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'result' Keyword.Type ' ' Text '=' Punctuation ' ' Text '(' Punctuation 'Dec' Name ' ' Text 'Ctx' Name ' ' Text '*' Name ' ' Text 'Exp' Name ')' Punctuation ' ' Text 'list' Name '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'a' Comment.Multiline 'w' Comment.Multiline 'a' Comment.Multiline 'k' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'structure' Keyword.Reserved ' ' Text 'Awake' Name.Namespace ' ' Text ':' Punctuation ' ' Text 'FGN_OPN' Name ' ' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'arg' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'unit' Name '\n ' Text '' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'result' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'bool' Name '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'm' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'f' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text '' Text 'structure' Keyword.Reserved ' ' Text 'Simplify' Name.Namespace ' ' Text ':' Punctuation ' ' Text 'FGN_OPN' Name ' ' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'arg' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'unit' Name '\n ' Text '' Text 'where' Keyword.Reserved ' ' Text 'type' Keyword.Reserved ' ' Text 'result' Keyword.Type ' ' Text '=' Punctuation ' ' Text 'bool' Name '\n ' Text '' Text 'end' Keyword.Reserved '\n \n ' Text 'val' Keyword.Reserved ' ' Text 'conDecName' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'string' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecParent' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'mid' Name ' ' Text 'option' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecImp' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'int' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecStatus' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'Status' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecType' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecBlock' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'dctx' Name ' ' Text '*' Name ' ' Text 'Dec' Name ' ' Text 'list' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'conDecUni' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'Uni' Name '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'strDecName' Name.Variable ' ' Text ':' Punctuation ' ' Text 'StrDec' Name ' ' Text '->' Punctuation ' ' Text 'string' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'strDecParent' Name.Variable ' ' Text ':' Punctuation ' ' Text 'StrDec' Name ' ' Text '->' Punctuation ' ' Text 'mid' Name ' ' Text 'option' Name '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnReset' Name.Variable ' ' Text ':' Punctuation ' ' Text 'unit' Name ' ' Text '->' Punctuation ' ' Text 'unit' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnSize' Name.Variable ' ' Text ':' Punctuation ' ' Text 'unit' Name ' ' Text '->' Punctuation ' ' Text 'cid' Name ' ' Text '*' Name ' ' Text 'mid' Name '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnAdd' Name.Variable ' ' Text ':' Punctuation ' ' Text 'ConDec' Name ' ' Text '->' Punctuation ' ' Text 'cid' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnLookup' Name.Variable ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'ConDec' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnApp' Name.Variable ' ' Text ':' Punctuation ' ' Text '(' Punctuation 'cid' Name ' ' Text '->' Punctuation ' ' Text 'unit' Name ')' Punctuation ' ' Text '->' Punctuation ' ' Text 'unit' Name '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnStructAdd' Name.Variable ' ' Text ':' Punctuation ' ' Text 'StrDec' Name ' ' Text '->' Punctuation ' ' Text 'mid' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'sgnStructLookup' Name.Variable ' ' Text ':' Punctuation ' ' Text 'mid' Name ' ' Text '->' Punctuation ' ' Text 'StrDec' Name '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'constType' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'constDef' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'f' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'constImp' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'int' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'constStatus' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'Status' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'constUni' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'Uni' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'constBlock' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'dctx' Name ' ' Text '*' Name ' ' Text 'Dec' Name ' ' Text 'list' Name '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'C' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 't' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'ctxDec' Name.Variable ' ' Text ':' Punctuation ' ' Text 'dctx' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '->' Punctuation ' ' Text 'Dec' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'v' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'i' Comment.Multiline 'a' Comment.Multiline 'b' Comment.Multiline 'l' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'c' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'blockDec' Name.Variable ' ' Text ':' Punctuation ' ' Text 'dctx' Name ' ' Text '*' Name ' ' Text 'Block' Name ' ' Text '*' Name ' ' Text 'int' Name ' ' Text '->' Punctuation ' ' Text 'Dec' Name ' \n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 'c' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'u' Comment.Multiline 'b' Comment.Multiline 's' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'id' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'shift' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name '\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline '^' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'invShift' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline '^' Comment.Multiline '-' Comment.Multiline '1' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'bvarSub' Name.Variable ' ' Text ':' Punctuation ' ' Text 'int' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Front' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'k' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'frontSub' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Front' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Front' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'H' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'decSub' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Dec' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Dec' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'x' Comment.Multiline ':' Comment.Multiline 'V' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'blockSub' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Block' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Block' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline '[' Comment.Multiline 's' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'comp' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name ' ' Text '*' Name ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Sub' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline "'" Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'dot1' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Sub' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline '1' Comment.Multiline ' ' Comment.Multiline '.' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline '^' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'invDot1' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name ' ' Text '->' Punctuation ' ' Text 'Sub' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline '^' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline ' ' Comment.Multiline '^' Comment.Multiline '-' Comment.Multiline '1' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'V' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text 'val' Keyword.Reserved ' ' Text 'newEVar' Name.Variable ' ' Text ':' Punctuation ' ' Text 'dctx' Name ' ' Text '*' Name ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'X' Comment.Multiline ':' Comment.Multiline 'G' Comment.Multiline '|' Comment.Multiline '-' Comment.Multiline 'V' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline '[' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline ' \n ' Text 'val' Keyword.Reserved ' ' Text 'newAVar' Name.Variable ' ' Text ':' Punctuation ' ' Text 'unit' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\t ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'A' Comment.Multiline ' ' Comment.Multiline '(' Comment.Multiline 'b' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline ' \n ' Text 'val' Keyword.Reserved ' ' Text 'newTypeVar' Name.Variable ' ' Text ':' Punctuation ' ' Text 'dctx' Name ' ' Text '->' Punctuation ' ' Text 'Exp' Name '\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'X' Comment.Multiline ':' Comment.Multiline 'G' Comment.Multiline '|' Comment.Multiline '-' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ',' Comment.Multiline ' ' Comment.Multiline '[' Comment.Multiline ']' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'newLVar' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Sub' Name ' ' Text '*' Name ' ' Text '(' Punctuation 'cid' Name ' ' Text '*' Name ' ' Text 'Sub' Name ')' Punctuation ' ' Text '->' Punctuation ' ' Text 'Block' Name '\t\n\t\t\t\t\t' Text '(*' Comment.Multiline ' ' Comment.Multiline 'c' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline 'B' Comment.Multiline ':' Comment.Multiline '(' Comment.Multiline 'l' Comment.Multiline '[' Comment.Multiline '^' Comment.Multiline 'k' Comment.Multiline ']' Comment.Multiline ',' Comment.Multiline 't' Comment.Multiline ')' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline ' \n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'D' Comment.Multiline 'e' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'headOpt' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'Head' Name ' ' Text 'option' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'ancestor' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'Ancestor' Name '\n ' Text 'val' Keyword.Reserved ' ' Text 'defAncestor' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '->' Punctuation ' ' Text 'Ancestor' Name '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'T' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline 'l' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'u' Comment.Multiline 'n' Comment.Multiline 'c' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'o' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 'e' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'targetHeadOpt' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'Head' Name ' ' Text 'option' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'a' Comment.Multiline 'm' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'O' Comment.Multiline 'N' Comment.Multiline 'E' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'targetHead' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'Head' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'a' Comment.Multiline 'm' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'E' Comment.Multiline 'x' Comment.Multiline 'p' Comment.Multiline 'a' Comment.Multiline 'n' Comment.Multiline 'd' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'g' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'd' Comment.Multiline 'e' Comment.Multiline 'f' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline 'i' Comment.Multiline 'o' Comment.Multiline 'n' Comment.Multiline 's' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'targetFamOpt' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'cid' Name ' ' Text 'option' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'a' Comment.Multiline 'm' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline 'o' Comment.Multiline 'r' Comment.Multiline ' ' Comment.Multiline 'N' Comment.Multiline 'O' Comment.Multiline 'N' Comment.Multiline 'E' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'targetFam' Name.Variable ' ' Text ':' Punctuation ' ' Text 'Exp' Name ' ' Text '->' Punctuation ' ' Text 'cid' Name ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'a' Comment.Multiline 'r' Comment.Multiline 'g' Comment.Multiline 'e' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline 't' Comment.Multiline 'y' Comment.Multiline 'p' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'f' Comment.Multiline 'a' Comment.Multiline 'm' Comment.Multiline 'i' Comment.Multiline 'l' Comment.Multiline 'y' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n\n ' Text '(*' Comment.Multiline ' ' Comment.Multiline 'U' Comment.Multiline 's' Comment.Multiline 'e' Comment.Multiline 'd' Comment.Multiline ' ' Comment.Multiline 'i' Comment.Multiline 'n' Comment.Multiline ' ' Comment.Multiline 'F' Comment.Multiline 'l' Comment.Multiline 'i' Comment.Multiline 't' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n ' Text 'val' Keyword.Reserved ' ' Text 'rename' Name.Variable ' ' Text ':' Punctuation ' ' Text 'cid' Name ' ' Text '*' Name ' ' Text 'string' Name ' ' Text '->' Punctuation ' ' Text 'unit' Name '\n\n' Text 'end' Keyword.Reserved ';' Punctuation ' ' Text '(*' Comment.Multiline ' ' Comment.Multiline 's' Comment.Multiline 'i' Comment.Multiline 'g' Comment.Multiline 'n' Comment.Multiline 'a' Comment.Multiline 't' Comment.Multiline 'u' Comment.Multiline 'r' Comment.Multiline 'e' Comment.Multiline ' ' Comment.Multiline 'I' Comment.Multiline 'N' Comment.Multiline 'T' Comment.Multiline 'S' Comment.Multiline 'Y' Comment.Multiline 'N' Comment.Multiline ' ' Comment.Multiline '*)' Comment.Multiline '\n' Text