(******************************************************************)
(* GENERATED FILE -- DO NOT EDIT -- GENERATED FILE -- DO NOT EDIT *)
(* GENERATED FILE -- DO NOT EDIT -- GENERATED FILE -- DO NOT EDIT *)
(* GENERATED FILE -- DO NOT EDIT -- GENERATED FILE -- DO NOT EDIT *)
(******************************************************************)
(*
This file is produced from the parser generated by ML-Yacc from the
source files tptp.lex and tptp.yacc.
*)
signature TPTP_TOKENS =
sig
type ('a,'b) token
type svalue
val LET_TT: 'a * 'a -> (svalue,'a) token
val LET_FT: 'a * 'a -> (svalue,'a) token
val LET_FF: 'a * 'a -> (svalue,'a) token
val LET_TF: 'a * 'a -> (svalue,'a) token
val ITE_T: 'a * 'a -> (svalue,'a) token
val ITE_F: 'a * 'a -> (svalue,'a) token
val CNF: 'a * 'a -> (svalue,'a) token
val FOF: 'a * 'a -> (svalue,'a) token
val TFF: 'a * 'a -> (svalue,'a) token
val THF: 'a * 'a -> (svalue,'a) token
val LET_TERM: 'a * 'a -> (svalue,'a) token
val SUBTYPE: 'a * 'a -> (svalue,'a) token
val DOLLAR_DOLLAR_WORD: (string) * 'a * 'a -> (svalue,'a) token
val DOLLAR_WORD: (string) * 'a * 'a -> (svalue,'a) token
val DEP_PROD: 'a * 'a -> (svalue,'a) token
val DEP_SUM: 'a * 'a -> (svalue,'a) token
val GENTZEN_ARROW: 'a * 'a -> (svalue,'a) token
val TIMES: 'a * 'a -> (svalue,'a) token
val PLUS: 'a * 'a -> (svalue,'a) token
val OPERATOR_EXISTS: 'a * 'a -> (svalue,'a) token
val OPERATOR_FORALL: 'a * 'a -> (svalue,'a) token
val DEFIN_CHOICE: 'a * 'a -> (svalue,'a) token
val INDEF_CHOICE: 'a * 'a -> (svalue,'a) token
val DUD: 'a * 'a -> (svalue,'a) token
val DISTINCT_OBJECT: (string) * 'a * 'a -> (svalue,'a) token
val COMMENT: (string) * 'a * 'a -> (svalue,'a) token
val LOWER_WORD: (string) * 'a * 'a -> (svalue,'a) token
val UPPER_WORD: (string) * 'a * 'a -> (svalue,'a) token
val SINGLE_QUOTED: (string) * 'a * 'a -> (svalue,'a) token
val DOT_DECIMAL: (string) * 'a * 'a -> (svalue,'a) token
val UNSIGNED_INTEGER: (string) * 'a * 'a -> (svalue,'a) token
val SIGNED_INTEGER: (string) * 'a * 'a -> (svalue,'a) token
val RATIONAL: (string) * 'a * 'a -> (svalue,'a) token
val REAL: (string) * 'a * 'a -> (svalue,'a) token
val DTFF: 'a * 'a -> (svalue,'a) token
val DFOT: 'a * 'a -> (svalue,'a) token
val DCNF: 'a * 'a -> (svalue,'a) token
val DFOF: 'a * 'a -> (svalue,'a) token
val DTHF: 'a * 'a -> (svalue,'a) token
val EOF: 'a * 'a -> (svalue,'a) token
val VLINE: 'a * 'a -> (svalue,'a) token
val TOK_TYPE: 'a * 'a -> (svalue,'a) token
val TOK_TRUE: 'a * 'a -> (svalue,'a) token
val TOK_RAT: 'a * 'a -> (svalue,'a) token
val TOK_REAL: 'a * 'a -> (svalue,'a) token
val TOK_INT: 'a * 'a -> (svalue,'a) token
val TOK_O: 'a * 'a -> (svalue,'a) token
val TOK_I: 'a * 'a -> (svalue,'a) token
val TOK_FALSE: 'a * 'a -> (svalue,'a) token
val TILDE: 'a * 'a -> (svalue,'a) token
val RPAREN: 'a * 'a -> (svalue,'a) token
val RBRKT: 'a * 'a -> (svalue,'a) token
val QUESTION: 'a * 'a -> (svalue,'a) token
val PPLUS: 'a * 'a -> (svalue,'a) token
val PERIOD: 'a * 'a -> (svalue,'a) token
val NOR: 'a * 'a -> (svalue,'a) token
val XOR: 'a * 'a -> (svalue,'a) token
val NEQUALS: 'a * 'a -> (svalue,'a) token
val NAND: 'a * 'a -> (svalue,'a) token
val MMINUS: 'a * 'a -> (svalue,'a) token
val MAP_TO: 'a * 'a -> (svalue,'a) token
val LPAREN: 'a * 'a -> (svalue,'a) token
val LBRKT: 'a * 'a -> (svalue,'a) token
val LAMBDA: 'a * 'a -> (svalue,'a) token
val INCLUDE: 'a * 'a -> (svalue,'a) token
val IMPLIES: 'a * 'a -> (svalue,'a) token
val IFF: 'a * 'a -> (svalue,'a) token
val FI: 'a * 'a -> (svalue,'a) token
val ARROW: 'a * 'a -> (svalue,'a) token
val LET: 'a * 'a -> (svalue,'a) token
val EXCLAMATION: 'a * 'a -> (svalue,'a) token
val EQUALS: 'a * 'a -> (svalue,'a) token
val COMMA: 'a * 'a -> (svalue,'a) token
val COLON: 'a * 'a -> (svalue,'a) token
val CARET: 'a * 'a -> (svalue,'a) token
val AT_SIGN: 'a * 'a -> (svalue,'a) token
val AMPERSAND: 'a * 'a -> (svalue,'a) token
end
signature TPTP_LRVALS=
sig
structure Tokens : TPTP_TOKENS
structure ParserData:PARSER_DATA
sharing type ParserData.Token.token = Tokens.token
sharing type ParserData.svalue = Tokens.svalue
end
functor TPTPLexFun(structure Tokens: TPTP_TOKENS)=
struct
structure UserDeclarations =
struct
(* Title: HOL/TPTP/TPTP_Parser/tptp.lex
Author: Nik Sultana, Cambridge University Computer Laboratory
Notes:
* Omit %full in definitions to restrict alphabet to ascii.
* Could include %posarg to ensure that we'd start counting character positions
from 0, but it would punish performance.
* %s AF F COMMENT; -- could improve by making stateful.
Acknowledgements:
* Geoff Sutcliffe for help with TPTP.
* Timothy Bourke for his tips on getting ML-Yacc working with Poly/ML.
* An early version of this was ported from the specification shipped with
Leo-II, written by Frank Theiss.
* Some boilerplate bits were taken from the ml-yacc/ml-lex manual by Roger Price.
* Jasmin Blanchette and Makarius Wenzel for help with Isabelle integration.
*)
structure T = Tokens
type pos = int (* Position in file *)
type lineNo = int
type svalue = T.svalue
type ('a,'b) token = ('a,'b) T.token
type lexresult = (svalue,pos) token
type lexarg = string
type arg = lexarg
val col = Unsynchronized.ref 0;
val linep = Unsynchronized.ref 1; (* Line pointer *)
val eolpos = Unsynchronized.ref 0;
val badCh : string * string * int * int -> unit = fn
(file_name, bad, line, col) =>
TextIO.output(TextIO.stdOut, file_name ^ "["
^ Int.toString line ^ "." ^ Int.toString col
^ "] Invalid character \"" ^ bad ^ "\"\n");
val eof = fn file_name =>
let
val result = T.EOF (!linep,!col);
val _ = linep := 0;
in result end
(*here could check whether file ended prematurely:
see if have open brackets, or if we're in some state other than INITIAL*)
val count_commentlines : string -> unit = fn str =>
let
val str' = String.explode str
val newlines = List.filter (fn x => x = #"\n") str'
in linep := (!linep) + (List.length newlines) end
end (* end of user routines *)
exception LexError (* raised if illegal leaf action tried *)
structure Internal =
struct
datatype yyfinstate = N of int
type statedata = {fin : yyfinstate list, trans: string}
(* transition & final state table *)
val tab = let
val s = [
(0,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(1,
"\000\000\000\000\000\000\000\000\000\143\145\000\000\144\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\143\139\134\000\101\089\088\083\082\081\080\078\077\072\070\057\
\\048\048\048\048\048\048\048\048\048\048\045\000\039\037\036\033\
\\030\029\029\029\029\029\029\029\029\029\029\029\029\029\029\029\
\\029\029\029\029\029\029\029\029\029\029\029\028\000\027\026\000\
\\000\007\007\023\007\007\020\007\007\013\007\007\007\007\007\007\
\\007\007\007\007\008\007\007\007\007\007\007\000\006\000\003\000\
\\000"
),
(3,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\
\\000"
),
(7,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(8,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\011\007\009\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(9,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\010\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(11,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\012\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(13,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\014\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(14,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\015\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(15,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\016\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(16,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\017\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(17,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\018\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(18,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\019\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(20,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\021\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(21,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\022\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(23,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\024\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(24,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\000\
\\000\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\007\
\\000\007\007\007\007\007\025\007\007\007\007\007\007\007\007\007\
\\007\007\007\007\007\007\007\007\007\007\007\000\000\000\000\000\
\\000"
),
(29,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\029\029\029\029\029\029\029\029\029\029\000\000\000\000\000\000\
\\000\029\029\029\029\029\029\029\029\029\029\029\029\029\029\029\
\\029\029\029\029\029\029\029\029\029\029\029\000\000\000\000\029\
\\000\029\029\029\029\029\029\029\029\029\029\029\029\029\029\029\
\\029\029\029\029\029\029\029\029\029\029\029\000\000\000\000\000\
\\000"
),
(30,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\032\000\031\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(33,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\035\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\034\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(37,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\038\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(39,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\044\042\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\
\\000"
),
(40,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\041\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(42,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\043\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(45,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\047\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\046\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(48,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\051\049\
\\048\048\048\048\048\048\048\048\048\048\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(49,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\050\050\050\050\050\050\050\050\050\050\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(51,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\052\052\052\052\052\052\052\052\052\052\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(52,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\052\052\052\052\052\052\052\052\052\052\000\000\000\000\000\000\
\\000\000\000\000\000\053\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\053\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(53,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\055\000\055\000\000\
\\054\054\054\054\054\054\054\054\054\054\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(54,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\054\054\054\054\054\054\054\054\054\054\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(55,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\056\056\056\056\056\056\056\056\056\056\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(57,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\058\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(58,
"\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\059\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058"
),
(59,
"\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\059\058\058\058\058\060\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\058\
\\058"
),
(60,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\064\000\000\000\000\000\000\000\000\000\061\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(61,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\062\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(62,
"\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\063\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062"
),
(63,
"\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\063\062\062\062\062\060\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\062\
\\062"
),
(64,
"\064\064\064\064\064\064\064\064\064\064\000\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\065\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064"
),
(65,
"\064\064\064\064\064\064\064\064\064\064\000\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\066\064\064\064\064\065\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\064\
\\064"
),
(66,
"\066\066\066\066\066\066\066\066\066\066\062\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\069\066\066\066\066\067\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066"
),
(67,
"\066\066\066\066\066\066\066\066\066\066\062\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\068\066\066\066\066\067\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066"
),
(69,
"\066\066\066\066\066\066\066\066\066\066\062\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\069\066\066\066\066\065\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\066\
\\066"
),
(70,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\071\071\071\071\071\071\071\071\071\071\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(72,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\075\000\000\
\\074\074\074\074\074\074\074\074\074\074\000\000\000\000\073\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(74,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\051\049\
\\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(75,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\076\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(78,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\079\000\000\000\000\
\\074\074\074\074\074\074\074\074\074\074\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(83,
"\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\000\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\087\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084"
),
(84,
"\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\086\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\085\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\084\
\\084"
),
(85,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\084\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\084\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(89,
"\089\089\089\089\089\089\089\089\089\089\000\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\100\089\089\089\089\089\089\089\089\089\090\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089"
),
(90,
"\089\089\089\089\089\089\089\089\089\089\000\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\100\089\089\089\089\091\089\089\089\089\090\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\089\
\\089"
),
(91,
"\091\091\091\091\091\091\091\091\091\091\062\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\095\091\091\091\091\094\091\091\091\091\092\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091"
),
(92,
"\091\091\091\091\091\091\091\091\091\091\062\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\095\091\091\091\091\093\091\091\091\091\092\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091"
),
(94,
"\091\091\091\091\091\091\091\091\091\091\062\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\095\091\091\091\091\094\091\091\091\091\090\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\091\
\\091"
),
(95,
"\095\095\095\095\095\095\095\095\095\095\062\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\098\095\095\095\095\096\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095"
),
(96,
"\095\095\095\095\095\095\095\095\095\095\062\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\097\095\095\095\095\096\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095"
),
(98,
"\095\095\095\095\095\095\095\095\095\095\062\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\098\095\095\095\095\099\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\095\
\\095"
),
(99,
"\100\100\100\100\100\100\100\100\100\100\000\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\095\100\100\100\100\099\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100"
),
(100,
"\100\100\100\100\100\100\100\100\100\100\000\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\099\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\
\\100"
),
(101,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\132\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\131\
\\000\102\102\128\102\102\124\102\102\118\102\102\108\102\102\102\
\\102\102\102\102\103\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(102,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(103,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\106\102\104\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(104,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\105\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(106,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\107\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(108,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\109\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(109,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\110\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(110,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\111\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(111,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\115\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\112\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(112,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\114\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\113\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(115,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\117\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\116\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(118,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\119\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(119,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\120\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(120,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\121\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(121,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\123\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\122\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(124,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\125\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(125,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\127\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\126\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(128,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\129\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(129,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\000\
\\000\102\102\102\102\102\102\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\102\
\\000\102\102\102\102\102\130\102\102\102\102\102\102\102\102\102\
\\102\102\102\102\102\102\102\102\102\102\102\000\000\000\000\000\
\\000"
),
(132,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\133\133\133\133\133\133\133\133\133\133\133\133\133\133\133\
\\133\133\133\133\133\133\133\133\133\133\133\000\000\000\000\000\
\\000"
),
(133,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\133\133\133\133\133\133\133\133\133\133\000\000\000\000\000\000\
\\000\133\133\133\133\133\133\133\133\133\133\133\133\133\133\133\
\\133\133\133\133\133\133\133\133\133\133\133\000\000\000\000\133\
\\000\133\133\133\133\133\133\133\133\133\133\133\133\133\133\133\
\\133\133\133\133\133\133\133\133\133\133\133\000\000\000\000\000\
\\000"
),
(134,
"\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\000\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\138\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135"
),
(135,
"\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\137\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\136\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\135\
\\135"
),
(136,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\135\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\135\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(139,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\141\140\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(143,
"\000\000\000\000\000\000\000\000\000\143\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(144,
"\000\000\000\000\000\000\000\000\000\000\145\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\\000"
),
(0, "")]
fun f x = x
val s = List.map f (List.rev (tl (List.rev s)))
exception LexHackingError
fun look ((j,x)::r, i: int) = if i = j then x else look(r, i)
| look ([], i) = raise LexHackingError
fun g {fin=x, trans=i} = {fin=x, trans=look(s,i)}
in Vector.fromList(List.map g
[{fin = [], trans = 0},
{fin = [(N 2)], trans = 1},
{fin = [(N 2)], trans = 1},
{fin = [(N 84)], trans = 3},
{fin = [(N 71)], trans = 0},
{fin = [(N 61)], trans = 0},
{fin = [(N 86)], trans = 0},
{fin = [(N 271)], trans = 7},
{fin = [(N 271)], trans = 8},
{fin = [(N 271)], trans = 9},
{fin = [(N 174),(N 271)], trans = 7},
{fin = [(N 271)], trans = 11},
{fin = [(N 186),(N 271)], trans = 7},
{fin = [(N 271)], trans = 13},
{fin = [(N 271)], trans = 14},
{fin = [(N 271)], trans = 15},
{fin = [(N 271)], trans = 16},
{fin = [(N 271)], trans = 17},
{fin = [(N 271)], trans = 18},
{fin = [(N 194),(N 271)], trans = 7},
{fin = [(N 271)], trans = 20},
{fin = [(N 271)], trans = 21},
{fin = [(N 178),(N 271)], trans = 7},
{fin = [(N 271)], trans = 23},
{fin = [(N 271)], trans = 24},
{fin = [(N 182),(N 271)], trans = 7},
{fin = [(N 25)], trans = 0},
{fin = [(N 80)], trans = 0},
{fin = [(N 50)], trans = 0},
{fin = [(N 145)], trans = 29},
{fin = [(N 23)], trans = 30},
{fin = [(N 15)], trans = 0},
{fin = [(N 12)], trans = 0},
{fin = [(N 78)], trans = 33},
{fin = [(N 21)], trans = 0},
{fin = [(N 306)], trans = 0},
{fin = [(N 38)], trans = 0},
{fin = [(N 31)], trans = 37},
{fin = [(N 48)], trans = 0},
{fin = [], trans = 39},
{fin = [], trans = 40},
{fin = [(N 68)], trans = 0},
{fin = [(N 41)], trans = 42},
{fin = [(N 45)], trans = 0},
{fin = [(N 300)], trans = 0},
{fin = [(N 27)], trans = 45},
{fin = [(N 36)], trans = 0},
{fin = [(N 309)], trans = 0},
{fin = [(N 126)], trans = 48},
{fin = [], trans = 49},
{fin = [(N 104)], trans = 49},
{fin = [], trans = 51},
{fin = [(N 119)], trans = 52},
{fin = [], trans = 53},
{fin = [(N 119)], trans = 54},
{fin = [], trans = 55},
{fin = [(N 119)], trans = 55},
{fin = [], trans = 57},
{fin = [], trans = 58},
{fin = [], trans = 59},
{fin = [(N 170)], trans = 60},
{fin = [], trans = 61},
{fin = [], trans = 62},
{fin = [], trans = 63},
{fin = [(N 170)], trans = 64},
{fin = [(N 170)], trans = 65},
{fin = [(N 170)], trans = 66},
{fin = [(N 170)], trans = 67},
{fin = [(N 170)], trans = 66},
{fin = [(N 170)], trans = 69},
{fin = [(N 73)], trans = 70},
{fin = [(N 130)], trans = 70},
{fin = [], trans = 72},
{fin = [(N 55)], trans = 0},
{fin = [(N 123)], trans = 74},
{fin = [(N 58)], trans = 75},
{fin = [(N 297)], trans = 0},
{fin = [(N 29)], trans = 0},
{fin = [(N 291)], trans = 78},
{fin = [(N 76)], trans = 0},
{fin = [(N 293)], trans = 0},
{fin = [(N 82)], trans = 0},
{fin = [(N 52)], trans = 0},
{fin = [], trans = 83},
{fin = [], trans = 84},
{fin = [], trans = 85},
{fin = [(N 139)], trans = 0},
{fin = [], trans = 85},
{fin = [(N 9)], trans = 0},
{fin = [(N 170)], trans = 89},
{fin = [(N 170)], trans = 90},
{fin = [(N 170)], trans = 91},
{fin = [(N 170)], trans = 92},
{fin = [(N 170)], trans = 91},
{fin = [(N 170)], trans = 94},
{fin = [(N 170)], trans = 95},
{fin = [(N 170)], trans = 96},
{fin = [(N 170)], trans = 95},
{fin = [(N 170)], trans = 98},
{fin = [(N 170)], trans = 99},
{fin = [(N 170)], trans = 100},
{fin = [], trans = 101},
{fin = [(N 278)], trans = 102},
{fin = [(N 278)], trans = 103},
{fin = [(N 278)], trans = 104},
{fin = [(N 199),(N 278)], trans = 102},
{fin = [(N 278)], trans = 106},
{fin = [(N 219),(N 278)], trans = 102},
{fin = [(N 278)], trans = 108},
{fin = [(N 278)], trans = 109},
{fin = [(N 278)], trans = 110},
{fin = [(N 278)], trans = 111},
{fin = [(N 278)], trans = 112},
{fin = [(N 265),(N 278)], trans = 102},
{fin = [(N 241),(N 278)], trans = 102},
{fin = [(N 278)], trans = 115},
{fin = [(N 257),(N 278)], trans = 102},
{fin = [(N 249),(N 278)], trans = 102},
{fin = [(N 278)], trans = 118},
{fin = [(N 278)], trans = 119},
{fin = [(N 278)], trans = 120},
{fin = [(N 278)], trans = 121},
{fin = [(N 233),(N 278)], trans = 102},
{fin = [(N 226),(N 278)], trans = 102},
{fin = [(N 278)], trans = 124},
{fin = [(N 278)], trans = 125},
{fin = [(N 214),(N 278)], trans = 102},
{fin = [(N 204),(N 278)], trans = 102},
{fin = [(N 278)], trans = 128},
{fin = [(N 278)], trans = 129},
{fin = [(N 209),(N 278)], trans = 102},
{fin = [(N 281)], trans = 0},
{fin = [], trans = 132},
{fin = [(N 289)], trans = 133},
{fin = [], trans = 134},
{fin = [], trans = 135},
{fin = [], trans = 136},
{fin = [(N 95)], trans = 0},
{fin = [], trans = 136},
{fin = [(N 33)], trans = 139},
{fin = [(N 303)], trans = 0},
{fin = [(N 64)], trans = 0},
{fin = [(N 18)], trans = 0},
{fin = [(N 2)], trans = 143},
{fin = [(N 7)], trans = 144},
{fin = [(N 7)], trans = 0}])
end
structure StartStates =
struct
datatype yystartstate = STARTSTATE of int
(* start state definitions *)
val INITIAL = STARTSTATE 1;
end
type result = UserDeclarations.lexresult
exception LexerError (* raised if illegal leaf action tried *)
end
fun makeLexer yyinput =
let val yygone0=1
val yyb = Unsynchronized.ref "\n" (* buffer *)
val yybl = Unsynchronized.ref 1 (*buffer length *)
val yybufpos = Unsynchronized.ref 1 (* location of next character to use *)
val yygone = Unsynchronized.ref yygone0 (* position in file of beginning of buffer *)
val yydone = Unsynchronized.ref false (* eof found yet? *)
val yybegin = Unsynchronized.ref 1 (*Current 'start state' for lexer *)
val YYBEGIN = fn (Internal.StartStates.STARTSTATE x) =>
yybegin := x
fun lex (yyarg as (file_name:string)) =
let fun continue() : Internal.result =
let fun scan (s,AcceptingLeaves : Internal.yyfinstate list list,l,i0) =
let fun action (i,nil) = raise LexError
| action (i,nil::l) = action (i-1,l)
| action (i,(node::acts)::l) =
case node of
Internal.N yyk =>
(let fun yymktext() = String.substring(!yyb,i0,i-i0)
val yypos = i0+ !yygone
open UserDeclarations Internal.StartStates
in (yybufpos := i; case yyk of
(* Application actions *)
104 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.RATIONAL(yytext,!linep,!col) end
| 119 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.REAL(yytext,!linep,!col) end
| 12 => (col:=yypos-(!eolpos); T.INDEF_CHOICE(!linep,!col))
| 123 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.SIGNED_INTEGER(yytext,!linep,!col) end
| 126 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.UNSIGNED_INTEGER(yytext,!linep,!col) end
| 130 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.DOT_DECIMAL(yytext,!linep,!col) end
| 139 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.SINGLE_QUOTED(yytext,!linep,!col) end
| 145 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.UPPER_WORD(yytext,!linep,!col) end
| 15 => (col:=yypos-(!eolpos); T.DEFIN_CHOICE(!linep,!col))
| 170 => let val yytext=yymktext() in col:=yypos-(!eolpos); count_commentlines yytext;T.COMMENT(yytext,!linep,!col) end
| 174 => (col:=yypos-(!eolpos); T.THF(!linep,!col))
| 178 => (col:=yypos-(!eolpos); T.FOF(!linep,!col))
| 18 => (col:=yypos-(!eolpos); T.OPERATOR_FORALL(!linep,!col))
| 182 => (col:=yypos-(!eolpos); T.CNF(!linep,!col))
| 186 => (col:=yypos-(!eolpos); T.TFF(!linep,!col))
| 194 => (col:=yypos-(!eolpos); T.INCLUDE(!linep,!col))
| 199 => (col:=yypos-(!eolpos); T.DTHF(!linep,!col))
| 2 => let val yytext=yymktext() in col:=(!col)+size yytext; continue () end
| 204 => (col:=yypos-(!eolpos); T.DFOF(!linep,!col))
| 209 => (col:=yypos-(!eolpos); T.DCNF(!linep,!col))
| 21 => (col:=yypos-(!eolpos); T.OPERATOR_EXISTS(!linep,!col))
| 214 => (col:=yypos-(!eolpos); T.DFOT(!linep,!col))
| 219 => (col:=yypos-(!eolpos); T.DTFF(!linep,!col))
| 226 => (col:=yypos-(!eolpos); T.ITE_F(!linep,!col))
| 23 => (col:=yypos-(!eolpos); T.AT_SIGN(!linep,!col))
| 233 => (col:=yypos-(!eolpos); T.ITE_T(!linep,!col))
| 241 => (col:=yypos-(!eolpos); T.LET_TF(!linep,!col))
| 249 => (col:=yypos-(!eolpos); T.LET_FF(!linep,!col))
| 25 => (col:=yypos-(!eolpos); T.CARET(!linep,!col))
| 257 => (col:=yypos-(!eolpos); T.LET_FT(!linep,!col))
| 265 => (col:=yypos-(!eolpos); T.LET_TT(!linep,!col))
| 27 => (col:=yypos-(!eolpos); T.COLON(!linep,!col))
| 271 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.LOWER_WORD(yytext,!linep,!col) end
| 278 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.DOLLAR_WORD(yytext,!linep,!col) end
| 281 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.DOLLAR_WORD(yytext,!linep,!col) end
| 289 => let val yytext=yymktext() in col:=yypos-(!eolpos); T.DOLLAR_DOLLAR_WORD(yytext,!linep,!col) end
| 29 => (col:=yypos-(!eolpos); T.COMMA(!linep,!col))
| 291 => (col:=yypos-(!eolpos); T.PLUS(!linep,!col))
| 293 => (col:=yypos-(!eolpos); T.TIMES(!linep,!col))
| 297 => (col:=yypos-(!eolpos); T.GENTZEN_ARROW(!linep,!col))
| 300 => (col:=yypos-(!eolpos); T.SUBTYPE(!linep,!col))
| 303 => (col:=yypos-(!eolpos); T.DEP_PROD(!linep,!col))
| 306 => (col:=yypos-(!eolpos); T.DEP_SUM(!linep,!col))
| 309 => (col:=yypos-(!eolpos); T.LET_TERM(!linep,!col))
| 31 => (col:=yypos-(!eolpos); T.EQUALS(!linep,!col))
| 33 => (col:=yypos-(!eolpos); T.EXCLAMATION(!linep,!col))
| 36 => (col:=yypos-(!eolpos); T.LET(!linep,!col))
| 38 => (col:=yypos-(!eolpos); T.ARROW(!linep,!col))
| 41 => (col:=yypos-(!eolpos); T.FI(!linep,!col))
| 45 => (col:=yypos-(!eolpos); T.IFF(!linep,!col))
| 48 => (col:=yypos-(!eolpos); T.IMPLIES(!linep,!col))
| 50 => (col:=yypos-(!eolpos); T.LBRKT(!linep,!col))
| 52 => (col:=yypos-(!eolpos); T.LPAREN(!linep,!col))
| 55 => (col:=yypos-(!eolpos); T.MAP_TO(!linep,!col))
| 58 => (col:=yypos-(!eolpos); T.MMINUS(!linep,!col))
| 61 => (col:=yypos-(!eolpos); T.NAND(!linep,!col))
--> --------------------
--> maximum size reached
--> --------------------
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.49Angebot
Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können
¤
|
Lebenszyklus
Die hierunter aufgelisteten Ziele sind für diese Firma wichtig
Ziele
Entwicklung einer Software für die statische Quellcodeanalyse
|