From fdda93580b290cf2b4fc245c070687d7025cdb27 Mon Sep 17 00:00:00 2001 From: Nikolai Kudasov Date: Wed, 12 Jul 2023 03:13:52 +0300 Subject: [PATCH] Add #define-assumption command --- rzk/src/Language/Rzk/Syntax.cf | 6 + rzk/src/Language/Rzk/Syntax/Abs.hs | 8 + rzk/src/Language/Rzk/Syntax/Doc.txt | 28 +- rzk/src/Language/Rzk/Syntax/Layout.hs | 12 +- rzk/src/Language/Rzk/Syntax/Lex.hs | 196 +- rzk/src/Language/Rzk/Syntax/Lex.x | 78 +- rzk/src/Language/Rzk/Syntax/Par.hs | 473 +- rzk/src/Language/Rzk/Syntax/Par.info | 8686 ++++++++++++----------- rzk/src/Language/Rzk/Syntax/Par.y | 166 +- rzk/src/Language/Rzk/Syntax/Print.hs | 1 + rzk/src/Language/Rzk/Syntax/Skel.hs | 1 + rzk/src/Language/Rzk/VSCode/Tokenize.hs | 4 + rzk/src/Rzk/TypeCheck.hs | 63 +- 13 files changed, 5046 insertions(+), 4676 deletions(-) diff --git a/rzk/src/Language/Rzk/Syntax.cf b/rzk/src/Language/Rzk/Syntax.cf index cd98fdd1a..a5db48217 100644 --- a/rzk/src/Language/Rzk/Syntax.cf +++ b/rzk/src/Language/Rzk/Syntax.cf @@ -31,6 +31,12 @@ CommandPostulate. Command ::= "#postulate" VarIdent DeclUsedVars [Param] commandPostulateNoParams. Command ::= "#postulate" VarIdent DeclUsedVars ":" Term ; define commandPostulateNoParams x vars ty = CommandPostulate x vars [] ty ; +CommandDefineAssume. Command ::= "#define-assumption" [VarIdent] ":" Term ; +commandDefineVariable. Command ::= "#define-variable" VarIdent ":" Term ; +define commandDefineVariable name term = CommandDefineAssume [name] term ; +commandDefineVariables. Command ::= "#define-variables" [VarIdent] ":" Term ; +define commandDefineVariables names term = CommandDefineAssume names term ; + CommandAssume. Command ::= "#assume" [VarIdent] ":" Term ; commandVariable. Command ::= "#variable" VarIdent ":" Term ; define commandVariable name term = CommandAssume [name] term ; diff --git a/rzk/src/Language/Rzk/Syntax/Abs.hs b/rzk/src/Language/Rzk/Syntax/Abs.hs index 2770eca40..bb1736151 100644 --- a/rzk/src/Language/Rzk/Syntax/Abs.hs +++ b/rzk/src/Language/Rzk/Syntax/Abs.hs @@ -52,6 +52,7 @@ data Command' a | CommandComputeWHNF a (Term' a) | CommandComputeNF a (Term' a) | CommandPostulate a (VarIdent' a) (DeclUsedVars' a) [Param' a] (Term' a) + | CommandDefineAssume a [VarIdent' a] (Term' a) | CommandAssume a [VarIdent' a] (Term' a) | CommandSection a (SectionName' a) [Command' a] (SectionName' a) | CommandDefine a (VarIdent' a) (DeclUsedVars' a) [Param' a] (Term' a) (Term' a) @@ -156,6 +157,12 @@ data Term' a commandPostulateNoParams :: a -> VarIdent' a -> DeclUsedVars' a -> Term' a -> Command' a commandPostulateNoParams = \ _a x vars ty -> CommandPostulate _a x vars [] ty +commandDefineVariable :: a -> VarIdent' a -> Term' a -> Command' a +commandDefineVariable = \ _a name term -> CommandDefineAssume _a [name] term + +commandDefineVariables :: a -> [VarIdent' a] -> Term' a -> Command' a +commandDefineVariables = \ _a names term -> CommandDefineAssume _a names term + commandVariable :: a -> VarIdent' a -> Term' a -> Command' a commandVariable = \ _a name term -> CommandAssume _a [name] term @@ -233,6 +240,7 @@ instance HasPosition Command where CommandComputeWHNF p _ -> p CommandComputeNF p _ -> p CommandPostulate p _ _ _ _ -> p + CommandDefineAssume p _ _ -> p CommandAssume p _ _ -> p CommandSection p _ _ _ -> p CommandDefine p _ _ _ _ _ -> p diff --git a/rzk/src/Language/Rzk/Syntax/Doc.txt b/rzk/src/Language/Rzk/Syntax/Doc.txt index 938e37dc3..61ae64a66 100644 --- a/rzk/src/Language/Rzk/Syntax/Doc.txt +++ b/rzk/src/Language/Rzk/Syntax/Doc.txt @@ -42,18 +42,19 @@ The symbols used in Syntax are the following: | #lang | ; | rzk-1 | #set-option | = | #unset-option | #check | : | #compute | #compute-whnf | #compute-nf | #postulate - | #assume | #variable | #variables | #section - | #end | #define | := | #def - | ( | ) | , | | - | { | } | ↦ | 1 - | *₁ | 2 | 0₂ | 1₂ - | × | ⊤ | ⊥ | ≡ - | ≤ | ∧ | ∨ | → - | =_{ | [ | ] | < - | > | \ | refl_{ | * - | *_1 | 0_2 | 1_2 | === - | <= | /\ | \/ | -> - | |-> | ∑ | | + | #define-assumption | #define-variable | #define-variables | #assume + | #variable | #variables | #section | #end + | #define | := | #def | ( + | ) | , | | | { + | } | ↦ | 1 | *₁ + | 2 | 0₂ | 1₂ | × + | ⊤ | ⊥ | ≡ | ≤ + | ∧ | ∨ | → | =_{ + | [ | ] | < | > + | \ | refl_{ | * | *_1 + | 0_2 | 1_2 | === | <= + | /\ | \/ | -> | |-> + | ∑ | | | ===Comments=== Single-line comments begin with --.Multiple-line comments are enclosed with {- and -}. @@ -79,6 +80,9 @@ All other symbols are terminals. | | **|** | ``#compute-nf`` //Term// | | **|** | ``#postulate`` //VarIdent// //DeclUsedVars// //[Param]// ``:`` //Term// | | **|** | ``#postulate`` //VarIdent// //DeclUsedVars// ``:`` //Term// + | | **|** | ``#define-assumption`` //[VarIdent]// ``:`` //Term// + | | **|** | ``#define-variable`` //VarIdent// ``:`` //Term// + | | **|** | ``#define-variables`` //[VarIdent]// ``:`` //Term// | | **|** | ``#assume`` //[VarIdent]// ``:`` //Term// | | **|** | ``#variable`` //VarIdent// ``:`` //Term// | | **|** | ``#variables`` //[VarIdent]// ``:`` //Term// diff --git a/rzk/src/Language/Rzk/Syntax/Layout.hs b/rzk/src/Language/Rzk/Syntax/Layout.hs index 535c8ed70..8c2ea1eaf 100644 --- a/rzk/src/Language/Rzk/Syntax/Layout.hs +++ b/rzk/src/Language/Rzk/Syntax/Layout.hs @@ -37,16 +37,16 @@ layoutStopWords = [] layoutOpen, layoutClose, layoutSep :: [TokSymbol] layoutOpen = List.nub $ mapMaybe (delimOpen . snd) layoutWords layoutClose = List.nub $ mapMaybe (delimClose . snd) layoutWords -layoutSep = List.nub $ TokSymbol ";" 32 : map (delimSep . snd) layoutWords +layoutSep = List.nub $ TokSymbol ";" 35 : map (delimSep . snd) layoutWords parenOpen, parenClose :: [TokSymbol] parenOpen = - [ TokSymbol "(" 16 - , TokSymbol "[" 46 + [ TokSymbol "(" 19 + , TokSymbol "[" 49 ] parenClose = - [ TokSymbol ")" 17 - , TokSymbol "]" 49 + [ TokSymbol ")" 20 + , TokSymbol "]" 52 ] -- | Report an error during layout resolution. @@ -74,7 +74,7 @@ resolveLayout topLayout = res Nothing [if topLayout then Implicit topDelim Definitive 1 else Explicit] where topDelim :: LayoutDelimiters - topDelim = LayoutDelimiters (TokSymbol ";" 32) Nothing Nothing + topDelim = LayoutDelimiters (TokSymbol ";" 35) Nothing Nothing res :: Maybe Token -- ^ The previous token, if any. -> [Block] -- ^ A stack of layout blocks. diff --git a/rzk/src/Language/Rzk/Syntax/Lex.hs b/rzk/src/Language/Rzk/Syntax/Lex.hs index ebf16f985..e22c6dbf6 100644 --- a/rzk/src/Language/Rzk/Syntax/Lex.hs +++ b/rzk/src/Language/Rzk/Syntax/Lex.hs @@ -35,21 +35,21 @@ alex_tab_size :: Int alex_tab_size = 8 alex_base :: AlexAddr alex_base = AlexA# - "\xf8\xff\xff\xff\x91\xff\xff\xff\x93\xff\xff\xff\xa3\xff\xff\xff\x96\xff\xff\xff\x97\xff\xff\xff\x98\xff\xff\xff\x9e\xff\xff\xff\x9d\xff\xff\xff\x9b\xff\xff\xff\x9c\xff\xff\xff\x9a\xff\xff\xff\xa5\xff\xff\xff\xb1\xff\xff\xff\x9f\xff\xff\xff\xaf\xff\xff\xff\xb4\xff\xff\xff\xa4\xff\xff\xff\xae\xff\xff\xff\xbb\xff\xff\xff\xbc\xff\xff\xff\xb3\xff\xff\xff\xb8\xff\xff\xff\xc2\xff\xff\xff\xbd\xff\xff\xff\xc5\xff\xff\xff\xc8\xff\xff\xff\xcb\xff\xff\xff\xc4\xff\xff\xff\xc6\xff\xff\xff\x03\x00\x00\x00\xc3\xff\xff\xff\xca\xff\xff\xff\xcc\xff\xff\xff\xef\x00\x00\x00\xe6\x01\x00\x00\xdd\x02\x00\x00\xd4\x03\x00\x00\x00\x00\x00\x00\xcb\x04\x00\x00\xc2\x05\x00\x00\xb9\x06\x00\x00\xb0\x07\x00\x00\xa7\x08\x00\x00\x0e\x00\x00\x00\x37\x00\x00\x00\x9e\x09\x00\x00\x95\x0a\x00\x00\x8c\x0b\x00\x00\x83\x0c\x00\x00\x7a\x0d\x00\x00\x71\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x0e\x00\x00\x23\x0f\x00\x00\x63\x0f\x00\x00\xe3\x0f\x00\x00\x63\x10\x00\x00\x63\x11\x00\x00\xb6\x11\x00\x00\x89\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x12\x00\x00\x25\x11\x00\x00\xf7\x11\x00\x00\x7a\x13\x00\x00\xfa\x13\x00\x00\xfa\x14\x00\x00\x70\x15\x00\x00\xcf\xff\xff\xff\x10\x00\x00\x00\x00\x00\x00\x00\x66\x16\x00\x00\x66\x17\x00\x00\x67\x17\x00\x00\xe7\x17\x00\x00\xdb\x00\x00\x00\xbb\x14\x00\x00\x28\x18\x00\x00\x99\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\x19\x00\x00\x90\x1a\x00\x00\x91\x1a\x00\x00\x11\x1b\x00\x00\x08\x1c\x00\x00\xff\x1c\x00\x00\xc7\xff\xff\xff\xc9\xff\xff\xff\xac\xff\xff\xff\xd0\xff\xff\xff\xa1\xff\xff\xff\x3f\x1d\x00\x00\x80\x1d\x00\x00\xf1\x1d\x00\x00\x00\x00\x00\x00\xcd\xff\xff\xff\xe8\x1e\x00\x00\xd4\xff\xff\xff\xdd\xff\xff\xff\xe7\xff\xff\xff\xe8\xff\xff\xff\xf3\xff\xff\xff\xfb\xff\xff\xff\xe6\xff\xff\xff\xeb\xff\xff\xff\xe9\xff\xff\xff\xef\xff\xff\xff\xf1\xff\xff\xff\xf4\xff\xff\xff\x38\x00\x00\x00\xf0\xff\xff\xff\x04\x00\x00\x00\xf5\xff\xff\xff\xfe\xff\xff\xff\x09\x00\x00\x00\x01\x00\x00\x00\xdf\x1f\x00\x00\x34\x00\x00\x00\x49\x00\x00\x00\x8c\x00\x00\x00\x92\x00\x00\x00\x11\x00\x00\x00\xcf\x00\x00\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x00\x00\x00\x60\x00\x00\x00\x6c\x00\x00\x00\x75\x00\x00\x00\x86\x00\x00\x00\x83\x00\x00\x00\x88\x00\x00\x00\xcd\x00\x00\x00\x9b\x00\x00\x00"# + "\xf8\xff\xff\xff\x97\xff\xff\xff\x94\xff\xff\xff\x95\xff\xff\xff\x93\xff\xff\xff\x9e\xff\xff\xff\xaa\xff\xff\xff\x98\xff\xff\xff\xd0\xff\xff\xff\x8d\xff\xff\xff\x8e\xff\xff\xff\x90\xff\xff\xff\x84\xff\xff\xff\x78\xff\xff\xff\x72\xff\xff\xff\x71\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x9c\xff\xff\xff\xe8\xff\xff\xff\xf0\xff\xff\xff\xe0\xff\xff\xff\xef\x00\x00\x00\xb1\xff\xff\xff\xbf\xff\xff\xff\x01\x00\x00\x00\xcc\xff\xff\xff\xbc\xff\xff\xff\xbd\xff\xff\xff\xc3\xff\xff\xff\xc4\xff\xff\xff\xc9\xff\xff\xff\xcd\xff\xff\xff\xd2\xff\xff\xff\xd7\xff\xff\xff\xd8\xff\xff\xff\xdc\xff\xff\xff\xdb\xff\xff\xff\xe1\xff\xff\xff\xe2\xff\xff\xff\xde\xff\xff\xff\xd4\xff\xff\xff\xe6\x01\x00\x00\xcb\xff\xff\xff\x00\x00\x00\x00\x57\x02\x00\x00\x98\x02\x00\x00\xd8\x02\x00\x00\xb2\xff\xff\xff\xd3\xff\xff\xff\xb9\xff\xff\xff\xce\xff\xff\xff\xd6\xff\xff\xff\xcf\x03\x00\x00\xc6\x04\x00\x00\x46\x05\x00\x00\xc6\x05\x00\x00\xc6\x06\x00\x00\x3d\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x07\x00\x00\xef\x07\x00\x00\x2f\x08\x00\x00\xdb\x00\x00\x00\xaf\x08\x00\x00\x2f\x09\x00\x00\x2f\x0a\x00\x00\xa5\x0a\x00\x00\x00\x00\x00\x00\x2d\x00\x00\x00\xf1\xff\xff\xff\x9b\x0b\x00\x00\x9b\x0c\x00\x00\x9c\x0c\x00\x00\x1c\x0d\x00\x00\xe6\x0a\x00\x00\x5d\x0d\x00\x00\xce\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x0e\x00\x00\x74\x0f\x00\x00\x74\x10\x00\x00\x75\x10\x00\x00\xf5\x10\x00\x00\x0f\x0e\x00\x00\xe3\x0e\x00\x00\x66\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x12\x00\x00\x54\x13\x00\x00\x4b\x14\x00\x00\x42\x15\x00\x00\x39\x16\x00\x00\x30\x17\x00\x00\x57\x00\x00\x00\x21\x00\x00\x00\x27\x18\x00\x00\x1e\x19\x00\x00\x15\x1a\x00\x00\x0c\x1b\x00\x00\x03\x1c\x00\x00\x00\x00\x00\x00\xfa\x1c\x00\x00\xf1\x1d\x00\x00\xe8\x1e\x00\x00\xdf\x1f\x00\x00\xf7\xff\xff\xff\xf9\xff\xff\xff\xfb\xff\xff\xff\x39\x00\x00\x00\xfe\xff\xff\xff\xfa\xff\xff\xff\x97\x00\x00\x00\xfd\xff\xff\xff\x40\x00\x00\x00\xfc\xff\xff\xff\x0a\x00\x00\x00\xff\xff\xff\xff\x03\x00\x00\x00\x11\x00\x00\x00\x94\x00\x00\x00\x90\x00\x00\x00\x9e\x00\x00\x00\x9b\x00\x00\x00\x95\x00\x00\x00\xa1\x00\x00\x00\xa3\x00\x00\x00\x9c\x00\x00\x00\x96\x00\x00\x00\xa5\x00\x00\x00\xa2\x00\x00\x00\x9f\x00\x00\x00\xa0\x00\x00\x00\xa4\x00\x00\x00\xa7\x00\x00\x00\xa6\x00\x00\x00\x99\x00\x00\x00\x9d\x00\x00\x00\xa9\x00\x00\x00\xaf\x00\x00\x00\xaa\x00\x00\x00\xa8\x00\x00\x00\xb0\x00\x00\x00"# alex_table :: AlexAddr alex_table = AlexA# - "\x00\x00\x2d\x00\x2d\x00\x2e\x00\x2e\x00\x2d\x00\x02\x00\x03\x00\x1e\x00\x05\x00\x06\x00\x0f\x00\x09\x00\x07\x00\x0a\x00\x0c\x00\x0b\x00\x0d\x00\x0e\x00\x0f\x00\x26\x00\x11\x00\x12\x00\x13\x00\x2d\x00\xff\xff\x4d\x00\x6f\x00\x14\x00\x6a\x00\x15\x00\x16\x00\x26\x00\x26\x00\x29\x00\x18\x00\x26\x00\x4b\x00\xff\xff\x7d\x00\x5e\x00\x2a\x00\x28\x00\x19\x00\x26\x00\x1b\x00\x1c\x00\x20\x00\x73\x00\x70\x00\x2b\x00\x26\x00\x8e\x00\x27\x00\x26\x00\x58\x00\x1d\x00\x21\x00\x26\x00\x3d\x00\x8f\x00\x49\x00\x28\x00\x76\x00\x2d\x00\x2d\x00\x2d\x00\x2d\x00\x2d\x00\x28\x00\x28\x00\x26\x00\x26\x00\x28\x00\x6b\x00\x5f\x00\x26\x00\x6c\x00\x26\x00\x8d\x00\x82\x00\x1f\x00\x28\x00\x26\x00\x83\x00\x26\x00\x61\x00\x2d\x00\x8a\x00\x88\x00\x63\x00\x6d\x00\x04\x00\x70\x00\x6e\x00\x71\x00\x7c\x00\x1c\x00\x4a\x00\x74\x00\x76\x00\x75\x00\x72\x00\x17\x00\x78\x00\x77\x00\x2f\x00\x08\x00\x79\x00\x26\x00\x1a\x00\x7b\x00\x7a\x00\x10\x00\x26\x00\x2c\x00\x7f\x00\x26\x00\x7e\x00\x81\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x89\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x87\x00\x84\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x62\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0f\x00\x80\x00\xff\xff\x4d\x00\x26\x00\x69\x00\x28\x00\x28\x00\x4d\x00\x28\x00\x28\x00\x8b\x00\x28\x00\x28\x00\x28\x00\x28\x00\x26\x00\x01\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x28\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x00\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x25\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x33\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x25\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x32\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x68\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x5d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x60\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x28\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2d\x00\x2e\x00\x2e\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x32\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x28\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x38\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x3c\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3c\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x39\x00\x3b\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x38\x00\x3a\x00\x34\x00\x34\x00\x34\x00\x37\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3c\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x36\x00\x39\x00\x3b\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x35\x00\x38\x00\x3a\x00\x34\x00\x34\x00\x34\x00\x37\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x47\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x48\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x48\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x42\x00\x45\x00\x47\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x44\x00\x46\x00\x40\x00\x40\x00\x40\x00\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4e\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x52\x00\x4f\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x53\x00\x50\x00\x57\x00\x57\x00\x57\x00\x54\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x4e\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x55\x00\x4f\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x56\x00\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x5d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x60\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x8c\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x26\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x67\x00\x64\x00\x5b\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x85\x00\x65\x00\x5c\x00\x86\x00\x86\x00\x86\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# + "\x00\x00\x66\x00\x66\x00\x65\x00\x65\x00\x66\x00\x02\x00\x03\x00\x05\x00\x04\x00\x06\x00\x07\x00\x8e\x00\x6d\x00\x6b\x00\x6b\x00\x0b\x00\x6b\x00\x6b\x00\x6b\x00\x6b\x00\x6b\x00\x6b\x00\x6d\x00\x66\x00\xff\xff\x46\x00\x24\x00\x2a\x00\x15\x00\x6d\x00\x18\x00\x6d\x00\x6d\x00\x6a\x00\x6d\x00\x6d\x00\x48\x00\xff\xff\x16\x00\x35\x00\x69\x00\x6b\x00\x6b\x00\x6b\x00\x1b\x00\x1a\x00\x1c\x00\x1d\x00\x1f\x00\x68\x00\x6d\x00\x08\x00\x6c\x00\x6d\x00\x3b\x00\x1e\x00\x77\x00\x74\x00\x23\x00\x8d\x00\x92\x00\x6d\x00\x25\x00\x22\x00\x17\x00\x89\x00\x26\x00\x21\x00\x28\x00\x27\x00\x6d\x00\x82\x00\x6d\x00\x49\x00\x6b\x00\x01\x00\x09\x00\x56\x00\x7f\x00\x34\x00\x7e\x00\x89\x00\x6d\x00\x13\x00\x6d\x00\x6b\x00\x6b\x00\x6b\x00\x32\x00\x4a\x00\x0c\x00\x0e\x00\x30\x00\x96\x00\x6b\x00\x66\x00\x66\x00\x66\x00\x66\x00\x66\x00\x6d\x00\x20\x00\x73\x00\x72\x00\x23\x00\x64\x00\x6d\x00\x1f\x00\x79\x00\x76\x00\x7b\x00\x7a\x00\x7d\x00\x7c\x00\x67\x00\x14\x00\x6d\x00\x78\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x0d\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x0f\x00\x12\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x31\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\x6d\x00\xff\xff\x46\x00\x80\x00\x81\x00\x29\x00\x83\x00\x46\x00\x84\x00\x85\x00\x86\x00\x88\x00\x19\x00\x87\x00\x8b\x00\x8c\x00\x7a\x00\x6d\x00\x8a\x00\x8f\x00\xff\xff\x90\x00\xff\xff\xff\xff\x8e\x00\x75\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x91\x00\x94\x00\x93\x00\x00\x00\x95\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\xff\xff\x6d\x00\xff\xff\x46\x00\x00\x00\x46\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x0a\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x33\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x45\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x41\x00\x44\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x3d\x00\x40\x00\x43\x00\x3c\x00\x3c\x00\x3c\x00\x3f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4b\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x4e\x00\x4c\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x4f\x00\x4d\x00\x53\x00\x53\x00\x53\x00\x50\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x4b\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x51\x00\x4c\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x52\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x57\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5a\x00\x58\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5b\x00\x59\x00\x5f\x00\x5f\x00\x5f\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x57\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5a\x00\x58\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5b\x00\x59\x00\x5f\x00\x5f\x00\x5f\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x57\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x5d\x00\x58\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5e\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x6b\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x61\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\x66\x00\x65\x00\x65\x00\x66\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x66\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x6b\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x33\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x61\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x2b\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x60\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2c\x00\x2f\x00\x38\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x11\x00\x2e\x00\x37\x00\x10\x00\x10\x00\x10\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# alex_check :: AlexAddr alex_check = AlexA# - "\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x75\x00\x74\x00\x65\x00\x73\x00\x73\x00\x6d\x00\x6f\x00\x75\x00\x73\x00\x75\x00\x74\x00\x6c\x00\x61\x00\x74\x00\x65\x00\x61\x00\x72\x00\x69\x00\x20\x00\x21\x00\x22\x00\x23\x00\x61\x00\x65\x00\x62\x00\x6c\x00\x28\x00\x29\x00\x2a\x00\x61\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x6e\x00\x67\x00\x65\x00\x63\x00\x69\x00\x2d\x00\x6e\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x74\x00\x6f\x00\x6e\x00\x2d\x00\x6d\x00\x2d\x00\x92\x00\x74\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xa4\x00\xa5\x00\x73\x00\x6b\x00\x82\x00\x63\x00\x82\x00\x66\x00\x65\x00\x3e\x00\x82\x00\x65\x00\x68\x00\xa6\x00\x5b\x00\x5c\x00\x5d\x00\x86\x00\x20\x00\x88\x00\x89\x00\x8a\x00\x68\x00\x61\x00\x6e\x00\x63\x00\x64\x00\x65\x00\x70\x00\x6f\x00\x6f\x00\x74\x00\x2d\x00\x77\x00\x6c\x00\x73\x00\x65\x00\x72\x00\x70\x00\x6e\x00\x64\x00\x73\x00\x6e\x00\x75\x00\x76\x00\x3e\x00\x7b\x00\x7c\x00\x7d\x00\x2d\x00\x66\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x6e\x00\x69\x00\x0d\x00\x22\x00\x2f\x00\x80\x00\xa3\x00\xa1\x00\x27\x00\x97\x00\xa4\x00\x82\x00\x91\x00\x81\x00\x82\x00\x81\x00\x3d\x00\x70\x00\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xa7\x00\xa8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\x5b\x00\x5c\x00\x5d\x00\x72\x00\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x2d\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2d\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x0a\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x32\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00"# + "\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x6f\x00\x73\x00\x75\x00\x74\x00\x6c\x00\x61\x00\x74\x00\x3d\x00\x81\x00\x97\x00\x82\x00\x81\x00\x82\x00\xa1\x00\xa3\x00\x91\x00\xa4\x00\x2f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x80\x00\x2d\x00\x3e\x00\x6e\x00\x28\x00\x29\x00\x2a\x00\x64\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\xa7\x00\xa8\x00\x61\x00\x2d\x00\x73\x00\x73\x00\x6d\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x75\x00\x70\x00\x68\x00\x6e\x00\x65\x00\x61\x00\x66\x00\x63\x00\x64\x00\x65\x00\x76\x00\x68\x00\x77\x00\x63\x00\x65\x00\x73\x00\x6c\x00\x6b\x00\x6f\x00\x92\x00\x70\x00\x82\x00\x2d\x00\x73\x00\x82\x00\x75\x00\x76\x00\x5b\x00\x5c\x00\x5d\x00\xa4\x00\xa5\x00\x82\x00\x86\x00\x2d\x00\x88\x00\x89\x00\x8a\x00\x6d\x00\xa6\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x6e\x00\x2d\x00\x69\x00\x6f\x00\x6e\x00\x72\x00\x3e\x00\x6f\x00\x2d\x00\x74\x00\x65\x00\x74\x00\x6e\x00\x73\x00\x7b\x00\x7c\x00\x7d\x00\x65\x00\x20\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x63\x00\x67\x00\x0d\x00\x22\x00\x6e\x00\x61\x00\x65\x00\x6c\x00\x27\x00\x62\x00\x61\x00\x69\x00\x61\x00\x65\x00\x72\x00\x69\x00\x66\x00\x74\x00\x65\x00\x6e\x00\x75\x00\x20\x00\x73\x00\x22\x00\x23\x00\x6d\x00\x65\x00\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\x73\x00\x75\x00\x74\x00\xff\xff\x70\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\x5b\x00\x5c\x00\x5d\x00\x72\x00\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x32\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2d\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2d\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\x29\x00\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\x7c\x00\x7d\x00\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00"# alex_deflt :: AlexAddr alex_deflt = AlexA# - "\x59\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x59\x00\x59\x00\x59\x00\x59\x00\xff\xff\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\xff\xff\xff\xff\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x35\x00\x36\x00\x3d\x00\x35\x00\x36\x00\x3d\x00\xff\xff\xff\xff\x3d\x00\x3d\x00\x3d\x00\xff\xff\x41\x00\x42\x00\x49\x00\x41\x00\x42\x00\x49\x00\xff\xff\xff\xff\x49\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4d\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x55\x00\x56\x00\x4d\x00\x55\x00\x56\x00\xff\xff\x59\x00\x59\x00\xff\xff\xff\xff\x59\x00\x59\x00\x59\x00\x67\x00\x59\x00\x67\x00\x59\x00\x59\x00\x67\x00\x85\x00\x59\x00\x67\x00\x59\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x59\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x59\x00\x67\x00\x85\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x67\x00\x59\x00\xff\xff\xff\xff"# + "\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x2c\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x11\x00\x2c\x00\x3a\x00\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x2c\x00\x3a\x00\x11\x00\x2c\x00\x3a\x00\x3a\x00\x2c\x00\x3a\x00\x2c\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\xff\xff\x3a\x00\x3a\x00\xff\xff\x3d\x00\x3e\x00\x46\x00\x3d\x00\x3e\x00\x46\x00\xff\xff\xff\xff\xff\xff\x46\x00\x46\x00\xff\xff\xff\xff\xff\xff\x4a\x00\x4a\x00\xff\xff\xff\xff\x4a\x00\x51\x00\x52\x00\x4a\x00\x51\x00\x52\x00\xff\xff\x56\x00\x56\x00\x56\x00\xff\xff\xff\xff\x56\x00\x5d\x00\x5e\x00\x56\x00\x5d\x00\x5e\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\xff\xff\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\x3a\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# -alex_accept = listArray (0 :: Int, 143) +alex_accept = listArray (0 :: Int, 150) [ AlexAccNone , AlexAccNone , AlexAccNone @@ -58,6 +58,7 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 29 , AlexAccNone , AlexAccNone , AlexAccNone @@ -68,6 +69,13 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 28 + , AlexAcc 27 + , AlexAccNone + , AlexAcc 26 + , AlexAccNone + , AlexAccNone + , AlexAcc 25 , AlexAccNone , AlexAccNone , AlexAccNone @@ -80,28 +88,11 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAcc 28 , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAcc 27 - , AlexAcc 26 - , AlexAcc 25 , AlexAcc 24 , AlexAcc 23 - , AlexAcc 22 - , AlexAcc 21 - , AlexAcc 20 - , AlexAcc 19 - , AlexAcc 18 - , AlexAcc 17 - , AlexAccSkip - , AlexAccSkip - , AlexAcc 16 - , AlexAcc 15 - , AlexAcc 14 - , AlexAcc 13 - , AlexAcc 12 , AlexAccNone , AlexAccNone , AlexAccNone @@ -112,10 +103,13 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 22 + , AlexAcc 21 , AlexAccNone - , AlexAccSkip , AlexAccNone , AlexAccNone + , AlexAcc 20 + , AlexAcc 19 , AlexAccNone , AlexAccNone , AlexAccNone @@ -123,14 +117,14 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAccSkip , AlexAccNone , AlexAccNone - , AlexAcc 11 , AlexAccNone , AlexAccNone + , AlexAcc 18 , AlexAccNone , AlexAccNone + , AlexAccSkip , AlexAccNone , AlexAccNone , AlexAccNone @@ -138,13 +132,10 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAcc 10 - , AlexAcc 9 , AlexAccNone , AlexAccNone + , AlexAccSkip , AlexAccNone - , AlexAcc 8 - , AlexAcc 7 , AlexAccNone , AlexAccNone , AlexAccNone @@ -155,11 +146,29 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 17 + , AlexAcc 16 + , AlexAcc 15 + , AlexAcc 14 + , AlexAcc 13 + , AlexAccSkip + , AlexAccSkip + , AlexAcc 12 + , AlexAcc 11 + , AlexAcc 10 + , AlexAcc 9 + , AlexAcc 8 + , AlexAcc 7 , AlexAcc 6 , AlexAcc 5 + , AlexAcc 4 + , AlexAcc 3 + , AlexAcc 2 , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 1 + , AlexAccNone , AlexAccNone , AlexAccNone , AlexAccNone @@ -175,16 +184,15 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAcc 4 , AlexAccNone - , AlexAcc 3 , AlexAccNone - , AlexAcc 2 , AlexAccNone - , AlexAcc 1 , AlexAccNone , AlexAccNone , AlexAccNone + , AlexAcc 0 + , AlexAccNone + , AlexAccNone , AlexAccNone , AlexAccNone , AlexAccNone @@ -192,38 +200,38 @@ alex_accept = listArray (0 :: Int, 143) , AlexAccNone , AlexAccNone , AlexAccNone - , AlexAcc 0 , AlexAccNone ] -alex_actions = array (0 :: Int, 29) - [ (28,alex_action_3) - , (27,alex_action_4) +alex_actions = array (0 :: Int, 30) + [ (29,alex_action_3) + , (28,alex_action_3) + , (27,alex_action_3) , (26,alex_action_4) - , (25,alex_action_4) - , (24,alex_action_4) - , (23,alex_action_3) - , (22,alex_action_3) - , (21,alex_action_3) - , (20,alex_action_3) - , (19,alex_action_3) - , (18,alex_action_3) - , (17,alex_action_3) + , (25,alex_action_3) + , (24,alex_action_3) + , (23,alex_action_4) + , (22,alex_action_4) + , (21,alex_action_4) + , (20,alex_action_4) + , (19,alex_action_5) + , (18,alex_action_7) + , (17,alex_action_4) , (16,alex_action_4) , (15,alex_action_4) , (14,alex_action_4) , (13,alex_action_4) - , (12,alex_action_4) - , (11,alex_action_7) - , (10,alex_action_5) - , (9,alex_action_4) - , (8,alex_action_4) - , (7,alex_action_4) - , (6,alex_action_4) - , (5,alex_action_3) + , (12,alex_action_3) + , (11,alex_action_3) + , (10,alex_action_3) + , (9,alex_action_3) + , (8,alex_action_3) + , (7,alex_action_3) + , (6,alex_action_3) + , (5,alex_action_4) , (4,alex_action_4) - , (3,alex_action_3) - , (2,alex_action_3) + , (3,alex_action_4) + , (2,alex_action_4) , (1,alex_action_3) , (0,alex_action_3) ] @@ -333,43 +341,47 @@ eitherResIdent tv s = treeFind resWords -- | The keywords and symbols of the language organized as binary search tree. resWords :: BTree resWords = - b "BOT" 39 - (b "*\8321" 20 - (b "#postulate" 10 - (b "#compute-whnf" 5 + b ">" 41 + (b "*" 21 + (b "#end" 11 + (b "#def" 6 (b "#compute" 3 - (b "#check" 2 (b "#assume" 1 N N) N) (b "#compute-nf" 4 N N)) - (b "#end" 8 (b "#define" 7 (b "#def" 6 N N) N) (b "#lang" 9 N N))) - (b "#variables" 15 - (b "#unset-option" 13 - (b "#set-option" 12 (b "#section" 11 N N) N) - (b "#variable" 14 N N)) - (b "*" 18 (b ")" 17 (b "(" 16 N N) N) (b "*_1" 19 N N)))) - (b ":" 30 - (b "0\8322" 25 - (b "/\\" 23 (b "->" 22 (b "," 21 N N) N) (b "0_2" 24 N N)) - (b "1\8322" 28 (b "1_2" 27 (b "1" 26 N N) N) (b "2" 29 N N))) - (b "=" 35 - (b "<" 33 (b ";" 32 (b ":=" 31 N N) N) (b "<=" 34 N N)) - (b "=_{" 37 (b "===" 36 N N) (b ">" 38 N N))))) - (b "unit" 59 - (b "]" 49 - (b "U" 44 - (b "TOP" 42 (b "Sigma" 41 (b "CUBE" 40 N N) N) (b "TOPE" 43 N N)) - (b "\\" 47 (b "[" 46 (b "Unit" 45 N N) N) (b "\\/" 48 N N))) - (b "recOR" 54 - (b "idJ" 52 (b "first" 51 (b "as" 50 N N) N) (b "recBOT" 53 N N)) - (b "rzk-1" 57 - (b "refl_{" 56 (b "refl" 55 N N) N) (b "second" 58 N N)))) - (b "\8594" 69 - (b "}" 64 - (b "|" 62 (b "{" 61 (b "uses" 60 N N) N) (b "|->" 63 N N)) - (b "\960\8321" 67 - (b "\931" 66 (b "\215" 65 N N) N) (b "\960\8322" 68 N N))) - (b "\8801" 74 - (b "\8743" 72 - (b "\8721" 71 (b "\8614" 70 N N) N) (b "\8744" 73 N N)) - (b "\8868" 76 (b "\8804" 75 N N) (b "\8869" 77 N N))))) + (b "#check" 2 (b "#assume" 1 N N) N) + (b "#compute-whnf" 5 (b "#compute-nf" 4 N N) N)) + (b "#define-variable" 9 + (b "#define-assumption" 8 (b "#define" 7 N N) N) + (b "#define-variables" 10 N N))) + (b "#unset-option" 16 + (b "#section" 14 + (b "#postulate" 13 (b "#lang" 12 N N) N) (b "#set-option" 15 N N)) + (b "(" 19 + (b "#variables" 18 (b "#variable" 17 N N) N) (b ")" 20 N N)))) + (b "1\8322" 31 + (b "/\\" 26 + (b "," 24 (b "*\8321" 23 (b "*_1" 22 N N) N) (b "->" 25 N N)) + (b "1" 29 (b "0\8322" 28 (b "0_2" 27 N N) N) (b "1_2" 30 N N))) + (b "<" 36 + (b ":=" 34 (b ":" 33 (b "2" 32 N N) N) (b ";" 35 N N)) + (b "===" 39 (b "=" 38 (b "<=" 37 N N) N) (b "=_{" 40 N N))))) + (b "second" 61 + (b "\\/" 51 + (b "TOPE" 46 + (b "Sigma" 44 (b "CUBE" 43 (b "BOT" 42 N N) N) (b "TOP" 45 N N)) + (b "[" 49 (b "Unit" 48 (b "U" 47 N N) N) (b "\\" 50 N N))) + (b "recBOT" 56 + (b "first" 54 (b "as" 53 (b "]" 52 N N) N) (b "idJ" 55 N N)) + (b "refl_{" 59 + (b "refl" 58 (b "recOR" 57 N N) N) (b "rzk-1" 60 N N)))) + (b "\960\8322" 71 + (b "|->" 66 + (b "{" 64 (b "uses" 63 (b "unit" 62 N N) N) (b "|" 65 N N)) + (b "\931" 69 + (b "\215" 68 (b "}" 67 N N) N) (b "\960\8321" 70 N N))) + (b "\8744" 76 + (b "\8721" 74 + (b "\8614" 73 (b "\8594" 72 N N) N) (b "\8743" 75 N N)) + (b "\8868" 79 + (b "\8804" 78 (b "\8801" 77 N N) N) (b "\8869" 80 N N))))) where b s n = B bs (TS bs n) where diff --git a/rzk/src/Language/Rzk/Syntax/Lex.x b/rzk/src/Language/Rzk/Syntax/Lex.x index 3f9269636..b563924ed 100644 --- a/rzk/src/Language/Rzk/Syntax/Lex.x +++ b/rzk/src/Language/Rzk/Syntax/Lex.x @@ -28,7 +28,7 @@ $u = [. \n] -- universal: any character -- Symbols and non-identifier-like reserved words -@rsyms = \Σ | \π \₁ | \π \₂ | \# "lang" | \; | "rzk" \- "1" | \# "set" \- "option" | \= | \# "unset" \- "option" | \# "check" | \: | \# "compute" | \# "compute" \- "whnf" | \# "compute" \- "nf" | \# "postulate" | \# "assume" | \# "variable" | \# "variables" | \# "section" | \# "end" | \# "define" | \: \= | \# "def" | \( | \) | \, | \| | \{ | \} | \↦ | "1" | \* \₁ | "2" | "0" \₂ | "1" \₂ | \× | \⊤ | \⊥ | \≡ | \≤ | \∧ | \∨ | \→ | \= \_ \{ | \[ | \] | \< | \> | \\ | "refl" \_ \{ | \* | \* \_ "1" | "0" \_ "2" | "1" \_ "2" | \= \= \= | \< \= | \/ \\ | \\ \/ | \- \> | \| \- \> | \∑ +@rsyms = \Σ | \π \₁ | \π \₂ | \# "lang" | \; | "rzk" \- "1" | \# "set" \- "option" | \= | \# "unset" \- "option" | \# "check" | \: | \# "compute" | \# "compute" \- "whnf" | \# "compute" \- "nf" | \# "postulate" | \# "define" \- "assumption" | \# "define" \- "variable" | \# "define" \- "variables" | \# "assume" | \# "variable" | \# "variables" | \# "section" | \# "end" | \# "define" | \: \= | \# "def" | \( | \) | \, | \| | \{ | \} | \↦ | "1" | \* \₁ | "2" | "0" \₂ | "1" \₂ | \× | \⊤ | \⊥ | \≡ | \≤ | \∧ | \∨ | \→ | \= \_ \{ | \[ | \] | \< | \> | \\ | "refl" \_ \{ | \* | \* \_ "1" | "0" \_ "2" | "1" \_ "2" | \= \= \= | \< \= | \/ \\ | \\ \/ | \- \> | \| \- \> | \∑ :- @@ -166,43 +166,47 @@ eitherResIdent tv s = treeFind resWords -- | The keywords and symbols of the language organized as binary search tree. resWords :: BTree resWords = - b "BOT" 39 - (b "*\8321" 20 - (b "#postulate" 10 - (b "#compute-whnf" 5 + b ">" 41 + (b "*" 21 + (b "#end" 11 + (b "#def" 6 (b "#compute" 3 - (b "#check" 2 (b "#assume" 1 N N) N) (b "#compute-nf" 4 N N)) - (b "#end" 8 (b "#define" 7 (b "#def" 6 N N) N) (b "#lang" 9 N N))) - (b "#variables" 15 - (b "#unset-option" 13 - (b "#set-option" 12 (b "#section" 11 N N) N) - (b "#variable" 14 N N)) - (b "*" 18 (b ")" 17 (b "(" 16 N N) N) (b "*_1" 19 N N)))) - (b ":" 30 - (b "0\8322" 25 - (b "/\\" 23 (b "->" 22 (b "," 21 N N) N) (b "0_2" 24 N N)) - (b "1\8322" 28 (b "1_2" 27 (b "1" 26 N N) N) (b "2" 29 N N))) - (b "=" 35 - (b "<" 33 (b ";" 32 (b ":=" 31 N N) N) (b "<=" 34 N N)) - (b "=_{" 37 (b "===" 36 N N) (b ">" 38 N N))))) - (b "unit" 59 - (b "]" 49 - (b "U" 44 - (b "TOP" 42 (b "Sigma" 41 (b "CUBE" 40 N N) N) (b "TOPE" 43 N N)) - (b "\\" 47 (b "[" 46 (b "Unit" 45 N N) N) (b "\\/" 48 N N))) - (b "recOR" 54 - (b "idJ" 52 (b "first" 51 (b "as" 50 N N) N) (b "recBOT" 53 N N)) - (b "rzk-1" 57 - (b "refl_{" 56 (b "refl" 55 N N) N) (b "second" 58 N N)))) - (b "\8594" 69 - (b "}" 64 - (b "|" 62 (b "{" 61 (b "uses" 60 N N) N) (b "|->" 63 N N)) - (b "\960\8321" 67 - (b "\931" 66 (b "\215" 65 N N) N) (b "\960\8322" 68 N N))) - (b "\8801" 74 - (b "\8743" 72 - (b "\8721" 71 (b "\8614" 70 N N) N) (b "\8744" 73 N N)) - (b "\8868" 76 (b "\8804" 75 N N) (b "\8869" 77 N N))))) + (b "#check" 2 (b "#assume" 1 N N) N) + (b "#compute-whnf" 5 (b "#compute-nf" 4 N N) N)) + (b "#define-variable" 9 + (b "#define-assumption" 8 (b "#define" 7 N N) N) + (b "#define-variables" 10 N N))) + (b "#unset-option" 16 + (b "#section" 14 + (b "#postulate" 13 (b "#lang" 12 N N) N) (b "#set-option" 15 N N)) + (b "(" 19 + (b "#variables" 18 (b "#variable" 17 N N) N) (b ")" 20 N N)))) + (b "1\8322" 31 + (b "/\\" 26 + (b "," 24 (b "*\8321" 23 (b "*_1" 22 N N) N) (b "->" 25 N N)) + (b "1" 29 (b "0\8322" 28 (b "0_2" 27 N N) N) (b "1_2" 30 N N))) + (b "<" 36 + (b ":=" 34 (b ":" 33 (b "2" 32 N N) N) (b ";" 35 N N)) + (b "===" 39 (b "=" 38 (b "<=" 37 N N) N) (b "=_{" 40 N N))))) + (b "second" 61 + (b "\\/" 51 + (b "TOPE" 46 + (b "Sigma" 44 (b "CUBE" 43 (b "BOT" 42 N N) N) (b "TOP" 45 N N)) + (b "[" 49 (b "Unit" 48 (b "U" 47 N N) N) (b "\\" 50 N N))) + (b "recBOT" 56 + (b "first" 54 (b "as" 53 (b "]" 52 N N) N) (b "idJ" 55 N N)) + (b "refl_{" 59 + (b "refl" 58 (b "recOR" 57 N N) N) (b "rzk-1" 60 N N)))) + (b "\960\8322" 71 + (b "|->" 66 + (b "{" 64 (b "uses" 63 (b "unit" 62 N N) N) (b "|" 65 N N)) + (b "\931" 69 + (b "\215" 68 (b "}" 67 N N) N) (b "\960\8321" 70 N N))) + (b "\8744" 76 + (b "\8721" 74 + (b "\8614" 73 (b "\8594" 72 N N) N) (b "\8743" 75 N N)) + (b "\8868" 79 + (b "\8804" 78 (b "\8801" 77 N N) N) (b "\8869" 80 N N))))) where b s n = B bs (TS bs n) where diff --git a/rzk/src/Language/Rzk/Syntax/Par.hs b/rzk/src/Language/Rzk/Syntax/Par.hs index f15a5c502..a4ed56103 100644 --- a/rzk/src/Language/Rzk/Syntax/Par.hs +++ b/rzk/src/Language/Rzk/Syntax/Par.hs @@ -267,40 +267,40 @@ happyOutTok x = Happy_GHC_Exts.unsafeCoerce# x happyExpList :: HappyAddr -happyExpList = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xcf\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x3f\x3f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x02\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x28\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\xa0\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x82\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xc0\x27\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf8\x0d\x18\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x40\x01\x00\x00\x20\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x1f\x7c\x02\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x0b\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x0a\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf0\x09\x00\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x03\x9f\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x03\x9f\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7c\x02\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x07\x9f\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x1f\x7c\x02\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xc1\x27\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x28\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x3f\x3f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\xfc\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x00\x00\x00\x00\x20\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x02\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf8\x0d\x18\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf8\x0d\x18\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x20\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x7d\xf0\x09\x00\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xc1\x27\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x02\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x01\x00\x00\xa0\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x04\x00\x00\x80\x02\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x10\x00\x00\x00\x0a\x00\x20\x00\x00\x00\x00\x00\x00\x00\xfe\xfc\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# +happyExpList = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xff\xf9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x3f\x3f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x14\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x02\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7b\xf0\x5b\x30\x60\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf0\x09\x00\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xb0\x07\xbf\x01\x03\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x1e\xfc\x06\x0c\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x80\x02\x00\x00\x40\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x1f\x7c\x02\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\xb7\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\xa0\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x1e\xf8\x04\x00\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xb0\x07\x3e\x01\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x04\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7b\xe0\x13\x00\x60\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7c\x02\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\xfb\xe0\x13\x00\x60\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xc1\x27\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x07\x9f\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x40\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x04\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x10\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x40\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x9f\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xff\xf9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x00\x00\x00\x00\x20\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x1e\xfc\x06\x0c\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x40\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x04\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\x3d\xf8\x0d\x18\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xb0\x07\xbf\x01\x03\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xe0\x37\x60\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x1e\xfc\x06\x0c\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xd8\x83\xdf\x80\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7b\xf0\x1b\x30\x60\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\x60\x0f\x7e\x03\x06\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xec\xc1\x6f\xc0\x80\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x80\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xb0\x0f\x3e\x01\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xf6\xc1\x27\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x10\x00\x00\x00\x0a\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x40\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x20\x00\x00\x00\x14\x00\x40\x00\x00\x00\x00\x00\x00\x00\xfc\xcf\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7b\xf0\x1b\x30\x60\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xf8\x11\xfc\xc5\x6f\xe1\x84\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x3f\x82\xbf\xf8\x2d\x9c\xb0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x7e\x04\x7f\xf1\x5b\x38\x61\x03\x00\x00\x00\x00\x00\x00\x00\x00\x40\xc6\x8f\xe0\x2f\x7e\x0b\x27\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xf1\x23\xf8\x8b\xdf\xc2\x09\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\xfc\x08\xfe\xe2\xb7\x70\xc2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xe3\x47\xf0\x17\xbf\x85\x13\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x8c\x1f\xc1\x5f\xfc\x16\x4e\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# {-# NOINLINE happyExpListPerState #-} happyExpListPerState st = token_strs_expected - where token_strs = ["error","%dummy","%start_pModule_internal","%start_pHoleIdent_internal","%start_pVarIdent_internal","%start_pListVarIdent_internal","%start_pLanguageDecl_internal","%start_pLanguage_internal","%start_pCommand_internal","%start_pListCommand_internal","%start_pDeclUsedVars_internal","%start_pSectionName_internal","%start_pPattern_internal","%start_pListPattern_internal","%start_pParam_internal","%start_pListParam_internal","%start_pParamDecl_internal","%start_pRestriction_internal","%start_pListRestriction_internal","%start_pTerm7_internal","%start_pTerm5_internal","%start_pTerm4_internal","%start_pTerm3_internal","%start_pTerm2_internal","%start_pTerm1_internal","%start_pTerm6_internal","%start_pTerm_internal","%start_pListTerm_internal","String","VarIdentToken","HoleIdentToken","Module","HoleIdent","VarIdent","ListVarIdent","LanguageDecl","Language","Command","ListCommand","DeclUsedVars","SectionName","Pattern","ListPattern","Param","ListParam","ParamDecl","Restriction","ListRestriction","Term7","Term5","Term4","Term3","Term2","Term1","Term6","Term","ListTerm","'#assume'","'#check'","'#compute'","'#compute-nf'","'#compute-whnf'","'#def'","'#define'","'#end'","'#lang'","'#postulate'","'#section'","'#set-option'","'#unset-option'","'#variable'","'#variables'","'('","')'","'*'","'*_1'","'*\8321'","','","'->'","'/\\\\'","'0_2'","'0\8322'","'1'","'1_2'","'1\8322'","'2'","':'","':='","';'","'<'","'<='","'='","'==='","'=_{'","'>'","'BOT'","'CUBE'","'Sigma'","'TOP'","'TOPE'","'U'","'Unit'","'['","'\\\\'","'\\\\/'","']'","'as'","'first'","'idJ'","'recBOT'","'recOR'","'refl'","'refl_{'","'rzk-1'","'second'","'unit'","'uses'","'{'","'|'","'|->'","'}'","'\215'","'\931'","'\960\8321'","'\960\8322'","'\8594'","'\8614'","'\8721'","'\8743'","'\8744'","'\8801'","'\8804'","'\8868'","'\8869'","L_quoted","L_VarIdentToken","L_HoleIdentToken","%eof"] - bit_start = st Prelude.* 138 - bit_end = (st Prelude.+ 1) Prelude.* 138 + where token_strs = ["error","%dummy","%start_pModule_internal","%start_pHoleIdent_internal","%start_pVarIdent_internal","%start_pListVarIdent_internal","%start_pLanguageDecl_internal","%start_pLanguage_internal","%start_pCommand_internal","%start_pListCommand_internal","%start_pDeclUsedVars_internal","%start_pSectionName_internal","%start_pPattern_internal","%start_pListPattern_internal","%start_pParam_internal","%start_pListParam_internal","%start_pParamDecl_internal","%start_pRestriction_internal","%start_pListRestriction_internal","%start_pTerm7_internal","%start_pTerm5_internal","%start_pTerm4_internal","%start_pTerm3_internal","%start_pTerm2_internal","%start_pTerm1_internal","%start_pTerm6_internal","%start_pTerm_internal","%start_pListTerm_internal","String","VarIdentToken","HoleIdentToken","Module","HoleIdent","VarIdent","ListVarIdent","LanguageDecl","Language","Command","ListCommand","DeclUsedVars","SectionName","Pattern","ListPattern","Param","ListParam","ParamDecl","Restriction","ListRestriction","Term7","Term5","Term4","Term3","Term2","Term1","Term6","Term","ListTerm","'#assume'","'#check'","'#compute'","'#compute-nf'","'#compute-whnf'","'#def'","'#define'","'#define-assumption'","'#define-variable'","'#define-variables'","'#end'","'#lang'","'#postulate'","'#section'","'#set-option'","'#unset-option'","'#variable'","'#variables'","'('","')'","'*'","'*_1'","'*\8321'","','","'->'","'/\\\\'","'0_2'","'0\8322'","'1'","'1_2'","'1\8322'","'2'","':'","':='","';'","'<'","'<='","'='","'==='","'=_{'","'>'","'BOT'","'CUBE'","'Sigma'","'TOP'","'TOPE'","'U'","'Unit'","'['","'\\\\'","'\\\\/'","']'","'as'","'first'","'idJ'","'recBOT'","'recOR'","'refl'","'refl_{'","'rzk-1'","'second'","'unit'","'uses'","'{'","'|'","'|->'","'}'","'\215'","'\931'","'\960\8321'","'\960\8322'","'\8594'","'\8614'","'\8721'","'\8743'","'\8744'","'\8801'","'\8804'","'\8868'","'\8869'","L_quoted","L_VarIdentToken","L_HoleIdentToken","%eof"] + bit_start = st Prelude.* 141 + bit_end = (st Prelude.+ 1) Prelude.* 141 read_bit = readArrayBit happyExpList bits = Prelude.map read_bit [bit_start..bit_end Prelude.- 1] - bits_indexed = Prelude.zip bits [0..137] + bits_indexed = Prelude.zip bits [0..140] token_strs_expected = Prelude.concatMap f bits_indexed f (Prelude.False, _) = [] f (Prelude.True, nr) = [token_strs Prelude.!! nr] happyActOffsets :: HappyAddr -happyActOffsets = HappyA# "\x06\x00\xc5\xff\xdb\xff\xdb\xff\x4e\x00\x2a\x00\x7d\x07\x7d\x07\x20\x00\x4b\x00\x23\x00\x23\x00\x2c\x00\x2c\x00\x5c\x00\x1e\x00\x1e\x00\x40\x01\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x1e\x00\x9a\x00\x1e\x00\x1e\x00\x55\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xff\x00\x00\x4d\x01\xfc\xff\xd7\xff\xb3\x00\x00\x00\xd8\x00\x8c\x00\x6e\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\x00\x00\x00\x00\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x40\x01\xb9\x00\x00\x00\xc3\x00\x00\x00\x1e\x00\x40\x01\x00\x00\x24\x00\xdd\x00\x40\x01\x40\x01\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\xf1\xff\x1e\x00\x0a\x00\xa6\x00\xa6\x00\x16\x01\xa6\x00\xa6\x00\x54\x00\xa6\x00\xe7\x00\xad\x00\xd1\xff\xad\x00\xad\x00\x16\x01\x00\x00\x00\x00\x2c\x00\xad\x00\xa9\x00\x00\x00\xa9\x00\xad\x00\xa9\x00\xad\x00\xa9\x00\xad\x00\x00\x00\xad\x00\xad\x00\x01\x01\xf7\x00\xd1\x00\xde\x00\x1e\x00\x1e\x00\x1e\x00\x1e\x00\xde\x00\xde\x00\xde\x00\xde\x00\xe6\x00\xe6\x00\xeb\x00\xeb\x00\xfe\x00\xfe\x00\x00\x00\xfe\x00\x03\x01\x08\x01\x04\x01\x04\x01\x04\x01\x04\x01\x7d\x07\x00\x00\x00\x00\x26\x01\x4b\x01\x52\x01\x00\x00\x50\x01\x59\x01\x43\x01\x43\x01\x43\x01\x00\x00\x00\x00\x00\x00\x67\x01\x6a\x01\x7d\x07\x3c\x01\x92\x01\x00\x00\x8a\x01\x88\x00\xb4\x01\x00\x00\x00\x00\x1e\x00\x1e\x00\x1e\x00\x1e\x00\x9a\x00\x9a\x00\x9a\x00\x1e\x00\x53\x00\xa9\x00\x00\x00\x00\x00\xa9\x00\xb5\x01\xa9\x00\x00\x00\xe4\xff\x1e\x00\x1e\x00\x00\x00\xfe\xff\xa9\x00\x0b\x00\x31\x02\x1e\x00\x1e\x00\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x9a\x00\x1e\x00\x1e\x00\x00\x00\x00\x00\x19\x00\x19\x00\x19\x00\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x00\x1e\x00\x1e\x00\x1e\x00\xda\x01\x1e\x00\x1e\x00\xe4\x01\xae\x01\x9c\x00\x1e\x00\x00\x00\xf3\xff\x1e\x00\xff\x01\x00\x02\xce\x01\x00\x00\x16\x01\x16\x01\x00\x00\x00\x00\x00\x00\xe8\x01\x1e\x00\xa9\x00\x1e\x00\x0e\x02\x00\x00\x1e\x00\x1e\x00\x3f\x00\x61\x00\x7d\x00\x7d\x07\xd3\x01\x1e\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x02\x15\x02\x1e\x00\x25\x02\x1e\x00\x26\x02\x1e\x00\x00\x00\x00\x00\x00\x00\xf6\x01\x2e\x02\xf2\xff\x00\x00\x9a\x00\x1e\x00\x1e\x00\x0e\x00\x1e\x00\x05\x02\x1e\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x1e\x00\x24\x02\x28\x02\x71\x00\x36\x02\x00\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x48\x02\x45\x02\x50\x02\x00\x00\x59\x02\x1e\x00\x00\x00\x5a\x02\x5f\x02\x00\x00\x00\x00\x1e\x00\x00\x00\x1e\x00\x60\x02\x1e\x00\x61\x02\x1e\x00\x00\x00\x1e\x00\x41\x02\x00\x00\x00\x00\x6c\x02\x1e\x00\x72\x02\x1e\x00\x56\x02\x94\x02\x91\x02\x9c\x02\x76\x02\x79\x02\x1e\x00\x1e\x00\xa7\x02\xba\x02\x00\x00\x1e\x00\xb7\x02\xc2\x02\x1e\x00\x00\x00\x1e\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x1e\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9a\x02\x1e\x00\x1e\x00\x00\x00\xc6\x02\xcb\x02\x00\x00\x00\x00\x1e\x00\xc8\x02\x1e\x00\xcd\x02\x00\x00\x00\x00"# +happyActOffsets = HappyA# "\x03\x00\xc2\xff\xd8\xff\xd8\xff\x4b\x00\x27\x00\xaa\x07\xaa\x07\x1d\x00\x48\x00\x20\x00\x20\x00\x29\x00\x29\x00\x59\x00\x1b\x00\x1b\x00\x3d\x01\x97\x00\x97\x00\x97\x00\x97\x00\x1b\x00\x97\x00\x1b\x00\x1b\x00\x78\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xed\xff\x00\x00\x4a\x01\xf9\xff\xd4\xff\xb0\x00\x00\x00\xd5\x00\x89\x00\x6b\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x59\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x00\x3d\x01\xda\x00\x00\x00\xe4\x00\x00\x00\x1b\x00\x3d\x01\x00\x00\x21\x00\xe9\x00\x3d\x01\x3d\x01\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\xee\xff\x1b\x00\x07\x00\x9b\x00\x9b\x00\x13\x01\x9b\x00\x9b\x00\x51\x00\x9b\x00\xf9\x00\xc3\x00\xce\xff\xc3\x00\xc3\x00\x13\x01\x00\x00\x00\x00\x29\x00\xc3\x00\xa6\x00\x00\x00\xa6\x00\xc3\x00\xa6\x00\xc3\x00\xa6\x00\xc3\x00\x00\x00\xc3\x00\xc3\x00\x01\x01\xff\x00\xc4\x00\xd9\x00\x1b\x00\x1b\x00\x1b\x00\x1b\x00\xd9\x00\xd9\x00\xd9\x00\xd9\x00\xd9\x00\xd9\x00\xd9\x00\xe3\x00\xe3\x00\xe8\x00\xe8\x00\xd8\x00\xd8\x00\x00\x00\xd8\x00\xf1\x00\xea\x00\xf2\x00\xf2\x00\xf2\x00\xf2\x00\xaa\x07\x00\x00\x00\x00\x2c\x01\x35\x01\x36\x01\x00\x00\x2f\x01\x3b\x01\x2a\x01\x4f\x01\x52\x01\x58\x01\x40\x01\x40\x01\x00\x00\x00\x00\x00\x00\x64\x01\x67\x01\xaa\x07\x39\x01\x8f\x01\x00\x00\x87\x01\x85\x00\x9e\x01\x00\x00\x00\x00\x1b\x00\x1b\x00\x1b\x00\x1b\x00\x97\x00\x97\x00\x97\x00\x1b\x00\x50\x00\xa6\x00\x00\x00\x00\x00\xa6\x00\xb1\x01\xa6\x00\x00\x00\xe1\xff\x1b\x00\x1b\x00\x00\x00\xfb\xff\xa6\x00\x08\x00\x31\x01\x1b\x00\x1b\x00\x97\x00\x97\x00\x97\x00\x97\x00\x97\x00\x97\x00\x97\x00\x97\x00\x1b\x00\x1b\x00\x00\x00\x00\x00\x16\x00\x16\x00\x16\x00\x16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x1b\x00\x1b\x00\x1b\x00\xb2\x01\x1b\x00\x1b\x00\xe0\x01\xe5\x01\x99\x00\x1b\x00\x00\x00\xf0\xff\x1b\x00\xed\x01\xfe\x01\xde\x01\x00\x00\x13\x01\x13\x01\x00\x00\x00\x00\x00\x00\xff\x01\x1b\x00\xa6\x00\x1b\x00\x10\x02\x00\x00\x1b\x00\x1b\x00\x3c\x00\x5e\x00\x1b\x00\x1b\x00\x1b\x00\x7a\x00\xaa\x07\xe3\x01\x1b\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x02\x23\x02\x1b\x00\x00\x00\x00\x00\x00\x00\x24\x02\x1b\x00\x29\x02\x1b\x00\x00\x00\x00\x00\x00\x00\x19\x02\x45\x02\xef\xff\x00\x00\x97\x00\x1b\x00\x1b\x00\x0b\x00\x1b\x00\x22\x02\x1b\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x1b\x00\x56\x02\x57\x02\x6e\x00\x5c\x02\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x77\x02\x52\x02\x53\x02\x00\x00\x7c\x02\x1b\x00\x00\x00\x7d\x02\x82\x02\x00\x00\x00\x00\x1b\x00\x00\x00\x1b\x00\x83\x02\x1b\x00\x84\x02\x1b\x00\x00\x00\x1b\x00\x65\x02\x00\x00\x00\x00\x97\x02\x1b\x00\x9a\x02\x1b\x00\x7e\x02\xb7\x02\xb4\x02\xc4\x02\x9c\x02\xa6\x02\x1b\x00\x1b\x00\xc5\x02\xdd\x02\x00\x00\x1b\x00\xda\x02\xe5\x02\x1b\x00\x00\x00\x1b\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x02\x1b\x00\x1b\x00\x00\x00\xe9\x02\xee\x02\x00\x00\x00\x00\x1b\x00\xeb\x02\x1b\x00\xf0\x02\x00\x00\x00\x00"# happyGotoOffsets :: HappyAddr -happyGotoOffsets = HappyA# "\xdc\x00\x7c\x00\x13\x01\xa1\x00\xd8\x02\xda\x02\xdd\x02\x81\x00\xdc\x02\x80\x00\xfc\x00\x15\x00\x14\x01\xbb\x00\xdc\x06\xfb\x01\xaf\x01\x34\x01\xf0\x06\x06\x01\xb7\x06\x81\x06\xd7\x05\x90\x01\x16\x02\x85\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x01\x00\x00\x00\x00\x21\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf7\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x01\xaa\x01\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x02\x40\x07\x00\x00\x3a\x01\x00\x00\x46\x07\x4d\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x07\x47\x02\x00\x00\x00\x00\x00\x00\x54\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x07\x00\x00\x00\x00\x56\x07\x00\x00\x11\x01\x00\x00\x51\x01\x00\x00\x1b\x02\x00\x00\x67\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x00\x62\x02\x6d\x02\x88\x02\x93\x02\x44\x01\x5f\x01\x7d\x01\xcc\x01\xf1\x02\xf2\x02\xa8\x01\xf5\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf5\x02\xcf\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf6\x02\xf7\x02\xf8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x00\xf5\x01\x00\x00\x00\x00\x00\x00\x1b\x02\x00\x00\x00\x00\x00\x00\xca\x01\xae\x02\xb9\x02\xd5\x01\x2c\x07\x39\x07\x88\x06\xd4\x02\x00\x00\x68\x02\x00\x00\x00\x00\x8d\x02\x00\x00\x8e\x02\x00\x00\x00\x00\xf0\x01\xdf\x02\x00\x00\x00\x00\xb3\x02\x00\x00\x00\x00\xa1\x01\xf1\x05\x8f\x06\xa9\x06\xce\x06\xd5\x06\xfe\x06\x0b\x07\x15\x07\x22\x07\xfb\x05\x15\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x02\x05\x03\x20\x03\x2b\x03\x00\x00\x1f\x06\x39\x06\x00\x00\x00\x00\x00\x00\x46\x03\x00\x00\x00\x00\x51\x03\x00\x00\x00\x00\x00\x00\x00\x00\x54\x07\x54\x07\x00\x00\x00\x00\x00\x00\x00\x00\x6c\x03\xb4\x02\x77\x03\x00\x00\x00\x00\x92\x03\x9d\x03\x5d\x07\x66\x07\x6d\x07\x22\x01\x00\x03\xb8\x03\xc3\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\x03\x00\x00\xe9\x03\x00\x00\x04\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb0\x06\x0f\x04\x2a\x04\x00\x00\x35\x04\x00\x00\x50\x04\x00\x00\x5b\x04\x00\x00\x00\x00\x76\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x81\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9c\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa7\x04\x00\x00\xc2\x04\x00\x00\xcd\x04\x00\x00\xe8\x04\x00\x00\xf3\x04\xf2\x01\x00\x00\x00\x00\x00\x00\x0e\x05\x00\x00\x19\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x05\x3f\x05\x00\x00\x00\x00\x00\x00\x43\x06\x00\x00\x00\x00\x5a\x05\x00\x00\x5d\x06\x67\x06\x00\x00\x00\x00\x00\x00\x65\x05\x00\x00\x80\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x05\xa6\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x05\x00\x00\xcc\x05\x00\x00\x00\x00\x00\x00"# +happyGotoOffsets = HappyA# "\xdc\x00\x7c\x00\x5f\x01\xa1\x00\xfe\x02\x00\x03\x03\x03\x81\x00\x02\x03\x80\x00\xfc\x00\x15\x00\x14\x01\xbb\x00\x1d\x07\xfb\x01\xaf\x01\x34\x01\x24\x07\x06\x01\xf8\x06\xaf\x06\x18\x06\x90\x01\x16\x02\x85\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x01\x00\x00\x00\x00\x21\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x01\xaa\x01\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x02\x85\x07\x00\x00\x3a\x01\x00\x00\x8a\x07\x8f\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x07\x47\x02\x00\x00\x00\x00\x00\x00\x96\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x07\x00\x00\x00\x00\x26\x07\x00\x00\x11\x01\x00\x00\x41\x02\x00\x00\x1b\x02\x00\x00\x42\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x00\x62\x02\x6d\x02\x88\x02\x93\x02\x7d\x01\xa8\x01\xf5\x00\xd6\x02\xcf\x01\xd9\x02\xcc\x01\x17\x03\x18\x03\xe1\x02\xf5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x03\x18\x02\x00\x00\x00\x00\x00\x00\x00\x00\x9a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x03\x00\x00\x00\x00\x00\x00\x1d\x03\x1e\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x00\xb0\x02\x00\x00\x00\x00\x00\x00\x1b\x02\x00\x00\x00\x00\x00\x00\xca\x01\xae\x02\xb9\x02\xd5\x01\x69\x07\x6e\x07\xb6\x06\xd4\x02\x00\x00\x67\x02\x00\x00\x00\x00\x68\x02\x00\x00\x8d\x02\x00\x00\x00\x00\xf0\x01\xdf\x02\x00\x00\x00\x00\x8e\x02\x00\x00\x00\x00\xa1\x01\x22\x06\xd0\x06\xd7\x06\xff\x06\x06\x07\x3f\x07\x46\x07\x4d\x07\x64\x07\x3c\x06\x46\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x02\x05\x03\x20\x03\x2b\x03\x00\x00\x60\x06\x6a\x06\x00\x00\x00\x00\x00\x00\x46\x03\x00\x00\x00\x00\x51\x03\x00\x00\x00\x00\x00\x00\x00\x00\x96\x07\x96\x07\x00\x00\x00\x00\x00\x00\x00\x00\x6c\x03\xb3\x02\x77\x03\x00\x00\x00\x00\x92\x03\x9d\x03\x48\x07\xbc\x07\xb8\x03\xc3\x03\xde\x03\xc1\x07\xd0\x00\x26\x03\xe9\x03\x04\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f\x04\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x04\x00\x00\x35\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\x06\x50\x04\x5b\x04\x00\x00\x76\x04\x00\x00\x81\x04\x00\x00\x9c\x04\x00\x00\x00\x00\xa7\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x04\x00\x00\xf3\x04\x00\x00\x0e\x05\x00\x00\x19\x05\x00\x00\x34\x05\xf2\x01\x00\x00\x00\x00\x00\x00\x3f\x05\x00\x00\x5a\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x05\x80\x05\x00\x00\x00\x00\x00\x00\x84\x06\x00\x00\x00\x00\x8b\x05\x00\x00\x8e\x06\xa8\x06\x00\x00\x00\x00\x00\x00\xa6\x05\x00\x00\xb1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x05\xd7\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x05\x00\x00\xfd\x05\x00\x00\x00\x00\x00\x00"# happyAdjustOffset :: Happy_GHC_Exts.Int# -> Happy_GHC_Exts.Int# happyAdjustOffset off = off happyDefActions :: HappyAddr -happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\xff\xc8\xff\xc7\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe5\xff\xe0\xff\xe1\xff\x9b\xff\x9a\xff\x00\x00\x76\xff\x8d\xff\x89\xff\x86\xff\x7f\xff\x72\xff\x91\xff\x71\xff\x00\x00\x00\x00\x98\xff\xac\xff\x97\xff\xaa\xff\xad\xff\x96\xff\xa9\xff\xab\xff\x00\x00\x94\xff\xaf\xff\x00\x00\x95\xff\xae\xff\xb0\xff\xa3\xff\x00\x00\x00\x00\x00\x00\xa6\xff\x00\x00\x9f\xff\x00\x00\x00\x00\xa0\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\xff\xa7\xff\xe4\xff\xe3\xff\x00\x00\x00\x00\x00\x00\x7f\xff\x00\x00\x00\x00\x91\xff\x00\x00\x00\x00\x00\x00\x00\x00\xb2\xff\x00\x00\x00\x00\x00\x00\x00\x00\xba\xff\xc4\xff\xc0\xff\xbc\xff\x00\x00\x00\x00\xc5\xff\x00\x00\x00\x00\xc2\xff\x00\x00\x00\x00\x00\x00\xc6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdc\xff\x00\x00\x00\x00\xdf\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcb\xff\xe2\xff\xde\xff\x00\x00\x00\x00\x00\x00\xda\xff\x00\x00\x00\x00\xc8\xff\xc8\xff\xc8\xff\xd7\xff\xd6\xff\xd8\xff\x00\x00\x00\x00\xcb\xff\x00\x00\x00\x00\xc1\xff\x00\x00\xc2\xff\x00\x00\xbb\xff\x79\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77\xff\x78\xff\x00\x00\x00\x00\x00\x00\x74\xff\x00\x00\x00\x00\x00\x00\x75\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\xff\x7e\xff\x8e\xff\x8f\xff\x8c\xff\x8b\xff\x8a\xff\x88\xff\x87\xff\x85\xff\x73\xff\x70\xff\x99\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x81\xff\x92\xff\x90\xff\xb1\xff\xb4\xff\xb3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\xff\x00\x00\x00\x00\x00\x00\xdd\xff\xd1\xff\xd2\xff\xdb\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\xff\xd3\xff\xc9\xff\x00\x00\x00\x00\x00\x00\x7a\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa5\xff\x00\x00\x80\xff\x7c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\xff\xb9\xff\x00\x00\x93\xff\xa2\xff\x00\x00\x00\x00\x00\x00\x9d\xff\x00\x00\x00\x00\xb7\xff\x00\x00\x00\x00\x82\xff\xbf\xff\x00\x00\xc3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\xff\x00\x00\xc7\xff\xd0\xff\xd5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x00\x00\x00\x00\x00\x00\x00\x00\xb5\xff\x00\x00\x00\x00\xbe\xff\xbd\xff\xcc\xff\x00\x00\xce\xff\x00\x00\xcf\xff\xcd\xff\x7b\xff\x83\xff\x00\x00\x00\x00\x00\x00\x7d\xff\x00\x00\x00\x00\xb6\xff\xa4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x9c\xff"# +happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\xc5\xff\xc4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe5\xff\xe0\xff\xe1\xff\x98\xff\x97\xff\x00\x00\x73\xff\x8a\xff\x86\xff\x83\xff\x7c\xff\x6f\xff\x8e\xff\x6e\xff\x00\x00\x00\x00\x95\xff\xa9\xff\x94\xff\xa7\xff\xaa\xff\x93\xff\xa6\xff\xa8\xff\x00\x00\x91\xff\xac\xff\x00\x00\x92\xff\xab\xff\xad\xff\xa0\xff\x00\x00\x00\x00\x00\x00\xa3\xff\x00\x00\x9c\xff\x00\x00\x00\x00\x9d\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa5\xff\xa4\xff\xe4\xff\xe3\xff\x00\x00\x00\x00\x00\x00\x7c\xff\x00\x00\x00\x00\x8e\xff\x00\x00\x00\x00\x00\x00\x00\x00\xaf\xff\x00\x00\x00\x00\x00\x00\x00\x00\xb7\xff\xc1\xff\xbd\xff\xb9\xff\x00\x00\x00\x00\xc2\xff\x00\x00\x00\x00\xbf\xff\x00\x00\x00\x00\x00\x00\xc3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdc\xff\x00\x00\x00\x00\xdf\xff\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\xe2\xff\xde\xff\x00\x00\x00\x00\x00\x00\xda\xff\x00\x00\x00\x00\xc5\xff\x00\x00\x00\x00\x00\x00\xc5\xff\xc5\xff\xd7\xff\xd6\xff\xd8\xff\x00\x00\x00\x00\xc8\xff\x00\x00\x00\x00\xbe\xff\x00\x00\xbf\xff\x00\x00\xb8\xff\x76\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x74\xff\x75\xff\x00\x00\x00\x00\x00\x00\x71\xff\x00\x00\x00\x00\x00\x00\x72\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x81\xff\x7b\xff\x8b\xff\x8c\xff\x89\xff\x88\xff\x87\xff\x85\xff\x84\xff\x82\xff\x70\xff\x6d\xff\x96\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\xff\x8f\xff\x8d\xff\xae\xff\xb1\xff\xb0\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x00\x00\x00\x00\x00\x00\xdd\xff\xce\xff\xcf\xff\xdb\xff\x00\x00\x00\x00\x00\x00\xd1\xff\xd2\xff\xd3\xff\x00\x00\x00\x00\x00\x00\x00\x00\xd9\xff\xd0\xff\xc6\xff\x00\x00\x00\x00\x00\x00\x77\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\xff\x00\x00\x7d\xff\x79\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\xff\xb6\xff\x00\x00\x90\xff\x9f\xff\x00\x00\x00\x00\x00\x00\x9a\xff\x00\x00\x00\x00\xb4\xff\x00\x00\x00\x00\x7f\xff\xbc\xff\x00\x00\xc0\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\xff\x00\x00\xc4\xff\xcd\xff\xd5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb5\xff\x00\x00\x00\x00\x00\x00\x00\x00\xb2\xff\x00\x00\x00\x00\xbb\xff\xba\xff\xc9\xff\x00\x00\xcb\xff\x00\x00\xcc\xff\xca\xff\x78\xff\x80\xff\x00\x00\x00\x00\x00\x00\x7a\xff\x00\x00\x00\x00\xb3\xff\xa1\xff\x00\x00\x00\x00\x00\x00\x00\x00\x99\xff"# happyCheck :: HappyAddr -happyCheck = HappyA# "\xff\xff\x10\x00\x1e\x00\x11\x00\x13\x00\x14\x00\x16\x00\x30\x00\x15\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x09\x00\x3f\x00\x1e\x00\x21\x00\x17\x00\x16\x00\x50\x00\x01\x00\x46\x00\x27\x00\x28\x00\x05\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x49\x00\x16\x00\x0d\x00\x0e\x00\x40\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x4f\x00\x12\x00\x3b\x00\x23\x00\x10\x00\x25\x00\x3e\x00\x13\x00\x14\x00\x10\x00\x10\x00\x45\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x10\x00\x4c\x00\x4d\x00\x21\x00\x4f\x00\x50\x00\x51\x00\x45\x00\x48\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x3e\x00\x2f\x00\x40\x00\x10\x00\x45\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x09\x00\x3a\x00\x3b\x00\x41\x00\x3d\x00\x3c\x00\x1e\x00\x3b\x00\x3b\x00\x42\x00\x43\x00\x44\x00\x39\x00\x11\x00\x47\x00\x12\x00\x3b\x00\x15\x00\x3d\x00\x4c\x00\x4d\x00\x10\x00\x4f\x00\x50\x00\x13\x00\x14\x00\x10\x00\x4f\x00\x4f\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x3b\x00\x4f\x00\x3d\x00\x21\x00\x02\x00\x1e\x00\x04\x00\x01\x00\x11\x00\x27\x00\x28\x00\x05\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x09\x00\x0a\x00\x0c\x00\x10\x00\x4f\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x41\x00\x3a\x00\x3b\x00\x10\x00\x3d\x00\x4f\x00\x1e\x00\x3b\x00\x15\x00\x3d\x00\x43\x00\x44\x00\x15\x00\x01\x00\x4e\x00\x10\x00\x51\x00\x05\x00\x06\x00\x4c\x00\x4d\x00\x10\x00\x4f\x00\x50\x00\x13\x00\x14\x00\x3e\x00\x4f\x00\x15\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x3b\x00\x10\x00\x3d\x00\x21\x00\x01\x00\x09\x00\x0a\x00\x51\x00\x05\x00\x27\x00\x28\x00\x3b\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x0d\x00\x10\x00\x0f\x00\x10\x00\x4f\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x10\x00\x3a\x00\x3b\x00\x23\x00\x4f\x00\x25\x00\x09\x00\x0a\x00\x3f\x00\x01\x00\x43\x00\x44\x00\x03\x00\x05\x00\x06\x00\x46\x00\x07\x00\x3b\x00\x32\x00\x4c\x00\x4d\x00\x10\x00\x4f\x00\x50\x00\x13\x00\x14\x00\x10\x00\x16\x00\x10\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x51\x00\x4f\x00\x21\x00\x05\x00\x06\x00\x15\x00\x01\x00\x51\x00\x27\x00\x28\x00\x05\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x01\x00\x02\x00\x0d\x00\x04\x00\x05\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x10\x00\x01\x00\x3b\x00\x01\x00\x01\x00\x05\x00\x20\x00\x05\x00\x05\x00\x14\x00\x15\x00\x16\x00\x45\x00\x0d\x00\x0e\x00\x1a\x00\x0d\x00\x51\x00\x0f\x00\x4c\x00\x4d\x00\x10\x00\x4f\x00\x50\x00\x13\x00\x14\x00\x09\x00\x0a\x00\x4f\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x4e\x00\x01\x00\x02\x00\x21\x00\x04\x00\x05\x00\x4f\x00\x01\x00\x39\x00\x27\x00\x28\x00\x05\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x01\x00\x20\x00\x0d\x00\x14\x00\x05\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x51\x00\x10\x00\x3b\x00\x01\x00\x13\x00\x14\x00\x51\x00\x05\x00\x4f\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x0d\x00\x12\x00\x01\x00\x21\x00\x4c\x00\x4d\x00\x05\x00\x4f\x00\x50\x00\x27\x00\x28\x00\x1e\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x01\x00\x22\x00\x1e\x00\x24\x00\x05\x00\x23\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x20\x00\x0d\x00\x3b\x00\x0f\x00\x10\x00\x01\x00\x3c\x00\x01\x00\x02\x00\x05\x00\x04\x00\x05\x00\x1e\x00\x01\x00\x02\x00\x1e\x00\x04\x00\x05\x00\x4f\x00\x4c\x00\x4d\x00\x41\x00\x4f\x00\x50\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x11\x00\x4a\x00\x4b\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x15\x00\x1e\x00\x01\x00\x1a\x00\x01\x00\x02\x00\x05\x00\x04\x00\x05\x00\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x14\x00\x11\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x1e\x00\x1e\x00\x05\x00\x06\x00\x01\x00\x02\x00\x0c\x00\x04\x00\x05\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x1e\x00\x15\x00\x05\x00\x06\x00\x01\x00\x02\x00\x0c\x00\x04\x00\x05\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x12\x00\x40\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x31\x00\x04\x00\x05\x00\x01\x00\x1e\x00\x1e\x00\x11\x00\x05\x00\x4e\x00\x01\x00\x02\x00\x08\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x1e\x00\x3e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x11\x00\x1e\x00\x1e\x00\x40\x00\x15\x00\x11\x00\x01\x00\x02\x00\x26\x00\x04\x00\x05\x00\x11\x00\x26\x00\x1e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x11\x00\x15\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x15\x00\x04\x00\x05\x00\x01\x00\x01\x00\x11\x00\x11\x00\x05\x00\x05\x00\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x1f\x00\x1f\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x1f\x00\x04\x00\x05\x00\x01\x00\x01\x00\x4f\x00\x1f\x00\x05\x00\x05\x00\x01\x00\x02\x00\x40\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x11\x00\x15\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x15\x00\x04\x00\x05\x00\x01\x00\x01\x00\x40\x00\x3e\x00\x05\x00\x05\x00\x01\x00\x02\x00\x15\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x11\x00\x15\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x15\x00\x04\x00\x05\x00\x40\x00\x15\x00\x11\x00\x15\x00\x11\x00\x07\x00\x01\x00\x02\x00\x08\x00\x04\x00\x05\x00\x11\x00\x09\x00\x0b\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x00\x00\x00\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x08\x00\x04\x00\x05\x00\x00\x00\x0b\x00\x0b\x00\x0b\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x11\x00\xff\xff\x1a\x00\x14\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x1a\x00\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\xff\xff\xff\xff\x11\x00\xff\xff\x1a\x00\x14\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x1a\x00\x14\x00\x15\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\x14\x00\x15\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\x14\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x14\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x1a\x00\x14\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x14\x00\x05\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x14\x00\x05\x00\x0d\x00\xff\xff\x0f\x00\x10\x00\x01\x00\x14\x00\xff\xff\x0d\x00\x05\x00\x0f\x00\x10\x00\x01\x00\xff\xff\xff\xff\xff\xff\x05\x00\x0d\x00\xff\xff\x0f\x00\x10\x00\xff\xff\xff\xff\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# +happyCheck = HappyA# "\xff\xff\x13\x00\x21\x00\x14\x00\x16\x00\x17\x00\x19\x00\x33\x00\x18\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x0c\x00\x42\x00\x21\x00\x24\x00\x1a\x00\x19\x00\x53\x00\x01\x00\x49\x00\x2a\x00\x2b\x00\x05\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x4c\x00\x19\x00\x0d\x00\x0e\x00\x43\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x52\x00\x15\x00\x3e\x00\x26\x00\x13\x00\x28\x00\x41\x00\x16\x00\x17\x00\x13\x00\x13\x00\x48\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x13\x00\x4f\x00\x50\x00\x24\x00\x52\x00\x53\x00\x54\x00\x48\x00\x4b\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x41\x00\x32\x00\x43\x00\x13\x00\x48\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x0c\x00\x3d\x00\x3e\x00\x44\x00\x40\x00\x3f\x00\x21\x00\x3e\x00\x3e\x00\x45\x00\x46\x00\x47\x00\x3c\x00\x14\x00\x4a\x00\x15\x00\x3e\x00\x18\x00\x40\x00\x4f\x00\x50\x00\x13\x00\x52\x00\x53\x00\x16\x00\x17\x00\x13\x00\x52\x00\x52\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x3e\x00\x52\x00\x40\x00\x24\x00\x02\x00\x21\x00\x04\x00\x01\x00\x14\x00\x2a\x00\x2b\x00\x05\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x09\x00\x0a\x00\x0c\x00\x13\x00\x52\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x44\x00\x3d\x00\x3e\x00\x13\x00\x40\x00\x52\x00\x21\x00\x3e\x00\x18\x00\x40\x00\x46\x00\x47\x00\x18\x00\x01\x00\x09\x00\x0a\x00\x54\x00\x05\x00\x06\x00\x4f\x00\x50\x00\x13\x00\x52\x00\x53\x00\x16\x00\x17\x00\x41\x00\x52\x00\x18\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x3e\x00\x13\x00\x40\x00\x24\x00\x01\x00\x09\x00\x0a\x00\x54\x00\x05\x00\x2a\x00\x2b\x00\x3e\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x0d\x00\x51\x00\x0f\x00\x10\x00\x52\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x13\x00\x3d\x00\x3e\x00\x26\x00\x52\x00\x28\x00\x09\x00\x0a\x00\x42\x00\x01\x00\x46\x00\x47\x00\x03\x00\x05\x00\x06\x00\x49\x00\x07\x00\x3e\x00\x35\x00\x4f\x00\x50\x00\x13\x00\x52\x00\x53\x00\x16\x00\x17\x00\x13\x00\x19\x00\x54\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x01\x00\x13\x00\x52\x00\x24\x00\x05\x00\x06\x00\x13\x00\x01\x00\x13\x00\x2a\x00\x2b\x00\x05\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x01\x00\x02\x00\x0d\x00\x04\x00\x05\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x18\x00\x01\x00\x3e\x00\x13\x00\x01\x00\x05\x00\x54\x00\x54\x00\x05\x00\x14\x00\x15\x00\x16\x00\x48\x00\x0d\x00\x0e\x00\x1a\x00\x0d\x00\x23\x00\x0f\x00\x4f\x00\x50\x00\x13\x00\x52\x00\x53\x00\x16\x00\x17\x00\x52\x00\x54\x00\x3c\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x51\x00\x01\x00\x02\x00\x24\x00\x04\x00\x05\x00\x52\x00\x01\x00\x52\x00\x2a\x00\x2b\x00\x05\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x14\x00\x54\x00\x0d\x00\x14\x00\x18\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x23\x00\x13\x00\x3e\x00\x21\x00\x16\x00\x17\x00\x26\x00\x21\x00\x21\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x23\x00\x15\x00\x01\x00\x24\x00\x4f\x00\x50\x00\x05\x00\x52\x00\x53\x00\x2a\x00\x2b\x00\x3f\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x01\x00\x25\x00\x21\x00\x27\x00\x05\x00\x21\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x21\x00\x0d\x00\x3e\x00\x0f\x00\x10\x00\x01\x00\x3f\x00\x01\x00\x02\x00\x05\x00\x04\x00\x05\x00\x21\x00\x01\x00\x02\x00\x21\x00\x04\x00\x05\x00\x52\x00\x4f\x00\x50\x00\x44\x00\x52\x00\x53\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x11\x00\x4d\x00\x4e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x18\x00\x21\x00\x01\x00\x1a\x00\x01\x00\x02\x00\x05\x00\x04\x00\x05\x00\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x14\x00\x21\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x21\x00\x21\x00\x05\x00\x06\x00\x01\x00\x02\x00\x0c\x00\x04\x00\x05\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x18\x00\x14\x00\x05\x00\x06\x00\x01\x00\x02\x00\x0c\x00\x04\x00\x05\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x12\x00\x21\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x06\x00\x21\x00\x05\x00\x43\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x34\x00\x51\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x05\x00\x01\x00\x01\x00\x21\x00\x21\x00\x05\x00\x05\x00\x01\x00\x02\x00\x21\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x14\x00\x41\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x43\x00\x04\x00\x05\x00\x01\x00\x01\x00\x18\x00\x18\x00\x05\x00\x05\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x29\x00\x29\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x01\x00\x01\x00\x14\x00\x14\x00\x05\x00\x05\x00\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x0d\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x22\x00\x22\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x06\x00\x52\x00\x05\x00\x22\x00\x01\x00\x02\x00\x22\x00\x04\x00\x05\x00\x11\x00\x0d\x00\x43\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x14\x00\x18\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x01\x00\x05\x00\x18\x00\x18\x00\x05\x00\x43\x00\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\x11\x00\x05\x00\x41\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x14\x00\x18\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x18\x00\x04\x00\x05\x00\x43\x00\x18\x00\x14\x00\x18\x00\x14\x00\x07\x00\x01\x00\x02\x00\x08\x00\x04\x00\x05\x00\x11\x00\x09\x00\x0b\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\x00\x00\x00\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\x08\x00\x04\x00\x05\x00\x00\x00\x0b\x00\x0b\x00\x0b\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x1a\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\x1a\x00\x14\x00\x15\x00\x16\x00\x17\x00\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\xff\xff\x05\x00\x01\x00\x02\x00\x11\x00\x04\x00\x05\x00\x14\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\x1a\x00\x14\x00\x15\x00\xff\xff\xff\xff\x11\x00\xff\xff\x1a\x00\x14\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x1a\x00\xff\xff\x01\x00\x02\x00\x01\x00\x04\x00\x05\x00\xff\xff\x05\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x14\x00\x15\x00\x0d\x00\xff\xff\x0f\x00\x10\x00\x1a\x00\x14\x00\x15\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\x14\x00\x15\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\xff\xff\xff\xff\xff\xff\x14\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x14\x00\x1a\x00\xff\xff\xff\xff\x01\x00\x02\x00\x1a\x00\x04\x00\x05\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\x01\x00\x02\x00\xff\xff\x04\x00\x05\x00\xff\xff\xff\xff\x01\x00\x02\x00\x14\x00\x04\x00\x05\x00\xff\xff\xff\xff\x14\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x01\x00\xff\xff\xff\xff\xff\xff\x05\x00\x01\x00\xff\xff\xff\xff\xff\xff\x05\x00\xff\xff\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# happyTable :: HappyAddr -happyTable = HappyA# "\x00\x00\x50\x00\xdd\x00\x2a\x01\x2c\x00\x2d\x00\xc4\x00\xbc\x00\xec\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x82\x00\xa3\x00\x0f\x01\x34\x00\xbe\x00\xd8\x00\x4d\x00\x1c\x00\xa4\x00\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa2\x00\xbd\x00\xd5\x00\x66\x00\x67\x00\xde\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x4c\x00\xa6\x00\x44\x00\xa8\x00\x2b\x00\xa9\x00\x2b\x01\x2c\x00\x2d\x00\x69\x00\xb0\x00\xc5\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x63\x00\x4a\x00\x4b\x00\x34\x00\x4c\x00\x4d\x00\xff\xff\xd9\x00\xbf\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x25\x01\x3c\x00\x26\x01\x63\x00\xd6\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x82\x00\x43\x00\x44\x00\xa7\x00\x45\x00\x6e\x00\x03\x01\x64\x00\x64\x00\x46\x00\x47\x00\x48\x00\x80\x00\xd2\x00\x49\x00\xa6\x00\x64\x00\xd3\x00\x65\x00\x4a\x00\x4b\x00\x2b\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x63\x00\x4c\x00\x4c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x64\x00\x4c\x00\x65\x00\x34\x00\x1d\x00\x01\x01\x85\x00\x1c\x00\x1c\x01\x35\x00\x36\x00\x6a\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x6e\x00\x6f\x00\x6b\x00\x63\x00\x4c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xa7\x00\x43\x00\x44\x00\x69\x00\x45\x00\x4c\x00\xff\x00\x64\x00\xec\x00\x65\x00\x47\x00\x48\x00\xba\x00\x1c\x00\x1c\x00\xb7\x00\xff\xff\x82\x00\x83\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x1d\x01\x4c\x00\x11\x01\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x64\x00\x69\x00\x65\x00\x34\x00\x1c\x00\x6e\x00\x88\x00\xff\xff\x5e\x00\x35\x00\x36\x00\x64\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x5f\x00\xb4\x00\x60\x00\x61\x00\x4c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xb3\x00\x43\x00\x44\x00\xa8\x00\x4c\x00\xa9\x00\x6e\x00\xee\x00\xa3\x00\x1c\x00\x47\x00\x48\x00\x86\x00\x82\x00\x97\x00\xa4\x00\x87\x00\x64\x00\xbb\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\xae\x00\xba\xff\xab\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x1c\x00\xff\xff\x4c\x00\x34\x00\x82\x00\x8b\x00\xa5\x00\x1c\x00\xff\xff\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa2\x00\x1c\x00\x1d\x00\x69\x00\x1e\x00\x1f\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x9a\x00\x1c\x00\x44\x00\x1c\x00\x1c\x00\x5e\x00\x99\x00\x84\x00\x5e\x00\x21\x00\x22\x00\x55\x00\xba\xff\x9d\x00\x9e\x00\x53\x00\x5f\x00\xff\xff\x65\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x6e\x00\xfc\x00\x4c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x1c\x00\x1c\x00\x1d\x00\x34\x00\x1e\x00\x1f\x00\x4c\x00\x1c\x00\x80\x00\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa2\x00\x1c\x00\xf9\x00\xae\x00\x57\x00\x92\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x50\x00\x44\x00\x1c\x00\x2c\x00\x2d\x00\xff\xff\x5e\x00\x4c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x9c\x00\xa6\x00\x1c\x00\x34\x00\x4a\x00\x4b\x00\x91\x00\x4c\x00\x4d\x00\x35\x00\x36\x00\xf8\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x1c\x00\xc0\x00\xf7\x00\xc1\x00\x5e\x00\xf6\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xf5\x00\x5f\x00\x44\x00\x60\x00\xb5\x00\x1c\x00\x6e\x00\x1c\x00\x1d\x00\x90\x00\x1e\x00\x1f\x00\xf1\x00\x1c\x00\x1d\x00\xf0\x00\x1e\x00\x1f\x00\x4c\x00\x4a\x00\x4b\x00\xa7\x00\x4c\x00\x4d\x00\x1c\x00\x1d\x00\xa0\x00\x1e\x00\x1f\x00\x20\x00\xc2\x00\xc3\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x1c\x00\x1d\x00\x21\x00\x1e\x00\x1f\x00\xec\x00\xed\x00\x1c\x00\x4e\x00\x1c\x00\x1d\x00\x8c\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x20\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\xd0\x00\xb4\x00\x12\x01\x20\x00\x58\x00\x59\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x6a\x00\xeb\x00\xe0\x00\x82\x00\x89\x00\x1c\x00\x1d\x00\x8f\x00\x1e\x00\x1f\x00\x20\x00\x58\x00\xe9\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x20\x00\x58\x00\xe6\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x6a\x00\x16\x01\x13\x01\x82\x00\xed\x00\x1c\x00\x1d\x00\x34\x01\x1e\x00\x1f\x00\x20\x00\x58\x00\xda\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xdb\x00\x20\x00\x5b\x00\x0b\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x0a\x01\x1e\x00\x1f\x00\x1c\x00\x0d\x01\x0c\x01\x06\x01\x5e\x00\x1c\x00\x1c\x00\x1d\x00\x34\x01\x1e\x00\x1f\x00\x20\x00\x66\x00\x9b\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x4d\x00\x20\x00\x33\x01\x2d\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xb8\x00\x1c\x00\x1d\x00\x2c\x01\x1e\x00\x1f\x00\xd2\x00\x31\x01\x2f\x01\x23\x01\xd3\x00\x1b\x01\x1c\x00\x1d\x00\x1f\x01\x1e\x00\x1f\x00\x20\x00\x1e\x01\xd4\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xb1\x00\x20\x00\x43\x01\x42\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xa9\x00\x1c\x00\x1d\x00\x41\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x40\x01\x3e\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x3d\x01\x1e\x00\x1f\x00\x20\x00\x9a\x00\xe1\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x96\x00\x20\x00\x3a\x01\x38\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x95\x00\x1c\x00\x1d\x00\x52\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x4c\x00\x50\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x4e\x01\x1e\x00\x1f\x00\x20\x00\xe0\x00\xde\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x94\x00\x20\x00\x4d\x01\x4c\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x93\x00\x1c\x00\x1d\x00\x4b\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x4a\x01\x49\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x46\x01\x1e\x00\x1f\x00\x20\x00\xd6\x00\x07\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe8\x00\x20\x00\x45\x01\x59\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe7\x00\x1c\x00\x1d\x00\x58\x01\x1e\x00\x1f\x00\x5d\x01\x5f\x01\x5e\x01\x61\x01\x63\x01\x80\x00\x1c\x00\x1d\x00\x7e\x00\x1e\x00\x1f\x00\x20\x00\x7d\x00\x6c\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe2\x00\x20\x00\x8e\x00\x8d\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xd9\x00\x1c\x00\x1d\x00\x8a\x00\x1e\x00\x1f\x00\xfb\x00\xf3\x00\xf2\x00\xf1\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x19\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x18\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x17\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x16\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x0f\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x0d\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x08\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x06\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x04\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x03\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xfa\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xf9\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x31\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2f\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2d\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x27\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x26\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x23\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x21\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x20\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x1f\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x43\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3e\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3b\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3a\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x38\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x36\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x35\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x50\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x4e\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x47\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x46\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x56\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x53\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x52\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5b\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5f\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x61\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x51\x00\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xcf\x00\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xc6\x00\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xc5\x00\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x14\x01\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x13\x01\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x59\x01\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x55\x01\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x54\x01\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\x52\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\xe3\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\xce\x00\x00\x00\x53\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\xcd\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\x28\x01\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x54\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\xcc\x00\x00\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\xcb\x00\x5c\x00\x00\x00\x53\x00\x21\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x5d\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x56\x00\x00\x00\x00\x00\xb7\x00\x00\x00\x53\x00\x21\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x5d\x00\x21\x00\xca\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\xc9\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x21\x00\xc8\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\xc7\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x21\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\xe5\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x21\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\xe4\x00\xb0\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\xac\x00\x5e\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\xab\x00\x5e\x00\x5f\x00\x00\x00\x60\x00\x9f\x00\x1c\x00\xa0\x00\x00\x00\x5f\x00\x5e\x00\x60\x00\x01\x01\x1c\x00\x00\x00\x00\x00\x00\x00\x5e\x00\x5f\x00\x00\x00\x60\x00\xff\x00\x00\x00\x00\x00\x00\x00\x5f\x00\x00\x00\x60\x00\xfd\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# +happyTable = HappyA# "\x00\x00\x50\x00\xe3\x00\x36\x01\x2c\x00\x2d\x00\xca\x00\xc2\x00\xf2\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x85\x00\xa9\x00\x1b\x01\x34\x00\xc4\x00\xde\x00\x4d\x00\x1c\x00\xaa\x00\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa8\x00\xc3\x00\xdb\x00\x66\x00\x67\x00\xe4\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x4c\x00\xac\x00\x44\x00\xae\x00\x2b\x00\xaf\x00\x37\x01\x2c\x00\x2d\x00\x69\x00\xb6\x00\xcb\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x63\x00\x4a\x00\x4b\x00\x34\x00\x4c\x00\x4d\x00\xff\xff\xdf\x00\xc5\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x31\x01\x3c\x00\x32\x01\x63\x00\xdc\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x85\x00\x43\x00\x44\x00\xad\x00\x45\x00\x6e\x00\x0f\x01\x64\x00\x64\x00\x46\x00\x47\x00\x48\x00\x83\x00\xd8\x00\x49\x00\xac\x00\x64\x00\xd9\x00\x65\x00\x4a\x00\x4b\x00\x2b\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x63\x00\x4c\x00\x4c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x64\x00\x4c\x00\x65\x00\x34\x00\x1d\x00\x0d\x01\x88\x00\x1c\x00\x28\x01\x35\x00\x36\x00\x6a\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x6e\x00\x6f\x00\x6b\x00\x63\x00\x4c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xad\x00\x43\x00\x44\x00\x69\x00\x45\x00\x4c\x00\x08\x01\x64\x00\xf2\x00\x65\x00\x47\x00\x48\x00\xc0\x00\x1c\x00\x6e\x00\x8b\x00\xff\xff\x85\x00\x86\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x29\x01\x4c\x00\x1d\x01\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x64\x00\x69\x00\x65\x00\x34\x00\x1c\x00\x6e\x00\xf4\x00\xff\xff\x5e\x00\x35\x00\x36\x00\x64\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x5f\x00\x1c\x00\x60\x00\x61\x00\x4c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xbd\x00\x43\x00\x44\x00\xae\x00\x4c\x00\xaf\x00\x6e\x00\x05\x01\xa9\x00\x1c\x00\x47\x00\x48\x00\x89\x00\x85\x00\x9d\x00\xaa\x00\x8a\x00\x64\x00\xc1\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\xba\x00\xb7\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x1c\x00\xb9\x00\x4c\x00\x34\x00\x85\x00\x96\x00\xb4\x00\x1c\x00\xb1\x00\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa8\x00\x1c\x00\x1d\x00\x69\x00\x1e\x00\x1f\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xab\x00\x1c\x00\x44\x00\xa0\x00\x1c\x00\x5e\x00\xff\xff\xff\xff\x5e\x00\x21\x00\x22\x00\x55\x00\xb7\xff\xa3\x00\xa4\x00\x53\x00\x5f\x00\x9f\x00\x65\x00\x4a\x00\x4b\x00\x50\x00\x4c\x00\x4d\x00\x2c\x00\x2d\x00\x4c\x00\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x1c\x00\x1c\x00\x1d\x00\x34\x00\x1e\x00\x1f\x00\x4c\x00\x1c\x00\x4c\x00\x35\x00\x36\x00\x5e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\xa8\x00\xd8\x00\xff\xff\xb4\x00\x57\x00\xd9\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x02\x01\x50\x00\x44\x00\xda\x00\x2c\x00\x2d\x00\xff\x00\x01\x01\x00\x01\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\xfe\x00\xac\x00\x1c\x00\x34\x00\x4a\x00\x4b\x00\x87\x00\x4c\x00\x4d\x00\x35\x00\x36\x00\x6e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x1c\x00\xc6\x00\xfc\x00\xc7\x00\x5e\x00\xfb\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xfa\x00\x5f\x00\x44\x00\x60\x00\xbb\x00\x1c\x00\x6e\x00\x1c\x00\x1d\x00\x98\x00\x1e\x00\x1f\x00\xf7\x00\x1c\x00\x1d\x00\xf6\x00\x1e\x00\x1f\x00\x4c\x00\x4a\x00\x4b\x00\xad\x00\x4c\x00\x4d\x00\x1c\x00\x1d\x00\xa6\x00\x1e\x00\x1f\x00\x20\x00\xc8\x00\xc9\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x1c\x00\x1d\x00\x21\x00\x1e\x00\x1f\x00\xf2\x00\xf3\x00\x1c\x00\x4e\x00\x1c\x00\x1d\x00\x97\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x20\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\xd6\x00\xba\x00\xf1\x00\x20\x00\x58\x00\x59\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x6a\x00\xe6\x00\x22\x01\x85\x00\x94\x00\x1c\x00\x1d\x00\x92\x00\x1e\x00\x1f\x00\x20\x00\x58\x00\xef\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x20\x00\x58\x00\xec\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x6a\x00\x1f\x01\x1e\x01\x85\x00\x8e\x00\x1c\x00\x1d\x00\x40\x01\x1e\x00\x1f\x00\x20\x00\x58\x00\xe0\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe1\x00\x20\x00\x5b\x00\x19\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x85\x00\x8c\x00\x18\x01\x5e\x00\x17\x01\x1c\x00\x1d\x00\x12\x01\x1e\x00\x1f\x00\x20\x00\x66\x00\xa1\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x4d\x00\x20\x00\x16\x01\x1c\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xbe\x00\x1c\x00\x1d\x00\x40\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x3f\x01\x3d\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x3b\x01\x1e\x00\x1f\x00\x20\x00\xa2\x00\xa0\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xb7\x00\x20\x00\x38\x01\x39\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xaf\x00\x1c\x00\x1d\x00\x2f\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x4e\x01\x4d\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x27\x01\x1e\x00\x1f\x00\x20\x00\xe7\x00\xe6\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x9c\x00\x20\x00\x2b\x01\x2a\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x9b\x00\x1c\x00\x1d\x00\x4f\x01\x1e\x00\x1f\x00\x1c\x00\x1c\x00\x4c\x01\x4a\x01\x5e\x00\x5e\x00\x1c\x00\x1d\x00\x49\x01\x1e\x00\x1f\x00\x20\x00\xe4\x00\xdc\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x9a\x00\x20\x00\x46\x01\x44\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x99\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x85\x00\xf3\x00\x4c\x00\x5e\x00\x5e\x01\x1c\x00\x1d\x00\x5c\x01\x1e\x00\x1f\x00\x20\x00\x13\x01\x5a\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xee\x00\x20\x00\x59\x01\x58\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xed\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x1c\x00\x95\x00\x57\x01\x52\x01\x93\x00\x56\x01\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x20\x00\x8f\x00\x55\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe8\x00\x20\x00\x51\x01\x65\x01\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xdf\x00\x1c\x00\x1d\x00\x64\x01\x1e\x00\x1f\x00\x69\x01\x6b\x01\x6a\x01\x6d\x01\x6f\x01\x83\x00\x1c\x00\x1d\x00\x81\x00\x1e\x00\x1f\x00\x20\x00\x80\x00\x6c\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x25\x01\x20\x00\x91\x00\x90\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x24\x01\x1c\x00\x1d\x00\x8d\x00\x1e\x00\x1f\x00\x04\x01\xfc\x00\xf8\x00\xf7\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x23\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x22\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x1b\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x19\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x14\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x12\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x10\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x0f\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x0a\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x09\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x08\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x03\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x02\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3d\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3b\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x39\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x33\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x32\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2f\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2d\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2c\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x2b\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x4f\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x4a\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x47\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x46\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x44\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x42\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x41\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5c\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5a\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x53\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x52\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x62\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5f\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x5e\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x67\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x66\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x6b\x01\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x6d\x01\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x51\x00\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xd5\x00\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xcc\x00\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\xcb\x00\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x20\x01\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x1f\x01\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x65\x01\x27\x00\x20\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x61\x01\x27\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x20\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\x50\x00\x60\x01\x27\x00\x21\x00\x22\x00\x23\x00\x24\x00\x52\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\xe9\x00\x00\x00\x53\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x24\x00\xd4\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\xd3\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\x24\x00\x34\x01\x00\x00\x53\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\x22\x00\x23\x00\x54\x00\x00\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\xd2\x00\x00\x00\x00\x00\x53\x00\x21\x00\x22\x00\x23\x00\xd1\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x00\x00\x5e\x00\x1c\x00\x1d\x00\x5c\x00\x1e\x00\x1f\x00\x21\x00\x00\x00\x5f\x00\x00\x00\x60\x00\xa5\x00\x5d\x00\x21\x00\x56\x00\x00\x00\x00\x00\xbd\x00\x00\x00\x53\x00\x21\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x5d\x00\x00\x00\x1c\x00\x1d\x00\x1c\x00\x1e\x00\x1f\x00\x00\x00\x5e\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x21\x00\xd0\x00\x5f\x00\x00\x00\x60\x00\x0d\x01\x53\x00\x21\x00\xcf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x53\x00\x21\x00\xce\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x53\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\xcd\x00\x00\x00\x00\x00\x00\x00\x21\x00\x53\x00\x00\x00\x00\x00\x00\x00\x21\x00\xeb\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\xea\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x1c\x00\x1d\x00\x00\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\xb6\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\xb2\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x00\x00\x00\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x5e\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x5e\x00\x00\x00\x00\x00\x5f\x00\x00\x00\x60\x00\x0b\x01\x00\x00\x5f\x00\x00\x00\x60\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# -happyReduceArr = Happy_Data_Array.array (26, 143) [ +happyReduceArr = Happy_Data_Array.array (26, 146) [ (26 , happyReduce_26), (27 , happyReduce_27), (28 , happyReduce_28), @@ -418,10 +418,13 @@ happyReduceArr = Happy_Data_Array.array (26, 143) [ (140 , happyReduce_140), (141 , happyReduce_141), (142 , happyReduce_142), - (143 , happyReduce_143) + (143 , happyReduce_143), + (144 , happyReduce_144), + (145 , happyReduce_145), + (146 , happyReduce_146) ] -happy_n_terms = 82 :: Prelude.Int +happy_n_terms = 85 :: Prelude.Int happy_n_nonterms = 29 :: Prelude.Int happyReduce_26 = happySpecReduce_1 0# happyReduction_26 @@ -605,7 +608,7 @@ happyReduction_44 (happy_x_4 `HappyStk` case happyOut35 happy_x_2 of { (HappyWrap35 happy_var_2) -> case happyOut56 happy_x_4 of { (HappyWrap56 happy_var_4) -> happyIn38 - ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CommandAssume (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) + ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CommandDefineAssume (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} happyReduce_45 = happyReduce 4# 9# happyReduction_45 @@ -618,11 +621,50 @@ happyReduction_45 (happy_x_4 `HappyStk` case happyOut34 happy_x_2 of { (HappyWrap34 happy_var_2) -> case happyOut56 happy_x_4 of { (HappyWrap56 happy_var_4) -> happyIn38 - ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandVariable (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) + ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandDefineVariable (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} happyReduce_46 = happyReduce 4# 9# happyReduction_46 happyReduction_46 (happy_x_4 `HappyStk` + happy_x_3 `HappyStk` + happy_x_2 `HappyStk` + happy_x_1 `HappyStk` + happyRest) + = case happyOutTok happy_x_1 of { happy_var_1 -> + case happyOut35 happy_x_2 of { (HappyWrap35 happy_var_2) -> + case happyOut56 happy_x_4 of { (HappyWrap56 happy_var_4) -> + happyIn38 + ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandDefineVariables (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) + ) `HappyStk` happyRest}}} + +happyReduce_47 = happyReduce 4# 9# happyReduction_47 +happyReduction_47 (happy_x_4 `HappyStk` + happy_x_3 `HappyStk` + happy_x_2 `HappyStk` + happy_x_1 `HappyStk` + happyRest) + = case happyOutTok happy_x_1 of { happy_var_1 -> + case happyOut35 happy_x_2 of { (HappyWrap35 happy_var_2) -> + case happyOut56 happy_x_4 of { (HappyWrap56 happy_var_4) -> + happyIn38 + ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CommandAssume (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) + ) `HappyStk` happyRest}}} + +happyReduce_48 = happyReduce 4# 9# happyReduction_48 +happyReduction_48 (happy_x_4 `HappyStk` + happy_x_3 `HappyStk` + happy_x_2 `HappyStk` + happy_x_1 `HappyStk` + happyRest) + = case happyOutTok happy_x_1 of { happy_var_1 -> + case happyOut34 happy_x_2 of { (HappyWrap34 happy_var_2) -> + case happyOut56 happy_x_4 of { (HappyWrap56 happy_var_4) -> + happyIn38 + ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandVariable (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) + ) `HappyStk` happyRest}}} + +happyReduce_49 = happyReduce 4# 9# happyReduction_49 +happyReduction_49 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -634,8 +676,8 @@ happyReduction_46 (happy_x_4 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandVariables (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_47 = happyReduce 6# 9# happyReduction_47 -happyReduction_47 (happy_x_6 `HappyStk` +happyReduce_50 = happyReduce 6# 9# happyReduction_50 +happyReduction_50 (happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` @@ -650,8 +692,8 @@ happyReduction_47 (happy_x_6 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CommandSection (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4) (snd happy_var_6)) ) `HappyStk` happyRest}}}} -happyReduce_48 = happyReduce 8# 9# happyReduction_48 -happyReduction_48 (happy_x_8 `HappyStk` +happyReduce_51 = happyReduce 8# 9# happyReduction_51 +happyReduction_51 (happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` @@ -670,8 +712,8 @@ happyReduction_48 (happy_x_8 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CommandDefine (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_3) (snd happy_var_4) (snd happy_var_6) (snd happy_var_8)) ) `HappyStk` happyRest}}}}}} -happyReduce_49 = happyReduce 7# 9# happyReduction_49 -happyReduction_49 (happy_x_7 `HappyStk` +happyReduce_52 = happyReduce 7# 9# happyReduction_52 +happyReduction_52 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -688,8 +730,8 @@ happyReduction_49 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandDefineNoParams (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_3) (snd happy_var_5) (snd happy_var_7)) ) `HappyStk` happyRest}}}}} -happyReduce_50 = happyReduce 8# 9# happyReduction_50 -happyReduction_50 (happy_x_8 `HappyStk` +happyReduce_53 = happyReduce 8# 9# happyReduction_53 +happyReduction_53 (happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` @@ -708,8 +750,8 @@ happyReduction_50 (happy_x_8 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandDef (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_3) (snd happy_var_4) (snd happy_var_6) (snd happy_var_8)) ) `HappyStk` happyRest}}}}}} -happyReduce_51 = happyReduce 7# 9# happyReduction_51 -happyReduction_51 (happy_x_7 `HappyStk` +happyReduce_54 = happyReduce 7# 9# happyReduction_54 +happyReduction_54 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -726,13 +768,13 @@ happyReduction_51 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.commandDefNoParams (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_3) (snd happy_var_5) (snd happy_var_7)) ) `HappyStk` happyRest}}}}} -happyReduce_52 = happySpecReduce_0 10# happyReduction_52 -happyReduction_52 = happyIn39 +happyReduce_55 = happySpecReduce_0 10# happyReduction_55 +happyReduction_55 = happyIn39 ((Language.Rzk.Syntax.Abs.BNFC'NoPosition, []) ) -happyReduce_53 = happySpecReduce_3 10# happyReduction_53 -happyReduction_53 happy_x_3 +happyReduce_56 = happySpecReduce_3 10# happyReduction_56 +happyReduction_56 happy_x_3 happy_x_2 happy_x_1 = case happyOut38 happy_x_1 of { (HappyWrap38 happy_var_1) -> @@ -741,8 +783,8 @@ happyReduction_53 happy_x_3 ((fst happy_var_1, (:) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_54 = happyReduce 4# 11# happyReduction_54 -happyReduction_54 (happy_x_4 `HappyStk` +happyReduce_57 = happyReduce 4# 11# happyReduction_57 +happyReduction_57 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -753,39 +795,39 @@ happyReduction_54 (happy_x_4 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.DeclUsedVars (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3)) ) `HappyStk` happyRest}} -happyReduce_55 = happySpecReduce_0 11# happyReduction_55 -happyReduction_55 = happyIn40 +happyReduce_58 = happySpecReduce_0 11# happyReduction_58 +happyReduction_58 = happyIn40 ((Language.Rzk.Syntax.Abs.BNFC'NoPosition, Language.Rzk.Syntax.Abs.noDeclUsedVars Language.Rzk.Syntax.Abs.BNFC'NoPosition) ) -happyReduce_56 = happySpecReduce_0 12# happyReduction_56 -happyReduction_56 = happyIn41 +happyReduce_59 = happySpecReduce_0 12# happyReduction_59 +happyReduction_59 = happyIn41 ((Language.Rzk.Syntax.Abs.BNFC'NoPosition, Language.Rzk.Syntax.Abs.NoSectionName Language.Rzk.Syntax.Abs.BNFC'NoPosition) ) -happyReduce_57 = happySpecReduce_1 12# happyReduction_57 -happyReduction_57 happy_x_1 +happyReduce_60 = happySpecReduce_1 12# happyReduction_60 +happyReduction_60 happy_x_1 = case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) -> happyIn41 ((fst happy_var_1, Language.Rzk.Syntax.Abs.SomeSectionName (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_58 = happySpecReduce_1 13# happyReduction_58 -happyReduction_58 happy_x_1 +happyReduce_61 = happySpecReduce_1 13# happyReduction_61 +happyReduction_61 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn42 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.PatternUnit (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_59 = happySpecReduce_1 13# happyReduction_59 -happyReduction_59 happy_x_1 +happyReduce_62 = happySpecReduce_1 13# happyReduction_62 +happyReduction_62 happy_x_1 = case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) -> happyIn42 ((fst happy_var_1, Language.Rzk.Syntax.Abs.PatternVar (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_60 = happyReduce 5# 13# happyReduction_60 -happyReduction_60 (happy_x_5 `HappyStk` +happyReduce_63 = happyReduce 5# 13# happyReduction_63 +happyReduction_63 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -798,15 +840,15 @@ happyReduction_60 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.PatternPair (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_61 = happySpecReduce_1 14# happyReduction_61 -happyReduction_61 happy_x_1 +happyReduce_64 = happySpecReduce_1 14# happyReduction_64 +happyReduction_64 happy_x_1 = case happyOut42 happy_x_1 of { (HappyWrap42 happy_var_1) -> happyIn43 ((fst happy_var_1, (:[]) (snd happy_var_1)) )} -happyReduce_62 = happySpecReduce_2 14# happyReduction_62 -happyReduction_62 happy_x_2 +happyReduce_65 = happySpecReduce_2 14# happyReduction_65 +happyReduction_65 happy_x_2 happy_x_1 = case happyOut42 happy_x_1 of { (HappyWrap42 happy_var_1) -> case happyOut43 happy_x_2 of { (HappyWrap43 happy_var_2) -> @@ -814,15 +856,15 @@ happyReduction_62 happy_x_2 ((fst happy_var_1, (:) (snd happy_var_1) (snd happy_var_2)) )}} -happyReduce_63 = happySpecReduce_1 15# happyReduction_63 -happyReduction_63 happy_x_1 +happyReduce_66 = happySpecReduce_1 15# happyReduction_66 +happyReduction_66 happy_x_1 = case happyOut42 happy_x_1 of { (HappyWrap42 happy_var_1) -> happyIn44 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ParamPattern (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_64 = happyReduce 5# 15# happyReduction_64 -happyReduction_64 (happy_x_5 `HappyStk` +happyReduce_67 = happyReduce 5# 15# happyReduction_67 +happyReduction_67 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -835,8 +877,8 @@ happyReduction_64 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamPatternType (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_65 = happyReduce 7# 15# happyReduction_65 -happyReduction_65 (happy_x_7 `HappyStk` +happyReduce_68 = happyReduce 7# 15# happyReduction_68 +happyReduction_68 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -852,8 +894,8 @@ happyReduction_65 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamPatternShape (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4) (snd happy_var_6)) ) `HappyStk` happyRest}}}} -happyReduce_66 = happyReduce 7# 15# happyReduction_66 -happyReduction_66 (happy_x_7 `HappyStk` +happyReduce_69 = happyReduce 7# 15# happyReduction_69 +happyReduction_69 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -869,15 +911,15 @@ happyReduction_66 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamPatternShapeDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4) (snd happy_var_6)) ) `HappyStk` happyRest}}}} -happyReduce_67 = happySpecReduce_1 16# happyReduction_67 -happyReduction_67 happy_x_1 +happyReduce_70 = happySpecReduce_1 16# happyReduction_70 +happyReduction_70 happy_x_1 = case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) -> happyIn45 ((fst happy_var_1, (:[]) (snd happy_var_1)) )} -happyReduce_68 = happySpecReduce_2 16# happyReduction_68 -happyReduction_68 happy_x_2 +happyReduce_71 = happySpecReduce_2 16# happyReduction_71 +happyReduction_71 happy_x_2 happy_x_1 = case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) -> case happyOut45 happy_x_2 of { (HappyWrap45 happy_var_2) -> @@ -885,15 +927,15 @@ happyReduction_68 happy_x_2 ((fst happy_var_1, (:) (snd happy_var_1) (snd happy_var_2)) )}} -happyReduce_69 = happySpecReduce_1 17# happyReduction_69 -happyReduction_69 happy_x_1 +happyReduce_72 = happySpecReduce_1 17# happyReduction_72 +happyReduction_72 happy_x_1 = case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> happyIn46 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ParamType (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_70 = happyReduce 5# 17# happyReduction_70 -happyReduction_70 (happy_x_5 `HappyStk` +happyReduce_73 = happyReduce 5# 17# happyReduction_73 +happyReduction_73 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -906,8 +948,8 @@ happyReduction_70 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamTermType (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_71 = happyReduce 7# 17# happyReduction_71 -happyReduction_71 (happy_x_7 `HappyStk` +happyReduce_74 = happyReduce 7# 17# happyReduction_74 +happyReduction_74 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -923,8 +965,8 @@ happyReduction_71 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamTermShape (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4) (snd happy_var_6)) ) `HappyStk` happyRest}}}} -happyReduce_72 = happyReduce 5# 17# happyReduction_72 -happyReduction_72 (happy_x_5 `HappyStk` +happyReduce_75 = happyReduce 5# 17# happyReduction_75 +happyReduction_75 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -937,8 +979,8 @@ happyReduction_72 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamTermTypeDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_73 = happyReduce 9# 17# happyReduction_73 -happyReduction_73 (happy_x_9 `HappyStk` +happyReduce_76 = happyReduce 9# 17# happyReduction_76 +happyReduction_76 (happy_x_9 `HappyStk` happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` @@ -956,8 +998,8 @@ happyReduction_73 (happy_x_9 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ParamVarShapeDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_8)) ) `HappyStk` happyRest}}}} -happyReduce_74 = happyReduce 7# 17# happyReduction_74 -happyReduction_74 (happy_x_7 `HappyStk` +happyReduce_77 = happyReduce 7# 17# happyReduction_77 +happyReduction_77 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -973,8 +1015,8 @@ happyReduction_74 (happy_x_7 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.paramVarShapeDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4) (snd happy_var_6)) ) `HappyStk` happyRest}}}} -happyReduce_75 = happySpecReduce_3 18# happyReduction_75 -happyReduction_75 happy_x_3 +happyReduce_78 = happySpecReduce_3 18# happyReduction_78 +happyReduction_78 happy_x_3 happy_x_2 happy_x_1 = case happyOut56 happy_x_1 of { (HappyWrap56 happy_var_1) -> @@ -983,8 +1025,8 @@ happyReduction_75 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.Restriction (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_76 = happySpecReduce_3 18# happyReduction_76 -happyReduction_76 happy_x_3 +happyReduce_79 = happySpecReduce_3 18# happyReduction_79 +happyReduction_79 happy_x_3 happy_x_2 happy_x_1 = case happyOut56 happy_x_1 of { (HappyWrap56 happy_var_1) -> @@ -993,15 +1035,15 @@ happyReduction_76 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_Restriction (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_77 = happySpecReduce_1 19# happyReduction_77 -happyReduction_77 happy_x_1 +happyReduce_80 = happySpecReduce_1 19# happyReduction_80 +happyReduction_80 happy_x_1 = case happyOut47 happy_x_1 of { (HappyWrap47 happy_var_1) -> happyIn48 ((fst happy_var_1, (:[]) (snd happy_var_1)) )} -happyReduce_78 = happySpecReduce_3 19# happyReduction_78 -happyReduction_78 happy_x_3 +happyReduce_81 = happySpecReduce_3 19# happyReduction_81 +happyReduction_81 happy_x_3 happy_x_2 happy_x_1 = case happyOut47 happy_x_1 of { (HappyWrap47 happy_var_1) -> @@ -1010,85 +1052,85 @@ happyReduction_78 happy_x_3 ((fst happy_var_1, (:) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_79 = happySpecReduce_1 20# happyReduction_79 -happyReduction_79 happy_x_1 +happyReduce_82 = happySpecReduce_1 20# happyReduction_82 +happyReduction_82 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Universe (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_80 = happySpecReduce_1 20# happyReduction_80 -happyReduction_80 happy_x_1 +happyReduce_83 = happySpecReduce_1 20# happyReduction_83 +happyReduction_83 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.UniverseCube (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_81 = happySpecReduce_1 20# happyReduction_81 -happyReduction_81 happy_x_1 +happyReduce_84 = happySpecReduce_1 20# happyReduction_84 +happyReduction_84 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.UniverseTope (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_82 = happySpecReduce_1 20# happyReduction_82 -happyReduction_82 happy_x_1 +happyReduce_85 = happySpecReduce_1 20# happyReduction_85 +happyReduction_85 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CubeUnit (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_83 = happySpecReduce_1 20# happyReduction_83 -happyReduction_83 happy_x_1 +happyReduce_86 = happySpecReduce_1 20# happyReduction_86 +happyReduction_86 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.CubeUnitStar (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_84 = happySpecReduce_1 20# happyReduction_84 -happyReduction_84 happy_x_1 +happyReduce_87 = happySpecReduce_1 20# happyReduction_87 +happyReduction_87 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Cube2 (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_85 = happySpecReduce_1 20# happyReduction_85 -happyReduction_85 happy_x_1 +happyReduce_88 = happySpecReduce_1 20# happyReduction_88 +happyReduction_88 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Cube2_0 (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_86 = happySpecReduce_1 20# happyReduction_86 -happyReduction_86 happy_x_1 +happyReduce_89 = happySpecReduce_1 20# happyReduction_89 +happyReduction_89 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Cube2_1 (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_87 = happySpecReduce_1 20# happyReduction_87 -happyReduction_87 happy_x_1 +happyReduce_90 = happySpecReduce_1 20# happyReduction_90 +happyReduction_90 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.TopeTop (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_88 = happySpecReduce_1 20# happyReduction_88 -happyReduction_88 happy_x_1 +happyReduce_91 = happySpecReduce_1 20# happyReduction_91 +happyReduction_91 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.TopeBottom (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_89 = happySpecReduce_1 20# happyReduction_89 -happyReduction_89 happy_x_1 +happyReduce_92 = happySpecReduce_1 20# happyReduction_92 +happyReduction_92 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.RecBottom (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_90 = happyReduce 4# 20# happyReduction_90 -happyReduction_90 (happy_x_4 `HappyStk` +happyReduce_93 = happyReduce 4# 20# happyReduction_93 +happyReduction_93 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -1099,8 +1141,8 @@ happyReduction_90 (happy_x_4 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.RecOr (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3)) ) `HappyStk` happyRest}} -happyReduce_91 = happyReduce 10# 20# happyReduction_91 -happyReduction_91 (happy_x_10 `HappyStk` +happyReduce_94 = happyReduce 10# 20# happyReduction_94 +happyReduction_94 (happy_x_10 `HappyStk` happy_x_9 `HappyStk` happy_x_8 `HappyStk` happy_x_7 `HappyStk` @@ -1120,15 +1162,15 @@ happyReduction_91 (happy_x_10 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.RecOrDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_7) (snd happy_var_9)) ) `HappyStk` happyRest}}}}} -happyReduce_92 = happySpecReduce_1 20# happyReduction_92 -happyReduction_92 happy_x_1 +happyReduce_95 = happySpecReduce_1 20# happyReduction_95 +happyReduction_95 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.TypeUnit (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_93 = happyReduce 5# 20# happyReduction_93 -happyReduction_93 (happy_x_5 `HappyStk` +happyReduce_96 = happyReduce 5# 20# happyReduction_96 +happyReduction_96 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -1141,8 +1183,8 @@ happyReduction_93 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.TypeExtensionDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_94 = happyReduce 5# 20# happyReduction_94 -happyReduction_94 (happy_x_5 `HappyStk` +happyReduce_97 = happyReduce 5# 20# happyReduction_97 +happyReduction_97 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -1155,22 +1197,22 @@ happyReduction_94 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Pair (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_95 = happySpecReduce_1 20# happyReduction_95 -happyReduction_95 happy_x_1 +happyReduce_98 = happySpecReduce_1 20# happyReduction_98 +happyReduction_98 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Unit (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_96 = happySpecReduce_1 20# happyReduction_96 -happyReduction_96 happy_x_1 +happyReduce_99 = happySpecReduce_1 20# happyReduction_99 +happyReduction_99 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Refl (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_97 = happySpecReduce_3 20# happyReduction_97 -happyReduction_97 happy_x_3 +happyReduce_100 = happySpecReduce_3 20# happyReduction_100 +happyReduction_100 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> @@ -1179,8 +1221,8 @@ happyReduction_97 happy_x_3 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ReflTerm (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2)) )}} -happyReduce_98 = happyReduce 5# 20# happyReduction_98 -happyReduction_98 (happy_x_5 `HappyStk` +happyReduce_101 = happyReduce 5# 20# happyReduction_101 +happyReduction_101 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -1193,8 +1235,8 @@ happyReduction_98 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ReflTermType (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_99 = happyReduce 14# 20# happyReduction_99 -happyReduction_99 (happy_x_14 `HappyStk` +happyReduce_102 = happyReduce 14# 20# happyReduction_102 +happyReduction_102 (happy_x_14 `HappyStk` happy_x_13 `HappyStk` happy_x_12 `HappyStk` happy_x_11 `HappyStk` @@ -1220,22 +1262,22 @@ happyReduction_99 (happy_x_14 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.IdJ (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_7) (snd happy_var_9) (snd happy_var_11) (snd happy_var_13)) ) `HappyStk` happyRest}}}}}}} -happyReduce_100 = happySpecReduce_1 20# happyReduction_100 -happyReduction_100 happy_x_1 +happyReduce_103 = happySpecReduce_1 20# happyReduction_103 +happyReduction_103 happy_x_1 = case happyOut33 happy_x_1 of { (HappyWrap33 happy_var_1) -> happyIn49 ((fst happy_var_1, Language.Rzk.Syntax.Abs.Hole (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_101 = happySpecReduce_1 20# happyReduction_101 -happyReduction_101 happy_x_1 +happyReduce_104 = happySpecReduce_1 20# happyReduction_104 +happyReduction_104 happy_x_1 = case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) -> happyIn49 ((fst happy_var_1, Language.Rzk.Syntax.Abs.Var (fst happy_var_1) (snd happy_var_1)) )} -happyReduce_102 = happySpecReduce_3 20# happyReduction_102 -happyReduction_102 happy_x_3 +happyReduce_105 = happySpecReduce_3 20# happyReduction_105 +happyReduction_105 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> @@ -1244,43 +1286,43 @@ happyReduction_102 happy_x_3 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), (snd happy_var_2)) )}} -happyReduce_103 = happySpecReduce_1 20# happyReduction_103 -happyReduction_103 happy_x_1 +happyReduce_106 = happySpecReduce_1 20# happyReduction_106 +happyReduction_106 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_CubeUnitStar (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_104 = happySpecReduce_1 20# happyReduction_104 -happyReduction_104 happy_x_1 +happyReduce_107 = happySpecReduce_1 20# happyReduction_107 +happyReduction_107 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_Cube2_0 (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_105 = happySpecReduce_1 20# happyReduction_105 -happyReduction_105 happy_x_1 +happyReduce_108 = happySpecReduce_1 20# happyReduction_108 +happyReduction_108 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_Cube2_1 (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_106 = happySpecReduce_1 20# happyReduction_106 -happyReduction_106 happy_x_1 +happyReduce_109 = happySpecReduce_1 20# happyReduction_109 +happyReduction_109 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_TopeTop (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_107 = happySpecReduce_1 20# happyReduction_107 -happyReduction_107 happy_x_1 +happyReduce_110 = happySpecReduce_1 20# happyReduction_110 +happyReduction_110 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn49 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_TopeBottom (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1))) )} -happyReduce_108 = happyReduce 5# 20# happyReduction_108 -happyReduction_108 (happy_x_5 `HappyStk` +happyReduce_111 = happyReduce 5# 20# happyReduction_111 +happyReduction_111 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -1293,8 +1335,8 @@ happyReduction_108 (happy_x_5 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_TypeExtensionDeprecated (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_109 = happySpecReduce_3 21# happyReduction_109 -happyReduction_109 happy_x_3 +happyReduce_112 = happySpecReduce_3 21# happyReduction_112 +happyReduction_112 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1303,15 +1345,15 @@ happyReduction_109 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.CubeProduct (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_110 = happySpecReduce_1 21# happyReduction_110 -happyReduction_110 happy_x_1 +happyReduce_113 = happySpecReduce_1 21# happyReduction_113 +happyReduction_113 happy_x_1 = case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> happyIn50 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_111 = happySpecReduce_3 21# happyReduction_111 -happyReduction_111 happy_x_3 +happyReduce_114 = happySpecReduce_3 21# happyReduction_114 +happyReduction_114 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1320,8 +1362,8 @@ happyReduction_111 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ascii_CubeProduct (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_112 = happySpecReduce_3 22# happyReduction_112 -happyReduction_112 happy_x_3 +happyReduce_115 = happySpecReduce_3 22# happyReduction_115 +happyReduction_115 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1330,8 +1372,8 @@ happyReduction_112 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TopeEQ (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_113 = happySpecReduce_3 22# happyReduction_113 -happyReduction_113 happy_x_3 +happyReduce_116 = happySpecReduce_3 22# happyReduction_116 +happyReduction_116 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1340,15 +1382,15 @@ happyReduction_113 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TopeLEQ (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_114 = happySpecReduce_1 22# happyReduction_114 -happyReduction_114 happy_x_1 +happyReduce_117 = happySpecReduce_1 22# happyReduction_117 +happyReduction_117 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> happyIn51 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_115 = happySpecReduce_3 22# happyReduction_115 -happyReduction_115 happy_x_3 +happyReduce_118 = happySpecReduce_3 22# happyReduction_118 +happyReduction_118 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1357,8 +1399,8 @@ happyReduction_115 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_TopeEQ (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_116 = happySpecReduce_3 22# happyReduction_116 -happyReduction_116 happy_x_3 +happyReduce_119 = happySpecReduce_3 22# happyReduction_119 +happyReduction_119 happy_x_3 happy_x_2 happy_x_1 = case happyOut50 happy_x_1 of { (HappyWrap50 happy_var_1) -> @@ -1367,8 +1409,8 @@ happyReduction_116 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_TopeLEQ (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_117 = happySpecReduce_3 23# happyReduction_117 -happyReduction_117 happy_x_3 +happyReduce_120 = happySpecReduce_3 23# happyReduction_120 +happyReduction_120 happy_x_3 happy_x_2 happy_x_1 = case happyOut51 happy_x_1 of { (HappyWrap51 happy_var_1) -> @@ -1377,15 +1419,15 @@ happyReduction_117 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TopeAnd (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_118 = happySpecReduce_1 23# happyReduction_118 -happyReduction_118 happy_x_1 +happyReduce_121 = happySpecReduce_1 23# happyReduction_121 +happyReduction_121 happy_x_1 = case happyOut51 happy_x_1 of { (HappyWrap51 happy_var_1) -> happyIn52 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_119 = happySpecReduce_3 23# happyReduction_119 -happyReduction_119 happy_x_3 +happyReduce_122 = happySpecReduce_3 23# happyReduction_122 +happyReduction_122 happy_x_3 happy_x_2 happy_x_1 = case happyOut51 happy_x_1 of { (HappyWrap51 happy_var_1) -> @@ -1394,8 +1436,8 @@ happyReduction_119 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_TopeAnd (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_120 = happySpecReduce_3 24# happyReduction_120 -happyReduction_120 happy_x_3 +happyReduce_123 = happySpecReduce_3 24# happyReduction_123 +happyReduction_123 happy_x_3 happy_x_2 happy_x_1 = case happyOut52 happy_x_1 of { (HappyWrap52 happy_var_1) -> @@ -1404,15 +1446,15 @@ happyReduction_120 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TopeOr (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_121 = happySpecReduce_1 24# happyReduction_121 -happyReduction_121 happy_x_1 +happyReduce_124 = happySpecReduce_1 24# happyReduction_124 +happyReduction_124 happy_x_1 = case happyOut52 happy_x_1 of { (HappyWrap52 happy_var_1) -> happyIn53 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_122 = happySpecReduce_3 24# happyReduction_122 -happyReduction_122 happy_x_3 +happyReduce_125 = happySpecReduce_3 24# happyReduction_125 +happyReduction_125 happy_x_3 happy_x_2 happy_x_1 = case happyOut52 happy_x_1 of { (HappyWrap52 happy_var_1) -> @@ -1421,8 +1463,8 @@ happyReduction_122 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_TopeOr (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_123 = happySpecReduce_3 25# happyReduction_123 -happyReduction_123 happy_x_3 +happyReduce_126 = happySpecReduce_3 25# happyReduction_126 +happyReduction_126 happy_x_3 happy_x_2 happy_x_1 = case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) -> @@ -1431,8 +1473,8 @@ happyReduction_123 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TypeFun (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_124 = happyReduce 8# 25# happyReduction_124 -happyReduction_124 (happy_x_8 `HappyStk` +happyReduce_127 = happyReduce 8# 25# happyReduction_127 +happyReduction_127 (happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` @@ -1449,8 +1491,8 @@ happyReduction_124 (happy_x_8 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.TypeSigma (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_8)) ) `HappyStk` happyRest}}}} -happyReduce_125 = happyReduce 5# 25# happyReduction_125 -happyReduction_125 (happy_x_5 `HappyStk` +happyReduce_128 = happyReduce 5# 25# happyReduction_128 +happyReduction_128 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -1463,8 +1505,8 @@ happyReduction_125 (happy_x_5 `HappyStk` ((fst happy_var_1, Language.Rzk.Syntax.Abs.TypeId (fst happy_var_1) (snd happy_var_1) (snd happy_var_3) (snd happy_var_5)) ) `HappyStk` happyRest}}} -happyReduce_126 = happySpecReduce_3 25# happyReduction_126 -happyReduction_126 happy_x_3 +happyReduce_129 = happySpecReduce_3 25# happyReduction_129 +happyReduction_129 happy_x_3 happy_x_2 happy_x_1 = case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) -> @@ -1473,8 +1515,8 @@ happyReduction_126 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TypeIdSimple (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_127 = happyReduce 4# 25# happyReduction_127 -happyReduction_127 (happy_x_4 `HappyStk` +happyReduce_130 = happyReduce 4# 25# happyReduction_130 +happyReduction_130 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -1486,15 +1528,15 @@ happyReduction_127 (happy_x_4 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Lambda (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_128 = happySpecReduce_1 25# happyReduction_128 -happyReduction_128 happy_x_1 +happyReduce_131 = happySpecReduce_1 25# happyReduction_131 +happyReduction_131 happy_x_1 = case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) -> happyIn54 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_129 = happySpecReduce_3 25# happyReduction_129 -happyReduction_129 happy_x_3 +happyReduce_132 = happySpecReduce_3 25# happyReduction_132 +happyReduction_132 happy_x_3 happy_x_2 happy_x_1 = case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) -> @@ -1503,8 +1545,8 @@ happyReduction_129 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.ASCII_TypeFun (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_130 = happyReduce 8# 25# happyReduction_130 -happyReduction_130 (happy_x_8 `HappyStk` +happyReduce_133 = happyReduce 8# 25# happyReduction_133 +happyReduction_133 (happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` @@ -1521,8 +1563,8 @@ happyReduction_130 (happy_x_8 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_TypeSigma (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_8)) ) `HappyStk` happyRest}}}} -happyReduce_131 = happyReduce 4# 25# happyReduction_131 -happyReduction_131 (happy_x_4 `HappyStk` +happyReduce_134 = happyReduce 4# 25# happyReduction_134 +happyReduction_134 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -1534,8 +1576,8 @@ happyReduction_131 (happy_x_4 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_Lambda (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2) (snd happy_var_4)) ) `HappyStk` happyRest}}} -happyReduce_132 = happyReduce 8# 25# happyReduction_132 -happyReduction_132 (happy_x_8 `HappyStk` +happyReduce_135 = happyReduce 8# 25# happyReduction_135 +happyReduction_135 (happy_x_8 `HappyStk` happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` @@ -1552,8 +1594,8 @@ happyReduction_132 (happy_x_8 `HappyStk` ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.unicode_TypeSigmaAlt (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_3) (snd happy_var_5) (snd happy_var_8)) ) `HappyStk` happyRest}}}} -happyReduce_133 = happyReduce 4# 26# happyReduction_133 -happyReduction_133 (happy_x_4 `HappyStk` +happyReduce_136 = happyReduce 4# 26# happyReduction_136 +happyReduction_136 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -1564,8 +1606,8 @@ happyReduction_133 (happy_x_4 `HappyStk` ((fst happy_var_1, Language.Rzk.Syntax.Abs.TypeRestricted (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) ) `HappyStk` happyRest}} -happyReduce_134 = happySpecReduce_2 26# happyReduction_134 -happyReduction_134 happy_x_2 +happyReduce_137 = happySpecReduce_2 26# happyReduction_137 +happyReduction_137 happy_x_2 happy_x_1 = case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> case happyOut49 happy_x_2 of { (HappyWrap49 happy_var_2) -> @@ -1573,8 +1615,8 @@ happyReduction_134 happy_x_2 ((fst happy_var_1, Language.Rzk.Syntax.Abs.App (fst happy_var_1) (snd happy_var_1) (snd happy_var_2)) )}} -happyReduce_135 = happySpecReduce_2 26# happyReduction_135 -happyReduction_135 happy_x_2 +happyReduce_138 = happySpecReduce_2 26# happyReduction_138 +happyReduction_138 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> case happyOut49 happy_x_2 of { (HappyWrap49 happy_var_2) -> @@ -1582,8 +1624,8 @@ happyReduction_135 happy_x_2 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.First (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2)) )}} -happyReduce_136 = happySpecReduce_2 26# happyReduction_136 -happyReduction_136 happy_x_2 +happyReduce_139 = happySpecReduce_2 26# happyReduction_139 +happyReduction_139 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> case happyOut49 happy_x_2 of { (HappyWrap49 happy_var_2) -> @@ -1591,15 +1633,15 @@ happyReduction_136 happy_x_2 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.Second (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2)) )}} -happyReduce_137 = happySpecReduce_1 26# happyReduction_137 -happyReduction_137 happy_x_1 +happyReduce_140 = happySpecReduce_1 26# happyReduction_140 +happyReduction_140 happy_x_1 = case happyOut49 happy_x_1 of { (HappyWrap49 happy_var_1) -> happyIn55 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_138 = happySpecReduce_2 26# happyReduction_138 -happyReduction_138 happy_x_2 +happyReduce_141 = happySpecReduce_2 26# happyReduction_141 +happyReduction_141 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> case happyOut49 happy_x_2 of { (HappyWrap49 happy_var_2) -> @@ -1607,8 +1649,8 @@ happyReduction_138 happy_x_2 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_First (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2)) )}} -happyReduce_139 = happySpecReduce_2 26# happyReduction_139 -happyReduction_139 happy_x_2 +happyReduce_142 = happySpecReduce_2 26# happyReduction_142 +happyReduction_142 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> case happyOut49 happy_x_2 of { (HappyWrap49 happy_var_2) -> @@ -1616,8 +1658,8 @@ happyReduction_139 happy_x_2 ((uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1), Language.Rzk.Syntax.Abs.ASCII_Second (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol happy_var_1)) (snd happy_var_2)) )}} -happyReduce_140 = happySpecReduce_3 27# happyReduction_140 -happyReduction_140 happy_x_3 +happyReduce_143 = happySpecReduce_3 27# happyReduction_143 +happyReduction_143 happy_x_3 happy_x_2 happy_x_1 = case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) -> @@ -1626,22 +1668,22 @@ happyReduction_140 happy_x_3 ((fst happy_var_1, Language.Rzk.Syntax.Abs.TypeAsc (fst happy_var_1) (snd happy_var_1) (snd happy_var_3)) )}} -happyReduce_141 = happySpecReduce_1 27# happyReduction_141 -happyReduction_141 happy_x_1 +happyReduce_144 = happySpecReduce_1 27# happyReduction_144 +happyReduction_144 happy_x_1 = case happyOut54 happy_x_1 of { (HappyWrap54 happy_var_1) -> happyIn56 ((fst happy_var_1, (snd happy_var_1)) )} -happyReduce_142 = happySpecReduce_1 28# happyReduction_142 -happyReduction_142 happy_x_1 +happyReduce_145 = happySpecReduce_1 28# happyReduction_145 +happyReduction_145 happy_x_1 = case happyOut56 happy_x_1 of { (HappyWrap56 happy_var_1) -> happyIn57 ((fst happy_var_1, (:[]) (snd happy_var_1)) )} -happyReduce_143 = happySpecReduce_3 28# happyReduction_143 -happyReduction_143 happy_x_3 +happyReduce_146 = happySpecReduce_3 28# happyReduction_146 +happyReduction_146 happy_x_3 happy_x_2 happy_x_1 = case happyOut56 happy_x_1 of { (HappyWrap56 happy_var_1) -> @@ -1651,7 +1693,7 @@ happyReduction_143 happy_x_3 )}} happyNewToken action sts stk [] = - happyDoAction 81# notHappyAtAll action sts stk [] + happyDoAction 84# notHappyAtAll action sts stk [] happyNewToken action sts stk (tk:tks) = let cont i = happyDoAction i tk action sts stk tks in @@ -1733,13 +1775,16 @@ happyNewToken action sts stk (tk:tks) = PT _ (TS _ 75) -> cont 75#; PT _ (TS _ 76) -> cont 76#; PT _ (TS _ 77) -> cont 77#; - PT _ (TL _) -> cont 78#; - PT _ (T_VarIdentToken _) -> cont 79#; - PT _ (T_HoleIdentToken _) -> cont 80#; + PT _ (TS _ 78) -> cont 78#; + PT _ (TS _ 79) -> cont 79#; + PT _ (TS _ 80) -> cont 80#; + PT _ (TL _) -> cont 81#; + PT _ (T_VarIdentToken _) -> cont 82#; + PT _ (T_HoleIdentToken _) -> cont 83#; _ -> happyError' ((tk:tks), []) } -happyError_ explist 81# tk tks = happyError' (tks, explist) +happyError_ explist 84# tk tks = happyError' (tks, explist) happyError_ explist _ tk tks = happyError' ((tk:tks), explist) happyThen :: () => Err a -> (a -> Err b) -> Err b diff --git a/rzk/src/Language/Rzk/Syntax/Par.info b/rzk/src/Language/Rzk/Syntax/Par.info index 925d8d6cc..870f2f002 100644 --- a/rzk/src/Language/Rzk/Syntax/Par.info +++ b/rzk/src/Language/Rzk/Syntax/Par.info @@ -50,106 +50,109 @@ Grammar Command -> '#compute-nf' Term (41) Command -> '#postulate' VarIdent DeclUsedVars ListParam ':' Term (42) Command -> '#postulate' VarIdent DeclUsedVars ':' Term (43) - Command -> '#assume' ListVarIdent ':' Term (44) - Command -> '#variable' VarIdent ':' Term (45) - Command -> '#variables' ListVarIdent ':' Term (46) - Command -> '#section' SectionName ';' ListCommand '#end' SectionName (47) - Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' Term (48) - Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' Term (49) - Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' Term (50) - Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' Term (51) - ListCommand -> (52) - ListCommand -> Command ';' ListCommand (53) - DeclUsedVars -> 'uses' '(' ListVarIdent ')' (54) - DeclUsedVars -> (55) - SectionName -> (56) - SectionName -> VarIdent (57) - Pattern -> 'unit' (58) - Pattern -> VarIdent (59) - Pattern -> '(' Pattern ',' Pattern ')' (60) - ListPattern -> Pattern (61) - ListPattern -> Pattern ListPattern (62) - Param -> Pattern (63) - Param -> '(' ListPattern ':' Term ')' (64) - Param -> '(' ListPattern ':' Term '|' Term ')' (65) - Param -> '{' Pattern ':' Term '|' Term '}' (66) - ListParam -> Param (67) - ListParam -> Param ListParam (68) - ParamDecl -> Term6 (69) - ParamDecl -> '(' Term ':' Term ')' (70) - ParamDecl -> '(' Term ':' Term '|' Term ')' (71) - ParamDecl -> '{' Pattern ':' Term '}' (72) - ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term '}' (73) - ParamDecl -> '{' Pattern ':' Term '|' Term '}' (74) - Restriction -> Term '↦' Term (75) - Restriction -> Term '|->' Term (76) - ListRestriction -> Restriction (77) - ListRestriction -> Restriction ',' ListRestriction (78) - Term7 -> 'U' (79) - Term7 -> 'CUBE' (80) - Term7 -> 'TOPE' (81) - Term7 -> '1' (82) - Term7 -> '*₁' (83) - Term7 -> '2' (84) - Term7 -> '0₂' (85) - Term7 -> '1₂' (86) - Term7 -> '⊤' (87) - Term7 -> '⊥' (88) - Term7 -> 'recBOT' (89) - Term7 -> 'recOR' '(' ListRestriction ')' (90) - Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term ')' (91) - Term7 -> 'Unit' (92) - Term7 -> '<' ParamDecl '→' Term '>' (93) - Term7 -> '(' Term ',' Term ')' (94) - Term7 -> 'unit' (95) - Term7 -> 'refl' (96) - Term7 -> 'refl_{' Term '}' (97) - Term7 -> 'refl_{' Term ':' Term '}' (98) - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (99) - Term7 -> HoleIdent (100) - Term7 -> VarIdent (101) - Term7 -> '(' Term ')' (102) - Term7 -> '*_1' (103) - Term7 -> '0_2' (104) - Term7 -> '1_2' (105) - Term7 -> 'TOP' (106) - Term7 -> 'BOT' (107) - Term7 -> '<' ParamDecl '->' Term '>' (108) - Term5 -> Term5 '×' Term6 (109) - Term5 -> Term6 (110) - Term5 -> Term5 '*' Term6 (111) - Term4 -> Term5 '≡' Term5 (112) - Term4 -> Term5 '≤' Term5 (113) - Term4 -> Term5 (114) - Term4 -> Term5 '===' Term5 (115) - Term4 -> Term5 '<=' Term5 (116) - Term3 -> Term4 '∧' Term3 (117) - Term3 -> Term4 (118) - Term3 -> Term4 '/\\' Term3 (119) - Term2 -> Term3 '∨' Term2 (120) - Term2 -> Term3 (121) - Term2 -> Term3 '\\/' Term2 (122) - Term1 -> ParamDecl '→' Term1 (123) - Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' Term1 (124) - Term1 -> Term2 '=_{' Term '}' Term2 (125) - Term1 -> Term2 '=' Term2 (126) - Term1 -> '\\' ListParam '→' Term1 (127) - Term1 -> Term2 (128) - Term1 -> ParamDecl '->' Term1 (129) - Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' Term1 (130) - Term1 -> '\\' ListParam '->' Term1 (131) - Term1 -> '∑' '(' Pattern ':' Term ')' ',' Term1 (132) - Term6 -> Term6 '[' ListRestriction ']' (133) - Term6 -> Term6 Term7 (134) - Term6 -> 'π₁' Term7 (135) - Term6 -> 'π₂' Term7 (136) - Term6 -> Term7 (137) - Term6 -> 'first' Term7 (138) - Term6 -> 'second' Term7 (139) - Term -> Term2 'as' Term1 (140) - Term -> Term1 (141) - ListTerm -> Term (142) - ListTerm -> Term ',' ListTerm (143) + Command -> '#define-assumption' ListVarIdent ':' Term (44) + Command -> '#define-variable' VarIdent ':' Term (45) + Command -> '#define-variables' ListVarIdent ':' Term (46) + Command -> '#assume' ListVarIdent ':' Term (47) + Command -> '#variable' VarIdent ':' Term (48) + Command -> '#variables' ListVarIdent ':' Term (49) + Command -> '#section' SectionName ';' ListCommand '#end' SectionName (50) + Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' Term (51) + Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' Term (52) + Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' Term (53) + Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' Term (54) + ListCommand -> (55) + ListCommand -> Command ';' ListCommand (56) + DeclUsedVars -> 'uses' '(' ListVarIdent ')' (57) + DeclUsedVars -> (58) + SectionName -> (59) + SectionName -> VarIdent (60) + Pattern -> 'unit' (61) + Pattern -> VarIdent (62) + Pattern -> '(' Pattern ',' Pattern ')' (63) + ListPattern -> Pattern (64) + ListPattern -> Pattern ListPattern (65) + Param -> Pattern (66) + Param -> '(' ListPattern ':' Term ')' (67) + Param -> '(' ListPattern ':' Term '|' Term ')' (68) + Param -> '{' Pattern ':' Term '|' Term '}' (69) + ListParam -> Param (70) + ListParam -> Param ListParam (71) + ParamDecl -> Term6 (72) + ParamDecl -> '(' Term ':' Term ')' (73) + ParamDecl -> '(' Term ':' Term '|' Term ')' (74) + ParamDecl -> '{' Pattern ':' Term '}' (75) + ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term '}' (76) + ParamDecl -> '{' Pattern ':' Term '|' Term '}' (77) + Restriction -> Term '↦' Term (78) + Restriction -> Term '|->' Term (79) + ListRestriction -> Restriction (80) + ListRestriction -> Restriction ',' ListRestriction (81) + Term7 -> 'U' (82) + Term7 -> 'CUBE' (83) + Term7 -> 'TOPE' (84) + Term7 -> '1' (85) + Term7 -> '*₁' (86) + Term7 -> '2' (87) + Term7 -> '0₂' (88) + Term7 -> '1₂' (89) + Term7 -> '⊤' (90) + Term7 -> '⊥' (91) + Term7 -> 'recBOT' (92) + Term7 -> 'recOR' '(' ListRestriction ')' (93) + Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term ')' (94) + Term7 -> 'Unit' (95) + Term7 -> '<' ParamDecl '→' Term '>' (96) + Term7 -> '(' Term ',' Term ')' (97) + Term7 -> 'unit' (98) + Term7 -> 'refl' (99) + Term7 -> 'refl_{' Term '}' (100) + Term7 -> 'refl_{' Term ':' Term '}' (101) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (102) + Term7 -> HoleIdent (103) + Term7 -> VarIdent (104) + Term7 -> '(' Term ')' (105) + Term7 -> '*_1' (106) + Term7 -> '0_2' (107) + Term7 -> '1_2' (108) + Term7 -> 'TOP' (109) + Term7 -> 'BOT' (110) + Term7 -> '<' ParamDecl '->' Term '>' (111) + Term5 -> Term5 '×' Term6 (112) + Term5 -> Term6 (113) + Term5 -> Term5 '*' Term6 (114) + Term4 -> Term5 '≡' Term5 (115) + Term4 -> Term5 '≤' Term5 (116) + Term4 -> Term5 (117) + Term4 -> Term5 '===' Term5 (118) + Term4 -> Term5 '<=' Term5 (119) + Term3 -> Term4 '∧' Term3 (120) + Term3 -> Term4 (121) + Term3 -> Term4 '/\\' Term3 (122) + Term2 -> Term3 '∨' Term2 (123) + Term2 -> Term3 (124) + Term2 -> Term3 '\\/' Term2 (125) + Term1 -> ParamDecl '→' Term1 (126) + Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' Term1 (127) + Term1 -> Term2 '=_{' Term '}' Term2 (128) + Term1 -> Term2 '=' Term2 (129) + Term1 -> '\\' ListParam '→' Term1 (130) + Term1 -> Term2 (131) + Term1 -> ParamDecl '->' Term1 (132) + Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' Term1 (133) + Term1 -> '\\' ListParam '->' Term1 (134) + Term1 -> '∑' '(' Pattern ':' Term ')' ',' Term1 (135) + Term6 -> Term6 '[' ListRestriction ']' (136) + Term6 -> Term6 Term7 (137) + Term6 -> 'π₁' Term7 (138) + Term6 -> 'π₂' Term7 (139) + Term6 -> Term7 (140) + Term6 -> 'first' Term7 (141) + Term6 -> 'second' Term7 (142) + Term -> Term2 'as' Term1 (143) + Term -> Term1 (144) + ListTerm -> Term (145) + ListTerm -> Term ',' ListTerm (146) ----------------------------------------------------------------------------- Terminals @@ -161,76 +164,79 @@ Terminals '#compute-whnf'{ PT _ (TS _ 5) } '#def' { PT _ (TS _ 6) } '#define' { PT _ (TS _ 7) } - '#end' { PT _ (TS _ 8) } - '#lang' { PT _ (TS _ 9) } - '#postulate' { PT _ (TS _ 10) } - '#section' { PT _ (TS _ 11) } - '#set-option' { PT _ (TS _ 12) } - '#unset-option'{ PT _ (TS _ 13) } - '#variable' { PT _ (TS _ 14) } - '#variables' { PT _ (TS _ 15) } - '(' { PT _ (TS _ 16) } - ')' { PT _ (TS _ 17) } - '*' { PT _ (TS _ 18) } - '*_1' { PT _ (TS _ 19) } - '*₁' { PT _ (TS _ 20) } - ',' { PT _ (TS _ 21) } - '->' { PT _ (TS _ 22) } - '/\\' { PT _ (TS _ 23) } - '0_2' { PT _ (TS _ 24) } - '0₂' { PT _ (TS _ 25) } - '1' { PT _ (TS _ 26) } - '1_2' { PT _ (TS _ 27) } - '1₂' { PT _ (TS _ 28) } - '2' { PT _ (TS _ 29) } - ':' { PT _ (TS _ 30) } - ':=' { PT _ (TS _ 31) } - ';' { PT _ (TS _ 32) } - '<' { PT _ (TS _ 33) } - '<=' { PT _ (TS _ 34) } - '=' { PT _ (TS _ 35) } - '===' { PT _ (TS _ 36) } - '=_{' { PT _ (TS _ 37) } - '>' { PT _ (TS _ 38) } - 'BOT' { PT _ (TS _ 39) } - 'CUBE' { PT _ (TS _ 40) } - 'Sigma' { PT _ (TS _ 41) } - 'TOP' { PT _ (TS _ 42) } - 'TOPE' { PT _ (TS _ 43) } - 'U' { PT _ (TS _ 44) } - 'Unit' { PT _ (TS _ 45) } - '[' { PT _ (TS _ 46) } - '\\' { PT _ (TS _ 47) } - '\\/' { PT _ (TS _ 48) } - ']' { PT _ (TS _ 49) } - 'as' { PT _ (TS _ 50) } - 'first' { PT _ (TS _ 51) } - 'idJ' { PT _ (TS _ 52) } - 'recBOT' { PT _ (TS _ 53) } - 'recOR' { PT _ (TS _ 54) } - 'refl' { PT _ (TS _ 55) } - 'refl_{' { PT _ (TS _ 56) } - 'rzk-1' { PT _ (TS _ 57) } - 'second' { PT _ (TS _ 58) } - 'unit' { PT _ (TS _ 59) } - 'uses' { PT _ (TS _ 60) } - '{' { PT _ (TS _ 61) } - '|' { PT _ (TS _ 62) } - '|->' { PT _ (TS _ 63) } - '}' { PT _ (TS _ 64) } - '×' { PT _ (TS _ 65) } - 'Σ' { PT _ (TS _ 66) } - 'π₁' { PT _ (TS _ 67) } - 'π₂' { PT _ (TS _ 68) } - '→' { PT _ (TS _ 69) } - '↦' { PT _ (TS _ 70) } - '∑' { PT _ (TS _ 71) } - '∧' { PT _ (TS _ 72) } - '∨' { PT _ (TS _ 73) } - '≡' { PT _ (TS _ 74) } - '≤' { PT _ (TS _ 75) } - '⊤' { PT _ (TS _ 76) } - '⊥' { PT _ (TS _ 77) } + '#define-assumption'{ PT _ (TS _ 8) } + '#define-variable'{ PT _ (TS _ 9) } + '#define-variables'{ PT _ (TS _ 10) } + '#end' { PT _ (TS _ 11) } + '#lang' { PT _ (TS _ 12) } + '#postulate' { PT _ (TS _ 13) } + '#section' { PT _ (TS _ 14) } + '#set-option' { PT _ (TS _ 15) } + '#unset-option'{ PT _ (TS _ 16) } + '#variable' { PT _ (TS _ 17) } + '#variables' { PT _ (TS _ 18) } + '(' { PT _ (TS _ 19) } + ')' { PT _ (TS _ 20) } + '*' { PT _ (TS _ 21) } + '*_1' { PT _ (TS _ 22) } + '*₁' { PT _ (TS _ 23) } + ',' { PT _ (TS _ 24) } + '->' { PT _ (TS _ 25) } + '/\\' { PT _ (TS _ 26) } + '0_2' { PT _ (TS _ 27) } + '0₂' { PT _ (TS _ 28) } + '1' { PT _ (TS _ 29) } + '1_2' { PT _ (TS _ 30) } + '1₂' { PT _ (TS _ 31) } + '2' { PT _ (TS _ 32) } + ':' { PT _ (TS _ 33) } + ':=' { PT _ (TS _ 34) } + ';' { PT _ (TS _ 35) } + '<' { PT _ (TS _ 36) } + '<=' { PT _ (TS _ 37) } + '=' { PT _ (TS _ 38) } + '===' { PT _ (TS _ 39) } + '=_{' { PT _ (TS _ 40) } + '>' { PT _ (TS _ 41) } + 'BOT' { PT _ (TS _ 42) } + 'CUBE' { PT _ (TS _ 43) } + 'Sigma' { PT _ (TS _ 44) } + 'TOP' { PT _ (TS _ 45) } + 'TOPE' { PT _ (TS _ 46) } + 'U' { PT _ (TS _ 47) } + 'Unit' { PT _ (TS _ 48) } + '[' { PT _ (TS _ 49) } + '\\' { PT _ (TS _ 50) } + '\\/' { PT _ (TS _ 51) } + ']' { PT _ (TS _ 52) } + 'as' { PT _ (TS _ 53) } + 'first' { PT _ (TS _ 54) } + 'idJ' { PT _ (TS _ 55) } + 'recBOT' { PT _ (TS _ 56) } + 'recOR' { PT _ (TS _ 57) } + 'refl' { PT _ (TS _ 58) } + 'refl_{' { PT _ (TS _ 59) } + 'rzk-1' { PT _ (TS _ 60) } + 'second' { PT _ (TS _ 61) } + 'unit' { PT _ (TS _ 62) } + 'uses' { PT _ (TS _ 63) } + '{' { PT _ (TS _ 64) } + '|' { PT _ (TS _ 65) } + '|->' { PT _ (TS _ 66) } + '}' { PT _ (TS _ 67) } + '×' { PT _ (TS _ 68) } + 'Σ' { PT _ (TS _ 69) } + 'π₁' { PT _ (TS _ 70) } + 'π₂' { PT _ (TS _ 71) } + '→' { PT _ (TS _ 72) } + '↦' { PT _ (TS _ 73) } + '∑' { PT _ (TS _ 74) } + '∧' { PT _ (TS _ 75) } + '∨' { PT _ (TS _ 76) } + '≡' { PT _ (TS _ 77) } + '≤' { PT _ (TS _ 78) } + '⊤' { PT _ (TS _ 79) } + '⊥' { PT _ (TS _ 80) } L_quoted { PT _ (TL _) } L_VarIdentToken{ PT _ (T_VarIdentToken _) } L_HoleIdentToken{ PT _ (T_HoleIdentToken _) } @@ -273,26 +279,26 @@ Non-terminals ListVarIdent rules 32, 33 LanguageDecl rule 34 Language rule 35 - Command rules 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51 - ListCommand rules 52, 53 - DeclUsedVars rules 54, 55 - SectionName rules 56, 57 - Pattern rules 58, 59, 60 - ListPattern rules 61, 62 - Param rules 63, 64, 65, 66 - ListParam rules 67, 68 - ParamDecl rules 69, 70, 71, 72, 73, 74 - Restriction rules 75, 76 - ListRestriction rules 77, 78 - Term7 rules 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108 - Term5 rules 109, 110, 111 - Term4 rules 112, 113, 114, 115, 116 - Term3 rules 117, 118, 119 - Term2 rules 120, 121, 122 - Term1 rules 123, 124, 125, 126, 127, 128, 129, 130, 131, 132 - Term6 rules 133, 134, 135, 136, 137, 138, 139 - Term rules 140, 141 - ListTerm rules 142, 143 + Command rules 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 + ListCommand rules 55, 56 + DeclUsedVars rules 57, 58 + SectionName rules 59, 60 + Pattern rules 61, 62, 63 + ListPattern rules 64, 65 + Param rules 66, 67, 68, 69 + ListParam rules 70, 71 + ParamDecl rules 72, 73, 74, 75, 76, 77 + Restriction rules 78, 79 + ListRestriction rules 80, 81 + Term7 rules 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111 + Term5 rules 112, 113, 114 + Term4 rules 115, 116, 117, 118, 119 + Term3 rules 120, 121, 122 + Term2 rules 123, 124, 125 + Term1 rules 126, 127, 128, 129, 130, 131, 132, 133, 134, 135 + Term6 rules 136, 137, 138, 139, 140, 141, 142 + Term rules 143, 144 + ListTerm rules 145, 146 ----------------------------------------------------------------------------- States @@ -301,10 +307,10 @@ State 0 %start_pModule_internal -> . Module (rule 0) - '#lang' shift, and enter state 129 + '#lang' shift, and enter state 132 - Module goto state 134 - LanguageDecl goto state 135 + Module goto state 137 + LanguageDecl goto state 138 State 1 @@ -313,7 +319,7 @@ State 1 L_HoleIdentTokenshift, and enter state 76 HoleIdentToken goto state 29 - HoleIdent goto state 133 + HoleIdent goto state 136 State 2 @@ -322,7 +328,7 @@ State 2 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 132 + VarIdent goto state 135 State 3 @@ -331,24 +337,24 @@ State 3 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 130 - ListVarIdent goto state 131 + VarIdent goto state 133 + ListVarIdent goto state 134 State 4 %start_pLanguageDecl_internal -> . LanguageDecl (rule 4) - '#lang' shift, and enter state 129 + '#lang' shift, and enter state 132 - LanguageDecl goto state 128 + LanguageDecl goto state 131 State 5 %start_pLanguage_internal -> . Language (rule 5) - 'rzk-1' shift, and enter state 127 + 'rzk-1' shift, and enter state 130 - Language goto state 126 + Language goto state 129 State 6 @@ -361,14 +367,17 @@ State 6 '#compute-whnf'shift, and enter state 116 '#def' shift, and enter state 117 '#define' shift, and enter state 118 - '#postulate' shift, and enter state 119 - '#section' shift, and enter state 120 - '#set-option' shift, and enter state 121 - '#unset-option'shift, and enter state 122 - '#variable' shift, and enter state 123 - '#variables' shift, and enter state 124 - - Command goto state 125 + '#define-assumption'shift, and enter state 119 + '#define-variable'shift, and enter state 120 + '#define-variables'shift, and enter state 121 + '#postulate' shift, and enter state 122 + '#section' shift, and enter state 123 + '#set-option' shift, and enter state 124 + '#unset-option'shift, and enter state 125 + '#variable' shift, and enter state 126 + '#variables' shift, and enter state 127 + + Command goto state 128 State 7 @@ -381,13 +390,16 @@ State 7 '#compute-whnf'shift, and enter state 116 '#def' shift, and enter state 117 '#define' shift, and enter state 118 - '#postulate' shift, and enter state 119 - '#section' shift, and enter state 120 - '#set-option' shift, and enter state 121 - '#unset-option'shift, and enter state 122 - '#variable' shift, and enter state 123 - '#variables' shift, and enter state 124 - %eof reduce using rule 52 + '#define-assumption'shift, and enter state 119 + '#define-variable'shift, and enter state 120 + '#define-variables'shift, and enter state 121 + '#postulate' shift, and enter state 122 + '#section' shift, and enter state 123 + '#set-option' shift, and enter state 124 + '#unset-option'shift, and enter state 125 + '#variable' shift, and enter state 126 + '#variables' shift, and enter state 127 + %eof reduce using rule 55 Command goto state 110 ListCommand goto state 111 @@ -397,7 +409,7 @@ State 8 %start_pDeclUsedVars_internal -> . DeclUsedVars (rule 8) 'uses' shift, and enter state 109 - %eof reduce using rule 55 + %eof reduce using rule 58 DeclUsedVars goto state 108 @@ -406,7 +418,7 @@ State 9 %start_pSectionName_internal -> . SectionName (rule 9) L_VarIdentTokenshift, and enter state 75 - %eof reduce using rule 56 + %eof reduce using rule 59 VarIdentToken goto state 28 VarIdent goto state 106 @@ -1180,399 +1192,399 @@ State 29 State 30 - Term7 -> HoleIdent . (rule 100) + Term7 -> HoleIdent . (rule 103) - '(' reduce using rule 100 - ')' reduce using rule 100 - '*' reduce using rule 100 - '*_1' reduce using rule 100 - '*₁' reduce using rule 100 - ',' reduce using rule 100 - '->' reduce using rule 100 - '/\\' reduce using rule 100 - '0_2' reduce using rule 100 - '0₂' reduce using rule 100 - '1' reduce using rule 100 - '1_2' reduce using rule 100 - '1₂' reduce using rule 100 - '2' reduce using rule 100 - ':' reduce using rule 100 - ':=' reduce using rule 100 - ';' reduce using rule 100 - '<' reduce using rule 100 - '<=' reduce using rule 100 - '=' reduce using rule 100 - '===' reduce using rule 100 - '=_{' reduce using rule 100 - '>' reduce using rule 100 - 'BOT' reduce using rule 100 - 'CUBE' reduce using rule 100 - 'TOP' reduce using rule 100 - 'TOPE' reduce using rule 100 - 'U' reduce using rule 100 - 'Unit' reduce using rule 100 - '[' reduce using rule 100 - '\\/' reduce using rule 100 - ']' reduce using rule 100 - 'as' reduce using rule 100 - 'idJ' reduce using rule 100 - 'recBOT' reduce using rule 100 - 'recOR' reduce using rule 100 - 'refl' reduce using rule 100 - 'refl_{' reduce using rule 100 - 'unit' reduce using rule 100 - '|' reduce using rule 100 - '|->' reduce using rule 100 - '}' reduce using rule 100 - '×' reduce using rule 100 - '→' reduce using rule 100 - '↦' reduce using rule 100 - '∧' reduce using rule 100 - '∨' reduce using rule 100 - '≡' reduce using rule 100 - '≤' reduce using rule 100 - '⊤' reduce using rule 100 - '⊥' reduce using rule 100 - L_VarIdentTokenreduce using rule 100 - L_HoleIdentTokenreduce using rule 100 - %eof reduce using rule 100 + '(' reduce using rule 103 + ')' reduce using rule 103 + '*' reduce using rule 103 + '*_1' reduce using rule 103 + '*₁' reduce using rule 103 + ',' reduce using rule 103 + '->' reduce using rule 103 + '/\\' reduce using rule 103 + '0_2' reduce using rule 103 + '0₂' reduce using rule 103 + '1' reduce using rule 103 + '1_2' reduce using rule 103 + '1₂' reduce using rule 103 + '2' reduce using rule 103 + ':' reduce using rule 103 + ':=' reduce using rule 103 + ';' reduce using rule 103 + '<' reduce using rule 103 + '<=' reduce using rule 103 + '=' reduce using rule 103 + '===' reduce using rule 103 + '=_{' reduce using rule 103 + '>' reduce using rule 103 + 'BOT' reduce using rule 103 + 'CUBE' reduce using rule 103 + 'TOP' reduce using rule 103 + 'TOPE' reduce using rule 103 + 'U' reduce using rule 103 + 'Unit' reduce using rule 103 + '[' reduce using rule 103 + '\\/' reduce using rule 103 + ']' reduce using rule 103 + 'as' reduce using rule 103 + 'idJ' reduce using rule 103 + 'recBOT' reduce using rule 103 + 'recOR' reduce using rule 103 + 'refl' reduce using rule 103 + 'refl_{' reduce using rule 103 + 'unit' reduce using rule 103 + '|' reduce using rule 103 + '|->' reduce using rule 103 + '}' reduce using rule 103 + '×' reduce using rule 103 + '→' reduce using rule 103 + '↦' reduce using rule 103 + '∧' reduce using rule 103 + '∨' reduce using rule 103 + '≡' reduce using rule 103 + '≤' reduce using rule 103 + '⊤' reduce using rule 103 + '⊥' reduce using rule 103 + L_VarIdentTokenreduce using rule 103 + L_HoleIdentTokenreduce using rule 103 + %eof reduce using rule 103 State 31 - Term7 -> VarIdent . (rule 101) + Term7 -> VarIdent . (rule 104) - '(' reduce using rule 101 - ')' reduce using rule 101 - '*' reduce using rule 101 - '*_1' reduce using rule 101 - '*₁' reduce using rule 101 - ',' reduce using rule 101 - '->' reduce using rule 101 - '/\\' reduce using rule 101 - '0_2' reduce using rule 101 - '0₂' reduce using rule 101 - '1' reduce using rule 101 - '1_2' reduce using rule 101 - '1₂' reduce using rule 101 - '2' reduce using rule 101 - ':' reduce using rule 101 - ':=' reduce using rule 101 - ';' reduce using rule 101 - '<' reduce using rule 101 - '<=' reduce using rule 101 - '=' reduce using rule 101 - '===' reduce using rule 101 - '=_{' reduce using rule 101 - '>' reduce using rule 101 - 'BOT' reduce using rule 101 - 'CUBE' reduce using rule 101 - 'TOP' reduce using rule 101 - 'TOPE' reduce using rule 101 - 'U' reduce using rule 101 - 'Unit' reduce using rule 101 - '[' reduce using rule 101 - '\\/' reduce using rule 101 - ']' reduce using rule 101 - 'as' reduce using rule 101 - 'idJ' reduce using rule 101 - 'recBOT' reduce using rule 101 - 'recOR' reduce using rule 101 - 'refl' reduce using rule 101 - 'refl_{' reduce using rule 101 - 'unit' reduce using rule 101 - '|' reduce using rule 101 - '|->' reduce using rule 101 - '}' reduce using rule 101 - '×' reduce using rule 101 - '→' reduce using rule 101 - '↦' reduce using rule 101 - '∧' reduce using rule 101 - '∨' reduce using rule 101 - '≡' reduce using rule 101 - '≤' reduce using rule 101 - '⊤' reduce using rule 101 - '⊥' reduce using rule 101 - L_VarIdentTokenreduce using rule 101 - L_HoleIdentTokenreduce using rule 101 - %eof reduce using rule 101 + '(' reduce using rule 104 + ')' reduce using rule 104 + '*' reduce using rule 104 + '*_1' reduce using rule 104 + '*₁' reduce using rule 104 + ',' reduce using rule 104 + '->' reduce using rule 104 + '/\\' reduce using rule 104 + '0_2' reduce using rule 104 + '0₂' reduce using rule 104 + '1' reduce using rule 104 + '1_2' reduce using rule 104 + '1₂' reduce using rule 104 + '2' reduce using rule 104 + ':' reduce using rule 104 + ':=' reduce using rule 104 + ';' reduce using rule 104 + '<' reduce using rule 104 + '<=' reduce using rule 104 + '=' reduce using rule 104 + '===' reduce using rule 104 + '=_{' reduce using rule 104 + '>' reduce using rule 104 + 'BOT' reduce using rule 104 + 'CUBE' reduce using rule 104 + 'TOP' reduce using rule 104 + 'TOPE' reduce using rule 104 + 'U' reduce using rule 104 + 'Unit' reduce using rule 104 + '[' reduce using rule 104 + '\\/' reduce using rule 104 + ']' reduce using rule 104 + 'as' reduce using rule 104 + 'idJ' reduce using rule 104 + 'recBOT' reduce using rule 104 + 'recOR' reduce using rule 104 + 'refl' reduce using rule 104 + 'refl_{' reduce using rule 104 + 'unit' reduce using rule 104 + '|' reduce using rule 104 + '|->' reduce using rule 104 + '}' reduce using rule 104 + '×' reduce using rule 104 + '→' reduce using rule 104 + '↦' reduce using rule 104 + '∧' reduce using rule 104 + '∨' reduce using rule 104 + '≡' reduce using rule 104 + '≤' reduce using rule 104 + '⊤' reduce using rule 104 + '⊥' reduce using rule 104 + L_VarIdentTokenreduce using rule 104 + L_HoleIdentTokenreduce using rule 104 + %eof reduce using rule 104 State 32 - Term1 -> ParamDecl . '→' Term1 (rule 123) - Term1 -> ParamDecl . '->' Term1 (rule 129) + Term1 -> ParamDecl . '→' Term1 (rule 126) + Term1 -> ParamDecl . '->' Term1 (rule 132) - '->' shift, and enter state 195 - '→' shift, and enter state 196 + '->' shift, and enter state 201 + '→' shift, and enter state 202 State 33 - Term6 -> Term7 . (rule 137) + Term6 -> Term7 . (rule 140) - '(' reduce using rule 137 - ')' reduce using rule 137 - '*' reduce using rule 137 - '*_1' reduce using rule 137 - '*₁' reduce using rule 137 - ',' reduce using rule 137 - '->' reduce using rule 137 - '/\\' reduce using rule 137 - '0_2' reduce using rule 137 - '0₂' reduce using rule 137 - '1' reduce using rule 137 - '1_2' reduce using rule 137 - '1₂' reduce using rule 137 - '2' reduce using rule 137 - ':' reduce using rule 137 - ':=' reduce using rule 137 - ';' reduce using rule 137 - '<' reduce using rule 137 - '<=' reduce using rule 137 - '=' reduce using rule 137 - '===' reduce using rule 137 - '=_{' reduce using rule 137 - '>' reduce using rule 137 - 'BOT' reduce using rule 137 - 'CUBE' reduce using rule 137 - 'TOP' reduce using rule 137 - 'TOPE' reduce using rule 137 - 'U' reduce using rule 137 - 'Unit' reduce using rule 137 - '[' reduce using rule 137 - '\\/' reduce using rule 137 - ']' reduce using rule 137 - 'as' reduce using rule 137 - 'idJ' reduce using rule 137 - 'recBOT' reduce using rule 137 - 'recOR' reduce using rule 137 - 'refl' reduce using rule 137 - 'refl_{' reduce using rule 137 - 'unit' reduce using rule 137 - '|' reduce using rule 137 - '|->' reduce using rule 137 - '}' reduce using rule 137 - '×' reduce using rule 137 - '→' reduce using rule 137 - '↦' reduce using rule 137 - '∧' reduce using rule 137 - '∨' reduce using rule 137 - '≡' reduce using rule 137 - '≤' reduce using rule 137 - '⊤' reduce using rule 137 - '⊥' reduce using rule 137 - L_VarIdentTokenreduce using rule 137 - L_HoleIdentTokenreduce using rule 137 - %eof reduce using rule 137 + '(' reduce using rule 140 + ')' reduce using rule 140 + '*' reduce using rule 140 + '*_1' reduce using rule 140 + '*₁' reduce using rule 140 + ',' reduce using rule 140 + '->' reduce using rule 140 + '/\\' reduce using rule 140 + '0_2' reduce using rule 140 + '0₂' reduce using rule 140 + '1' reduce using rule 140 + '1_2' reduce using rule 140 + '1₂' reduce using rule 140 + '2' reduce using rule 140 + ':' reduce using rule 140 + ':=' reduce using rule 140 + ';' reduce using rule 140 + '<' reduce using rule 140 + '<=' reduce using rule 140 + '=' reduce using rule 140 + '===' reduce using rule 140 + '=_{' reduce using rule 140 + '>' reduce using rule 140 + 'BOT' reduce using rule 140 + 'CUBE' reduce using rule 140 + 'TOP' reduce using rule 140 + 'TOPE' reduce using rule 140 + 'U' reduce using rule 140 + 'Unit' reduce using rule 140 + '[' reduce using rule 140 + '\\/' reduce using rule 140 + ']' reduce using rule 140 + 'as' reduce using rule 140 + 'idJ' reduce using rule 140 + 'recBOT' reduce using rule 140 + 'recOR' reduce using rule 140 + 'refl' reduce using rule 140 + 'refl_{' reduce using rule 140 + 'unit' reduce using rule 140 + '|' reduce using rule 140 + '|->' reduce using rule 140 + '}' reduce using rule 140 + '×' reduce using rule 140 + '→' reduce using rule 140 + '↦' reduce using rule 140 + '∧' reduce using rule 140 + '∨' reduce using rule 140 + '≡' reduce using rule 140 + '≤' reduce using rule 140 + '⊤' reduce using rule 140 + '⊥' reduce using rule 140 + L_VarIdentTokenreduce using rule 140 + L_HoleIdentTokenreduce using rule 140 + %eof reduce using rule 140 State 34 - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) - Term4 -> Term5 . '≡' Term5 (rule 112) - Term4 -> Term5 . '≤' Term5 (rule 113) - Term4 -> Term5 . (rule 114) - Term4 -> Term5 . '===' Term5 (rule 115) - Term4 -> Term5 . '<=' Term5 (rule 116) + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) + Term4 -> Term5 . '≡' Term5 (rule 115) + Term4 -> Term5 . '≤' Term5 (rule 116) + Term4 -> Term5 . (rule 117) + Term4 -> Term5 . '===' Term5 (rule 118) + Term4 -> Term5 . '<=' Term5 (rule 119) - ')' reduce using rule 114 - '*' shift, and enter state 165 - ',' reduce using rule 114 - '/\\' reduce using rule 114 - ':' reduce using rule 114 - ':=' reduce using rule 114 - ';' reduce using rule 114 - '<=' shift, and enter state 191 - '=' reduce using rule 114 - '===' shift, and enter state 192 - '=_{' reduce using rule 114 - '>' reduce using rule 114 - '\\/' reduce using rule 114 - ']' reduce using rule 114 - 'as' reduce using rule 114 - '|' reduce using rule 114 - '|->' reduce using rule 114 - '}' reduce using rule 114 - '×' shift, and enter state 166 - '↦' reduce using rule 114 - '∧' reduce using rule 114 - '∨' reduce using rule 114 - '≡' shift, and enter state 193 - '≤' shift, and enter state 194 - %eof reduce using rule 114 + ')' reduce using rule 117 + '*' shift, and enter state 171 + ',' reduce using rule 117 + '/\\' reduce using rule 117 + ':' reduce using rule 117 + ':=' reduce using rule 117 + ';' reduce using rule 117 + '<=' shift, and enter state 197 + '=' reduce using rule 117 + '===' shift, and enter state 198 + '=_{' reduce using rule 117 + '>' reduce using rule 117 + '\\/' reduce using rule 117 + ']' reduce using rule 117 + 'as' reduce using rule 117 + '|' reduce using rule 117 + '|->' reduce using rule 117 + '}' reduce using rule 117 + '×' shift, and enter state 172 + '↦' reduce using rule 117 + '∧' reduce using rule 117 + '∨' reduce using rule 117 + '≡' shift, and enter state 199 + '≤' shift, and enter state 200 + %eof reduce using rule 117 State 35 - Term3 -> Term4 . '∧' Term3 (rule 117) - Term3 -> Term4 . (rule 118) - Term3 -> Term4 . '/\\' Term3 (rule 119) - - ')' reduce using rule 118 - ',' reduce using rule 118 - '/\\' shift, and enter state 189 - ':' reduce using rule 118 - ':=' reduce using rule 118 - ';' reduce using rule 118 - '=' reduce using rule 118 - '=_{' reduce using rule 118 - '>' reduce using rule 118 - '\\/' reduce using rule 118 - ']' reduce using rule 118 - 'as' reduce using rule 118 - '|' reduce using rule 118 - '|->' reduce using rule 118 - '}' reduce using rule 118 - '↦' reduce using rule 118 - '∧' shift, and enter state 190 - '∨' reduce using rule 118 - %eof reduce using rule 118 - - -State 36 - - Term2 -> Term3 . '∨' Term2 (rule 120) - Term2 -> Term3 . (rule 121) - Term2 -> Term3 . '\\/' Term2 (rule 122) + Term3 -> Term4 . '∧' Term3 (rule 120) + Term3 -> Term4 . (rule 121) + Term3 -> Term4 . '/\\' Term3 (rule 122) ')' reduce using rule 121 ',' reduce using rule 121 + '/\\' shift, and enter state 195 ':' reduce using rule 121 ':=' reduce using rule 121 ';' reduce using rule 121 '=' reduce using rule 121 '=_{' reduce using rule 121 '>' reduce using rule 121 - '\\/' shift, and enter state 187 + '\\/' reduce using rule 121 ']' reduce using rule 121 'as' reduce using rule 121 '|' reduce using rule 121 '|->' reduce using rule 121 '}' reduce using rule 121 '↦' reduce using rule 121 - '∨' shift, and enter state 188 + '∧' shift, and enter state 196 + '∨' reduce using rule 121 %eof reduce using rule 121 +State 36 + + Term2 -> Term3 . '∨' Term2 (rule 123) + Term2 -> Term3 . (rule 124) + Term2 -> Term3 . '\\/' Term2 (rule 125) + + ')' reduce using rule 124 + ',' reduce using rule 124 + ':' reduce using rule 124 + ':=' reduce using rule 124 + ';' reduce using rule 124 + '=' reduce using rule 124 + '=_{' reduce using rule 124 + '>' reduce using rule 124 + '\\/' shift, and enter state 193 + ']' reduce using rule 124 + 'as' reduce using rule 124 + '|' reduce using rule 124 + '|->' reduce using rule 124 + '}' reduce using rule 124 + '↦' reduce using rule 124 + '∨' shift, and enter state 194 + %eof reduce using rule 124 + + State 37 - Term1 -> Term2 . '=_{' Term '}' Term2 (rule 125) - Term1 -> Term2 . '=' Term2 (rule 126) - Term1 -> Term2 . (rule 128) - Term -> Term2 . 'as' Term1 (rule 140) + Term1 -> Term2 . '=_{' Term '}' Term2 (rule 128) + Term1 -> Term2 . '=' Term2 (rule 129) + Term1 -> Term2 . (rule 131) + Term -> Term2 . 'as' Term1 (rule 143) - ')' reduce using rule 128 - ',' reduce using rule 128 - ':' reduce using rule 128 - ':=' reduce using rule 128 - ';' reduce using rule 128 - '=' shift, and enter state 167 - '=_{' shift, and enter state 168 - '>' reduce using rule 128 - ']' reduce using rule 128 - 'as' shift, and enter state 186 - '|' reduce using rule 128 - '|->' reduce using rule 128 - '}' reduce using rule 128 - '↦' reduce using rule 128 - %eof reduce using rule 128 + ')' reduce using rule 131 + ',' reduce using rule 131 + ':' reduce using rule 131 + ':=' reduce using rule 131 + ';' reduce using rule 131 + '=' shift, and enter state 173 + '=_{' shift, and enter state 174 + '>' reduce using rule 131 + ']' reduce using rule 131 + 'as' shift, and enter state 192 + '|' reduce using rule 131 + '|->' reduce using rule 131 + '}' reduce using rule 131 + '↦' reduce using rule 131 + %eof reduce using rule 131 State 38 - Term -> Term1 . (rule 141) + Term -> Term1 . (rule 144) - ')' reduce using rule 141 - ',' reduce using rule 141 - ':' reduce using rule 141 - ':=' reduce using rule 141 - ';' reduce using rule 141 - '>' reduce using rule 141 - ']' reduce using rule 141 - '|' reduce using rule 141 - '|->' reduce using rule 141 - '}' reduce using rule 141 - '↦' reduce using rule 141 - %eof reduce using rule 141 + ')' reduce using rule 144 + ',' reduce using rule 144 + ':' reduce using rule 144 + ':=' reduce using rule 144 + ';' reduce using rule 144 + '>' reduce using rule 144 + ']' reduce using rule 144 + '|' reduce using rule 144 + '|->' reduce using rule 144 + '}' reduce using rule 144 + '↦' reduce using rule 144 + %eof reduce using rule 144 State 39 - ParamDecl -> Term6 . (rule 69) - Term5 -> Term6 . (rule 110) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + ParamDecl -> Term6 . (rule 72) + Term5 -> Term6 . (rule 113) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) '(' shift, and enter state 79 - ')' reduce using rule 110 - '*' reduce using rule 110 + ')' reduce using rule 113 + '*' reduce using rule 113 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 - ',' reduce using rule 110 - '->' reduce using rule 69 - '/\\' reduce using rule 110 + ',' reduce using rule 113 + '->' reduce using rule 72 + '/\\' reduce using rule 113 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 - ':' reduce using rule 110 - ':=' reduce using rule 110 - ';' reduce using rule 110 + ':' reduce using rule 113 + ':=' reduce using rule 113 + ';' reduce using rule 113 '<' shift, and enter state 51 - '<=' reduce using rule 110 - '=' reduce using rule 110 - '===' reduce using rule 110 - '=_{' reduce using rule 110 - '>' reduce using rule 110 + '<=' reduce using rule 113 + '=' reduce using rule 113 + '===' reduce using rule 113 + '=_{' reduce using rule 113 + '>' reduce using rule 113 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 - '\\/' reduce using rule 110 - ']' reduce using rule 110 - 'as' reduce using rule 110 + '[' shift, and enter state 167 + '\\/' reduce using rule 113 + ']' reduce using rule 113 + 'as' reduce using rule 113 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 'unit' shift, and enter state 67 - '|' reduce using rule 110 - '|->' reduce using rule 110 - '}' reduce using rule 110 - '×' reduce using rule 110 - '→' reduce using rule 69 - '↦' reduce using rule 110 - '∧' reduce using rule 110 - '∨' reduce using rule 110 - '≡' reduce using rule 110 - '≤' reduce using rule 110 + '|' reduce using rule 113 + '|->' reduce using rule 113 + '}' reduce using rule 113 + '×' reduce using rule 113 + '→' reduce using rule 72 + '↦' reduce using rule 113 + '∧' reduce using rule 113 + '∨' reduce using rule 113 + '≡' reduce using rule 113 + '≤' reduce using rule 113 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 110 + %eof reduce using rule 113 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 + Term7 goto state 166 State 40 - ListTerm -> Term . (rule 142) - ListTerm -> Term . ',' ListTerm (rule 143) + ListTerm -> Term . (rule 145) + ListTerm -> Term . ',' ListTerm (rule 146) - ',' shift, and enter state 185 - %eof reduce using rule 142 + ',' shift, and enter state 191 + %eof reduce using rule 145 State 41 @@ -1584,10 +1596,10 @@ State 41 State 42 - ParamDecl -> '(' . Term ':' Term ')' (rule 70) - ParamDecl -> '(' . Term ':' Term '|' Term ')' (rule 71) - Term7 -> '(' . Term ',' Term ')' (rule 94) - Term7 -> '(' . Term ')' (rule 102) + ParamDecl -> '(' . Term ':' Term ')' (rule 73) + ParamDecl -> '(' . Term ':' Term '|' Term ')' (rule 74) + Term7 -> '(' . Term ',' Term ')' (rule 97) + Term7 -> '(' . Term ')' (rule 105) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -1637,191 +1649,251 @@ State 42 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 184 + Term goto state 190 State 43 - Term7 -> '*_1' . (rule 103) - - '(' reduce using rule 103 - ')' reduce using rule 103 - '*' reduce using rule 103 - '*_1' reduce using rule 103 - '*₁' reduce using rule 103 - ',' reduce using rule 103 - '->' reduce using rule 103 - '/\\' reduce using rule 103 - '0_2' reduce using rule 103 - '0₂' reduce using rule 103 - '1' reduce using rule 103 - '1_2' reduce using rule 103 - '1₂' reduce using rule 103 - '2' reduce using rule 103 - ':' reduce using rule 103 - ':=' reduce using rule 103 - ';' reduce using rule 103 - '<' reduce using rule 103 - '<=' reduce using rule 103 - '=' reduce using rule 103 - '===' reduce using rule 103 - '=_{' reduce using rule 103 - '>' reduce using rule 103 - 'BOT' reduce using rule 103 - 'CUBE' reduce using rule 103 - 'TOP' reduce using rule 103 - 'TOPE' reduce using rule 103 - 'U' reduce using rule 103 - 'Unit' reduce using rule 103 - '[' reduce using rule 103 - '\\/' reduce using rule 103 - ']' reduce using rule 103 - 'as' reduce using rule 103 - 'idJ' reduce using rule 103 - 'recBOT' reduce using rule 103 - 'recOR' reduce using rule 103 - 'refl' reduce using rule 103 - 'refl_{' reduce using rule 103 - 'unit' reduce using rule 103 - '|' reduce using rule 103 - '|->' reduce using rule 103 - '}' reduce using rule 103 - '×' reduce using rule 103 - '→' reduce using rule 103 - '↦' reduce using rule 103 - '∧' reduce using rule 103 - '∨' reduce using rule 103 - '≡' reduce using rule 103 - '≤' reduce using rule 103 - '⊤' reduce using rule 103 - '⊥' reduce using rule 103 - L_VarIdentTokenreduce using rule 103 - L_HoleIdentTokenreduce using rule 103 - %eof reduce using rule 103 - - -State 44 - - Term7 -> '*₁' . (rule 83) + Term7 -> '*_1' . (rule 106) - '(' reduce using rule 83 - ')' reduce using rule 83 - '*' reduce using rule 83 - '*_1' reduce using rule 83 - '*₁' reduce using rule 83 - ',' reduce using rule 83 - '->' reduce using rule 83 - '/\\' reduce using rule 83 - '0_2' reduce using rule 83 - '0₂' reduce using rule 83 - '1' reduce using rule 83 - '1_2' reduce using rule 83 - '1₂' reduce using rule 83 - '2' reduce using rule 83 - ':' reduce using rule 83 - ':=' reduce using rule 83 - ';' reduce using rule 83 - '<' reduce using rule 83 - '<=' reduce using rule 83 - '=' reduce using rule 83 - '===' reduce using rule 83 - '=_{' reduce using rule 83 - '>' reduce using rule 83 - 'BOT' reduce using rule 83 - 'CUBE' reduce using rule 83 - 'TOP' reduce using rule 83 - 'TOPE' reduce using rule 83 - 'U' reduce using rule 83 - 'Unit' reduce using rule 83 - '[' reduce using rule 83 - '\\/' reduce using rule 83 - ']' reduce using rule 83 - 'as' reduce using rule 83 - 'idJ' reduce using rule 83 - 'recBOT' reduce using rule 83 - 'recOR' reduce using rule 83 - 'refl' reduce using rule 83 - 'refl_{' reduce using rule 83 - 'unit' reduce using rule 83 - '|' reduce using rule 83 - '|->' reduce using rule 83 - '}' reduce using rule 83 - '×' reduce using rule 83 - '→' reduce using rule 83 - '↦' reduce using rule 83 - '∧' reduce using rule 83 - '∨' reduce using rule 83 - '≡' reduce using rule 83 - '≤' reduce using rule 83 - '⊤' reduce using rule 83 - '⊥' reduce using rule 83 - L_VarIdentTokenreduce using rule 83 - L_HoleIdentTokenreduce using rule 83 - %eof reduce using rule 83 + '(' reduce using rule 106 + ')' reduce using rule 106 + '*' reduce using rule 106 + '*_1' reduce using rule 106 + '*₁' reduce using rule 106 + ',' reduce using rule 106 + '->' reduce using rule 106 + '/\\' reduce using rule 106 + '0_2' reduce using rule 106 + '0₂' reduce using rule 106 + '1' reduce using rule 106 + '1_2' reduce using rule 106 + '1₂' reduce using rule 106 + '2' reduce using rule 106 + ':' reduce using rule 106 + ':=' reduce using rule 106 + ';' reduce using rule 106 + '<' reduce using rule 106 + '<=' reduce using rule 106 + '=' reduce using rule 106 + '===' reduce using rule 106 + '=_{' reduce using rule 106 + '>' reduce using rule 106 + 'BOT' reduce using rule 106 + 'CUBE' reduce using rule 106 + 'TOP' reduce using rule 106 + 'TOPE' reduce using rule 106 + 'U' reduce using rule 106 + 'Unit' reduce using rule 106 + '[' reduce using rule 106 + '\\/' reduce using rule 106 + ']' reduce using rule 106 + 'as' reduce using rule 106 + 'idJ' reduce using rule 106 + 'recBOT' reduce using rule 106 + 'recOR' reduce using rule 106 + 'refl' reduce using rule 106 + 'refl_{' reduce using rule 106 + 'unit' reduce using rule 106 + '|' reduce using rule 106 + '|->' reduce using rule 106 + '}' reduce using rule 106 + '×' reduce using rule 106 + '→' reduce using rule 106 + '↦' reduce using rule 106 + '∧' reduce using rule 106 + '∨' reduce using rule 106 + '≡' reduce using rule 106 + '≤' reduce using rule 106 + '⊤' reduce using rule 106 + '⊥' reduce using rule 106 + L_VarIdentTokenreduce using rule 106 + L_HoleIdentTokenreduce using rule 106 + %eof reduce using rule 106 + + +State 44 + + Term7 -> '*₁' . (rule 86) + + '(' reduce using rule 86 + ')' reduce using rule 86 + '*' reduce using rule 86 + '*_1' reduce using rule 86 + '*₁' reduce using rule 86 + ',' reduce using rule 86 + '->' reduce using rule 86 + '/\\' reduce using rule 86 + '0_2' reduce using rule 86 + '0₂' reduce using rule 86 + '1' reduce using rule 86 + '1_2' reduce using rule 86 + '1₂' reduce using rule 86 + '2' reduce using rule 86 + ':' reduce using rule 86 + ':=' reduce using rule 86 + ';' reduce using rule 86 + '<' reduce using rule 86 + '<=' reduce using rule 86 + '=' reduce using rule 86 + '===' reduce using rule 86 + '=_{' reduce using rule 86 + '>' reduce using rule 86 + 'BOT' reduce using rule 86 + 'CUBE' reduce using rule 86 + 'TOP' reduce using rule 86 + 'TOPE' reduce using rule 86 + 'U' reduce using rule 86 + 'Unit' reduce using rule 86 + '[' reduce using rule 86 + '\\/' reduce using rule 86 + ']' reduce using rule 86 + 'as' reduce using rule 86 + 'idJ' reduce using rule 86 + 'recBOT' reduce using rule 86 + 'recOR' reduce using rule 86 + 'refl' reduce using rule 86 + 'refl_{' reduce using rule 86 + 'unit' reduce using rule 86 + '|' reduce using rule 86 + '|->' reduce using rule 86 + '}' reduce using rule 86 + '×' reduce using rule 86 + '→' reduce using rule 86 + '↦' reduce using rule 86 + '∧' reduce using rule 86 + '∨' reduce using rule 86 + '≡' reduce using rule 86 + '≤' reduce using rule 86 + '⊤' reduce using rule 86 + '⊥' reduce using rule 86 + L_VarIdentTokenreduce using rule 86 + L_HoleIdentTokenreduce using rule 86 + %eof reduce using rule 86 State 45 - Term7 -> '0_2' . (rule 104) + Term7 -> '0_2' . (rule 107) - '(' reduce using rule 104 - ')' reduce using rule 104 - '*' reduce using rule 104 - '*_1' reduce using rule 104 - '*₁' reduce using rule 104 - ',' reduce using rule 104 - '->' reduce using rule 104 - '/\\' reduce using rule 104 - '0_2' reduce using rule 104 - '0₂' reduce using rule 104 - '1' reduce using rule 104 - '1_2' reduce using rule 104 - '1₂' reduce using rule 104 - '2' reduce using rule 104 - ':' reduce using rule 104 - ':=' reduce using rule 104 - ';' reduce using rule 104 - '<' reduce using rule 104 - '<=' reduce using rule 104 - '=' reduce using rule 104 - '===' reduce using rule 104 - '=_{' reduce using rule 104 - '>' reduce using rule 104 - 'BOT' reduce using rule 104 - 'CUBE' reduce using rule 104 - 'TOP' reduce using rule 104 - 'TOPE' reduce using rule 104 - 'U' reduce using rule 104 - 'Unit' reduce using rule 104 - '[' reduce using rule 104 - '\\/' reduce using rule 104 - ']' reduce using rule 104 - 'as' reduce using rule 104 - 'idJ' reduce using rule 104 - 'recBOT' reduce using rule 104 - 'recOR' reduce using rule 104 - 'refl' reduce using rule 104 - 'refl_{' reduce using rule 104 - 'unit' reduce using rule 104 - '|' reduce using rule 104 - '|->' reduce using rule 104 - '}' reduce using rule 104 - '×' reduce using rule 104 - '→' reduce using rule 104 - '↦' reduce using rule 104 - '∧' reduce using rule 104 - '∨' reduce using rule 104 - '≡' reduce using rule 104 - '≤' reduce using rule 104 - '⊤' reduce using rule 104 - '⊥' reduce using rule 104 - L_VarIdentTokenreduce using rule 104 - L_HoleIdentTokenreduce using rule 104 - %eof reduce using rule 104 + '(' reduce using rule 107 + ')' reduce using rule 107 + '*' reduce using rule 107 + '*_1' reduce using rule 107 + '*₁' reduce using rule 107 + ',' reduce using rule 107 + '->' reduce using rule 107 + '/\\' reduce using rule 107 + '0_2' reduce using rule 107 + '0₂' reduce using rule 107 + '1' reduce using rule 107 + '1_2' reduce using rule 107 + '1₂' reduce using rule 107 + '2' reduce using rule 107 + ':' reduce using rule 107 + ':=' reduce using rule 107 + ';' reduce using rule 107 + '<' reduce using rule 107 + '<=' reduce using rule 107 + '=' reduce using rule 107 + '===' reduce using rule 107 + '=_{' reduce using rule 107 + '>' reduce using rule 107 + 'BOT' reduce using rule 107 + 'CUBE' reduce using rule 107 + 'TOP' reduce using rule 107 + 'TOPE' reduce using rule 107 + 'U' reduce using rule 107 + 'Unit' reduce using rule 107 + '[' reduce using rule 107 + '\\/' reduce using rule 107 + ']' reduce using rule 107 + 'as' reduce using rule 107 + 'idJ' reduce using rule 107 + 'recBOT' reduce using rule 107 + 'recOR' reduce using rule 107 + 'refl' reduce using rule 107 + 'refl_{' reduce using rule 107 + 'unit' reduce using rule 107 + '|' reduce using rule 107 + '|->' reduce using rule 107 + '}' reduce using rule 107 + '×' reduce using rule 107 + '→' reduce using rule 107 + '↦' reduce using rule 107 + '∧' reduce using rule 107 + '∨' reduce using rule 107 + '≡' reduce using rule 107 + '≤' reduce using rule 107 + '⊤' reduce using rule 107 + '⊥' reduce using rule 107 + L_VarIdentTokenreduce using rule 107 + L_HoleIdentTokenreduce using rule 107 + %eof reduce using rule 107 State 46 - Term7 -> '0₂' . (rule 85) + Term7 -> '0₂' . (rule 88) + + '(' reduce using rule 88 + ')' reduce using rule 88 + '*' reduce using rule 88 + '*_1' reduce using rule 88 + '*₁' reduce using rule 88 + ',' reduce using rule 88 + '->' reduce using rule 88 + '/\\' reduce using rule 88 + '0_2' reduce using rule 88 + '0₂' reduce using rule 88 + '1' reduce using rule 88 + '1_2' reduce using rule 88 + '1₂' reduce using rule 88 + '2' reduce using rule 88 + ':' reduce using rule 88 + ':=' reduce using rule 88 + ';' reduce using rule 88 + '<' reduce using rule 88 + '<=' reduce using rule 88 + '=' reduce using rule 88 + '===' reduce using rule 88 + '=_{' reduce using rule 88 + '>' reduce using rule 88 + 'BOT' reduce using rule 88 + 'CUBE' reduce using rule 88 + 'TOP' reduce using rule 88 + 'TOPE' reduce using rule 88 + 'U' reduce using rule 88 + 'Unit' reduce using rule 88 + '[' reduce using rule 88 + '\\/' reduce using rule 88 + ']' reduce using rule 88 + 'as' reduce using rule 88 + 'idJ' reduce using rule 88 + 'recBOT' reduce using rule 88 + 'recOR' reduce using rule 88 + 'refl' reduce using rule 88 + 'refl_{' reduce using rule 88 + 'unit' reduce using rule 88 + '|' reduce using rule 88 + '|->' reduce using rule 88 + '}' reduce using rule 88 + '×' reduce using rule 88 + '→' reduce using rule 88 + '↦' reduce using rule 88 + '∧' reduce using rule 88 + '∨' reduce using rule 88 + '≡' reduce using rule 88 + '≤' reduce using rule 88 + '⊤' reduce using rule 88 + '⊥' reduce using rule 88 + L_VarIdentTokenreduce using rule 88 + L_HoleIdentTokenreduce using rule 88 + %eof reduce using rule 88 + + +State 47 + + Term7 -> '1' . (rule 85) '(' reduce using rule 85 ')' reduce using rule 85 @@ -1854,275 +1926,215 @@ State 46 'Unit' reduce using rule 85 '[' reduce using rule 85 '\\/' reduce using rule 85 - ']' reduce using rule 85 - 'as' reduce using rule 85 - 'idJ' reduce using rule 85 - 'recBOT' reduce using rule 85 - 'recOR' reduce using rule 85 - 'refl' reduce using rule 85 - 'refl_{' reduce using rule 85 - 'unit' reduce using rule 85 - '|' reduce using rule 85 - '|->' reduce using rule 85 - '}' reduce using rule 85 - '×' reduce using rule 85 - '→' reduce using rule 85 - '↦' reduce using rule 85 - '∧' reduce using rule 85 - '∨' reduce using rule 85 - '≡' reduce using rule 85 - '≤' reduce using rule 85 - '⊤' reduce using rule 85 - '⊥' reduce using rule 85 - L_VarIdentTokenreduce using rule 85 - L_HoleIdentTokenreduce using rule 85 - %eof reduce using rule 85 - - -State 47 - - Term7 -> '1' . (rule 82) - - '(' reduce using rule 82 - ')' reduce using rule 82 - '*' reduce using rule 82 - '*_1' reduce using rule 82 - '*₁' reduce using rule 82 - ',' reduce using rule 82 - '->' reduce using rule 82 - '/\\' reduce using rule 82 - '0_2' reduce using rule 82 - '0₂' reduce using rule 82 - '1' reduce using rule 82 - '1_2' reduce using rule 82 - '1₂' reduce using rule 82 - '2' reduce using rule 82 - ':' reduce using rule 82 - ':=' reduce using rule 82 - ';' reduce using rule 82 - '<' reduce using rule 82 - '<=' reduce using rule 82 - '=' reduce using rule 82 - '===' reduce using rule 82 - '=_{' reduce using rule 82 - '>' reduce using rule 82 - 'BOT' reduce using rule 82 - 'CUBE' reduce using rule 82 - 'TOP' reduce using rule 82 - 'TOPE' reduce using rule 82 - 'U' reduce using rule 82 - 'Unit' reduce using rule 82 - '[' reduce using rule 82 - '\\/' reduce using rule 82 - ']' reduce using rule 82 - 'as' reduce using rule 82 - 'idJ' reduce using rule 82 - 'recBOT' reduce using rule 82 - 'recOR' reduce using rule 82 - 'refl' reduce using rule 82 - 'refl_{' reduce using rule 82 - 'unit' reduce using rule 82 - '|' reduce using rule 82 - '|->' reduce using rule 82 - '}' reduce using rule 82 - '×' reduce using rule 82 - '→' reduce using rule 82 - '↦' reduce using rule 82 - '∧' reduce using rule 82 - '∨' reduce using rule 82 - '≡' reduce using rule 82 - '≤' reduce using rule 82 - '⊤' reduce using rule 82 - '⊥' reduce using rule 82 - L_VarIdentTokenreduce using rule 82 - L_HoleIdentTokenreduce using rule 82 - %eof reduce using rule 82 + ']' reduce using rule 85 + 'as' reduce using rule 85 + 'idJ' reduce using rule 85 + 'recBOT' reduce using rule 85 + 'recOR' reduce using rule 85 + 'refl' reduce using rule 85 + 'refl_{' reduce using rule 85 + 'unit' reduce using rule 85 + '|' reduce using rule 85 + '|->' reduce using rule 85 + '}' reduce using rule 85 + '×' reduce using rule 85 + '→' reduce using rule 85 + '↦' reduce using rule 85 + '∧' reduce using rule 85 + '∨' reduce using rule 85 + '≡' reduce using rule 85 + '≤' reduce using rule 85 + '⊤' reduce using rule 85 + '⊥' reduce using rule 85 + L_VarIdentTokenreduce using rule 85 + L_HoleIdentTokenreduce using rule 85 + %eof reduce using rule 85 State 48 - Term7 -> '1_2' . (rule 105) + Term7 -> '1_2' . (rule 108) - '(' reduce using rule 105 - ')' reduce using rule 105 - '*' reduce using rule 105 - '*_1' reduce using rule 105 - '*₁' reduce using rule 105 - ',' reduce using rule 105 - '->' reduce using rule 105 - '/\\' reduce using rule 105 - '0_2' reduce using rule 105 - '0₂' reduce using rule 105 - '1' reduce using rule 105 - '1_2' reduce using rule 105 - '1₂' reduce using rule 105 - '2' reduce using rule 105 - ':' reduce using rule 105 - ':=' reduce using rule 105 - ';' reduce using rule 105 - '<' reduce using rule 105 - '<=' reduce using rule 105 - '=' reduce using rule 105 - '===' reduce using rule 105 - '=_{' reduce using rule 105 - '>' reduce using rule 105 - 'BOT' reduce using rule 105 - 'CUBE' reduce using rule 105 - 'TOP' reduce using rule 105 - 'TOPE' reduce using rule 105 - 'U' reduce using rule 105 - 'Unit' reduce using rule 105 - '[' reduce using rule 105 - '\\/' reduce using rule 105 - ']' reduce using rule 105 - 'as' reduce using rule 105 - 'idJ' reduce using rule 105 - 'recBOT' reduce using rule 105 - 'recOR' reduce using rule 105 - 'refl' reduce using rule 105 - 'refl_{' reduce using rule 105 - 'unit' reduce using rule 105 - '|' reduce using rule 105 - '|->' reduce using rule 105 - '}' reduce using rule 105 - '×' reduce using rule 105 - '→' reduce using rule 105 - '↦' reduce using rule 105 - '∧' reduce using rule 105 - '∨' reduce using rule 105 - '≡' reduce using rule 105 - '≤' reduce using rule 105 - '⊤' reduce using rule 105 - '⊥' reduce using rule 105 - L_VarIdentTokenreduce using rule 105 - L_HoleIdentTokenreduce using rule 105 - %eof reduce using rule 105 + '(' reduce using rule 108 + ')' reduce using rule 108 + '*' reduce using rule 108 + '*_1' reduce using rule 108 + '*₁' reduce using rule 108 + ',' reduce using rule 108 + '->' reduce using rule 108 + '/\\' reduce using rule 108 + '0_2' reduce using rule 108 + '0₂' reduce using rule 108 + '1' reduce using rule 108 + '1_2' reduce using rule 108 + '1₂' reduce using rule 108 + '2' reduce using rule 108 + ':' reduce using rule 108 + ':=' reduce using rule 108 + ';' reduce using rule 108 + '<' reduce using rule 108 + '<=' reduce using rule 108 + '=' reduce using rule 108 + '===' reduce using rule 108 + '=_{' reduce using rule 108 + '>' reduce using rule 108 + 'BOT' reduce using rule 108 + 'CUBE' reduce using rule 108 + 'TOP' reduce using rule 108 + 'TOPE' reduce using rule 108 + 'U' reduce using rule 108 + 'Unit' reduce using rule 108 + '[' reduce using rule 108 + '\\/' reduce using rule 108 + ']' reduce using rule 108 + 'as' reduce using rule 108 + 'idJ' reduce using rule 108 + 'recBOT' reduce using rule 108 + 'recOR' reduce using rule 108 + 'refl' reduce using rule 108 + 'refl_{' reduce using rule 108 + 'unit' reduce using rule 108 + '|' reduce using rule 108 + '|->' reduce using rule 108 + '}' reduce using rule 108 + '×' reduce using rule 108 + '→' reduce using rule 108 + '↦' reduce using rule 108 + '∧' reduce using rule 108 + '∨' reduce using rule 108 + '≡' reduce using rule 108 + '≤' reduce using rule 108 + '⊤' reduce using rule 108 + '⊥' reduce using rule 108 + L_VarIdentTokenreduce using rule 108 + L_HoleIdentTokenreduce using rule 108 + %eof reduce using rule 108 State 49 - Term7 -> '1₂' . (rule 86) - - '(' reduce using rule 86 - ')' reduce using rule 86 - '*' reduce using rule 86 - '*_1' reduce using rule 86 - '*₁' reduce using rule 86 - ',' reduce using rule 86 - '->' reduce using rule 86 - '/\\' reduce using rule 86 - '0_2' reduce using rule 86 - '0₂' reduce using rule 86 - '1' reduce using rule 86 - '1_2' reduce using rule 86 - '1₂' reduce using rule 86 - '2' reduce using rule 86 - ':' reduce using rule 86 - ':=' reduce using rule 86 - ';' reduce using rule 86 - '<' reduce using rule 86 - '<=' reduce using rule 86 - '=' reduce using rule 86 - '===' reduce using rule 86 - '=_{' reduce using rule 86 - '>' reduce using rule 86 - 'BOT' reduce using rule 86 - 'CUBE' reduce using rule 86 - 'TOP' reduce using rule 86 - 'TOPE' reduce using rule 86 - 'U' reduce using rule 86 - 'Unit' reduce using rule 86 - '[' reduce using rule 86 - '\\/' reduce using rule 86 - ']' reduce using rule 86 - 'as' reduce using rule 86 - 'idJ' reduce using rule 86 - 'recBOT' reduce using rule 86 - 'recOR' reduce using rule 86 - 'refl' reduce using rule 86 - 'refl_{' reduce using rule 86 - 'unit' reduce using rule 86 - '|' reduce using rule 86 - '|->' reduce using rule 86 - '}' reduce using rule 86 - '×' reduce using rule 86 - '→' reduce using rule 86 - '↦' reduce using rule 86 - '∧' reduce using rule 86 - '∨' reduce using rule 86 - '≡' reduce using rule 86 - '≤' reduce using rule 86 - '⊤' reduce using rule 86 - '⊥' reduce using rule 86 - L_VarIdentTokenreduce using rule 86 - L_HoleIdentTokenreduce using rule 86 - %eof reduce using rule 86 - - -State 50 - - Term7 -> '2' . (rule 84) + Term7 -> '1₂' . (rule 89) - '(' reduce using rule 84 - ')' reduce using rule 84 - '*' reduce using rule 84 - '*_1' reduce using rule 84 - '*₁' reduce using rule 84 - ',' reduce using rule 84 - '->' reduce using rule 84 - '/\\' reduce using rule 84 - '0_2' reduce using rule 84 - '0₂' reduce using rule 84 - '1' reduce using rule 84 - '1_2' reduce using rule 84 - '1₂' reduce using rule 84 - '2' reduce using rule 84 - ':' reduce using rule 84 - ':=' reduce using rule 84 - ';' reduce using rule 84 - '<' reduce using rule 84 - '<=' reduce using rule 84 - '=' reduce using rule 84 - '===' reduce using rule 84 - '=_{' reduce using rule 84 - '>' reduce using rule 84 - 'BOT' reduce using rule 84 - 'CUBE' reduce using rule 84 - 'TOP' reduce using rule 84 - 'TOPE' reduce using rule 84 - 'U' reduce using rule 84 - 'Unit' reduce using rule 84 - '[' reduce using rule 84 - '\\/' reduce using rule 84 - ']' reduce using rule 84 - 'as' reduce using rule 84 - 'idJ' reduce using rule 84 - 'recBOT' reduce using rule 84 - 'recOR' reduce using rule 84 - 'refl' reduce using rule 84 - 'refl_{' reduce using rule 84 - 'unit' reduce using rule 84 - '|' reduce using rule 84 - '|->' reduce using rule 84 - '}' reduce using rule 84 - '×' reduce using rule 84 - '→' reduce using rule 84 - '↦' reduce using rule 84 - '∧' reduce using rule 84 - '∨' reduce using rule 84 - '≡' reduce using rule 84 - '≤' reduce using rule 84 - '⊤' reduce using rule 84 - '⊥' reduce using rule 84 - L_VarIdentTokenreduce using rule 84 - L_HoleIdentTokenreduce using rule 84 - %eof reduce using rule 84 + '(' reduce using rule 89 + ')' reduce using rule 89 + '*' reduce using rule 89 + '*_1' reduce using rule 89 + '*₁' reduce using rule 89 + ',' reduce using rule 89 + '->' reduce using rule 89 + '/\\' reduce using rule 89 + '0_2' reduce using rule 89 + '0₂' reduce using rule 89 + '1' reduce using rule 89 + '1_2' reduce using rule 89 + '1₂' reduce using rule 89 + '2' reduce using rule 89 + ':' reduce using rule 89 + ':=' reduce using rule 89 + ';' reduce using rule 89 + '<' reduce using rule 89 + '<=' reduce using rule 89 + '=' reduce using rule 89 + '===' reduce using rule 89 + '=_{' reduce using rule 89 + '>' reduce using rule 89 + 'BOT' reduce using rule 89 + 'CUBE' reduce using rule 89 + 'TOP' reduce using rule 89 + 'TOPE' reduce using rule 89 + 'U' reduce using rule 89 + 'Unit' reduce using rule 89 + '[' reduce using rule 89 + '\\/' reduce using rule 89 + ']' reduce using rule 89 + 'as' reduce using rule 89 + 'idJ' reduce using rule 89 + 'recBOT' reduce using rule 89 + 'recOR' reduce using rule 89 + 'refl' reduce using rule 89 + 'refl_{' reduce using rule 89 + 'unit' reduce using rule 89 + '|' reduce using rule 89 + '|->' reduce using rule 89 + '}' reduce using rule 89 + '×' reduce using rule 89 + '→' reduce using rule 89 + '↦' reduce using rule 89 + '∧' reduce using rule 89 + '∨' reduce using rule 89 + '≡' reduce using rule 89 + '≤' reduce using rule 89 + '⊤' reduce using rule 89 + '⊥' reduce using rule 89 + L_VarIdentTokenreduce using rule 89 + L_HoleIdentTokenreduce using rule 89 + %eof reduce using rule 89 + + +State 50 + + Term7 -> '2' . (rule 87) + + '(' reduce using rule 87 + ')' reduce using rule 87 + '*' reduce using rule 87 + '*_1' reduce using rule 87 + '*₁' reduce using rule 87 + ',' reduce using rule 87 + '->' reduce using rule 87 + '/\\' reduce using rule 87 + '0_2' reduce using rule 87 + '0₂' reduce using rule 87 + '1' reduce using rule 87 + '1_2' reduce using rule 87 + '1₂' reduce using rule 87 + '2' reduce using rule 87 + ':' reduce using rule 87 + ':=' reduce using rule 87 + ';' reduce using rule 87 + '<' reduce using rule 87 + '<=' reduce using rule 87 + '=' reduce using rule 87 + '===' reduce using rule 87 + '=_{' reduce using rule 87 + '>' reduce using rule 87 + 'BOT' reduce using rule 87 + 'CUBE' reduce using rule 87 + 'TOP' reduce using rule 87 + 'TOPE' reduce using rule 87 + 'U' reduce using rule 87 + 'Unit' reduce using rule 87 + '[' reduce using rule 87 + '\\/' reduce using rule 87 + ']' reduce using rule 87 + 'as' reduce using rule 87 + 'idJ' reduce using rule 87 + 'recBOT' reduce using rule 87 + 'recOR' reduce using rule 87 + 'refl' reduce using rule 87 + 'refl_{' reduce using rule 87 + 'unit' reduce using rule 87 + '|' reduce using rule 87 + '|->' reduce using rule 87 + '}' reduce using rule 87 + '×' reduce using rule 87 + '→' reduce using rule 87 + '↦' reduce using rule 87 + '∧' reduce using rule 87 + '∨' reduce using rule 87 + '≡' reduce using rule 87 + '≤' reduce using rule 87 + '⊤' reduce using rule 87 + '⊥' reduce using rule 87 + L_VarIdentTokenreduce using rule 87 + L_HoleIdentTokenreduce using rule 87 + %eof reduce using rule 87 State 51 - Term7 -> '<' . ParamDecl '→' Term '>' (rule 93) - Term7 -> '<' . ParamDecl '->' Term '>' (rule 108) + Term7 -> '<' . ParamDecl '→' Term '>' (rule 96) + Term7 -> '<' . ParamDecl '->' Term '>' (rule 111) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -2160,320 +2172,440 @@ State 51 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 183 + ParamDecl goto state 189 Term7 goto state 33 Term6 goto state 93 State 52 - Term7 -> 'BOT' . (rule 107) + Term7 -> 'BOT' . (rule 110) - '(' reduce using rule 107 - ')' reduce using rule 107 - '*' reduce using rule 107 - '*_1' reduce using rule 107 - '*₁' reduce using rule 107 - ',' reduce using rule 107 - '->' reduce using rule 107 - '/\\' reduce using rule 107 - '0_2' reduce using rule 107 - '0₂' reduce using rule 107 - '1' reduce using rule 107 - '1_2' reduce using rule 107 - '1₂' reduce using rule 107 - '2' reduce using rule 107 - ':' reduce using rule 107 - ':=' reduce using rule 107 - ';' reduce using rule 107 - '<' reduce using rule 107 - '<=' reduce using rule 107 - '=' reduce using rule 107 - '===' reduce using rule 107 - '=_{' reduce using rule 107 - '>' reduce using rule 107 - 'BOT' reduce using rule 107 - 'CUBE' reduce using rule 107 - 'TOP' reduce using rule 107 - 'TOPE' reduce using rule 107 - 'U' reduce using rule 107 - 'Unit' reduce using rule 107 - '[' reduce using rule 107 - '\\/' reduce using rule 107 - ']' reduce using rule 107 - 'as' reduce using rule 107 - 'idJ' reduce using rule 107 - 'recBOT' reduce using rule 107 - 'recOR' reduce using rule 107 - 'refl' reduce using rule 107 - 'refl_{' reduce using rule 107 - 'unit' reduce using rule 107 - '|' reduce using rule 107 - '|->' reduce using rule 107 - '}' reduce using rule 107 - '×' reduce using rule 107 - '→' reduce using rule 107 - '↦' reduce using rule 107 - '∧' reduce using rule 107 - '∨' reduce using rule 107 - '≡' reduce using rule 107 - '≤' reduce using rule 107 - '⊤' reduce using rule 107 - '⊥' reduce using rule 107 - L_VarIdentTokenreduce using rule 107 - L_HoleIdentTokenreduce using rule 107 - %eof reduce using rule 107 + '(' reduce using rule 110 + ')' reduce using rule 110 + '*' reduce using rule 110 + '*_1' reduce using rule 110 + '*₁' reduce using rule 110 + ',' reduce using rule 110 + '->' reduce using rule 110 + '/\\' reduce using rule 110 + '0_2' reduce using rule 110 + '0₂' reduce using rule 110 + '1' reduce using rule 110 + '1_2' reduce using rule 110 + '1₂' reduce using rule 110 + '2' reduce using rule 110 + ':' reduce using rule 110 + ':=' reduce using rule 110 + ';' reduce using rule 110 + '<' reduce using rule 110 + '<=' reduce using rule 110 + '=' reduce using rule 110 + '===' reduce using rule 110 + '=_{' reduce using rule 110 + '>' reduce using rule 110 + 'BOT' reduce using rule 110 + 'CUBE' reduce using rule 110 + 'TOP' reduce using rule 110 + 'TOPE' reduce using rule 110 + 'U' reduce using rule 110 + 'Unit' reduce using rule 110 + '[' reduce using rule 110 + '\\/' reduce using rule 110 + ']' reduce using rule 110 + 'as' reduce using rule 110 + 'idJ' reduce using rule 110 + 'recBOT' reduce using rule 110 + 'recOR' reduce using rule 110 + 'refl' reduce using rule 110 + 'refl_{' reduce using rule 110 + 'unit' reduce using rule 110 + '|' reduce using rule 110 + '|->' reduce using rule 110 + '}' reduce using rule 110 + '×' reduce using rule 110 + '→' reduce using rule 110 + '↦' reduce using rule 110 + '∧' reduce using rule 110 + '∨' reduce using rule 110 + '≡' reduce using rule 110 + '≤' reduce using rule 110 + '⊤' reduce using rule 110 + '⊥' reduce using rule 110 + L_VarIdentTokenreduce using rule 110 + L_HoleIdentTokenreduce using rule 110 + %eof reduce using rule 110 + + +State 53 + + Term7 -> 'CUBE' . (rule 83) + + '(' reduce using rule 83 + ')' reduce using rule 83 + '*' reduce using rule 83 + '*_1' reduce using rule 83 + '*₁' reduce using rule 83 + ',' reduce using rule 83 + '->' reduce using rule 83 + '/\\' reduce using rule 83 + '0_2' reduce using rule 83 + '0₂' reduce using rule 83 + '1' reduce using rule 83 + '1_2' reduce using rule 83 + '1₂' reduce using rule 83 + '2' reduce using rule 83 + ':' reduce using rule 83 + ':=' reduce using rule 83 + ';' reduce using rule 83 + '<' reduce using rule 83 + '<=' reduce using rule 83 + '=' reduce using rule 83 + '===' reduce using rule 83 + '=_{' reduce using rule 83 + '>' reduce using rule 83 + 'BOT' reduce using rule 83 + 'CUBE' reduce using rule 83 + 'TOP' reduce using rule 83 + 'TOPE' reduce using rule 83 + 'U' reduce using rule 83 + 'Unit' reduce using rule 83 + '[' reduce using rule 83 + '\\/' reduce using rule 83 + ']' reduce using rule 83 + 'as' reduce using rule 83 + 'idJ' reduce using rule 83 + 'recBOT' reduce using rule 83 + 'recOR' reduce using rule 83 + 'refl' reduce using rule 83 + 'refl_{' reduce using rule 83 + 'unit' reduce using rule 83 + '|' reduce using rule 83 + '|->' reduce using rule 83 + '}' reduce using rule 83 + '×' reduce using rule 83 + '→' reduce using rule 83 + '↦' reduce using rule 83 + '∧' reduce using rule 83 + '∨' reduce using rule 83 + '≡' reduce using rule 83 + '≤' reduce using rule 83 + '⊤' reduce using rule 83 + '⊥' reduce using rule 83 + L_VarIdentTokenreduce using rule 83 + L_HoleIdentTokenreduce using rule 83 + %eof reduce using rule 83 + + +State 54 + + Term1 -> 'Sigma' . '(' Pattern ':' Term ')' ',' Term1 (rule 133) + + '(' shift, and enter state 188 + + +State 55 + + Term7 -> 'TOP' . (rule 109) + + '(' reduce using rule 109 + ')' reduce using rule 109 + '*' reduce using rule 109 + '*_1' reduce using rule 109 + '*₁' reduce using rule 109 + ',' reduce using rule 109 + '->' reduce using rule 109 + '/\\' reduce using rule 109 + '0_2' reduce using rule 109 + '0₂' reduce using rule 109 + '1' reduce using rule 109 + '1_2' reduce using rule 109 + '1₂' reduce using rule 109 + '2' reduce using rule 109 + ':' reduce using rule 109 + ':=' reduce using rule 109 + ';' reduce using rule 109 + '<' reduce using rule 109 + '<=' reduce using rule 109 + '=' reduce using rule 109 + '===' reduce using rule 109 + '=_{' reduce using rule 109 + '>' reduce using rule 109 + 'BOT' reduce using rule 109 + 'CUBE' reduce using rule 109 + 'TOP' reduce using rule 109 + 'TOPE' reduce using rule 109 + 'U' reduce using rule 109 + 'Unit' reduce using rule 109 + '[' reduce using rule 109 + '\\/' reduce using rule 109 + ']' reduce using rule 109 + 'as' reduce using rule 109 + 'idJ' reduce using rule 109 + 'recBOT' reduce using rule 109 + 'recOR' reduce using rule 109 + 'refl' reduce using rule 109 + 'refl_{' reduce using rule 109 + 'unit' reduce using rule 109 + '|' reduce using rule 109 + '|->' reduce using rule 109 + '}' reduce using rule 109 + '×' reduce using rule 109 + '→' reduce using rule 109 + '↦' reduce using rule 109 + '∧' reduce using rule 109 + '∨' reduce using rule 109 + '≡' reduce using rule 109 + '≤' reduce using rule 109 + '⊤' reduce using rule 109 + '⊥' reduce using rule 109 + L_VarIdentTokenreduce using rule 109 + L_HoleIdentTokenreduce using rule 109 + %eof reduce using rule 109 -State 53 +State 56 - Term7 -> 'CUBE' . (rule 80) + Term7 -> 'TOPE' . (rule 84) - '(' reduce using rule 80 - ')' reduce using rule 80 - '*' reduce using rule 80 - '*_1' reduce using rule 80 - '*₁' reduce using rule 80 - ',' reduce using rule 80 - '->' reduce using rule 80 - '/\\' reduce using rule 80 - '0_2' reduce using rule 80 - '0₂' reduce using rule 80 - '1' reduce using rule 80 - '1_2' reduce using rule 80 - '1₂' reduce using rule 80 - '2' reduce using rule 80 - ':' reduce using rule 80 - ':=' reduce using rule 80 - ';' reduce using rule 80 - '<' reduce using rule 80 - '<=' reduce using rule 80 - '=' reduce using rule 80 - '===' reduce using rule 80 - '=_{' reduce using rule 80 - '>' reduce using rule 80 - 'BOT' reduce using rule 80 - 'CUBE' reduce using rule 80 - 'TOP' reduce using rule 80 - 'TOPE' reduce using rule 80 - 'U' reduce using rule 80 - 'Unit' reduce using rule 80 - '[' reduce using rule 80 - '\\/' reduce using rule 80 - ']' reduce using rule 80 - 'as' reduce using rule 80 - 'idJ' reduce using rule 80 - 'recBOT' reduce using rule 80 - 'recOR' reduce using rule 80 - 'refl' reduce using rule 80 - 'refl_{' reduce using rule 80 - 'unit' reduce using rule 80 - '|' reduce using rule 80 - '|->' reduce using rule 80 - '}' reduce using rule 80 - '×' reduce using rule 80 - '→' reduce using rule 80 - '↦' reduce using rule 80 - '∧' reduce using rule 80 - '∨' reduce using rule 80 - '≡' reduce using rule 80 - '≤' reduce using rule 80 - '⊤' reduce using rule 80 - '⊥' reduce using rule 80 - L_VarIdentTokenreduce using rule 80 - L_HoleIdentTokenreduce using rule 80 - %eof reduce using rule 80 + '(' reduce using rule 84 + ')' reduce using rule 84 + '*' reduce using rule 84 + '*_1' reduce using rule 84 + '*₁' reduce using rule 84 + ',' reduce using rule 84 + '->' reduce using rule 84 + '/\\' reduce using rule 84 + '0_2' reduce using rule 84 + '0₂' reduce using rule 84 + '1' reduce using rule 84 + '1_2' reduce using rule 84 + '1₂' reduce using rule 84 + '2' reduce using rule 84 + ':' reduce using rule 84 + ':=' reduce using rule 84 + ';' reduce using rule 84 + '<' reduce using rule 84 + '<=' reduce using rule 84 + '=' reduce using rule 84 + '===' reduce using rule 84 + '=_{' reduce using rule 84 + '>' reduce using rule 84 + 'BOT' reduce using rule 84 + 'CUBE' reduce using rule 84 + 'TOP' reduce using rule 84 + 'TOPE' reduce using rule 84 + 'U' reduce using rule 84 + 'Unit' reduce using rule 84 + '[' reduce using rule 84 + '\\/' reduce using rule 84 + ']' reduce using rule 84 + 'as' reduce using rule 84 + 'idJ' reduce using rule 84 + 'recBOT' reduce using rule 84 + 'recOR' reduce using rule 84 + 'refl' reduce using rule 84 + 'refl_{' reduce using rule 84 + 'unit' reduce using rule 84 + '|' reduce using rule 84 + '|->' reduce using rule 84 + '}' reduce using rule 84 + '×' reduce using rule 84 + '→' reduce using rule 84 + '↦' reduce using rule 84 + '∧' reduce using rule 84 + '∨' reduce using rule 84 + '≡' reduce using rule 84 + '≤' reduce using rule 84 + '⊤' reduce using rule 84 + '⊥' reduce using rule 84 + L_VarIdentTokenreduce using rule 84 + L_HoleIdentTokenreduce using rule 84 + %eof reduce using rule 84 -State 54 +State 57 + + Term7 -> 'U' . (rule 82) + + '(' reduce using rule 82 + ')' reduce using rule 82 + '*' reduce using rule 82 + '*_1' reduce using rule 82 + '*₁' reduce using rule 82 + ',' reduce using rule 82 + '->' reduce using rule 82 + '/\\' reduce using rule 82 + '0_2' reduce using rule 82 + '0₂' reduce using rule 82 + '1' reduce using rule 82 + '1_2' reduce using rule 82 + '1₂' reduce using rule 82 + '2' reduce using rule 82 + ':' reduce using rule 82 + ':=' reduce using rule 82 + ';' reduce using rule 82 + '<' reduce using rule 82 + '<=' reduce using rule 82 + '=' reduce using rule 82 + '===' reduce using rule 82 + '=_{' reduce using rule 82 + '>' reduce using rule 82 + 'BOT' reduce using rule 82 + 'CUBE' reduce using rule 82 + 'TOP' reduce using rule 82 + 'TOPE' reduce using rule 82 + 'U' reduce using rule 82 + 'Unit' reduce using rule 82 + '[' reduce using rule 82 + '\\/' reduce using rule 82 + ']' reduce using rule 82 + 'as' reduce using rule 82 + 'idJ' reduce using rule 82 + 'recBOT' reduce using rule 82 + 'recOR' reduce using rule 82 + 'refl' reduce using rule 82 + 'refl_{' reduce using rule 82 + 'unit' reduce using rule 82 + '|' reduce using rule 82 + '|->' reduce using rule 82 + '}' reduce using rule 82 + '×' reduce using rule 82 + '→' reduce using rule 82 + '↦' reduce using rule 82 + '∧' reduce using rule 82 + '∨' reduce using rule 82 + '≡' reduce using rule 82 + '≤' reduce using rule 82 + '⊤' reduce using rule 82 + '⊥' reduce using rule 82 + L_VarIdentTokenreduce using rule 82 + L_HoleIdentTokenreduce using rule 82 + %eof reduce using rule 82 - Term1 -> 'Sigma' . '(' Pattern ':' Term ')' ',' Term1 (rule 130) - '(' shift, and enter state 182 +State 58 + Term7 -> 'Unit' . (rule 95) -State 55 + '(' reduce using rule 95 + ')' reduce using rule 95 + '*' reduce using rule 95 + '*_1' reduce using rule 95 + '*₁' reduce using rule 95 + ',' reduce using rule 95 + '->' reduce using rule 95 + '/\\' reduce using rule 95 + '0_2' reduce using rule 95 + '0₂' reduce using rule 95 + '1' reduce using rule 95 + '1_2' reduce using rule 95 + '1₂' reduce using rule 95 + '2' reduce using rule 95 + ':' reduce using rule 95 + ':=' reduce using rule 95 + ';' reduce using rule 95 + '<' reduce using rule 95 + '<=' reduce using rule 95 + '=' reduce using rule 95 + '===' reduce using rule 95 + '=_{' reduce using rule 95 + '>' reduce using rule 95 + 'BOT' reduce using rule 95 + 'CUBE' reduce using rule 95 + 'TOP' reduce using rule 95 + 'TOPE' reduce using rule 95 + 'U' reduce using rule 95 + 'Unit' reduce using rule 95 + '[' reduce using rule 95 + '\\/' reduce using rule 95 + ']' reduce using rule 95 + 'as' reduce using rule 95 + 'idJ' reduce using rule 95 + 'recBOT' reduce using rule 95 + 'recOR' reduce using rule 95 + 'refl' reduce using rule 95 + 'refl_{' reduce using rule 95 + 'unit' reduce using rule 95 + '|' reduce using rule 95 + '|->' reduce using rule 95 + '}' reduce using rule 95 + '×' reduce using rule 95 + '→' reduce using rule 95 + '↦' reduce using rule 95 + '∧' reduce using rule 95 + '∨' reduce using rule 95 + '≡' reduce using rule 95 + '≤' reduce using rule 95 + '⊤' reduce using rule 95 + '⊥' reduce using rule 95 + L_VarIdentTokenreduce using rule 95 + L_HoleIdentTokenreduce using rule 95 + %eof reduce using rule 95 - Term7 -> 'TOP' . (rule 106) - '(' reduce using rule 106 - ')' reduce using rule 106 - '*' reduce using rule 106 - '*_1' reduce using rule 106 - '*₁' reduce using rule 106 - ',' reduce using rule 106 - '->' reduce using rule 106 - '/\\' reduce using rule 106 - '0_2' reduce using rule 106 - '0₂' reduce using rule 106 - '1' reduce using rule 106 - '1_2' reduce using rule 106 - '1₂' reduce using rule 106 - '2' reduce using rule 106 - ':' reduce using rule 106 - ':=' reduce using rule 106 - ';' reduce using rule 106 - '<' reduce using rule 106 - '<=' reduce using rule 106 - '=' reduce using rule 106 - '===' reduce using rule 106 - '=_{' reduce using rule 106 - '>' reduce using rule 106 - 'BOT' reduce using rule 106 - 'CUBE' reduce using rule 106 - 'TOP' reduce using rule 106 - 'TOPE' reduce using rule 106 - 'U' reduce using rule 106 - 'Unit' reduce using rule 106 - '[' reduce using rule 106 - '\\/' reduce using rule 106 - ']' reduce using rule 106 - 'as' reduce using rule 106 - 'idJ' reduce using rule 106 - 'recBOT' reduce using rule 106 - 'recOR' reduce using rule 106 - 'refl' reduce using rule 106 - 'refl_{' reduce using rule 106 - 'unit' reduce using rule 106 - '|' reduce using rule 106 - '|->' reduce using rule 106 - '}' reduce using rule 106 - '×' reduce using rule 106 - '→' reduce using rule 106 - '↦' reduce using rule 106 - '∧' reduce using rule 106 - '∨' reduce using rule 106 - '≡' reduce using rule 106 - '≤' reduce using rule 106 - '⊤' reduce using rule 106 - '⊥' reduce using rule 106 - L_VarIdentTokenreduce using rule 106 - L_HoleIdentTokenreduce using rule 106 - %eof reduce using rule 106 +State 59 + + Term1 -> '\\' . ListParam '→' Term1 (rule 130) + Term1 -> '\\' . ListParam '->' Term1 (rule 134) + + '(' shift, and enter state 98 + 'unit' shift, and enter state 99 + '{' shift, and enter state 100 + L_VarIdentTokenshift, and enter state 75 + VarIdentToken goto state 28 + VarIdent goto state 94 + Pattern goto state 95 + Param goto state 96 + ListParam goto state 187 -State 56 +State 60 - Term7 -> 'TOPE' . (rule 81) + Term6 -> 'first' . Term7 (rule 141) - '(' reduce using rule 81 - ')' reduce using rule 81 - '*' reduce using rule 81 - '*_1' reduce using rule 81 - '*₁' reduce using rule 81 - ',' reduce using rule 81 - '->' reduce using rule 81 - '/\\' reduce using rule 81 - '0_2' reduce using rule 81 - '0₂' reduce using rule 81 - '1' reduce using rule 81 - '1_2' reduce using rule 81 - '1₂' reduce using rule 81 - '2' reduce using rule 81 - ':' reduce using rule 81 - ':=' reduce using rule 81 - ';' reduce using rule 81 - '<' reduce using rule 81 - '<=' reduce using rule 81 - '=' reduce using rule 81 - '===' reduce using rule 81 - '=_{' reduce using rule 81 - '>' reduce using rule 81 - 'BOT' reduce using rule 81 - 'CUBE' reduce using rule 81 - 'TOP' reduce using rule 81 - 'TOPE' reduce using rule 81 - 'U' reduce using rule 81 - 'Unit' reduce using rule 81 - '[' reduce using rule 81 - '\\/' reduce using rule 81 - ']' reduce using rule 81 - 'as' reduce using rule 81 - 'idJ' reduce using rule 81 - 'recBOT' reduce using rule 81 - 'recOR' reduce using rule 81 - 'refl' reduce using rule 81 - 'refl_{' reduce using rule 81 - 'unit' reduce using rule 81 - '|' reduce using rule 81 - '|->' reduce using rule 81 - '}' reduce using rule 81 - '×' reduce using rule 81 - '→' reduce using rule 81 - '↦' reduce using rule 81 - '∧' reduce using rule 81 - '∨' reduce using rule 81 - '≡' reduce using rule 81 - '≤' reduce using rule 81 - '⊤' reduce using rule 81 - '⊥' reduce using rule 81 - L_VarIdentTokenreduce using rule 81 - L_HoleIdentTokenreduce using rule 81 - %eof reduce using rule 81 + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'unit' shift, and enter state 67 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 186 -State 57 +State 61 - Term7 -> 'U' . (rule 79) + Term7 -> 'idJ' . '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 102) - '(' reduce using rule 79 - ')' reduce using rule 79 - '*' reduce using rule 79 - '*_1' reduce using rule 79 - '*₁' reduce using rule 79 - ',' reduce using rule 79 - '->' reduce using rule 79 - '/\\' reduce using rule 79 - '0_2' reduce using rule 79 - '0₂' reduce using rule 79 - '1' reduce using rule 79 - '1_2' reduce using rule 79 - '1₂' reduce using rule 79 - '2' reduce using rule 79 - ':' reduce using rule 79 - ':=' reduce using rule 79 - ';' reduce using rule 79 - '<' reduce using rule 79 - '<=' reduce using rule 79 - '=' reduce using rule 79 - '===' reduce using rule 79 - '=_{' reduce using rule 79 - '>' reduce using rule 79 - 'BOT' reduce using rule 79 - 'CUBE' reduce using rule 79 - 'TOP' reduce using rule 79 - 'TOPE' reduce using rule 79 - 'U' reduce using rule 79 - 'Unit' reduce using rule 79 - '[' reduce using rule 79 - '\\/' reduce using rule 79 - ']' reduce using rule 79 - 'as' reduce using rule 79 - 'idJ' reduce using rule 79 - 'recBOT' reduce using rule 79 - 'recOR' reduce using rule 79 - 'refl' reduce using rule 79 - 'refl_{' reduce using rule 79 - 'unit' reduce using rule 79 - '|' reduce using rule 79 - '|->' reduce using rule 79 - '}' reduce using rule 79 - '×' reduce using rule 79 - '→' reduce using rule 79 - '↦' reduce using rule 79 - '∧' reduce using rule 79 - '∨' reduce using rule 79 - '≡' reduce using rule 79 - '≤' reduce using rule 79 - '⊤' reduce using rule 79 - '⊥' reduce using rule 79 - L_VarIdentTokenreduce using rule 79 - L_HoleIdentTokenreduce using rule 79 - %eof reduce using rule 79 + '(' shift, and enter state 185 -State 58 +State 62 - Term7 -> 'Unit' . (rule 92) + Term7 -> 'recBOT' . (rule 92) '(' reduce using rule 92 ')' reduce using rule 92 @@ -2531,198 +2663,78 @@ State 58 %eof reduce using rule 92 -State 59 - - Term1 -> '\\' . ListParam '→' Term1 (rule 127) - Term1 -> '\\' . ListParam '->' Term1 (rule 131) - - '(' shift, and enter state 98 - 'unit' shift, and enter state 99 - '{' shift, and enter state 100 - L_VarIdentTokenshift, and enter state 75 - - VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 95 - Param goto state 96 - ListParam goto state 181 - -State 60 - - Term6 -> 'first' . Term7 (rule 138) - - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'unit' shift, and enter state 67 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 - - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 180 - -State 61 - - Term7 -> 'idJ' . '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 99) - - '(' shift, and enter state 179 - - -State 62 - - Term7 -> 'recBOT' . (rule 89) - - '(' reduce using rule 89 - ')' reduce using rule 89 - '*' reduce using rule 89 - '*_1' reduce using rule 89 - '*₁' reduce using rule 89 - ',' reduce using rule 89 - '->' reduce using rule 89 - '/\\' reduce using rule 89 - '0_2' reduce using rule 89 - '0₂' reduce using rule 89 - '1' reduce using rule 89 - '1_2' reduce using rule 89 - '1₂' reduce using rule 89 - '2' reduce using rule 89 - ':' reduce using rule 89 - ':=' reduce using rule 89 - ';' reduce using rule 89 - '<' reduce using rule 89 - '<=' reduce using rule 89 - '=' reduce using rule 89 - '===' reduce using rule 89 - '=_{' reduce using rule 89 - '>' reduce using rule 89 - 'BOT' reduce using rule 89 - 'CUBE' reduce using rule 89 - 'TOP' reduce using rule 89 - 'TOPE' reduce using rule 89 - 'U' reduce using rule 89 - 'Unit' reduce using rule 89 - '[' reduce using rule 89 - '\\/' reduce using rule 89 - ']' reduce using rule 89 - 'as' reduce using rule 89 - 'idJ' reduce using rule 89 - 'recBOT' reduce using rule 89 - 'recOR' reduce using rule 89 - 'refl' reduce using rule 89 - 'refl_{' reduce using rule 89 - 'unit' reduce using rule 89 - '|' reduce using rule 89 - '|->' reduce using rule 89 - '}' reduce using rule 89 - '×' reduce using rule 89 - '→' reduce using rule 89 - '↦' reduce using rule 89 - '∧' reduce using rule 89 - '∨' reduce using rule 89 - '≡' reduce using rule 89 - '≤' reduce using rule 89 - '⊤' reduce using rule 89 - '⊥' reduce using rule 89 - L_VarIdentTokenreduce using rule 89 - L_HoleIdentTokenreduce using rule 89 - %eof reduce using rule 89 - - State 63 - Term7 -> 'recOR' . '(' ListRestriction ')' (rule 90) - Term7 -> 'recOR' . '(' Term ',' Term ',' Term ',' Term ')' (rule 91) + Term7 -> 'recOR' . '(' ListRestriction ')' (rule 93) + Term7 -> 'recOR' . '(' Term ',' Term ',' Term ',' Term ')' (rule 94) - '(' shift, and enter state 178 + '(' shift, and enter state 184 State 64 - Term7 -> 'refl' . (rule 96) + Term7 -> 'refl' . (rule 99) - '(' reduce using rule 96 - ')' reduce using rule 96 - '*' reduce using rule 96 - '*_1' reduce using rule 96 - '*₁' reduce using rule 96 - ',' reduce using rule 96 - '->' reduce using rule 96 - '/\\' reduce using rule 96 - '0_2' reduce using rule 96 - '0₂' reduce using rule 96 - '1' reduce using rule 96 - '1_2' reduce using rule 96 - '1₂' reduce using rule 96 - '2' reduce using rule 96 - ':' reduce using rule 96 - ':=' reduce using rule 96 - ';' reduce using rule 96 - '<' reduce using rule 96 - '<=' reduce using rule 96 - '=' reduce using rule 96 - '===' reduce using rule 96 - '=_{' reduce using rule 96 - '>' reduce using rule 96 - 'BOT' reduce using rule 96 - 'CUBE' reduce using rule 96 - 'TOP' reduce using rule 96 - 'TOPE' reduce using rule 96 - 'U' reduce using rule 96 - 'Unit' reduce using rule 96 - '[' reduce using rule 96 - '\\/' reduce using rule 96 - ']' reduce using rule 96 - 'as' reduce using rule 96 - 'idJ' reduce using rule 96 - 'recBOT' reduce using rule 96 - 'recOR' reduce using rule 96 - 'refl' reduce using rule 96 - 'refl_{' reduce using rule 96 - 'unit' reduce using rule 96 - '|' reduce using rule 96 - '|->' reduce using rule 96 - '}' reduce using rule 96 - '×' reduce using rule 96 - '→' reduce using rule 96 - '↦' reduce using rule 96 - '∧' reduce using rule 96 - '∨' reduce using rule 96 - '≡' reduce using rule 96 - '≤' reduce using rule 96 - '⊤' reduce using rule 96 - '⊥' reduce using rule 96 - L_VarIdentTokenreduce using rule 96 - L_HoleIdentTokenreduce using rule 96 - %eof reduce using rule 96 + '(' reduce using rule 99 + ')' reduce using rule 99 + '*' reduce using rule 99 + '*_1' reduce using rule 99 + '*₁' reduce using rule 99 + ',' reduce using rule 99 + '->' reduce using rule 99 + '/\\' reduce using rule 99 + '0_2' reduce using rule 99 + '0₂' reduce using rule 99 + '1' reduce using rule 99 + '1_2' reduce using rule 99 + '1₂' reduce using rule 99 + '2' reduce using rule 99 + ':' reduce using rule 99 + ':=' reduce using rule 99 + ';' reduce using rule 99 + '<' reduce using rule 99 + '<=' reduce using rule 99 + '=' reduce using rule 99 + '===' reduce using rule 99 + '=_{' reduce using rule 99 + '>' reduce using rule 99 + 'BOT' reduce using rule 99 + 'CUBE' reduce using rule 99 + 'TOP' reduce using rule 99 + 'TOPE' reduce using rule 99 + 'U' reduce using rule 99 + 'Unit' reduce using rule 99 + '[' reduce using rule 99 + '\\/' reduce using rule 99 + ']' reduce using rule 99 + 'as' reduce using rule 99 + 'idJ' reduce using rule 99 + 'recBOT' reduce using rule 99 + 'recOR' reduce using rule 99 + 'refl' reduce using rule 99 + 'refl_{' reduce using rule 99 + 'unit' reduce using rule 99 + '|' reduce using rule 99 + '|->' reduce using rule 99 + '}' reduce using rule 99 + '×' reduce using rule 99 + '→' reduce using rule 99 + '↦' reduce using rule 99 + '∧' reduce using rule 99 + '∨' reduce using rule 99 + '≡' reduce using rule 99 + '≤' reduce using rule 99 + '⊤' reduce using rule 99 + '⊥' reduce using rule 99 + L_VarIdentTokenreduce using rule 99 + L_HoleIdentTokenreduce using rule 99 + %eof reduce using rule 99 State 65 - Term7 -> 'refl_{' . Term '}' (rule 97) - Term7 -> 'refl_{' . Term ':' Term '}' (rule 98) + Term7 -> 'refl_{' . Term '}' (rule 100) + Term7 -> 'refl_{' . Term ':' Term '}' (rule 101) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -2772,11 +2784,11 @@ State 65 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 177 + Term goto state 183 State 66 - Term6 -> 'second' . Term7 (rule 139) + Term6 -> 'second' . Term7 (rule 142) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -2809,92 +2821,92 @@ State 66 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 176 + Term7 goto state 182 State 67 - Term7 -> 'unit' . (rule 95) + Term7 -> 'unit' . (rule 98) - '(' reduce using rule 95 - ')' reduce using rule 95 - '*' reduce using rule 95 - '*_1' reduce using rule 95 - '*₁' reduce using rule 95 - ',' reduce using rule 95 - '->' reduce using rule 95 - '/\\' reduce using rule 95 - '0_2' reduce using rule 95 - '0₂' reduce using rule 95 - '1' reduce using rule 95 - '1_2' reduce using rule 95 - '1₂' reduce using rule 95 - '2' reduce using rule 95 - ':' reduce using rule 95 - ':=' reduce using rule 95 - ';' reduce using rule 95 - '<' reduce using rule 95 - '<=' reduce using rule 95 - '=' reduce using rule 95 - '===' reduce using rule 95 - '=_{' reduce using rule 95 - '>' reduce using rule 95 - 'BOT' reduce using rule 95 - 'CUBE' reduce using rule 95 - 'TOP' reduce using rule 95 - 'TOPE' reduce using rule 95 - 'U' reduce using rule 95 - 'Unit' reduce using rule 95 - '[' reduce using rule 95 - '\\/' reduce using rule 95 - ']' reduce using rule 95 - 'as' reduce using rule 95 - 'idJ' reduce using rule 95 - 'recBOT' reduce using rule 95 - 'recOR' reduce using rule 95 - 'refl' reduce using rule 95 - 'refl_{' reduce using rule 95 - 'unit' reduce using rule 95 - '|' reduce using rule 95 - '|->' reduce using rule 95 - '}' reduce using rule 95 - '×' reduce using rule 95 - '→' reduce using rule 95 - '↦' reduce using rule 95 - '∧' reduce using rule 95 - '∨' reduce using rule 95 - '≡' reduce using rule 95 - '≤' reduce using rule 95 - '⊤' reduce using rule 95 - '⊥' reduce using rule 95 - L_VarIdentTokenreduce using rule 95 - L_HoleIdentTokenreduce using rule 95 - %eof reduce using rule 95 + '(' reduce using rule 98 + ')' reduce using rule 98 + '*' reduce using rule 98 + '*_1' reduce using rule 98 + '*₁' reduce using rule 98 + ',' reduce using rule 98 + '->' reduce using rule 98 + '/\\' reduce using rule 98 + '0_2' reduce using rule 98 + '0₂' reduce using rule 98 + '1' reduce using rule 98 + '1_2' reduce using rule 98 + '1₂' reduce using rule 98 + '2' reduce using rule 98 + ':' reduce using rule 98 + ':=' reduce using rule 98 + ';' reduce using rule 98 + '<' reduce using rule 98 + '<=' reduce using rule 98 + '=' reduce using rule 98 + '===' reduce using rule 98 + '=_{' reduce using rule 98 + '>' reduce using rule 98 + 'BOT' reduce using rule 98 + 'CUBE' reduce using rule 98 + 'TOP' reduce using rule 98 + 'TOPE' reduce using rule 98 + 'U' reduce using rule 98 + 'Unit' reduce using rule 98 + '[' reduce using rule 98 + '\\/' reduce using rule 98 + ']' reduce using rule 98 + 'as' reduce using rule 98 + 'idJ' reduce using rule 98 + 'recBOT' reduce using rule 98 + 'recOR' reduce using rule 98 + 'refl' reduce using rule 98 + 'refl_{' reduce using rule 98 + 'unit' reduce using rule 98 + '|' reduce using rule 98 + '|->' reduce using rule 98 + '}' reduce using rule 98 + '×' reduce using rule 98 + '→' reduce using rule 98 + '↦' reduce using rule 98 + '∧' reduce using rule 98 + '∨' reduce using rule 98 + '≡' reduce using rule 98 + '≤' reduce using rule 98 + '⊤' reduce using rule 98 + '⊥' reduce using rule 98 + L_VarIdentTokenreduce using rule 98 + L_HoleIdentTokenreduce using rule 98 + %eof reduce using rule 98 State 68 - ParamDecl -> '{' . Pattern ':' Term '}' (rule 72) - ParamDecl -> '{' . '(' Pattern ':' Term ')' '|' Term '}' (rule 73) - ParamDecl -> '{' . Pattern ':' Term '|' Term '}' (rule 74) + ParamDecl -> '{' . Pattern ':' Term '}' (rule 75) + ParamDecl -> '{' . '(' Pattern ':' Term ')' '|' Term '}' (rule 76) + ParamDecl -> '{' . Pattern ':' Term '|' Term '}' (rule 77) - '(' shift, and enter state 175 + '(' shift, and enter state 181 'unit' shift, and enter state 99 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 174 + Pattern goto state 180 State 69 - Term1 -> 'Σ' . '(' Pattern ':' Term ')' ',' Term1 (rule 124) + Term1 -> 'Σ' . '(' Pattern ':' Term ')' ',' Term1 (rule 127) - '(' shift, and enter state 173 + '(' shift, and enter state 179 State 70 - Term6 -> 'π₁' . Term7 (rule 135) + Term6 -> 'π₁' . Term7 (rule 138) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -2927,11 +2939,11 @@ State 70 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 172 + Term7 goto state 178 State 71 - Term6 -> 'π₂' . Term7 (rule 136) + Term6 -> 'π₂' . Term7 (rule 139) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -2964,133 +2976,133 @@ State 71 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 171 + Term7 goto state 177 State 72 - Term1 -> '∑' . '(' Pattern ':' Term ')' ',' Term1 (rule 132) + Term1 -> '∑' . '(' Pattern ':' Term ')' ',' Term1 (rule 135) - '(' shift, and enter state 170 + '(' shift, and enter state 176 State 73 - Term7 -> '⊤' . (rule 87) - - '(' reduce using rule 87 - ')' reduce using rule 87 - '*' reduce using rule 87 - '*_1' reduce using rule 87 - '*₁' reduce using rule 87 - ',' reduce using rule 87 - '->' reduce using rule 87 - '/\\' reduce using rule 87 - '0_2' reduce using rule 87 - '0₂' reduce using rule 87 - '1' reduce using rule 87 - '1_2' reduce using rule 87 - '1₂' reduce using rule 87 - '2' reduce using rule 87 - ':' reduce using rule 87 - ':=' reduce using rule 87 - ';' reduce using rule 87 - '<' reduce using rule 87 - '<=' reduce using rule 87 - '=' reduce using rule 87 - '===' reduce using rule 87 - '=_{' reduce using rule 87 - '>' reduce using rule 87 - 'BOT' reduce using rule 87 - 'CUBE' reduce using rule 87 - 'TOP' reduce using rule 87 - 'TOPE' reduce using rule 87 - 'U' reduce using rule 87 - 'Unit' reduce using rule 87 - '[' reduce using rule 87 - '\\/' reduce using rule 87 - ']' reduce using rule 87 - 'as' reduce using rule 87 - 'idJ' reduce using rule 87 - 'recBOT' reduce using rule 87 - 'recOR' reduce using rule 87 - 'refl' reduce using rule 87 - 'refl_{' reduce using rule 87 - 'unit' reduce using rule 87 - '|' reduce using rule 87 - '|->' reduce using rule 87 - '}' reduce using rule 87 - '×' reduce using rule 87 - '→' reduce using rule 87 - '↦' reduce using rule 87 - '∧' reduce using rule 87 - '∨' reduce using rule 87 - '≡' reduce using rule 87 - '≤' reduce using rule 87 - '⊤' reduce using rule 87 - '⊥' reduce using rule 87 - L_VarIdentTokenreduce using rule 87 - L_HoleIdentTokenreduce using rule 87 - %eof reduce using rule 87 - - -State 74 - - Term7 -> '⊥' . (rule 88) + Term7 -> '⊤' . (rule 90) - '(' reduce using rule 88 - ')' reduce using rule 88 - '*' reduce using rule 88 - '*_1' reduce using rule 88 - '*₁' reduce using rule 88 - ',' reduce using rule 88 - '->' reduce using rule 88 - '/\\' reduce using rule 88 - '0_2' reduce using rule 88 - '0₂' reduce using rule 88 - '1' reduce using rule 88 - '1_2' reduce using rule 88 - '1₂' reduce using rule 88 - '2' reduce using rule 88 - ':' reduce using rule 88 - ':=' reduce using rule 88 - ';' reduce using rule 88 - '<' reduce using rule 88 - '<=' reduce using rule 88 - '=' reduce using rule 88 - '===' reduce using rule 88 - '=_{' reduce using rule 88 - '>' reduce using rule 88 - 'BOT' reduce using rule 88 - 'CUBE' reduce using rule 88 - 'TOP' reduce using rule 88 - 'TOPE' reduce using rule 88 - 'U' reduce using rule 88 - 'Unit' reduce using rule 88 - '[' reduce using rule 88 - '\\/' reduce using rule 88 - ']' reduce using rule 88 - 'as' reduce using rule 88 - 'idJ' reduce using rule 88 - 'recBOT' reduce using rule 88 - 'recOR' reduce using rule 88 - 'refl' reduce using rule 88 - 'refl_{' reduce using rule 88 - 'unit' reduce using rule 88 - '|' reduce using rule 88 - '|->' reduce using rule 88 - '}' reduce using rule 88 - '×' reduce using rule 88 - '→' reduce using rule 88 - '↦' reduce using rule 88 - '∧' reduce using rule 88 - '∨' reduce using rule 88 - '≡' reduce using rule 88 - '≤' reduce using rule 88 - '⊤' reduce using rule 88 - '⊥' reduce using rule 88 - L_VarIdentTokenreduce using rule 88 - L_HoleIdentTokenreduce using rule 88 - %eof reduce using rule 88 + '(' reduce using rule 90 + ')' reduce using rule 90 + '*' reduce using rule 90 + '*_1' reduce using rule 90 + '*₁' reduce using rule 90 + ',' reduce using rule 90 + '->' reduce using rule 90 + '/\\' reduce using rule 90 + '0_2' reduce using rule 90 + '0₂' reduce using rule 90 + '1' reduce using rule 90 + '1_2' reduce using rule 90 + '1₂' reduce using rule 90 + '2' reduce using rule 90 + ':' reduce using rule 90 + ':=' reduce using rule 90 + ';' reduce using rule 90 + '<' reduce using rule 90 + '<=' reduce using rule 90 + '=' reduce using rule 90 + '===' reduce using rule 90 + '=_{' reduce using rule 90 + '>' reduce using rule 90 + 'BOT' reduce using rule 90 + 'CUBE' reduce using rule 90 + 'TOP' reduce using rule 90 + 'TOPE' reduce using rule 90 + 'U' reduce using rule 90 + 'Unit' reduce using rule 90 + '[' reduce using rule 90 + '\\/' reduce using rule 90 + ']' reduce using rule 90 + 'as' reduce using rule 90 + 'idJ' reduce using rule 90 + 'recBOT' reduce using rule 90 + 'recOR' reduce using rule 90 + 'refl' reduce using rule 90 + 'refl_{' reduce using rule 90 + 'unit' reduce using rule 90 + '|' reduce using rule 90 + '|->' reduce using rule 90 + '}' reduce using rule 90 + '×' reduce using rule 90 + '→' reduce using rule 90 + '↦' reduce using rule 90 + '∧' reduce using rule 90 + '∨' reduce using rule 90 + '≡' reduce using rule 90 + '≤' reduce using rule 90 + '⊤' reduce using rule 90 + '⊥' reduce using rule 90 + L_VarIdentTokenreduce using rule 90 + L_HoleIdentTokenreduce using rule 90 + %eof reduce using rule 90 + + +State 74 + + Term7 -> '⊥' . (rule 91) + + '(' reduce using rule 91 + ')' reduce using rule 91 + '*' reduce using rule 91 + '*_1' reduce using rule 91 + '*₁' reduce using rule 91 + ',' reduce using rule 91 + '->' reduce using rule 91 + '/\\' reduce using rule 91 + '0_2' reduce using rule 91 + '0₂' reduce using rule 91 + '1' reduce using rule 91 + '1_2' reduce using rule 91 + '1₂' reduce using rule 91 + '2' reduce using rule 91 + ':' reduce using rule 91 + ':=' reduce using rule 91 + ';' reduce using rule 91 + '<' reduce using rule 91 + '<=' reduce using rule 91 + '=' reduce using rule 91 + '===' reduce using rule 91 + '=_{' reduce using rule 91 + '>' reduce using rule 91 + 'BOT' reduce using rule 91 + 'CUBE' reduce using rule 91 + 'TOP' reduce using rule 91 + 'TOPE' reduce using rule 91 + 'U' reduce using rule 91 + 'Unit' reduce using rule 91 + '[' reduce using rule 91 + '\\/' reduce using rule 91 + ']' reduce using rule 91 + 'as' reduce using rule 91 + 'idJ' reduce using rule 91 + 'recBOT' reduce using rule 91 + 'recOR' reduce using rule 91 + 'refl' reduce using rule 91 + 'refl_{' reduce using rule 91 + 'unit' reduce using rule 91 + '|' reduce using rule 91 + '|->' reduce using rule 91 + '}' reduce using rule 91 + '×' reduce using rule 91 + '→' reduce using rule 91 + '↦' reduce using rule 91 + '∧' reduce using rule 91 + '∨' reduce using rule 91 + '≡' reduce using rule 91 + '≤' reduce using rule 91 + '⊤' reduce using rule 91 + '⊥' reduce using rule 91 + L_VarIdentTokenreduce using rule 91 + L_HoleIdentTokenreduce using rule 91 + %eof reduce using rule 91 State 75 @@ -3225,8 +3237,8 @@ State 77 State 78 %start_pTerm6_internal -> Term6 . (rule 23) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -3244,7 +3256,7 @@ State 78 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 + '[' shift, and enter state 167 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 @@ -3261,12 +3273,12 @@ State 78 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 + Term7 goto state 166 State 79 - Term7 -> '(' . Term ',' Term ')' (rule 94) - Term7 -> '(' . Term ')' (rule 102) + Term7 -> '(' . Term ',' Term ')' (rule 97) + Term7 -> '(' . Term ')' (rule 105) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -3316,28 +3328,28 @@ State 79 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 169 + Term goto state 175 State 80 - Term1 -> Term2 . '=_{' Term '}' Term2 (rule 125) - Term1 -> Term2 . '=' Term2 (rule 126) - Term1 -> Term2 . (rule 128) + Term1 -> Term2 . '=_{' Term '}' Term2 (rule 128) + Term1 -> Term2 . '=' Term2 (rule 129) + Term1 -> Term2 . (rule 131) - ')' reduce using rule 128 - ',' reduce using rule 128 - ':' reduce using rule 128 - ':=' reduce using rule 128 - ';' reduce using rule 128 - '=' shift, and enter state 167 - '=_{' shift, and enter state 168 - '>' reduce using rule 128 - ']' reduce using rule 128 - '|' reduce using rule 128 - '|->' reduce using rule 128 - '}' reduce using rule 128 - '↦' reduce using rule 128 - %eof reduce using rule 128 + ')' reduce using rule 131 + ',' reduce using rule 131 + ':' reduce using rule 131 + ':=' reduce using rule 131 + ';' reduce using rule 131 + '=' shift, and enter state 173 + '=_{' shift, and enter state 174 + '>' reduce using rule 131 + ']' reduce using rule 131 + '|' reduce using rule 131 + '|->' reduce using rule 131 + '}' reduce using rule 131 + '↦' reduce using rule 131 + %eof reduce using rule 131 State 81 @@ -3356,68 +3368,68 @@ State 82 State 83 - Term5 -> Term6 . (rule 110) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + Term5 -> Term6 . (rule 113) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) '(' shift, and enter state 79 - ')' reduce using rule 110 - '*' reduce using rule 110 + ')' reduce using rule 113 + '*' reduce using rule 113 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 - ',' reduce using rule 110 - '/\\' reduce using rule 110 + ',' reduce using rule 113 + '/\\' reduce using rule 113 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 - ':' reduce using rule 110 - ':=' reduce using rule 110 - ';' reduce using rule 110 + ':' reduce using rule 113 + ':=' reduce using rule 113 + ';' reduce using rule 113 '<' shift, and enter state 51 - '<=' reduce using rule 110 - '=' reduce using rule 110 - '===' reduce using rule 110 - '=_{' reduce using rule 110 - '>' reduce using rule 110 + '<=' reduce using rule 113 + '=' reduce using rule 113 + '===' reduce using rule 113 + '=_{' reduce using rule 113 + '>' reduce using rule 113 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 - '\\/' reduce using rule 110 - ']' reduce using rule 110 - 'as' reduce using rule 110 + '[' shift, and enter state 167 + '\\/' reduce using rule 113 + ']' reduce using rule 113 + 'as' reduce using rule 113 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 'unit' shift, and enter state 67 - '|' reduce using rule 110 - '|->' reduce using rule 110 - '}' reduce using rule 110 - '×' reduce using rule 110 - '↦' reduce using rule 110 - '∧' reduce using rule 110 - '∨' reduce using rule 110 - '≡' reduce using rule 110 - '≤' reduce using rule 110 + '|' reduce using rule 113 + '|->' reduce using rule 113 + '}' reduce using rule 113 + '×' reduce using rule 113 + '↦' reduce using rule 113 + '∧' reduce using rule 113 + '∨' reduce using rule 113 + '≡' reduce using rule 113 + '≤' reduce using rule 113 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 110 + %eof reduce using rule 113 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 + Term7 goto state 166 State 84 @@ -3436,11 +3448,11 @@ State 85 State 86 %start_pTerm5_internal -> Term5 . (rule 18) - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) - '*' shift, and enter state 165 - '×' shift, and enter state 166 + '*' shift, and enter state 171 + '×' shift, and enter state 172 %eof accept @@ -3453,13 +3465,13 @@ State 87 State 88 - ListRestriction -> Restriction . (rule 77) - ListRestriction -> Restriction . ',' ListRestriction (rule 78) + ListRestriction -> Restriction . (rule 80) + ListRestriction -> Restriction . ',' ListRestriction (rule 81) - ')' reduce using rule 77 - ',' shift, and enter state 164 - ']' reduce using rule 77 - %eof reduce using rule 77 + ')' reduce using rule 80 + ',' shift, and enter state 170 + ']' reduce using rule 80 + %eof reduce using rule 80 State 89 @@ -3471,11 +3483,11 @@ State 89 State 90 - Restriction -> Term . '↦' Term (rule 75) - Restriction -> Term . '|->' Term (rule 76) + Restriction -> Term . '↦' Term (rule 78) + Restriction -> Term . '|->' Term (rule 79) - '|->' shift, and enter state 162 - '↦' shift, and enter state 163 + '|->' shift, and enter state 168 + '↦' shift, and enter state 169 State 91 @@ -3494,14 +3506,14 @@ State 92 State 93 - ParamDecl -> Term6 . (rule 69) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + ParamDecl -> Term6 . (rule 72) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) '(' shift, and enter state 79 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 - '->' reduce using rule 69 + '->' reduce using rule 72 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 @@ -3515,75 +3527,75 @@ State 93 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 + '[' shift, and enter state 167 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 'unit' shift, and enter state 67 - '→' reduce using rule 69 + '→' reduce using rule 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 69 + %eof reduce using rule 72 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 + Term7 goto state 166 State 94 - Pattern -> VarIdent . (rule 59) - - '(' reduce using rule 59 - ')' reduce using rule 59 - ',' reduce using rule 59 - '->' reduce using rule 59 - ':' reduce using rule 59 - 'unit' reduce using rule 59 - '{' reduce using rule 59 - '→' reduce using rule 59 - L_VarIdentTokenreduce using rule 59 - %eof reduce using rule 59 + Pattern -> VarIdent . (rule 62) + + '(' reduce using rule 62 + ')' reduce using rule 62 + ',' reduce using rule 62 + '->' reduce using rule 62 + ':' reduce using rule 62 + 'unit' reduce using rule 62 + '{' reduce using rule 62 + '→' reduce using rule 62 + L_VarIdentTokenreduce using rule 62 + %eof reduce using rule 62 State 95 - Param -> Pattern . (rule 63) + Param -> Pattern . (rule 66) - '(' reduce using rule 63 - '->' reduce using rule 63 - ':' reduce using rule 63 - 'unit' reduce using rule 63 - '{' reduce using rule 63 - '→' reduce using rule 63 - L_VarIdentTokenreduce using rule 63 - %eof reduce using rule 63 + '(' reduce using rule 66 + '->' reduce using rule 66 + ':' reduce using rule 66 + 'unit' reduce using rule 66 + '{' reduce using rule 66 + '→' reduce using rule 66 + L_VarIdentTokenreduce using rule 66 + %eof reduce using rule 66 State 96 - ListParam -> Param . (rule 67) - ListParam -> Param . ListParam (rule 68) + ListParam -> Param . (rule 70) + ListParam -> Param . ListParam (rule 71) '(' shift, and enter state 98 - '->' reduce using rule 67 - ':' reduce using rule 67 + '->' reduce using rule 70 + ':' reduce using rule 70 'unit' shift, and enter state 99 '{' shift, and enter state 100 - '→' reduce using rule 67 + '→' reduce using rule 70 L_VarIdentTokenshift, and enter state 75 - %eof reduce using rule 67 + %eof reduce using rule 70 VarIdentToken goto state 28 VarIdent goto state 94 Pattern goto state 95 Param goto state 96 - ListParam goto state 159 + ListParam goto state 165 State 97 @@ -3594,9 +3606,9 @@ State 97 State 98 - Pattern -> '(' . Pattern ',' Pattern ')' (rule 60) - Param -> '(' . ListPattern ':' Term ')' (rule 64) - Param -> '(' . ListPattern ':' Term '|' Term ')' (rule 65) + Pattern -> '(' . Pattern ',' Pattern ')' (rule 63) + Param -> '(' . ListPattern ':' Term ')' (rule 67) + Param -> '(' . ListPattern ':' Term '|' Term ')' (rule 68) '(' shift, and enter state 104 'unit' shift, and enter state 99 @@ -3604,28 +3616,28 @@ State 98 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 157 - ListPattern goto state 158 + Pattern goto state 163 + ListPattern goto state 164 State 99 - Pattern -> 'unit' . (rule 58) + Pattern -> 'unit' . (rule 61) - '(' reduce using rule 58 - ')' reduce using rule 58 - ',' reduce using rule 58 - '->' reduce using rule 58 - ':' reduce using rule 58 - 'unit' reduce using rule 58 - '{' reduce using rule 58 - '→' reduce using rule 58 - L_VarIdentTokenreduce using rule 58 - %eof reduce using rule 58 + '(' reduce using rule 61 + ')' reduce using rule 61 + ',' reduce using rule 61 + '->' reduce using rule 61 + ':' reduce using rule 61 + 'unit' reduce using rule 61 + '{' reduce using rule 61 + '→' reduce using rule 61 + L_VarIdentTokenreduce using rule 61 + %eof reduce using rule 61 State 100 - Param -> '{' . Pattern ':' Term '|' Term '}' (rule 66) + Param -> '{' . Pattern ':' Term '|' Term '}' (rule 69) '(' shift, and enter state 104 'unit' shift, and enter state 99 @@ -3633,7 +3645,7 @@ State 100 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 156 + Pattern goto state 162 State 101 @@ -3644,19 +3656,19 @@ State 101 State 102 - ListPattern -> Pattern . (rule 61) - ListPattern -> Pattern . ListPattern (rule 62) + ListPattern -> Pattern . (rule 64) + ListPattern -> Pattern . ListPattern (rule 65) '(' shift, and enter state 104 - ':' reduce using rule 61 + ':' reduce using rule 64 'unit' shift, and enter state 99 L_VarIdentTokenshift, and enter state 75 - %eof reduce using rule 61 + %eof reduce using rule 64 VarIdentToken goto state 28 VarIdent goto state 94 Pattern goto state 102 - ListPattern goto state 155 + ListPattern goto state 161 State 103 @@ -3667,7 +3679,7 @@ State 103 State 104 - Pattern -> '(' . Pattern ',' Pattern ')' (rule 60) + Pattern -> '(' . Pattern ',' Pattern ')' (rule 63) '(' shift, and enter state 104 'unit' shift, and enter state 99 @@ -3675,7 +3687,7 @@ State 104 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 154 + Pattern goto state 160 State 105 @@ -3686,10 +3698,10 @@ State 105 State 106 - SectionName -> VarIdent . (rule 57) + SectionName -> VarIdent . (rule 60) - ';' reduce using rule 57 - %eof reduce using rule 57 + ';' reduce using rule 60 + %eof reduce using rule 60 State 107 @@ -3708,16 +3720,16 @@ State 108 State 109 - DeclUsedVars -> 'uses' . '(' ListVarIdent ')' (rule 54) + DeclUsedVars -> 'uses' . '(' ListVarIdent ')' (rule 57) - '(' shift, and enter state 153 + '(' shift, and enter state 159 State 110 - ListCommand -> Command . ';' ListCommand (rule 53) + ListCommand -> Command . ';' ListCommand (rule 56) - ';' shift, and enter state 152 + ';' shift, and enter state 158 State 111 @@ -3729,13 +3741,13 @@ State 111 State 112 - Command -> '#assume' . ListVarIdent ':' Term (rule 44) + Command -> '#assume' . ListVarIdent ':' Term (rule 47) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 130 - ListVarIdent goto state 151 + VarIdent goto state 133 + ListVarIdent goto state 157 State 113 @@ -3789,7 +3801,7 @@ State 113 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 150 + Term goto state 156 State 114 @@ -3843,7 +3855,7 @@ State 114 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 149 + Term goto state 155 State 115 @@ -3897,7 +3909,7 @@ State 115 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 148 + Term goto state 154 State 116 @@ -3951,99 +3963,128 @@ State 116 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 147 + Term goto state 153 State 117 - Command -> '#def' . VarIdent DeclUsedVars ListParam ':' Term ':=' Term (rule 50) - Command -> '#def' . VarIdent DeclUsedVars ':' Term ':=' Term (rule 51) + Command -> '#def' . VarIdent DeclUsedVars ListParam ':' Term ':=' Term (rule 53) + Command -> '#def' . VarIdent DeclUsedVars ':' Term ':=' Term (rule 54) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 146 + VarIdent goto state 152 State 118 - Command -> '#define' . VarIdent DeclUsedVars ListParam ':' Term ':=' Term (rule 48) - Command -> '#define' . VarIdent DeclUsedVars ':' Term ':=' Term (rule 49) + Command -> '#define' . VarIdent DeclUsedVars ListParam ':' Term ':=' Term (rule 51) + Command -> '#define' . VarIdent DeclUsedVars ':' Term ':=' Term (rule 52) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 145 + VarIdent goto state 151 State 119 + Command -> '#define-assumption' . ListVarIdent ':' Term (rule 44) + + L_VarIdentTokenshift, and enter state 75 + + VarIdentToken goto state 28 + VarIdent goto state 133 + ListVarIdent goto state 150 + +State 120 + + Command -> '#define-variable' . VarIdent ':' Term (rule 45) + + L_VarIdentTokenshift, and enter state 75 + + VarIdentToken goto state 28 + VarIdent goto state 149 + +State 121 + + Command -> '#define-variables' . ListVarIdent ':' Term (rule 46) + + L_VarIdentTokenshift, and enter state 75 + + VarIdentToken goto state 28 + VarIdent goto state 133 + ListVarIdent goto state 148 + +State 122 + Command -> '#postulate' . VarIdent DeclUsedVars ListParam ':' Term (rule 42) Command -> '#postulate' . VarIdent DeclUsedVars ':' Term (rule 43) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 144 + VarIdent goto state 147 -State 120 +State 123 - Command -> '#section' . SectionName ';' ListCommand '#end' SectionName (rule 47) + Command -> '#section' . SectionName ';' ListCommand '#end' SectionName (rule 50) - ';' reduce using rule 56 + ';' reduce using rule 59 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 VarIdent goto state 106 - SectionName goto state 143 + SectionName goto state 146 -State 121 +State 124 Command -> '#set-option' . String '=' String (rule 36) L_quoted shift, and enter state 27 - String goto state 142 + String goto state 145 -State 122 +State 125 Command -> '#unset-option' . String (rule 37) L_quoted shift, and enter state 27 - String goto state 141 + String goto state 144 -State 123 +State 126 - Command -> '#variable' . VarIdent ':' Term (rule 45) + Command -> '#variable' . VarIdent ':' Term (rule 48) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 140 + VarIdent goto state 143 -State 124 +State 127 - Command -> '#variables' . ListVarIdent ':' Term (rule 46) + Command -> '#variables' . ListVarIdent ':' Term (rule 49) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 130 - ListVarIdent goto state 139 + VarIdent goto state 133 + ListVarIdent goto state 142 -State 125 +State 128 %start_pCommand_internal -> Command . (rule 6) %eof accept -State 126 +State 129 %start_pLanguage_internal -> Language . (rule 5) %eof accept -State 127 +State 130 Language -> 'rzk-1' . (rule 35) @@ -4051,22 +4092,22 @@ State 127 %eof reduce using rule 35 -State 128 +State 131 %start_pLanguageDecl_internal -> LanguageDecl . (rule 4) %eof accept -State 129 +State 132 LanguageDecl -> '#lang' . Language ';' (rule 34) - 'rzk-1' shift, and enter state 127 + 'rzk-1' shift, and enter state 130 - Language goto state 138 + Language goto state 141 -State 130 +State 133 ListVarIdent -> VarIdent . (rule 32) ListVarIdent -> VarIdent . ListVarIdent (rule 33) @@ -4077,38 +4118,38 @@ State 130 %eof reduce using rule 32 VarIdentToken goto state 28 - VarIdent goto state 130 - ListVarIdent goto state 137 + VarIdent goto state 133 + ListVarIdent goto state 140 -State 131 +State 134 %start_pListVarIdent_internal -> ListVarIdent . (rule 3) %eof accept -State 132 +State 135 %start_pVarIdent_internal -> VarIdent . (rule 2) %eof accept -State 133 +State 136 %start_pHoleIdent_internal -> HoleIdent . (rule 1) %eof accept -State 134 +State 137 %start_pModule_internal -> Module . (rule 0) %eof accept -State 135 +State 138 Module -> LanguageDecl . ListCommand (rule 29) @@ -4119,25 +4160,28 @@ State 135 '#compute-whnf'shift, and enter state 116 '#def' shift, and enter state 117 '#define' shift, and enter state 118 - '#postulate' shift, and enter state 119 - '#section' shift, and enter state 120 - '#set-option' shift, and enter state 121 - '#unset-option'shift, and enter state 122 - '#variable' shift, and enter state 123 - '#variables' shift, and enter state 124 - %eof reduce using rule 52 + '#define-assumption'shift, and enter state 119 + '#define-variable'shift, and enter state 120 + '#define-variables'shift, and enter state 121 + '#postulate' shift, and enter state 122 + '#section' shift, and enter state 123 + '#set-option' shift, and enter state 124 + '#unset-option'shift, and enter state 125 + '#variable' shift, and enter state 126 + '#variables' shift, and enter state 127 + %eof reduce using rule 55 Command goto state 110 - ListCommand goto state 136 + ListCommand goto state 139 -State 136 +State 139 Module -> LanguageDecl ListCommand . (rule 29) %eof reduce using rule 29 -State 137 +State 140 ListVarIdent -> VarIdent ListVarIdent . (rule 33) @@ -4146,28 +4190,28 @@ State 137 %eof reduce using rule 33 -State 138 +State 141 LanguageDecl -> '#lang' Language . ';' (rule 34) - ';' shift, and enter state 248 + ';' shift, and enter state 257 -State 139 +State 142 - Command -> '#variables' ListVarIdent . ':' Term (rule 46) + Command -> '#variables' ListVarIdent . ':' Term (rule 49) - ':' shift, and enter state 247 + ':' shift, and enter state 256 -State 140 +State 143 - Command -> '#variable' VarIdent . ':' Term (rule 45) + Command -> '#variable' VarIdent . ':' Term (rule 48) - ':' shift, and enter state 246 + ':' shift, and enter state 255 -State 141 +State 144 Command -> '#unset-option' String . (rule 37) @@ -4175,63 +4219,84 @@ State 141 %eof reduce using rule 37 -State 142 +State 145 Command -> '#set-option' String . '=' String (rule 36) - '=' shift, and enter state 245 + '=' shift, and enter state 254 -State 143 +State 146 - Command -> '#section' SectionName . ';' ListCommand '#end' SectionName (rule 47) + Command -> '#section' SectionName . ';' ListCommand '#end' SectionName (rule 50) - ';' shift, and enter state 244 + ';' shift, and enter state 253 -State 144 +State 147 Command -> '#postulate' VarIdent . DeclUsedVars ListParam ':' Term (rule 42) Command -> '#postulate' VarIdent . DeclUsedVars ':' Term (rule 43) - '(' reduce using rule 55 - ':' reduce using rule 55 - 'unit' reduce using rule 55 + '(' reduce using rule 58 + ':' reduce using rule 58 + 'unit' reduce using rule 58 'uses' shift, and enter state 109 - '{' reduce using rule 55 - L_VarIdentTokenreduce using rule 55 + '{' reduce using rule 58 + L_VarIdentTokenreduce using rule 58 - DeclUsedVars goto state 243 + DeclUsedVars goto state 252 -State 145 +State 148 - Command -> '#define' VarIdent . DeclUsedVars ListParam ':' Term ':=' Term (rule 48) - Command -> '#define' VarIdent . DeclUsedVars ':' Term ':=' Term (rule 49) + Command -> '#define-variables' ListVarIdent . ':' Term (rule 46) - '(' reduce using rule 55 - ':' reduce using rule 55 - 'unit' reduce using rule 55 + ':' shift, and enter state 251 + + +State 149 + + Command -> '#define-variable' VarIdent . ':' Term (rule 45) + + ':' shift, and enter state 250 + + +State 150 + + Command -> '#define-assumption' ListVarIdent . ':' Term (rule 44) + + ':' shift, and enter state 249 + + +State 151 + + Command -> '#define' VarIdent . DeclUsedVars ListParam ':' Term ':=' Term (rule 51) + Command -> '#define' VarIdent . DeclUsedVars ':' Term ':=' Term (rule 52) + + '(' reduce using rule 58 + ':' reduce using rule 58 + 'unit' reduce using rule 58 'uses' shift, and enter state 109 - '{' reduce using rule 55 - L_VarIdentTokenreduce using rule 55 + '{' reduce using rule 58 + L_VarIdentTokenreduce using rule 58 - DeclUsedVars goto state 242 + DeclUsedVars goto state 248 -State 146 +State 152 - Command -> '#def' VarIdent . DeclUsedVars ListParam ':' Term ':=' Term (rule 50) - Command -> '#def' VarIdent . DeclUsedVars ':' Term ':=' Term (rule 51) + Command -> '#def' VarIdent . DeclUsedVars ListParam ':' Term ':=' Term (rule 53) + Command -> '#def' VarIdent . DeclUsedVars ':' Term ':=' Term (rule 54) - '(' reduce using rule 55 - ':' reduce using rule 55 - 'unit' reduce using rule 55 + '(' reduce using rule 58 + ':' reduce using rule 58 + 'unit' reduce using rule 58 'uses' shift, and enter state 109 - '{' reduce using rule 55 - L_VarIdentTokenreduce using rule 55 + '{' reduce using rule 58 + L_VarIdentTokenreduce using rule 58 - DeclUsedVars goto state 241 + DeclUsedVars goto state 247 -State 147 +State 153 Command -> '#compute-whnf' Term . (rule 40) @@ -4239,7 +4304,7 @@ State 147 %eof reduce using rule 40 -State 148 +State 154 Command -> '#compute-nf' Term . (rule 41) @@ -4247,7 +4312,7 @@ State 148 %eof reduce using rule 41 -State 149 +State 155 Command -> '#compute' Term . (rule 39) @@ -4255,23 +4320,23 @@ State 149 %eof reduce using rule 39 -State 150 +State 156 Command -> '#check' Term . ':' Term (rule 38) - ':' shift, and enter state 240 + ':' shift, and enter state 246 -State 151 +State 157 - Command -> '#assume' ListVarIdent . ':' Term (rule 44) + Command -> '#assume' ListVarIdent . ':' Term (rule 47) - ':' shift, and enter state 239 + ':' shift, and enter state 245 -State 152 +State 158 - ListCommand -> Command ';' . ListCommand (rule 53) + ListCommand -> Command ';' . ListCommand (rule 56) '#assume' shift, and enter state 112 '#check' shift, and enter state 113 @@ -4280,148 +4345,261 @@ State 152 '#compute-whnf'shift, and enter state 116 '#def' shift, and enter state 117 '#define' shift, and enter state 118 - '#end' reduce using rule 52 - '#postulate' shift, and enter state 119 - '#section' shift, and enter state 120 - '#set-option' shift, and enter state 121 - '#unset-option'shift, and enter state 122 - '#variable' shift, and enter state 123 - '#variables' shift, and enter state 124 - %eof reduce using rule 52 + '#define-assumption'shift, and enter state 119 + '#define-variable'shift, and enter state 120 + '#define-variables'shift, and enter state 121 + '#end' reduce using rule 55 + '#postulate' shift, and enter state 122 + '#section' shift, and enter state 123 + '#set-option' shift, and enter state 124 + '#unset-option'shift, and enter state 125 + '#variable' shift, and enter state 126 + '#variables' shift, and enter state 127 + %eof reduce using rule 55 Command goto state 110 - ListCommand goto state 238 + ListCommand goto state 244 -State 153 +State 159 - DeclUsedVars -> 'uses' '(' . ListVarIdent ')' (rule 54) + DeclUsedVars -> 'uses' '(' . ListVarIdent ')' (rule 57) L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - VarIdent goto state 130 - ListVarIdent goto state 237 + VarIdent goto state 133 + ListVarIdent goto state 243 -State 154 +State 160 - Pattern -> '(' Pattern . ',' Pattern ')' (rule 60) + Pattern -> '(' Pattern . ',' Pattern ')' (rule 63) - ',' shift, and enter state 235 + ',' shift, and enter state 241 -State 155 +State 161 - ListPattern -> Pattern ListPattern . (rule 62) + ListPattern -> Pattern ListPattern . (rule 65) - ':' reduce using rule 62 - %eof reduce using rule 62 + ':' reduce using rule 65 + %eof reduce using rule 65 -State 156 +State 162 - Param -> '{' Pattern . ':' Term '|' Term '}' (rule 66) + Param -> '{' Pattern . ':' Term '|' Term '}' (rule 69) - ':' shift, and enter state 236 + ':' shift, and enter state 242 -State 157 +State 163 - Pattern -> '(' Pattern . ',' Pattern ')' (rule 60) - ListPattern -> Pattern . (rule 61) - ListPattern -> Pattern . ListPattern (rule 62) + Pattern -> '(' Pattern . ',' Pattern ')' (rule 63) + ListPattern -> Pattern . (rule 64) + ListPattern -> Pattern . ListPattern (rule 65) '(' shift, and enter state 104 - ',' shift, and enter state 235 - ':' reduce using rule 61 + ',' shift, and enter state 241 + ':' reduce using rule 64 'unit' shift, and enter state 99 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 VarIdent goto state 94 Pattern goto state 102 - ListPattern goto state 155 + ListPattern goto state 161 -State 158 +State 164 - Param -> '(' ListPattern . ':' Term ')' (rule 64) - Param -> '(' ListPattern . ':' Term '|' Term ')' (rule 65) + Param -> '(' ListPattern . ':' Term ')' (rule 67) + Param -> '(' ListPattern . ':' Term '|' Term ')' (rule 68) - ':' shift, and enter state 234 + ':' shift, and enter state 240 -State 159 +State 165 - ListParam -> Param ListParam . (rule 68) + ListParam -> Param ListParam . (rule 71) - '->' reduce using rule 68 - ':' reduce using rule 68 - '→' reduce using rule 68 - %eof reduce using rule 68 + '->' reduce using rule 71 + ':' reduce using rule 71 + '→' reduce using rule 71 + %eof reduce using rule 71 -State 160 +State 166 - Term6 -> Term6 Term7 . (rule 134) + Term6 -> Term6 Term7 . (rule 137) - '(' reduce using rule 134 - ')' reduce using rule 134 - '*' reduce using rule 134 - '*_1' reduce using rule 134 - '*₁' reduce using rule 134 - ',' reduce using rule 134 - '->' reduce using rule 134 - '/\\' reduce using rule 134 - '0_2' reduce using rule 134 - '0₂' reduce using rule 134 - '1' reduce using rule 134 - '1_2' reduce using rule 134 - '1₂' reduce using rule 134 - '2' reduce using rule 134 - ':' reduce using rule 134 - ':=' reduce using rule 134 - ';' reduce using rule 134 - '<' reduce using rule 134 - '<=' reduce using rule 134 - '=' reduce using rule 134 - '===' reduce using rule 134 - '=_{' reduce using rule 134 - '>' reduce using rule 134 - 'BOT' reduce using rule 134 - 'CUBE' reduce using rule 134 - 'TOP' reduce using rule 134 - 'TOPE' reduce using rule 134 - 'U' reduce using rule 134 - 'Unit' reduce using rule 134 - '[' reduce using rule 134 - '\\/' reduce using rule 134 - ']' reduce using rule 134 - 'as' reduce using rule 134 - 'idJ' reduce using rule 134 - 'recBOT' reduce using rule 134 - 'recOR' reduce using rule 134 - 'refl' reduce using rule 134 - 'refl_{' reduce using rule 134 - 'unit' reduce using rule 134 - '|' reduce using rule 134 - '|->' reduce using rule 134 - '}' reduce using rule 134 - '×' reduce using rule 134 - '→' reduce using rule 134 - '↦' reduce using rule 134 - '∧' reduce using rule 134 - '∨' reduce using rule 134 - '≡' reduce using rule 134 - '≤' reduce using rule 134 - '⊤' reduce using rule 134 - '⊥' reduce using rule 134 - L_VarIdentTokenreduce using rule 134 - L_HoleIdentTokenreduce using rule 134 - %eof reduce using rule 134 + '(' reduce using rule 137 + ')' reduce using rule 137 + '*' reduce using rule 137 + '*_1' reduce using rule 137 + '*₁' reduce using rule 137 + ',' reduce using rule 137 + '->' reduce using rule 137 + '/\\' reduce using rule 137 + '0_2' reduce using rule 137 + '0₂' reduce using rule 137 + '1' reduce using rule 137 + '1_2' reduce using rule 137 + '1₂' reduce using rule 137 + '2' reduce using rule 137 + ':' reduce using rule 137 + ':=' reduce using rule 137 + ';' reduce using rule 137 + '<' reduce using rule 137 + '<=' reduce using rule 137 + '=' reduce using rule 137 + '===' reduce using rule 137 + '=_{' reduce using rule 137 + '>' reduce using rule 137 + 'BOT' reduce using rule 137 + 'CUBE' reduce using rule 137 + 'TOP' reduce using rule 137 + 'TOPE' reduce using rule 137 + 'U' reduce using rule 137 + 'Unit' reduce using rule 137 + '[' reduce using rule 137 + '\\/' reduce using rule 137 + ']' reduce using rule 137 + 'as' reduce using rule 137 + 'idJ' reduce using rule 137 + 'recBOT' reduce using rule 137 + 'recOR' reduce using rule 137 + 'refl' reduce using rule 137 + 'refl_{' reduce using rule 137 + 'unit' reduce using rule 137 + '|' reduce using rule 137 + '|->' reduce using rule 137 + '}' reduce using rule 137 + '×' reduce using rule 137 + '→' reduce using rule 137 + '↦' reduce using rule 137 + '∧' reduce using rule 137 + '∨' reduce using rule 137 + '≡' reduce using rule 137 + '≤' reduce using rule 137 + '⊤' reduce using rule 137 + '⊥' reduce using rule 137 + L_VarIdentTokenreduce using rule 137 + L_HoleIdentTokenreduce using rule 137 + %eof reduce using rule 137 + + +State 167 + + Term6 -> Term6 '[' . ListRestriction ']' (rule 136) + + '(' shift, and enter state 42 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Restriction goto state 88 + ListRestrictiongoto state 239 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 90 + +State 168 + + Restriction -> Term '|->' . Term (rule 79) + + '(' shift, and enter state 42 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 238 -State 161 +State 169 - Term6 -> Term6 '[' . ListRestriction ']' (rule 133) + Restriction -> Term '↦' . Term (rule 78) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -4464,8 +4642,6 @@ State 161 HoleIdent goto state 30 VarIdent goto state 31 ParamDecl goto state 32 - Restriction goto state 88 - ListRestrictiongoto state 233 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 @@ -4473,11 +4649,11 @@ State 161 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 90 + Term goto state 237 -State 162 +State 170 - Restriction -> Term '|->' . Term (rule 76) + ListRestriction -> Restriction ',' . ListRestriction (rule 81) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -4520,6 +4696,8 @@ State 162 HoleIdent goto state 30 VarIdent goto state 31 ParamDecl goto state 32 + Restriction goto state 88 + ListRestrictiongoto state 236 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 @@ -4527,13 +4705,13 @@ State 162 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 232 + Term goto state 90 -State 163 +State 171 - Restriction -> Term '↦' . Term (rule 75) + Term5 -> Term5 '*' . Term6 (rule 114) - '(' shift, and enter state 42 + '(' shift, and enter state 79 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -4545,12 +4723,10 @@ State 163 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -4559,11 +4735,8 @@ State 163 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -4573,21 +4746,56 @@ State 163 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 - Term6 goto state 39 - Term goto state 231 + Term6 goto state 235 -State 164 +State 172 - ListRestriction -> Restriction ',' . ListRestriction (rule 78) + Term5 -> Term5 '×' . Term6 (rule 112) - '(' shift, and enter state 42 + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term6 goto state 234 + +State 173 + + Term1 -> Term2 '=' . Term2 (rule 129) + + '(' shift, and enter state 79 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -4599,12 +4807,10 @@ State 164 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -4613,11 +4819,8 @@ State 164 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -4627,23 +4830,18 @@ State 164 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 - Restriction goto state 88 - ListRestrictiongoto state 230 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 - Term6 goto state 39 - Term goto state 90 + Term2 goto state 233 + Term6 goto state 83 -State 165 +State 174 - Term5 -> Term5 '*' . Term6 (rule 111) + Term1 -> Term2 '=_{' . Term '}' Term2 (rule 128) - '(' shift, and enter state 79 + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -4655,10 +4853,12 @@ State 165 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -4667,67 +4867,279 @@ State 165 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + L_HoleIdentTokenshift, and enter state 76 + + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 232 + +State 175 + + Term7 -> '(' Term . ',' Term ')' (rule 97) + Term7 -> '(' Term . ')' (rule 105) + + ')' shift, and enter state 215 + ',' shift, and enter state 216 + + +State 176 + + Term1 -> '∑' '(' . Pattern ':' Term ')' ',' Term1 (rule 135) + + '(' shift, and enter state 104 + 'unit' shift, and enter state 99 + L_VarIdentTokenshift, and enter state 75 + + VarIdentToken goto state 28 + VarIdent goto state 94 + Pattern goto state 231 + +State 177 + + Term6 -> 'π₂' Term7 . (rule 139) + + '(' reduce using rule 139 + ')' reduce using rule 139 + '*' reduce using rule 139 + '*_1' reduce using rule 139 + '*₁' reduce using rule 139 + ',' reduce using rule 139 + '->' reduce using rule 139 + '/\\' reduce using rule 139 + '0_2' reduce using rule 139 + '0₂' reduce using rule 139 + '1' reduce using rule 139 + '1_2' reduce using rule 139 + '1₂' reduce using rule 139 + '2' reduce using rule 139 + ':' reduce using rule 139 + ':=' reduce using rule 139 + ';' reduce using rule 139 + '<' reduce using rule 139 + '<=' reduce using rule 139 + '=' reduce using rule 139 + '===' reduce using rule 139 + '=_{' reduce using rule 139 + '>' reduce using rule 139 + 'BOT' reduce using rule 139 + 'CUBE' reduce using rule 139 + 'TOP' reduce using rule 139 + 'TOPE' reduce using rule 139 + 'U' reduce using rule 139 + 'Unit' reduce using rule 139 + '[' reduce using rule 139 + '\\/' reduce using rule 139 + ']' reduce using rule 139 + 'as' reduce using rule 139 + 'idJ' reduce using rule 139 + 'recBOT' reduce using rule 139 + 'recOR' reduce using rule 139 + 'refl' reduce using rule 139 + 'refl_{' reduce using rule 139 + 'unit' reduce using rule 139 + '|' reduce using rule 139 + '|->' reduce using rule 139 + '}' reduce using rule 139 + '×' reduce using rule 139 + '→' reduce using rule 139 + '↦' reduce using rule 139 + '∧' reduce using rule 139 + '∨' reduce using rule 139 + '≡' reduce using rule 139 + '≤' reduce using rule 139 + '⊤' reduce using rule 139 + '⊥' reduce using rule 139 + L_VarIdentTokenreduce using rule 139 + L_HoleIdentTokenreduce using rule 139 + %eof reduce using rule 139 + + +State 178 + + Term6 -> 'π₁' Term7 . (rule 138) + + '(' reduce using rule 138 + ')' reduce using rule 138 + '*' reduce using rule 138 + '*_1' reduce using rule 138 + '*₁' reduce using rule 138 + ',' reduce using rule 138 + '->' reduce using rule 138 + '/\\' reduce using rule 138 + '0_2' reduce using rule 138 + '0₂' reduce using rule 138 + '1' reduce using rule 138 + '1_2' reduce using rule 138 + '1₂' reduce using rule 138 + '2' reduce using rule 138 + ':' reduce using rule 138 + ':=' reduce using rule 138 + ';' reduce using rule 138 + '<' reduce using rule 138 + '<=' reduce using rule 138 + '=' reduce using rule 138 + '===' reduce using rule 138 + '=_{' reduce using rule 138 + '>' reduce using rule 138 + 'BOT' reduce using rule 138 + 'CUBE' reduce using rule 138 + 'TOP' reduce using rule 138 + 'TOPE' reduce using rule 138 + 'U' reduce using rule 138 + 'Unit' reduce using rule 138 + '[' reduce using rule 138 + '\\/' reduce using rule 138 + ']' reduce using rule 138 + 'as' reduce using rule 138 + 'idJ' reduce using rule 138 + 'recBOT' reduce using rule 138 + 'recOR' reduce using rule 138 + 'refl' reduce using rule 138 + 'refl_{' reduce using rule 138 + 'unit' reduce using rule 138 + '|' reduce using rule 138 + '|->' reduce using rule 138 + '}' reduce using rule 138 + '×' reduce using rule 138 + '→' reduce using rule 138 + '↦' reduce using rule 138 + '∧' reduce using rule 138 + '∨' reduce using rule 138 + '≡' reduce using rule 138 + '≤' reduce using rule 138 + '⊤' reduce using rule 138 + '⊥' reduce using rule 138 + L_VarIdentTokenreduce using rule 138 + L_HoleIdentTokenreduce using rule 138 + %eof reduce using rule 138 + + +State 179 + + Term1 -> 'Σ' '(' . Pattern ':' Term ')' ',' Term1 (rule 127) + + '(' shift, and enter state 104 + 'unit' shift, and enter state 99 + L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term6 goto state 229 + VarIdent goto state 94 + Pattern goto state 230 -State 166 +State 180 - Term5 -> Term5 '×' . Term6 (rule 109) + ParamDecl -> '{' Pattern . ':' Term '}' (rule 75) + ParamDecl -> '{' Pattern . ':' Term '|' Term '}' (rule 77) - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 + ':' shift, and enter state 229 + + +State 181 + + Pattern -> '(' . Pattern ',' Pattern ')' (rule 63) + ParamDecl -> '{' '(' . Pattern ':' Term ')' '|' Term '}' (rule 76) + + '(' shift, and enter state 104 + 'unit' shift, and enter state 99 L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term6 goto state 228 + VarIdent goto state 94 + Pattern goto state 228 -State 167 +State 182 + + Term6 -> 'second' Term7 . (rule 142) + + '(' reduce using rule 142 + ')' reduce using rule 142 + '*' reduce using rule 142 + '*_1' reduce using rule 142 + '*₁' reduce using rule 142 + ',' reduce using rule 142 + '->' reduce using rule 142 + '/\\' reduce using rule 142 + '0_2' reduce using rule 142 + '0₂' reduce using rule 142 + '1' reduce using rule 142 + '1_2' reduce using rule 142 + '1₂' reduce using rule 142 + '2' reduce using rule 142 + ':' reduce using rule 142 + ':=' reduce using rule 142 + ';' reduce using rule 142 + '<' reduce using rule 142 + '<=' reduce using rule 142 + '=' reduce using rule 142 + '===' reduce using rule 142 + '=_{' reduce using rule 142 + '>' reduce using rule 142 + 'BOT' reduce using rule 142 + 'CUBE' reduce using rule 142 + 'TOP' reduce using rule 142 + 'TOPE' reduce using rule 142 + 'U' reduce using rule 142 + 'Unit' reduce using rule 142 + '[' reduce using rule 142 + '\\/' reduce using rule 142 + ']' reduce using rule 142 + 'as' reduce using rule 142 + 'idJ' reduce using rule 142 + 'recBOT' reduce using rule 142 + 'recOR' reduce using rule 142 + 'refl' reduce using rule 142 + 'refl_{' reduce using rule 142 + 'unit' reduce using rule 142 + '|' reduce using rule 142 + '|->' reduce using rule 142 + '}' reduce using rule 142 + '×' reduce using rule 142 + '→' reduce using rule 142 + '↦' reduce using rule 142 + '∧' reduce using rule 142 + '∨' reduce using rule 142 + '≡' reduce using rule 142 + '≤' reduce using rule 142 + '⊤' reduce using rule 142 + '⊥' reduce using rule 142 + L_VarIdentTokenreduce using rule 142 + L_HoleIdentTokenreduce using rule 142 + %eof reduce using rule 142 - Term1 -> Term2 '=' . Term2 (rule 126) - '(' shift, and enter state 79 +State 183 + + Term7 -> 'refl_{' Term . '}' (rule 100) + Term7 -> 'refl_{' Term . ':' Term '}' (rule 101) + + ':' shift, and enter state 226 + '}' shift, and enter state 227 + + +State 184 + + Term7 -> 'recOR' '(' . ListRestriction ')' (rule 93) + Term7 -> 'recOR' '(' . Term ',' Term ',' Term ',' Term ')' (rule 94) + + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -4739,10 +5151,12 @@ State 167 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -4751,8 +5165,11 @@ State 167 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -4762,16 +5179,21 @@ State 167 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 + ParamDecl goto state 32 + Restriction goto state 88 + ListRestrictiongoto state 224 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 227 - Term6 goto state 83 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 225 -State 168 +State 185 - Term1 -> Term2 '=_{' . Term '}' Term2 (rule 125) + Term7 -> 'idJ' '(' . Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -4821,173 +5243,80 @@ State 168 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 226 - -State 169 - - Term7 -> '(' Term . ',' Term ')' (rule 94) - Term7 -> '(' Term . ')' (rule 102) - - ')' shift, and enter state 209 - ',' shift, and enter state 210 - - -State 170 - - Term1 -> '∑' '(' . Pattern ':' Term ')' ',' Term1 (rule 132) - - '(' shift, and enter state 104 - 'unit' shift, and enter state 99 - L_VarIdentTokenshift, and enter state 75 - - VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 225 - -State 171 - - Term6 -> 'π₂' Term7 . (rule 136) - - '(' reduce using rule 136 - ')' reduce using rule 136 - '*' reduce using rule 136 - '*_1' reduce using rule 136 - '*₁' reduce using rule 136 - ',' reduce using rule 136 - '->' reduce using rule 136 - '/\\' reduce using rule 136 - '0_2' reduce using rule 136 - '0₂' reduce using rule 136 - '1' reduce using rule 136 - '1_2' reduce using rule 136 - '1₂' reduce using rule 136 - '2' reduce using rule 136 - ':' reduce using rule 136 - ':=' reduce using rule 136 - ';' reduce using rule 136 - '<' reduce using rule 136 - '<=' reduce using rule 136 - '=' reduce using rule 136 - '===' reduce using rule 136 - '=_{' reduce using rule 136 - '>' reduce using rule 136 - 'BOT' reduce using rule 136 - 'CUBE' reduce using rule 136 - 'TOP' reduce using rule 136 - 'TOPE' reduce using rule 136 - 'U' reduce using rule 136 - 'Unit' reduce using rule 136 - '[' reduce using rule 136 - '\\/' reduce using rule 136 - ']' reduce using rule 136 - 'as' reduce using rule 136 - 'idJ' reduce using rule 136 - 'recBOT' reduce using rule 136 - 'recOR' reduce using rule 136 - 'refl' reduce using rule 136 - 'refl_{' reduce using rule 136 - 'unit' reduce using rule 136 - '|' reduce using rule 136 - '|->' reduce using rule 136 - '}' reduce using rule 136 - '×' reduce using rule 136 - '→' reduce using rule 136 - '↦' reduce using rule 136 - '∧' reduce using rule 136 - '∨' reduce using rule 136 - '≡' reduce using rule 136 - '≤' reduce using rule 136 - '⊤' reduce using rule 136 - '⊥' reduce using rule 136 - L_VarIdentTokenreduce using rule 136 - L_HoleIdentTokenreduce using rule 136 - %eof reduce using rule 136 - + Term goto state 223 -State 172 - - Term6 -> 'π₁' Term7 . (rule 135) - - '(' reduce using rule 135 - ')' reduce using rule 135 - '*' reduce using rule 135 - '*_1' reduce using rule 135 - '*₁' reduce using rule 135 - ',' reduce using rule 135 - '->' reduce using rule 135 - '/\\' reduce using rule 135 - '0_2' reduce using rule 135 - '0₂' reduce using rule 135 - '1' reduce using rule 135 - '1_2' reduce using rule 135 - '1₂' reduce using rule 135 - '2' reduce using rule 135 - ':' reduce using rule 135 - ':=' reduce using rule 135 - ';' reduce using rule 135 - '<' reduce using rule 135 - '<=' reduce using rule 135 - '=' reduce using rule 135 - '===' reduce using rule 135 - '=_{' reduce using rule 135 - '>' reduce using rule 135 - 'BOT' reduce using rule 135 - 'CUBE' reduce using rule 135 - 'TOP' reduce using rule 135 - 'TOPE' reduce using rule 135 - 'U' reduce using rule 135 - 'Unit' reduce using rule 135 - '[' reduce using rule 135 - '\\/' reduce using rule 135 - ']' reduce using rule 135 - 'as' reduce using rule 135 - 'idJ' reduce using rule 135 - 'recBOT' reduce using rule 135 - 'recOR' reduce using rule 135 - 'refl' reduce using rule 135 - 'refl_{' reduce using rule 135 - 'unit' reduce using rule 135 - '|' reduce using rule 135 - '|->' reduce using rule 135 - '}' reduce using rule 135 - '×' reduce using rule 135 - '→' reduce using rule 135 - '↦' reduce using rule 135 - '∧' reduce using rule 135 - '∨' reduce using rule 135 - '≡' reduce using rule 135 - '≤' reduce using rule 135 - '⊤' reduce using rule 135 - '⊥' reduce using rule 135 - L_VarIdentTokenreduce using rule 135 - L_HoleIdentTokenreduce using rule 135 - %eof reduce using rule 135 - - -State 173 +State 186 - Term1 -> 'Σ' '(' . Pattern ':' Term ')' ',' Term1 (rule 124) + Term6 -> 'first' Term7 . (rule 141) - '(' shift, and enter state 104 - 'unit' shift, and enter state 99 - L_VarIdentTokenshift, and enter state 75 + '(' reduce using rule 141 + ')' reduce using rule 141 + '*' reduce using rule 141 + '*_1' reduce using rule 141 + '*₁' reduce using rule 141 + ',' reduce using rule 141 + '->' reduce using rule 141 + '/\\' reduce using rule 141 + '0_2' reduce using rule 141 + '0₂' reduce using rule 141 + '1' reduce using rule 141 + '1_2' reduce using rule 141 + '1₂' reduce using rule 141 + '2' reduce using rule 141 + ':' reduce using rule 141 + ':=' reduce using rule 141 + ';' reduce using rule 141 + '<' reduce using rule 141 + '<=' reduce using rule 141 + '=' reduce using rule 141 + '===' reduce using rule 141 + '=_{' reduce using rule 141 + '>' reduce using rule 141 + 'BOT' reduce using rule 141 + 'CUBE' reduce using rule 141 + 'TOP' reduce using rule 141 + 'TOPE' reduce using rule 141 + 'U' reduce using rule 141 + 'Unit' reduce using rule 141 + '[' reduce using rule 141 + '\\/' reduce using rule 141 + ']' reduce using rule 141 + 'as' reduce using rule 141 + 'idJ' reduce using rule 141 + 'recBOT' reduce using rule 141 + 'recOR' reduce using rule 141 + 'refl' reduce using rule 141 + 'refl_{' reduce using rule 141 + 'unit' reduce using rule 141 + '|' reduce using rule 141 + '|->' reduce using rule 141 + '}' reduce using rule 141 + '×' reduce using rule 141 + '→' reduce using rule 141 + '↦' reduce using rule 141 + '∧' reduce using rule 141 + '∨' reduce using rule 141 + '≡' reduce using rule 141 + '≤' reduce using rule 141 + '⊤' reduce using rule 141 + '⊥' reduce using rule 141 + L_VarIdentTokenreduce using rule 141 + L_HoleIdentTokenreduce using rule 141 + %eof reduce using rule 141 - VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 224 -State 174 +State 187 - ParamDecl -> '{' Pattern . ':' Term '}' (rule 72) - ParamDecl -> '{' Pattern . ':' Term '|' Term '}' (rule 74) + Term1 -> '\\' ListParam . '→' Term1 (rule 130) + Term1 -> '\\' ListParam . '->' Term1 (rule 134) - ':' shift, and enter state 223 + '->' shift, and enter state 221 + '→' shift, and enter state 222 -State 175 +State 188 - Pattern -> '(' . Pattern ',' Pattern ')' (rule 60) - ParamDecl -> '{' '(' . Pattern ':' Term ')' '|' Term '}' (rule 73) + Term1 -> 'Sigma' '(' . Pattern ':' Term ')' ',' Term1 (rule 133) '(' shift, and enter state 104 'unit' shift, and enter state 99 @@ -4995,81 +5324,32 @@ State 175 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 222 + Pattern goto state 220 -State 176 +State 189 - Term6 -> 'second' Term7 . (rule 139) + Term7 -> '<' ParamDecl . '→' Term '>' (rule 96) + Term7 -> '<' ParamDecl . '->' Term '>' (rule 111) - '(' reduce using rule 139 - ')' reduce using rule 139 - '*' reduce using rule 139 - '*_1' reduce using rule 139 - '*₁' reduce using rule 139 - ',' reduce using rule 139 - '->' reduce using rule 139 - '/\\' reduce using rule 139 - '0_2' reduce using rule 139 - '0₂' reduce using rule 139 - '1' reduce using rule 139 - '1_2' reduce using rule 139 - '1₂' reduce using rule 139 - '2' reduce using rule 139 - ':' reduce using rule 139 - ':=' reduce using rule 139 - ';' reduce using rule 139 - '<' reduce using rule 139 - '<=' reduce using rule 139 - '=' reduce using rule 139 - '===' reduce using rule 139 - '=_{' reduce using rule 139 - '>' reduce using rule 139 - 'BOT' reduce using rule 139 - 'CUBE' reduce using rule 139 - 'TOP' reduce using rule 139 - 'TOPE' reduce using rule 139 - 'U' reduce using rule 139 - 'Unit' reduce using rule 139 - '[' reduce using rule 139 - '\\/' reduce using rule 139 - ']' reduce using rule 139 - 'as' reduce using rule 139 - 'idJ' reduce using rule 139 - 'recBOT' reduce using rule 139 - 'recOR' reduce using rule 139 - 'refl' reduce using rule 139 - 'refl_{' reduce using rule 139 - 'unit' reduce using rule 139 - '|' reduce using rule 139 - '|->' reduce using rule 139 - '}' reduce using rule 139 - '×' reduce using rule 139 - '→' reduce using rule 139 - '↦' reduce using rule 139 - '∧' reduce using rule 139 - '∨' reduce using rule 139 - '≡' reduce using rule 139 - '≤' reduce using rule 139 - '⊤' reduce using rule 139 - '⊥' reduce using rule 139 - L_VarIdentTokenreduce using rule 139 - L_HoleIdentTokenreduce using rule 139 - %eof reduce using rule 139 + '->' shift, and enter state 218 + '→' shift, and enter state 219 -State 177 +State 190 - Term7 -> 'refl_{' Term . '}' (rule 97) - Term7 -> 'refl_{' Term . ':' Term '}' (rule 98) + ParamDecl -> '(' Term . ':' Term ')' (rule 73) + ParamDecl -> '(' Term . ':' Term '|' Term ')' (rule 74) + Term7 -> '(' Term . ',' Term ')' (rule 97) + Term7 -> '(' Term . ')' (rule 105) - ':' shift, and enter state 220 - '}' shift, and enter state 221 + ')' shift, and enter state 215 + ',' shift, and enter state 216 + ':' shift, and enter state 217 -State 178 +State 191 - Term7 -> 'recOR' '(' . ListRestriction ')' (rule 90) - Term7 -> 'recOR' '(' . Term ',' Term ',' Term ',' Term ')' (rule 91) + ListTerm -> Term ',' . ListTerm (rule 146) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -5112,8 +5392,6 @@ State 178 HoleIdent goto state 30 VarIdent goto state 31 ParamDecl goto state 32 - Restriction goto state 88 - ListRestrictiongoto state 218 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 @@ -5121,11 +5399,12 @@ State 178 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 219 + Term goto state 40 + ListTerm goto state 214 -State 179 +State 192 - Term7 -> 'idJ' '(' . Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 99) + Term -> Term2 'as' . Term1 (rule 143) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -5172,118 +5451,240 @@ State 179 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 + Term2 goto state 80 + Term1 goto state 213 Term6 goto state 39 - Term goto state 217 -State 180 +State 193 - Term6 -> 'first' Term7 . (rule 138) + Term2 -> Term3 '\\/' . Term2 (rule 125) - '(' reduce using rule 138 - ')' reduce using rule 138 - '*' reduce using rule 138 - '*_1' reduce using rule 138 - '*₁' reduce using rule 138 - ',' reduce using rule 138 - '->' reduce using rule 138 - '/\\' reduce using rule 138 - '0_2' reduce using rule 138 - '0₂' reduce using rule 138 - '1' reduce using rule 138 - '1_2' reduce using rule 138 - '1₂' reduce using rule 138 - '2' reduce using rule 138 - ':' reduce using rule 138 - ':=' reduce using rule 138 - ';' reduce using rule 138 - '<' reduce using rule 138 - '<=' reduce using rule 138 - '=' reduce using rule 138 - '===' reduce using rule 138 - '=_{' reduce using rule 138 - '>' reduce using rule 138 - 'BOT' reduce using rule 138 - 'CUBE' reduce using rule 138 - 'TOP' reduce using rule 138 - 'TOPE' reduce using rule 138 - 'U' reduce using rule 138 - 'Unit' reduce using rule 138 - '[' reduce using rule 138 - '\\/' reduce using rule 138 - ']' reduce using rule 138 - 'as' reduce using rule 138 - 'idJ' reduce using rule 138 - 'recBOT' reduce using rule 138 - 'recOR' reduce using rule 138 - 'refl' reduce using rule 138 - 'refl_{' reduce using rule 138 - 'unit' reduce using rule 138 - '|' reduce using rule 138 - '|->' reduce using rule 138 - '}' reduce using rule 138 - '×' reduce using rule 138 - '→' reduce using rule 138 - '↦' reduce using rule 138 - '∧' reduce using rule 138 - '∨' reduce using rule 138 - '≡' reduce using rule 138 - '≤' reduce using rule 138 - '⊤' reduce using rule 138 - '⊥' reduce using rule 138 - L_VarIdentTokenreduce using rule 138 - L_HoleIdentTokenreduce using rule 138 - %eof reduce using rule 138 + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 212 + Term6 goto state 83 + +State 194 + Term2 -> Term3 '∨' . Term2 (rule 123) -State 181 + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 - Term1 -> '\\' ListParam . '→' Term1 (rule 127) - Term1 -> '\\' ListParam . '->' Term1 (rule 131) + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 211 + Term6 goto state 83 - '->' shift, and enter state 215 - '→' shift, and enter state 216 +State 195 + Term3 -> Term4 '/\\' . Term3 (rule 122) -State 182 + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 - Term1 -> 'Sigma' '(' . Pattern ':' Term ')' ',' Term1 (rule 130) + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 210 + Term6 goto state 83 - '(' shift, and enter state 104 - 'unit' shift, and enter state 99 +State 196 + + Term3 -> Term4 '∧' . Term3 (rule 120) + + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 + + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 209 + Term6 goto state 83 + +State 197 + + Term4 -> Term5 '<=' . Term5 (rule 119) + + '(' shift, and enter state 79 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 214 - -State 183 - - Term7 -> '<' ParamDecl . '→' Term '>' (rule 93) - Term7 -> '<' ParamDecl . '->' Term '>' (rule 108) - - '->' shift, and enter state 212 - '→' shift, and enter state 213 - - -State 184 - - ParamDecl -> '(' Term . ':' Term ')' (rule 70) - ParamDecl -> '(' Term . ':' Term '|' Term ')' (rule 71) - Term7 -> '(' Term . ',' Term ')' (rule 94) - Term7 -> '(' Term . ')' (rule 102) - - ')' shift, and enter state 209 - ',' shift, and enter state 210 - ':' shift, and enter state 211 - + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + Term7 goto state 33 + Term5 goto state 208 + Term6 goto state 83 -State 185 +State 198 - ListTerm -> Term ',' . ListTerm (rule 143) + Term4 -> Term5 '===' . Term5 (rule 118) - '(' shift, and enter state 42 + '(' shift, and enter state 79 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -5295,12 +5696,10 @@ State 185 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -5309,11 +5708,8 @@ State 185 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -5323,22 +5719,15 @@ State 185 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 - Term6 goto state 39 - Term goto state 40 - ListTerm goto state 208 + Term5 goto state 207 + Term6 goto state 83 -State 186 +State 199 - Term -> Term2 'as' . Term1 (rule 140) + Term4 -> Term5 '≡' . Term5 (rule 115) - '(' shift, and enter state 42 + '(' shift, and enter state 79 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -5350,12 +5739,10 @@ State 186 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -5364,11 +5751,8 @@ State 186 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -5378,18 +5762,13 @@ State 186 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 80 - Term1 goto state 207 - Term6 goto state 39 + Term5 goto state 206 + Term6 goto state 83 -State 187 +State 200 - Term2 -> Term3 '\\/' . Term2 (rule 122) + Term4 -> Term5 '≤' . Term5 (rule 116) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -5427,17 +5806,14 @@ State 187 HoleIdent goto state 30 VarIdent goto state 31 Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 206 + Term5 goto state 205 Term6 goto state 83 -State 188 +State 201 - Term2 -> Term3 '∨' . Term2 (rule 120) + Term1 -> ParamDecl '->' . Term1 (rule 132) - '(' shift, and enter state 79 + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -5449,10 +5825,12 @@ State 188 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -5461,8 +5839,11 @@ State 188 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -5472,18 +5853,20 @@ State 188 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 + ParamDecl goto state 32 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 205 - Term6 goto state 83 + Term2 goto state 80 + Term1 goto state 204 + Term6 goto state 39 -State 189 +State 202 - Term3 -> Term4 '/\\' . Term3 (rule 119) + Term1 -> ParamDecl '→' . Term1 (rule 126) - '(' shift, and enter state 79 + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 '0_2' shift, and enter state 45 @@ -5495,10 +5878,12 @@ State 189 '<' shift, and enter state 51 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 @@ -5507,8 +5892,11 @@ State 189 'refl_{' shift, and enter state 65 'second' shift, and enter state 66 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 'π₁' shift, and enter state 70 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 @@ -5518,232 +5906,343 @@ State 189 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 + ParamDecl goto state 32 Term7 goto state 33 Term5 goto state 34 Term4 goto state 35 - Term3 goto state 204 - Term6 goto state 83 + Term3 goto state 36 + Term2 goto state 80 + Term1 goto state 203 + Term6 goto state 39 + +State 203 + + Term1 -> ParamDecl '→' Term1 . (rule 126) + + ')' reduce using rule 126 + ',' reduce using rule 126 + ':' reduce using rule 126 + ':=' reduce using rule 126 + ';' reduce using rule 126 + '>' reduce using rule 126 + ']' reduce using rule 126 + '|' reduce using rule 126 + '|->' reduce using rule 126 + '}' reduce using rule 126 + '↦' reduce using rule 126 + %eof reduce using rule 126 + + +State 204 + + Term1 -> ParamDecl '->' Term1 . (rule 132) + + ')' reduce using rule 132 + ',' reduce using rule 132 + ':' reduce using rule 132 + ':=' reduce using rule 132 + ';' reduce using rule 132 + '>' reduce using rule 132 + ']' reduce using rule 132 + '|' reduce using rule 132 + '|->' reduce using rule 132 + '}' reduce using rule 132 + '↦' reduce using rule 132 + %eof reduce using rule 132 + + +State 205 + + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) + Term4 -> Term5 '≤' Term5 . (rule 116) + + ')' reduce using rule 116 + '*' shift, and enter state 171 + ',' reduce using rule 116 + '/\\' reduce using rule 116 + ':' reduce using rule 116 + ':=' reduce using rule 116 + ';' reduce using rule 116 + '=' reduce using rule 116 + '=_{' reduce using rule 116 + '>' reduce using rule 116 + '\\/' reduce using rule 116 + ']' reduce using rule 116 + 'as' reduce using rule 116 + '|' reduce using rule 116 + '|->' reduce using rule 116 + '}' reduce using rule 116 + '×' shift, and enter state 172 + '↦' reduce using rule 116 + '∧' reduce using rule 116 + '∨' reduce using rule 116 + %eof reduce using rule 116 + + +State 206 + + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) + Term4 -> Term5 '≡' Term5 . (rule 115) + + ')' reduce using rule 115 + '*' shift, and enter state 171 + ',' reduce using rule 115 + '/\\' reduce using rule 115 + ':' reduce using rule 115 + ':=' reduce using rule 115 + ';' reduce using rule 115 + '=' reduce using rule 115 + '=_{' reduce using rule 115 + '>' reduce using rule 115 + '\\/' reduce using rule 115 + ']' reduce using rule 115 + 'as' reduce using rule 115 + '|' reduce using rule 115 + '|->' reduce using rule 115 + '}' reduce using rule 115 + '×' shift, and enter state 172 + '↦' reduce using rule 115 + '∧' reduce using rule 115 + '∨' reduce using rule 115 + %eof reduce using rule 115 + + +State 207 + + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) + Term4 -> Term5 '===' Term5 . (rule 118) + + ')' reduce using rule 118 + '*' shift, and enter state 171 + ',' reduce using rule 118 + '/\\' reduce using rule 118 + ':' reduce using rule 118 + ':=' reduce using rule 118 + ';' reduce using rule 118 + '=' reduce using rule 118 + '=_{' reduce using rule 118 + '>' reduce using rule 118 + '\\/' reduce using rule 118 + ']' reduce using rule 118 + 'as' reduce using rule 118 + '|' reduce using rule 118 + '|->' reduce using rule 118 + '}' reduce using rule 118 + '×' shift, and enter state 172 + '↦' reduce using rule 118 + '∧' reduce using rule 118 + '∨' reduce using rule 118 + %eof reduce using rule 118 + + +State 208 + + Term5 -> Term5 . '×' Term6 (rule 112) + Term5 -> Term5 . '*' Term6 (rule 114) + Term4 -> Term5 '<=' Term5 . (rule 119) + + ')' reduce using rule 119 + '*' shift, and enter state 171 + ',' reduce using rule 119 + '/\\' reduce using rule 119 + ':' reduce using rule 119 + ':=' reduce using rule 119 + ';' reduce using rule 119 + '=' reduce using rule 119 + '=_{' reduce using rule 119 + '>' reduce using rule 119 + '\\/' reduce using rule 119 + ']' reduce using rule 119 + 'as' reduce using rule 119 + '|' reduce using rule 119 + '|->' reduce using rule 119 + '}' reduce using rule 119 + '×' shift, and enter state 172 + '↦' reduce using rule 119 + '∧' reduce using rule 119 + '∨' reduce using rule 119 + %eof reduce using rule 119 + + +State 209 + + Term3 -> Term4 '∧' Term3 . (rule 120) + + ')' reduce using rule 120 + ',' reduce using rule 120 + ':' reduce using rule 120 + ':=' reduce using rule 120 + ';' reduce using rule 120 + '=' reduce using rule 120 + '=_{' reduce using rule 120 + '>' reduce using rule 120 + '\\/' reduce using rule 120 + ']' reduce using rule 120 + 'as' reduce using rule 120 + '|' reduce using rule 120 + '|->' reduce using rule 120 + '}' reduce using rule 120 + '↦' reduce using rule 120 + '∨' reduce using rule 120 + %eof reduce using rule 120 + + +State 210 + + Term3 -> Term4 '/\\' Term3 . (rule 122) + + ')' reduce using rule 122 + ',' reduce using rule 122 + ':' reduce using rule 122 + ':=' reduce using rule 122 + ';' reduce using rule 122 + '=' reduce using rule 122 + '=_{' reduce using rule 122 + '>' reduce using rule 122 + '\\/' reduce using rule 122 + ']' reduce using rule 122 + 'as' reduce using rule 122 + '|' reduce using rule 122 + '|->' reduce using rule 122 + '}' reduce using rule 122 + '↦' reduce using rule 122 + '∨' reduce using rule 122 + %eof reduce using rule 122 -State 190 - Term3 -> Term4 '∧' . Term3 (rule 117) +State 211 - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + Term2 -> Term3 '∨' Term2 . (rule 123) - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 203 - Term6 goto state 83 + ')' reduce using rule 123 + ',' reduce using rule 123 + ':' reduce using rule 123 + ':=' reduce using rule 123 + ';' reduce using rule 123 + '=' reduce using rule 123 + '=_{' reduce using rule 123 + '>' reduce using rule 123 + ']' reduce using rule 123 + 'as' reduce using rule 123 + '|' reduce using rule 123 + '|->' reduce using rule 123 + '}' reduce using rule 123 + '↦' reduce using rule 123 + %eof reduce using rule 123 -State 191 - Term4 -> Term5 '<=' . Term5 (rule 116) +State 212 - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + Term2 -> Term3 '\\/' Term2 . (rule 125) - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term5 goto state 202 - Term6 goto state 83 + ')' reduce using rule 125 + ',' reduce using rule 125 + ':' reduce using rule 125 + ':=' reduce using rule 125 + ';' reduce using rule 125 + '=' reduce using rule 125 + '=_{' reduce using rule 125 + '>' reduce using rule 125 + ']' reduce using rule 125 + 'as' reduce using rule 125 + '|' reduce using rule 125 + '|->' reduce using rule 125 + '}' reduce using rule 125 + '↦' reduce using rule 125 + %eof reduce using rule 125 -State 192 - Term4 -> Term5 '===' . Term5 (rule 115) +State 213 - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + Term -> Term2 'as' Term1 . (rule 143) + + ')' reduce using rule 143 + ',' reduce using rule 143 + ':' reduce using rule 143 + ':=' reduce using rule 143 + ';' reduce using rule 143 + '>' reduce using rule 143 + ']' reduce using rule 143 + '|' reduce using rule 143 + '|->' reduce using rule 143 + '}' reduce using rule 143 + '↦' reduce using rule 143 + %eof reduce using rule 143 - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term5 goto state 201 - Term6 goto state 83 -State 193 +State 214 - Term4 -> Term5 '≡' . Term5 (rule 112) + ListTerm -> Term ',' ListTerm . (rule 146) - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + %eof reduce using rule 146 - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term5 goto state 200 - Term6 goto state 83 -State 194 +State 215 - Term4 -> Term5 '≤' . Term5 (rule 113) + Term7 -> '(' Term ')' . (rule 105) - '(' shift, and enter state 79 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + '(' reduce using rule 105 + ')' reduce using rule 105 + '*' reduce using rule 105 + '*_1' reduce using rule 105 + '*₁' reduce using rule 105 + ',' reduce using rule 105 + '->' reduce using rule 105 + '/\\' reduce using rule 105 + '0_2' reduce using rule 105 + '0₂' reduce using rule 105 + '1' reduce using rule 105 + '1_2' reduce using rule 105 + '1₂' reduce using rule 105 + '2' reduce using rule 105 + ':' reduce using rule 105 + ':=' reduce using rule 105 + ';' reduce using rule 105 + '<' reduce using rule 105 + '<=' reduce using rule 105 + '=' reduce using rule 105 + '===' reduce using rule 105 + '=_{' reduce using rule 105 + '>' reduce using rule 105 + 'BOT' reduce using rule 105 + 'CUBE' reduce using rule 105 + 'TOP' reduce using rule 105 + 'TOPE' reduce using rule 105 + 'U' reduce using rule 105 + 'Unit' reduce using rule 105 + '[' reduce using rule 105 + '\\/' reduce using rule 105 + ']' reduce using rule 105 + 'as' reduce using rule 105 + 'idJ' reduce using rule 105 + 'recBOT' reduce using rule 105 + 'recOR' reduce using rule 105 + 'refl' reduce using rule 105 + 'refl_{' reduce using rule 105 + 'unit' reduce using rule 105 + '|' reduce using rule 105 + '|->' reduce using rule 105 + '}' reduce using rule 105 + '×' reduce using rule 105 + '→' reduce using rule 105 + '↦' reduce using rule 105 + '∧' reduce using rule 105 + '∨' reduce using rule 105 + '≡' reduce using rule 105 + '≤' reduce using rule 105 + '⊤' reduce using rule 105 + '⊥' reduce using rule 105 + L_VarIdentTokenreduce using rule 105 + L_HoleIdentTokenreduce using rule 105 + %eof reduce using rule 105 - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - Term7 goto state 33 - Term5 goto state 199 - Term6 goto state 83 -State 195 +State 216 - Term1 -> ParamDecl '->' . Term1 (rule 129) + Term7 -> '(' Term ',' . Term ')' (rule 97) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -5790,13 +6289,15 @@ State 195 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 80 - Term1 goto state 198 + Term2 goto state 37 + Term1 goto state 38 Term6 goto state 39 + Term goto state 293 -State 196 +State 217 - Term1 -> ParamDecl '→' . Term1 (rule 123) + ParamDecl -> '(' Term ':' . Term ')' (rule 73) + ParamDecl -> '(' Term ':' . Term '|' Term ')' (rule 74) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -5843,338 +6344,129 @@ State 196 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 80 - Term1 goto state 197 - Term6 goto state 39 - -State 197 - - Term1 -> ParamDecl '→' Term1 . (rule 123) - - ')' reduce using rule 123 - ',' reduce using rule 123 - ':' reduce using rule 123 - ':=' reduce using rule 123 - ';' reduce using rule 123 - '>' reduce using rule 123 - ']' reduce using rule 123 - '|' reduce using rule 123 - '|->' reduce using rule 123 - '}' reduce using rule 123 - '↦' reduce using rule 123 - %eof reduce using rule 123 - - -State 198 - - Term1 -> ParamDecl '->' Term1 . (rule 129) - - ')' reduce using rule 129 - ',' reduce using rule 129 - ':' reduce using rule 129 - ':=' reduce using rule 129 - ';' reduce using rule 129 - '>' reduce using rule 129 - ']' reduce using rule 129 - '|' reduce using rule 129 - '|->' reduce using rule 129 - '}' reduce using rule 129 - '↦' reduce using rule 129 - %eof reduce using rule 129 - - -State 199 - - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) - Term4 -> Term5 '≤' Term5 . (rule 113) - - ')' reduce using rule 113 - '*' shift, and enter state 165 - ',' reduce using rule 113 - '/\\' reduce using rule 113 - ':' reduce using rule 113 - ':=' reduce using rule 113 - ';' reduce using rule 113 - '=' reduce using rule 113 - '=_{' reduce using rule 113 - '>' reduce using rule 113 - '\\/' reduce using rule 113 - ']' reduce using rule 113 - 'as' reduce using rule 113 - '|' reduce using rule 113 - '|->' reduce using rule 113 - '}' reduce using rule 113 - '×' shift, and enter state 166 - '↦' reduce using rule 113 - '∧' reduce using rule 113 - '∨' reduce using rule 113 - %eof reduce using rule 113 - - -State 200 - - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) - Term4 -> Term5 '≡' Term5 . (rule 112) - - ')' reduce using rule 112 - '*' shift, and enter state 165 - ',' reduce using rule 112 - '/\\' reduce using rule 112 - ':' reduce using rule 112 - ':=' reduce using rule 112 - ';' reduce using rule 112 - '=' reduce using rule 112 - '=_{' reduce using rule 112 - '>' reduce using rule 112 - '\\/' reduce using rule 112 - ']' reduce using rule 112 - 'as' reduce using rule 112 - '|' reduce using rule 112 - '|->' reduce using rule 112 - '}' reduce using rule 112 - '×' shift, and enter state 166 - '↦' reduce using rule 112 - '∧' reduce using rule 112 - '∨' reduce using rule 112 - %eof reduce using rule 112 - - -State 201 - - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) - Term4 -> Term5 '===' Term5 . (rule 115) - - ')' reduce using rule 115 - '*' shift, and enter state 165 - ',' reduce using rule 115 - '/\\' reduce using rule 115 - ':' reduce using rule 115 - ':=' reduce using rule 115 - ';' reduce using rule 115 - '=' reduce using rule 115 - '=_{' reduce using rule 115 - '>' reduce using rule 115 - '\\/' reduce using rule 115 - ']' reduce using rule 115 - 'as' reduce using rule 115 - '|' reduce using rule 115 - '|->' reduce using rule 115 - '}' reduce using rule 115 - '×' shift, and enter state 166 - '↦' reduce using rule 115 - '∧' reduce using rule 115 - '∨' reduce using rule 115 - %eof reduce using rule 115 - - -State 202 - - Term5 -> Term5 . '×' Term6 (rule 109) - Term5 -> Term5 . '*' Term6 (rule 111) - Term4 -> Term5 '<=' Term5 . (rule 116) - - ')' reduce using rule 116 - '*' shift, and enter state 165 - ',' reduce using rule 116 - '/\\' reduce using rule 116 - ':' reduce using rule 116 - ':=' reduce using rule 116 - ';' reduce using rule 116 - '=' reduce using rule 116 - '=_{' reduce using rule 116 - '>' reduce using rule 116 - '\\/' reduce using rule 116 - ']' reduce using rule 116 - 'as' reduce using rule 116 - '|' reduce using rule 116 - '|->' reduce using rule 116 - '}' reduce using rule 116 - '×' shift, and enter state 166 - '↦' reduce using rule 116 - '∧' reduce using rule 116 - '∨' reduce using rule 116 - %eof reduce using rule 116 - - -State 203 - - Term3 -> Term4 '∧' Term3 . (rule 117) - - ')' reduce using rule 117 - ',' reduce using rule 117 - ':' reduce using rule 117 - ':=' reduce using rule 117 - ';' reduce using rule 117 - '=' reduce using rule 117 - '=_{' reduce using rule 117 - '>' reduce using rule 117 - '\\/' reduce using rule 117 - ']' reduce using rule 117 - 'as' reduce using rule 117 - '|' reduce using rule 117 - '|->' reduce using rule 117 - '}' reduce using rule 117 - '↦' reduce using rule 117 - '∨' reduce using rule 117 - %eof reduce using rule 117 - - -State 204 - - Term3 -> Term4 '/\\' Term3 . (rule 119) - - ')' reduce using rule 119 - ',' reduce using rule 119 - ':' reduce using rule 119 - ':=' reduce using rule 119 - ';' reduce using rule 119 - '=' reduce using rule 119 - '=_{' reduce using rule 119 - '>' reduce using rule 119 - '\\/' reduce using rule 119 - ']' reduce using rule 119 - 'as' reduce using rule 119 - '|' reduce using rule 119 - '|->' reduce using rule 119 - '}' reduce using rule 119 - '↦' reduce using rule 119 - '∨' reduce using rule 119 - %eof reduce using rule 119 - - -State 205 - - Term2 -> Term3 '∨' Term2 . (rule 120) - - ')' reduce using rule 120 - ',' reduce using rule 120 - ':' reduce using rule 120 - ':=' reduce using rule 120 - ';' reduce using rule 120 - '=' reduce using rule 120 - '=_{' reduce using rule 120 - '>' reduce using rule 120 - ']' reduce using rule 120 - 'as' reduce using rule 120 - '|' reduce using rule 120 - '|->' reduce using rule 120 - '}' reduce using rule 120 - '↦' reduce using rule 120 - %eof reduce using rule 120 - - -State 206 - - Term2 -> Term3 '\\/' Term2 . (rule 122) - - ')' reduce using rule 122 - ',' reduce using rule 122 - ':' reduce using rule 122 - ':=' reduce using rule 122 - ';' reduce using rule 122 - '=' reduce using rule 122 - '=_{' reduce using rule 122 - '>' reduce using rule 122 - ']' reduce using rule 122 - 'as' reduce using rule 122 - '|' reduce using rule 122 - '|->' reduce using rule 122 - '}' reduce using rule 122 - '↦' reduce using rule 122 - %eof reduce using rule 122 - - -State 207 - - Term -> Term2 'as' Term1 . (rule 140) - - ')' reduce using rule 140 - ',' reduce using rule 140 - ':' reduce using rule 140 - ':=' reduce using rule 140 - ';' reduce using rule 140 - '>' reduce using rule 140 - ']' reduce using rule 140 - '|' reduce using rule 140 - '|->' reduce using rule 140 - '}' reduce using rule 140 - '↦' reduce using rule 140 - %eof reduce using rule 140 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 292 +State 218 -State 208 + Term7 -> '<' ParamDecl '->' . Term '>' (rule 111) - ListTerm -> Term ',' ListTerm . (rule 143) + '(' shift, and enter state 42 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 143 + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 291 +State 219 -State 209 + Term7 -> '<' ParamDecl '→' . Term '>' (rule 96) - Term7 -> '(' Term ')' . (rule 102) + '(' shift, and enter state 42 + '*_1' shift, and enter state 43 + '*₁' shift, and enter state 44 + '0_2' shift, and enter state 45 + '0₂' shift, and enter state 46 + '1' shift, and enter state 47 + '1_2' shift, and enter state 48 + '1₂' shift, and enter state 49 + '2' shift, and enter state 50 + '<' shift, and enter state 51 + 'BOT' shift, and enter state 52 + 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 + 'TOP' shift, and enter state 55 + 'TOPE' shift, and enter state 56 + 'U' shift, and enter state 57 + 'Unit' shift, and enter state 58 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 + 'idJ' shift, and enter state 61 + 'recBOT' shift, and enter state 62 + 'recOR' shift, and enter state 63 + 'refl' shift, and enter state 64 + 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 + 'unit' shift, and enter state 67 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 + '⊤' shift, and enter state 73 + '⊥' shift, and enter state 74 + L_VarIdentTokenshift, and enter state 75 + L_HoleIdentTokenshift, and enter state 76 - '(' reduce using rule 102 - ')' reduce using rule 102 - '*' reduce using rule 102 - '*_1' reduce using rule 102 - '*₁' reduce using rule 102 - ',' reduce using rule 102 - '->' reduce using rule 102 - '/\\' reduce using rule 102 - '0_2' reduce using rule 102 - '0₂' reduce using rule 102 - '1' reduce using rule 102 - '1_2' reduce using rule 102 - '1₂' reduce using rule 102 - '2' reduce using rule 102 - ':' reduce using rule 102 - ':=' reduce using rule 102 - ';' reduce using rule 102 - '<' reduce using rule 102 - '<=' reduce using rule 102 - '=' reduce using rule 102 - '===' reduce using rule 102 - '=_{' reduce using rule 102 - '>' reduce using rule 102 - 'BOT' reduce using rule 102 - 'CUBE' reduce using rule 102 - 'TOP' reduce using rule 102 - 'TOPE' reduce using rule 102 - 'U' reduce using rule 102 - 'Unit' reduce using rule 102 - '[' reduce using rule 102 - '\\/' reduce using rule 102 - ']' reduce using rule 102 - 'as' reduce using rule 102 - 'idJ' reduce using rule 102 - 'recBOT' reduce using rule 102 - 'recOR' reduce using rule 102 - 'refl' reduce using rule 102 - 'refl_{' reduce using rule 102 - 'unit' reduce using rule 102 - '|' reduce using rule 102 - '|->' reduce using rule 102 - '}' reduce using rule 102 - '×' reduce using rule 102 - '→' reduce using rule 102 - '↦' reduce using rule 102 - '∧' reduce using rule 102 - '∨' reduce using rule 102 - '≡' reduce using rule 102 - '≤' reduce using rule 102 - '⊤' reduce using rule 102 - '⊥' reduce using rule 102 - L_VarIdentTokenreduce using rule 102 - L_HoleIdentTokenreduce using rule 102 - %eof reduce using rule 102 + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 290 +State 220 + + Term1 -> 'Sigma' '(' Pattern . ':' Term ')' ',' Term1 (rule 133) + + ':' shift, and enter state 289 -State 210 - Term7 -> '(' Term ',' . Term ')' (rule 94) +State 221 + + Term1 -> '\\' ListParam '->' . Term1 (rule 134) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6221,15 +6513,13 @@ State 210 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 + Term2 goto state 80 + Term1 goto state 288 Term6 goto state 39 - Term goto state 281 -State 211 +State 222 - ParamDecl -> '(' Term ':' . Term ')' (rule 70) - ParamDecl -> '(' Term ':' . Term '|' Term ')' (rule 71) + Term1 -> '\\' ListParam '→' . Term1 (rule 130) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6276,14 +6566,38 @@ State 211 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 + Term2 goto state 80 + Term1 goto state 287 Term6 goto state 39 - Term goto state 280 -State 212 +State 223 + + Term7 -> 'idJ' '(' Term . ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 102) + + ',' shift, and enter state 286 + - Term7 -> '<' ParamDecl '->' . Term '>' (rule 108) +State 224 + + Term7 -> 'recOR' '(' ListRestriction . ')' (rule 93) + + ')' shift, and enter state 285 + + +State 225 + + Restriction -> Term . '↦' Term (rule 78) + Restriction -> Term . '|->' Term (rule 79) + Term7 -> 'recOR' '(' Term . ',' Term ',' Term ',' Term ')' (rule 94) + + ',' shift, and enter state 284 + '|->' shift, and enter state 168 + '↦' shift, and enter state 169 + + +State 226 + + Term7 -> 'refl_{' Term ':' . Term '}' (rule 101) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6321,23 +6635,93 @@ State 212 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - ParamDecl goto state 32 - Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 - Term6 goto state 39 - Term goto state 279 + VarIdentToken goto state 28 + HoleIdentToken goto state 29 + HoleIdent goto state 30 + VarIdent goto state 31 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 283 + +State 227 + + Term7 -> 'refl_{' Term '}' . (rule 100) + + '(' reduce using rule 100 + ')' reduce using rule 100 + '*' reduce using rule 100 + '*_1' reduce using rule 100 + '*₁' reduce using rule 100 + ',' reduce using rule 100 + '->' reduce using rule 100 + '/\\' reduce using rule 100 + '0_2' reduce using rule 100 + '0₂' reduce using rule 100 + '1' reduce using rule 100 + '1_2' reduce using rule 100 + '1₂' reduce using rule 100 + '2' reduce using rule 100 + ':' reduce using rule 100 + ':=' reduce using rule 100 + ';' reduce using rule 100 + '<' reduce using rule 100 + '<=' reduce using rule 100 + '=' reduce using rule 100 + '===' reduce using rule 100 + '=_{' reduce using rule 100 + '>' reduce using rule 100 + 'BOT' reduce using rule 100 + 'CUBE' reduce using rule 100 + 'TOP' reduce using rule 100 + 'TOPE' reduce using rule 100 + 'U' reduce using rule 100 + 'Unit' reduce using rule 100 + '[' reduce using rule 100 + '\\/' reduce using rule 100 + ']' reduce using rule 100 + 'as' reduce using rule 100 + 'idJ' reduce using rule 100 + 'recBOT' reduce using rule 100 + 'recOR' reduce using rule 100 + 'refl' reduce using rule 100 + 'refl_{' reduce using rule 100 + 'unit' reduce using rule 100 + '|' reduce using rule 100 + '|->' reduce using rule 100 + '}' reduce using rule 100 + '×' reduce using rule 100 + '→' reduce using rule 100 + '↦' reduce using rule 100 + '∧' reduce using rule 100 + '∨' reduce using rule 100 + '≡' reduce using rule 100 + '≤' reduce using rule 100 + '⊤' reduce using rule 100 + '⊥' reduce using rule 100 + L_VarIdentTokenreduce using rule 100 + L_HoleIdentTokenreduce using rule 100 + %eof reduce using rule 100 + + +State 228 + + Pattern -> '(' Pattern . ',' Pattern ')' (rule 63) + ParamDecl -> '{' '(' Pattern . ':' Term ')' '|' Term '}' (rule 76) + + ',' shift, and enter state 241 + ':' shift, and enter state 282 -State 213 - Term7 -> '<' ParamDecl '→' . Term '>' (rule 93) +State 229 + + ParamDecl -> '{' Pattern ':' . Term '}' (rule 75) + ParamDecl -> '{' Pattern ':' . Term '|' Term '}' (rule 77) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6387,273 +6771,217 @@ State 213 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 278 + Term goto state 281 -State 214 +State 230 - Term1 -> 'Sigma' '(' Pattern . ':' Term ')' ',' Term1 (rule 130) + Term1 -> 'Σ' '(' Pattern . ':' Term ')' ',' Term1 (rule 127) - ':' shift, and enter state 277 + ':' shift, and enter state 280 -State 215 +State 231 - Term1 -> '\\' ListParam '->' . Term1 (rule 131) + Term1 -> '∑' '(' Pattern . ':' Term ')' ',' Term1 (rule 135) - '(' shift, and enter state 42 + ':' shift, and enter state 279 + + +State 232 + + Term1 -> Term2 '=_{' Term . '}' Term2 (rule 128) + + '}' shift, and enter state 278 + + +State 233 + + Term1 -> Term2 '=' Term2 . (rule 129) + + ')' reduce using rule 129 + ',' reduce using rule 129 + ':' reduce using rule 129 + ':=' reduce using rule 129 + ';' reduce using rule 129 + '>' reduce using rule 129 + ']' reduce using rule 129 + '|' reduce using rule 129 + '|->' reduce using rule 129 + '}' reduce using rule 129 + '↦' reduce using rule 129 + %eof reduce using rule 129 + + +State 234 + + Term5 -> Term5 '×' Term6 . (rule 112) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) + + '(' shift, and enter state 79 + ')' reduce using rule 112 + '*' reduce using rule 112 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 + ',' reduce using rule 112 + '/\\' reduce using rule 112 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 + ':' reduce using rule 112 + ':=' reduce using rule 112 + ';' reduce using rule 112 '<' shift, and enter state 51 + '<=' reduce using rule 112 + '=' reduce using rule 112 + '===' reduce using rule 112 + '=_{' reduce using rule 112 + '>' reduce using rule 112 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 - 'first' shift, and enter state 60 + '[' shift, and enter state 167 + '\\/' reduce using rule 112 + ']' reduce using rule 112 + 'as' reduce using rule 112 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 + '|' reduce using rule 112 + '|->' reduce using rule 112 + '}' reduce using rule 112 + '×' reduce using rule 112 + '↦' reduce using rule 112 + '∧' reduce using rule 112 + '∨' reduce using rule 112 + '≡' reduce using rule 112 + '≤' reduce using rule 112 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 + %eof reduce using rule 112 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 - Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 80 - Term1 goto state 276 - Term6 goto state 39 + Term7 goto state 166 -State 216 +State 235 - Term1 -> '\\' ListParam '→' . Term1 (rule 127) + Term5 -> Term5 '*' Term6 . (rule 114) + Term6 -> Term6 . '[' ListRestriction ']' (rule 136) + Term6 -> Term6 . Term7 (rule 137) - '(' shift, and enter state 42 + '(' shift, and enter state 79 + ')' reduce using rule 114 + '*' reduce using rule 114 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 + ',' reduce using rule 114 + '/\\' reduce using rule 114 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 + ':' reduce using rule 114 + ':=' reduce using rule 114 + ';' reduce using rule 114 '<' shift, and enter state 51 + '<=' reduce using rule 114 + '=' reduce using rule 114 + '===' reduce using rule 114 + '=_{' reduce using rule 114 + '>' reduce using rule 114 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 - 'first' shift, and enter state 60 + '[' shift, and enter state 167 + '\\/' reduce using rule 114 + ']' reduce using rule 114 + 'as' reduce using rule 114 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 + '|' reduce using rule 114 + '|->' reduce using rule 114 + '}' reduce using rule 114 + '×' reduce using rule 114 + '↦' reduce using rule 114 + '∧' reduce using rule 114 + '∨' reduce using rule 114 + '≡' reduce using rule 114 + '≤' reduce using rule 114 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 + %eof reduce using rule 114 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - ParamDecl goto state 32 - Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 80 - Term1 goto state 275 - Term6 goto state 39 - -State 217 - - Term7 -> 'idJ' '(' Term . ',' Term ',' Term ',' Term ',' Term ',' Term ')' (rule 99) - - ',' shift, and enter state 274 - - -State 218 - - Term7 -> 'recOR' '(' ListRestriction . ')' (rule 90) - - ')' shift, and enter state 273 + Term7 goto state 166 +State 236 -State 219 - - Restriction -> Term . '↦' Term (rule 75) - Restriction -> Term . '|->' Term (rule 76) - Term7 -> 'recOR' '(' Term . ',' Term ',' Term ',' Term ')' (rule 91) - - ',' shift, and enter state 272 - '|->' shift, and enter state 162 - '↦' shift, and enter state 163 + ListRestriction -> Restriction ',' ListRestriction . (rule 81) + ')' reduce using rule 81 + ']' reduce using rule 81 + %eof reduce using rule 81 -State 220 - Term7 -> 'refl_{' Term ':' . Term '}' (rule 98) +State 237 - '(' shift, and enter state 42 - '*_1' shift, and enter state 43 - '*₁' shift, and enter state 44 - '0_2' shift, and enter state 45 - '0₂' shift, and enter state 46 - '1' shift, and enter state 47 - '1_2' shift, and enter state 48 - '1₂' shift, and enter state 49 - '2' shift, and enter state 50 - '<' shift, and enter state 51 - 'BOT' shift, and enter state 52 - 'CUBE' shift, and enter state 53 - 'Sigma' shift, and enter state 54 - 'TOP' shift, and enter state 55 - 'TOPE' shift, and enter state 56 - 'U' shift, and enter state 57 - 'Unit' shift, and enter state 58 - '\\' shift, and enter state 59 - 'first' shift, and enter state 60 - 'idJ' shift, and enter state 61 - 'recBOT' shift, and enter state 62 - 'recOR' shift, and enter state 63 - 'refl' shift, and enter state 64 - 'refl_{' shift, and enter state 65 - 'second' shift, and enter state 66 - 'unit' shift, and enter state 67 - '{' shift, and enter state 68 - 'Σ' shift, and enter state 69 - 'π₁' shift, and enter state 70 - 'π₂' shift, and enter state 71 - '∑' shift, and enter state 72 - '⊤' shift, and enter state 73 - '⊥' shift, and enter state 74 - L_VarIdentTokenshift, and enter state 75 - L_HoleIdentTokenshift, and enter state 76 + Restriction -> Term '↦' Term . (rule 78) - VarIdentToken goto state 28 - HoleIdentToken goto state 29 - HoleIdent goto state 30 - VarIdent goto state 31 - ParamDecl goto state 32 - Term7 goto state 33 - Term5 goto state 34 - Term4 goto state 35 - Term3 goto state 36 - Term2 goto state 37 - Term1 goto state 38 - Term6 goto state 39 - Term goto state 271 + ')' reduce using rule 78 + ',' reduce using rule 78 + ']' reduce using rule 78 + %eof reduce using rule 78 -State 221 - Term7 -> 'refl_{' Term '}' . (rule 97) +State 238 - '(' reduce using rule 97 - ')' reduce using rule 97 - '*' reduce using rule 97 - '*_1' reduce using rule 97 - '*₁' reduce using rule 97 - ',' reduce using rule 97 - '->' reduce using rule 97 - '/\\' reduce using rule 97 - '0_2' reduce using rule 97 - '0₂' reduce using rule 97 - '1' reduce using rule 97 - '1_2' reduce using rule 97 - '1₂' reduce using rule 97 - '2' reduce using rule 97 - ':' reduce using rule 97 - ':=' reduce using rule 97 - ';' reduce using rule 97 - '<' reduce using rule 97 - '<=' reduce using rule 97 - '=' reduce using rule 97 - '===' reduce using rule 97 - '=_{' reduce using rule 97 - '>' reduce using rule 97 - 'BOT' reduce using rule 97 - 'CUBE' reduce using rule 97 - 'TOP' reduce using rule 97 - 'TOPE' reduce using rule 97 - 'U' reduce using rule 97 - 'Unit' reduce using rule 97 - '[' reduce using rule 97 - '\\/' reduce using rule 97 - ']' reduce using rule 97 - 'as' reduce using rule 97 - 'idJ' reduce using rule 97 - 'recBOT' reduce using rule 97 - 'recOR' reduce using rule 97 - 'refl' reduce using rule 97 - 'refl_{' reduce using rule 97 - 'unit' reduce using rule 97 - '|' reduce using rule 97 - '|->' reduce using rule 97 - '}' reduce using rule 97 - '×' reduce using rule 97 - '→' reduce using rule 97 - '↦' reduce using rule 97 - '∧' reduce using rule 97 - '∨' reduce using rule 97 - '≡' reduce using rule 97 - '≤' reduce using rule 97 - '⊤' reduce using rule 97 - '⊥' reduce using rule 97 - L_VarIdentTokenreduce using rule 97 - L_HoleIdentTokenreduce using rule 97 - %eof reduce using rule 97 + Restriction -> Term '|->' Term . (rule 79) + ')' reduce using rule 79 + ',' reduce using rule 79 + ']' reduce using rule 79 + %eof reduce using rule 79 -State 222 - Pattern -> '(' Pattern . ',' Pattern ')' (rule 60) - ParamDecl -> '{' '(' Pattern . ':' Term ')' '|' Term '}' (rule 73) +State 239 - ',' shift, and enter state 235 - ':' shift, and enter state 270 + Term6 -> Term6 '[' ListRestriction . ']' (rule 136) + ']' shift, and enter state 277 -State 223 - ParamDecl -> '{' Pattern ':' . Term '}' (rule 72) - ParamDecl -> '{' Pattern ':' . Term '|' Term '}' (rule 74) +State 240 + + Param -> '(' ListPattern ':' . Term ')' (rule 67) + Param -> '(' ListPattern ':' . Term '|' Term ')' (rule 68) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6703,217 +7031,146 @@ State 223 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 269 - -State 224 - - Term1 -> 'Σ' '(' Pattern . ':' Term ')' ',' Term1 (rule 124) - - ':' shift, and enter state 268 - + Term goto state 276 -State 225 - - Term1 -> '∑' '(' Pattern . ':' Term ')' ',' Term1 (rule 132) - - ':' shift, and enter state 267 - - -State 226 - - Term1 -> Term2 '=_{' Term . '}' Term2 (rule 125) - - '}' shift, and enter state 266 - - -State 227 +State 241 - Term1 -> Term2 '=' Term2 . (rule 126) + Pattern -> '(' Pattern ',' . Pattern ')' (rule 63) - ')' reduce using rule 126 - ',' reduce using rule 126 - ':' reduce using rule 126 - ':=' reduce using rule 126 - ';' reduce using rule 126 - '>' reduce using rule 126 - ']' reduce using rule 126 - '|' reduce using rule 126 - '|->' reduce using rule 126 - '}' reduce using rule 126 - '↦' reduce using rule 126 - %eof reduce using rule 126 + '(' shift, and enter state 104 + 'unit' shift, and enter state 99 + L_VarIdentTokenshift, and enter state 75 + VarIdentToken goto state 28 + VarIdent goto state 94 + Pattern goto state 275 -State 228 +State 242 - Term5 -> Term5 '×' Term6 . (rule 109) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + Param -> '{' Pattern ':' . Term '|' Term '}' (rule 69) - '(' shift, and enter state 79 - ')' reduce using rule 109 - '*' reduce using rule 109 + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 - ',' reduce using rule 109 - '/\\' reduce using rule 109 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 - ':' reduce using rule 109 - ':=' reduce using rule 109 - ';' reduce using rule 109 '<' shift, and enter state 51 - '<=' reduce using rule 109 - '=' reduce using rule 109 - '===' reduce using rule 109 - '=_{' reduce using rule 109 - '>' reduce using rule 109 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 - '\\/' reduce using rule 109 - ']' reduce using rule 109 - 'as' reduce using rule 109 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '|' reduce using rule 109 - '|->' reduce using rule 109 - '}' reduce using rule 109 - '×' reduce using rule 109 - '↦' reduce using rule 109 - '∧' reduce using rule 109 - '∨' reduce using rule 109 - '≡' reduce using rule 109 - '≤' reduce using rule 109 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 109 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 274 -State 229 +State 243 - Term5 -> Term5 '*' Term6 . (rule 111) - Term6 -> Term6 . '[' ListRestriction ']' (rule 133) - Term6 -> Term6 . Term7 (rule 134) + DeclUsedVars -> 'uses' '(' ListVarIdent . ')' (rule 57) - '(' shift, and enter state 79 - ')' reduce using rule 111 - '*' reduce using rule 111 + ')' shift, and enter state 273 + + +State 244 + + ListCommand -> Command ';' ListCommand . (rule 56) + + '#end' reduce using rule 56 + %eof reduce using rule 56 + + +State 245 + + Command -> '#assume' ListVarIdent ':' . Term (rule 47) + + '(' shift, and enter state 42 '*_1' shift, and enter state 43 '*₁' shift, and enter state 44 - ',' reduce using rule 111 - '/\\' reduce using rule 111 '0_2' shift, and enter state 45 '0₂' shift, and enter state 46 '1' shift, and enter state 47 '1_2' shift, and enter state 48 '1₂' shift, and enter state 49 '2' shift, and enter state 50 - ':' reduce using rule 111 - ':=' reduce using rule 111 - ';' reduce using rule 111 '<' shift, and enter state 51 - '<=' reduce using rule 111 - '=' reduce using rule 111 - '===' reduce using rule 111 - '=_{' reduce using rule 111 - '>' reduce using rule 111 'BOT' shift, and enter state 52 'CUBE' shift, and enter state 53 + 'Sigma' shift, and enter state 54 'TOP' shift, and enter state 55 'TOPE' shift, and enter state 56 'U' shift, and enter state 57 'Unit' shift, and enter state 58 - '[' shift, and enter state 161 - '\\/' reduce using rule 111 - ']' reduce using rule 111 - 'as' reduce using rule 111 + '\\' shift, and enter state 59 + 'first' shift, and enter state 60 'idJ' shift, and enter state 61 'recBOT' shift, and enter state 62 'recOR' shift, and enter state 63 'refl' shift, and enter state 64 'refl_{' shift, and enter state 65 + 'second' shift, and enter state 66 'unit' shift, and enter state 67 - '|' reduce using rule 111 - '|->' reduce using rule 111 - '}' reduce using rule 111 - '×' reduce using rule 111 - '↦' reduce using rule 111 - '∧' reduce using rule 111 - '∨' reduce using rule 111 - '≡' reduce using rule 111 - '≤' reduce using rule 111 + '{' shift, and enter state 68 + 'Σ' shift, and enter state 69 + 'π₁' shift, and enter state 70 + 'π₂' shift, and enter state 71 + '∑' shift, and enter state 72 '⊤' shift, and enter state 73 '⊥' shift, and enter state 74 L_VarIdentTokenshift, and enter state 75 L_HoleIdentTokenshift, and enter state 76 - %eof reduce using rule 111 VarIdentToken goto state 28 HoleIdentToken goto state 29 HoleIdent goto state 30 VarIdent goto state 31 - Term7 goto state 160 - -State 230 - - ListRestriction -> Restriction ',' ListRestriction . (rule 78) - - ')' reduce using rule 78 - ']' reduce using rule 78 - %eof reduce using rule 78 - - -State 231 - - Restriction -> Term '↦' Term . (rule 75) - - ')' reduce using rule 75 - ',' reduce using rule 75 - ']' reduce using rule 75 - %eof reduce using rule 75 - - -State 232 - - Restriction -> Term '|->' Term . (rule 76) - - ')' reduce using rule 76 - ',' reduce using rule 76 - ']' reduce using rule 76 - %eof reduce using rule 76 - - -State 233 - - Term6 -> Term6 '[' ListRestriction . ']' (rule 133) - - ']' shift, and enter state 265 - + ParamDecl goto state 32 + Term7 goto state 33 + Term5 goto state 34 + Term4 goto state 35 + Term3 goto state 36 + Term2 goto state 37 + Term1 goto state 38 + Term6 goto state 39 + Term goto state 272 -State 234 +State 246 - Param -> '(' ListPattern ':' . Term ')' (rule 64) - Param -> '(' ListPattern ':' . Term '|' Term ')' (rule 65) + Command -> '#check' Term ':' . Term (rule 38) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -6963,23 +7220,45 @@ State 234 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 264 + Term goto state 271 -State 235 +State 247 - Pattern -> '(' Pattern ',' . Pattern ')' (rule 60) + Command -> '#def' VarIdent DeclUsedVars . ListParam ':' Term ':=' Term (rule 53) + Command -> '#def' VarIdent DeclUsedVars . ':' Term ':=' Term (rule 54) - '(' shift, and enter state 104 + '(' shift, and enter state 98 + ':' shift, and enter state 270 'unit' shift, and enter state 99 + '{' shift, and enter state 100 L_VarIdentTokenshift, and enter state 75 VarIdentToken goto state 28 VarIdent goto state 94 - Pattern goto state 263 + Pattern goto state 95 + Param goto state 96 + ListParam goto state 269 -State 236 +State 248 + + Command -> '#define' VarIdent DeclUsedVars . ListParam ':' Term ':=' Term (rule 51) + Command -> '#define' VarIdent DeclUsedVars . ':' Term ':=' Term (rule 52) + + '(' shift, and enter state 98 + ':' shift, and enter state 268 + 'unit' shift, and enter state 99 + '{' shift, and enter state 100 + L_VarIdentTokenshift, and enter state 75 + + VarIdentToken goto state 28 + VarIdent goto state 94 + Pattern goto state 95 + Param goto state 96 + ListParam goto state 267 + +State 249 - Param -> '{' Pattern ':' . Term '|' Term '}' (rule 66) + Command -> '#define-assumption' ListVarIdent ':' . Term (rule 44) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7029,26 +7308,11 @@ State 236 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 262 - -State 237 - - DeclUsedVars -> 'uses' '(' ListVarIdent . ')' (rule 54) - - ')' shift, and enter state 261 - + Term goto state 266 -State 238 - - ListCommand -> Command ';' ListCommand . (rule 53) - - '#end' reduce using rule 53 - %eof reduce using rule 53 - - -State 239 +State 250 - Command -> '#assume' ListVarIdent ':' . Term (rule 44) + Command -> '#define-variable' VarIdent ':' . Term (rule 45) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7098,11 +7362,11 @@ State 239 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 260 + Term goto state 265 -State 240 +State 251 - Command -> '#check' Term ':' . Term (rule 38) + Command -> '#define-variables' ListVarIdent ':' . Term (rule 46) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7152,49 +7416,15 @@ State 240 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 259 - -State 241 - - Command -> '#def' VarIdent DeclUsedVars . ListParam ':' Term ':=' Term (rule 50) - Command -> '#def' VarIdent DeclUsedVars . ':' Term ':=' Term (rule 51) - - '(' shift, and enter state 98 - ':' shift, and enter state 258 - 'unit' shift, and enter state 99 - '{' shift, and enter state 100 - L_VarIdentTokenshift, and enter state 75 - - VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 95 - Param goto state 96 - ListParam goto state 257 - -State 242 - - Command -> '#define' VarIdent DeclUsedVars . ListParam ':' Term ':=' Term (rule 48) - Command -> '#define' VarIdent DeclUsedVars . ':' Term ':=' Term (rule 49) - - '(' shift, and enter state 98 - ':' shift, and enter state 256 - 'unit' shift, and enter state 99 - '{' shift, and enter state 100 - L_VarIdentTokenshift, and enter state 75 - - VarIdentToken goto state 28 - VarIdent goto state 94 - Pattern goto state 95 - Param goto state 96 - ListParam goto state 255 + Term goto state 264 -State 243 +State 252 Command -> '#postulate' VarIdent DeclUsedVars . ListParam ':' Term (rule 42) Command -> '#postulate' VarIdent DeclUsedVars . ':' Term (rule 43) '(' shift, and enter state 98 - ':' shift, and enter state 254 + ':' shift, and enter state 263 'unit' shift, and enter state 99 '{' shift, and enter state 100 L_VarIdentTokenshift, and enter state 75 @@ -7203,11 +7433,11 @@ State 243 VarIdent goto state 94 Pattern goto state 95 Param goto state 96 - ListParam goto state 253 + ListParam goto state 262 -State 244 +State 253 - Command -> '#section' SectionName ';' . ListCommand '#end' SectionName (rule 47) + Command -> '#section' SectionName ';' . ListCommand '#end' SectionName (rule 50) '#assume' shift, and enter state 112 '#check' shift, and enter state 113 @@ -7216,28 +7446,31 @@ State 244 '#compute-whnf'shift, and enter state 116 '#def' shift, and enter state 117 '#define' shift, and enter state 118 - '#end' reduce using rule 52 - '#postulate' shift, and enter state 119 - '#section' shift, and enter state 120 - '#set-option' shift, and enter state 121 - '#unset-option'shift, and enter state 122 - '#variable' shift, and enter state 123 - '#variables' shift, and enter state 124 + '#define-assumption'shift, and enter state 119 + '#define-variable'shift, and enter state 120 + '#define-variables'shift, and enter state 121 + '#end' reduce using rule 55 + '#postulate' shift, and enter state 122 + '#section' shift, and enter state 123 + '#set-option' shift, and enter state 124 + '#unset-option'shift, and enter state 125 + '#variable' shift, and enter state 126 + '#variables' shift, and enter state 127 Command goto state 110 - ListCommand goto state 252 + ListCommand goto state 261 -State 245 +State 254 Command -> '#set-option' String '=' . String (rule 36) L_quoted shift, and enter state 27 - String goto state 251 + String goto state 260 -State 246 +State 255 - Command -> '#variable' VarIdent ':' . Term (rule 45) + Command -> '#variable' VarIdent ':' . Term (rule 48) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7287,11 +7520,11 @@ State 246 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 250 + Term goto state 259 -State 247 +State 256 - Command -> '#variables' ListVarIdent ':' . Term (rule 46) + Command -> '#variables' ListVarIdent ':' . Term (rule 49) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7341,9 +7574,9 @@ State 247 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 249 + Term goto state 258 -State 248 +State 257 LanguageDecl -> '#lang' Language ';' . (rule 34) @@ -7354,6 +7587,9 @@ State 248 '#compute-whnf'reduce using rule 34 '#def' reduce using rule 34 '#define' reduce using rule 34 + '#define-assumption'reduce using rule 34 + '#define-variable'reduce using rule 34 + '#define-variables'reduce using rule 34 '#postulate' reduce using rule 34 '#section' reduce using rule 34 '#set-option' reduce using rule 34 @@ -7363,23 +7599,23 @@ State 248 %eof reduce using rule 34 -State 249 +State 258 - Command -> '#variables' ListVarIdent ':' Term . (rule 46) + Command -> '#variables' ListVarIdent ':' Term . (rule 49) - ';' reduce using rule 46 - %eof reduce using rule 46 + ';' reduce using rule 49 + %eof reduce using rule 49 -State 250 +State 259 - Command -> '#variable' VarIdent ':' Term . (rule 45) + Command -> '#variable' VarIdent ':' Term . (rule 48) - ';' reduce using rule 45 - %eof reduce using rule 45 + ';' reduce using rule 48 + %eof reduce using rule 48 -State 251 +State 260 Command -> '#set-option' String '=' String . (rule 36) @@ -7387,21 +7623,21 @@ State 251 %eof reduce using rule 36 -State 252 +State 261 - Command -> '#section' SectionName ';' ListCommand . '#end' SectionName (rule 47) + Command -> '#section' SectionName ';' ListCommand . '#end' SectionName (rule 50) - '#end' shift, and enter state 307 + '#end' shift, and enter state 319 -State 253 +State 262 Command -> '#postulate' VarIdent DeclUsedVars ListParam . ':' Term (rule 42) - ':' shift, and enter state 306 + ':' shift, and enter state 318 -State 254 +State 263 Command -> '#postulate' VarIdent DeclUsedVars ':' . Term (rule 43) @@ -7453,18 +7689,42 @@ State 254 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 305 + Term goto state 317 -State 255 +State 264 + + Command -> '#define-variables' ListVarIdent ':' Term . (rule 46) - Command -> '#define' VarIdent DeclUsedVars ListParam . ':' Term ':=' Term (rule 48) + ';' reduce using rule 46 + %eof reduce using rule 46 - ':' shift, and enter state 304 +State 265 -State 256 + Command -> '#define-variable' VarIdent ':' Term . (rule 45) - Command -> '#define' VarIdent DeclUsedVars ':' . Term ':=' Term (rule 49) + ';' reduce using rule 45 + %eof reduce using rule 45 + + +State 266 + + Command -> '#define-assumption' ListVarIdent ':' Term . (rule 44) + + ';' reduce using rule 44 + %eof reduce using rule 44 + + +State 267 + + Command -> '#define' VarIdent DeclUsedVars ListParam . ':' Term ':=' Term (rule 51) + + ':' shift, and enter state 316 + + +State 268 + + Command -> '#define' VarIdent DeclUsedVars ':' . Term ':=' Term (rule 52) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7514,18 +7774,18 @@ State 256 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 303 + Term goto state 315 -State 257 +State 269 - Command -> '#def' VarIdent DeclUsedVars ListParam . ':' Term ':=' Term (rule 50) + Command -> '#def' VarIdent DeclUsedVars ListParam . ':' Term ':=' Term (rule 53) - ':' shift, and enter state 302 + ':' shift, and enter state 314 -State 258 +State 270 - Command -> '#def' VarIdent DeclUsedVars ':' . Term ':=' Term (rule 51) + Command -> '#def' VarIdent DeclUsedVars ':' . Term ':=' Term (rule 54) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7575,9 +7835,9 @@ State 258 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 301 + Term goto state 313 -State 259 +State 271 Command -> '#check' Term ':' Term . (rule 38) @@ -7585,112 +7845,112 @@ State 259 %eof reduce using rule 38 -State 260 +State 272 - Command -> '#assume' ListVarIdent ':' Term . (rule 44) + Command -> '#assume' ListVarIdent ':' Term . (rule 47) - ';' reduce using rule 44 - %eof reduce using rule 44 + ';' reduce using rule 47 + %eof reduce using rule 47 -State 261 +State 273 - DeclUsedVars -> 'uses' '(' ListVarIdent ')' . (rule 54) + DeclUsedVars -> 'uses' '(' ListVarIdent ')' . (rule 57) - '(' reduce using rule 54 - ':' reduce using rule 54 - 'unit' reduce using rule 54 - '{' reduce using rule 54 - L_VarIdentTokenreduce using rule 54 - %eof reduce using rule 54 + '(' reduce using rule 57 + ':' reduce using rule 57 + 'unit' reduce using rule 57 + '{' reduce using rule 57 + L_VarIdentTokenreduce using rule 57 + %eof reduce using rule 57 -State 262 +State 274 - Param -> '{' Pattern ':' Term . '|' Term '}' (rule 66) + Param -> '{' Pattern ':' Term . '|' Term '}' (rule 69) - '|' shift, and enter state 300 + '|' shift, and enter state 312 -State 263 +State 275 - Pattern -> '(' Pattern ',' Pattern . ')' (rule 60) + Pattern -> '(' Pattern ',' Pattern . ')' (rule 63) - ')' shift, and enter state 299 + ')' shift, and enter state 311 -State 264 +State 276 - Param -> '(' ListPattern ':' Term . ')' (rule 64) - Param -> '(' ListPattern ':' Term . '|' Term ')' (rule 65) + Param -> '(' ListPattern ':' Term . ')' (rule 67) + Param -> '(' ListPattern ':' Term . '|' Term ')' (rule 68) - ')' shift, and enter state 297 - '|' shift, and enter state 298 + ')' shift, and enter state 309 + '|' shift, and enter state 310 -State 265 +State 277 - Term6 -> Term6 '[' ListRestriction ']' . (rule 133) + Term6 -> Term6 '[' ListRestriction ']' . (rule 136) - '(' reduce using rule 133 - ')' reduce using rule 133 - '*' reduce using rule 133 - '*_1' reduce using rule 133 - '*₁' reduce using rule 133 - ',' reduce using rule 133 - '->' reduce using rule 133 - '/\\' reduce using rule 133 - '0_2' reduce using rule 133 - '0₂' reduce using rule 133 - '1' reduce using rule 133 - '1_2' reduce using rule 133 - '1₂' reduce using rule 133 - '2' reduce using rule 133 - ':' reduce using rule 133 - ':=' reduce using rule 133 - ';' reduce using rule 133 - '<' reduce using rule 133 - '<=' reduce using rule 133 - '=' reduce using rule 133 - '===' reduce using rule 133 - '=_{' reduce using rule 133 - '>' reduce using rule 133 - 'BOT' reduce using rule 133 - 'CUBE' reduce using rule 133 - 'TOP' reduce using rule 133 - 'TOPE' reduce using rule 133 - 'U' reduce using rule 133 - 'Unit' reduce using rule 133 - '[' reduce using rule 133 - '\\/' reduce using rule 133 - ']' reduce using rule 133 - 'as' reduce using rule 133 - 'idJ' reduce using rule 133 - 'recBOT' reduce using rule 133 - 'recOR' reduce using rule 133 - 'refl' reduce using rule 133 - 'refl_{' reduce using rule 133 - 'unit' reduce using rule 133 - '|' reduce using rule 133 - '|->' reduce using rule 133 - '}' reduce using rule 133 - '×' reduce using rule 133 - '→' reduce using rule 133 - '↦' reduce using rule 133 - '∧' reduce using rule 133 - '∨' reduce using rule 133 - '≡' reduce using rule 133 - '≤' reduce using rule 133 - '⊤' reduce using rule 133 - '⊥' reduce using rule 133 - L_VarIdentTokenreduce using rule 133 - L_HoleIdentTokenreduce using rule 133 - %eof reduce using rule 133 + '(' reduce using rule 136 + ')' reduce using rule 136 + '*' reduce using rule 136 + '*_1' reduce using rule 136 + '*₁' reduce using rule 136 + ',' reduce using rule 136 + '->' reduce using rule 136 + '/\\' reduce using rule 136 + '0_2' reduce using rule 136 + '0₂' reduce using rule 136 + '1' reduce using rule 136 + '1_2' reduce using rule 136 + '1₂' reduce using rule 136 + '2' reduce using rule 136 + ':' reduce using rule 136 + ':=' reduce using rule 136 + ';' reduce using rule 136 + '<' reduce using rule 136 + '<=' reduce using rule 136 + '=' reduce using rule 136 + '===' reduce using rule 136 + '=_{' reduce using rule 136 + '>' reduce using rule 136 + 'BOT' reduce using rule 136 + 'CUBE' reduce using rule 136 + 'TOP' reduce using rule 136 + 'TOPE' reduce using rule 136 + 'U' reduce using rule 136 + 'Unit' reduce using rule 136 + '[' reduce using rule 136 + '\\/' reduce using rule 136 + ']' reduce using rule 136 + 'as' reduce using rule 136 + 'idJ' reduce using rule 136 + 'recBOT' reduce using rule 136 + 'recOR' reduce using rule 136 + 'refl' reduce using rule 136 + 'refl_{' reduce using rule 136 + 'unit' reduce using rule 136 + '|' reduce using rule 136 + '|->' reduce using rule 136 + '}' reduce using rule 136 + '×' reduce using rule 136 + '→' reduce using rule 136 + '↦' reduce using rule 136 + '∧' reduce using rule 136 + '∨' reduce using rule 136 + '≡' reduce using rule 136 + '≤' reduce using rule 136 + '⊤' reduce using rule 136 + '⊥' reduce using rule 136 + L_VarIdentTokenreduce using rule 136 + L_HoleIdentTokenreduce using rule 136 + %eof reduce using rule 136 -State 266 +State 278 - Term1 -> Term2 '=_{' Term '}' . Term2 (rule 125) + Term1 -> Term2 '=_{' Term '}' . Term2 (rule 128) '(' shift, and enter state 79 '*_1' shift, and enter state 43 @@ -7731,12 +7991,12 @@ State 266 Term5 goto state 34 Term4 goto state 35 Term3 goto state 36 - Term2 goto state 296 + Term2 goto state 308 Term6 goto state 83 -State 267 +State 279 - Term1 -> '∑' '(' Pattern ':' . Term ')' ',' Term1 (rule 132) + Term1 -> '∑' '(' Pattern ':' . Term ')' ',' Term1 (rule 135) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7786,11 +8046,11 @@ State 267 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 295 + Term goto state 307 -State 268 +State 280 - Term1 -> 'Σ' '(' Pattern ':' . Term ')' ',' Term1 (rule 124) + Term1 -> 'Σ' '(' Pattern ':' . Term ')' ',' Term1 (rule 127) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7840,20 +8100,20 @@ State 268 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 294 + Term goto state 306 -State 269 +State 281 - ParamDecl -> '{' Pattern ':' Term . '}' (rule 72) - ParamDecl -> '{' Pattern ':' Term . '|' Term '}' (rule 74) + ParamDecl -> '{' Pattern ':' Term . '}' (rule 75) + ParamDecl -> '{' Pattern ':' Term . '|' Term '}' (rule 77) - '|' shift, and enter state 292 - '}' shift, and enter state 293 + '|' shift, and enter state 304 + '}' shift, and enter state 305 -State 270 +State 282 - ParamDecl -> '{' '(' Pattern ':' . Term ')' '|' Term '}' (rule 73) + ParamDecl -> '{' '(' Pattern ':' . Term ')' '|' Term '}' (rule 76) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7903,18 +8163,18 @@ State 270 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 291 + Term goto state 303 -State 271 +State 283 - Term7 -> 'refl_{' Term ':' Term . '}' (rule 98) + Term7 -> 'refl_{' Term ':' Term . '}' (rule 101) - '}' shift, and enter state 290 + '}' shift, and enter state 302 -State 272 +State 284 - Term7 -> 'recOR' '(' Term ',' . Term ',' Term ',' Term ')' (rule 91) + Term7 -> 'recOR' '(' Term ',' . Term ',' Term ',' Term ')' (rule 94) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -7964,71 +8224,71 @@ State 272 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 289 + Term goto state 301 -State 273 +State 285 - Term7 -> 'recOR' '(' ListRestriction ')' . (rule 90) + Term7 -> 'recOR' '(' ListRestriction ')' . (rule 93) - '(' reduce using rule 90 - ')' reduce using rule 90 - '*' reduce using rule 90 - '*_1' reduce using rule 90 - '*₁' reduce using rule 90 - ',' reduce using rule 90 - '->' reduce using rule 90 - '/\\' reduce using rule 90 - '0_2' reduce using rule 90 - '0₂' reduce using rule 90 - '1' reduce using rule 90 - '1_2' reduce using rule 90 - '1₂' reduce using rule 90 - '2' reduce using rule 90 - ':' reduce using rule 90 - ':=' reduce using rule 90 - ';' reduce using rule 90 - '<' reduce using rule 90 - '<=' reduce using rule 90 - '=' reduce using rule 90 - '===' reduce using rule 90 - '=_{' reduce using rule 90 - '>' reduce using rule 90 - 'BOT' reduce using rule 90 - 'CUBE' reduce using rule 90 - 'TOP' reduce using rule 90 - 'TOPE' reduce using rule 90 - 'U' reduce using rule 90 - 'Unit' reduce using rule 90 - '[' reduce using rule 90 - '\\/' reduce using rule 90 - ']' reduce using rule 90 - 'as' reduce using rule 90 - 'idJ' reduce using rule 90 - 'recBOT' reduce using rule 90 - 'recOR' reduce using rule 90 - 'refl' reduce using rule 90 - 'refl_{' reduce using rule 90 - 'unit' reduce using rule 90 - '|' reduce using rule 90 - '|->' reduce using rule 90 - '}' reduce using rule 90 - '×' reduce using rule 90 - '→' reduce using rule 90 - '↦' reduce using rule 90 - '∧' reduce using rule 90 - '∨' reduce using rule 90 - '≡' reduce using rule 90 - '≤' reduce using rule 90 - '⊤' reduce using rule 90 - '⊥' reduce using rule 90 - L_VarIdentTokenreduce using rule 90 - L_HoleIdentTokenreduce using rule 90 - %eof reduce using rule 90 + '(' reduce using rule 93 + ')' reduce using rule 93 + '*' reduce using rule 93 + '*_1' reduce using rule 93 + '*₁' reduce using rule 93 + ',' reduce using rule 93 + '->' reduce using rule 93 + '/\\' reduce using rule 93 + '0_2' reduce using rule 93 + '0₂' reduce using rule 93 + '1' reduce using rule 93 + '1_2' reduce using rule 93 + '1₂' reduce using rule 93 + '2' reduce using rule 93 + ':' reduce using rule 93 + ':=' reduce using rule 93 + ';' reduce using rule 93 + '<' reduce using rule 93 + '<=' reduce using rule 93 + '=' reduce using rule 93 + '===' reduce using rule 93 + '=_{' reduce using rule 93 + '>' reduce using rule 93 + 'BOT' reduce using rule 93 + 'CUBE' reduce using rule 93 + 'TOP' reduce using rule 93 + 'TOPE' reduce using rule 93 + 'U' reduce using rule 93 + 'Unit' reduce using rule 93 + '[' reduce using rule 93 + '\\/' reduce using rule 93 + ']' reduce using rule 93 + 'as' reduce using rule 93 + 'idJ' reduce using rule 93 + 'recBOT' reduce using rule 93 + 'recOR' reduce using rule 93 + 'refl' reduce using rule 93 + 'refl_{' reduce using rule 93 + 'unit' reduce using rule 93 + '|' reduce using rule 93 + '|->' reduce using rule 93 + '}' reduce using rule 93 + '×' reduce using rule 93 + '→' reduce using rule 93 + '↦' reduce using rule 93 + '∧' reduce using rule 93 + '∨' reduce using rule 93 + '≡' reduce using rule 93 + '≤' reduce using rule 93 + '⊤' reduce using rule 93 + '⊥' reduce using rule 93 + L_VarIdentTokenreduce using rule 93 + L_HoleIdentTokenreduce using rule 93 + %eof reduce using rule 93 -State 274 +State 286 - Term7 -> 'idJ' '(' Term ',' . Term ',' Term ',' Term ',' Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' . Term ',' Term ',' Term ',' Term ',' Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8078,47 +8338,47 @@ State 274 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 288 + Term goto state 300 -State 275 +State 287 - Term1 -> '\\' ListParam '→' Term1 . (rule 127) + Term1 -> '\\' ListParam '→' Term1 . (rule 130) - ')' reduce using rule 127 - ',' reduce using rule 127 - ':' reduce using rule 127 - ':=' reduce using rule 127 - ';' reduce using rule 127 - '>' reduce using rule 127 - ']' reduce using rule 127 - '|' reduce using rule 127 - '|->' reduce using rule 127 - '}' reduce using rule 127 - '↦' reduce using rule 127 - %eof reduce using rule 127 + ')' reduce using rule 130 + ',' reduce using rule 130 + ':' reduce using rule 130 + ':=' reduce using rule 130 + ';' reduce using rule 130 + '>' reduce using rule 130 + ']' reduce using rule 130 + '|' reduce using rule 130 + '|->' reduce using rule 130 + '}' reduce using rule 130 + '↦' reduce using rule 130 + %eof reduce using rule 130 -State 276 +State 288 - Term1 -> '\\' ListParam '->' Term1 . (rule 131) + Term1 -> '\\' ListParam '->' Term1 . (rule 134) - ')' reduce using rule 131 - ',' reduce using rule 131 - ':' reduce using rule 131 - ':=' reduce using rule 131 - ';' reduce using rule 131 - '>' reduce using rule 131 - ']' reduce using rule 131 - '|' reduce using rule 131 - '|->' reduce using rule 131 - '}' reduce using rule 131 - '↦' reduce using rule 131 - %eof reduce using rule 131 + ')' reduce using rule 134 + ',' reduce using rule 134 + ':' reduce using rule 134 + ':=' reduce using rule 134 + ';' reduce using rule 134 + '>' reduce using rule 134 + ']' reduce using rule 134 + '|' reduce using rule 134 + '|->' reduce using rule 134 + '}' reduce using rule 134 + '↦' reduce using rule 134 + %eof reduce using rule 134 -State 277 +State 289 - Term1 -> 'Sigma' '(' Pattern ':' . Term ')' ',' Term1 (rule 130) + Term1 -> 'Sigma' '(' Pattern ':' . Term ')' ',' Term1 (rule 133) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8168,110 +8428,110 @@ State 277 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 287 + Term goto state 299 -State 278 +State 290 - Term7 -> '<' ParamDecl '→' Term . '>' (rule 93) + Term7 -> '<' ParamDecl '→' Term . '>' (rule 96) - '>' shift, and enter state 286 + '>' shift, and enter state 298 -State 279 +State 291 - Term7 -> '<' ParamDecl '->' Term . '>' (rule 108) + Term7 -> '<' ParamDecl '->' Term . '>' (rule 111) - '>' shift, and enter state 285 + '>' shift, and enter state 297 -State 280 +State 292 - ParamDecl -> '(' Term ':' Term . ')' (rule 70) - ParamDecl -> '(' Term ':' Term . '|' Term ')' (rule 71) + ParamDecl -> '(' Term ':' Term . ')' (rule 73) + ParamDecl -> '(' Term ':' Term . '|' Term ')' (rule 74) - ')' shift, and enter state 283 - '|' shift, and enter state 284 + ')' shift, and enter state 295 + '|' shift, and enter state 296 -State 281 +State 293 - Term7 -> '(' Term ',' Term . ')' (rule 94) + Term7 -> '(' Term ',' Term . ')' (rule 97) - ')' shift, and enter state 282 + ')' shift, and enter state 294 -State 282 +State 294 - Term7 -> '(' Term ',' Term ')' . (rule 94) + Term7 -> '(' Term ',' Term ')' . (rule 97) - '(' reduce using rule 94 - ')' reduce using rule 94 - '*' reduce using rule 94 - '*_1' reduce using rule 94 - '*₁' reduce using rule 94 - ',' reduce using rule 94 - '->' reduce using rule 94 - '/\\' reduce using rule 94 - '0_2' reduce using rule 94 - '0₂' reduce using rule 94 - '1' reduce using rule 94 - '1_2' reduce using rule 94 - '1₂' reduce using rule 94 - '2' reduce using rule 94 - ':' reduce using rule 94 - ':=' reduce using rule 94 - ';' reduce using rule 94 - '<' reduce using rule 94 - '<=' reduce using rule 94 - '=' reduce using rule 94 - '===' reduce using rule 94 - '=_{' reduce using rule 94 - '>' reduce using rule 94 - 'BOT' reduce using rule 94 - 'CUBE' reduce using rule 94 - 'TOP' reduce using rule 94 - 'TOPE' reduce using rule 94 - 'U' reduce using rule 94 - 'Unit' reduce using rule 94 - '[' reduce using rule 94 - '\\/' reduce using rule 94 - ']' reduce using rule 94 - 'as' reduce using rule 94 - 'idJ' reduce using rule 94 - 'recBOT' reduce using rule 94 - 'recOR' reduce using rule 94 - 'refl' reduce using rule 94 - 'refl_{' reduce using rule 94 - 'unit' reduce using rule 94 - '|' reduce using rule 94 - '|->' reduce using rule 94 - '}' reduce using rule 94 - '×' reduce using rule 94 - '→' reduce using rule 94 - '↦' reduce using rule 94 - '∧' reduce using rule 94 - '∨' reduce using rule 94 - '≡' reduce using rule 94 - '≤' reduce using rule 94 - '⊤' reduce using rule 94 - '⊥' reduce using rule 94 - L_VarIdentTokenreduce using rule 94 - L_HoleIdentTokenreduce using rule 94 - %eof reduce using rule 94 + '(' reduce using rule 97 + ')' reduce using rule 97 + '*' reduce using rule 97 + '*_1' reduce using rule 97 + '*₁' reduce using rule 97 + ',' reduce using rule 97 + '->' reduce using rule 97 + '/\\' reduce using rule 97 + '0_2' reduce using rule 97 + '0₂' reduce using rule 97 + '1' reduce using rule 97 + '1_2' reduce using rule 97 + '1₂' reduce using rule 97 + '2' reduce using rule 97 + ':' reduce using rule 97 + ':=' reduce using rule 97 + ';' reduce using rule 97 + '<' reduce using rule 97 + '<=' reduce using rule 97 + '=' reduce using rule 97 + '===' reduce using rule 97 + '=_{' reduce using rule 97 + '>' reduce using rule 97 + 'BOT' reduce using rule 97 + 'CUBE' reduce using rule 97 + 'TOP' reduce using rule 97 + 'TOPE' reduce using rule 97 + 'U' reduce using rule 97 + 'Unit' reduce using rule 97 + '[' reduce using rule 97 + '\\/' reduce using rule 97 + ']' reduce using rule 97 + 'as' reduce using rule 97 + 'idJ' reduce using rule 97 + 'recBOT' reduce using rule 97 + 'recOR' reduce using rule 97 + 'refl' reduce using rule 97 + 'refl_{' reduce using rule 97 + 'unit' reduce using rule 97 + '|' reduce using rule 97 + '|->' reduce using rule 97 + '}' reduce using rule 97 + '×' reduce using rule 97 + '→' reduce using rule 97 + '↦' reduce using rule 97 + '∧' reduce using rule 97 + '∨' reduce using rule 97 + '≡' reduce using rule 97 + '≤' reduce using rule 97 + '⊤' reduce using rule 97 + '⊥' reduce using rule 97 + L_VarIdentTokenreduce using rule 97 + L_HoleIdentTokenreduce using rule 97 + %eof reduce using rule 97 -State 283 +State 295 - ParamDecl -> '(' Term ':' Term ')' . (rule 70) + ParamDecl -> '(' Term ':' Term ')' . (rule 73) - '->' reduce using rule 70 - '→' reduce using rule 70 - %eof reduce using rule 70 + '->' reduce using rule 73 + '→' reduce using rule 73 + %eof reduce using rule 73 -State 284 +State 296 - ParamDecl -> '(' Term ':' Term '|' . Term ')' (rule 71) + ParamDecl -> '(' Term ':' Term '|' . Term ')' (rule 74) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8321,219 +8581,219 @@ State 284 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 323 - -State 285 - - Term7 -> '<' ParamDecl '->' Term '>' . (rule 108) - - '(' reduce using rule 108 - ')' reduce using rule 108 - '*' reduce using rule 108 - '*_1' reduce using rule 108 - '*₁' reduce using rule 108 - ',' reduce using rule 108 - '->' reduce using rule 108 - '/\\' reduce using rule 108 - '0_2' reduce using rule 108 - '0₂' reduce using rule 108 - '1' reduce using rule 108 - '1_2' reduce using rule 108 - '1₂' reduce using rule 108 - '2' reduce using rule 108 - ':' reduce using rule 108 - ':=' reduce using rule 108 - ';' reduce using rule 108 - '<' reduce using rule 108 - '<=' reduce using rule 108 - '=' reduce using rule 108 - '===' reduce using rule 108 - '=_{' reduce using rule 108 - '>' reduce using rule 108 - 'BOT' reduce using rule 108 - 'CUBE' reduce using rule 108 - 'TOP' reduce using rule 108 - 'TOPE' reduce using rule 108 - 'U' reduce using rule 108 - 'Unit' reduce using rule 108 - '[' reduce using rule 108 - '\\/' reduce using rule 108 - ']' reduce using rule 108 - 'as' reduce using rule 108 - 'idJ' reduce using rule 108 - 'recBOT' reduce using rule 108 - 'recOR' reduce using rule 108 - 'refl' reduce using rule 108 - 'refl_{' reduce using rule 108 - 'unit' reduce using rule 108 - '|' reduce using rule 108 - '|->' reduce using rule 108 - '}' reduce using rule 108 - '×' reduce using rule 108 - '→' reduce using rule 108 - '↦' reduce using rule 108 - '∧' reduce using rule 108 - '∨' reduce using rule 108 - '≡' reduce using rule 108 - '≤' reduce using rule 108 - '⊤' reduce using rule 108 - '⊥' reduce using rule 108 - L_VarIdentTokenreduce using rule 108 - L_HoleIdentTokenreduce using rule 108 - %eof reduce using rule 108 + Term goto state 335 +State 297 -State 286 + Term7 -> '<' ParamDecl '->' Term '>' . (rule 111) - Term7 -> '<' ParamDecl '→' Term '>' . (rule 93) + '(' reduce using rule 111 + ')' reduce using rule 111 + '*' reduce using rule 111 + '*_1' reduce using rule 111 + '*₁' reduce using rule 111 + ',' reduce using rule 111 + '->' reduce using rule 111 + '/\\' reduce using rule 111 + '0_2' reduce using rule 111 + '0₂' reduce using rule 111 + '1' reduce using rule 111 + '1_2' reduce using rule 111 + '1₂' reduce using rule 111 + '2' reduce using rule 111 + ':' reduce using rule 111 + ':=' reduce using rule 111 + ';' reduce using rule 111 + '<' reduce using rule 111 + '<=' reduce using rule 111 + '=' reduce using rule 111 + '===' reduce using rule 111 + '=_{' reduce using rule 111 + '>' reduce using rule 111 + 'BOT' reduce using rule 111 + 'CUBE' reduce using rule 111 + 'TOP' reduce using rule 111 + 'TOPE' reduce using rule 111 + 'U' reduce using rule 111 + 'Unit' reduce using rule 111 + '[' reduce using rule 111 + '\\/' reduce using rule 111 + ']' reduce using rule 111 + 'as' reduce using rule 111 + 'idJ' reduce using rule 111 + 'recBOT' reduce using rule 111 + 'recOR' reduce using rule 111 + 'refl' reduce using rule 111 + 'refl_{' reduce using rule 111 + 'unit' reduce using rule 111 + '|' reduce using rule 111 + '|->' reduce using rule 111 + '}' reduce using rule 111 + '×' reduce using rule 111 + '→' reduce using rule 111 + '↦' reduce using rule 111 + '∧' reduce using rule 111 + '∨' reduce using rule 111 + '≡' reduce using rule 111 + '≤' reduce using rule 111 + '⊤' reduce using rule 111 + '⊥' reduce using rule 111 + L_VarIdentTokenreduce using rule 111 + L_HoleIdentTokenreduce using rule 111 + %eof reduce using rule 111 - '(' reduce using rule 93 - ')' reduce using rule 93 - '*' reduce using rule 93 - '*_1' reduce using rule 93 - '*₁' reduce using rule 93 - ',' reduce using rule 93 - '->' reduce using rule 93 - '/\\' reduce using rule 93 - '0_2' reduce using rule 93 - '0₂' reduce using rule 93 - '1' reduce using rule 93 - '1_2' reduce using rule 93 - '1₂' reduce using rule 93 - '2' reduce using rule 93 - ':' reduce using rule 93 - ':=' reduce using rule 93 - ';' reduce using rule 93 - '<' reduce using rule 93 - '<=' reduce using rule 93 - '=' reduce using rule 93 - '===' reduce using rule 93 - '=_{' reduce using rule 93 - '>' reduce using rule 93 - 'BOT' reduce using rule 93 - 'CUBE' reduce using rule 93 - 'TOP' reduce using rule 93 - 'TOPE' reduce using rule 93 - 'U' reduce using rule 93 - 'Unit' reduce using rule 93 - '[' reduce using rule 93 - '\\/' reduce using rule 93 - ']' reduce using rule 93 - 'as' reduce using rule 93 - 'idJ' reduce using rule 93 - 'recBOT' reduce using rule 93 - 'recOR' reduce using rule 93 - 'refl' reduce using rule 93 - 'refl_{' reduce using rule 93 - 'unit' reduce using rule 93 - '|' reduce using rule 93 - '|->' reduce using rule 93 - '}' reduce using rule 93 - '×' reduce using rule 93 - '→' reduce using rule 93 - '↦' reduce using rule 93 - '∧' reduce using rule 93 - '∨' reduce using rule 93 - '≡' reduce using rule 93 - '≤' reduce using rule 93 - '⊤' reduce using rule 93 - '⊥' reduce using rule 93 - L_VarIdentTokenreduce using rule 93 - L_HoleIdentTokenreduce using rule 93 - %eof reduce using rule 93 +State 298 + + Term7 -> '<' ParamDecl '→' Term '>' . (rule 96) -State 287 + '(' reduce using rule 96 + ')' reduce using rule 96 + '*' reduce using rule 96 + '*_1' reduce using rule 96 + '*₁' reduce using rule 96 + ',' reduce using rule 96 + '->' reduce using rule 96 + '/\\' reduce using rule 96 + '0_2' reduce using rule 96 + '0₂' reduce using rule 96 + '1' reduce using rule 96 + '1_2' reduce using rule 96 + '1₂' reduce using rule 96 + '2' reduce using rule 96 + ':' reduce using rule 96 + ':=' reduce using rule 96 + ';' reduce using rule 96 + '<' reduce using rule 96 + '<=' reduce using rule 96 + '=' reduce using rule 96 + '===' reduce using rule 96 + '=_{' reduce using rule 96 + '>' reduce using rule 96 + 'BOT' reduce using rule 96 + 'CUBE' reduce using rule 96 + 'TOP' reduce using rule 96 + 'TOPE' reduce using rule 96 + 'U' reduce using rule 96 + 'Unit' reduce using rule 96 + '[' reduce using rule 96 + '\\/' reduce using rule 96 + ']' reduce using rule 96 + 'as' reduce using rule 96 + 'idJ' reduce using rule 96 + 'recBOT' reduce using rule 96 + 'recOR' reduce using rule 96 + 'refl' reduce using rule 96 + 'refl_{' reduce using rule 96 + 'unit' reduce using rule 96 + '|' reduce using rule 96 + '|->' reduce using rule 96 + '}' reduce using rule 96 + '×' reduce using rule 96 + '→' reduce using rule 96 + '↦' reduce using rule 96 + '∧' reduce using rule 96 + '∨' reduce using rule 96 + '≡' reduce using rule 96 + '≤' reduce using rule 96 + '⊤' reduce using rule 96 + '⊥' reduce using rule 96 + L_VarIdentTokenreduce using rule 96 + L_HoleIdentTokenreduce using rule 96 + %eof reduce using rule 96 - Term1 -> 'Sigma' '(' Pattern ':' Term . ')' ',' Term1 (rule 130) - ')' shift, and enter state 322 +State 299 + Term1 -> 'Sigma' '(' Pattern ':' Term . ')' ',' Term1 (rule 133) -State 288 + ')' shift, and enter state 334 - Term7 -> 'idJ' '(' Term ',' Term . ',' Term ',' Term ',' Term ',' Term ')' (rule 99) - ',' shift, and enter state 321 +State 300 + Term7 -> 'idJ' '(' Term ',' Term . ',' Term ',' Term ',' Term ',' Term ')' (rule 102) -State 289 + ',' shift, and enter state 333 - Term7 -> 'recOR' '(' Term ',' Term . ',' Term ',' Term ')' (rule 91) - ',' shift, and enter state 320 +State 301 + Term7 -> 'recOR' '(' Term ',' Term . ',' Term ',' Term ')' (rule 94) -State 290 + ',' shift, and enter state 332 - Term7 -> 'refl_{' Term ':' Term '}' . (rule 98) - '(' reduce using rule 98 - ')' reduce using rule 98 - '*' reduce using rule 98 - '*_1' reduce using rule 98 - '*₁' reduce using rule 98 - ',' reduce using rule 98 - '->' reduce using rule 98 - '/\\' reduce using rule 98 - '0_2' reduce using rule 98 - '0₂' reduce using rule 98 - '1' reduce using rule 98 - '1_2' reduce using rule 98 - '1₂' reduce using rule 98 - '2' reduce using rule 98 - ':' reduce using rule 98 - ':=' reduce using rule 98 - ';' reduce using rule 98 - '<' reduce using rule 98 - '<=' reduce using rule 98 - '=' reduce using rule 98 - '===' reduce using rule 98 - '=_{' reduce using rule 98 - '>' reduce using rule 98 - 'BOT' reduce using rule 98 - 'CUBE' reduce using rule 98 - 'TOP' reduce using rule 98 - 'TOPE' reduce using rule 98 - 'U' reduce using rule 98 - 'Unit' reduce using rule 98 - '[' reduce using rule 98 - '\\/' reduce using rule 98 - ']' reduce using rule 98 - 'as' reduce using rule 98 - 'idJ' reduce using rule 98 - 'recBOT' reduce using rule 98 - 'recOR' reduce using rule 98 - 'refl' reduce using rule 98 - 'refl_{' reduce using rule 98 - 'unit' reduce using rule 98 - '|' reduce using rule 98 - '|->' reduce using rule 98 - '}' reduce using rule 98 - '×' reduce using rule 98 - '→' reduce using rule 98 - '↦' reduce using rule 98 - '∧' reduce using rule 98 - '∨' reduce using rule 98 - '≡' reduce using rule 98 - '≤' reduce using rule 98 - '⊤' reduce using rule 98 - '⊥' reduce using rule 98 - L_VarIdentTokenreduce using rule 98 - L_HoleIdentTokenreduce using rule 98 - %eof reduce using rule 98 +State 302 + Term7 -> 'refl_{' Term ':' Term '}' . (rule 101) -State 291 + '(' reduce using rule 101 + ')' reduce using rule 101 + '*' reduce using rule 101 + '*_1' reduce using rule 101 + '*₁' reduce using rule 101 + ',' reduce using rule 101 + '->' reduce using rule 101 + '/\\' reduce using rule 101 + '0_2' reduce using rule 101 + '0₂' reduce using rule 101 + '1' reduce using rule 101 + '1_2' reduce using rule 101 + '1₂' reduce using rule 101 + '2' reduce using rule 101 + ':' reduce using rule 101 + ':=' reduce using rule 101 + ';' reduce using rule 101 + '<' reduce using rule 101 + '<=' reduce using rule 101 + '=' reduce using rule 101 + '===' reduce using rule 101 + '=_{' reduce using rule 101 + '>' reduce using rule 101 + 'BOT' reduce using rule 101 + 'CUBE' reduce using rule 101 + 'TOP' reduce using rule 101 + 'TOPE' reduce using rule 101 + 'U' reduce using rule 101 + 'Unit' reduce using rule 101 + '[' reduce using rule 101 + '\\/' reduce using rule 101 + ']' reduce using rule 101 + 'as' reduce using rule 101 + 'idJ' reduce using rule 101 + 'recBOT' reduce using rule 101 + 'recOR' reduce using rule 101 + 'refl' reduce using rule 101 + 'refl_{' reduce using rule 101 + 'unit' reduce using rule 101 + '|' reduce using rule 101 + '|->' reduce using rule 101 + '}' reduce using rule 101 + '×' reduce using rule 101 + '→' reduce using rule 101 + '↦' reduce using rule 101 + '∧' reduce using rule 101 + '∨' reduce using rule 101 + '≡' reduce using rule 101 + '≤' reduce using rule 101 + '⊤' reduce using rule 101 + '⊥' reduce using rule 101 + L_VarIdentTokenreduce using rule 101 + L_HoleIdentTokenreduce using rule 101 + %eof reduce using rule 101 + + +State 303 - ParamDecl -> '{' '(' Pattern ':' Term . ')' '|' Term '}' (rule 73) + ParamDecl -> '{' '(' Pattern ':' Term . ')' '|' Term '}' (rule 76) - ')' shift, and enter state 319 + ')' shift, and enter state 331 -State 292 +State 304 - ParamDecl -> '{' Pattern ':' Term '|' . Term '}' (rule 74) + ParamDecl -> '{' Pattern ':' Term '|' . Term '}' (rule 77) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8583,66 +8843,66 @@ State 292 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 318 + Term goto state 330 -State 293 +State 305 - ParamDecl -> '{' Pattern ':' Term '}' . (rule 72) + ParamDecl -> '{' Pattern ':' Term '}' . (rule 75) - '->' reduce using rule 72 - '→' reduce using rule 72 - %eof reduce using rule 72 + '->' reduce using rule 75 + '→' reduce using rule 75 + %eof reduce using rule 75 -State 294 +State 306 - Term1 -> 'Σ' '(' Pattern ':' Term . ')' ',' Term1 (rule 124) + Term1 -> 'Σ' '(' Pattern ':' Term . ')' ',' Term1 (rule 127) - ')' shift, and enter state 317 + ')' shift, and enter state 329 -State 295 +State 307 - Term1 -> '∑' '(' Pattern ':' Term . ')' ',' Term1 (rule 132) + Term1 -> '∑' '(' Pattern ':' Term . ')' ',' Term1 (rule 135) - ')' shift, and enter state 316 + ')' shift, and enter state 328 -State 296 +State 308 - Term1 -> Term2 '=_{' Term '}' Term2 . (rule 125) + Term1 -> Term2 '=_{' Term '}' Term2 . (rule 128) - ')' reduce using rule 125 - ',' reduce using rule 125 - ':' reduce using rule 125 - ':=' reduce using rule 125 - ';' reduce using rule 125 - '>' reduce using rule 125 - ']' reduce using rule 125 - '|' reduce using rule 125 - '|->' reduce using rule 125 - '}' reduce using rule 125 - '↦' reduce using rule 125 - %eof reduce using rule 125 + ')' reduce using rule 128 + ',' reduce using rule 128 + ':' reduce using rule 128 + ':=' reduce using rule 128 + ';' reduce using rule 128 + '>' reduce using rule 128 + ']' reduce using rule 128 + '|' reduce using rule 128 + '|->' reduce using rule 128 + '}' reduce using rule 128 + '↦' reduce using rule 128 + %eof reduce using rule 128 -State 297 +State 309 - Param -> '(' ListPattern ':' Term ')' . (rule 64) + Param -> '(' ListPattern ':' Term ')' . (rule 67) - '(' reduce using rule 64 - '->' reduce using rule 64 - ':' reduce using rule 64 - 'unit' reduce using rule 64 - '{' reduce using rule 64 - '→' reduce using rule 64 - L_VarIdentTokenreduce using rule 64 - %eof reduce using rule 64 + '(' reduce using rule 67 + '->' reduce using rule 67 + ':' reduce using rule 67 + 'unit' reduce using rule 67 + '{' reduce using rule 67 + '→' reduce using rule 67 + L_VarIdentTokenreduce using rule 67 + %eof reduce using rule 67 -State 298 +State 310 - Param -> '(' ListPattern ':' Term '|' . Term ')' (rule 65) + Param -> '(' ListPattern ':' Term '|' . Term ')' (rule 68) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8692,27 +8952,27 @@ State 298 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 315 + Term goto state 327 -State 299 +State 311 - Pattern -> '(' Pattern ',' Pattern ')' . (rule 60) - - '(' reduce using rule 60 - ')' reduce using rule 60 - ',' reduce using rule 60 - '->' reduce using rule 60 - ':' reduce using rule 60 - 'unit' reduce using rule 60 - '{' reduce using rule 60 - '→' reduce using rule 60 - L_VarIdentTokenreduce using rule 60 - %eof reduce using rule 60 + Pattern -> '(' Pattern ',' Pattern ')' . (rule 63) + + '(' reduce using rule 63 + ')' reduce using rule 63 + ',' reduce using rule 63 + '->' reduce using rule 63 + ':' reduce using rule 63 + 'unit' reduce using rule 63 + '{' reduce using rule 63 + '→' reduce using rule 63 + L_VarIdentTokenreduce using rule 63 + %eof reduce using rule 63 -State 300 +State 312 - Param -> '{' Pattern ':' Term '|' . Term '}' (rule 66) + Param -> '{' Pattern ':' Term '|' . Term '}' (rule 69) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8762,18 +9022,18 @@ State 300 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 314 + Term goto state 326 -State 301 +State 313 - Command -> '#def' VarIdent DeclUsedVars ':' Term . ':=' Term (rule 51) + Command -> '#def' VarIdent DeclUsedVars ':' Term . ':=' Term (rule 54) - ':=' shift, and enter state 313 + ':=' shift, and enter state 325 -State 302 +State 314 - Command -> '#def' VarIdent DeclUsedVars ListParam ':' . Term ':=' Term (rule 50) + Command -> '#def' VarIdent DeclUsedVars ListParam ':' . Term ':=' Term (rule 53) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8823,18 +9083,18 @@ State 302 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 312 + Term goto state 324 -State 303 +State 315 - Command -> '#define' VarIdent DeclUsedVars ':' Term . ':=' Term (rule 49) + Command -> '#define' VarIdent DeclUsedVars ':' Term . ':=' Term (rule 52) - ':=' shift, and enter state 311 + ':=' shift, and enter state 323 -State 304 +State 316 - Command -> '#define' VarIdent DeclUsedVars ListParam ':' . Term ':=' Term (rule 48) + Command -> '#define' VarIdent DeclUsedVars ListParam ':' . Term ':=' Term (rule 51) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -8884,9 +9144,9 @@ State 304 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 310 + Term goto state 322 -State 305 +State 317 Command -> '#postulate' VarIdent DeclUsedVars ':' Term . (rule 43) @@ -8894,7 +9154,7 @@ State 305 %eof reduce using rule 43 -State 306 +State 318 Command -> '#postulate' VarIdent DeclUsedVars ListParam ':' . Term (rule 42) @@ -8946,29 +9206,29 @@ State 306 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 309 + Term goto state 321 -State 307 +State 319 - Command -> '#section' SectionName ';' ListCommand '#end' . SectionName (rule 47) + Command -> '#section' SectionName ';' ListCommand '#end' . SectionName (rule 50) - ';' reduce using rule 56 + ';' reduce using rule 59 L_VarIdentTokenshift, and enter state 75 - %eof reduce using rule 56 + %eof reduce using rule 59 VarIdentToken goto state 28 VarIdent goto state 106 - SectionName goto state 308 + SectionName goto state 320 -State 308 +State 320 - Command -> '#section' SectionName ';' ListCommand '#end' SectionName . (rule 47) + Command -> '#section' SectionName ';' ListCommand '#end' SectionName . (rule 50) - ';' reduce using rule 47 - %eof reduce using rule 47 + ';' reduce using rule 50 + %eof reduce using rule 50 -State 309 +State 321 Command -> '#postulate' VarIdent DeclUsedVars ListParam ':' Term . (rule 42) @@ -8976,16 +9236,16 @@ State 309 %eof reduce using rule 42 -State 310 +State 322 - Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term . ':=' Term (rule 48) + Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term . ':=' Term (rule 51) - ':=' shift, and enter state 337 + ':=' shift, and enter state 349 -State 311 +State 323 - Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' . Term (rule 49) + Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' . Term (rule 52) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9035,18 +9295,18 @@ State 311 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 336 + Term goto state 348 -State 312 +State 324 - Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term . ':=' Term (rule 50) + Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term . ':=' Term (rule 53) - ':=' shift, and enter state 335 + ':=' shift, and enter state 347 -State 313 +State 325 - Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' . Term (rule 51) + Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' . Term (rule 54) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9096,53 +9356,53 @@ State 313 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 334 + Term goto state 346 -State 314 +State 326 - Param -> '{' Pattern ':' Term '|' Term . '}' (rule 66) + Param -> '{' Pattern ':' Term '|' Term . '}' (rule 69) - '}' shift, and enter state 333 + '}' shift, and enter state 345 -State 315 +State 327 - Param -> '(' ListPattern ':' Term '|' Term . ')' (rule 65) + Param -> '(' ListPattern ':' Term '|' Term . ')' (rule 68) - ')' shift, and enter state 332 + ')' shift, and enter state 344 -State 316 +State 328 - Term1 -> '∑' '(' Pattern ':' Term ')' . ',' Term1 (rule 132) + Term1 -> '∑' '(' Pattern ':' Term ')' . ',' Term1 (rule 135) - ',' shift, and enter state 331 + ',' shift, and enter state 343 -State 317 +State 329 - Term1 -> 'Σ' '(' Pattern ':' Term ')' . ',' Term1 (rule 124) + Term1 -> 'Σ' '(' Pattern ':' Term ')' . ',' Term1 (rule 127) - ',' shift, and enter state 330 + ',' shift, and enter state 342 -State 318 +State 330 - ParamDecl -> '{' Pattern ':' Term '|' Term . '}' (rule 74) + ParamDecl -> '{' Pattern ':' Term '|' Term . '}' (rule 77) - '}' shift, and enter state 329 + '}' shift, and enter state 341 -State 319 +State 331 - ParamDecl -> '{' '(' Pattern ':' Term ')' . '|' Term '}' (rule 73) + ParamDecl -> '{' '(' Pattern ':' Term ')' . '|' Term '}' (rule 76) - '|' shift, and enter state 328 + '|' shift, and enter state 340 -State 320 +State 332 - Term7 -> 'recOR' '(' Term ',' Term ',' . Term ',' Term ')' (rule 91) + Term7 -> 'recOR' '(' Term ',' Term ',' . Term ',' Term ')' (rule 94) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9192,11 +9452,11 @@ State 320 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 327 + Term goto state 339 -State 321 +State 333 - Term7 -> 'idJ' '(' Term ',' Term ',' . Term ',' Term ',' Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' . Term ',' Term ',' Term ',' Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9246,34 +9506,34 @@ State 321 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 326 + Term goto state 338 -State 322 +State 334 - Term1 -> 'Sigma' '(' Pattern ':' Term ')' . ',' Term1 (rule 130) + Term1 -> 'Sigma' '(' Pattern ':' Term ')' . ',' Term1 (rule 133) - ',' shift, and enter state 325 + ',' shift, and enter state 337 -State 323 +State 335 - ParamDecl -> '(' Term ':' Term '|' Term . ')' (rule 71) + ParamDecl -> '(' Term ':' Term '|' Term . ')' (rule 74) - ')' shift, and enter state 324 + ')' shift, and enter state 336 -State 324 +State 336 - ParamDecl -> '(' Term ':' Term '|' Term ')' . (rule 71) + ParamDecl -> '(' Term ':' Term '|' Term ')' . (rule 74) - '->' reduce using rule 71 - '→' reduce using rule 71 - %eof reduce using rule 71 + '->' reduce using rule 74 + '→' reduce using rule 74 + %eof reduce using rule 74 -State 325 +State 337 - Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' . Term1 (rule 130) + Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' . Term1 (rule 133) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9321,26 +9581,26 @@ State 325 Term4 goto state 35 Term3 goto state 36 Term2 goto state 80 - Term1 goto state 345 + Term1 goto state 357 Term6 goto state 39 -State 326 +State 338 - Term7 -> 'idJ' '(' Term ',' Term ',' Term . ',' Term ',' Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term . ',' Term ',' Term ',' Term ')' (rule 102) - ',' shift, and enter state 344 + ',' shift, and enter state 356 -State 327 +State 339 - Term7 -> 'recOR' '(' Term ',' Term ',' Term . ',' Term ')' (rule 91) + Term7 -> 'recOR' '(' Term ',' Term ',' Term . ',' Term ')' (rule 94) - ',' shift, and enter state 343 + ',' shift, and enter state 355 -State 328 +State 340 - ParamDecl -> '{' '(' Pattern ':' Term ')' '|' . Term '}' (rule 73) + ParamDecl -> '{' '(' Pattern ':' Term ')' '|' . Term '}' (rule 76) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9390,20 +9650,20 @@ State 328 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 342 + Term goto state 354 -State 329 +State 341 - ParamDecl -> '{' Pattern ':' Term '|' Term '}' . (rule 74) + ParamDecl -> '{' Pattern ':' Term '|' Term '}' . (rule 77) - '->' reduce using rule 74 - '→' reduce using rule 74 - %eof reduce using rule 74 + '->' reduce using rule 77 + '→' reduce using rule 77 + %eof reduce using rule 77 -State 330 +State 342 - Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' . Term1 (rule 124) + Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' . Term1 (rule 127) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9451,12 +9711,12 @@ State 330 Term4 goto state 35 Term3 goto state 36 Term2 goto state 80 - Term1 goto state 341 + Term1 goto state 353 Term6 goto state 39 -State 331 +State 343 - Term1 -> '∑' '(' Pattern ':' Term ')' ',' . Term1 (rule 132) + Term1 -> '∑' '(' Pattern ':' Term ')' ',' . Term1 (rule 135) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9504,48 +9764,48 @@ State 331 Term4 goto state 35 Term3 goto state 36 Term2 goto state 80 - Term1 goto state 340 + Term1 goto state 352 Term6 goto state 39 -State 332 +State 344 - Param -> '(' ListPattern ':' Term '|' Term ')' . (rule 65) + Param -> '(' ListPattern ':' Term '|' Term ')' . (rule 68) - '(' reduce using rule 65 - '->' reduce using rule 65 - ':' reduce using rule 65 - 'unit' reduce using rule 65 - '{' reduce using rule 65 - '→' reduce using rule 65 - L_VarIdentTokenreduce using rule 65 - %eof reduce using rule 65 + '(' reduce using rule 68 + '->' reduce using rule 68 + ':' reduce using rule 68 + 'unit' reduce using rule 68 + '{' reduce using rule 68 + '→' reduce using rule 68 + L_VarIdentTokenreduce using rule 68 + %eof reduce using rule 68 -State 333 +State 345 - Param -> '{' Pattern ':' Term '|' Term '}' . (rule 66) + Param -> '{' Pattern ':' Term '|' Term '}' . (rule 69) - '(' reduce using rule 66 - '->' reduce using rule 66 - ':' reduce using rule 66 - 'unit' reduce using rule 66 - '{' reduce using rule 66 - '→' reduce using rule 66 - L_VarIdentTokenreduce using rule 66 - %eof reduce using rule 66 + '(' reduce using rule 69 + '->' reduce using rule 69 + ':' reduce using rule 69 + 'unit' reduce using rule 69 + '{' reduce using rule 69 + '→' reduce using rule 69 + L_VarIdentTokenreduce using rule 69 + %eof reduce using rule 69 -State 334 +State 346 - Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' Term . (rule 51) + Command -> '#def' VarIdent DeclUsedVars ':' Term ':=' Term . (rule 54) - ';' reduce using rule 51 - %eof reduce using rule 51 + ';' reduce using rule 54 + %eof reduce using rule 54 -State 335 +State 347 - Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' . Term (rule 50) + Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' . Term (rule 53) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9595,19 +9855,19 @@ State 335 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 339 + Term goto state 351 -State 336 +State 348 - Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' Term . (rule 49) + Command -> '#define' VarIdent DeclUsedVars ':' Term ':=' Term . (rule 52) - ';' reduce using rule 49 - %eof reduce using rule 49 + ';' reduce using rule 52 + %eof reduce using rule 52 -State 337 +State 349 - Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' . Term (rule 48) + Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' . Term (rule 51) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9657,70 +9917,70 @@ State 337 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 338 + Term goto state 350 -State 338 +State 350 - Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' Term . (rule 48) + Command -> '#define' VarIdent DeclUsedVars ListParam ':' Term ':=' Term . (rule 51) - ';' reduce using rule 48 - %eof reduce using rule 48 + ';' reduce using rule 51 + %eof reduce using rule 51 -State 339 +State 351 - Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' Term . (rule 50) + Command -> '#def' VarIdent DeclUsedVars ListParam ':' Term ':=' Term . (rule 53) - ';' reduce using rule 50 - %eof reduce using rule 50 + ';' reduce using rule 53 + %eof reduce using rule 53 -State 340 +State 352 - Term1 -> '∑' '(' Pattern ':' Term ')' ',' Term1 . (rule 132) + Term1 -> '∑' '(' Pattern ':' Term ')' ',' Term1 . (rule 135) - ')' reduce using rule 132 - ',' reduce using rule 132 - ':' reduce using rule 132 - ':=' reduce using rule 132 - ';' reduce using rule 132 - '>' reduce using rule 132 - ']' reduce using rule 132 - '|' reduce using rule 132 - '|->' reduce using rule 132 - '}' reduce using rule 132 - '↦' reduce using rule 132 - %eof reduce using rule 132 + ')' reduce using rule 135 + ',' reduce using rule 135 + ':' reduce using rule 135 + ':=' reduce using rule 135 + ';' reduce using rule 135 + '>' reduce using rule 135 + ']' reduce using rule 135 + '|' reduce using rule 135 + '|->' reduce using rule 135 + '}' reduce using rule 135 + '↦' reduce using rule 135 + %eof reduce using rule 135 -State 341 +State 353 - Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' Term1 . (rule 124) + Term1 -> 'Σ' '(' Pattern ':' Term ')' ',' Term1 . (rule 127) - ')' reduce using rule 124 - ',' reduce using rule 124 - ':' reduce using rule 124 - ':=' reduce using rule 124 - ';' reduce using rule 124 - '>' reduce using rule 124 - ']' reduce using rule 124 - '|' reduce using rule 124 - '|->' reduce using rule 124 - '}' reduce using rule 124 - '↦' reduce using rule 124 - %eof reduce using rule 124 + ')' reduce using rule 127 + ',' reduce using rule 127 + ':' reduce using rule 127 + ':=' reduce using rule 127 + ';' reduce using rule 127 + '>' reduce using rule 127 + ']' reduce using rule 127 + '|' reduce using rule 127 + '|->' reduce using rule 127 + '}' reduce using rule 127 + '↦' reduce using rule 127 + %eof reduce using rule 127 -State 342 +State 354 - ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term . '}' (rule 73) + ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term . '}' (rule 76) - '}' shift, and enter state 348 + '}' shift, and enter state 360 -State 343 +State 355 - Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' . Term ')' (rule 91) + Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' . Term ')' (rule 94) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9770,11 +10030,11 @@ State 343 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 347 + Term goto state 359 -State 344 +State 356 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' . Term ',' Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' . Term ',' Term ',' Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9824,112 +10084,112 @@ State 344 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 346 + Term goto state 358 -State 345 +State 357 - Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' Term1 . (rule 130) + Term1 -> 'Sigma' '(' Pattern ':' Term ')' ',' Term1 . (rule 133) - ')' reduce using rule 130 - ',' reduce using rule 130 - ':' reduce using rule 130 - ':=' reduce using rule 130 - ';' reduce using rule 130 - '>' reduce using rule 130 - ']' reduce using rule 130 - '|' reduce using rule 130 - '|->' reduce using rule 130 - '}' reduce using rule 130 - '↦' reduce using rule 130 - %eof reduce using rule 130 + ')' reduce using rule 133 + ',' reduce using rule 133 + ':' reduce using rule 133 + ':=' reduce using rule 133 + ';' reduce using rule 133 + '>' reduce using rule 133 + ']' reduce using rule 133 + '|' reduce using rule 133 + '|->' reduce using rule 133 + '}' reduce using rule 133 + '↦' reduce using rule 133 + %eof reduce using rule 133 -State 346 +State 358 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term . ',' Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term . ',' Term ',' Term ')' (rule 102) - ',' shift, and enter state 350 + ',' shift, and enter state 362 -State 347 +State 359 - Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term . ')' (rule 91) + Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term . ')' (rule 94) - ')' shift, and enter state 349 + ')' shift, and enter state 361 -State 348 +State 360 - ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term '}' . (rule 73) + ParamDecl -> '{' '(' Pattern ':' Term ')' '|' Term '}' . (rule 76) - '->' reduce using rule 73 - '→' reduce using rule 73 - %eof reduce using rule 73 + '->' reduce using rule 76 + '→' reduce using rule 76 + %eof reduce using rule 76 -State 349 +State 361 - Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term ')' . (rule 91) + Term7 -> 'recOR' '(' Term ',' Term ',' Term ',' Term ')' . (rule 94) - '(' reduce using rule 91 - ')' reduce using rule 91 - '*' reduce using rule 91 - '*_1' reduce using rule 91 - '*₁' reduce using rule 91 - ',' reduce using rule 91 - '->' reduce using rule 91 - '/\\' reduce using rule 91 - '0_2' reduce using rule 91 - '0₂' reduce using rule 91 - '1' reduce using rule 91 - '1_2' reduce using rule 91 - '1₂' reduce using rule 91 - '2' reduce using rule 91 - ':' reduce using rule 91 - ':=' reduce using rule 91 - ';' reduce using rule 91 - '<' reduce using rule 91 - '<=' reduce using rule 91 - '=' reduce using rule 91 - '===' reduce using rule 91 - '=_{' reduce using rule 91 - '>' reduce using rule 91 - 'BOT' reduce using rule 91 - 'CUBE' reduce using rule 91 - 'TOP' reduce using rule 91 - 'TOPE' reduce using rule 91 - 'U' reduce using rule 91 - 'Unit' reduce using rule 91 - '[' reduce using rule 91 - '\\/' reduce using rule 91 - ']' reduce using rule 91 - 'as' reduce using rule 91 - 'idJ' reduce using rule 91 - 'recBOT' reduce using rule 91 - 'recOR' reduce using rule 91 - 'refl' reduce using rule 91 - 'refl_{' reduce using rule 91 - 'unit' reduce using rule 91 - '|' reduce using rule 91 - '|->' reduce using rule 91 - '}' reduce using rule 91 - '×' reduce using rule 91 - '→' reduce using rule 91 - '↦' reduce using rule 91 - '∧' reduce using rule 91 - '∨' reduce using rule 91 - '≡' reduce using rule 91 - '≤' reduce using rule 91 - '⊤' reduce using rule 91 - '⊥' reduce using rule 91 - L_VarIdentTokenreduce using rule 91 - L_HoleIdentTokenreduce using rule 91 - %eof reduce using rule 91 + '(' reduce using rule 94 + ')' reduce using rule 94 + '*' reduce using rule 94 + '*_1' reduce using rule 94 + '*₁' reduce using rule 94 + ',' reduce using rule 94 + '->' reduce using rule 94 + '/\\' reduce using rule 94 + '0_2' reduce using rule 94 + '0₂' reduce using rule 94 + '1' reduce using rule 94 + '1_2' reduce using rule 94 + '1₂' reduce using rule 94 + '2' reduce using rule 94 + ':' reduce using rule 94 + ':=' reduce using rule 94 + ';' reduce using rule 94 + '<' reduce using rule 94 + '<=' reduce using rule 94 + '=' reduce using rule 94 + '===' reduce using rule 94 + '=_{' reduce using rule 94 + '>' reduce using rule 94 + 'BOT' reduce using rule 94 + 'CUBE' reduce using rule 94 + 'TOP' reduce using rule 94 + 'TOPE' reduce using rule 94 + 'U' reduce using rule 94 + 'Unit' reduce using rule 94 + '[' reduce using rule 94 + '\\/' reduce using rule 94 + ']' reduce using rule 94 + 'as' reduce using rule 94 + 'idJ' reduce using rule 94 + 'recBOT' reduce using rule 94 + 'recOR' reduce using rule 94 + 'refl' reduce using rule 94 + 'refl_{' reduce using rule 94 + 'unit' reduce using rule 94 + '|' reduce using rule 94 + '|->' reduce using rule 94 + '}' reduce using rule 94 + '×' reduce using rule 94 + '→' reduce using rule 94 + '↦' reduce using rule 94 + '∧' reduce using rule 94 + '∨' reduce using rule 94 + '≡' reduce using rule 94 + '≤' reduce using rule 94 + '⊤' reduce using rule 94 + '⊥' reduce using rule 94 + L_VarIdentTokenreduce using rule 94 + L_HoleIdentTokenreduce using rule 94 + %eof reduce using rule 94 -State 350 +State 362 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' . Term ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' . Term ',' Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -9979,18 +10239,18 @@ State 350 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 351 + Term goto state 363 -State 351 +State 363 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term . ',' Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term . ',' Term ')' (rule 102) - ',' shift, and enter state 352 + ',' shift, and enter state 364 -State 352 +State 364 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' . Term ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' . Term ')' (rule 102) '(' shift, and enter state 42 '*_1' shift, and enter state 43 @@ -10040,79 +10300,79 @@ State 352 Term2 goto state 37 Term1 goto state 38 Term6 goto state 39 - Term goto state 353 + Term goto state 365 -State 353 +State 365 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term . ')' (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term . ')' (rule 102) - ')' shift, and enter state 354 + ')' shift, and enter state 366 -State 354 +State 366 - Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' . (rule 99) + Term7 -> 'idJ' '(' Term ',' Term ',' Term ',' Term ',' Term ',' Term ')' . (rule 102) - '(' reduce using rule 99 - ')' reduce using rule 99 - '*' reduce using rule 99 - '*_1' reduce using rule 99 - '*₁' reduce using rule 99 - ',' reduce using rule 99 - '->' reduce using rule 99 - '/\\' reduce using rule 99 - '0_2' reduce using rule 99 - '0₂' reduce using rule 99 - '1' reduce using rule 99 - '1_2' reduce using rule 99 - '1₂' reduce using rule 99 - '2' reduce using rule 99 - ':' reduce using rule 99 - ':=' reduce using rule 99 - ';' reduce using rule 99 - '<' reduce using rule 99 - '<=' reduce using rule 99 - '=' reduce using rule 99 - '===' reduce using rule 99 - '=_{' reduce using rule 99 - '>' reduce using rule 99 - 'BOT' reduce using rule 99 - 'CUBE' reduce using rule 99 - 'TOP' reduce using rule 99 - 'TOPE' reduce using rule 99 - 'U' reduce using rule 99 - 'Unit' reduce using rule 99 - '[' reduce using rule 99 - '\\/' reduce using rule 99 - ']' reduce using rule 99 - 'as' reduce using rule 99 - 'idJ' reduce using rule 99 - 'recBOT' reduce using rule 99 - 'recOR' reduce using rule 99 - 'refl' reduce using rule 99 - 'refl_{' reduce using rule 99 - 'unit' reduce using rule 99 - '|' reduce using rule 99 - '|->' reduce using rule 99 - '}' reduce using rule 99 - '×' reduce using rule 99 - '→' reduce using rule 99 - '↦' reduce using rule 99 - '∧' reduce using rule 99 - '∨' reduce using rule 99 - '≡' reduce using rule 99 - '≤' reduce using rule 99 - '⊤' reduce using rule 99 - '⊥' reduce using rule 99 - L_VarIdentTokenreduce using rule 99 - L_HoleIdentTokenreduce using rule 99 - %eof reduce using rule 99 + '(' reduce using rule 102 + ')' reduce using rule 102 + '*' reduce using rule 102 + '*_1' reduce using rule 102 + '*₁' reduce using rule 102 + ',' reduce using rule 102 + '->' reduce using rule 102 + '/\\' reduce using rule 102 + '0_2' reduce using rule 102 + '0₂' reduce using rule 102 + '1' reduce using rule 102 + '1_2' reduce using rule 102 + '1₂' reduce using rule 102 + '2' reduce using rule 102 + ':' reduce using rule 102 + ':=' reduce using rule 102 + ';' reduce using rule 102 + '<' reduce using rule 102 + '<=' reduce using rule 102 + '=' reduce using rule 102 + '===' reduce using rule 102 + '=_{' reduce using rule 102 + '>' reduce using rule 102 + 'BOT' reduce using rule 102 + 'CUBE' reduce using rule 102 + 'TOP' reduce using rule 102 + 'TOPE' reduce using rule 102 + 'U' reduce using rule 102 + 'Unit' reduce using rule 102 + '[' reduce using rule 102 + '\\/' reduce using rule 102 + ']' reduce using rule 102 + 'as' reduce using rule 102 + 'idJ' reduce using rule 102 + 'recBOT' reduce using rule 102 + 'recOR' reduce using rule 102 + 'refl' reduce using rule 102 + 'refl_{' reduce using rule 102 + 'unit' reduce using rule 102 + '|' reduce using rule 102 + '|->' reduce using rule 102 + '}' reduce using rule 102 + '×' reduce using rule 102 + '→' reduce using rule 102 + '↦' reduce using rule 102 + '∧' reduce using rule 102 + '∨' reduce using rule 102 + '≡' reduce using rule 102 + '≤' reduce using rule 102 + '⊤' reduce using rule 102 + '⊥' reduce using rule 102 + L_VarIdentTokenreduce using rule 102 + L_HoleIdentTokenreduce using rule 102 + %eof reduce using rule 102 ----------------------------------------------------------------------------- Grammar Totals ----------------------------------------------------------------------------- -Number of rules: 144 -Number of terminals: 80 +Number of rules: 147 +Number of terminals: 83 Number of non-terminals: 55 -Number of states: 355 +Number of states: 367 diff --git a/rzk/src/Language/Rzk/Syntax/Par.y b/rzk/src/Language/Rzk/Syntax/Par.y index 74943c4de..7ee8b4966 100644 --- a/rzk/src/Language/Rzk/Syntax/Par.y +++ b/rzk/src/Language/Rzk/Syntax/Par.y @@ -73,86 +73,89 @@ import Language.Rzk.Syntax.Lex %monad { Err } { (>>=) } { return } %tokentype {Token} %token - '#assume' { PT _ (TS _ 1) } - '#check' { PT _ (TS _ 2) } - '#compute' { PT _ (TS _ 3) } - '#compute-nf' { PT _ (TS _ 4) } - '#compute-whnf' { PT _ (TS _ 5) } - '#def' { PT _ (TS _ 6) } - '#define' { PT _ (TS _ 7) } - '#end' { PT _ (TS _ 8) } - '#lang' { PT _ (TS _ 9) } - '#postulate' { PT _ (TS _ 10) } - '#section' { PT _ (TS _ 11) } - '#set-option' { PT _ (TS _ 12) } - '#unset-option' { PT _ (TS _ 13) } - '#variable' { PT _ (TS _ 14) } - '#variables' { PT _ (TS _ 15) } - '(' { PT _ (TS _ 16) } - ')' { PT _ (TS _ 17) } - '*' { PT _ (TS _ 18) } - '*_1' { PT _ (TS _ 19) } - '*₁' { PT _ (TS _ 20) } - ',' { PT _ (TS _ 21) } - '->' { PT _ (TS _ 22) } - '/\\' { PT _ (TS _ 23) } - '0_2' { PT _ (TS _ 24) } - '0₂' { PT _ (TS _ 25) } - '1' { PT _ (TS _ 26) } - '1_2' { PT _ (TS _ 27) } - '1₂' { PT _ (TS _ 28) } - '2' { PT _ (TS _ 29) } - ':' { PT _ (TS _ 30) } - ':=' { PT _ (TS _ 31) } - ';' { PT _ (TS _ 32) } - '<' { PT _ (TS _ 33) } - '<=' { PT _ (TS _ 34) } - '=' { PT _ (TS _ 35) } - '===' { PT _ (TS _ 36) } - '=_{' { PT _ (TS _ 37) } - '>' { PT _ (TS _ 38) } - 'BOT' { PT _ (TS _ 39) } - 'CUBE' { PT _ (TS _ 40) } - 'Sigma' { PT _ (TS _ 41) } - 'TOP' { PT _ (TS _ 42) } - 'TOPE' { PT _ (TS _ 43) } - 'U' { PT _ (TS _ 44) } - 'Unit' { PT _ (TS _ 45) } - '[' { PT _ (TS _ 46) } - '\\' { PT _ (TS _ 47) } - '\\/' { PT _ (TS _ 48) } - ']' { PT _ (TS _ 49) } - 'as' { PT _ (TS _ 50) } - 'first' { PT _ (TS _ 51) } - 'idJ' { PT _ (TS _ 52) } - 'recBOT' { PT _ (TS _ 53) } - 'recOR' { PT _ (TS _ 54) } - 'refl' { PT _ (TS _ 55) } - 'refl_{' { PT _ (TS _ 56) } - 'rzk-1' { PT _ (TS _ 57) } - 'second' { PT _ (TS _ 58) } - 'unit' { PT _ (TS _ 59) } - 'uses' { PT _ (TS _ 60) } - '{' { PT _ (TS _ 61) } - '|' { PT _ (TS _ 62) } - '|->' { PT _ (TS _ 63) } - '}' { PT _ (TS _ 64) } - '×' { PT _ (TS _ 65) } - 'Σ' { PT _ (TS _ 66) } - 'π₁' { PT _ (TS _ 67) } - 'π₂' { PT _ (TS _ 68) } - '→' { PT _ (TS _ 69) } - '↦' { PT _ (TS _ 70) } - '∑' { PT _ (TS _ 71) } - '∧' { PT _ (TS _ 72) } - '∨' { PT _ (TS _ 73) } - '≡' { PT _ (TS _ 74) } - '≤' { PT _ (TS _ 75) } - '⊤' { PT _ (TS _ 76) } - '⊥' { PT _ (TS _ 77) } - L_quoted { PT _ (TL _) } - L_VarIdentToken { PT _ (T_VarIdentToken _) } - L_HoleIdentToken { PT _ (T_HoleIdentToken _) } + '#assume' { PT _ (TS _ 1) } + '#check' { PT _ (TS _ 2) } + '#compute' { PT _ (TS _ 3) } + '#compute-nf' { PT _ (TS _ 4) } + '#compute-whnf' { PT _ (TS _ 5) } + '#def' { PT _ (TS _ 6) } + '#define' { PT _ (TS _ 7) } + '#define-assumption' { PT _ (TS _ 8) } + '#define-variable' { PT _ (TS _ 9) } + '#define-variables' { PT _ (TS _ 10) } + '#end' { PT _ (TS _ 11) } + '#lang' { PT _ (TS _ 12) } + '#postulate' { PT _ (TS _ 13) } + '#section' { PT _ (TS _ 14) } + '#set-option' { PT _ (TS _ 15) } + '#unset-option' { PT _ (TS _ 16) } + '#variable' { PT _ (TS _ 17) } + '#variables' { PT _ (TS _ 18) } + '(' { PT _ (TS _ 19) } + ')' { PT _ (TS _ 20) } + '*' { PT _ (TS _ 21) } + '*_1' { PT _ (TS _ 22) } + '*₁' { PT _ (TS _ 23) } + ',' { PT _ (TS _ 24) } + '->' { PT _ (TS _ 25) } + '/\\' { PT _ (TS _ 26) } + '0_2' { PT _ (TS _ 27) } + '0₂' { PT _ (TS _ 28) } + '1' { PT _ (TS _ 29) } + '1_2' { PT _ (TS _ 30) } + '1₂' { PT _ (TS _ 31) } + '2' { PT _ (TS _ 32) } + ':' { PT _ (TS _ 33) } + ':=' { PT _ (TS _ 34) } + ';' { PT _ (TS _ 35) } + '<' { PT _ (TS _ 36) } + '<=' { PT _ (TS _ 37) } + '=' { PT _ (TS _ 38) } + '===' { PT _ (TS _ 39) } + '=_{' { PT _ (TS _ 40) } + '>' { PT _ (TS _ 41) } + 'BOT' { PT _ (TS _ 42) } + 'CUBE' { PT _ (TS _ 43) } + 'Sigma' { PT _ (TS _ 44) } + 'TOP' { PT _ (TS _ 45) } + 'TOPE' { PT _ (TS _ 46) } + 'U' { PT _ (TS _ 47) } + 'Unit' { PT _ (TS _ 48) } + '[' { PT _ (TS _ 49) } + '\\' { PT _ (TS _ 50) } + '\\/' { PT _ (TS _ 51) } + ']' { PT _ (TS _ 52) } + 'as' { PT _ (TS _ 53) } + 'first' { PT _ (TS _ 54) } + 'idJ' { PT _ (TS _ 55) } + 'recBOT' { PT _ (TS _ 56) } + 'recOR' { PT _ (TS _ 57) } + 'refl' { PT _ (TS _ 58) } + 'refl_{' { PT _ (TS _ 59) } + 'rzk-1' { PT _ (TS _ 60) } + 'second' { PT _ (TS _ 61) } + 'unit' { PT _ (TS _ 62) } + 'uses' { PT _ (TS _ 63) } + '{' { PT _ (TS _ 64) } + '|' { PT _ (TS _ 65) } + '|->' { PT _ (TS _ 66) } + '}' { PT _ (TS _ 67) } + '×' { PT _ (TS _ 68) } + 'Σ' { PT _ (TS _ 69) } + 'π₁' { PT _ (TS _ 70) } + 'π₂' { PT _ (TS _ 71) } + '→' { PT _ (TS _ 72) } + '↦' { PT _ (TS _ 73) } + '∑' { PT _ (TS _ 74) } + '∧' { PT _ (TS _ 75) } + '∨' { PT _ (TS _ 76) } + '≡' { PT _ (TS _ 77) } + '≤' { PT _ (TS _ 78) } + '⊤' { PT _ (TS _ 79) } + '⊥' { PT _ (TS _ 80) } + L_quoted { PT _ (TL _) } + L_VarIdentToken { PT _ (T_VarIdentToken _) } + L_HoleIdentToken { PT _ (T_HoleIdentToken _) } %% @@ -200,6 +203,9 @@ Command | '#compute-nf' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.CommandComputeNF (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2)) } | '#postulate' VarIdent DeclUsedVars ListParam ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.CommandPostulate (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $3) (snd $4) (snd $6)) } | '#postulate' VarIdent DeclUsedVars ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.commandPostulateNoParams (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $3) (snd $5)) } + | '#define-assumption' ListVarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.CommandDefineAssume (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } + | '#define-variable' VarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.commandDefineVariable (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } + | '#define-variables' ListVarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.commandDefineVariables (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } | '#assume' ListVarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.CommandAssume (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } | '#variable' VarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.commandVariable (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } | '#variables' ListVarIdent ':' Term { (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1), Language.Rzk.Syntax.Abs.commandVariables (uncurry Language.Rzk.Syntax.Abs.BNFC'Position (tokenLineCol $1)) (snd $2) (snd $4)) } diff --git a/rzk/src/Language/Rzk/Syntax/Print.hs b/rzk/src/Language/Rzk/Syntax/Print.hs index aac398280..d4ea208c0 100644 --- a/rzk/src/Language/Rzk/Syntax/Print.hs +++ b/rzk/src/Language/Rzk/Syntax/Print.hs @@ -173,6 +173,7 @@ instance Print (Language.Rzk.Syntax.Abs.Command' a) where Language.Rzk.Syntax.Abs.CommandComputeWHNF _ term -> prPrec i 0 (concatD [doc (showString "#compute-whnf"), prt 0 term]) Language.Rzk.Syntax.Abs.CommandComputeNF _ term -> prPrec i 0 (concatD [doc (showString "#compute-nf"), prt 0 term]) Language.Rzk.Syntax.Abs.CommandPostulate _ varident declusedvars params term -> prPrec i 0 (concatD [doc (showString "#postulate"), prt 0 varident, prt 0 declusedvars, prt 0 params, doc (showString ":"), prt 0 term]) + Language.Rzk.Syntax.Abs.CommandDefineAssume _ varidents term -> prPrec i 0 (concatD [doc (showString "#define-assumption"), prt 0 varidents, doc (showString ":"), prt 0 term]) Language.Rzk.Syntax.Abs.CommandAssume _ varidents term -> prPrec i 0 (concatD [doc (showString "#assume"), prt 0 varidents, doc (showString ":"), prt 0 term]) Language.Rzk.Syntax.Abs.CommandSection _ sectionname1 commands sectionname2 -> prPrec i 0 (concatD [doc (showString "#section"), prt 0 sectionname1, doc (showString ";"), prt 0 commands, doc (showString "#end"), prt 0 sectionname2]) Language.Rzk.Syntax.Abs.CommandDefine _ varident declusedvars params term1 term2 -> prPrec i 0 (concatD [doc (showString "#define"), prt 0 varident, prt 0 declusedvars, prt 0 params, doc (showString ":"), prt 0 term1, doc (showString ":="), prt 0 term2]) diff --git a/rzk/src/Language/Rzk/Syntax/Skel.hs b/rzk/src/Language/Rzk/Syntax/Skel.hs index 0be482984..e1cd19a98 100644 --- a/rzk/src/Language/Rzk/Syntax/Skel.hs +++ b/rzk/src/Language/Rzk/Syntax/Skel.hs @@ -52,6 +52,7 @@ transCommand x = case x of Language.Rzk.Syntax.Abs.CommandComputeWHNF _ term -> failure x Language.Rzk.Syntax.Abs.CommandComputeNF _ term -> failure x Language.Rzk.Syntax.Abs.CommandPostulate _ varident declusedvars params term -> failure x + Language.Rzk.Syntax.Abs.CommandDefineAssume _ varidents term -> failure x Language.Rzk.Syntax.Abs.CommandAssume _ varidents term -> failure x Language.Rzk.Syntax.Abs.CommandSection _ sectionname1 commands sectionname2 -> failure x Language.Rzk.Syntax.Abs.CommandDefine _ varident declusedvars params term1 term2 -> failure x diff --git a/rzk/src/Language/Rzk/VSCode/Tokenize.hs b/rzk/src/Language/Rzk/VSCode/Tokenize.hs index 6266ecbc3..19ae3955f 100644 --- a/rzk/src/Language/Rzk/VSCode/Tokenize.hs +++ b/rzk/src/Language/Rzk/VSCode/Tokenize.hs @@ -36,6 +36,10 @@ tokenizeCommand command = case command of , foldMap tokenizeTerm [type_, term] ] + CommandDefineAssume _loc vars type_ -> concat + [ foldMap (\var -> mkToken var vs_parameter [vs_declaration]) vars + , tokenizeTerm type_ + ] CommandAssume _loc vars type_ -> concat [ foldMap (\var -> mkToken var vs_parameter [vs_declaration]) vars , tokenizeTerm type_ diff --git a/rzk/src/Rzk/TypeCheck.hs b/rzk/src/Rzk/TypeCheck.hs index 5cc7c0486..396d01a1a 100644 --- a/rzk/src/Rzk/TypeCheck.hs +++ b/rzk/src/Rzk/TypeCheck.hs @@ -28,13 +28,18 @@ defaultTypeCheck -> Either (TypeErrorInScopedContext VarIdent) a defaultTypeCheck tc = runExcept (runReaderT tc emptyContext) +data AssumptionType + = NotAssumption + | LocalAssumption + | GlobalAssumption + -- FIXME: merge with VarInfo data Decl var = Decl - { declName :: var - , declType :: TermT var - , declValue :: Maybe (TermT var) - , declIsAssumption :: Bool - , declUsedVars :: [var] + { declName :: var + , declType :: TermT var + , declValue :: Maybe (TermT var) + , declAssumptionType :: AssumptionType + , declUsedVars :: [var] } type Decl' = Decl VarIdent @@ -99,7 +104,7 @@ typecheckModule path (Rzk.Module _moduleLoc _lang commands) = paramDecls <- concat <$> mapM paramToParamDecl params ty' <- typecheck (toTerm' (addParamDecls paramDecls ty)) universeT >>= whnfT -- >>= pure . termIsWHNF term' <- typecheck (toTerm' (addParams params term)) ty' >>= whnfT >>= pure . termIsWHNF - let decl = Decl (varIdentAt path name) ty' (Just term') False (varIdentAt path <$> vars) + let decl = Decl (varIdentAt path name) ty' (Just term') NotAssumption (varIdentAt path <$> vars) fmap (decl :) $ localDeclPrepared decl $ do Context{..} <- ask @@ -118,7 +123,7 @@ typecheckModule path (Rzk.Module _moduleLoc _lang commands) = mapM_ checkDefinedVar (varIdentAt path <$> vars) paramDecls <- concat <$> mapM paramToParamDecl params ty' <- typecheck (toTerm' (addParamDecls paramDecls ty)) universeT >>= whnfT -- >>= pure . termIsWHNF - let decl = Decl (varIdentAt path name) ty' Nothing False (varIdentAt path <$> vars) + let decl = Decl (varIdentAt path name) ty' Nothing NotAssumption (varIdentAt path <$> vars) fmap (decl :) $ localDeclPrepared decl $ go (i + 1) moreCommands @@ -150,12 +155,22 @@ typecheckModule path (Rzk.Module _moduleLoc _lang commands) = traceTypeCheck Normal (" " <> show (untyped term')) $ do go (i + 1) moreCommands + go i (command@(Rzk.CommandDefineAssume _loc names ty) : moreCommands) = + traceTypeCheck Normal ("[ " <> show i <> " out of " <> show totalCommands <> " ]" + <> " Checking #define-assumption " <> intercalate " " [ Rzk.printTree name | name <- names ] ) $ do + withCommand command $ do + ty' <- typecheck (toTerm' ty) universeT + let decls = [ Decl (varIdentAt path name) ty' Nothing GlobalAssumption [] | name <- names ] + fmap (decls <>) $ + localDeclsPrepared decls $ + go (i + 1) moreCommands + go i (command@(Rzk.CommandAssume _loc names ty) : moreCommands) = traceTypeCheck Normal ("[ " <> show i <> " out of " <> show totalCommands <> " ]" <> " Checking #assume " <> intercalate " " [ Rzk.printTree name | name <- names ] ) $ do withCommand command $ do ty' <- typecheck (toTerm' ty) universeT - let decls = [ Decl (varIdentAt path name) ty' Nothing True [] | name <- names ] + let decls = [ Decl (varIdentAt path name) ty' Nothing LocalAssumption [] | name <- names ] fmap (decls <>) $ localDeclsPrepared decls $ go (i + 1) moreCommands @@ -562,7 +577,7 @@ data VarInfo var = VarInfo { varType :: TermT var , varValue :: Maybe (TermT var) , varOrig :: Maybe VarIdent - , varIsAssumption :: Bool -- FIXME: perhaps, introduce something like decl kind? + , varAssumptionType :: AssumptionType , varDeclaredAssumptions :: [var] } deriving (Functor, Foldable) @@ -661,15 +676,16 @@ insertExplicitAssumptionFor a (declName, VarInfo{..}) term = insertExplicitAssumptionFor' :: Eq var => var -> (var, VarInfo var) -> VarInfo var -> VarInfo var -insertExplicitAssumptionFor' a decl VarInfo{..} - | varIsAssumption = VarInfo{..} - | otherwise = VarInfo +insertExplicitAssumptionFor' a decl VarInfo{..} = + case varAssumptionType of + NotAssumption -> VarInfo { varType = insertExplicitAssumptionFor a decl varType , varValue = insertExplicitAssumptionFor a decl <$> varValue - , varIsAssumption = varIsAssumption + , varAssumptionType = varAssumptionType , varOrig = varOrig , varDeclaredAssumptions = varDeclaredAssumptions } + _ -> VarInfo{..} makeAssumptionExplicit :: Eq var @@ -704,28 +720,29 @@ makeAssumptionExplicit assumption@(a, aInfo) ((x, xInfo) : xs) = do xInfo' = VarInfo { varType = xType' , varValue = fmap (lambdaT xType' (varOrig aInfo) Nothing . abstract a) (varValue xInfo) - , varIsAssumption = varIsAssumption xInfo + , varAssumptionType = varAssumptionType xInfo , varOrig = varOrig xInfo , varDeclaredAssumptions = varDeclaredAssumptions xInfo \\ [a] } xs' = map (fmap (insertExplicitAssumptionFor' a (x, xInfo))) xs collectScopeDecls :: Eq var => [(var, VarInfo var)] -> [(var, VarInfo var)] -> TypeCheck var [Decl var] -collectScopeDecls recentVars (decl@(var, VarInfo{..}) : vars) - | varIsAssumption = do +collectScopeDecls recentVars (decl@(var, VarInfo{..}) : vars) = + case varAssumptionType of + NotAssumption -> do + collectScopeDecls (decl : recentVars) vars + _ -> do (used, recentVars') <- makeAssumptionExplicit decl recentVars when (not used) $ do issueTypeError $ TypeErrorUnusedVariable var varType collectScopeDecls recentVars' vars - | otherwise = do - collectScopeDecls (decl : recentVars) vars collectScopeDecls recentVars [] = return (toDecl <$> recentVars) where toDecl (var, VarInfo{..}) = Decl { declName = var , declType = varType , declValue = varValue - , declIsAssumption = varIsAssumption + , declAssumptionType = varAssumptionType , declUsedVars = varDeclaredAssumptions } @@ -734,7 +751,7 @@ abstractAssumption (var, VarInfo{..}) Decl{..} = Decl { declName = declName , declType = typeFunT varOrig varType Nothing (abstract var declType) , declValue = (\body -> lambdaT newDeclType varOrig Nothing (abstract var body)) <$> declValue - , declIsAssumption = declIsAssumption + , declAssumptionType = declAssumptionType , declUsedVars = declUsedVars } where @@ -772,6 +789,8 @@ ppContext' ctx@Context{..} = unlines " Error occurred when trying to set option\n #set-option " <> show optionName Just command@Rzk.CommandUnsetOption{} -> " Error occurred when trying to unset option\n " <> Rzk.printTree command + Just command@Rzk.CommandDefineAssume{} -> + " Error occurred when checking assumption\n " <> Rzk.printTree command Just command@Rzk.CommandAssume{} -> " Error occurred when checking assumption\n " <> Rzk.printTree command Just (Rzk.CommandSection _loc name _commands _endName) -> @@ -833,7 +852,7 @@ localDeclPrepared (Decl x ty term isAssumption vars) tc = do { varType = ty , varValue = term , varOrig = Just x - , varIsAssumption = isAssumption + , varAssumptionType = isAssumption , varDeclaredAssumptions = vars } @@ -1090,7 +1109,7 @@ enterScopeContext orig ty = { varType = S <$> ty , varValue = Nothing , varOrig = orig - , varIsAssumption = False + , varAssumptionType = NotAssumption , varDeclaredAssumptions = [] } . fmap S