Plasma GitLab Archive
Projects Blog Knowledge

let eof = 0
let invalid = 1
let unicode_baseChar = 2
let ideographic = 3
let extender = 4
let ascii_digit = 5
let unicode_digit = 6
let combiningChar = 7
let otherChar = 8
let char_41 = 9
let char_42 = 10
let char_43 = 11
let char_44 = 12
let char_45 = 13
let char_46 = 14
let char_47 = 15
let char_48 = 16
let char_49 = 17
let char_4a = 18
let char_4b = 19
let char_4c = 20
let char_4d = 21
let char_4e = 22
let char_4f = 23
let char_50 = 24
let char_51 = 25
let char_52 = 26
let char_53 = 27
let char_54 = 28
let char_55 = 29
let char_56 = 30
let char_57 = 31
let char_58 = 32
let char_59 = 33
let char_5a = 34
let char_61 = 35
let char_62 = 36
let char_63 = 37
let char_64 = 38
let char_65 = 39
let char_66 = 40
let char_67 = 41
let char_68 = 42
let char_69 = 43
let char_6a = 44
let char_6b = 45
let char_6c = 46
let char_6d = 47
let char_6e = 48
let char_6f = 49
let char_70 = 50
let char_71 = 51
let char_72 = 52
let char_73 = 53
let char_74 = 54
let char_75 = 55
let char_76 = 56
let char_77 = 57
let char_78 = 58
let char_79 = 59
let char_7a = 60
let char_3c = 61
let char_3e = 62
let char_3f = 63
let char_21 = 64
let char_2d = 65
let char_2f = 66
let char_5b = 67
let char_5d = 68
let char_26 = 69
let char_23 = 70
let char_3b = 71
let char_25 = 72
let char_2b = 73
let char_2a = 74
let char_7c = 75
let char_2c = 76
let char_28 = 77
let char_29 = 78
let char_27 = 79
let char_3d = 80
let char_2e = 81
let char_3a = 82
let char_5f = 83
let char_22 = 84
let char_0a = 85
let char_0d = 86
let char_09 = 87
let char_20 = 88

let one_char_classes = [
  (0x41, 09);
  (0x42, 10);
  (0x43, 11);
  (0x44, 12);
  (0x45, 13);
  (0x46, 14);
  (0x47, 15);
  (0x48, 16);
  (0x49, 17);
  (0x4a, 18);
  (0x4b, 19);
  (0x4c, 20);
  (0x4d, 21);
  (0x4e, 22);
  (0x4f, 23);
  (0x50, 24);
  (0x51, 25);
  (0x52, 26);
  (0x53, 27);
  (0x54, 28);
  (0x55, 29);
  (0x56, 30);
  (0x57, 31);
  (0x58, 32);
  (0x59, 33);
  (0x5a, 34);
  (0x61, 35);
  (0x62, 36);
  (0x63, 37);
  (0x64, 38);
  (0x65, 39);
  (0x66, 40);
  (0x67, 41);
  (0x68, 42);
  (0x69, 43);
  (0x6a, 44);
  (0x6b, 45);
  (0x6c, 46);
  (0x6d, 47);
  (0x6e, 48);
  (0x6f, 49);
  (0x70, 50);
  (0x71, 51);
  (0x72, 52);
  (0x73, 53);
  (0x74, 54);
  (0x75, 55);
  (0x76, 56);
  (0x77, 57);
  (0x78, 58);
  (0x79, 59);
  (0x7a, 60);
  (0x3c, 61);
  (0x3e, 62);
  (0x3f, 63);
  (0x21, 64);
  (0x2d, 65);
  (0x2f, 66);
  (0x5b, 67);
  (0x5d, 68);
  (0x26, 69);
  (0x23, 70);
  (0x3b, 71);
  (0x25, 72);
  (0x2b, 73);
  (0x2a, 74);
  (0x7c, 75);
  (0x2c, 76);
  (0x28, 77);
  (0x29, 78);
  (0x27, 79);
  (0x3d, 80);
  (0x2e, 81);
  (0x3a, 82);
  (0x5f, 83);
  (0x22, 84);
  (0x0a, 85);
  (0x0d, 86);
  (0x09, 87);
  (0x20, 88);
 ]

let nb_classes = 89

# 23 "pxp_wlex.mll"
 
  open Pxp_types
  open Pxp_lexer_types
  open Pxp_lexing

  class dummy_entity = object end

  let dummy_entity = ( new dummy_entity : entity_id )

  (* The following tokens are pre-allocated to reduce the load on the
   * GC.
   *)

  let tok_Doctype__Document_type = Doctype dummy_entity, Document_type
  let tok_Ignore__Document       = Ignore, Document
  let tok_Ignore__Within_tag     = Ignore, Within_tag
  let tok_IgnoreLineEnd__Within_tag = IgnoreLineEnd, Within_tag
  let tok_Ignore__Document_type  = Ignore, Document_type
  let tok_Ignore__Declaration    = Ignore, Declaration
  let tok_Ignore__Ignored        = Ignore, Ignored_section
  let tok_Eof__Document          = Eof, Document
  let tok_Eof__Content           = Eof, Content
  let tok_Eof__Within_tag        = Eof, Within_tag
  let tok_Eof__Document_type     = Eof, Document_type
  let tok_Eof__Declaration       = Eof, Declaration
  let tok_Eof__Ignored           = Eof, Ignored_section
  let tok_LineEndCRLF__Content   = LineEnd "\r\n", Content
  let tok_LineEndCR__Content     = LineEnd "\r", Content
  let tok_LineEndLF__Content     = LineEnd "\n", Content
  let tok_CharDataRBRACKET__Content = CharData "]", Content
  let tok_Eq__Within_tag         = Eq, Within_tag
  let tok_Rangle__Content        = Rangle, Content
  let tok_Rangle_empty__Content  = Rangle_empty, Content
  let tok_Dtd_begin__Declaration = Dtd_begin dummy_entity, Declaration
  let tok_Doctype_rangle__Document = Doctype_rangle dummy_entity, Document
  let tok_Percent__Declaration   = Percent, Declaration
  let tok_Plus__Declaration      = Plus, Declaration
  let tok_Star__Declaration      = Star, Declaration
  let tok_Bar__Declaration       = Bar, Declaration
  let tok_Comma__Declaration     = Comma, Declaration
  let tok_Qmark__Declaration     = Qmark, Declaration
  let tok_Lparen__Declaration    = Lparen dummy_entity, Declaration
  let tok_RparenPlus__Declaration   = RparenPlus dummy_entity, Declaration
  let tok_RparenStar__Declaration   = RparenStar dummy_entity, Declaration
  let tok_RparenQmark__Declaration  = RparenQmark dummy_entity, Declaration
  let tok_Rparen__Declaration    = Rparen dummy_entity, Declaration
  let tok_Required__Declaration  = Required, Declaration
  let tok_Implied__Declaration   = Implied, Declaration
  let tok_Fixed__Declaration     = Fixed, Declaration
  let tok_Pcdata__Declaration    = Pcdata, Declaration
  let tok_Decl_element__Declaration  = Decl_element dummy_entity, Declaration
  let tok_Decl_attlist__Declaration  = Decl_attlist dummy_entity, Declaration
  let tok_Decl_entity__Declaration   = Decl_entity dummy_entity, Declaration
  let tok_Decl_notation__Declaration = Decl_notation dummy_entity, Declaration
  let tok_Conditional_begin__Declaration = Conditional_begin dummy_entity, 
                                           Declaration 
  let tok_Conditional_begin__Ignored     = Conditional_begin dummy_entity, 
                                           Ignored_section
  let tok_Conditional_end__Declaration   = Conditional_end dummy_entity, 
                                           Declaration
  let tok_Conditional_end__Ignored       = Conditional_end dummy_entity, 
                                           Ignored_section
  let tok_Conditional_body__Declaration  = Conditional_body dummy_entity, 
                                           Declaration
  let tok_Decl_rangle__Declaration   = Decl_rangle dummy_entity, Declaration
  let tok_Dtd_end__Document_type     = Dtd_end dummy_entity, Document_type

  open Pxp_wlex_aux

