# 16 "lexer.mll" open Primitives open Parser # 9 "lexer.ml" let __ocaml_lex_tables = { Lexing.lex_base = "\000\000\253\255\001\000\255\255\002\000\005\000\000\000\007\000\ \001\000\254\255\003\000\072\000\237\255\238\255\040\001\240\255\ \241\255\242\255\243\255\075\001\110\001\145\001\247\255\248\255\ \180\001\215\001\000\000\232\001\004\000\049\002\001\003\008\000\ \252\255\031\000\010\000\018\000\151\000\124\002\034\000\012\000\ "; Lexing.lex_backtrk = "\001\000\255\255\000\000\255\255\001\000\255\255\001\000\000\000\ \000\000\255\255\000\000\255\255\255\255\255\255\016\000\255\255\ \255\255\255\255\255\255\011\000\010\000\009\000\255\255\255\255\ \006\000\005\000\004\000\004\000\018\000\002\000\001\000\000\000\ \255\255\255\255\255\255\255\255\255\255\004\000\004\000\004\000\ "; Lexing.lex_default = "\004\000\000\000\255\255\000\000\004\000\007\000\255\255\007\000\ \010\000\000\000\010\000\012\000\000\000\000\000\255\255\000\000\ \000\000\000\000\000\000\255\255\255\255\255\255\000\000\000\000\ \255\255\255\255\255\255\255\255\033\000\255\255\255\255\255\255\ \000\000\033\000\255\255\255\255\255\255\255\255\255\255\255\255\ "; Lexing.lex_trans = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\006\000\003\000\003\000\003\000\002\000\006\000\002\000\ \255\255\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\ \006\000\000\000\000\000\000\000\000\000\006\000\032\000\255\255\ \031\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\ \026\000\026\000\039\000\039\000\039\000\039\000\000\000\000\000\ \000\000\032\000\038\000\038\000\038\000\038\000\038\000\038\000\ \038\000\038\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\031\000\038\000\038\000\038\000\038\000\038\000\038\000\ \038\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\ \031\000\019\000\028\000\022\000\020\000\014\000\014\000\000\000\ \018\000\017\000\025\000\014\000\000\000\024\000\023\000\014\000\ \027\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\ \026\000\026\000\000\000\000\000\014\000\014\000\014\000\014\000\ \021\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\016\000\000\000\015\000\014\000\030\000\ \000\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\000\000\014\000\000\000\014\000\037\000\ \037\000\037\000\037\000\037\000\037\000\037\000\037\000\037\000\ \037\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \037\000\037\000\037\000\037\000\037\000\037\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \037\000\037\000\037\000\037\000\037\000\037\000\000\000\000\000\ \001\000\009\000\255\255\255\255\255\255\001\000\000\000\255\255\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\255\255\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\000\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \013\000\014\000\000\000\000\000\014\000\014\000\014\000\000\000\ \000\000\000\000\014\000\014\000\000\000\014\000\014\000\014\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\014\000\000\000\014\000\014\000\014\000\014\000\ \014\000\000\000\000\000\000\000\014\000\000\000\000\000\014\000\ \014\000\014\000\000\000\000\000\000\000\014\000\014\000\000\000\ \014\000\014\000\014\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\014\000\014\000\014\000\ \014\000\014\000\014\000\014\000\000\000\000\000\000\000\014\000\ \000\000\000\000\014\000\014\000\014\000\000\000\000\000\000\000\ \014\000\014\000\000\000\014\000\014\000\014\000\000\000\000\000\ \000\000\000\000\000\000\000\000\014\000\000\000\014\000\000\000\ \014\000\014\000\014\000\014\000\014\000\014\000\014\000\000\000\ \000\000\000\000\014\000\000\000\000\000\014\000\014\000\014\000\ \000\000\000\000\000\000\014\000\014\000\000\000\014\000\014\000\ \014\000\000\000\000\000\000\000\000\000\000\000\000\000\014\000\ \000\000\014\000\000\000\014\000\014\000\014\000\014\000\014\000\ \014\000\014\000\000\000\000\000\000\000\014\000\000\000\000\000\ \014\000\014\000\014\000\000\000\000\000\000\000\014\000\014\000\ \000\000\014\000\014\000\014\000\000\000\000\000\000\000\000\000\ \000\000\000\000\014\000\000\000\014\000\000\000\014\000\014\000\ \014\000\014\000\014\000\014\000\014\000\000\000\000\000\000\000\ \014\000\000\000\000\000\014\000\014\000\014\000\000\000\000\000\ \000\000\014\000\014\000\000\000\014\000\014\000\014\000\000\000\ \000\000\000\000\000\000\000\000\000\000\014\000\000\000\014\000\ \000\000\014\000\014\000\014\000\014\000\014\000\014\000\014\000\ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\ \026\000\026\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\ \014\000\000\000\014\000\000\000\000\000\014\000\000\000\035\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \036\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\014\000\000\000\014\000\000\000\035\000\ \029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \036\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\000\000\000\000\000\000\000\000\ \029\000\000\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\037\000\037\000\037\000\037\000\ \037\000\037\000\037\000\037\000\037\000\037\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\037\000\037\000\037\000\ \037\000\037\000\037\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\037\000\037\000\037\000\ \037\000\037\000\037\000\000\000\000\000\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\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \000\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \030\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\000\000\000\000\000\000\000\000\ \030\000\000\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \000\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \000\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\000\000"; Lexing.lex_check = "\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\006\000\000\000\002\000\004\000\000\000\005\000\004\000\ \007\000\031\000\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \006\000\255\255\255\255\255\255\255\255\005\000\028\000\007\000\ \031\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\ \026\000\026\000\034\000\034\000\039\000\039\000\255\255\255\255\ \255\255\033\000\035\000\035\000\035\000\035\000\035\000\035\000\ \035\000\035\000\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\011\000\038\000\038\000\038\000\038\000\038\000\038\000\ \038\000\038\000\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\255\255\ \011\000\011\000\011\000\011\000\255\255\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\255\255\255\255\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\255\255\011\000\011\000\011\000\ \255\255\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\255\255\011\000\255\255\011\000\036\000\ \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\ \036\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \036\000\036\000\036\000\036\000\036\000\036\000\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \036\000\036\000\036\000\036\000\036\000\036\000\255\255\255\255\ \000\000\008\000\004\000\010\000\028\000\005\000\255\255\007\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\033\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\255\255\ \011\000\011\000\011\000\011\000\011\000\011\000\011\000\011\000\ \011\000\014\000\255\255\255\255\014\000\014\000\014\000\255\255\ \255\255\255\255\014\000\014\000\255\255\014\000\014\000\014\000\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\014\000\255\255\014\000\014\000\014\000\014\000\ \014\000\255\255\255\255\255\255\019\000\255\255\255\255\019\000\ \019\000\019\000\255\255\255\255\255\255\019\000\019\000\255\255\ \019\000\019\000\019\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\019\000\014\000\019\000\ \019\000\019\000\019\000\019\000\255\255\255\255\255\255\020\000\ \255\255\255\255\020\000\020\000\020\000\255\255\255\255\255\255\ \020\000\020\000\255\255\020\000\020\000\020\000\255\255\255\255\ \255\255\255\255\255\255\255\255\014\000\255\255\014\000\255\255\ \020\000\019\000\020\000\020\000\020\000\020\000\020\000\255\255\ \255\255\255\255\021\000\255\255\255\255\021\000\021\000\021\000\ \255\255\255\255\255\255\021\000\021\000\255\255\021\000\021\000\ \021\000\255\255\255\255\255\255\255\255\255\255\255\255\019\000\ \255\255\019\000\255\255\021\000\020\000\021\000\021\000\021\000\ \021\000\021\000\255\255\255\255\255\255\024\000\255\255\255\255\ \024\000\024\000\024\000\255\255\255\255\255\255\024\000\024\000\ \255\255\024\000\024\000\024\000\255\255\255\255\255\255\255\255\ \255\255\255\255\020\000\255\255\020\000\255\255\024\000\021\000\ \024\000\024\000\024\000\024\000\024\000\255\255\255\255\255\255\ \025\000\255\255\255\255\025\000\025\000\025\000\255\255\255\255\ \255\255\025\000\025\000\255\255\025\000\025\000\025\000\255\255\ \255\255\255\255\255\255\255\255\255\255\021\000\255\255\021\000\ \255\255\025\000\024\000\025\000\025\000\025\000\025\000\025\000\ \027\000\027\000\027\000\027\000\027\000\027\000\027\000\027\000\ \027\000\027\000\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\027\000\255\255\255\255\255\255\255\255\255\255\ \024\000\255\255\024\000\255\255\255\255\025\000\255\255\027\000\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \027\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\027\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\025\000\255\255\025\000\255\255\027\000\ \029\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \027\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\255\255\255\255\255\255\255\255\ \029\000\255\255\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\037\000\037\000\037\000\037\000\ \037\000\037\000\037\000\037\000\037\000\037\000\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\037\000\037\000\037\000\ \037\000\037\000\037\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\037\000\037\000\037\000\ \037\000\037\000\037\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \255\255\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \030\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\ \029\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\255\255\255\255\255\255\255\255\ \030\000\255\255\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \255\255\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \255\255\030\000\030\000\030\000\030\000\030\000\030\000\030\000\ \030\000\255\255"; Lexing.lex_base_code = "\000\000\000\000\000\000\004\000\001\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ "; Lexing.lex_backtrk_code = "\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ "; Lexing.lex_default_code = "\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ "; Lexing.lex_trans_code = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000"; Lexing.lex_check_code = "\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\000\000\004\000\255\255\000\000\004\000\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \000\000\004\000"; Lexing.lex_code = "\255\001\255\255\000\001\255"; } let rec line lexbuf = lexbuf.Lexing.lex_mem <- Array.create 2 (-1) ; (* L=1 [1] <- p ; *) lexbuf.Lexing.lex_mem.(1) <- lexbuf.Lexing.lex_curr_pos ; __ocaml_lex_line_rec lexbuf 0 and __ocaml_lex_line_rec lexbuf __ocaml_lex_state = match Lexing.new_engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> let s = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_mem.(0) in # 26 "lexer.mll" ( s ) # 396 "lexer.ml" | 1 -> # 28 "lexer.mll" ( Lexing.lexeme lexbuf ) # 401 "lexer.ml" | 2 -> # 30 "lexer.mll" ( raise Exit ) # 406 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_line_rec lexbuf __ocaml_lex_state and argument lexbuf = __ocaml_lex_argument_rec lexbuf 5 and __ocaml_lex_argument_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 35 "lexer.mll" ( ARGUMENT (Lexing.lexeme lexbuf) ) # 417 "lexer.ml" | 1 -> # 37 "lexer.mll" ( argument lexbuf ) # 422 "lexer.ml" | 2 -> # 39 "lexer.mll" ( EOL ) # 427 "lexer.ml" | 3 -> # 41 "lexer.mll" ( raise Parsing.Parse_error ) # 432 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_argument_rec lexbuf __ocaml_lex_state and line_argument lexbuf = __ocaml_lex_line_argument_rec lexbuf 8 and __ocaml_lex_line_argument_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 46 "lexer.mll" ( ARGUMENT (Lexing.lexeme lexbuf) ) # 443 "lexer.ml" | 1 -> # 48 "lexer.mll" ( EOL ) # 448 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_line_argument_rec lexbuf __ocaml_lex_state and lexeme lexbuf = __ocaml_lex_lexeme_rec lexbuf 11 and __ocaml_lex_lexeme_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 53 "lexer.mll" ( lexeme lexbuf ) # 459 "lexer.ml" | 1 -> # 57 "lexer.mll" ( LIDENT(Lexing.lexeme lexbuf) ) # 464 "lexer.ml" | 2 -> # 61 "lexer.mll" ( UIDENT(Lexing.lexeme lexbuf) ) # 469 "lexer.ml" | 3 -> # 63 "lexer.mll" ( let s = Lexing.lexeme lexbuf in LIDENT(String.sub s 1 (String.length s - 2)) ) # 475 "lexer.ml" | 4 -> # 69 "lexer.mll" ( INTEGER (Int64.of_string (Lexing.lexeme lexbuf)) ) # 480 "lexer.ml" | 5 -> # 71 "lexer.mll" ( STAR ) # 485 "lexer.ml" | 6 -> # 73 "lexer.mll" ( MINUS ) # 490 "lexer.ml" | 7 -> # 75 "lexer.mll" ( DOT ) # 495 "lexer.ml" | 8 -> # 77 "lexer.mll" ( SHARP ) # 500 "lexer.ml" | 9 -> # 79 "lexer.mll" ( AT ) # 505 "lexer.ml" | 10 -> # 81 "lexer.mll" ( DOLLAR ) # 510 "lexer.ml" | 11 -> # 83 "lexer.mll" ( BANG ) # 515 "lexer.ml" | 12 -> # 85 "lexer.mll" ( LPAREN ) # 520 "lexer.ml" | 13 -> # 87 "lexer.mll" ( RPAREN ) # 525 "lexer.ml" | 14 -> # 89 "lexer.mll" ( LBRACKET ) # 530 "lexer.ml" | 15 -> # 91 "lexer.mll" ( RBRACKET ) # 535 "lexer.ml" | 16 -> # 94 "lexer.mll" ( OPERATOR (Lexing.lexeme lexbuf) ) # 540 "lexer.ml" | 17 -> # 96 "lexer.mll" ( EOL ) # 545 "lexer.ml" | 18 -> # 98 "lexer.mll" ( raise Parsing.Parse_error ) # 550 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_lexeme_rec lexbuf __ocaml_lex_state ;;