let lex_tables = {
  Lexing.lex_base = 
   "\000\000\026\000\047\000\054\000\117\000\145\000\075\000\002\000\
    \234\000\001\000\041\000\005\000\007\000\009\000\006\001\175\000\
    \250\255\244\255\027\001\000\000\003\000\049\000\035\000\045\000\
    \252\255\051\000\251\255\001\000\254\255\000\000\001\000\255\255\
    \012\000\014\000\016\000\011\000\253\255\035\001\252\255\250\255\
    \097\001\125\001\251\255\050\000\069\000\154\001\206\001\018\000\
    \013\000\018\000\163\000\172\000\017\000\022\000\199\000\251\000\
    \044\000\058\000\024\001\159\000\046\000\080\000\000\000\006\000\
    \010\000\080\000\235\001\037\001\116\001\127\001\243\001\145\001\
    \249\255\247\255\007\002\248\255\169\000\170\000\015\001\017\001\
    \190\000\200\000\022\001\033\001\035\001\044\001\039\002\049\001\
    \254\255\020\000\022\000\244\255\243\255\059\002\129\002\157\002\
    \247\255\063\000\246\255\249\255\239\002\011\003\169\000\148\001\
    \138\002\249\002\097\002\219\255\216\255\040\003\092\003\217\255\
    \183\000\221\255\245\255\228\255\090\000\252\255\124\001\129\003\
    \249\255\248\255\247\255\246\255\244\255\187\000\249\001\004\002\
    \160\001\166\001\054\002\225\255\043\002\223\255\241\255\242\255\
    \173\003\007\000\004\000\000\000\015\000\004\000\008\000\021\000\
    \013\000\027\000\030\000\239\255\031\000\035\000\029\000\050\000\
    \236\255\036\000\151\000\160\000\236\000\241\000\238\255\233\000\
    \010\001\014\001\237\255\255\000\229\255\255\001\209\003\074\001\
    \093\001\081\001\053\001\230\255\231\255\096\001\130\001\112\001\
    \125\001\120\001\122\001\232\255\134\001\121\001\134\001\124\001\
    \123\001\233\255\136\001\167\001\215\001\229\001\235\255\230\001\
    \239\001\245\001\238\001\238\001\234\255\057\002\186\002\188\002\
    \227\255\211\002\013\003\219\003\254\003\044\004\248\255\249\255\
    \246\255\245\255\089\002\171\002\054\002\068\002\180\002\015\003\
    \079\004\247\255\245\255\246\255\168\004\191\002\195\002\125\004\
    \042\003\034\002\008\002\223\001\022\002\013\002\012\002\024\002\
    \038\002\121\003\149\003\097\004\099\004\206\004\245\255\214\004\
    \246\255\001\005\247\255\223\001\218\004\127\002\099\002\085\005\
    \095\005\057\005\243\255\111\005\242\255\245\255\247\001\065\003\
    \250\255\139\003\253\255\227\001\072\002\165\002\141\003\145\003\
    \139\005\241\255\160\005\230\005\249\001\002\006\242\255\234\001\
    \084\006\127\003\118\003\238\005\094\006\248\255\246\255\034\002\
    \240\255\112\006\020\005\225\002\201\006\056\002\156\002\167\002\
    \237\002\222\002\247\002\190\002\013\004\021\004\102\004\091\005\
    \182\004\051\005\053\005\101\005\170\005\157\005\032\006";
  Lexing.lex_backtrk = 
   "\255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
    \255\255\001\000\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\006\000\007\000\008\000\009\000\010\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\
    \000\000\002\000\255\255\001\000\001\000\002\000\000\000\003\000\
    \002\000\001\000\003\000\003\000\002\000\001\000\003\000\003\000\
    \002\000\001\000\003\000\003\000\001\000\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
    \255\255\255\255\000\000\255\255\003\000\001\000\005\000\255\255\
    \255\255\004\000\001\000\255\255\255\255\002\000\000\000\000\000\
    \255\255\000\000\000\000\255\255\255\255\010\000\005\000\001\000\
    \255\255\007\000\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\010\000\255\255\255\255\004\000\005\000\255\255\
    \038\000\255\255\255\255\255\255\035\000\255\255\038\000\002\000\
    \255\255\255\255\255\255\255\255\255\255\015\000\033\000\031\000\
    \000\000\000\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\029\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\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\028\000\005\000\004\000\000\000\255\255\255\255\
    \255\255\255\255\005\000\003\000\001\000\001\000\255\255\255\255\
    \000\000\255\255\255\255\255\255\006\000\007\000\007\000\005\000\
    \001\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\000\000\255\255\004\000\
    \255\255\003\000\255\255\007\000\255\255\255\255\255\255\255\255\
    \255\255\004\000\255\255\004\000\255\255\255\255\013\000\009\000\
    \255\255\007\000\255\255\001\000\003\000\003\000\255\255\255\255\
    \004\000\255\255\017\000\006\000\016\000\010\000\255\255\012\000\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\003\000\001\000\005\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\000\000\017\000";
  Lexing.lex_default = 
   "\010\001\251\000\239\000\219\000\205\000\109\000\093\000\089\000\
    \074\000\255\255\059\000\055\000\051\000\047\000\040\000\018\000\
    \000\000\000\000\037\000\255\255\255\255\025\000\023\000\023\000\
    \000\000\025\000\000\000\255\255\000\000\255\255\255\255\000\000\
    \032\000\034\000\034\000\255\255\000\000\037\000\000\000\000\000\
    \046\000\045\000\000\000\255\255\255\255\045\000\046\000\050\000\
    \255\255\255\255\050\000\054\000\255\255\255\255\054\000\058\000\
    \255\255\255\255\058\000\059\000\255\255\255\255\255\255\255\255\
    \255\255\255\255\067\000\067\000\069\000\069\000\069\000\069\000\
    \000\000\000\000\086\000\000\000\083\000\255\255\079\000\079\000\
    \255\255\255\255\255\255\083\000\255\255\255\255\086\000\255\255\
    \000\000\090\000\090\000\000\000\000\000\106\000\101\000\100\000\
    \000\000\255\255\000\000\000\000\100\000\101\000\255\255\255\255\
    \255\255\255\255\106\000\000\000\000\000\204\000\203\000\000\000\
    \255\255\000\000\000\000\000\000\255\255\000\000\255\255\136\000\
    \000\000\000\000\000\000\000\000\000\000\255\255\132\000\130\000\
    \255\255\255\255\130\000\000\000\132\000\000\000\000\000\000\000\
    \136\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\000\000\255\255\255\255\255\255\255\255\
    \000\000\255\255\255\255\255\255\255\255\255\255\000\000\255\255\
    \255\255\255\255\000\000\255\255\000\000\197\000\255\255\255\255\
    \255\255\255\255\255\255\000\000\000\000\255\255\255\255\255\255\
    \255\255\255\255\255\255\000\000\255\255\255\255\255\255\255\255\
    \255\255\000\000\255\255\255\255\255\255\255\255\000\000\255\255\
    \255\255\255\255\255\255\255\255\000\000\197\000\199\000\199\000\
    \000\000\199\000\199\000\203\000\204\000\216\000\000\000\000\000\
    \000\000\000\000\215\000\214\000\255\255\255\255\214\000\215\000\
    \216\000\000\000\000\000\000\000\223\000\255\255\255\255\223\000\
    \233\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\233\000\235\000\235\000\235\000\235\000\000\000\249\000\
    \000\000\244\000\000\000\255\255\244\000\255\255\255\255\255\255\
    \255\255\249\000\000\000\008\001\000\000\000\000\255\255\007\001\
    \000\000\006\001\000\000\255\255\255\255\255\255\006\001\007\001\
    \008\001\000\000\046\001\025\001\255\255\016\001\000\000\255\255\
    \016\001\255\255\255\255\255\255\255\255\000\000\000\000\255\255\
    \000\000\025\001\041\001\255\255\025\001\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\036\001\038\001\038\001\040\001\
    \040\001\041\001\043\001\043\001\043\001\043\001\046\001";
  Lexing.lex_trans = 
   "\009\001\162\000\088\000\036\000\000\000\042\000\039\000\042\000\
    \039\000\042\000\039\000\148\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\
    \159\000\153\000\250\000\134\000\141\000\142\000\252\000\252\000\
    \252\000\252\000\252\000\255\255\255\255\143\000\144\000\145\000\
    \146\000\026\000\147\000\149\000\150\000\255\255\255\255\238\000\
    \017\000\255\255\255\255\255\255\255\255\064\000\217\000\218\000\
    \065\000\151\000\063\000\152\000\154\000\011\001\061\000\028\000\
    \029\000\030\000\032\000\031\000\012\001\013\001\056\000\027\000\
    \052\000\036\000\048\000\091\000\092\000\033\000\049\000\035\000\
    \031\000\033\000\053\000\255\255\031\000\014\001\015\001\252\000\
    \253\000\252\000\252\000\252\000\254\000\252\000\252\000\252\000\
    \252\000\252\000\252\000\252\000\252\000\252\000\252\000\252\000\
    \252\000\255\000\000\001\252\000\240\000\057\000\001\001\002\001\
    \003\001\004\001\004\001\220\000\241\000\096\000\092\000\024\000\
    \031\000\091\000\091\000\091\000\091\000\091\000\036\000\060\000\
    \026\000\024\000\026\000\031\000\242\000\243\000\016\000\044\000\
    \044\000\044\000\044\000\221\000\221\000\221\000\221\000\062\000\
    \094\000\107\000\108\000\095\000\099\000\110\000\110\000\110\000\
    \110\000\111\000\044\000\044\000\044\000\044\000\163\000\255\255\
    \096\000\097\000\098\000\255\255\255\255\066\000\066\000\066\000\
    \066\000\255\255\255\255\155\000\255\255\255\255\103\000\016\000\
    \017\000\156\000\091\000\206\000\091\000\091\000\091\000\091\000\
    \207\000\091\000\208\000\091\000\091\000\209\000\091\000\091\000\
    \091\000\091\000\091\000\091\000\210\000\091\000\091\000\255\255\
    \255\255\211\000\212\000\212\000\212\000\212\000\112\000\113\000\
    \114\000\111\000\110\000\111\000\115\000\116\000\117\000\118\000\
    \111\000\119\000\120\000\121\000\122\000\123\000\124\000\125\000\
    \126\000\111\000\110\000\104\000\255\255\127\000\128\000\128\000\
    \128\000\128\000\072\000\073\000\019\000\255\255\075\000\075\000\
    \075\000\075\000\075\000\020\000\255\255\255\255\165\000\166\000\
    \084\000\157\000\134\000\255\255\255\255\158\000\021\000\082\000\
    \082\000\082\000\082\000\022\000\092\000\135\000\038\000\039\000\
    \255\255\160\000\041\000\041\000\041\000\041\000\042\000\255\255\
    \255\255\255\255\255\255\081\000\081\000\081\000\081\000\161\000\
    \255\255\255\255\162\000\255\255\255\255\081\000\081\000\081\000\
    \081\000\255\255\255\255\255\255\255\255\255\255\255\255\075\000\
    \075\000\075\000\075\000\075\000\075\000\075\000\075\000\075\000\
    \075\000\075\000\075\000\075\000\075\000\075\000\075\000\075\000\
    \075\000\076\000\077\000\075\000\255\255\164\000\078\000\075\000\
    \075\000\075\000\075\000\042\000\042\000\042\000\042\000\041\000\
    \042\000\042\000\042\000\042\000\042\000\042\000\042\000\042\000\
    \042\000\042\000\042\000\042\000\042\000\042\000\042\000\041\000\
    \255\255\255\255\042\000\043\000\043\000\043\000\043\000\255\255\
    \255\255\255\255\255\255\080\000\068\000\080\000\191\000\255\255\
    \173\000\255\255\255\255\082\000\082\000\082\000\082\000\255\255\
    \084\000\180\000\255\255\181\000\255\255\255\255\172\000\255\255\
    \085\000\085\000\085\000\085\000\174\000\255\255\255\255\255\255\
    \255\255\085\000\085\000\085\000\085\000\255\255\087\000\087\000\
    \087\000\087\000\137\000\175\000\176\000\138\000\177\000\178\000\
    \179\000\255\255\255\255\186\000\139\000\182\000\140\000\183\000\
    \184\000\103\000\255\255\255\255\185\000\187\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\031\000\070\000\188\000\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\068\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\
    \068\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\024\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\189\000\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\129\000\129\000\129\000\
    \129\000\255\255\255\255\129\000\129\000\129\000\129\000\255\255\
    \255\255\190\000\192\000\193\000\255\255\255\255\194\000\255\255\
    \255\255\195\000\196\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\228\000\
    \024\000\229\000\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\230\000\068\000\255\255\255\255\231\000\226\000\255\255\
    \232\000\071\000\068\000\036\000\099\000\017\000\255\255\255\255\
    \031\000\255\255\255\255\255\255\255\255\023\001\198\000\017\000\
    \066\000\066\000\066\000\066\000\255\255\255\255\255\255\255\255\
    \133\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\
    \131\000\255\255\255\255\255\255\087\000\087\000\087\000\087\000\
    \024\001\255\255\255\255\227\000\255\255\255\255\255\255\255\255\
    \246\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\
    \198\000\036\000\133\000\255\255\087\000\087\000\087\000\087\000\
    \255\255\255\255\255\255\255\255\246\000\255\255\255\255\255\255\
    \255\255\255\255\131\000\213\000\213\000\213\000\213\000\105\000\
    \255\255\255\255\255\255\105\000\105\000\105\000\105\000\105\000\
    \105\000\213\000\213\000\213\000\213\000\255\255\255\255\005\001\
    \005\001\255\255\255\255\255\255\255\255\255\255\255\255\031\001\
    \026\000\255\255\028\000\255\255\255\255\105\000\105\000\105\000\
    \105\000\105\000\105\000\032\001\255\255\255\255\255\255\255\255\
    \255\255\247\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\102\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\033\001\255\255\
    \200\000\201\000\034\001\198\000\005\001\005\001\105\000\036\000\
    \035\001\036\001\105\000\105\000\105\000\105\000\105\000\105\000\
    \036\000\000\000\000\000\255\255\255\255\255\255\255\255\255\255\
    \255\255\202\000\198\000\255\255\222\000\222\000\222\000\222\000\
    \222\000\222\000\222\000\222\000\105\000\105\000\105\000\105\000\
    \105\000\105\000\029\001\000\000\030\001\000\000\000\000\000\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\031\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \026\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\198\000\255\255\255\255\255\255\
    \255\255\255\255\036\000\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\026\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\234\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\018\001\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\000\000\018\001\255\255\255\255\255\255\
    \255\255\255\255\000\000\255\255\255\255\255\255\255\255\000\000\
    \073\000\255\255\255\255\000\000\000\000\255\255\255\255\000\000\
    \000\000\255\255\255\255\255\255\255\255\000\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\000\000\
    \255\255\255\255\255\255\255\255\255\255\255\255\000\000\000\000\
    \234\000\019\001\000\000\000\000\000\000\021\001\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\031\000\236\000\255\255\255\255\255\255\
    \255\255\255\255\167\000\255\255\255\255\000\000\168\000\099\000\
    \073\000\099\000\000\000\255\255\000\000\000\000\000\000\169\000\
    \000\000\000\000\255\255\255\255\255\255\255\255\000\000\255\255\
    \255\255\255\255\255\255\255\255\028\000\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \000\000\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
    \000\000\000\000\000\000\000\000\000\000\255\255\255\255\000\000\
    \000\000\000\000\170\000\000\000\171\000\255\255\255\255\000\000\
    \255\255\255\255\255\255\255\255\000\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\000\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\000\000\000\000\000\000\
    \000\000\000\000\000\000\255\255\255\255\255\255\255\255\000\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\037\001\255\255\255\255\255\255\255\255\255\255\255\255\
    \000\000\039\001\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\255\255\255\255\255\255\255\255\000\000\255\255\255\255\
    \000\000\255\255\255\255\255\255\255\255\000\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\000\000\
    \255\255\255\255\255\255\255\255\255\255\255\255\000\000\000\000\
    \000\000\000\000\000\000\000\000\255\255\255\255\255\255\255\255\
    \000\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\
    \234\000\237\000\234\000\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\037\001\000\000\255\255\255\255\255\255\255\255\
    \255\255\000\000\000\000\000\000\000\000\000\000\255\255\255\255\
    \000\000\000\000\255\255\255\255\255\255\255\255\000\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\
    \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \000\000\000\000\255\255\255\255\000\000\000\000\000\000\000\000\
    \000\000\000\000\255\255\000\000\000\000\255\255\255\255\224\000\
    \225\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\037\001\000\000\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\000\000\000\000\255\255\255\255\255\255\
    \255\255\255\255\000\000\000\000\000\000\234\000\000\000\000\000\
    \000\000\000\000\000\000\255\255\255\255\255\255\000\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\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\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
    \000\000\255\255\255\255\000\000\000\000\000\000\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\245\000\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\042\001\000\000\255\255\255\255\255\255\
    \255\255\255\255\248\000\255\255\255\255\000\000\248\000\248\000\
    \248\000\248\000\248\000\248\000\248\000\255\255\255\255\000\000\
    \248\000\248\000\248\000\248\000\248\000\248\000\000\000\255\255\
    \255\255\000\000\042\001\031\000\044\001\000\000\255\255\255\255\
    \248\000\248\000\248\000\248\000\248\000\248\000\255\255\000\000\
    \000\000\000\000\248\000\248\000\248\000\248\000\248\000\248\000\
    \000\000\000\000\000\000\255\255\255\255\000\000\255\255\255\255\
    \255\255\000\000\000\000\255\255\000\000\000\000\000\000\000\000\
    \000\000\026\000\000\000\000\000\000\000\255\255\255\255\039\001\
    \255\255\255\255\000\000\000\000\042\001\000\000\036\000\000\000\
    \000\000\000\000\255\255\255\255\255\255\255\255\255\255\255\255\
    \000\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\
    \000\000\000\000\000\000\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\000\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\042\001\255\255\000\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \045\001\042\001\255\255\255\255\255\255\255\255\255\255\000\000\
    \000\000\000\000\000\000\020\001\000\000\255\255\255\255\020\001\
    \020\001\020\001\020\001\020\001\020\001\000\000\000\000\000\000\
    \000\000\000\000\255\255\255\255\000\000\000\000\255\255\255\255\
    \255\255\255\255\255\255\000\000\000\000\000\000\000\000\000\000\
    \000\000\020\001\020\001\020\001\020\001\020\001\020\001\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \255\255\255\255\000\000\255\255\255\255\026\001\027\001\255\255\
    \028\001\255\255\255\255\255\255\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\000\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\
    \017\001\255\255\255\255\255\255\255\255\255\255\255\255\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\255\255\255\255\000\000\000\000\
    \000\000\000\000\000\000\020\001\255\255\255\255\000\000\020\001\
    \020\001\020\001\020\001\020\001\020\001\000\000\000\000\000\000\
    \255\255\255\255\000\000\000\000\000\000\255\255\255\255\000\000\
    \255\255\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\020\001\020\001\020\001\020\001\020\001\020\001\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\255\255\255\255\255\255\255\255\000\000\255\255\255\255\
    \255\255\255\255\255\255\022\001\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\073\000\000\000\000\000\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\000\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\000\000\000\000\000\000\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\000\000\000\000\255\255\255\255\255\255\
    \255\255\255\255\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
    \000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\255\255\255\255\255\255\
    \255\255\255\255";
  Lexing.lex_check = 
   "\000\000\000\000\007\000\007\000\255\255\011\000\011\000\012\000\
    \012\000\013\000\013\000\139\000\032\000\032\000\033\000\033\000\
    \034\000\034\000\047\000\047\000\089\000\089\000\090\000\090\000\
    \137\000\138\000\001\000\001\000\140\000\141\000\001\000\001\000\
    \001\000\001\000\001\000\022\000\022\000\142\000\143\000\144\000\
    \145\000\010\000\146\000\148\000\149\000\023\000\023\000\002\000\
    \002\000\021\000\021\000\025\000\025\000\063\000\003\000\003\000\
    \064\000\150\000\062\000\151\000\153\000\000\000\009\000\027\000\
    \019\000\029\000\030\000\029\000\000\000\000\000\011\000\020\000\
    \012\000\035\000\013\000\006\000\006\000\032\000\048\000\033\000\
    \049\000\034\000\052\000\047\000\053\000\000\000\000\000\001\000\
    \001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\
    \001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\
    \001\000\001\000\001\000\001\000\002\000\056\000\001\000\001\000\
    \001\000\001\000\001\000\003\000\002\000\004\000\004\000\022\000\
    \057\000\004\000\004\000\004\000\004\000\004\000\010\000\010\000\
    \021\000\023\000\025\000\060\000\002\000\002\000\002\000\043\000\
    \043\000\043\000\043\000\003\000\003\000\003\000\003\000\061\000\
    \006\000\005\000\005\000\006\000\097\000\005\000\005\000\005\000\
    \005\000\005\000\044\000\044\000\044\000\044\000\116\000\059\000\
    \006\000\006\000\006\000\050\000\050\000\065\000\065\000\065\000\
    \065\000\076\000\076\000\154\000\051\000\051\000\102\000\015\000\
    \015\000\155\000\004\000\004\000\004\000\004\000\004\000\004\000\
    \004\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\
    \004\000\004\000\004\000\004\000\004\000\004\000\004\000\054\000\
    \054\000\004\000\004\000\004\000\004\000\004\000\005\000\005\000\
    \005\000\005\000\005\000\005\000\005\000\005\000\005\000\005\000\
    \005\000\005\000\005\000\005\000\005\000\005\000\005\000\005\000\
    \005\000\005\000\005\000\102\000\050\000\005\000\005\000\005\000\
    \005\000\005\000\008\000\008\000\015\000\051\000\008\000\008\000\
    \008\000\008\000\008\000\015\000\059\000\059\000\112\000\112\000\
    \076\000\156\000\125\000\055\000\055\000\157\000\015\000\077\000\
    \077\000\077\000\077\000\015\000\125\000\125\000\014\000\014\000\
    \054\000\159\000\014\000\014\000\014\000\014\000\014\000\078\000\
    \078\000\079\000\079\000\080\000\080\000\080\000\080\000\160\000\
    \058\000\058\000\161\000\018\000\018\000\081\000\081\000\081\000\
    \081\000\083\000\083\000\037\000\037\000\067\000\067\000\008\000\
    \008\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
    \008\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
    \008\000\008\000\008\000\008\000\055\000\163\000\008\000\008\000\
    \008\000\008\000\008\000\014\000\014\000\014\000\014\000\014\000\
    \014\000\014\000\014\000\014\000\014\000\014\000\014\000\014\000\
    \014\000\014\000\014\000\014\000\014\000\014\000\014\000\014\000\
    \018\000\058\000\014\000\014\000\014\000\014\000\014\000\018\000\
    \037\000\040\000\040\000\078\000\067\000\079\000\167\000\037\000\
    \169\000\040\000\018\000\082\000\082\000\082\000\082\000\018\000\
    \083\000\168\000\037\000\168\000\068\000\068\000\170\000\037\000\
    \084\000\084\000\084\000\084\000\173\000\041\000\041\000\069\000\
    \069\000\085\000\085\000\085\000\085\000\041\000\087\000\087\000\
    \087\000\087\000\118\000\174\000\175\000\118\000\176\000\177\000\
    \178\000\071\000\071\000\180\000\118\000\181\000\118\000\182\000\
    \183\000\103\000\045\000\045\000\184\000\186\000\040\000\040\000\
    \040\000\040\000\045\000\040\000\040\000\040\000\040\000\040\000\
    \040\000\040\000\040\000\040\000\040\000\040\000\040\000\040\000\
    \040\000\040\000\068\000\068\000\187\000\040\000\040\000\040\000\
    \040\000\040\000\041\000\041\000\041\000\041\000\069\000\041\000\
    \041\000\041\000\041\000\041\000\041\000\041\000\041\000\041\000\
    \041\000\041\000\041\000\041\000\041\000\041\000\046\000\046\000\
    \071\000\041\000\041\000\041\000\041\000\041\000\046\000\045\000\
    \045\000\045\000\045\000\103\000\045\000\045\000\045\000\045\000\
    \045\000\045\000\045\000\045\000\045\000\045\000\045\000\045\000\
    \045\000\045\000\045\000\066\000\066\000\188\000\045\000\045\000\
    \045\000\045\000\045\000\070\000\070\000\128\000\128\000\128\000\
    \128\000\126\000\126\000\129\000\129\000\129\000\129\000\165\000\
    \165\000\189\000\191\000\192\000\127\000\127\000\193\000\074\000\
    \074\000\194\000\195\000\046\000\046\000\046\000\046\000\074\000\
    \046\000\046\000\046\000\046\000\046\000\046\000\046\000\046\000\
    \046\000\046\000\046\000\046\000\046\000\046\000\046\000\226\000\
    \227\000\228\000\046\000\046\000\046\000\046\000\046\000\086\000\
    \086\000\229\000\066\000\132\000\132\000\230\000\225\000\086\000\
    \231\000\070\000\070\000\232\000\243\000\254\000\130\000\130\000\
    \003\001\197\000\197\000\093\000\093\000\012\001\165\000\015\001\
    \066\000\066\000\066\000\066\000\074\000\074\000\074\000\074\000\
    \126\000\074\000\074\000\074\000\074\000\074\000\074\000\074\000\
    \074\000\074\000\074\000\074\000\074\000\074\000\074\000\074\000\
    \127\000\210\000\210\000\074\000\074\000\074\000\074\000\074\000\
    \023\001\106\000\106\000\225\000\086\000\086\000\086\000\086\000\
    \246\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
    \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
    \197\000\029\001\132\000\086\000\086\000\086\000\086\000\086\000\
    \093\000\094\000\094\000\093\000\245\000\094\000\094\000\094\000\
    \094\000\094\000\130\000\212\000\212\000\212\000\212\000\104\000\
    \093\000\093\000\093\000\104\000\104\000\104\000\104\000\104\000\
    \104\000\213\000\213\000\213\000\213\000\095\000\095\000\004\001\
    \004\001\095\000\095\000\095\000\095\000\095\000\106\000\030\001\
    \210\000\106\000\246\000\211\000\211\000\104\000\104\000\104\000\
    \104\000\104\000\104\000\031\001\214\000\214\000\106\000\106\000\
    \106\000\245\000\198\000\198\000\199\000\199\000\094\000\094\000\
    \094\000\094\000\094\000\094\000\094\000\094\000\094\000\094\000\
    \094\000\094\000\094\000\094\000\094\000\094\000\094\000\094\000\
    \094\000\094\000\094\000\201\000\201\000\094\000\094\000\094\000\
    \094\000\094\000\095\000\095\000\095\000\095\000\095\000\095\000\
    \095\000\095\000\095\000\095\000\095\000\095\000\095\000\095\000\
    \095\000\095\000\095\000\095\000\095\000\095\000\095\000\100\000\
    \100\000\095\000\095\000\095\000\095\000\095\000\032\001\100\000\
    \198\000\198\000\033\001\199\000\005\001\005\001\105\000\211\000\
    \034\001\035\001\105\000\105\000\105\000\105\000\105\000\105\000\
    \214\000\255\255\255\255\101\000\101\000\202\000\202\000\215\000\
    \215\000\201\000\201\000\101\000\221\000\221\000\221\000\221\000\
    \222\000\222\000\222\000\222\000\105\000\105\000\105\000\105\000\
    \105\000\105\000\027\001\255\255\027\001\255\255\255\255\255\255\
    \109\000\109\000\224\000\224\000\100\000\100\000\100\000\100\000\
    \109\000\100\000\100\000\100\000\100\000\100\000\100\000\100\000\
    \100\000\100\000\100\000\100\000\100\000\100\000\100\000\100\000\
    \105\000\255\000\255\000\100\000\100\000\100\000\100\000\100\000\
    \101\000\101\000\101\000\101\000\202\000\101\000\101\000\101\000\
    \101\000\101\000\101\000\101\000\101\000\101\000\101\000\101\000\
    \101\000\101\000\101\000\101\000\110\000\110\000\215\000\101\000\
    \101\000\101\000\101\000\101\000\110\000\109\000\109\000\109\000\
    \109\000\224\000\109\000\109\000\109\000\109\000\109\000\109\000\
    \109\000\109\000\109\000\109\000\109\000\109\000\109\000\109\000\
    \109\000\233\000\233\000\018\001\109\000\109\000\109\000\109\000\
    \109\000\119\000\119\000\255\255\017\001\119\000\119\000\119\000\
    \119\000\119\000\255\255\001\001\001\001\006\001\006\001\255\255\
    \255\000\007\001\007\001\255\255\255\255\234\000\234\000\255\255\
    \255\255\110\000\110\000\110\000\110\000\255\255\110\000\110\000\
    \110\000\110\000\110\000\110\000\110\000\110\000\110\000\110\000\
    \110\000\110\000\110\000\110\000\110\000\136\000\136\000\255\255\
    \110\000\110\000\110\000\110\000\110\000\136\000\255\255\255\255\
    \233\000\017\001\255\255\255\255\255\255\018\001\119\000\119\000\
    \119\000\119\000\119\000\119\000\119\000\119\000\119\000\119\000\
    \119\000\119\000\119\000\119\000\119\000\119\000\119\000\119\000\
    \119\000\119\000\119\000\234\000\234\000\119\000\119\000\119\000\
    \119\000\119\000\166\000\203\000\203\000\255\255\166\000\001\001\
    \007\001\006\001\255\255\203\000\255\255\255\255\255\255\166\000\
    \255\255\255\255\136\000\136\000\136\000\136\000\255\255\136\000\
    \136\000\136\000\136\000\136\000\136\000\136\000\136\000\136\000\
    \136\000\136\000\136\000\136\000\136\000\136\000\204\000\204\000\
    \255\255\136\000\136\000\136\000\136\000\136\000\204\000\255\255\
    \255\255\255\255\255\255\255\255\255\255\036\001\036\001\255\255\
    \255\255\255\255\166\000\255\255\166\000\037\001\037\001\255\255\
    \203\000\203\000\203\000\203\000\255\255\203\000\203\000\203\000\
    \203\000\203\000\203\000\203\000\203\000\203\000\203\000\203\000\
    \203\000\203\000\203\000\203\000\205\000\205\000\255\255\203\000\
    \203\000\203\000\203\000\203\000\205\000\255\255\255\255\255\255\
    \255\255\255\255\255\255\204\000\204\000\204\000\204\000\255\255\
    \204\000\204\000\204\000\204\000\204\000\204\000\204\000\204\000\
    \204\000\204\000\204\000\204\000\204\000\204\000\204\000\216\000\
    \216\000\036\001\204\000\204\000\204\000\204\000\204\000\216\000\
    \255\255\037\001\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\235\000\235\000\236\000\236\000\255\255\038\001\038\001\
    \255\255\205\000\205\000\205\000\205\000\255\255\205\000\205\000\
    \205\000\205\000\205\000\205\000\205\000\205\000\205\000\205\000\
    \205\000\205\000\205\000\205\000\205\000\223\000\223\000\255\255\
    \205\000\205\000\205\000\205\000\205\000\223\000\255\255\255\255\
    \255\255\255\255\255\255\255\255\216\000\216\000\216\000\216\000\
    \255\255\216\000\216\000\216\000\216\000\216\000\216\000\216\000\
    \216\000\216\000\216\000\216\000\216\000\216\000\216\000\216\000\
    \235\000\236\000\236\000\216\000\216\000\216\000\216\000\216\000\
    \220\000\220\000\038\001\255\255\220\000\220\000\220\000\220\000\
    \220\000\255\255\255\255\255\255\255\255\255\255\040\001\040\001\
    \255\255\255\255\223\000\223\000\223\000\223\000\255\255\223\000\
    \223\000\223\000\223\000\223\000\223\000\223\000\223\000\223\000\
    \223\000\223\000\223\000\223\000\223\000\223\000\237\000\237\000\
    \255\255\223\000\223\000\223\000\223\000\223\000\239\000\239\000\
    \255\255\255\255\244\000\244\000\255\255\255\255\255\255\255\255\
    \255\255\255\255\244\000\255\255\255\255\220\000\220\000\220\000\
    \220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\
    \220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\
    \220\000\220\000\040\001\255\255\220\000\220\000\220\000\220\000\
    \220\000\241\000\241\000\255\255\255\255\241\000\241\000\241\000\
    \241\000\241\000\255\255\255\255\255\255\237\000\255\255\255\255\
    \255\255\255\255\255\255\239\000\026\001\026\001\255\255\244\000\
    \244\000\244\000\244\000\239\000\244\000\244\000\244\000\244\000\
    \244\000\244\000\244\000\244\000\244\000\244\000\244\000\244\000\
    \244\000\244\000\244\000\239\000\239\000\239\000\244\000\244\000\
    \244\000\244\000\244\000\041\001\041\001\042\001\042\001\255\255\
    \255\255\249\000\249\000\255\255\255\255\255\255\241\000\241\000\
    \241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\
    \241\000\241\000\241\000\241\000\241\000\241\000\241\000\241\000\
    \241\000\241\000\241\000\026\001\255\255\241\000\241\000\241\000\
    \241\000\241\000\247\000\039\001\039\001\255\255\247\000\247\000\
    \247\000\247\000\247\000\247\000\248\000\043\001\043\001\255\255\
    \248\000\248\000\248\000\248\000\248\000\248\000\255\255\251\000\
    \251\000\255\255\041\001\042\001\042\001\255\255\249\000\251\000\
    \247\000\247\000\247\000\247\000\247\000\247\000\249\000\255\255\
    \255\255\255\255\248\000\248\000\248\000\248\000\248\000\248\000\
    \255\255\255\255\255\255\008\001\008\001\255\255\249\000\249\000\
    \249\000\255\255\255\255\008\001\255\255\255\255\255\255\255\255\
    \255\255\039\001\255\255\255\255\255\255\045\001\045\001\039\001\
    \010\001\010\001\255\255\255\255\043\001\255\255\248\000\255\255\
    \255\255\255\255\044\001\044\001\251\000\251\000\251\000\251\000\
    \255\255\251\000\251\000\251\000\251\000\251\000\251\000\251\000\
    \251\000\251\000\251\000\251\000\251\000\251\000\251\000\251\000\
    \255\255\255\255\255\255\251\000\251\000\251\000\251\000\251\000\
    \008\001\008\001\008\001\008\001\255\255\008\001\008\001\008\001\
    \008\001\008\001\008\001\008\001\008\001\008\001\008\001\008\001\
    \008\001\008\001\008\001\008\001\045\001\010\001\255\255\008\001\
    \008\001\008\001\008\001\008\001\010\001\010\001\011\001\011\001\
    \044\001\044\001\011\001\011\001\011\001\011\001\011\001\255\255\
    \255\255\255\255\255\255\019\001\255\255\010\001\010\001\019\001\
    \019\001\019\001\019\001\019\001\019\001\255\255\255\255\255\255\
    \255\255\255\255\013\001\013\001\255\255\255\255\013\001\013\001\
    \013\001\013\001\013\001\255\255\255\255\255\255\255\255\255\255\
    \255\255\019\001\019\001\019\001\019\001\019\001\019\001\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \046\001\046\001\255\255\011\001\011\001\011\001\011\001\011\001\
    \011\001\011\001\011\001\011\001\011\001\011\001\011\001\011\001\
    \011\001\011\001\011\001\011\001\011\001\011\001\011\001\011\001\
    \255\255\255\255\011\001\011\001\011\001\011\001\011\001\013\001\
    \013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\
    \013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\
    \013\001\013\001\013\001\013\001\016\001\016\001\013\001\013\001\
    \013\001\013\001\013\001\255\255\016\001\046\001\255\255\255\255\
    \255\255\255\255\255\255\020\001\046\001\046\001\255\255\020\001\
    \020\001\020\001\020\001\020\001\020\001\255\255\255\255\255\255\
    \025\001\025\001\255\255\255\255\255\255\046\001\046\001\255\255\
    \025\001\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\020\001\020\001\020\001\020\001\020\001\020\001\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\016\001\016\001\016\001\016\001\255\255\016\001\016\001\
    \016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\
    \016\001\016\001\016\001\016\001\016\001\020\001\255\255\255\255\
    \016\001\016\001\016\001\016\001\016\001\025\001\025\001\025\001\
    \025\001\255\255\025\001\025\001\025\001\025\001\025\001\025\001\
    \025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\
    \025\001\255\255\255\255\255\255\025\001\025\001\025\001\025\001\
    \025\001\028\001\028\001\255\255\255\255\028\001\028\001\028\001\
    \028\001\028\001\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
    \255\255\255\255\255\255\255\255\255\255\255\255\028\001\028\001\
    \028\001\028\001\028\001\028\001\028\001\028\001\028\001\028\001\
    \028\001\028\001\028\001\028\001\028\001\028\001\028\001\028\001\
    \028\001\028\001\028\001\255\255\255\255\028\001\028\001\028\001\
    \028\001\028\001"
}

let rec scan_content engine lexbuf = 
  match engine lex_tables 0 lexbuf with
    0 -> (
# 175 "pxp_wlex.mll"
        scan_pi (Lexing.lexeme lexbuf) (scan_xml_pi engine), Content )
  | 1 -> (
# 177 "pxp_wlex.mll"
        raise (WF_error ("Illegal processing instruction")) )
  | 2 -> (
# 179 "pxp_wlex.mll"
        Comment_begin dummy_entity, Content_comment )
  | 3 -> (
# 182 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	if Lexing.lexeme_char lexbuf 1 = '/' then
	  Tag_end (sub_lexeme lexbuf 2 (l-2), dummy_entity), 
	  Within_tag 
	else
	  Tag_beg (sub_lexeme lexbuf 1 (l-1), dummy_entity), 
	  Within_tag 
      )
  | 4 -> (
# 191 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	Cdata (sub_lexeme lexbuf 9 (l-12)), Content )
  | 5 -> (
# 194 "pxp_wlex.mll"
        raise (WF_error "Declaration either malformed or not allowed in this context") 
      )
  | 6 -> (
# 197 "pxp_wlex.mll"
        raise (WF_error ("The left angle bracket '<' must be written as '&lt;'"))
      )
  | 7 -> (
# 200 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	CRef (int_of_string (sub_lexeme lexbuf 2 (l-3))), Content )
  | 8 -> (
# 203 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	CRef (int_of_string ("0x" ^ sub_lexeme lexbuf 3 (l-4))), Content )
  | 9 -> (
# 206 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	ERef (sub_lexeme lexbuf 1 (l-2)), Content )
  | 10 -> (
# 209 "pxp_wlex.mll"
        raise (WF_error ("The ampersand '&' must be written as '&amp;'"))
      )
  | 11 -> (
# 220 "pxp_wlex.mll"
        tok_LineEndCRLF__Content )
  | 12 -> (
# 222 "pxp_wlex.mll"
        tok_LineEndCR__Content )
  | 13 -> (
# 224 "pxp_wlex.mll"
        tok_LineEndLF__Content )
  | 14 -> (
# 226 "pxp_wlex.mll"
        tok_Eof__Content )
  | 15 -> (
# 228 "pxp_wlex.mll"
        raise (WF_error ("The sequence ']]>' must be written as ']]&gt;'"))
      )
  | 16 -> (
# 231 "pxp_wlex.mll"
        tok_CharDataRBRACKET__Content )
  | 17 -> (
# 233 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	CharData s, Content 
      )
  | 18 -> (
# 237 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_content]"

and scan_within_tag engine lexbuf = 
  match engine lex_tables 1 lexbuf with
    0 -> (
# 242 "pxp_wlex.mll"
        tok_IgnoreLineEnd__Within_tag )
  | 1 -> (
# 244 "pxp_wlex.mll"
        tok_IgnoreLineEnd__Within_tag )
  | 2 -> (
# 246 "pxp_wlex.mll"
        tok_IgnoreLineEnd__Within_tag )
  | 3 -> (
# 248 "pxp_wlex.mll"
        tok_Ignore__Within_tag )
  | 4 -> (
# 250 "pxp_wlex.mll"
        Name (Lexing.lexeme lexbuf ), Within_tag )
  | 5 -> (
# 252 "pxp_wlex.mll"
        tok_Eq__Within_tag )
  | 6 -> (
# 254 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	let v = sub_lexeme lexbuf 1 (l-2) in
	Attval v, Within_tag )
  | 7 -> (
# 258 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 8 -> (
# 261 "pxp_wlex.mll"
        let l = Lexing.lexeme_end lexbuf - Lexing.lexeme_start lexbuf in
	let v = sub_lexeme lexbuf 1 (l-2) in
	Attval v, Within_tag )
  | 9 -> (
# 265 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 10 -> (
# 268 "pxp_wlex.mll"
        tok_Rangle__Content )
  | 11 -> (
# 270 "pxp_wlex.mll"
        tok_Rangle_empty__Content )
  | 12 -> (
# 272 "pxp_wlex.mll"
        tok_Eof__Within_tag )
  | 13 -> (
# 274 "pxp_wlex.mll"
        raise (WF_error ("Illegal inside tags")) )
  | 14 -> (
# 276 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_within_tag]"

and scan_content_string engine lexbuf = 
  match engine lex_tables 2 lexbuf with
    0 -> (
# 283 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	ERef (String.sub s 1 (String.length s - 2)) )
  | 1 -> (
# 286 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	CRef (int_of_string (String.sub s 2 (String.length s - 3))) )
  | 2 -> (
# 289 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	CRef (int_of_string ("0x" ^ String.sub s 3 (String.length s - 4))) )
  | 3 -> (
# 292 "pxp_wlex.mll"
        raise(WF_error("The character '&' must be written as '&amp;'")) )
  | 4 -> (
# 294 "pxp_wlex.mll"
        CharData "" (* (Lexing.lexeme lexbuf) *) )
  | 5 -> (
# 296 "pxp_wlex.mll"
        CRef 32 )
  | 6 -> (
# 298 "pxp_wlex.mll"
        CRef(-1)   (* A special case *)
      )
  | 7 -> (
# 301 "pxp_wlex.mll"
        CRef 32 )
  | 8 -> (
# 303 "pxp_wlex.mll"
        CRef 32 )
  | 9 -> (
# 305 "pxp_wlex.mll"
        
	(* Depending on the situation, '<' may be legal or not: *)
	CharData "<" 
      )
  | 10 -> (
# 310 "pxp_wlex.mll"
        Eof )
  | 11 -> (
# 312 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_content_string]"

and scan_document engine lexbuf = 
  match engine lex_tables 3 lexbuf with
    0 -> (
# 319 "pxp_wlex.mll"
        scan_pi (Lexing.lexeme lexbuf) (scan_xml_pi engine), Document )
  | 1 -> (
# 321 "pxp_wlex.mll"
        raise (WF_error ("Illegal processing instruction")) )
  | 2 -> (
# 323 "pxp_wlex.mll"
        tok_Doctype__Document_type )
  | 3 -> (
# 325 "pxp_wlex.mll"
        Comment_begin dummy_entity, Document_comment )
  | 4 -> (
# 327 "pxp_wlex.mll"
        raise (WF_error "Declaration either malformed or not allowed in this context") 
      )
  | 5 -> (
# 330 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	Tag_beg (String.sub s 1 (String.length s - 1), dummy_entity), Within_tag
      )
  | 6 -> (
# 334 "pxp_wlex.mll"
        raise (WF_error ("Illegal token")) )
  | 7 -> (
# 336 "pxp_wlex.mll"
        tok_Ignore__Document )
  | 8 -> (
# 338 "pxp_wlex.mll"
        tok_Eof__Document )
  | 9 -> (
# 340 "pxp_wlex.mll"
        raise (WF_error ("Content not allowed here")) )
  | 10 -> (
# 342 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_document]"

and scan_document_type engine lexbuf = 
  match engine lex_tables 4 lexbuf with
    0 -> (
# 349 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	Name s, Document_type )
  | 1 -> (
# 352 "pxp_wlex.mll"
        tok_Ignore__Document_type )
  | 2 -> (
# 354 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	(Unparsed_string (String.sub s 1 (String.length s - 2))), Document_type )
  | 3 -> (
# 357 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 4 -> (
# 360 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	(Unparsed_string (String.sub s 1 (String.length s - 2))), Document_type )
  | 5 -> (
# 363 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 6 -> (
# 366 "pxp_wlex.mll"
        tok_Dtd_begin__Declaration )
  | 7 -> (
# 368 "pxp_wlex.mll"
        tok_Doctype_rangle__Document )
  | 8 -> (
# 370 "pxp_wlex.mll"
        tok_Eof__Document_type )
  | 9 -> (
# 372 "pxp_wlex.mll"
        raise (WF_error("References to general entities not allowed here")) )
  | 10 -> (
# 374 "pxp_wlex.mll"
        raise (WF_error("References to parameter entities not allowed here")) )
  | 11 -> (
# 376 "pxp_wlex.mll"
        raise (WF_error("Content not allowed here")) )
  | 12 -> (
# 378 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_document_type]"

and scan_declaration engine lexbuf = 
  match engine lex_tables 5 lexbuf with
    0 -> (
# 386 "pxp_wlex.mll"
        tok_Ignore__Declaration )
  | 1 -> (
# 388 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	(PERef (String.sub s 1 (String.length s - 2))), Declaration )
  | 2 -> (
# 391 "pxp_wlex.mll"
        tok_Percent__Declaration )
  | 3 -> (
# 393 "pxp_wlex.mll"
        raise(WF_error("References to general entities not allowed in DTDs")) )
  | 4 -> (
# 395 "pxp_wlex.mll"
        Name (Lexing.lexeme lexbuf), Declaration )
  | 5 -> (
# 397 "pxp_wlex.mll"
        Nametoken (Lexing.lexeme lexbuf), Declaration )
  | 6 -> (
# 399 "pxp_wlex.mll"
        tok_Plus__Declaration )
  | 7 -> (
# 401 "pxp_wlex.mll"
        tok_Star__Declaration )
  | 8 -> (
# 403 "pxp_wlex.mll"
        tok_Bar__Declaration )
  | 9 -> (
# 405 "pxp_wlex.mll"
        tok_Comma__Declaration )
  | 10 -> (
# 407 "pxp_wlex.mll"
        tok_Qmark__Declaration )
  | 11 -> (
# 409 "pxp_wlex.mll"
        tok_Lparen__Declaration )
  | 12 -> (
# 411 "pxp_wlex.mll"
        tok_RparenPlus__Declaration )
  | 13 -> (
# 413 "pxp_wlex.mll"
        tok_RparenStar__Declaration )
  | 14 -> (
# 415 "pxp_wlex.mll"
        tok_RparenQmark__Declaration )
  | 15 -> (
# 417 "pxp_wlex.mll"
        tok_Rparen__Declaration )
  | 16 -> (
# 419 "pxp_wlex.mll"
        tok_Required__Declaration )
  | 17 -> (
# 421 "pxp_wlex.mll"
        tok_Implied__Declaration )
  | 18 -> (
# 423 "pxp_wlex.mll"
        tok_Fixed__Declaration )
  | 19 -> (
# 425 "pxp_wlex.mll"
        tok_Pcdata__Declaration )
  | 20 -> (
# 427 "pxp_wlex.mll"
        tok_Decl_element__Declaration )
  | 21 -> (
# 429 "pxp_wlex.mll"
        tok_Decl_attlist__Declaration )
  | 22 -> (
# 431 "pxp_wlex.mll"
        tok_Decl_entity__Declaration )
  | 23 -> (
# 433 "pxp_wlex.mll"
        tok_Decl_notation__Declaration )
  | 24 -> (
# 435 "pxp_wlex.mll"
        Comment_begin dummy_entity, Decl_comment )
  | 25 -> (
# 437 "pxp_wlex.mll"
        tok_Conditional_begin__Declaration )
  | 26 -> (
# 439 "pxp_wlex.mll"
        tok_Conditional_end__Declaration )
  | 27 -> (
# 441 "pxp_wlex.mll"
        tok_Conditional_body__Declaration )
  | 28 -> (
# 446 "pxp_wlex.mll"
        scan_pi (Lexing.lexeme lexbuf) (scan_xml_pi engine), Declaration )
  | 29 -> (
# 448 "pxp_wlex.mll"
        raise (WF_error ("Illegal processing instruction")) )
  | 30 -> (
# 450 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	(Unparsed_string (String.sub s 1 (String.length s - 2))), Declaration )
  | 31 -> (
# 453 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 32 -> (
# 456 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	(Unparsed_string (String.sub s 1 (String.length s - 2))), Declaration )
  | 33 -> (
# 459 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 34 -> (
# 462 "pxp_wlex.mll"
        tok_Decl_rangle__Declaration )
  | 35 -> (
# 464 "pxp_wlex.mll"
        tok_Dtd_end__Document_type )
  | 36 -> (
# 466 "pxp_wlex.mll"
        tok_Eof__Declaration )
  | 37 -> (
# 468 "pxp_wlex.mll"
        raise (WF_error "Declaration either malformed or not allowed in this context") 
      )
  | 38 -> (
# 471 "pxp_wlex.mll"
        raise (WF_error("Illegal token or character")) )
  | 39 -> (
# 473 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_declaration]"

and scan_dtd_string engine lexbuf = 
  match engine lex_tables 6 lexbuf with
    0 -> (
# 482 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	PERef (String.sub s 1 (String.length s - 2)) )
  | 1 -> (
# 485 "pxp_wlex.mll"
        raise(WF_error("The character '%' must be written as '&#37;'")) )
  | 2 -> (
# 487 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	ERef (String.sub s 1 (String.length s - 2)) )
  | 3 -> (
# 490 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	CRef (int_of_string (String.sub s 2 (String.length s - 3))) )
  | 4 -> (
# 493 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	CRef (int_of_string ("0x" ^ String.sub s 3 (String.length s - 4))) )
  | 5 -> (
# 496 "pxp_wlex.mll"
        raise(WF_error("The character '&' must be written as '&amp;'")) )
  | 6 -> (
# 498 "pxp_wlex.mll"
        CRef(-1) )
  | 7 -> (
# 500 "pxp_wlex.mll"
        CRef(-2) )
  | 8 -> (
# 502 "pxp_wlex.mll"
        CRef(-3) )
  | 9 -> (
# 504 "pxp_wlex.mll"
        CharData "\009" )
  | 10 -> (
# 506 "pxp_wlex.mll"
        CharData (Lexing.lexeme lexbuf) )
  | 11 -> (
# 508 "pxp_wlex.mll"
        Eof )
  | 12 -> (
# 510 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_dtd_string]"

and scan_characters engine lexbuf = 
  match engine lex_tables 7 lexbuf with
    0 -> (
# 516 "pxp_wlex.mll"
      () )
  | 1 -> (
# 518 "pxp_wlex.mll"
      () )
  | 2 -> (
# 520 "pxp_wlex.mll"
      raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_characters]"

and scan_xml_pi engine lexbuf = 
  match engine lex_tables 8 lexbuf with
    0 -> (
# 525 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	let j = get_name_end s 0 in
	Pro_name (String.sub s 0 j)
      )
  | 1 -> (
# 530 "pxp_wlex.mll"
        Pro_eq )
  | 2 -> (
# 532 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	let j = String.index_from s 1 '\'' in
	Pro_string (String.sub s 1 (j-1))
      )
  | 3 -> (
# 537 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 4 -> (
# 540 "pxp_wlex.mll"
        let s = Lexing.lexeme lexbuf in
	let j = String.index_from s 1 '"' in
	Pro_string (String.sub s 1 (j-1))
      )
  | 5 -> (
# 545 "pxp_wlex.mll"
        raise (WF_error ("Cannot find the second quotation mark"))
      )
  | 6 -> (
# 548 "pxp_wlex.mll"
        Pro_eof )
  | 7 -> (
# 550 "pxp_wlex.mll"
        (* prerr_endline (Lexing.lexeme lexbuf); *)
	raise (WF_error("Illegal token or character")) 
      )
  | 8 -> (
# 554 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_xml_pi]"

and scan_only_xml_decl engine lexbuf = 
  match engine lex_tables 9 lexbuf with
    0 -> (
# 558 "pxp_wlex.mll"
        scan_pi (Lexing.lexeme lexbuf) (scan_xml_pi engine) )
  | 1 -> (
# 560 "pxp_wlex.mll"
        Eof )
  | _ -> failwith "lexing: empty token [scan_only_xml_decl]"

and scan_for_crlf engine lexbuf = 
  match engine lex_tables 10 lexbuf with
    0 -> (
# 564 "pxp_wlex.mll"
        CharData "\n" )
  | 1 -> (
# 566 "pxp_wlex.mll"
        CharData "\n" )
  | 2 -> (
# 568 "pxp_wlex.mll"
        CharData "\n" )
  | 3 -> (
# 570 "pxp_wlex.mll"
        CharData (Lexing.lexeme lexbuf) )
  | 4 -> (
# 572 "pxp_wlex.mll"
        Eof )
  | _ -> failwith "lexing: empty token [scan_for_crlf]"

and scan_content_comment engine lexbuf = 
  match engine lex_tables 11 lexbuf with
    0 -> (
# 576 "pxp_wlex.mll"
        Comment_end dummy_entity, Content )
  | 1 -> (
# 578 "pxp_wlex.mll"
        raise (WF_error "Double hyphens are illegal inside comments") )
  | 2 -> (
# 580 "pxp_wlex.mll"
        Comment_material "-", Content_comment )
  | 3 -> (
# 582 "pxp_wlex.mll"
        Comment_material(Lexing.lexeme lexbuf), Content_comment )
  | 4 -> (
# 584 "pxp_wlex.mll"
        Eof, Content_comment )
  | 5 -> (
# 586 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_content_comment]"

and scan_decl_comment engine lexbuf = 
  match engine lex_tables 12 lexbuf with
    0 -> (
# 593 "pxp_wlex.mll"
        Comment_end dummy_entity, Declaration )
  | 1 -> (
# 595 "pxp_wlex.mll"
        raise (WF_error "Double hyphens are illegal inside comments") )
  | 2 -> (
# 597 "pxp_wlex.mll"
        Comment_material "", Decl_comment )
  | 3 -> (
# 599 "pxp_wlex.mll"
        Comment_material "", Decl_comment )
  | 4 -> (
# 601 "pxp_wlex.mll"
        Eof, Decl_comment )
  | 5 -> (
# 603 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_decl_comment]"

and scan_document_comment engine lexbuf = 
  match engine lex_tables 13 lexbuf with
    0 -> (
# 608 "pxp_wlex.mll"
        Comment_end dummy_entity, Document )
  | 1 -> (
# 610 "pxp_wlex.mll"
        raise (WF_error "Double hyphens are illegal inside comments") )
  | 2 -> (
# 612 "pxp_wlex.mll"
        Comment_material "-", Document_comment )
  | 3 -> (
# 614 "pxp_wlex.mll"
        Comment_material(Lexing.lexeme lexbuf), Document_comment )
  | 4 -> (
# 616 "pxp_wlex.mll"
        Eof, Document_comment )
  | 5 -> (
# 618 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_document_comment]"

and scan_name_string engine lexbuf = 
  match engine lex_tables 14 lexbuf with
    0 -> (
# 623 "pxp_wlex.mll"
        Name (Lexing.lexeme lexbuf) )
  | 1 -> (
# 625 "pxp_wlex.mll"
        Ignore )
  | 2 -> (
# 627 "pxp_wlex.mll"
        Nametoken (Lexing.lexeme lexbuf) )
  | 3 -> (
# 629 "pxp_wlex.mll"
        Eof )
  | 4 -> (
# 631 "pxp_wlex.mll"
        CharData (Lexing.lexeme lexbuf) )
  | 5 -> (
# 633 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_name_string]"

and scan_ignored_section engine lexbuf = 
  match engine lex_tables 15 lexbuf with
    0 -> (
# 638 "pxp_wlex.mll"
        tok_Conditional_begin__Ignored )
  | 1 -> (
# 640 "pxp_wlex.mll"
        tok_Conditional_end__Ignored )
  | 2 -> (
# 642 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 3 -> (
# 644 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 4 -> (
# 646 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 5 -> (
# 648 "pxp_wlex.mll"
        tok_Eof__Ignored )
  | 6 -> (
# 650 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 7 -> (
# 652 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 8 -> (
# 654 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 9 -> (
# 656 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 10 -> (
# 658 "pxp_wlex.mll"
        tok_Ignore__Ignored )
  | 11 -> (
# 660 "pxp_wlex.mll"
        raise Netconversion.Malformed_code )
  | _ -> failwith "lexing: empty token [scan_ignored_section]"

;;


This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml