diff --git a/middle_end/flambda2/parser/flambda_lex.ml b/middle_end/flambda2/parser/flambda_lex.ml index 0d3d38e87b5..00b8e638021 100644 --- a/middle_end/flambda2/parser/flambda_lex.ml +++ b/middle_end/flambda2/parser/flambda_lex.ml @@ -178,34 +178,34 @@ let symbol cunit_ident cunit_linkage_name ident = # 179 "middle_end/flambda2/parser/flambda_lex.ml.new" let __ocaml_lex_tables = { Lexing.lex_base = - "\000\000\200\255\201\255\058\000\088\000\218\000\046\001\137\000\ - \130\001\211\255\212\255\213\255\215\255\082\000\068\000\087\000\ + "\000\000\201\255\202\255\058\000\088\000\218\000\046\001\137\000\ + \130\001\212\255\213\255\214\255\216\255\082\000\068\000\087\000\ \214\001\084\000\085\000\165\000\089\000\053\000\241\255\027\000\ \243\255\245\255\246\255\042\002\177\000\249\255\250\255\251\255\ - \252\255\110\000\007\000\255\255\253\255\118\000\222\255\118\000\ - \210\255\240\255\239\255\226\255\126\002\210\002\216\255\225\255\ + \252\255\110\000\007\000\255\255\253\255\118\000\223\255\118\000\ + \211\255\240\255\239\255\227\255\126\002\210\002\217\255\226\255\ \038\003\122\003\206\003\034\004\118\004\202\004\030\005\114\005\ - \224\255\223\255\198\005\217\255\220\255\135\000\136\000\221\255\ - \219\255\229\255\218\255\208\255\065\005\027\006\111\006\234\005\ + \225\255\224\255\198\005\218\255\221\255\135\000\136\000\220\255\ + \222\255\230\255\219\255\209\255\065\005\027\006\111\006\234\005\ \196\006\178\000\024\007\159\006\112\007\138\000\244\006\197\007\ - \207\255\075\007\028\008\207\255\112\008\196\008\024\009\108\009\ - \192\009\020\010\104\010\191\000\188\010\016\011\091\011\202\255\ + \208\255\075\007\028\008\208\255\112\008\196\008\024\009\108\009\ + \192\009\020\010\104\010\191\000\188\010\016\011\091\011\203\255\ \254\007\255\007\000\008\221\000\252\255\170\000\185\000\255\255\ \254\255\253\255"; Lexing.lex_backtrk = - "\255\255\255\255\255\255\055\000\050\000\050\000\048\000\055\000\ - \046\000\255\255\255\255\255\255\255\255\028\000\023\000\022\000\ - \021\000\020\000\019\000\018\000\017\000\041\000\255\255\013\000\ + "\255\255\255\255\255\255\054\000\049\000\049\000\047\000\054\000\ + \045\000\255\255\255\255\255\255\255\255\027\000\023\000\022\000\ + \021\000\020\000\019\000\018\000\017\000\040\000\255\255\013\000\ \255\255\255\255\255\255\008\000\007\000\255\255\255\255\255\255\ \255\255\011\000\001\000\255\255\255\255\255\255\255\255\255\255\ - \255\255\255\255\255\255\255\255\050\000\050\000\255\255\255\255\ - \052\000\050\000\052\000\050\000\050\000\050\000\050\000\050\000\ - \255\255\255\255\049\000\255\255\255\255\025\000\024\000\255\255\ - \255\255\255\255\255\255\255\255\255\255\048\000\255\255\255\255\ - \048\000\048\000\048\000\255\255\255\255\255\255\255\255\048\000\ - \255\255\255\255\048\000\255\255\052\000\051\000\050\000\050\000\ - \051\000\050\000\051\000\255\255\052\000\051\000\255\255\255\255\ - \255\255\255\255\053\000\255\255\255\255\003\000\003\000\255\255\ + \255\255\255\255\255\255\255\255\049\000\049\000\255\255\255\255\ + \051\000\049\000\051\000\049\000\049\000\049\000\049\000\049\000\ + \255\255\255\255\048\000\255\255\255\255\026\000\024\000\255\255\ + \255\255\255\255\255\255\255\255\255\255\047\000\255\255\255\255\ + \047\000\047\000\047\000\255\255\255\255\255\255\255\255\047\000\ + \255\255\255\255\047\000\255\255\051\000\050\000\049\000\049\000\ + \050\000\049\000\050\000\255\255\051\000\050\000\255\255\255\255\ + \255\255\255\255\052\000\255\255\255\255\003\000\003\000\255\255\ \255\255\255\255"; Lexing.lex_default = "\001\000\000\000\000\000\096\000\255\255\255\255\255\255\068\000\ @@ -241,7 +241,7 @@ let __ocaml_lex_tables = { \008\000\008\000\008\000\026\000\021\000\025\000\011\000\048\000\ \066\000\065\000\057\000\056\000\059\000\060\000\085\000\043\000\ \004\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\ - \004\000\004\000\042\000\255\255\061\000\062\000\097\000\041\000\ + \004\000\004\000\042\000\255\255\062\000\061\000\097\000\041\000\ \036\000\048\000\048\000\048\000\048\000\084\000\048\000\049\000\ \049\000\049\000\049\000\049\000\049\000\049\000\049\000\049\000\ \049\000\049\000\049\000\049\000\049\000\049\000\049\000\049\000\ @@ -1394,223 +1394,218 @@ and __ocaml_lex_token_rec lexbuf __ocaml_lex_state = | 24 -> # 252 "middle_end/flambda2/parser/flambda_lex.mll" - ( LESSGREATER ) + ( LESSEQUAL ) # 1399 "middle_end/flambda2/parser/flambda_lex.ml.new" | 25 -> # 253 "middle_end/flambda2/parser/flambda_lex.mll" - ( LESSEQUAL ) + ( GREATEREQUAL ) # 1404 "middle_end/flambda2/parser/flambda_lex.ml.new" | 26 -> # 254 "middle_end/flambda2/parser/flambda_lex.mll" - ( GREATEREQUAL ) + ( NOTEQUAL ) # 1409 "middle_end/flambda2/parser/flambda_lex.ml.new" | 27 -> # 255 "middle_end/flambda2/parser/flambda_lex.mll" - ( NOTEQUAL ) + ( QMARK ) # 1414 "middle_end/flambda2/parser/flambda_lex.ml.new" | 28 -> # 256 "middle_end/flambda2/parser/flambda_lex.mll" - ( QMARK ) + ( PLUSDOT ) # 1419 "middle_end/flambda2/parser/flambda_lex.ml.new" | 29 -> # 257 "middle_end/flambda2/parser/flambda_lex.mll" - ( PLUSDOT ) + ( MINUSDOT ) # 1424 "middle_end/flambda2/parser/flambda_lex.ml.new" | 30 -> # 258 "middle_end/flambda2/parser/flambda_lex.mll" - ( MINUSDOT ) + ( STARDOT ) # 1429 "middle_end/flambda2/parser/flambda_lex.ml.new" | 31 -> # 259 "middle_end/flambda2/parser/flambda_lex.mll" - ( STARDOT ) + ( SLASHDOT ) # 1434 "middle_end/flambda2/parser/flambda_lex.ml.new" | 32 -> # 260 "middle_end/flambda2/parser/flambda_lex.mll" - ( SLASHDOT ) + ( EQUALDOT ) # 1439 "middle_end/flambda2/parser/flambda_lex.ml.new" | 33 -> # 261 "middle_end/flambda2/parser/flambda_lex.mll" - ( EQUALDOT ) + ( NOTEQUALDOT ) # 1444 "middle_end/flambda2/parser/flambda_lex.ml.new" | 34 -> # 262 "middle_end/flambda2/parser/flambda_lex.mll" - ( NOTEQUALDOT ) + ( LESSDOT ) # 1449 "middle_end/flambda2/parser/flambda_lex.ml.new" | 35 -> # 263 "middle_end/flambda2/parser/flambda_lex.mll" - ( LESSDOT ) + ( LESSEQUALDOT ) # 1454 "middle_end/flambda2/parser/flambda_lex.ml.new" | 36 -> # 264 "middle_end/flambda2/parser/flambda_lex.mll" - ( LESSEQUALDOT ) + ( QMARKDOT ) # 1459 "middle_end/flambda2/parser/flambda_lex.ml.new" | 37 -> # 265 "middle_end/flambda2/parser/flambda_lex.mll" - ( QMARKDOT ) + ( LESSMINUS ) # 1464 "middle_end/flambda2/parser/flambda_lex.ml.new" | 38 -> # 266 "middle_end/flambda2/parser/flambda_lex.mll" - ( LESSMINUS ) + ( MINUSGREATER ) # 1469 "middle_end/flambda2/parser/flambda_lex.ml.new" | 39 -> # 267 "middle_end/flambda2/parser/flambda_lex.mll" - ( MINUSGREATER ) + ( AT ) # 1474 "middle_end/flambda2/parser/flambda_lex.ml.new" | 40 -> # 268 "middle_end/flambda2/parser/flambda_lex.mll" - ( AT ) + ( PIPE ) # 1479 "middle_end/flambda2/parser/flambda_lex.ml.new" | 41 -> # 269 "middle_end/flambda2/parser/flambda_lex.mll" - ( PIPE ) + ( TILDE ) # 1484 "middle_end/flambda2/parser/flambda_lex.ml.new" | 42 -> # 270 "middle_end/flambda2/parser/flambda_lex.mll" - ( TILDE ) + ( AMP ) # 1489 "middle_end/flambda2/parser/flambda_lex.ml.new" | 43 -> # 271 "middle_end/flambda2/parser/flambda_lex.mll" - ( AMP ) + ( CARET ) # 1494 "middle_end/flambda2/parser/flambda_lex.ml.new" | 44 -> # 272 "middle_end/flambda2/parser/flambda_lex.mll" - ( CARET ) + ( BIGARROW ) # 1499 "middle_end/flambda2/parser/flambda_lex.ml.new" | 45 -> -# 273 "middle_end/flambda2/parser/flambda_lex.mll" - ( BIGARROW ) -# 1504 "middle_end/flambda2/parser/flambda_lex.ml.new" - - | 46 -> let -# 274 "middle_end/flambda2/parser/flambda_lex.mll" +# 273 "middle_end/flambda2/parser/flambda_lex.mll" ident -# 1510 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1505 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in -# 275 "middle_end/flambda2/parser/flambda_lex.mll" +# 274 "middle_end/flambda2/parser/flambda_lex.mll" ( ident_or_keyword ident ) -# 1514 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1509 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 47 -> + | 46 -> let -# 276 "middle_end/flambda2/parser/flambda_lex.mll" +# 275 "middle_end/flambda2/parser/flambda_lex.mll" ident -# 1520 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1515 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in -# 277 "middle_end/flambda2/parser/flambda_lex.mll" +# 276 "middle_end/flambda2/parser/flambda_lex.mll" ( IDENT (unquote_ident ident) ) -# 1524 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1519 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 48 -> + | 47 -> let -# 279 "middle_end/flambda2/parser/flambda_lex.mll" +# 278 "middle_end/flambda2/parser/flambda_lex.mll" cunit_ident -# 1530 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1525 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme_opt lexbuf lexbuf.Lexing.lex_mem.(2) lexbuf.Lexing.lex_mem.(1) and -# 280 "middle_end/flambda2/parser/flambda_lex.mll" +# 279 "middle_end/flambda2/parser/flambda_lex.mll" cunit_linkage_name -# 1535 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1530 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme_opt lexbuf lexbuf.Lexing.lex_mem.(4) lexbuf.Lexing.lex_mem.(3) and -# 282 "middle_end/flambda2/parser/flambda_lex.mll" +# 281 "middle_end/flambda2/parser/flambda_lex.mll" ident -# 1540 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1535 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_mem.(0) lexbuf.Lexing.lex_curr_pos in -# 283 "middle_end/flambda2/parser/flambda_lex.mll" +# 282 "middle_end/flambda2/parser/flambda_lex.mll" ( symbol cunit_ident cunit_linkage_name ident ) -# 1544 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1539 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 49 -> + | 48 -> let -# 284 "middle_end/flambda2/parser/flambda_lex.mll" +# 283 "middle_end/flambda2/parser/flambda_lex.mll" p -# 1550 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1545 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf (lexbuf.Lexing.lex_start_pos + 1) lexbuf.Lexing.lex_curr_pos in -# 285 "middle_end/flambda2/parser/flambda_lex.mll" +# 284 "middle_end/flambda2/parser/flambda_lex.mll" ( prim ~lexbuf p ) -# 1554 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1549 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 50 -> + | 49 -> let -# 286 "middle_end/flambda2/parser/flambda_lex.mll" +# 285 "middle_end/flambda2/parser/flambda_lex.mll" lit -# 1560 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1555 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_mem.(0) and -# 286 "middle_end/flambda2/parser/flambda_lex.mll" +# 285 "middle_end/flambda2/parser/flambda_lex.mll" modif -# 1565 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1560 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme_char_opt lexbuf lexbuf.Lexing.lex_mem.(1) in -# 287 "middle_end/flambda2/parser/flambda_lex.mll" +# 286 "middle_end/flambda2/parser/flambda_lex.mll" ( INT (lit, modif) ) -# 1569 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1564 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 51 -> + | 50 -> let -# 288 "middle_end/flambda2/parser/flambda_lex.mll" +# 287 "middle_end/flambda2/parser/flambda_lex.mll" lit -# 1575 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1570 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in -# 289 "middle_end/flambda2/parser/flambda_lex.mll" +# 288 "middle_end/flambda2/parser/flambda_lex.mll" ( FLOAT (lit |> Float.of_string) ) -# 1579 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1574 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 52 -> + | 51 -> let -# 290 "middle_end/flambda2/parser/flambda_lex.mll" +# 289 "middle_end/flambda2/parser/flambda_lex.mll" lit -# 1585 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1580 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in -# 291 "middle_end/flambda2/parser/flambda_lex.mll" +# 290 "middle_end/flambda2/parser/flambda_lex.mll" ( error ~lexbuf (Invalid_literal lit) ) -# 1589 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1584 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 53 -> + | 52 -> let -# 292 "middle_end/flambda2/parser/flambda_lex.mll" +# 291 "middle_end/flambda2/parser/flambda_lex.mll" s -# 1595 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1590 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme lexbuf (lexbuf.Lexing.lex_start_pos + 1) (lexbuf.Lexing.lex_curr_pos + -1) in -# 294 "middle_end/flambda2/parser/flambda_lex.mll" +# 293 "middle_end/flambda2/parser/flambda_lex.mll" ( STRING s ) -# 1599 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1594 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 54 -> -# 295 "middle_end/flambda2/parser/flambda_lex.mll" + | 53 -> +# 294 "middle_end/flambda2/parser/flambda_lex.mll" ( EOF ) -# 1604 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1599 "middle_end/flambda2/parser/flambda_lex.ml.new" - | 55 -> + | 54 -> let -# 296 "middle_end/flambda2/parser/flambda_lex.mll" +# 295 "middle_end/flambda2/parser/flambda_lex.mll" ch -# 1610 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1605 "middle_end/flambda2/parser/flambda_lex.ml.new" = Lexing.sub_lexeme_char lexbuf lexbuf.Lexing.lex_start_pos in -# 297 "middle_end/flambda2/parser/flambda_lex.mll" +# 296 "middle_end/flambda2/parser/flambda_lex.mll" ( error ~lexbuf (Illegal_character ch) ) -# 1614 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1609 "middle_end/flambda2/parser/flambda_lex.ml.new" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_token_rec lexbuf __ocaml_lex_state @@ -1620,25 +1615,25 @@ and comment n lexbuf = and __ocaml_lex_comment_rec n lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> -# 301 "middle_end/flambda2/parser/flambda_lex.mll" +# 300 "middle_end/flambda2/parser/flambda_lex.mll" ( Lexing.new_line lexbuf; comment n lexbuf ) -# 1626 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1621 "middle_end/flambda2/parser/flambda_lex.ml.new" | 1 -> -# 303 "middle_end/flambda2/parser/flambda_lex.mll" +# 302 "middle_end/flambda2/parser/flambda_lex.mll" ( if n = 1 then () else comment (n-1) lexbuf ) -# 1632 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1627 "middle_end/flambda2/parser/flambda_lex.ml.new" | 2 -> -# 306 "middle_end/flambda2/parser/flambda_lex.mll" +# 305 "middle_end/flambda2/parser/flambda_lex.mll" ( comment (n+1) lexbuf ) -# 1637 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1632 "middle_end/flambda2/parser/flambda_lex.ml.new" | 3 -> -# 308 "middle_end/flambda2/parser/flambda_lex.mll" +# 307 "middle_end/flambda2/parser/flambda_lex.mll" ( comment n lexbuf ) -# 1642 "middle_end/flambda2/parser/flambda_lex.ml.new" +# 1637 "middle_end/flambda2/parser/flambda_lex.ml.new" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_comment_rec n lexbuf __ocaml_lex_state diff --git a/middle_end/flambda2/parser/flambda_lex.mll b/middle_end/flambda2/parser/flambda_lex.mll index edffabf1850..247dd677a3b 100644 --- a/middle_end/flambda2/parser/flambda_lex.mll +++ b/middle_end/flambda2/parser/flambda_lex.mll @@ -249,7 +249,6 @@ rule token = parse | "%" { PERCENT } | "<" { LESS } | ">" { GREATER } - | "<>" { LESSGREATER } | "<=" { LESSEQUAL } | ">=" { GREATEREQUAL } | "<>" { NOTEQUAL } diff --git a/middle_end/flambda2/parser/flambda_parser.ml b/middle_end/flambda2/parser/flambda_parser.ml index 5b8bc8b9321..a6f347914ad 100644 --- a/middle_end/flambda2/parser/flambda_parser.ml +++ b/middle_end/flambda2/parser/flambda_parser.ml @@ -11,12 +11,12 @@ module MenhirBasics = struct type token = | TILDE | SYMBOL of ( -# 106 "flambda_parser.mly" +# 105 "flambda_parser.mly" (Fexpr.compilation_unit option * string) # 17 "flambda_parser_in.ml" ) | STRING of ( -# 105 "flambda_parser.mly" +# 104 "flambda_parser.mly" (string) # 22 "flambda_parser_in.ml" ) @@ -76,7 +76,6 @@ module MenhirBasics = struct | MINUS | LPAREN | LESSMINUS - | LESSGREATER | LESSEQUALDOT | LESSEQUAL | LESSDOT @@ -162,12 +161,12 @@ module MenhirBasics = struct | INT of ( # 74 "flambda_parser.mly" (string * char option) -# 166 "flambda_parser_in.ml" +# 165 "flambda_parser_in.ml" ) | IDENT of ( # 73 "flambda_parser.mly" (string) -# 171 "flambda_parser_in.ml" +# 170 "flambda_parser_in.ml" ) | GREATEREQUALDOT | GREATEREQUAL @@ -176,7 +175,7 @@ module MenhirBasics = struct | FLOAT of ( # 68 "flambda_parser.mly" (float) -# 180 "flambda_parser_in.ml" +# 179 "flambda_parser_in.ml" ) | EQUALDOT | EQUAL @@ -252,7 +251,7 @@ let make_boxed_const_int (i, m) : static_data = | Some c -> Misc.fatal_errorf "Bad int modifier for static data: %c" c -# 256 "flambda_parser_in.ml" +# 255 "flambda_parser_in.ml" module Tables = struct @@ -262,206 +261,204 @@ module Tables = struct fun _tok -> match _tok with | AMP -> - 160 - | AT -> 159 - | BIGARROW -> + | AT -> 158 - | BLANK -> + | BIGARROW -> 157 - | CARET -> + | BLANK -> 156 - | COLON -> + | CARET -> 155 - | COMMA -> + | COLON -> 154 - | DOT -> + | COMMA -> 153 - | EOF -> + | DOT -> 152 - | EQUAL -> + | EOF -> 151 - | EQUALDOT -> + | EQUAL -> 150 - | FLOAT _ -> + | EQUALDOT -> 149 - | GREATER -> + | FLOAT _ -> 148 - | GREATERDOT -> + | GREATER -> 147 - | GREATEREQUAL -> + | GREATERDOT -> 146 - | GREATEREQUALDOT -> + | GREATEREQUAL -> 145 - | IDENT _ -> + | GREATEREQUALDOT -> 144 - | INT _ -> + | IDENT _ -> 143 - | KWD_ALWAYS -> + | INT _ -> 142 - | KWD_AND -> + | KWD_ALWAYS -> 141 - | KWD_ANDWHERE -> + | KWD_AND -> 140 - | KWD_ANY -> + | KWD_ANDWHERE -> 139 - | KWD_APPLY -> + | KWD_ANY -> 138 - | KWD_ARRAY -> + | KWD_APPLY -> 137 - | KWD_ASR -> + | KWD_ARRAY -> 136 - | KWD_AVAILABLE -> + | KWD_ASR -> 135 - | KWD_BOXED -> + | KWD_AVAILABLE -> 134 - | KWD_CCALL -> + | KWD_BOXED -> 133 - | KWD_CLOSURE -> + | KWD_CCALL -> 132 - | KWD_CODE -> + | KWD_CLOSURE -> 131 - | KWD_CONT -> + | KWD_CODE -> 130 - | KWD_DEFAULT -> + | KWD_CONT -> 129 - | KWD_DEFINE_ROOT_SYMBOL -> + | KWD_DEFAULT -> 128 - | KWD_DELETED -> + | KWD_DEFINE_ROOT_SYMBOL -> 127 - | KWD_DEPTH -> + | KWD_DELETED -> 126 - | KWD_DIRECT -> + | KWD_DEPTH -> 125 - | KWD_DONE -> + | KWD_DIRECT -> 124 - | KWD_DO_NOT_INLINE -> + | KWD_DONE -> 123 - | KWD_END -> + | KWD_DO_NOT_INLINE -> 122 - | KWD_ERROR -> + | KWD_END -> 121 - | KWD_EXN -> + | KWD_ERROR -> 120 - | KWD_FLOAT -> + | KWD_EXN -> 119 - | KWD_HCF -> + | KWD_FLOAT -> 118 - | KWD_HEAP_OR_LOCAL -> + | KWD_HCF -> 117 - | KWD_HINT -> + | KWD_HEAP_OR_LOCAL -> 116 - | KWD_ID -> + | KWD_HINT -> 115 - | KWD_IMM -> + | KWD_ID -> 114 - | KWD_IMMUTABLE_UNIQUE -> + | KWD_IMM -> 113 - | KWD_IN -> + | KWD_IMMUTABLE_UNIQUE -> 112 - | KWD_INF -> + | KWD_IN -> 111 - | KWD_INLINE -> + | KWD_INF -> 110 - | KWD_INLINED -> + | KWD_INLINE -> 109 - | KWD_INLINING_STATE -> + | KWD_INLINED -> 108 - | KWD_INT32 -> + | KWD_INLINING_STATE -> 107 - | KWD_INT64 -> + | KWD_INT32 -> 106 - | KWD_LAND -> + | KWD_INT64 -> 105 - | KWD_LET -> + | KWD_LAND -> 104 - | KWD_LOCAL -> + | KWD_LET -> 103 - | KWD_LOOPIFY -> + | KWD_LOCAL -> 102 - | KWD_LOR -> + | KWD_LOOPIFY -> 101 - | KWD_LSL -> + | KWD_LOR -> 100 - | KWD_LSR -> + | KWD_LSL -> 99 - | KWD_LXOR -> + | KWD_LSR -> 98 - | KWD_MUTABLE -> + | KWD_LXOR -> 97 - | KWD_NATIVEINT -> + | KWD_MUTABLE -> 96 - | KWD_NEVER -> + | KWD_NATIVEINT -> 95 - | KWD_NEWER_VERSION_OF -> + | KWD_NEVER -> 94 - | KWD_NOALLOC -> + | KWD_NEWER_VERSION_OF -> 93 - | KWD_NOTRACE -> + | KWD_NOALLOC -> 92 - | KWD_OF -> + | KWD_NOTRACE -> 91 - | KWD_POP -> + | KWD_OF -> 90 - | KWD_PUSH -> + | KWD_POP -> 89 - | KWD_REC -> + | KWD_PUSH -> 88 - | KWD_REC_INFO -> + | KWD_REC -> 87 - | KWD_REGION -> + | KWD_REC_INFO -> 86 - | KWD_REGULAR -> + | KWD_REGION -> 85 - | KWD_RERAISE -> + | KWD_REGULAR -> 84 - | KWD_SET_OF_CLOSURES -> + | KWD_RERAISE -> 83 - | KWD_SIZE -> + | KWD_SET_OF_CLOSURES -> 82 - | KWD_SUCC -> + | KWD_SIZE -> 81 - | KWD_SWITCH -> + | KWD_SUCC -> 80 - | KWD_TAG -> + | KWD_SWITCH -> 79 - | KWD_TAGGED -> + | KWD_TAG -> 78 - | KWD_TAILREC -> + | KWD_TAGGED -> 77 - | KWD_TOPLEVEL -> + | KWD_TAILREC -> 76 - | KWD_TUPLED -> + | KWD_TOPLEVEL -> 75 - | KWD_UNIT -> + | KWD_TUPLED -> 74 - | KWD_UNREACHABLE -> + | KWD_UNIT -> 73 - | KWD_UNROLL -> + | KWD_UNREACHABLE -> 72 - | KWD_UNSIGNED -> + | KWD_UNROLL -> 71 - | KWD_VAL -> + | KWD_UNSIGNED -> 70 - | KWD_WHERE -> + | KWD_VAL -> 69 - | KWD_WITH -> + | KWD_WHERE -> 68 - | LBRACE -> + | KWD_WITH -> 67 - | LBRACK -> + | LBRACE -> 66 - | LBRACKPIPE -> + | LBRACK -> 65 - | LESS -> + | LBRACKPIPE -> 64 - | LESSDOT -> + | LESS -> 63 - | LESSEQUAL -> + | LESSDOT -> 62 - | LESSEQUALDOT -> + | LESSEQUAL -> 61 - | LESSGREATER -> + | LESSEQUALDOT -> 60 | LESSMINUS -> 59 @@ -788,8 +785,6 @@ module Tables = struct Obj.repr () | LESSEQUALDOT -> Obj.repr () - | LESSGREATER -> - Obj.repr () | LESSMINUS -> Obj.repr () | LPAREN -> @@ -910,22 +905,22 @@ module Tables = struct Obj.repr () and default_reduction = - (16, "\000\000\000\000\000\014\000\000\0018\0009\001\\\000:\001\012\001\011\000\000\000\000\0007\000\000\000\000\000\000\000\214\000\000\000\225\000\226\000\227\000\223\000\224\000\000\000\222\000\221\000\000\000\228\000\000\000\000\0008\001\014\000\201\000\016\000\000\001>\000\000\000\000\001\020\001\019\000@\000<\000;\000\000\000\000\000\000\000\000\001C\000\000\000\000\000\219\000\218\000\220\000\211\000\000\000\000\001D\000\213\000\000\000\000\000\000\000\000\000\244\001\r\000\000\001\016\000\b\0017\000\000\000\000\001\000\000\172\0016\000\000\000\000\000\000\000\000\000\000\0005\000\000\000\000\000e\000g\000\000\000\000\000\232\000\231\000\004\000b\001\026\000\000\000\000\000\248\000\000\000\000\000\000\001[\000\000\000\000\000\000\000\000\000\000\001\004\000\176\000\000\001_\000\000\001(\000\000\000\230\000\000\000\000\000\000\000\000\000s\000\000\000\000\000\000\000r\000\000\000t\000\000\000q\000\000\000p\000\000\000\000\000\000\000\157\000\158\000\000\000\159\000\156\000\000\000\162\000\000\000\000\000\000\0006\000\000\000\000\000\000\000\000\000\000\000\196\000\000\000/\000\000\0004\000\209\000\203\000\000\000O\000\000\000\000\001Y\001X\001W\001V\001U\001T\001S\000\000\000\000\000\000\001Q\000\000\000\000\000\000\000\000\000\000\001R\000\217\000\216\001P\000\000\000\000\000I\000H\000G\000\000\000D\000F\000\000\000\000\000\000\001O\001N\001M\000\000\001\025\001\024\001\023\001\022\000\000\000\000\000\134\000\133\000\135\000\000\000\000\000\000\000\000\001\n\000\000\000\000\000\132\000\131\000\128\000\129\000~\000\130\000\127\000\000\000\000\000\000\000\000\000\000\000\025\000\026\000\023\000\027\000\024\000\030\000\029\000\028\000\000\000\000\001L\001K\001J\000\000\001I\000\000\001H\000\000\001G\000\000\001F\000\000\000\178\000\179\000\000\000)\000\000\000\000\000\000\001A\000\000\001\018\000+\000\215\000\000\000\000\000\000\000\000\001?\000\000\000*\000\000\000\000\000\000\000\000\000\000\000\168\000\000\000'\000\199\000\000\000\011\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000o\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\001E\000\000\000\195\000\000\000\000\000\192\000\000\000\021\000\022\000_\000\019\000Z\000\020\000]\000[\000^\000\\\000Y\000j\000i\000\000\000\000\000l\000h\000k\000\000\000\000\000\000\000\000\000\000\000\031\000\189\000\149\000\194\000\193\000\191\000\000\000\000\000\000\000\000\001\"\000\000\000\000\000`\000a\000\166\000\000\001\031\000\000\000\000\000\240\000\000\000\000\000\174\000\000\001 \000\000\000\000\001\002\000\000\000\000\000\000\000\000\000W\000V\000U\000\164\000\000\001\027\000\000\000\000\000\238\000\000\001!\001\029\001\028\000\000\000\000\000\000\001'\000\000\001&\000\000\001%\000\000\001$\001\030\001#\001=\0019\001<\000\250\001;\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0013\000\000\001-\000\000\001,\000\000\001+\000\000\001.\0012\000\000\001*\0011\000\000\001/\000\000\0014\000\197\000\000\000\000\001\b\0015\000\198\000N\000\000\000\000\000\254\000M\000K\000\000\0010\000\138\000\139\000\000\000\000\000\000\000\000\000\000\000\137\000\136\000\141\000\144\000\000\000\143\000\000\000\000\000\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000Q\000\000\000\000\000\145\000\146\000\236\000\000\000\000\001\006\000\000\000\000\000\r\000\000\000\015\000\000\000\007\000\006\000\000\000\000\000\000\000\000\000\000\0001\000\000\000-\0002\000\000\000\000\000\000\000\000\000x\000\000\000\000\000\000\000w\000\000\000v\000\000\000y\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000{\000\000\000z\000\000\000\000\000\187\000\186\000\000\000\000\000%\000&\000\000\000\000\000\000\000d\000c\000\000\000\000\000\000\000\000\000\000\000\234\000\000\000\000\000P\000\t\000\233\000\207\000\205\000\017\0000\000|\000\153\000S\000\000\000\000\000\000\000\170\001]\000\000\000B\000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\151\000>\000\154\000?\000\000\000\000\000\000\000\147\000\000\000\000\000\246\000\150\001:\000=\000\000\000\000\000\252\0003\000}\000\000\000\000\000\000\000\155\000\000\000\000\000\000\000\148\000\152\000\000\000\018\000\000\000\000\000\000\000R\000\177\000\001\000\000\000\000\000X\000\002") + (16, "\000\000\000\000\000\014\000\000\0017\0009\001[\000:\001\011\001\n\000\000\000\000\0007\000\000\000\000\000\000\000\213\000\000\000\224\000\225\000\226\000\222\000\223\000\000\000\221\000\220\000\000\000\227\000\000\000\000\0008\001\r\000\200\000\016\000\000\001=\000\000\000\000\001\019\001\018\000@\000<\000;\000\000\000\000\000\000\000\000\001B\000\000\000\000\000\218\000\217\000\219\000\210\000\000\000\000\001C\000\212\000\000\000\000\000\000\000\000\000\243\001\012\000\000\001\015\000\b\0016\000\000\000\000\000\255\000\171\0015\000\000\000\000\000\000\000\000\000\000\0005\000\000\000\000\000e\000g\000\000\000\000\000\231\000\230\000\004\000b\001\025\000\000\000\000\000\247\000\000\000\000\000\000\001Z\000\000\000\000\000\000\000\000\000\000\001\003\000\175\000\000\001^\000\000\001'\000\000\000\229\000\000\000\000\000\000\000\000\000s\000\000\000\000\000\000\000r\000\000\000t\000\000\000q\000\000\000p\000\000\000\000\000\000\000\156\000\157\000\000\000\158\000\155\000\000\000\161\000\000\000\000\000\000\0006\000\000\000\000\000\000\000\000\000\000\000\195\000\000\000/\000\000\0004\000\208\000\202\000\000\000O\000\000\000\000\001X\001W\001V\001U\001T\001S\001R\000\000\000\000\000\000\001P\000\000\000\000\000\000\000\000\000\000\001Q\000\216\000\215\001O\000\000\000\000\000I\000H\000G\000\000\000D\000F\000\000\000\000\000\000\001N\001M\001L\000\000\001\024\001\023\001\022\001\021\000\000\000\000\000\133\000\132\000\134\000\000\000\000\000\000\000\000\001\t\000\000\000\000\000\131\000\130\000\128\000~\000\129\000\127\000\000\000\000\000\000\000\000\000\000\000\025\000\026\000\023\000\027\000\024\000\030\000\029\000\028\000\000\000\000\001K\001J\001I\000\000\001H\000\000\001G\000\000\001F\000\000\001E\000\000\000\177\000\178\000\000\000)\000\000\000\000\000\000\001@\000\000\001\017\000+\000\214\000\000\000\000\000\000\000\000\001>\000\000\000*\000\000\000\000\000\000\000\000\000\000\000\167\000\000\000'\000\198\000\000\000\011\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000o\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\001D\000\000\000\194\000\000\000\000\000\191\000\000\000\021\000\022\000_\000\019\000Z\000\020\000]\000[\000^\000\\\000Y\000j\000i\000\000\000\000\000l\000h\000k\000\000\000\000\000\000\000\000\000\000\000\031\000\188\000\148\000\193\000\192\000\190\000\000\000\000\000\000\000\000\001!\000\000\000\000\000`\000a\000\165\000\000\001\030\000\000\000\000\000\239\000\000\000\000\000\173\000\000\001\031\000\000\000\000\001\001\000\000\000\000\000\000\000\000\000W\000V\000U\000\163\000\000\001\026\000\000\000\000\000\237\000\000\001 \001\028\001\027\000\000\000\000\000\000\001&\000\000\001%\000\000\001$\000\000\001#\001\029\001\"\001<\0018\001;\000\249\001:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\000\000\001,\000\000\001+\000\000\001*\000\000\001-\0011\000\000\001)\0010\000\000\001.\000\000\0013\000\196\000\000\000\000\001\007\0014\000\197\000N\000\000\000\000\000\253\000M\000K\000\000\001/\000\137\000\138\000\000\000\000\000\000\000\000\000\000\000\136\000\135\000\140\000\143\000\000\000\142\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000Q\000\000\000\000\000\144\000\145\000\235\000\000\000\000\001\005\000\000\000\000\000\r\000\000\000\015\000\000\000\007\000\006\000\000\000\000\000\000\000\000\000\000\0001\000\000\000-\0002\000\000\000\000\000\000\000\000\000x\000\000\000\000\000\000\000w\000\000\000v\000\000\000y\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000{\000\000\000z\000\000\000\000\000\186\000\185\000\000\000\000\000%\000&\000\000\000\000\000\000\000d\000c\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\000P\000\t\000\232\000\206\000\204\000\017\0000\000|\000\152\000S\000\000\000\000\000\000\000\169\001\\\000\000\000B\000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\150\000>\000\153\000?\000\000\000\000\000\000\000\146\000\000\000\000\000\245\000\149\0019\000=\000\000\000\000\000\251\0003\000}\000\000\000\000\000\000\000\154\000\000\000\000\000\000\000\147\000\151\000\000\000\018\000\000\000\000\000\000\000R\000\176\000\001\000\000\000\000\000X\000\002") and error = - (161, "\000\000\000\000\000\000\000 \000@\128\000\000\128\002\000 \000\000\000\000\000\000\000\000\000\016\000 @\000\000@\001\000\016\016\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\000\000\000\000\000\000\000\000\000\000\000\000\0000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\002\000\000\000\000\004\000\003\000\000\000\000\000 \000\000\003@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\004\002\000\000\000\b\000\128\000\012\000\000\000\000\000\000\000\000\000\128\002\001\000\000\000\004\000@\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\128\b\000\000\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\004\002\000\000\000\b\000\128\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\003\000\000\000\000\000 \000\000\003@ \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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\002\004\001\128\000\012\000\000\016\000\000\001\128\016@\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\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\006\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\002\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\004\b\003\000\000\000\000\000 \000\000\003\000 \132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\128\004\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\001\000\000\192\000\000\000\000\b\000\000\000\192\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\b\000@\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\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\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\016\000\000\000\000\001\000@\000\b\000\003\000\000\000\000\000\000\000\000\000\000\000\000\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\000\001\000\000\000\000\000\016\004\000\000\128\000\016\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\b\000\001\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\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\002\000\000\000\000\000\000\000\000\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\128\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\b\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\002\b\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\128\000\b\b\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\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\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\016\000\000\000\004\016 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\016\000\000\000\000\000\000\000\000\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\002\000\000\000\016\128\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\002\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\000\000 \000\000\000\000\000\b\000\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\002\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\000\015\255\255\255\224\000\000\000\000@\000\000\000\000\002\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\1280!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\016\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\1280!\000\000\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\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\004\001\129\000\000\000\012 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\b\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\b\000\000\000\000\000\128\000\000\004\000\000\016\000\000\000\000\000\000\000\000\128\000\000@\024\016\000\000\000\194\000\b\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024@\002\000\002\000\000\000\000\016T\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\012 \001\000\000\000\000\000\000\000\000 \000\000\000\000\002\000\000\000\016\000\000@\000\000\000\000\000\000\000\000\000\000\001\000`@\000\000\003\b\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\132\000 P\000\000\000\000\020 \000\000\000\000\018 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\b\000\000\000\000\000\000\000\001\000\000\000\000\000\016\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\194\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\000\000\000\000\000\000\000\000\000\000\000\000\0000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\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\012 \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\002@\000\128\000\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000H\000\000\000\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\002\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\018\000\000\000\000\000\000\000\000\000\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\004\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\b\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000@\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\024@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\b\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\001\000\000\000\000\000\000\000\000\000\000\000\016\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012 \004\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\194\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000 \000\000\001\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\012 \000\0000\128\002\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\000\000\024@\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012 \001\000\000\000\000\000\000\000\000\000\000\000\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\001\132\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\002\000\000\000\000\000\000\016\001\000\000\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\016\000\128\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \240`\000\000\0007g\196\000\000\000\030 @\000\000B=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\b\000\000\000\000\000\128\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\002\000\000\000\000\000\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\012 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\007\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000\002\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\016\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\1280\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\004@\000`\016\006\004 \000\002\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\016\000\000\000\000\128\000\000\000\000\128\000\000\000\000\000\000\000\000\000\b\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\000\000@\024\016\128\000\b\000\000\000\"\128\000\000\000\004@\000\000\000\000\000\000\000\000\000\016\000H\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\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\136\000\000\002\000\192\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\000\000\000\000\016\000\000\000\000\000\000\000\000\000 \000\018\000\004@\000\000\000\000\b\000\000\000\000\000\000\000\000\000\016\000\t\000\002 \000\000\000\000\004\000\000\000\000\000\000\000\000\000\b\000\004\128\001\016\000\000\000\000\002\000\000\004\000\000\000\000\000\000\000\128\002@\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\002@\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\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\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\000D\000\000\000\000\000\000\000\000\004D\000`\016\006\004 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\"\000\003\000\1280!\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\016\000\000\016\000@\004\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\002@\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@\001\000\000\000\002\024\b\b\b\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\128\000\000\000\000\000\000\000\000\000\000\016\000@\000\000\000\000\016\000@\000\000\000\000\000\000\000\000\000\000\b\000 \000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000 \000\128\000\004\000\012\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\004\000\000\000\000\000\000\004\000\016\000\000\000\001\128\000\000\000\016\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\004\000 \001\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\b\000\000\000\000\000\002\000\000\000\000 \000\000\000\000\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\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\004\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\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\000\000\004\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\" \003\000\1280!\000\000\016\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\002\"\0000\b\003\002\016\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\000\000\000\000\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\002\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\004\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\003\000\000\000\000\000 \000\000\001\000 \128\001\000\000\000\000\000\000\001\128\000\016\000\000\016\000\000\000\144\016@\000\128\000\000\000\000\000\000\192\000\000\000\000\b\000\000\000H\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\001\001\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\002\000\004\b\000\000\b\000 \002\002\000\000\001\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\128\004\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \000@\128\000\000\128\002\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\129\000\000\001\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\004\000\000\000\000\000@\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\024\000\000\000\000\001\000\000\000\024\001\004\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\128\001\002\000\000\002\000\b\000\128\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\b\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\b\000\016 \000\000 \000\128\b\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000 \000@\128\000\000\128\002\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\002\004\000\000\004\000\016\001\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000") + (160, "\000\000\000\000\000\000\000 \000\129\000\000\001\000\004\000@@\000\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\b\000\000\000\000\016\000\024\000\000\000\000\001\000\000\000\026\001\004\000\000\000\000\000\000\000\000\000\000\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 \001\000\128\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000 \001\000\128\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \001\000\128\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\024\000\000\000\000\001\000\000\000\026\001\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\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\144\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\016 \024\000\000\192\000\001\000\000\000\024\001\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\144\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\016\000\000\000\144\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\000\000\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\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\016 \024\000\000\000\000\001\000\000\000\024\001\004 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\016\000\024\000\000\000\000\001\000\000\000\024\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\001\000@\000\b\000\003\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\001\000@\000\b\000\001\000\000\000\000\000\000\000\000\000\016\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000@\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\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\002\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000A\000\004\004\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\001\000@\000\004\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\002\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\130\004\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\016\128\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\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\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\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\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \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\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\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \000?\255\255\255\128\000\000\000\002\000\000\000\000\000\016\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\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\001\000\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\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000`B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\001\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\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\001\000`B\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\001\000`@\000\000\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\000\000\000\0000\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\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000 \000\000\000\000\000\000\000\002\000\000\001\000`@\000\000\003\b\000 \000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000@\000\000\000\002\005\000\000\000\000\000\000\000\000\000\000P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\001\000`@\000\000\003\b\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\160\000\000\000\000(@\000\000\000\000H\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\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\003\b\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\003\b\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\003\b\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\002@\000\128\000\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002@\000\000\000B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000 \000\000\000\000\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 \b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000B\000\000\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\000\000\000\000\000\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\003\b\000@\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\002\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\001\000\000\000\000\000\000\000\000\000\016\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\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\194\000\000\003\b\000 \000\000\000\000\000\000\000\000\000\000\000\128\000\128\000\000\003\b\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\000\000\000\000\000\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\003\b\000@\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\002\000 \000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\224\192\000\000\000n\207\016\000\000\000x\129\000\000\001\b\244\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\b\000@\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000 \000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\030\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\016\003\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000 \b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\001\000`\002\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\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\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\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000D\000\006\001\000`B\000\000 \000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\002\000\000\000\000\016\000\000\000\000 \000\000\000\000\000\000\000\000\000\002\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\000\001\000`B\000\000 \000\000\000\138\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\128\002@\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\004\128\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\130\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\000\001\000`B\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\004\000\002@\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\004\000\002@\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\004\000\002@\000\136\000\000\000\000\001\000\000\004\000\000\000\000\000\000\000\128\002@\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\004\128\002P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\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\001\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\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\002 \000\000\000\000\000\000\000\000D@\006\001\000`B\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000D\000\006\001\000`B\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\144\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 \001\000\000\000\002\024\b\b\b\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\000\000\000\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\002\000\b\000\000\000\000\002\000\b\000\000\000\000\000\000\000\000\000\000\002\000\b\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000 \001\000\000\b\000\024\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 \001\000\000\000\000\024\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\002\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\016\000\128\004\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000 \000\000\000\000\000\016\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\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\002\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000 \000\000\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\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\000D@\006\001\000`B\000\000 \000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000D@\006\001\000`B\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\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\001\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\001\000\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\002\000\000\000\144\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\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\144\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\024\000\000\000\000\001\000\000\000\b\001\004\000\b\000\000\000\000\000\000\024\000\001\000\000\001\000\000\000\t\001\004\000\b\000\000\000\000\000\000\024\000\000\000\000\001\000\000\000\t\001\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\001\001\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000 \000\129\000\000\001\000\004\000@@\000\000 \000\000\000\000\000\000\000\000\000 \000\000\000\000\000 \001\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\016\000\000\000\000\001\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\024\000\000\000\000\001\000\000\000\024\001\004\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\016\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\129\000\000\001\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000 \000\129\000\000\001\000\004\000@@\000\000\000\000\000\000\000\000\000\000\000\000\000\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\129\000\000\001\000\004\000@@\000\000\000\000\000\000\000\000\000\000\000\000\000\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") and start = 2 and action = - ((16, "\002\004\002\004\000\000\000\005\000\000\000\000\000\000\000\000\000\000\000\000\000\138\000\227\000\000\001\190\001\190\001\015\000\000\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000h\000\000\000\208\001\190\000\000\000\000\000\000\000\000\000\192\000\000\000\232\001~\000\000\000\000\000\000\000\000\000\000\000\128\001 \001~\001\148\000\000\001\152\000\004\000\000\000\000\000\000\000\000\001~\002\004\000\000\000\000\000\210\000\005\000\230\000\005\000\000\000\000\002 \000\000\000\000\000\000\000\238\000\192\000\000\000\000\000\000\000\214\000\005\001\132\000\005\001\015\000\000\002\024\001\015\000\000\000\000\002\166\000\141\000\000\000\000\000\000\000\000\000\000\002R\000\005\000\000\002\012\002\180\001\030\000\000\002x\000\005\001\178\000\021\001\030\000\000\000\000\003\178\000\000\002\226\000\000\001\006\000\000\000'\003j\001\015\003\234\000\000\003\148\000\161\003\252\000\000\003\254\000\000\004\000\000\000\004\006\000\000\000\015\003\174\002\140\000\000\000\000\001N\000\000\000\000\004\014\000\000\003\134\003\190\001\015\000\000\004\028\000b\003\194\001\015\004 \000\000\000\129\000\000\001\015\000\000\000\000\000\000\003<\000\000\003\014\000\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\015\003\012\001\030\000\000\003\214\001\015\003\222\001\015\0046\000\000\000\000\000\000\000\000\003\220\000G\000\000\000\000\000\000\000\011\000\000\000\000\003\228\000G\004<\000\000\000\000\000\000\001>\000\000\000\000\000\000\000\000\000\005\000d\000\000\000\000\000\000\000\005\001f\001>\002\168\000\000\000\005\000d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\002\222\001>\000\005\000d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\002\234\000\000\000\000\000\000\002P\000\000\002P\000\000\002P\000\000\002P\000\000\0022\000\000\000\000\000\174\000\000\000\140\003\228\003<\000\000\004H\000\000\000\000\000\000\000\156\003\238\000\192\004L\000\000\000\140\000\000\002@\000\192\000@\003\242\000\005\000\000\004P\000\000\000\000\001^\000\000\000\000\000\005\000\\\003\246\000\005\003\222\001j\002`\000\141\000\000\000\000\000\005\003\014\001^\002@\000\005\002\222\003\248\000\005\003\230\000\000\000\000\000]\000\000\000\005\003&\000\000\000d\000\000\000\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\003<\000\000\000\000\000\000\003\250\000\005\001\130\000\005\003\250\000\000\000\000\000\000\000\000\000\000\000\000\000\132\000\214\003B\001f\000\000\003\254\000\019\000\000\000\000\000\000\004\\\000\000\003\018\001\015\000\000\003\244\000\019\000\000\004`\000\000\002\166\001\015\000\000\002@\000\192\004\b\002\150\000\000\000\000\000\000\000\000\004f\000\000\003d\002\150\000\000\004z\000\000\000\000\000\000\003L\000\029\003x\000\000\003z\000\000\003|\000\000\003~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002t\001\015\003(\000%\0014\001\244\003\166\0014\003\214\001t\002\020\000\000\002\160\000\000\002\174\000\000\003\020\000\000\002\030\000\000\000\000\001\150\000\000\000\000\001\015\000\000\003|\000\000\000\000\003>\001t\000\000\000\000\000\000\000\000\003\222\000\192\000\000\000\000\000\000\004t\000\000\000\000\000\000\002\160\002\174\003\020\002\030\001\150\000\000\000\000\000\000\000\000\004z\000\000\003p\001\015\000\000\001\015\001\015\001\015\004&\001~\004\134\001~\000\000\001\188\000%\000\000\000\000\000\000\000\234\000%\000\000\003l\002\004\000\000\001~\000\000\000\234\000\000\000\000\004(\001\015\002\238\001\b\004\134\000\000\002\138\000\000\000\000\002\196\004,\001\015\004\138\000\000\0042\002\242\004\144\000\000\004\146\000\000\004\148\000\000\004\150\000\000\003X\004<\003\182\004@\001\015\004\158\000\000\004\160\000\000\002\150\000\005\000\000\000\000\003\132\000%\000\000\000\000\004N\000%\004\166\000\000\000\000\000\t\003\128\000\141\004T\002\250\000\000\004\180\001~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\\\0016\001\178\000\000\000\000\003\000\000\000\000\000\002t\003\152\002d\000\214\003*\003\232\002d\000\000\000\000\000\000\000\000\003*\003\234\002d\000\000\003\n\001\015\000\000\000\000\000\000\000\000\001\226\001~\000\000\000\000\000\000\003*\003\236\002\004\000\000\003*\003\238\002\004\000\000\000\000\004\184\000\000\003\150\002\004\003\164\000\000\000\000\000\000\002\004\003\166\000\000\000\000"), (16, "\000\018\001\150\0002\002\145\002\177\004\t\001V\001\017\000B\000\026\002\153\002J\000:\0006\005:\001\214\002n\002r\002v\002z\002~\002\130\002\134\002\138\002\154\002\178\002\182\002\186\002\190\002\238\002\242\002\246\003&\003^\003\146\003\150\003\154\003\158\003\166\003\174\003\182\003\190\004\014\004.\0042\004n\004\142\000.\006\018\001\222\001\017\000.\006*\001\190\000\238\001\230\007\018\004\170\003j\004\174\003n\002\198\001\238\003%\000n\000J\004\178\003:\006\170\006\174\000.\002\202\002\206\002\214\000\026\002\129\003M\000N\006\178\002\210\000\181\003\029\005\198\003%\002\218\004\146\000\202\000\206\006\182\006\186\000\t\001\206\005\206\005\214\000\210\001\250\006\190\000B\000\026\004\182\003r\006\194\003v\004\186\003>\005\222\004\190\003z\002\169\000\018\003B\004\194\003F\004\198\003J\003M\000.\0049\002\237\000\017\000\130\006j\003M\003E\003=\007\"\003E\003\201\004A\004\017\0016\003\249\003M\003M\003\225\000\026\004\253\003\029\003\029\007\230\005:\000\022\000\026\0026\000\017\000\157\003E\000\030\003~\003\018\003\022\003\130\003\214\000\178\000\194\003\134\0049\003\246\002\185\000v\004\253\004Q\002\237\000\238\002\169\002\169\000\157\003\145\001%\000\157\001\022\000\150\004\017\0049\0049\000\017\003M\000%\003\225\002}\000.\003\029\005.\0052\005Z\005z\003\026\003\249\003\249\000\017\001*\002\237\001R\003=\000.\004\202\003N\004\206\003R\004F\004\210\003\206\000\182\003\145\003M\003M\003\210\005\"\002\169\003\029\003\029\002\213\003\029\003\145\000\190\002\213\003M\0049\000.\001\182\007B\003\029\003M\003\145\003\145\000\017\000\017\003\029\005e\002\161\004Q\003\249\005e\003\145\007F\007B\002\169\002\169\001\178\000\142\004V\003\145\007J\001\182\002\014\0049\0049\000\141\002\169\007F\007b\000\026\006\018\003\233\002\169\002\250\006*\0049\002\213\003\249\003\249\000\017\000\198\0049\005\001\002\254\003\002\003\145\004\017\000\246\000\226\003\249\000%\003\006\004\161\000\026\005\174\003\249\004\161\002\209\004\161\000:\0062\002\209\001\006\002\161\002\161\001\130\000%\0046\002\205\000\141\006:\006B\004:\000>\003\145\006\022\000\t\003\145\006J\005\001\004Q\004Q\000^\006V\001\181\003\145\004Q\003\233\003\233\0016\000\154\003\145\001M\000\158\000\006\004\161\000%\000%\000\141\004\161\005\182\000\026\000%\006j\002\209\000\173\005\186\002\161\001z\000\n\004b\000\018\000J\000\162\001\149\006Z\000\014\002\205\006^\004\245\004!\002\137\002\225\0012\000N\004\254\002\225\006N\005r\002\221\004\001\003\233\002\213\002\221\003-\002\213\002\161\006b\002\205\000\162\001&\002\205\000\006\003\217\000B\000\026\000.\002\161\001M\bN\006\006\003\169\000.\002\161\0072\007\014\003\194\000\n\001\149\b\194\003\233\000\173\005u\003\194\000\014\001\149\0076\007\210\001\149\002\225\000.\003\233\003\198\002\205\007>\000\173\002\221\003\233\002\205\003\198\002\217\006.\000.\003\185\002\217\000\t\006R\001\149\bv\003.\003-\001~\001M\000.\002-\004\161\007f\003\217\004\161\002\002\002\209\006z\0072\002\209\007r\001B\001\149\004\025\0035\002\205\002\205\000\173\000\173\000\137\0076\002\205\001n\000\t\000\t\000\133\001\001\001M\007>\000\t\003\177\001\181\001\181\002\217\002\006\000\t\003\193\001\181\001M\002\n\001R\003\209\0025\005\005\001M\000\t\003-\007\130\004Z\0025\004\025\001\138\002\018\000\173\0066\002\245\007\138\001z\005\138\000\026\b\022\006>\001\149\000\137\000\t\001-\000}\004!\004!\000\133\0035\002\225\001\166\004!\002\225\001\174\001\149\007\146\002\221\001\194\000.\002\221\003-\001R\000.\003\209\000\154\005\005\bb\000\158\007\154\004R\000\137\003\241\000.\004\138\bf\001\202\000\133\002\245\001\210\005u\006\030\007\162\004~\005\006\001\218\001\226\001\234\000\162\000}\001\242\006F\001\254\b\170\002\026\005\005\002\"\001B\001\001\007\174\002&\0022\002:\002B\002b\002j\002\146\002\245\002\217\006\146\005R\002\217\002\158\002\166\002\174\002\194\002\226\002\234\000}\003\218\003\222\002-\006\014\003\230\003\250\004\002\004\030\004*\004J\004\130\004\246\005*\0056\005J\005^\0035\005j\005\134\005\158\005\178\005\194\005\202\005\210\005\218\005\226\006&\006n\006\166\006\218\006\250\007\002\005\166\007.\007N\007^\007v\007~\006\226\007\134\007\142\007\150\007\158\007\166\007\178\007\182\007\186\007\194\007\202\007\226\007\242\007\250\b\n\b\018\b\030\br\b\130\b\158\b\218\b\234\b\250\t\002\t\011\t\031")) + ((16, "\002\004\002\004\000\000\000\005\000\000\000\000\000\000\000\000\000\000\000\000\000\142\000\221\000\000\000|\000|\001\025\000\000\000s\000\000\000\000\000\000\000\000\000\000\000s\000\000\000\000\000\t\000\000\000Y\000|\000\000\000\000\000\000\000\000\001\026\000\000\000P\000i\000\000\000\000\000\000\000\000\000\000\000~\001*\000i\001\254\000\000\001\252\002<\000\000\000\000\000\000\000\000\000i\002\190\000\000\000\000\000\152\000\005\000\192\000\005\000\000\000\000\003\230\000\000\000\000\000\000\001,\001\026\000\000\000\000\000\000\002\202\000\005\002\214\000\005\000s\000\000\0024\000s\000\000\000\000\002\132\001X\000\000\000\000\000\000\000\000\000\000\000\007\000\005\000\000\001p\003\144\001\234\000\000\002\234\000\005\003\132\000\017\001\234\000\000\000\000\004\000\000\000\003.\000\000\002\162\000\000\000'\003\178\001\025\004\016\000\000\003\182\000\161\004\020\000\000\004\022\000\000\004\028\000\000\004 \000\000\0000\003\206\000_\000\000\000\000\001\246\000\000\000\000\0042\000\000\003\170\003\218\001\025\000\000\0048\000\198\003\226\000s\004D\000\000\000\139\000\000\000s\000\000\000\000\000\000\003b\000\000\0036\000\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000s\0034\001\234\000\000\003\242\000s\003\250\000s\004T\000\000\000\000\000\000\000\000\003\254\0005\000\000\000\000\000\000\001:\000\000\000\000\004\006\0005\004^\000\000\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\005\000d\000\000\000\000\000\000\000\005\000\216\001\004\002\200\000\000\000\005\000d\000\000\000\000\000\000\000\000\000\000\000\000\000\005\002\178\000\252\000\005\000d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\002\192\000\000\000\000\000\000\002Z\000\000\002Z\000\000\002Z\000\000\002Z\000\000\001\254\000\000\000\000\001\146\000\000\003\016\004\006\003`\000\000\004f\000\000\000\000\000\000\000\030\004\012\001\026\004j\000\000\003\016\000\000\002\136\001\026\000\n\004\018\000\005\000\000\004p\000\000\000\000\001j\000\000\000\000\000\005\002\242\004\022\000\005\001J\000\224\002\160\001X\000\000\000\000\000\005\002\218\001j\002\136\000\005\003\012\004\024\000\005\002&\000\000\000\000\000s\000\000\000\005\003\012\000\000\000d\000\000\000\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\003\"\000\000\000\000\000\000\004\026\000\005\002\002\000\005\002\178\000\000\000\000\000\000\000\000\000\000\000\000\003(\000\192\003d\0014\000\000\004\030\000V\000\000\000\000\000\000\004|\000\000\002\154\000,\000\000\004\022\000V\000\000\004~\000\000\003\224\000,\000\000\002\136\001\026\004&\000\228\000\000\000\000\000\000\000\000\004\132\000\000\002\164\000\228\000\000\004\152\000\000\000\000\000\000\003l\003\b\003\154\000\000\003\156\000\000\003\158\000\000\003\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001l\000s\002\174\000d\002\252\000\003\003\168\002\252\003\248\001\196\002H\000\000\003\018\000\000\003&\000\000\003>\000\000\002\014\000\000\000\000\000V\000\000\000\000\001\025\000\000\003\158\000\000\000\000\000\005\001\196\000\000\000\000\000\000\000\000\003\208\001\026\000\000\000\000\000\000\004\148\000\000\000\000\000\000\003\018\003&\003>\002\014\001\202\000\000\000\000\000\000\000\000\004\154\000\000\003R\000s\000\000\000s\000s\000s\004F\000i\004\166\000i\000\000\002\230\000d\000\000\000\000\000\000\003L\000d\000\000\003\140\002\004\000\000\000i\000\000\000\244\000\000\000\000\004H\000s\000\130\002\004\004\166\000\000\002\016\000\000\000\000\002\180\004L\001\025\004\170\000\000\004P\002\238\004\174\000\000\004\176\000\000\004\178\000\000\004\180\000\000\003\132\004Z\003\214\004^\001\025\004\188\000\000\004\190\000\000\003\156\000\005\000\000\000\000\003\164\000d\000\000\000\000\004l\000d\004\196\000\000\000\000\003\"\003\160\001X\004r\003\020\000\000\004\210\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002$\001b\001\230\000\000\000\000\000c\000\000\000\000\003B\003\184\002|\002\202\003v\004\b\002|\000\000\000\000\000\000\000\000\003v\004\n\002|\000\000\003.\000s\000\000\000\000\000\000\000\000\001\226\000i\000\000\000\000\000\000\003v\004\012\002\004\000\000\003v\004\014\002\004\000\000\000\000\004\214\000\000\003\182\002\004\003\196\000\000\000\000\000\000\002\004\003\198\000\000\000\000"), (16, "\000\018\000:\000B\001\150\0002\002J\006v\004\005\000n\001\001\002\149\000v\004\021\004\253\001\214\0006\002n\002r\002v\002z\002~\002\130\002\134\002\138\002\154\002\178\002\182\002\186\002\190\002\238\002\242\002\246\003&\003Z\003\142\003\146\003\150\003\154\003\162\003\170\003\178\003\186\004\n\004*\004.\004j\004\138\002\002\001\222\004\021\004\253\000.\001\190\000J\001\230\002\141\002\173\004\166\003f\004\170\003j\001\238\003!\000\t\003\213\000N\004\174\003:\000\154\002\198\b^\000\158\000.\004\249\000\181\003I\002\006\001\149\bb\002\202\002\206\002\n\003!\003\025\004\142\000B\000\026\002\210\0045\004\241\001\206\000\162\002\218\003\242\002\018\000\150\004\249\000.\000\018\004\178\003n\001\001\003r\004\182\003>\002}\004\186\003v\003\197\000.\004\190\003B\004\194\003F\003I\006\014\000\018\002\233\003\213\006&\000:\003I\000\130\007\014\000\017\001\250\002\133\0045\004M\0016\003I\003I\004M\000>\000\238\006\166\006\170\001n\003\025\003\025\000\022\000\026\000^\0045\0045\006\174\000\030\003z\003\018\003\022\003~\000\178\000\194\002\165\003\130\006\178\006\182\005*\005.\005V\005v\002\233\003\245\006\186\001R\000\026\000.\001\149\006\190\001\017\0056\004R\000J\0039\003I\000\141\006V\004N\001*\006Z\000\017\001\149\003\025\000%\000N\003\026\000\026\0045\006f\003\141\002\233\0056\0026\000\017\004\198\003J\004\202\003N\006^\004\206\004M\001\022\003I\003I\000B\000\026\007\226\000\182\002\165\002\165\003\025\003\025\001\017\003\025\003I\0045\0045\003\245\003\245\000\141\003I\002\250\003\025\001B\007>\002\250\001\178\0045\003\025\000\017\000\017\002\254\003\002\0045\002\214\002\254\003\002\002\209\007B\003\006\006\002\002\209\0039\003\006\003\141\003\141\007F\001V\000\141\000\246\005\170\001z\002\165\003\229\007^\002\157\005\134\000\026\000.\000\157\002\181\003\245\004^\002y\001\182\000\017\000\173\000\190\004M\004M\000\017\002\205\004M\004M\004M\002\205\000.\000%\004M\000\157\002\165\002\165\000\157\000\142\002\209\0016\001M\004\134\003\141\003\245\003\245\006\014\002\165\000%\0042\006&\005\178\000\026\002\165\0046\004\157\003\245\005\182\000\t\004\157\005q\004\157\003\245\003\229\003\229\002\157\002\157\000\198\002\201\003\202\000\026\000\006\003\141\002\205\003\206\003\141\006.\000\173\000%\000%\0021\002\201\002\014\003\141\000%\000\n\0066\006>\002\201\003\141\000\173\002\201\000\014\001\181\006F\006J\001M\bJ\004\157\006R\003\181\000.\004\157\003)\001\149\003\173\003\190\003\229\000.\002\157\002)\007b\005\002\004\029\000\018\007>\001&\006V\000\226\006f\006Z\000.\003\194\002\201\000\202\000\206\000\173\000\173\002\201\007B\007.\000\006\000\210\000.\002\209\b\190\003\229\002\209\002\157\006^\001M\000\162\0072\001\130\000\t\000\n\000.\003\229\001\149\002\157\007:\001%\000\014\003\229\006N\002\157\002\221\000.\001\149\003)\002\221\003A\000\173\003\141\003A\004\250\002\217\000\137\002\205\001M\002\217\002\205\007n\003\141\000\133\003\190\br\001\149\002\213\001\182\001M\003.\002\213\006*\003A\007\030\001M\005\001\000\t\004\r\007.\003\194\003\189\003\141\001*\001B\001\149\004\157\000\t\000\t\004\157\003\141\0072\002\221\000\t\004=\000.\0031\003)\007~\007:\000\137\002\241\002\217\000\238\001R\005a\000\t\000\133\000\018\005a\002\201\002\201\000}\007\134\002\213\003\221\002\201\003\210\003\205\006\002\005\001\004\r\001\181\001\181\000\026\001R\001-\005\194\001\181\000\137\005N\001\178\b\018\003)\007\142\005\162\000\133\005\202\005\210\004V\002)\006\n\004\029\004\029\000\026\002\241\003\237\007\150\004\029\005\001\005\218\005n\0031\003\253\001z\001\006\000}\0012\000\154\003\221\007\158\000\158\003\205\006\026\007\206\003\165\001~\001\138\006\018\007\n\0062\001\166\001\174\004B\002\241\001\194\001\202\001\210\001\218\001\226\006:\000\162\001\234\006\142\001\242\000}\004z\002\221\005\030\001\254\002\221\b\166\006B\002\026\002\"\002&\0022\002\217\005q\002:\002\217\007\170\002B\002b\0045\002j\002\146\002\158\002\166\002\213\002\174\0021\002\213\002\194\002\226\002\234\004\r\003\214\003\218\003\226\003\246\003\254\006\222\004\026\004&\004F\004~\004\242\005&\0052\005F\005Z\005f\005\130\005\154\005\174\005\190\0031\005\198\005\206\005\214\005\222\006\"\006j\006\162\006\214\006\246\006\254\007*\000\026\007J\007Z\007r\007z\007\130\007\138\007\146\007\154\007\162\007\174\007\178\007\182\007\190\007\198\007\222\007\238\007\246\b\006\b\014\b\026\bn\b~\b\154\b\214\b\230\b\246\b\254\t\007\t\027")) and lhs = - (8, "\001\000\141\141\140\140\140\139\138\137\137\137\136\136\136\136\136\136\135\135\135\135\134\134\134\134\134\134\134\134\133\133\133\133\133\133\132\132\131\130\130\129\129\128\128\127\127~~~}|{zyyxxwwvuutsssrrrrrrqqppponmlkkjjjihhhhhhhggfeedccbbbbbaaa`````_____^]\\\\[[[[[[[ZZZYYYYXXWWVUUTSRQQPPONMMMMMLLKKJJIIHHGGFFEEDCCCBBBBBAA@@@@@@@@?>=<;;::9988776655433322211100000//..--,,++**))((''&&%%$$##\"\"!! \031\031\030\030\029\029\028\028\028\028\027\027\026\026\025\025\024\024\024\024\024\023\022\022\022\022\022\022\022\022\021\020\020\020\020\019\018\018\018\018\018\018\018\018\018\018\018\018\017\016\015\014\r\r\r\r\r\012\011\011\n\t\b\b\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\006\005\004\003\002\002") + (8, "\001\000\141\141\140\140\140\139\138\137\137\137\136\136\136\136\136\136\135\135\135\135\134\134\134\134\134\134\134\134\133\133\133\133\133\133\132\132\131\130\130\129\129\128\128\127\127~~~}|{zyyxxwwvuutsssrrrrrrqqppponmlkkjjjihhhhhhhggfeedccbbbbbaaa`````_____^]\\\\[[[[[[ZZZYYYYXXWWVUUTSRQQPPONMMMMMLLKKJJIIHHGGFFEEDCCCBBBBBAA@@@@@@@@?>=<;;::9988776655433322211100000//..--,,++**))((''&&%%$$##\"\"!! \031\031\030\030\029\029\028\028\028\028\027\027\026\026\025\025\024\024\024\024\024\023\022\022\022\022\022\022\022\022\021\020\020\020\020\019\018\018\018\018\018\018\018\018\018\018\018\018\017\016\015\014\r\r\r\r\r\012\011\011\n\t\b\b\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\006\005\004\003\002\002") and goto = - ((16, "\000\b\000p\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\233\000\000\000&\000R\000I\000\000\0010\000\000\000\000\000\000\000\000\000\000\001\212\000\000\000\000\000\000\000\000\000\000\000b\000\000\000\000\000\000\000\000\001D\000\000\000\000\000\150\000\000\000\000\000\000\000\000\000\000\000\026\000\000\000\023\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\002\b\000\000\000\000\000\000\000\006\001&\000\000\0016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0028\000\000\000\000\000\000\000\t\002&\000\000\000e\002\018\000\000\0003\002*\000\000\000\000\000q\002\162\000\000\000\000\000\000\000\000\000\000\000\000\002<\000\000\000\186\000\000\000,\000\000\000\000\001^\000\000\000\000\000R\000\000\000\000\000\000\000\000\000\000\000\000\001\224\000\000\000q\000\000\000z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000|\000\000\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0022\000\000\000\000\002Z\000\000\002\154\000\000\000\000\000\144\000\000\002\194\000\000\000\000\000\000\000\000\000\000\000\000\000\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\196\000\000\001\146\000\000\000\000\002\212\000\000\002\214\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\210\000\000\000\000\000\000\000\000\002\218\000\000\000\000\000\000\000\000\001p\002`\000\000\000\000\000\000\001\138\000\000\002\230\002\222\000\000\001\146\002d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\150\000\000\002\238\001\172\002\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\180\000\000\000\000\000\000\000\000\002\b\000\000\002\016\000\000\002\020\000\000\002\022\000\000\002\172\000\000\000\000\002\012\000\000\003\000\000\000\003\"\000\000\000\000\000\000\000\000\000\000\003&\000\000\003&\000\000\000\000\003\014\000\000\002\192\0030\0022\000\000\000<\000\000\000\000\000\000\000\000\002>\000\000\000\000\001\184\000\000\000\000\001\188\000\000\002\144\000\000\002\220\000\000\000\000\001\190\000\000\002B\002\208\001\196\000\000\000\000\001\206\000\000\000\000\000\000\002\\\000\000\001\240\000\000\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\001\246\000\000\001\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\000t\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\002l\000\000\000\000\001\234\000\000\000\000\000\000\000\000\002^\000\000\002\210\003D\000\000\001\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\252\000\000\000\000\000\000\000\000\000\000\000\000\0036\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\178\002T\002\178\002J\000\028\000\000\000\000\000j\000\000\002\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\252\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\000\000\000\000\000\000\002J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002p\000\000\003^\003`\003b\000\000\002\132\002\148\002\136\000\000\003\026\000\202\000\000\000\000\000\000\000\000\001\228\000\000\000\000\000z\000\000\001\"\000\000\001\214\000\000\000\000\000\000\002\228\002\174\002^\000\000\000\000\002x\000\000\000\000\002\130\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\146\000\000\002\194\000\000\003\022\000\000\000\000\000\000\000\000\002.\002\130\000\000\000\000\000\000\000\182\000\000\000\000\000\000\0014\000\000\000\000\000\000\003J\000\000\002\254\000\000\001\236\000\000\002\166\002\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003&\001r\000\000\000\000\002\160\000\000\000\000\002\218\000\000\001\130\000\003\003\134\000\000\001\162\000\000\000\000\000\000\000\000\003\138\000\000\001\170\000\000\000\000\002h\000\000\000\000\000\000\000\000\000\000\002<\000\000\000\000\000\000\003\142\000\000\000\132\000\000\003\144\000\000\000\148\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\0004\000\000\000\000\000\000"), (16, "\000\154\000\t\000~\000\154\001'\000 \001)\002\016\000\"\001H\001J\000\n\001H\001J\000*\001|\000\018\001}\001|\001~\001}\000:\001~\000\021\001\135\001*\001\137\000b\000e\002\016\000C\001H\001J\0025\000\t\0029\002\031\001|\002&\001}\000\151\001~\0016\0017\000\n\000\021\000b\000e\001=\001\162\0018\000#\000Z\000\021\000h\001\127\001:\001C\000=\002\016\002\016\001D\001p\001\135\002\016\001\137\000;\000\026\000\029\002\016\001\t\000\023\002@\000g\000T\001\163\001\164\002\016\002*\002=\001{\002*\002\017\002-\002\018\000Y\001;\001<\001\162\000\026\000\027\000i\000\t\000\023\002G\000k\002\019\000\026\000\031\001E\000*\000\023\000\n\001\n\002\017\000+\002\018\001\128\000/\001\178\001\128\002D\002E\000r\001\163\001\164\000\011\000@\002\019\001\178\001\129\002.\001\198\001\129\002.\002B\001\168\001\169\001F\001\128\001G\002I\001\198\002D\002\017\002\017\002\018\002\018\000\136\002\017\0024\002\018\001\129\002.\002\017\001d\002\018\000\134\002\019\002\019\000@\000\t\002\017\002\019\002\018\001e\000\021\001\179\002\019\000\t\000Z\000\n\0024\002>\002D\001\167\002\019\001\179\0023\000\n\000*\001P\001\178\0028\000%\000=\001\251\000E\0006\000\t\001\200\002<\0007\000=\001f\001\198\001\199\000A\000\t\000\n\001\200\000+\0024\0024\000,\000?\000H\0024\000\n\000\148\000\022\000\t\0024\000d\000\023\000\t\000\166\000\t\000@\001Q\0024\000\n\000\196\000\184\000D\000\n\001g\000\n\000\t\000\186\001\179\002\022\000\t\001\252\000\t\000\201\000\t\000\t\000\n\000\206\000\t\000\215\000\n\000I\000\n\000\t\000\n\000\n\000\021\001\254\000\n\001R\000\218\001\200\000O\000\n\000\228\001i\001\017\001P\001\020\001\027\000\t\000\t\001\031\000\t\000\t\002\023\001d\001\"\001\178\000+\000\n\000\n\000,\000\n\000\n\000@\001e\000O\001T\000*\002\"\001\202\002#\000@\001(\0019\001Y\001?\001A\000R\000\025\001\246\001\207\000*\000\023\000o\002\"\000L\002#\002\007\002\"\001\247\002#\000@\000%\001k\000[\000E\000L\002\024\001\131\0020\000@\001\137\000\021\001P\001\179\000[\002/\001\178\000\154\000^\001P\001Z\001\131\000@\000G\001\157\001\158\000@\0022\000@\000]\001\246\002$\000*\001\166\002%\002)\001\200\001\161\000\139\000@\001\247\001^\000O\000@\001\182\000@\000W\000@\000@\002\000\002%\000@\002,\001\\\002%\001&\000@\001V\001\186\000\023\001\164\000\146\000O\000R\001\179\001i\001\220\000+\000\152\000\150\002\011\000R\000R\000@\000@\000W\000@\000@\002\014\000O\002\015\000+\000S\001\235\0008\002\001\001\158\001\180\000X\001\184\001\244\001\248\000W\000P\000\195\002*\000\252\000\253\001\160\000\200\000\203\000\205\000\214\001\184\000\217\000\227\000\233\002\024\000\140\0020\000\235\001\\\000\237\000\239\000\243\000\251\000\249\001\024\001T\001\002\001\000\002\r\001\003\000+\001\005\001\006\002\t\001\007\002\012\001\016\001\026\001\029\001\030\001`\002\004\001a\001z\001\187\001\181\001\154\001\188\001\189\001\190\001\192\001\195\001\194\001\203\001\214\001\215\001\219\001\223\001\242\001\240\002\002\002\n\002\021\002\027\002\028\002 \000\164\002'\000\144\0026\002:\000\000\000\000\000\000\000\169\000\171\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\213")) + ((16, "\000\b\000p\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\233\000\000\000&\000R\000I\000\000\0010\000\000\000\000\000\000\000\000\000\000\001\212\000\000\000\000\000\000\000\000\000\000\000b\000\000\000\000\000\000\000\000\001D\000\000\000\000\000\150\000\000\000\000\000\000\000\000\000\000\000\026\000\000\000\023\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\002\b\000\000\000\000\000\000\000\006\001&\000\000\0016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0028\000\000\000\000\000\000\000\t\002&\000\000\000e\002\018\000\000\0003\002*\000\000\000\000\000q\002\162\000\000\000\000\000\000\000\000\000\000\000\000\002<\000\000\000\186\000\000\000,\000\000\000\000\001^\000\000\000\000\000R\000\000\000\000\000\000\000\000\000\000\000\000\001\224\000\000\000q\000\000\000z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000|\000\000\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0022\000\000\000\000\002Z\000\000\002\154\000\000\000\000\000\144\000\000\002\194\000\000\000\000\000\000\000\000\000\000\000\000\000\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\196\000\000\001\146\000\000\000\000\002\212\000\000\002\214\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\210\000\000\000\000\000\000\000\000\002\218\000\000\000\000\000\000\000\000\001p\002`\000\000\000\000\000\000\001\138\000\000\002\230\002\222\000\000\001\146\002d\000\000\000\000\000\000\000\000\000\000\000\000\001\150\000\000\002\238\001\172\002\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\180\000\000\000\000\000\000\000\000\002\b\000\000\002\016\000\000\002\020\000\000\002\022\000\000\002\172\000\000\000\000\002\012\000\000\003\000\000\000\003\"\000\000\000\000\000\000\000\000\000\000\003&\000\000\003&\000\000\000\000\003\014\000\000\002\192\0030\0022\000\000\000<\000\000\000\000\000\000\000\000\002>\000\000\000\000\001\184\000\000\000\000\001\188\000\000\002\144\000\000\002\220\000\000\000\000\001\190\000\000\002B\002\208\001\196\000\000\000\000\001\206\000\000\000\000\000\000\002\\\000\000\001\240\000\000\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\001\246\000\000\001\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\000t\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\002l\000\000\000\000\001\234\000\000\000\000\000\000\000\000\002^\000\000\002\210\003D\000\000\001\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\252\000\000\000\000\000\000\000\000\000\000\000\000\0036\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\178\002T\002\178\002J\000\028\000\000\000\000\000j\000\000\002\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\252\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\000\000\000\000\000\000\002J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002p\000\000\003^\003`\003b\000\000\002\132\002\148\002\136\000\000\003\026\000\202\000\000\000\000\000\000\000\000\001\228\000\000\000\000\000z\000\000\001\"\000\000\001\214\000\000\000\000\000\000\002\228\002\174\002^\000\000\000\000\002x\000\000\000\000\002\130\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\146\000\000\002\194\000\000\003\022\000\000\000\000\000\000\000\000\002.\002\130\000\000\000\000\000\000\000\182\000\000\000\000\000\000\0014\000\000\000\000\000\000\003J\000\000\002\254\000\000\001\236\000\000\002\166\002\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003&\001r\000\000\000\000\002\160\000\000\000\000\002\218\000\000\001\130\000\003\003\134\000\000\001\162\000\000\000\000\000\000\000\000\003\138\000\000\001\170\000\000\000\000\002h\000\000\000\000\000\000\000\000\000\000\002<\000\000\000\000\000\000\003\142\000\000\000\132\000\000\003\144\000\000\000\148\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\0004\000\000\000\000\000\000"), (16, "\000\154\000\t\000~\000\154\001&\000 \001(\002\015\000\"\001G\001I\000\n\001G\001I\000*\001{\000\018\001|\001{\001}\001|\000:\001}\000\021\001\134\001)\001\136\000b\000e\002\015\000C\001G\001I\0024\000\t\0028\002\030\001{\002%\001|\000\151\001}\0015\0016\000\n\000\021\000b\000e\001<\001\161\0017\000#\000Z\000\021\000h\001~\0019\001B\000=\002\015\002\015\001C\001o\001\134\002\015\001\136\000;\000\026\000\029\002\015\001\b\000\023\002?\000g\000T\001\162\001\163\002\015\002)\002<\001z\002)\002\016\002,\002\017\000Y\001:\001;\001\161\000\026\000\027\000i\000\t\000\023\002F\000k\002\018\000\026\000\031\001D\000*\000\023\000\n\001\t\002\016\000+\002\017\001\127\000/\001\177\001\127\002C\002D\000r\001\162\001\163\000\011\000@\002\018\001\177\001\128\002-\001\197\001\128\002-\002A\001\167\001\168\001E\001\127\001F\002H\001\197\002C\002\016\002\016\002\017\002\017\000\136\002\016\0023\002\017\001\128\002-\002\016\001c\002\017\000\134\002\018\002\018\000@\000\t\002\016\002\018\002\017\001d\000\021\001\178\002\018\000\t\000Z\000\n\0023\002=\002C\001\166\002\018\001\178\0022\000\n\000*\001O\001\177\0027\000%\000=\001\250\000E\0006\000\t\001\199\002;\0007\000=\001e\001\197\001\198\000A\000\t\000\n\001\199\000+\0023\0023\000,\000?\000H\0023\000\n\000\148\000\022\000\t\0023\000d\000\023\000\t\000\166\000\t\000@\001P\0023\000\n\000\196\000\184\000D\000\n\001f\000\n\000\t\000\186\001\178\002\021\000\t\001\251\000\t\000\201\000\t\000\t\000\n\000\206\000\t\000\214\000\n\000I\000\n\000\t\000\n\000\n\000\021\001\253\000\n\001Q\000\217\001\199\000O\000\n\000\227\001h\001\016\001O\001\019\001\026\000\t\000\t\001\030\000\t\000\t\002\022\001c\001!\001\177\000+\000\n\000\n\000,\000\n\000\n\000@\001d\000O\001S\000*\002!\001\201\002\"\000@\001'\0018\001X\001>\001@\000R\000\025\001\245\001\206\000*\000\023\000o\002!\000L\002\"\002\006\002!\001\246\002\"\000@\000%\001j\000[\000E\000L\002\023\001\130\002/\000@\001\136\000\021\001O\001\178\000[\002.\001\177\000\154\000^\001O\001Y\001\130\000@\000G\001\156\001\157\000@\0021\000@\000]\001\245\002#\000*\001\165\002$\002(\001\199\001\160\000\139\000@\001\246\001]\000O\000@\001\181\000@\000W\000@\000@\001\255\002$\000@\002+\001[\002$\001%\000@\001U\001\185\000\023\001\163\000\146\000O\000R\001\178\001h\001\219\000+\000\152\000\150\002\n\000R\000R\000@\000@\000W\000@\000@\002\r\000O\002\014\000+\000S\001\234\0008\002\000\001\157\001\179\000X\001\183\001\243\001\247\000W\000P\000\195\002)\000\251\000\252\001\159\000\200\000\203\000\205\000\213\001\183\000\216\000\226\000\232\002\023\000\140\002/\000\234\001[\000\236\000\238\000\242\000\250\000\248\001\023\001S\001\001\000\255\002\012\001\002\000+\001\004\001\005\002\b\001\006\002\011\001\015\001\025\001\028\001\029\001_\002\003\001`\001y\001\186\001\180\001\153\001\187\001\188\001\189\001\191\001\194\001\193\001\202\001\213\001\214\001\218\001\222\001\241\001\239\002\001\002\t\002\020\002\026\002\027\002\031\000\164\002&\000\144\0025\0029\000\000\000\000\000\000\000\169\000\171\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\212")) and semantic_action = [| @@ -936,13 +931,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 942 "flambda_parser_in.ml" +# 937 "flambda_parser_in.ml" ) = -# 467 "flambda_parser.mly" +# 466 "flambda_parser.mly" ( Heap ) -# 946 "flambda_parser_in.ml" +# 941 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -967,22 +962,22 @@ module Tables = struct }; } = _menhir_stack in let region : ( -# 250 "flambda_parser.mly" +# 249 "flambda_parser.mly" (Fexpr.region) -# 973 "flambda_parser_in.ml" +# 968 "flambda_parser_in.ml" ) = Obj.magic region in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_region_ in let _v : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 982 "flambda_parser_in.ml" +# 977 "flambda_parser_in.ml" ) = -# 468 "flambda_parser.mly" +# 467 "flambda_parser.mly" ( Local { region } ) -# 986 "flambda_parser_in.ml" +# 981 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -998,13 +993,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 224 "flambda_parser.mly" +# 223 "flambda_parser.mly" (Fexpr.alloc_mode_for_types) -# 1004 "flambda_parser_in.ml" +# 999 "flambda_parser_in.ml" ) = -# 462 "flambda_parser.mly" +# 461 "flambda_parser.mly" ( Heap ) -# 1008 "flambda_parser_in.ml" +# 1003 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1027,13 +1022,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 224 "flambda_parser.mly" +# 223 "flambda_parser.mly" (Fexpr.alloc_mode_for_types) -# 1033 "flambda_parser_in.ml" +# 1028 "flambda_parser_in.ml" ) = -# 463 "flambda_parser.mly" +# 462 "flambda_parser.mly" ( Heap_or_local ) -# 1037 "flambda_parser_in.ml" +# 1032 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1056,13 +1051,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 224 "flambda_parser.mly" +# 223 "flambda_parser.mly" (Fexpr.alloc_mode_for_types) -# 1062 "flambda_parser_in.ml" +# 1057 "flambda_parser_in.ml" ) = -# 464 "flambda_parser.mly" +# 463 "flambda_parser.mly" ( Local ) -# 1066 "flambda_parser_in.ml" +# 1061 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1095,17 +1090,17 @@ module Tables = struct let args : 'tv_simple_args = Obj.magic args in let trap_action : 'tv_option_trap_action_ = Obj.magic trap_action in let cont : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 1101 "flambda_parser_in.ml" +# 1096 "flambda_parser_in.ml" ) = Obj.magic cont in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_cont_ in let _endpos = _endpos_args_ in let _v : 'tv_apply_cont_expr = -# 817 "flambda_parser.mly" +# 815 "flambda_parser.mly" ( { cont; args; trap_action } ) -# 1109 "flambda_parser_in.ml" +# 1104 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1181,9 +1176,9 @@ module Tables = struct let r : 'tv_result_continuation = Obj.magic r in let _8 : unit = Obj.magic _8 in let region : ( -# 250 "flambda_parser.mly" +# 249 "flambda_parser.mly" (Fexpr.region) -# 1187 "flambda_parser_in.ml" +# 1182 "flambda_parser_in.ml" ) = Obj.magic region in let _6 : unit = Obj.magic _6 in let args : 'tv_simple_args = Obj.magic args in @@ -1195,7 +1190,7 @@ module Tables = struct let _startpos = _startpos_call_kind_ in let _endpos = _endpos_e_ in let _v : 'tv_apply_expr = -# 742 "flambda_parser.mly" +# 740 "flambda_parser.mly" ( let (func, arities) = func in { func; continuation = r; @@ -1207,7 +1202,7 @@ module Tables = struct arities; region; } ) -# 1211 "flambda_parser_in.ml" +# 1206 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1223,13 +1218,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 225 "flambda_parser.mly" +# 224 "flambda_parser.mly" (Fexpr.array_kind) -# 1229 "flambda_parser_in.ml" +# 1224 "flambda_parser_in.ml" ) = -# 422 "flambda_parser.mly" +# 421 "flambda_parser.mly" ( Values ) -# 1233 "flambda_parser_in.ml" +# 1228 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1252,13 +1247,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 225 "flambda_parser.mly" +# 224 "flambda_parser.mly" (Fexpr.array_kind) -# 1258 "flambda_parser_in.ml" +# 1253 "flambda_parser_in.ml" ) = -# 423 "flambda_parser.mly" +# 422 "flambda_parser.mly" ( Immediates ) -# 1262 "flambda_parser_in.ml" +# 1257 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1281,13 +1276,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 225 "flambda_parser.mly" +# 224 "flambda_parser.mly" (Fexpr.array_kind) -# 1287 "flambda_parser_in.ml" +# 1282 "flambda_parser_in.ml" ) = -# 424 "flambda_parser.mly" +# 423 "flambda_parser.mly" ( Naked_floats ) -# 1291 "flambda_parser_in.ml" +# 1286 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1310,9 +1305,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_atomic_expr = -# 674 "flambda_parser.mly" +# 672 "flambda_parser.mly" ( Invalid { message = "halt-and-catch-fire" } ) -# 1316 "flambda_parser_in.ml" +# 1311 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1335,9 +1330,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_atomic_expr = -# 675 "flambda_parser.mly" +# 673 "flambda_parser.mly" ( Invalid { message = "treat-as-unreachable" } ) -# 1341 "flambda_parser_in.ml" +# 1336 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1367,9 +1362,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_ac_ in let _v : 'tv_atomic_expr = -# 676 "flambda_parser.mly" +# 674 "flambda_parser.mly" ( Apply_cont ac ) -# 1373 "flambda_parser_in.ml" +# 1368 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1406,9 +1401,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_cases_ in let _v : 'tv_atomic_expr = -# 677 "flambda_parser.mly" +# 675 "flambda_parser.mly" ( Switch {scrutinee; cases} ) -# 1412 "flambda_parser_in.ml" +# 1407 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1438,9 +1433,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_e_ in let _v : 'tv_atomic_expr = -# 678 "flambda_parser.mly" +# 676 "flambda_parser.mly" ( Apply e ) -# 1444 "flambda_parser_in.ml" +# 1439 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1477,9 +1472,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_atomic_expr = -# 679 "flambda_parser.mly" +# 677 "flambda_parser.mly" ( e ) -# 1483 "flambda_parser_in.ml" +# 1478 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1502,13 +1497,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 226 "flambda_parser.mly" +# 225 "flambda_parser.mly" (Fexpr.binary_float_arith_op) -# 1508 "flambda_parser_in.ml" +# 1503 "flambda_parser_in.ml" ) = -# 485 "flambda_parser.mly" +# 484 "flambda_parser.mly" ( Add ) -# 1512 "flambda_parser_in.ml" +# 1507 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1531,13 +1526,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 226 "flambda_parser.mly" +# 225 "flambda_parser.mly" (Fexpr.binary_float_arith_op) -# 1537 "flambda_parser_in.ml" +# 1532 "flambda_parser_in.ml" ) = -# 486 "flambda_parser.mly" +# 485 "flambda_parser.mly" ( Sub ) -# 1541 "flambda_parser_in.ml" +# 1536 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1560,13 +1555,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 226 "flambda_parser.mly" +# 225 "flambda_parser.mly" (Fexpr.binary_float_arith_op) -# 1566 "flambda_parser_in.ml" +# 1561 "flambda_parser_in.ml" ) = -# 487 "flambda_parser.mly" +# 486 "flambda_parser.mly" ( Mul ) -# 1570 "flambda_parser_in.ml" +# 1565 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1589,13 +1584,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 226 "flambda_parser.mly" +# 225 "flambda_parser.mly" (Fexpr.binary_float_arith_op) -# 1595 "flambda_parser_in.ml" +# 1590 "flambda_parser_in.ml" ) = -# 488 "flambda_parser.mly" +# 487 "flambda_parser.mly" ( Div ) -# 1599 "flambda_parser_in.ml" +# 1594 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1618,13 +1613,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1624 "flambda_parser_in.ml" +# 1619 "flambda_parser_in.ml" ) = -# 475 "flambda_parser.mly" +# 474 "flambda_parser.mly" ( Add ) -# 1628 "flambda_parser_in.ml" +# 1623 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1647,13 +1642,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1653 "flambda_parser_in.ml" +# 1648 "flambda_parser_in.ml" ) = -# 476 "flambda_parser.mly" +# 475 "flambda_parser.mly" ( Sub ) -# 1657 "flambda_parser_in.ml" +# 1652 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1676,13 +1671,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1682 "flambda_parser_in.ml" +# 1677 "flambda_parser_in.ml" ) = -# 477 "flambda_parser.mly" +# 476 "flambda_parser.mly" ( Mul ) -# 1686 "flambda_parser_in.ml" +# 1681 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1705,13 +1700,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1711 "flambda_parser_in.ml" +# 1706 "flambda_parser_in.ml" ) = -# 478 "flambda_parser.mly" +# 477 "flambda_parser.mly" ( Div ) -# 1715 "flambda_parser_in.ml" +# 1710 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1734,13 +1729,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1740 "flambda_parser_in.ml" +# 1735 "flambda_parser_in.ml" ) = -# 479 "flambda_parser.mly" +# 478 "flambda_parser.mly" ( Mod ) -# 1744 "flambda_parser_in.ml" +# 1739 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1763,13 +1758,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1769 "flambda_parser_in.ml" +# 1764 "flambda_parser_in.ml" ) = -# 480 "flambda_parser.mly" +# 479 "flambda_parser.mly" ( And ) -# 1773 "flambda_parser_in.ml" +# 1768 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1792,13 +1787,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1798 "flambda_parser_in.ml" +# 1793 "flambda_parser_in.ml" ) = -# 481 "flambda_parser.mly" +# 480 "flambda_parser.mly" ( Or ) -# 1802 "flambda_parser_in.ml" +# 1797 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1821,13 +1816,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 1827 "flambda_parser_in.ml" +# 1822 "flambda_parser_in.ml" ) = -# 482 "flambda_parser.mly" +# 481 "flambda_parser.mly" ( Xor ) -# 1831 "flambda_parser_in.ml" +# 1826 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1885,9 +1880,9 @@ module Tables = struct let _startpos = _startpos_op_ in let _endpos = _endpos__6_ in let _v : 'tv_binop_app = -# 517 "flambda_parser.mly" +# 515 "flambda_parser.mly" ( Binary (op, arg1, arg2) ) -# 1891 "flambda_parser_in.ml" +# 1886 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1919,18 +1914,18 @@ module Tables = struct } = _menhir_stack in let arg2 : 'tv_simple = Obj.magic arg2 in let op : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 1925 "flambda_parser_in.ml" +# 1920 "flambda_parser_in.ml" ) = Obj.magic op in let arg1 : 'tv_simple = Obj.magic arg1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_arg1_ in let _endpos = _endpos_arg2_ in let _v : 'tv_binop_app = -# 519 "flambda_parser.mly" +# 517 "flambda_parser.mly" ( Binary (Infix op, arg1, arg2) ) -# 1934 "flambda_parser_in.ml" +# 1929 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -1996,23 +1991,23 @@ module Tables = struct let _5 : unit = Obj.magic _5 in let arg1 : 'tv_simple = Obj.magic arg1 in let mut : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 2002 "flambda_parser_in.ml" +# 1997 "flambda_parser_in.ml" ) = Obj.magic mut in let ak : ( -# 225 "flambda_parser.mly" +# 224 "flambda_parser.mly" (Fexpr.array_kind) -# 2007 "flambda_parser_in.ml" +# 2002 "flambda_parser_in.ml" ) = Obj.magic ak in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos__8_ in let _v : 'tv_binop_app = -# 522 "flambda_parser.mly" +# 520 "flambda_parser.mly" ( Binary (Array_load (ak, mut), arg1, arg2) ) -# 2016 "flambda_parser_in.ml" +# 2011 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2056,24 +2051,24 @@ module Tables = struct } = _menhir_stack in let arg2 : 'tv_simple = Obj.magic arg2 in let c : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 2062 "flambda_parser_in.ml" +# 2057 "flambda_parser_in.ml" ) = Obj.magic c in let arg1 : 'tv_simple = Obj.magic arg1 in let i : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 2068 "flambda_parser_in.ml" +# 2063 "flambda_parser_in.ml" ) = Obj.magic i in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_arg2_ in let _v : 'tv_binop_app = -# 525 "flambda_parser.mly" +# 523 "flambda_parser.mly" ( Binary (Int_arith (i, c), arg1, arg2) ) -# 2077 "flambda_parser_in.ml" +# 2072 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2123,25 +2118,25 @@ module Tables = struct } = _menhir_stack in let arg2 : 'tv_simple = Obj.magic arg2 in let c : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 2129 "flambda_parser_in.ml" +# 2124 "flambda_parser_in.ml" ) = Obj.magic c in let arg1 : 'tv_simple = Obj.magic arg1 in let s : 'tv_signed_or_unsigned = Obj.magic s in let i : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 2136 "flambda_parser_in.ml" +# 2131 "flambda_parser_in.ml" ) = Obj.magic i in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_arg2_ in let _v : 'tv_binop_app = -# 529 "flambda_parser.mly" +# 527 "flambda_parser.mly" ( Binary (Int_comp (i, c s), arg1, arg2) ) -# 2145 "flambda_parser_in.ml" +# 2140 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2187,18 +2182,18 @@ module Tables = struct let s : 'tv_int_shift = Obj.magic s in let arg1 : 'tv_simple = Obj.magic arg1 in let i : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 2193 "flambda_parser_in.ml" +# 2188 "flambda_parser_in.ml" ) = Obj.magic i in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_arg2_ in let _v : 'tv_binop_app = -# 532 "flambda_parser.mly" +# 530 "flambda_parser.mly" ( Binary (Int_shift (i, s), arg1, arg2) ) -# 2202 "flambda_parser_in.ml" +# 2197 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2221,9 +2216,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_blank_or_kinds_with_subkinds_ = -# 939 "flambda_parser.mly" +# 937 "flambda_parser.mly" ( None ) -# 2227 "flambda_parser_in.ml" +# 2222 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2242,17 +2237,17 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let a : ( -# 242 "flambda_parser.mly" +# 241 "flambda_parser.mly" (Fexpr.kind_with_subkind list) -# 2248 "flambda_parser_in.ml" +# 2243 "flambda_parser_in.ml" ) = Obj.magic a in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_a_ in let _endpos = _endpos_a_ in let _v : 'tv_blank_or_kinds_with_subkinds_ = -# 940 "flambda_parser.mly" +# 938 "flambda_parser.mly" ( Some a ) -# 2256 "flambda_parser_in.ml" +# 2251 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2310,15 +2305,15 @@ module Tables = struct let xs : 'tv_loption_separated_nonempty_list_COMMA_simple__ = Obj.magic xs in let _5 : unit = Obj.magic _5 in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 2316 "flambda_parser_in.ml" +# 2311 "flambda_parser_in.ml" ) = Obj.magic alloc in let t : 'tv_tag = Obj.magic t in let m : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 2322 "flambda_parser_in.ml" +# 2317 "flambda_parser_in.ml" ) = Obj.magic m in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in @@ -2327,12 +2322,12 @@ module Tables = struct let _v : 'tv_block = let elts = # 232 "" ( xs ) -# 2331 "flambda_parser_in.ml" +# 2326 "flambda_parser_in.ml" in -# 545 "flambda_parser.mly" +# 543 "flambda_parser.mly" ( Variadic (Make_block (t, m, alloc), elts) ) -# 2336 "flambda_parser_in.ml" +# 2331 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2348,13 +2343,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 228 "flambda_parser.mly" +# 227 "flambda_parser.mly" (Fexpr.block_access_field_kind) -# 2354 "flambda_parser_in.ml" +# 2349 "flambda_parser_in.ml" ) = -# 434 "flambda_parser.mly" +# 433 "flambda_parser.mly" ( Any_value ) -# 2358 "flambda_parser_in.ml" +# 2353 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2377,13 +2372,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 228 "flambda_parser.mly" +# 227 "flambda_parser.mly" (Fexpr.block_access_field_kind) -# 2383 "flambda_parser_in.ml" +# 2378 "flambda_parser_in.ml" ) = -# 435 "flambda_parser.mly" +# 434 "flambda_parser.mly" ( Immediate ) -# 2387 "flambda_parser_in.ml" +# 2382 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2416,17 +2411,17 @@ module Tables = struct let size : 'tv_size_opt = Obj.magic size in let tag : 'tv_tag_opt = Obj.magic tag in let field_kind : ( -# 228 "flambda_parser.mly" +# 227 "flambda_parser.mly" (Fexpr.block_access_field_kind) -# 2422 "flambda_parser_in.ml" +# 2417 "flambda_parser_in.ml" ) = Obj.magic field_kind in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_field_kind_ in let _endpos = _endpos_size_ in let _v : 'tv_block_access_kind = -# 428 "flambda_parser.mly" +# 427 "flambda_parser.mly" ( Values { field_kind; tag; size } ) -# 2430 "flambda_parser_in.ml" +# 2425 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2456,9 +2451,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_size_ in let _v : 'tv_block_access_kind = -# 430 "flambda_parser.mly" +# 429 "flambda_parser.mly" ( Naked_floats { size } ) -# 2462 "flambda_parser_in.ml" +# 2457 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2476,7 +2471,7 @@ module Tables = struct let _v : 'tv_boption_KWD_NOALLOC_ = # 133 "" ( false ) -# 2480 "flambda_parser_in.ml" +# 2475 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2501,7 +2496,7 @@ module Tables = struct let _v : 'tv_boption_KWD_NOALLOC_ = # 135 "" ( true ) -# 2505 "flambda_parser_in.ml" +# 2500 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2519,7 +2514,7 @@ module Tables = struct let _v : 'tv_boption_KWD_TUPLED_ = # 133 "" ( false ) -# 2523 "flambda_parser_in.ml" +# 2518 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2544,7 +2539,7 @@ module Tables = struct let _v : 'tv_boption_KWD_TUPLED_ = # 135 "" ( true ) -# 2548 "flambda_parser_in.ml" +# 2543 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2563,17 +2558,17 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let alloc : ( -# 224 "flambda_parser.mly" +# 223 "flambda_parser.mly" (Fexpr.alloc_mode_for_types) -# 2569 "flambda_parser_in.ml" +# 2564 "flambda_parser_in.ml" ) = Obj.magic alloc in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_alloc_ in let _endpos = _endpos_alloc_ in let _v : 'tv_call_kind = -# 756 "flambda_parser.mly" +# 754 "flambda_parser.mly" ( Function (Indirect alloc) ) -# 2577 "flambda_parser_in.ml" +# 2572 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2623,9 +2618,9 @@ module Tables = struct } = _menhir_stack in let _6 : unit = Obj.magic _6 in let alloc : ( -# 224 "flambda_parser.mly" +# 223 "flambda_parser.mly" (Fexpr.alloc_mode_for_types) -# 2629 "flambda_parser_in.ml" +# 2624 "flambda_parser_in.ml" ) = Obj.magic alloc in let function_slot : 'tv_function_slot_opt = Obj.magic function_slot in let code_id : 'tv_code_id = Obj.magic code_id in @@ -2635,9 +2630,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__6_ in let _v : 'tv_call_kind = -# 762 "flambda_parser.mly" +# 760 "flambda_parser.mly" ( Function (Direct { code_id; function_slot; alloc }) ) -# 2641 "flambda_parser_in.ml" +# 2636 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2667,9 +2662,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_noalloc_ in let _v : 'tv_call_kind = -# 764 "flambda_parser.mly" +# 762 "flambda_parser.mly" ( C_call { alloc = not noalloc } ) -# 2673 "flambda_parser_in.ml" +# 2668 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2762,7 +2757,7 @@ module Tables = struct let _startpos = _startpos_header_ in let _endpos = _endpos_body_ in let _v : 'tv_code = -# 319 "flambda_parser.mly" +# 318 "flambda_parser.mly" ( let recursive, inline, loopify, id, newer_version_of, code_size, is_tupled = @@ -2772,7 +2767,7 @@ module Tables = struct params_and_body = { params; closure_var; region_var; depth_var; ret_cont; exn_cont; body }; code_size; is_tupled; loopify; } ) -# 2776 "flambda_parser_in.ml" +# 2771 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2865,9 +2860,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_id_ in let _v : 'tv_code_header = -# 339 "flambda_parser.mly" +# 338 "flambda_parser.mly" ( recursive, inline, loopify, id, newer_version_of, code_size, is_tupled ) -# 2871 "flambda_parser_in.ml" +# 2866 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2890,9 +2885,9 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : 'tv_code_id = -# 971 "flambda_parser.mly" +# 969 "flambda_parser.mly" ( v ) -# 2896 "flambda_parser_in.ml" +# 2891 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2915,9 +2910,9 @@ module Tables = struct let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_code_size = -# 975 "flambda_parser.mly" +# 973 "flambda_parser.mly" ( i ) -# 2921 "flambda_parser_in.ml" +# 2916 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2940,9 +2935,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_coercion = -# 951 "flambda_parser.mly" +# 949 "flambda_parser.mly" ( Id ) -# 2946 "flambda_parser_in.ml" +# 2941 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -2979,24 +2974,24 @@ module Tables = struct }; } = _menhir_stack in let to_ : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 2985 "flambda_parser_in.ml" +# 2980 "flambda_parser_in.ml" ) = Obj.magic to_ in let _3 : unit = Obj.magic _3 in let from : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 2991 "flambda_parser_in.ml" +# 2986 "flambda_parser_in.ml" ) = Obj.magic from in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_to__ in let _v : 'tv_coercion = -# 953 "flambda_parser.mly" +# 951 "flambda_parser.mly" ( Change_depth { from; to_; } ) -# 3000 "flambda_parser_in.ml" +# 2995 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3017,19 +3012,19 @@ module Tables = struct let c : ( # 74 "flambda_parser.mly" (string * char option) -# 3021 "flambda_parser_in.ml" +# 3016 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : ( -# 229 "flambda_parser.mly" +# 228 "flambda_parser.mly" (Fexpr.const) -# 3029 "flambda_parser_in.ml" +# 3024 "flambda_parser_in.ml" ) = -# 920 "flambda_parser.mly" +# 918 "flambda_parser.mly" ( make_const_int c ) -# 3033 "flambda_parser_in.ml" +# 3028 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3050,19 +3045,19 @@ module Tables = struct let c : ( # 68 "flambda_parser.mly" (float) -# 3054 "flambda_parser_in.ml" +# 3049 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : ( -# 229 "flambda_parser.mly" +# 228 "flambda_parser.mly" (Fexpr.const) -# 3062 "flambda_parser_in.ml" +# 3057 "flambda_parser_in.ml" ) = -# 921 "flambda_parser.mly" +# 919 "flambda_parser.mly" ( Naked_float c ) -# 3066 "flambda_parser_in.ml" +# 3061 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3085,13 +3080,13 @@ module Tables = struct let _startpos = _startpos_e_ in let _endpos = _endpos_e_ in let _v : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 3091 "flambda_parser_in.ml" +# 3086 "flambda_parser_in.ml" ) = -# 999 "flambda_parser.mly" +# 997 "flambda_parser.mly" ( Named e ) -# 3095 "flambda_parser_in.ml" +# 3090 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3110,21 +3105,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let s : ( -# 251 "flambda_parser.mly" +# 250 "flambda_parser.mly" (Fexpr.special_continuation) -# 3116 "flambda_parser_in.ml" +# 3111 "flambda_parser_in.ml" ) = Obj.magic s in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 3124 "flambda_parser_in.ml" +# 3119 "flambda_parser_in.ml" ) = -# 1000 "flambda_parser.mly" +# 998 "flambda_parser.mly" ( Special s ) -# 3128 "flambda_parser_in.ml" +# 3123 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3170,18 +3165,18 @@ module Tables = struct let _4 : unit = Obj.magic _4 in let params : 'tv_kinded_args = Obj.magic params in let sort : ( -# 236 "flambda_parser.mly" +# 235 "flambda_parser.mly" (Fexpr.continuation_sort option) -# 3176 "flambda_parser_in.ml" +# 3171 "flambda_parser_in.ml" ) = Obj.magic sort in let name : 'tv_continuation_id = Obj.magic name in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_name_ in let _endpos = _endpos_handler_ in let _v : 'tv_continuation_binding = -# 842 "flambda_parser.mly" +# 840 "flambda_parser.mly" ( { name; params; handler; sort } ) -# 3185 "flambda_parser_in.ml" +# 3180 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3204,9 +3199,9 @@ module Tables = struct let _startpos = _startpos_l_ in let _endpos = _endpos_l_ in let _v : 'tv_continuation_body = -# 669 "flambda_parser.mly" +# 667 "flambda_parser.mly" ( l ) -# 3210 "flambda_parser_in.ml" +# 3205 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3229,9 +3224,9 @@ module Tables = struct let _startpos = _startpos_a_ in let _endpos = _endpos_a_ in let _v : 'tv_continuation_body = -# 670 "flambda_parser.mly" +# 668 "flambda_parser.mly" ( a ) -# 3235 "flambda_parser_in.ml" +# 3230 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3252,7 +3247,7 @@ module Tables = struct let e : ( # 73 "flambda_parser.mly" (string) -# 3256 "flambda_parser_in.ml" +# 3251 "flambda_parser_in.ml" ) = Obj.magic e in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_e_ in @@ -3260,9 +3255,9 @@ module Tables = struct let _v : 'tv_continuation_id = let _endpos = _endpos_e_ in let _startpos = _startpos_e_ in -# 995 "flambda_parser.mly" +# 993 "flambda_parser.mly" ( make_located e (_startpos, _endpos) ) -# 3266 "flambda_parser_in.ml" +# 3261 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3278,13 +3273,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 236 "flambda_parser.mly" +# 235 "flambda_parser.mly" (Fexpr.continuation_sort option) -# 3284 "flambda_parser_in.ml" +# 3279 "flambda_parser_in.ml" ) = -# 834 "flambda_parser.mly" +# 832 "flambda_parser.mly" ( None ) -# 3288 "flambda_parser_in.ml" +# 3283 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3307,13 +3302,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 236 "flambda_parser.mly" +# 235 "flambda_parser.mly" (Fexpr.continuation_sort option) -# 3313 "flambda_parser_in.ml" +# 3308 "flambda_parser_in.ml" ) = -# 835 "flambda_parser.mly" +# 833 "flambda_parser.mly" ( Some Exn ) -# 3317 "flambda_parser_in.ml" +# 3312 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3336,13 +3331,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 236 "flambda_parser.mly" +# 235 "flambda_parser.mly" (Fexpr.continuation_sort option) -# 3342 "flambda_parser_in.ml" +# 3337 "flambda_parser_in.ml" ) = -# 836 "flambda_parser.mly" +# 834 "flambda_parser.mly" ( Some Define_root_symbol ) -# 3346 "flambda_parser_in.ml" +# 3341 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3372,13 +3367,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3378 "flambda_parser_in.ml" +# 3373 "flambda_parser_in.ml" ) = -# 449 "flambda_parser.mly" +# 448 "flambda_parser.mly" ( Tagged_immediate ) -# 3382 "flambda_parser_in.ml" +# 3377 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3401,13 +3396,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3407 "flambda_parser_in.ml" +# 3402 "flambda_parser_in.ml" ) = -# 450 "flambda_parser.mly" +# 449 "flambda_parser.mly" ( Naked_immediate ) -# 3411 "flambda_parser_in.ml" +# 3406 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3430,13 +3425,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3436 "flambda_parser_in.ml" +# 3431 "flambda_parser_in.ml" ) = -# 451 "flambda_parser.mly" +# 450 "flambda_parser.mly" ( Naked_float ) -# 3440 "flambda_parser_in.ml" +# 3435 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3459,13 +3454,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3465 "flambda_parser_in.ml" +# 3460 "flambda_parser_in.ml" ) = -# 452 "flambda_parser.mly" +# 451 "flambda_parser.mly" ( Naked_int32 ) -# 3469 "flambda_parser_in.ml" +# 3464 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3488,13 +3483,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3494 "flambda_parser_in.ml" +# 3489 "flambda_parser_in.ml" ) = -# 453 "flambda_parser.mly" +# 452 "flambda_parser.mly" ( Naked_int64 ) -# 3498 "flambda_parser_in.ml" +# 3493 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3517,13 +3512,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 3523 "flambda_parser_in.ml" +# 3518 "flambda_parser_in.ml" ) = -# 454 "flambda_parser.mly" +# 453 "flambda_parser.mly" ( Naked_nativeint ) -# 3527 "flambda_parser_in.ml" +# 3522 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3539,9 +3534,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_ctors = -# 616 "flambda_parser.mly" +# 614 "flambda_parser.mly" ( [], [] ) -# 3545 "flambda_parser_in.ml" +# 3540 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3564,9 +3559,9 @@ module Tables = struct let _startpos = _startpos_ctors_ in let _endpos = _endpos_ctors_ in let _v : 'tv_ctors = -# 617 "flambda_parser.mly" +# 615 "flambda_parser.mly" ( ctors ) -# 3570 "flambda_parser_in.ml" +# 3565 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3589,9 +3584,9 @@ module Tables = struct let _startpos = _startpos_tag_ in let _endpos = _endpos_tag_ in let _v : 'tv_ctors_nonempty = -# 619 "flambda_parser.mly" +# 617 "flambda_parser.mly" ( [ tag ], [] ) -# 3595 "flambda_parser_in.ml" +# 3590 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3628,9 +3623,9 @@ module Tables = struct let _startpos = _startpos_tag_ in let _endpos = _endpos_ctors_ in let _v : 'tv_ctors_nonempty = -# 621 "flambda_parser.mly" +# 619 "flambda_parser.mly" ( let (c, nc) = ctors in (tag :: c, nc) ) -# 3634 "flambda_parser_in.ml" +# 3629 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3653,9 +3648,9 @@ module Tables = struct let _startpos = _startpos_nonconsts_ in let _endpos = _endpos_nonconsts_ in let _v : 'tv_ctors_nonempty = -# 622 "flambda_parser.mly" +# 620 "flambda_parser.mly" ( [], nonconsts ) -# 3659 "flambda_parser_in.ml" +# 3654 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3692,9 +3687,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_deleted_code = -# 306 "flambda_parser.mly" +# 305 "flambda_parser.mly" ( code_id ) -# 3698 "flambda_parser_in.ml" +# 3693 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3719,18 +3714,18 @@ module Tables = struct }; } = _menhir_stack in let cont : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 3725 "flambda_parser_in.ml" +# 3720 "flambda_parser_in.ml" ) = Obj.magic cont in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_cont_ in let _v : 'tv_exn_continuation = -# 284 "flambda_parser.mly" +# 283 "flambda_parser.mly" ( cont ) -# 3734 "flambda_parser_in.ml" +# 3729 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3760,9 +3755,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_cont_ in let _v : 'tv_exn_continuation_id = -# 287 "flambda_parser.mly" +# 286 "flambda_parser.mly" ( cont ) -# 3766 "flambda_parser_in.ml" +# 3761 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3806,13 +3801,13 @@ module Tables = struct let _startpos = _startpos_before_ in let _endpos = _endpos__4_ in let _v : ( -# 232 "flambda_parser.mly" +# 231 "flambda_parser.mly" (Fexpr.expect_test_spec) -# 3812 "flambda_parser_in.ml" +# 3807 "flambda_parser_in.ml" ) = -# 271 "flambda_parser.mly" +# 270 "flambda_parser.mly" ( { before; after } ) -# 3816 "flambda_parser_in.ml" +# 3811 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3835,9 +3830,9 @@ module Tables = struct let _startpos = _startpos_l_ in let _endpos = _endpos_l_ in let _v : 'tv_expr = -# 648 "flambda_parser.mly" +# 646 "flambda_parser.mly" ( l ) -# 3841 "flambda_parser_in.ml" +# 3836 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3860,9 +3855,9 @@ module Tables = struct let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_expr = -# 649 "flambda_parser.mly" +# 647 "flambda_parser.mly" ( i ) -# 3866 "flambda_parser_in.ml" +# 3861 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3885,13 +3880,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 233 "flambda_parser.mly" +# 232 "flambda_parser.mly" (Fexpr.field_of_block) -# 3891 "flambda_parser_in.ml" +# 3886 "flambda_parser_in.ml" ) = -# 901 "flambda_parser.mly" +# 899 "flambda_parser.mly" ( Symbol s ) -# 3895 "flambda_parser_in.ml" +# 3890 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3914,13 +3909,13 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : ( -# 233 "flambda_parser.mly" +# 232 "flambda_parser.mly" (Fexpr.field_of_block) -# 3920 "flambda_parser_in.ml" +# 3915 "flambda_parser_in.ml" ) = -# 902 "flambda_parser.mly" +# 900 "flambda_parser.mly" ( Dynamically_computed v ) -# 3924 "flambda_parser_in.ml" +# 3919 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3941,21 +3936,21 @@ module Tables = struct let i : ( # 74 "flambda_parser.mly" (string * char option) -# 3945 "flambda_parser_in.ml" +# 3940 "flambda_parser_in.ml" ) = Obj.magic i in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : ( -# 233 "flambda_parser.mly" +# 232 "flambda_parser.mly" (Fexpr.field_of_block) -# 3953 "flambda_parser_in.ml" +# 3948 "flambda_parser_in.ml" ) = let _endpos = _endpos_i_ in let _startpos = _startpos_i_ in -# 903 "flambda_parser.mly" +# 901 "flambda_parser.mly" ( Tagged_immediate ( make_tagged_immediate ~loc:(_startpos, _endpos) i ) ) -# 3959 "flambda_parser_in.ml" +# 3954 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -3985,13 +3980,13 @@ module Tables = struct let _startpos = _startpos_body_ in let _endpos = _endpos__2_ in let _v : ( -# 234 "flambda_parser.mly" +# 233 "flambda_parser.mly" (Fexpr.flambda_unit) -# 3991 "flambda_parser_in.ml" +# 3986 "flambda_parser_in.ml" ) = -# 266 "flambda_parser.mly" +# 265 "flambda_parser.mly" ( body ) -# 3995 "flambda_parser_in.ml" +# 3990 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4014,13 +4009,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4020 "flambda_parser_in.ml" +# 4015 "flambda_parser_in.ml" ) = -# 500 "flambda_parser.mly" +# 498 "flambda_parser.mly" ( Yielding_bool Eq ) -# 4024 "flambda_parser_in.ml" +# 4019 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4043,13 +4038,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4049 "flambda_parser_in.ml" +# 4044 "flambda_parser_in.ml" ) = -# 501 "flambda_parser.mly" +# 499 "flambda_parser.mly" ( Yielding_bool Neq ) -# 4053 "flambda_parser_in.ml" +# 4048 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4072,13 +4067,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4078 "flambda_parser_in.ml" +# 4073 "flambda_parser_in.ml" ) = -# 502 "flambda_parser.mly" +# 500 "flambda_parser.mly" ( Yielding_bool ( Lt ()) ) -# 4082 "flambda_parser_in.ml" +# 4077 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4101,13 +4096,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4107 "flambda_parser_in.ml" +# 4102 "flambda_parser_in.ml" ) = -# 503 "flambda_parser.mly" +# 501 "flambda_parser.mly" ( Yielding_bool ( Gt ()) ) -# 4111 "flambda_parser_in.ml" +# 4106 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4130,13 +4125,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4136 "flambda_parser_in.ml" +# 4131 "flambda_parser_in.ml" ) = -# 504 "flambda_parser.mly" +# 502 "flambda_parser.mly" ( Yielding_bool (Le()) ) -# 4140 "flambda_parser_in.ml" +# 4135 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4159,13 +4154,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4165 "flambda_parser_in.ml" +# 4160 "flambda_parser_in.ml" ) = -# 505 "flambda_parser.mly" +# 503 "flambda_parser.mly" ( Yielding_bool (Ge ()) ) -# 4169 "flambda_parser_in.ml" +# 4164 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4188,13 +4183,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4194 "flambda_parser_in.ml" +# 4189 "flambda_parser_in.ml" ) = -# 506 "flambda_parser.mly" +# 504 "flambda_parser.mly" ( (Yielding_int_like_compare_functions ()) ) -# 4198 "flambda_parser_in.ml" +# 4193 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4215,19 +4210,19 @@ module Tables = struct let f : ( # 68 "flambda_parser.mly" (float) -# 4219 "flambda_parser_in.ml" +# 4214 "flambda_parser_in.ml" ) = Obj.magic f in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 4227 "flambda_parser_in.ml" +# 4222 "flambda_parser_in.ml" ) = -# 881 "flambda_parser.mly" +# 879 "flambda_parser.mly" ( Const f ) -# 4231 "flambda_parser_in.ml" +# 4226 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4250,13 +4245,13 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 4256 "flambda_parser_in.ml" +# 4251 "flambda_parser_in.ml" ) = -# 882 "flambda_parser.mly" +# 880 "flambda_parser.mly" ( Var v ) -# 4260 "flambda_parser_in.ml" +# 4255 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4293,9 +4288,9 @@ module Tables = struct }; } = _menhir_stack in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 4299 "flambda_parser_in.ml" +# 4294 "flambda_parser_in.ml" ) = Obj.magic alloc in let function_slot : 'tv_function_slot_opt = Obj.magic function_slot in let code_id : 'tv_code_id = Obj.magic code_id in @@ -4304,9 +4299,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_alloc_ in let _v : 'tv_fun_decl = -# 730 "flambda_parser.mly" +# 728 "flambda_parser.mly" ( { code_id; function_slot; alloc; } ) -# 4310 "flambda_parser_in.ml" +# 4305 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4325,17 +4320,17 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let n : ( -# 246 "flambda_parser.mly" +# 245 "flambda_parser.mly" (Fexpr.name) -# 4331 "flambda_parser_in.ml" +# 4326 "flambda_parser_in.ml" ) = Obj.magic n in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_n_ in let _endpos = _endpos_n_ in let _v : 'tv_func_name_with_optional_arities = -# 930 "flambda_parser.mly" +# 928 "flambda_parser.mly" ( n, None ) -# 4339 "flambda_parser_in.ml" +# 4334 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4391,26 +4386,26 @@ module Tables = struct } = _menhir_stack in let _7 : unit = Obj.magic _7 in let ret_arity : ( -# 242 "flambda_parser.mly" +# 241 "flambda_parser.mly" (Fexpr.kind_with_subkind list) -# 4397 "flambda_parser_in.ml" +# 4392 "flambda_parser_in.ml" ) = Obj.magic ret_arity in let _5 : unit = Obj.magic _5 in let params_arity : 'tv_blank_or_kinds_with_subkinds_ = Obj.magic params_arity in let _3 : unit = Obj.magic _3 in let n : ( -# 246 "flambda_parser.mly" +# 245 "flambda_parser.mly" (Fexpr.name) -# 4405 "flambda_parser_in.ml" +# 4400 "flambda_parser_in.ml" ) = Obj.magic n in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : 'tv_func_name_with_optional_arities = -# 935 "flambda_parser.mly" +# 933 "flambda_parser.mly" ( n, Some ({ params_arity; ret_arity } : function_arities) ) -# 4414 "flambda_parser_in.ml" +# 4409 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4433,9 +4428,9 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : 'tv_function_slot = -# 978 "flambda_parser.mly" +# 976 "flambda_parser.mly" ( v ) -# 4439 "flambda_parser_in.ml" +# 4434 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4451,9 +4446,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_function_slot_opt = -# 982 "flambda_parser.mly" +# 980 "flambda_parser.mly" ( None ) -# 4457 "flambda_parser_in.ml" +# 4452 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4483,9 +4478,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_cid_ in let _v : 'tv_function_slot_opt = -# 983 "flambda_parser.mly" +# 981 "flambda_parser.mly" ( Some cid ) -# 4489 "flambda_parser_in.ml" +# 4484 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4504,21 +4499,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let o : ( -# 227 "flambda_parser.mly" +# 226 "flambda_parser.mly" (Fexpr.binary_int_arith_op) -# 4510 "flambda_parser_in.ml" +# 4505 "flambda_parser_in.ml" ) = Obj.magic o in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_o_ in let _endpos = _endpos_o_ in let _v : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 4518 "flambda_parser_in.ml" +# 4513 "flambda_parser_in.ml" ) = -# 401 "flambda_parser.mly" +# 400 "flambda_parser.mly" ( Int_arith o ) -# 4522 "flambda_parser_in.ml" +# 4517 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4537,21 +4532,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let c : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 4543 "flambda_parser_in.ml" +# 4538 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 4551 "flambda_parser_in.ml" +# 4546 "flambda_parser_in.ml" ) = -# 402 "flambda_parser.mly" +# 401 "flambda_parser.mly" ( Int_comp (c Signed) ) -# 4555 "flambda_parser_in.ml" +# 4550 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4574,13 +4569,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 4580 "flambda_parser_in.ml" +# 4575 "flambda_parser_in.ml" ) = -# 403 "flambda_parser.mly" +# 402 "flambda_parser.mly" ( Int_shift s ) -# 4584 "flambda_parser_in.ml" +# 4579 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4599,21 +4594,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let o : ( -# 226 "flambda_parser.mly" +# 225 "flambda_parser.mly" (Fexpr.binary_float_arith_op) -# 4605 "flambda_parser_in.ml" +# 4600 "flambda_parser_in.ml" ) = Obj.magic o in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_o_ in let _endpos = _endpos_o_ in let _v : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 4613 "flambda_parser_in.ml" +# 4608 "flambda_parser_in.ml" ) = -# 404 "flambda_parser.mly" +# 403 "flambda_parser.mly" ( Float_arith o ) -# 4617 "flambda_parser_in.ml" +# 4612 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4632,21 +4627,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let c : ( -# 235 "flambda_parser.mly" +# 234 "flambda_parser.mly" (unit Fexpr.comparison_behaviour) -# 4638 "flambda_parser_in.ml" +# 4633 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : ( -# 238 "flambda_parser.mly" +# 237 "flambda_parser.mly" (Fexpr.infix_binop) -# 4646 "flambda_parser_in.ml" +# 4641 "flambda_parser_in.ml" ) = -# 405 "flambda_parser.mly" +# 404 "flambda_parser.mly" ( Float_comp c ) -# 4650 "flambda_parser_in.ml" +# 4645 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4669,9 +4664,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_init_or_assign = -# 457 "flambda_parser.mly" +# 456 "flambda_parser.mly" ( Initialization ) -# 4675 "flambda_parser_in.ml" +# 4670 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4694,9 +4689,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_init_or_assign = -# 458 "flambda_parser.mly" +# 457 "flambda_parser.mly" ( Assignment Heap ) -# 4700 "flambda_parser_in.ml" +# 4695 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4727,9 +4722,9 @@ module Tables = struct }; } = _menhir_stack in let region : ( -# 250 "flambda_parser.mly" +# 249 "flambda_parser.mly" (Fexpr.region) -# 4733 "flambda_parser_in.ml" +# 4728 "flambda_parser_in.ml" ) = Obj.magic region in let _2 : unit = Obj.magic _2 in let _1 : unit = Obj.magic _1 in @@ -4737,9 +4732,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_region_ in let _v : 'tv_init_or_assign = -# 459 "flambda_parser.mly" +# 458 "flambda_parser.mly" ( Assignment (Local { region }) ) -# 4743 "flambda_parser_in.ml" +# 4738 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4783,9 +4778,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inline = -# 768 "flambda_parser.mly" +# 766 "flambda_parser.mly" ( Always_inline ) -# 4789 "flambda_parser_in.ml" +# 4784 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4829,9 +4824,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inline = -# 769 "flambda_parser.mly" +# 767 "flambda_parser.mly" ( Available_inline ) -# 4835 "flambda_parser_in.ml" +# 4830 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4875,9 +4870,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inline = -# 770 "flambda_parser.mly" +# 768 "flambda_parser.mly" ( Never_inline ) -# 4881 "flambda_parser_in.ml" +# 4876 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4921,9 +4916,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inline = -# 771 "flambda_parser.mly" +# 769 "flambda_parser.mly" ( Inline_attribute.Unroll i ) -# 4927 "flambda_parser_in.ml" +# 4922 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -4967,9 +4962,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inline = -# 772 "flambda_parser.mly" +# 770 "flambda_parser.mly" ( Default_inline ) -# 4973 "flambda_parser_in.ml" +# 4968 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5013,9 +5008,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlined = -# 775 "flambda_parser.mly" +# 773 "flambda_parser.mly" ( Always_inlined ) -# 5019 "flambda_parser_in.ml" +# 5014 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5059,9 +5054,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlined = -# 776 "flambda_parser.mly" +# 774 "flambda_parser.mly" ( Hint_inlined ) -# 5065 "flambda_parser_in.ml" +# 5060 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5105,9 +5100,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlined = -# 777 "flambda_parser.mly" +# 775 "flambda_parser.mly" ( Never_inlined ) -# 5111 "flambda_parser_in.ml" +# 5106 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5151,9 +5146,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlined = -# 778 "flambda_parser.mly" +# 776 "flambda_parser.mly" ( Unroll i ) -# 5157 "flambda_parser_in.ml" +# 5152 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5197,9 +5192,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlined = -# 779 "flambda_parser.mly" +# 777 "flambda_parser.mly" ( Default_inlined ) -# 5203 "flambda_parser_in.ml" +# 5198 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5243,12 +5238,12 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlining_state = -# 783 "flambda_parser.mly" +# 781 "flambda_parser.mly" ( (* CR poechsel: Parse the inlining arguments *) { depth } ) -# 5252 "flambda_parser_in.ml" +# 5247 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5292,9 +5287,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_inlining_state_depth = -# 789 "flambda_parser.mly" +# 787 "flambda_parser.mly" ( i ) -# 5298 "flambda_parser_in.ml" +# 5293 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5317,9 +5312,9 @@ module Tables = struct let _startpos = _startpos_w_ in let _endpos = _endpos_w_ in let _v : 'tv_inner_expr = -# 658 "flambda_parser.mly" +# 656 "flambda_parser.mly" ( w ) -# 5323 "flambda_parser_in.ml" +# 5318 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5342,9 +5337,9 @@ module Tables = struct let _startpos = _startpos_a_ in let _endpos = _endpos_a_ in let _v : 'tv_inner_expr = -# 659 "flambda_parser.mly" +# 657 "flambda_parser.mly" ( a ) -# 5348 "flambda_parser_in.ml" +# 5343 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5367,13 +5362,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5373 "flambda_parser_in.ml" +# 5368 "flambda_parser_in.ml" ) = -# 491 "flambda_parser.mly" +# 490 "flambda_parser.mly" ( fun s -> Yielding_bool (Lt s) ) -# 5377 "flambda_parser_in.ml" +# 5372 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5396,42 +5391,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5402 "flambda_parser_in.ml" +# 5397 "flambda_parser_in.ml" ) = -# 492 "flambda_parser.mly" +# 491 "flambda_parser.mly" ( fun s -> Yielding_bool (Gt s) ) -# 5406 "flambda_parser_in.ml" - in - { - CamlinternalMenhirLib.EngineTypes.state = _menhir_s; - CamlinternalMenhirLib.EngineTypes.semv = Obj.repr _v; - CamlinternalMenhirLib.EngineTypes.startp = _startpos; - CamlinternalMenhirLib.EngineTypes.endp = _endpos; - CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; - }); - (fun _menhir_env -> - let _menhir_stack = _menhir_env.CamlinternalMenhirLib.EngineTypes.stack in - let { - CamlinternalMenhirLib.EngineTypes.state = _menhir_s; - CamlinternalMenhirLib.EngineTypes.semv = _1; - CamlinternalMenhirLib.EngineTypes.startp = _startpos__1_; - CamlinternalMenhirLib.EngineTypes.endp = _endpos__1_; - CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; - } = _menhir_stack in - let _1 : unit = Obj.magic _1 in - let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in - let _startpos = _startpos__1_ in - let _endpos = _endpos__1_ in - let _v : ( -# 239 "flambda_parser.mly" - (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5431 "flambda_parser_in.ml" - ) = -# 493 "flambda_parser.mly" - ( fun s -> Yielding_bool Neq ) -# 5435 "flambda_parser_in.ml" +# 5401 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5454,13 +5420,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5460 "flambda_parser_in.ml" +# 5426 "flambda_parser_in.ml" ) = -# 494 "flambda_parser.mly" +# 492 "flambda_parser.mly" ( fun s -> Yielding_bool (Le s) ) -# 5464 "flambda_parser_in.ml" +# 5430 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5483,13 +5449,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5489 "flambda_parser_in.ml" +# 5455 "flambda_parser_in.ml" ) = -# 495 "flambda_parser.mly" +# 493 "flambda_parser.mly" ( fun s -> Yielding_bool (Ge s) ) -# 5493 "flambda_parser_in.ml" +# 5459 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5512,13 +5478,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5518 "flambda_parser_in.ml" +# 5484 "flambda_parser_in.ml" ) = -# 496 "flambda_parser.mly" +# 494 "flambda_parser.mly" ( fun _ -> Yielding_bool Neq ) -# 5522 "flambda_parser_in.ml" +# 5488 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5541,13 +5507,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 239 "flambda_parser.mly" +# 238 "flambda_parser.mly" (Fexpr.signed_or_unsigned -> Fexpr.signed_or_unsigned Fexpr.comparison_behaviour) -# 5547 "flambda_parser_in.ml" +# 5513 "flambda_parser_in.ml" ) = -# 497 "flambda_parser.mly" +# 495 "flambda_parser.mly" ( fun s -> Yielding_int_like_compare_functions s ) -# 5551 "flambda_parser_in.ml" +# 5517 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5570,9 +5536,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_int_shift = -# 510 "flambda_parser.mly" +# 508 "flambda_parser.mly" ( Lsl ) -# 5576 "flambda_parser_in.ml" +# 5542 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5595,9 +5561,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_int_shift = -# 511 "flambda_parser.mly" +# 509 "flambda_parser.mly" ( Lsr ) -# 5601 "flambda_parser_in.ml" +# 5567 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5620,9 +5586,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_int_shift = -# 512 "flambda_parser.mly" +# 510 "flambda_parser.mly" ( Asr ) -# 5626 "flambda_parser_in.ml" +# 5592 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5641,21 +5607,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let nnk : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 5647 "flambda_parser_in.ml" +# 5613 "flambda_parser_in.ml" ) = Obj.magic nnk in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_nnk_ in let _endpos = _endpos_nnk_ in let _v : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 5655 "flambda_parser_in.ml" +# 5621 "flambda_parser_in.ml" ) = -# 587 "flambda_parser.mly" +# 585 "flambda_parser.mly" ( Naked_number nnk ) -# 5659 "flambda_parser_in.ml" +# 5625 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5674,21 +5640,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let subkind : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 5680 "flambda_parser_in.ml" +# 5646 "flambda_parser_in.ml" ) = Obj.magic subkind in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_subkind_ in let _endpos = _endpos_subkind_ in let _v : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 5688 "flambda_parser_in.ml" +# 5654 "flambda_parser_in.ml" ) = -# 588 "flambda_parser.mly" +# 586 "flambda_parser.mly" ( Value subkind ) -# 5692 "flambda_parser_in.ml" +# 5658 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5711,13 +5677,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 5717 "flambda_parser_in.ml" +# 5683 "flambda_parser_in.ml" ) = -# 589 "flambda_parser.mly" +# 587 "flambda_parser.mly" ( Region ) -# 5721 "flambda_parser_in.ml" +# 5687 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5740,13 +5706,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 5746 "flambda_parser_in.ml" +# 5712 "flambda_parser_in.ml" ) = -# 590 "flambda_parser.mly" +# 588 "flambda_parser.mly" ( Rec_info ) -# 5750 "flambda_parser_in.ml" +# 5716 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5762,9 +5728,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_kind_with_subkind_opt = -# 911 "flambda_parser.mly" +# 909 "flambda_parser.mly" ( None ) -# 5768 "flambda_parser_in.ml" +# 5734 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5789,18 +5755,18 @@ module Tables = struct }; } = _menhir_stack in let kind : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 5795 "flambda_parser_in.ml" +# 5761 "flambda_parser_in.ml" ) = Obj.magic kind in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_kind_ in let _v : 'tv_kind_with_subkind_opt = -# 912 "flambda_parser.mly" +# 910 "flambda_parser.mly" ( Some kind ) -# 5804 "flambda_parser_in.ml" +# 5770 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5816,9 +5782,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_kinded_args = -# 846 "flambda_parser.mly" +# 844 "flambda_parser.mly" ( [] ) -# 5822 "flambda_parser_in.ml" +# 5788 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5855,9 +5821,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_kinded_args = -# 847 "flambda_parser.mly" +# 845 "flambda_parser.mly" ( vs ) -# 5861 "flambda_parser_in.ml" +# 5827 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5887,9 +5853,9 @@ module Tables = struct let _startpos = _startpos_param_ in let _endpos = _endpos_kind_ in let _v : 'tv_kinded_variable = -# 907 "flambda_parser.mly" +# 905 "flambda_parser.mly" ( { param; kind } ) -# 5893 "flambda_parser_in.ml" +# 5859 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5912,13 +5878,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 242 "flambda_parser.mly" +# 241 "flambda_parser.mly" (Fexpr.kind_with_subkind list) -# 5918 "flambda_parser_in.ml" +# 5884 "flambda_parser_in.ml" ) = -# 593 "flambda_parser.mly" +# 591 "flambda_parser.mly" ( [] ) -# 5922 "flambda_parser_in.ml" +# 5888 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5941,13 +5907,13 @@ module Tables = struct let _startpos = _startpos_ks_ in let _endpos = _endpos_ks_ in let _v : ( -# 242 "flambda_parser.mly" +# 241 "flambda_parser.mly" (Fexpr.kind_with_subkind list) -# 5947 "flambda_parser_in.ml" +# 5913 "flambda_parser_in.ml" ) = -# 594 "flambda_parser.mly" +# 592 "flambda_parser.mly" ( ks ) -# 5951 "flambda_parser_in.ml" +# 5917 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -5991,9 +5957,9 @@ module Tables = struct let _startpos = _startpos_bindings_ in let _endpos = _endpos_body_ in let _v : 'tv_let__continuation_body_ = -# 706 "flambda_parser.mly" +# 704 "flambda_parser.mly" ( ({ bindings; value_slots; body } : let_) ) -# 5997 "flambda_parser_in.ml" +# 5963 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6037,9 +6003,9 @@ module Tables = struct let _startpos = _startpos_bindings_ in let _endpos = _endpos_body_ in let _v : 'tv_let__expr_ = -# 706 "flambda_parser.mly" +# 704 "flambda_parser.mly" ( ({ bindings; value_slots; body } : let_) ) -# 6043 "flambda_parser_in.ml" +# 6009 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6070,9 +6036,9 @@ module Tables = struct }; } = _menhir_stack in let defining_expr : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 6076 "flambda_parser_in.ml" +# 6042 "flambda_parser_in.ml" ) = Obj.magic defining_expr in let _2 : unit = Obj.magic _2 in let var : 'tv_variable = Obj.magic var in @@ -6080,9 +6046,9 @@ module Tables = struct let _startpos = _startpos_var_ in let _endpos = _endpos_defining_expr_ in let _v : 'tv_let_binding = -# 711 "flambda_parser.mly" +# 709 "flambda_parser.mly" ( { var; defining_expr } ) -# 6086 "flambda_parser_in.ml" +# 6052 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6112,9 +6078,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_l_ in let _v : 'tv_let_expr_continuation_body_ = -# 653 "flambda_parser.mly" +# 651 "flambda_parser.mly" ( Let l ) -# 6118 "flambda_parser_in.ml" +# 6084 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6137,9 +6103,9 @@ module Tables = struct let _startpos = _startpos_ls_ in let _endpos = _endpos_ls_ in let _v : 'tv_let_expr_continuation_body_ = -# 654 "flambda_parser.mly" +# 652 "flambda_parser.mly" ( Let_symbol ls ) -# 6143 "flambda_parser_in.ml" +# 6109 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6169,9 +6135,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_l_ in let _v : 'tv_let_expr_expr_ = -# 653 "flambda_parser.mly" +# 651 "flambda_parser.mly" ( Let l ) -# 6175 "flambda_parser_in.ml" +# 6141 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6194,9 +6160,9 @@ module Tables = struct let _startpos = _startpos_ls_ in let _endpos = _endpos_ls_ in let _v : 'tv_let_expr_expr_ = -# 654 "flambda_parser.mly" +# 652 "flambda_parser.mly" ( Let_symbol ls ) -# 6200 "flambda_parser_in.ml" +# 6166 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6247,9 +6213,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_body_ in let _v : 'tv_let_symbol_continuation_body_ = -# 294 "flambda_parser.mly" +# 293 "flambda_parser.mly" ( { bindings; value_slots; body } ) -# 6253 "flambda_parser_in.ml" +# 6219 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6300,9 +6266,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_body_ in let _v : 'tv_let_symbol_expr_ = -# 294 "flambda_parser.mly" +# 293 "flambda_parser.mly" ( { bindings; value_slots; body } ) -# 6306 "flambda_parser_in.ml" +# 6272 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6325,13 +6291,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6331 "flambda_parser_in.ml" +# 6297 "flambda_parser_in.ml" ) = -# 798 "flambda_parser.mly" +# 796 "flambda_parser.mly" ( Always_loopify ) -# 6335 "flambda_parser_in.ml" +# 6301 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6354,13 +6320,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6360 "flambda_parser_in.ml" +# 6326 "flambda_parser_in.ml" ) = -# 799 "flambda_parser.mly" +# 797 "flambda_parser.mly" ( Never_loopify ) -# 6364 "flambda_parser_in.ml" +# 6330 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6383,13 +6349,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6389 "flambda_parser_in.ml" +# 6355 "flambda_parser_in.ml" ) = -# 800 "flambda_parser.mly" +# 798 "flambda_parser.mly" ( Already_loopified ) -# 6393 "flambda_parser_in.ml" +# 6359 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6419,13 +6385,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6425 "flambda_parser_in.ml" +# 6391 "flambda_parser_in.ml" ) = -# 801 "flambda_parser.mly" +# 799 "flambda_parser.mly" ( Default_loopify_and_tailrec ) -# 6429 "flambda_parser_in.ml" +# 6395 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6448,13 +6414,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6454 "flambda_parser_in.ml" +# 6420 "flambda_parser_in.ml" ) = -# 802 "flambda_parser.mly" +# 800 "flambda_parser.mly" ( Default_loopify_and_not_tailrec ) -# 6458 "flambda_parser_in.ml" +# 6424 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6470,9 +6436,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_loopify_opt = -# 793 "flambda_parser.mly" +# 791 "flambda_parser.mly" ( None ) -# 6476 "flambda_parser_in.ml" +# 6442 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6510,9 +6476,9 @@ module Tables = struct } = _menhir_stack in let _4 : unit = Obj.magic _4 in let l : ( -# 243 "flambda_parser.mly" +# 242 "flambda_parser.mly" (Fexpr.loopify_attribute) -# 6516 "flambda_parser_in.ml" +# 6482 "flambda_parser_in.ml" ) = Obj.magic l in let _2 : unit = Obj.magic _2 in let _1 : unit = Obj.magic _1 in @@ -6520,9 +6486,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_loopify_opt = -# 794 "flambda_parser.mly" +# 792 "flambda_parser.mly" ( Some l ) -# 6526 "flambda_parser_in.ml" +# 6492 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6540,7 +6506,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_field_of_block__ = # 142 "" ( [] ) -# 6544 "flambda_parser_in.ml" +# 6510 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6565,7 +6531,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_field_of_block__ = # 144 "" ( x ) -# 6569 "flambda_parser_in.ml" +# 6535 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6583,7 +6549,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_float_or_variable__ = # 142 "" ( [] ) -# 6587 "flambda_parser_in.ml" +# 6553 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6608,7 +6574,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_float_or_variable__ = # 144 "" ( x ) -# 6612 "flambda_parser_in.ml" +# 6578 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6626,7 +6592,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_simple__ = # 142 "" ( [] ) -# 6630 "flambda_parser_in.ml" +# 6596 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6651,7 +6617,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_COMMA_simple__ = # 144 "" ( x ) -# 6655 "flambda_parser_in.ml" +# 6621 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6669,7 +6635,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_KWD_ANDWHERE_continuation_binding__ = # 142 "" ( [] ) -# 6673 "flambda_parser_in.ml" +# 6639 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6694,7 +6660,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_KWD_ANDWHERE_continuation_binding__ = # 144 "" ( x ) -# 6698 "flambda_parser_in.ml" +# 6664 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6712,7 +6678,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_PIPE_switch_case__ = # 142 "" ( [] ) -# 6716 "flambda_parser_in.ml" +# 6682 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6737,7 +6703,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_PIPE_switch_case__ = # 144 "" ( x ) -# 6741 "flambda_parser_in.ml" +# 6707 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6755,7 +6721,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_SEMICOLON_float_or_variable__ = # 142 "" ( [] ) -# 6759 "flambda_parser_in.ml" +# 6725 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6780,7 +6746,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_SEMICOLON_float_or_variable__ = # 144 "" ( x ) -# 6784 "flambda_parser_in.ml" +# 6750 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6798,7 +6764,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_SEMICOLON_value_slot__ = # 142 "" ( [] ) -# 6802 "flambda_parser_in.ml" +# 6768 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6823,7 +6789,7 @@ module Tables = struct let _v : 'tv_loption_separated_nonempty_list_SEMICOLON_value_slot__ = # 144 "" ( x ) -# 6827 "flambda_parser_in.ml" +# 6793 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6846,9 +6812,9 @@ module Tables = struct let _startpos = _startpos_body_ in let _endpos = _endpos_body_ in let _v : 'tv_module_ = -# 280 "flambda_parser.mly" +# 279 "flambda_parser.mly" ( { body } ) -# 6852 "flambda_parser_in.ml" +# 6818 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6871,13 +6837,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 6877 "flambda_parser_in.ml" +# 6843 "flambda_parser_in.ml" ) = -# 417 "flambda_parser.mly" +# 416 "flambda_parser.mly" ( Mutable ) -# 6881 "flambda_parser_in.ml" +# 6847 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6900,13 +6866,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 6906 "flambda_parser_in.ml" +# 6872 "flambda_parser_in.ml" ) = -# 418 "flambda_parser.mly" +# 417 "flambda_parser.mly" ( Immutable_unique ) -# 6910 "flambda_parser_in.ml" +# 6876 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6922,13 +6888,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 6928 "flambda_parser_in.ml" +# 6894 "flambda_parser_in.ml" ) = -# 419 "flambda_parser.mly" +# 418 "flambda_parser.mly" ( Immutable ) -# 6932 "flambda_parser_in.ml" +# 6898 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6951,13 +6917,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 6957 "flambda_parser_in.ml" +# 6923 "flambda_parser_in.ml" ) = -# 572 "flambda_parser.mly" +# 570 "flambda_parser.mly" ( Naked_immediate ) -# 6961 "flambda_parser_in.ml" +# 6927 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -6980,13 +6946,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 6986 "flambda_parser_in.ml" +# 6952 "flambda_parser_in.ml" ) = -# 573 "flambda_parser.mly" +# 571 "flambda_parser.mly" ( Naked_float ) -# 6990 "flambda_parser_in.ml" +# 6956 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7009,13 +6975,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 7015 "flambda_parser_in.ml" +# 6981 "flambda_parser_in.ml" ) = -# 574 "flambda_parser.mly" +# 572 "flambda_parser.mly" ( Naked_int32 ) -# 7019 "flambda_parser_in.ml" +# 6985 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7038,13 +7004,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 7044 "flambda_parser_in.ml" +# 7010 "flambda_parser_in.ml" ) = -# 575 "flambda_parser.mly" +# 573 "flambda_parser.mly" ( Naked_int64 ) -# 7048 "flambda_parser_in.ml" +# 7014 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7067,13 +7033,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 245 "flambda_parser.mly" +# 244 "flambda_parser.mly" (Flambda_kind.Naked_number_kind.t) -# 7073 "flambda_parser_in.ml" +# 7039 "flambda_parser_in.ml" ) = -# 576 "flambda_parser.mly" +# 574 "flambda_parser.mly" ( Naked_nativeint ) -# 7077 "flambda_parser_in.ml" +# 7043 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7096,13 +7062,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 246 "flambda_parser.mly" +# 245 "flambda_parser.mly" (Fexpr.name) -# 7102 "flambda_parser_in.ml" +# 7068 "flambda_parser_in.ml" ) = -# 925 "flambda_parser.mly" +# 923 "flambda_parser.mly" ( (Symbol s:name) ) -# 7106 "flambda_parser_in.ml" +# 7072 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7125,13 +7091,13 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : ( -# 246 "flambda_parser.mly" +# 245 "flambda_parser.mly" (Fexpr.name) -# 7131 "flambda_parser_in.ml" +# 7097 "flambda_parser_in.ml" ) = -# 926 "flambda_parser.mly" +# 924 "flambda_parser.mly" ( (Var v:name) ) -# 7135 "flambda_parser_in.ml" +# 7101 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7154,13 +7120,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7160 "flambda_parser_in.ml" +# 7126 "flambda_parser_in.ml" ) = -# 549 "flambda_parser.mly" +# 547 "flambda_parser.mly" ( Simple s ) -# 7164 "flambda_parser_in.ml" +# 7130 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7183,13 +7149,13 @@ module Tables = struct let _startpos = _startpos_n_ in let _endpos = _endpos_n_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7189 "flambda_parser_in.ml" +# 7155 "flambda_parser_in.ml" ) = -# 550 "flambda_parser.mly" +# 548 "flambda_parser.mly" ( Prim (Nullary n) ) -# 7193 "flambda_parser_in.ml" +# 7159 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7219,13 +7185,13 @@ module Tables = struct let _startpos = _startpos_u_ in let _endpos = _endpos_a_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7225 "flambda_parser_in.ml" +# 7191 "flambda_parser_in.ml" ) = -# 551 "flambda_parser.mly" +# 549 "flambda_parser.mly" ( Prim (Unary (u, a)) ) -# 7229 "flambda_parser_in.ml" +# 7195 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7248,13 +7214,13 @@ module Tables = struct let _startpos = _startpos_b_ in let _endpos = _endpos_b_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7254 "flambda_parser_in.ml" +# 7220 "flambda_parser_in.ml" ) = -# 552 "flambda_parser.mly" +# 550 "flambda_parser.mly" ( Prim b ) -# 7258 "flambda_parser_in.ml" +# 7224 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7277,13 +7243,13 @@ module Tables = struct let _startpos = _startpos_t_ in let _endpos = _endpos_t_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7283 "flambda_parser_in.ml" +# 7249 "flambda_parser_in.ml" ) = -# 553 "flambda_parser.mly" +# 551 "flambda_parser.mly" ( Prim t ) -# 7287 "flambda_parser_in.ml" +# 7253 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7306,13 +7272,13 @@ module Tables = struct let _startpos = _startpos_b_ in let _endpos = _endpos_b_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7312 "flambda_parser_in.ml" +# 7278 "flambda_parser_in.ml" ) = -# 554 "flambda_parser.mly" +# 552 "flambda_parser.mly" ( Prim b ) -# 7316 "flambda_parser_in.ml" +# 7282 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7335,13 +7301,13 @@ module Tables = struct let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7341 "flambda_parser_in.ml" +# 7307 "flambda_parser_in.ml" ) = -# 555 "flambda_parser.mly" +# 553 "flambda_parser.mly" ( Closure c ) -# 7345 "flambda_parser_in.ml" +# 7311 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7366,22 +7332,22 @@ module Tables = struct }; } = _menhir_stack in let ri : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 7372 "flambda_parser_in.ml" +# 7338 "flambda_parser_in.ml" ) = Obj.magic ri in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_ri_ in let _v : ( -# 247 "flambda_parser.mly" +# 246 "flambda_parser.mly" (Fexpr.named) -# 7381 "flambda_parser_in.ml" +# 7347 "flambda_parser_in.ml" ) = -# 561 "flambda_parser.mly" +# 559 "flambda_parser.mly" ( Rec_info ri ) -# 7385 "flambda_parser_in.ml" +# 7351 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7425,9 +7391,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_newer_version_of = -# 343 "flambda_parser.mly" +# 342 "flambda_parser.mly" ( id ) -# 7431 "flambda_parser_in.ml" +# 7397 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7458,9 +7424,9 @@ module Tables = struct }; } = _menhir_stack in let kinds : ( -# 256 "flambda_parser.mly" +# 255 "flambda_parser.mly" (Fexpr.subkind list) -# 7464 "flambda_parser_in.ml" +# 7430 "flambda_parser_in.ml" ) = Obj.magic kinds in let _2 : unit = Obj.magic _2 in let tag : 'tv_tag = Obj.magic tag in @@ -7468,9 +7434,9 @@ module Tables = struct let _startpos = _startpos_tag_ in let _endpos = _endpos_kinds_ in let _v : 'tv_nonconst_ctor = -# 627 "flambda_parser.mly" +# 625 "flambda_parser.mly" ( tag, kinds ) -# 7474 "flambda_parser_in.ml" +# 7440 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7493,9 +7459,9 @@ module Tables = struct let _startpos = _startpos_ctors_ in let _endpos = _endpos_ctors_ in let _v : 'tv_nonconst_ctors_nonempty = -# 624 "flambda_parser.mly" +# 622 "flambda_parser.mly" ( ctors ) -# 7499 "flambda_parser_in.ml" +# 7465 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7518,9 +7484,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nullop = -# 363 "flambda_parser.mly" +# 362 "flambda_parser.mly" ( Begin_region ) -# 7524 "flambda_parser_in.ml" +# 7490 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7538,7 +7504,7 @@ module Tables = struct let _v : 'tv_option_PIPE_ = # 114 "" ( None ) -# 7542 "flambda_parser_in.ml" +# 7508 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7563,7 +7529,7 @@ module Tables = struct let _v : 'tv_option_PIPE_ = # 116 "" ( Some x ) -# 7567 "flambda_parser_in.ml" +# 7533 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7581,7 +7547,7 @@ module Tables = struct let _v : 'tv_option_inline_ = # 114 "" ( None ) -# 7585 "flambda_parser_in.ml" +# 7551 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7606,7 +7572,7 @@ module Tables = struct let _v : 'tv_option_inline_ = # 116 "" ( Some x ) -# 7610 "flambda_parser_in.ml" +# 7576 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7624,7 +7590,7 @@ module Tables = struct let _v : 'tv_option_inlined_ = # 114 "" ( None ) -# 7628 "flambda_parser_in.ml" +# 7594 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7649,7 +7615,7 @@ module Tables = struct let _v : 'tv_option_inlined_ = # 116 "" ( Some x ) -# 7653 "flambda_parser_in.ml" +# 7619 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7667,7 +7633,7 @@ module Tables = struct let _v : 'tv_option_inlining_state_ = # 114 "" ( None ) -# 7671 "flambda_parser_in.ml" +# 7637 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7692,7 +7658,7 @@ module Tables = struct let _v : 'tv_option_inlining_state_ = # 116 "" ( Some x ) -# 7696 "flambda_parser_in.ml" +# 7662 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7710,7 +7676,7 @@ module Tables = struct let _v : 'tv_option_newer_version_of_ = # 114 "" ( None ) -# 7714 "flambda_parser_in.ml" +# 7680 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7735,7 +7701,7 @@ module Tables = struct let _v : 'tv_option_newer_version_of_ = # 116 "" ( Some x ) -# 7739 "flambda_parser_in.ml" +# 7705 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7753,7 +7719,7 @@ module Tables = struct let _v : 'tv_option_raise_kind_ = # 114 "" ( None ) -# 7757 "flambda_parser_in.ml" +# 7723 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7778,7 +7744,7 @@ module Tables = struct let _v : 'tv_option_raise_kind_ = # 116 "" ( Some x ) -# 7782 "flambda_parser_in.ml" +# 7748 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7796,7 +7762,7 @@ module Tables = struct let _v : 'tv_option_trap_action_ = # 114 "" ( None ) -# 7800 "flambda_parser_in.ml" +# 7766 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7821,7 +7787,7 @@ module Tables = struct let _v : 'tv_option_trap_action_ = # 116 "" ( Some x ) -# 7825 "flambda_parser_in.ml" +# 7791 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7842,15 +7808,15 @@ module Tables = struct let i : ( # 74 "flambda_parser.mly" (string * char option) -# 7846 "flambda_parser_in.ml" +# 7812 "flambda_parser_in.ml" ) = Obj.magic i in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_plain_int = -# 897 "flambda_parser.mly" +# 895 "flambda_parser.mly" ( make_plain_int i ) -# 7854 "flambda_parser_in.ml" +# 7820 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7882,18 +7848,18 @@ module Tables = struct } = _menhir_stack in let kind : 'tv_block_access_kind = Obj.magic kind in let mutability : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 7888 "flambda_parser_in.ml" +# 7854 "flambda_parser_in.ml" ) = Obj.magic mutability in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_kind_ in let _v : 'tv_prefix_binop = -# 412 "flambda_parser.mly" +# 411 "flambda_parser.mly" ( Block_load (kind, mutability) ) -# 7897 "flambda_parser_in.ml" +# 7863 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7916,9 +7882,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_prefix_binop = -# 413 "flambda_parser.mly" +# 412 "flambda_parser.mly" ( Phys_equal Eq ) -# 7922 "flambda_parser_in.ml" +# 7888 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7941,9 +7907,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_prefix_binop = -# 414 "flambda_parser.mly" +# 413 "flambda_parser.mly" ( Phys_equal Neq ) -# 7947 "flambda_parser_in.ml" +# 7913 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7966,9 +7932,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_raise_kind = -# 829 "flambda_parser.mly" +# 827 "flambda_parser.mly" ( Regular ) -# 7972 "flambda_parser_in.ml" +# 7938 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -7991,9 +7957,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_raise_kind = -# 830 "flambda_parser.mly" +# 828 "flambda_parser.mly" ( Reraise ) -# 7997 "flambda_parser_in.ml" +# 7963 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8016,9 +7982,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_raise_kind = -# 831 "flambda_parser.mly" +# 829 "flambda_parser.mly" ( No_trace ) -# 8022 "flambda_parser_in.ml" +# 7988 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8037,21 +8003,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let ri : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8043 "flambda_parser_in.ml" +# 8009 "flambda_parser_in.ml" ) = Obj.magic ri in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_ri_ in let _endpos = _endpos_ri_ in let _v : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 8051 "flambda_parser_in.ml" +# 8017 "flambda_parser_in.ml" ) = -# 965 "flambda_parser.mly" +# 963 "flambda_parser.mly" ( ri ) -# 8055 "flambda_parser_in.ml" +# 8021 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8076,22 +8042,22 @@ module Tables = struct }; } = _menhir_stack in let ri : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8082 "flambda_parser_in.ml" +# 8048 "flambda_parser_in.ml" ) = Obj.magic ri in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_ri_ in let _v : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 8091 "flambda_parser_in.ml" +# 8057 "flambda_parser_in.ml" ) = -# 966 "flambda_parser.mly" +# 964 "flambda_parser.mly" ( Succ ri ) -# 8095 "flambda_parser_in.ml" +# 8061 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8122,9 +8088,9 @@ module Tables = struct }; } = _menhir_stack in let ri : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8128 "flambda_parser_in.ml" +# 8094 "flambda_parser_in.ml" ) = Obj.magic ri in let d : 'tv_plain_int = Obj.magic d in let _1 : unit = Obj.magic _1 in @@ -8132,13 +8098,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_ri_ in let _v : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 8138 "flambda_parser_in.ml" +# 8104 "flambda_parser_in.ml" ) = -# 967 "flambda_parser.mly" +# 965 "flambda_parser.mly" ( Unroll (d, ri) ) -# 8142 "flambda_parser_in.ml" +# 8108 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8161,13 +8127,13 @@ module Tables = struct let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8167 "flambda_parser_in.ml" +# 8133 "flambda_parser_in.ml" ) = -# 957 "flambda_parser.mly" +# 955 "flambda_parser.mly" ( Depth i ) -# 8171 "flambda_parser_in.ml" +# 8137 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8190,13 +8156,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8196 "flambda_parser_in.ml" +# 8162 "flambda_parser_in.ml" ) = -# 958 "flambda_parser.mly" +# 956 "flambda_parser.mly" ( Infinity ) -# 8200 "flambda_parser_in.ml" +# 8166 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8219,13 +8185,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8225 "flambda_parser_in.ml" +# 8191 "flambda_parser_in.ml" ) = -# 959 "flambda_parser.mly" +# 957 "flambda_parser.mly" ( Do_not_inline ) -# 8229 "flambda_parser_in.ml" +# 8195 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8248,13 +8214,13 @@ module Tables = struct let _startpos = _startpos_dv_ in let _endpos = _endpos_dv_ in let _v : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8254 "flambda_parser_in.ml" +# 8220 "flambda_parser_in.ml" ) = -# 960 "flambda_parser.mly" +# 958 "flambda_parser.mly" ( Var dv ) -# 8258 "flambda_parser_in.ml" +# 8224 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8286,22 +8252,22 @@ module Tables = struct } = _menhir_stack in let _3 : unit = Obj.magic _3 in let ri : ( -# 248 "flambda_parser.mly" +# 247 "flambda_parser.mly" (Fexpr.rec_info) -# 8292 "flambda_parser_in.ml" +# 8258 "flambda_parser_in.ml" ) = Obj.magic ri in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : ( -# 249 "flambda_parser.mly" +# 248 "flambda_parser.mly" (Fexpr.rec_info) -# 8301 "flambda_parser_in.ml" +# 8267 "flambda_parser_in.ml" ) = -# 961 "flambda_parser.mly" +# 959 "flambda_parser.mly" ( ri ) -# 8305 "flambda_parser_in.ml" +# 8271 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8317,9 +8283,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_recursive = -# 358 "flambda_parser.mly" +# 357 "flambda_parser.mly" ( Nonrecursive ) -# 8323 "flambda_parser_in.ml" +# 8289 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8342,9 +8308,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_recursive = -# 359 "flambda_parser.mly" +# 358 "flambda_parser.mly" ( Recursive ) -# 8348 "flambda_parser_in.ml" +# 8314 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8367,13 +8333,13 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : ( -# 250 "flambda_parser.mly" +# 249 "flambda_parser.mly" (Fexpr.region) -# 8373 "flambda_parser_in.ml" +# 8339 "flambda_parser_in.ml" ) = -# 806 "flambda_parser.mly" +# 804 "flambda_parser.mly" ( Named v ) -# 8377 "flambda_parser_in.ml" +# 8343 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8396,13 +8362,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 250 "flambda_parser.mly" +# 249 "flambda_parser.mly" (Fexpr.region) -# 8402 "flambda_parser_in.ml" +# 8368 "flambda_parser_in.ml" ) = -# 807 "flambda_parser.mly" +# 805 "flambda_parser.mly" ( Toplevel ) -# 8406 "flambda_parser_in.ml" +# 8372 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8421,17 +8387,17 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let c : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 8427 "flambda_parser_in.ml" +# 8393 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : 'tv_result_continuation = -# 811 "flambda_parser.mly" +# 809 "flambda_parser.mly" ( Return c ) -# 8435 "flambda_parser_in.ml" +# 8401 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8454,9 +8420,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_result_continuation = -# 812 "flambda_parser.mly" +# 810 "flambda_parser.mly" ( Never_returns ) -# 8460 "flambda_parser_in.ml" +# 8426 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8472,9 +8438,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_return_arity = -# 630 "flambda_parser.mly" +# 628 "flambda_parser.mly" ( None ) -# 8478 "flambda_parser_in.ml" +# 8444 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8499,18 +8465,18 @@ module Tables = struct }; } = _menhir_stack in let k : ( -# 242 "flambda_parser.mly" +# 241 "flambda_parser.mly" (Fexpr.kind_with_subkind list) -# 8505 "flambda_parser_in.ml" +# 8471 "flambda_parser_in.ml" ) = Obj.magic k in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_k_ in let _v : 'tv_return_arity = -# 631 "flambda_parser.mly" +# 629 "flambda_parser.mly" ( Some k ) -# 8514 "flambda_parser_in.ml" +# 8480 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8529,9 +8495,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 233 "flambda_parser.mly" +# 232 "flambda_parser.mly" (Fexpr.field_of_block) -# 8535 "flambda_parser_in.ml" +# 8501 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8539,7 +8505,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_field_of_block_ = # 241 "" ( [ x ] ) -# 8543 "flambda_parser_in.ml" +# 8509 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8572,9 +8538,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_COMMA_field_of_block_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 233 "flambda_parser.mly" +# 232 "flambda_parser.mly" (Fexpr.field_of_block) -# 8578 "flambda_parser_in.ml" +# 8544 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8582,7 +8548,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_field_of_block_ = # 243 "" ( x :: xs ) -# 8586 "flambda_parser_in.ml" +# 8552 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8601,9 +8567,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 8607 "flambda_parser_in.ml" +# 8573 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8611,7 +8577,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_float_or_variable_ = # 241 "" ( [ x ] ) -# 8615 "flambda_parser_in.ml" +# 8581 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8644,9 +8610,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_COMMA_float_or_variable_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 8650 "flambda_parser_in.ml" +# 8616 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8654,7 +8620,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_float_or_variable_ = # 243 "" ( x :: xs ) -# 8658 "flambda_parser_in.ml" +# 8624 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8679,7 +8645,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_kinded_variable_ = # 241 "" ( [ x ] ) -# 8683 "flambda_parser_in.ml" +# 8649 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8718,7 +8684,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_kinded_variable_ = # 243 "" ( x :: xs ) -# 8722 "flambda_parser_in.ml" +# 8688 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8743,7 +8709,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_simple_ = # 241 "" ( [ x ] ) -# 8747 "flambda_parser_in.ml" +# 8713 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8782,7 +8748,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_COMMA_simple_ = # 243 "" ( x :: xs ) -# 8786 "flambda_parser_in.ml" +# 8752 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8807,7 +8773,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_let_binding_ = # 241 "" ( [ x ] ) -# 8811 "flambda_parser_in.ml" +# 8777 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8846,7 +8812,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_let_binding_ = # 243 "" ( x :: xs ) -# 8850 "flambda_parser_in.ml" +# 8816 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8871,7 +8837,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_static_closure_binding_ = # 241 "" ( [ x ] ) -# 8875 "flambda_parser_in.ml" +# 8841 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8910,7 +8876,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_static_closure_binding_ = # 243 "" ( x :: xs ) -# 8914 "flambda_parser_in.ml" +# 8880 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8929,9 +8895,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 8935 "flambda_parser_in.ml" +# 8901 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8939,7 +8905,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_symbol_binding_ = # 241 "" ( [ x ] ) -# 8943 "flambda_parser_in.ml" +# 8909 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -8972,9 +8938,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_KWD_AND_symbol_binding_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 8978 "flambda_parser_in.ml" +# 8944 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -8982,7 +8948,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_AND_symbol_binding_ = # 243 "" ( x :: xs ) -# 8986 "flambda_parser_in.ml" +# 8952 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9007,7 +8973,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_ANDWHERE_continuation_binding_ = # 241 "" ( [ x ] ) -# 9011 "flambda_parser_in.ml" +# 8977 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9046,7 +9012,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_KWD_ANDWHERE_continuation_binding_ = # 243 "" ( x :: xs ) -# 9050 "flambda_parser_in.ml" +# 9016 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9071,7 +9037,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_PIPE_nonconst_ctor_ = # 241 "" ( [ x ] ) -# 9075 "flambda_parser_in.ml" +# 9041 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9110,7 +9076,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_PIPE_nonconst_ctor_ = # 243 "" ( x :: xs ) -# 9114 "flambda_parser_in.ml" +# 9080 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9135,7 +9101,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_PIPE_switch_case_ = # 241 "" ( [ x ] ) -# 9139 "flambda_parser_in.ml" +# 9105 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9174,7 +9140,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_PIPE_switch_case_ = # 243 "" ( x :: xs ) -# 9178 "flambda_parser_in.ml" +# 9144 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9193,9 +9159,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 9199 "flambda_parser_in.ml" +# 9165 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9203,7 +9169,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_SEMICOLON_float_or_variable_ = # 241 "" ( [ x ] ) -# 9207 "flambda_parser_in.ml" +# 9173 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9236,9 +9202,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_SEMICOLON_float_or_variable_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 237 "flambda_parser.mly" +# 236 "flambda_parser.mly" (float Fexpr.or_variable) -# 9242 "flambda_parser_in.ml" +# 9208 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9246,7 +9212,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_SEMICOLON_float_or_variable_ = # 243 "" ( x :: xs ) -# 9250 "flambda_parser_in.ml" +# 9216 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9271,7 +9237,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_SEMICOLON_value_slot_ = # 241 "" ( [ x ] ) -# 9275 "flambda_parser_in.ml" +# 9241 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9310,7 +9276,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_SEMICOLON_value_slot_ = # 243 "" ( x :: xs ) -# 9314 "flambda_parser_in.ml" +# 9280 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9329,9 +9295,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 9335 "flambda_parser_in.ml" +# 9301 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9339,7 +9305,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_STAR_kind_with_subkind_ = # 241 "" ( [ x ] ) -# 9343 "flambda_parser_in.ml" +# 9309 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9372,9 +9338,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_STAR_kind_with_subkind_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 241 "flambda_parser.mly" +# 240 "flambda_parser.mly" (Fexpr.kind_with_subkind) -# 9378 "flambda_parser_in.ml" +# 9344 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9382,7 +9348,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_STAR_kind_with_subkind_ = # 243 "" ( x :: xs ) -# 9386 "flambda_parser_in.ml" +# 9352 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9401,9 +9367,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let x : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 9407 "flambda_parser_in.ml" +# 9373 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9411,7 +9377,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_STAR_subkind_ = # 241 "" ( [ x ] ) -# 9415 "flambda_parser_in.ml" +# 9381 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9444,9 +9410,9 @@ module Tables = struct let xs : 'tv_separated_nonempty_list_STAR_subkind_ = Obj.magic xs in let _2 : unit = Obj.magic _2 in let x : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 9450 "flambda_parser_in.ml" +# 9416 "flambda_parser_in.ml" ) = Obj.magic x in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_x_ in @@ -9454,7 +9420,7 @@ module Tables = struct let _v : 'tv_separated_nonempty_list_STAR_subkind_ = # 243 "" ( x :: xs ) -# 9458 "flambda_parser_in.ml" +# 9424 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9470,9 +9436,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_signed_or_unsigned = -# 471 "flambda_parser.mly" +# 470 "flambda_parser.mly" ( Signed ) -# 9476 "flambda_parser_in.ml" +# 9442 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9495,9 +9461,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_signed_or_unsigned = -# 472 "flambda_parser.mly" +# 471 "flambda_parser.mly" ( Unsigned ) -# 9501 "flambda_parser_in.ml" +# 9467 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9520,9 +9486,9 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_simple = -# 944 "flambda_parser.mly" +# 942 "flambda_parser.mly" ( Symbol s ) -# 9526 "flambda_parser_in.ml" +# 9492 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9545,9 +9511,9 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_v_ in let _v : 'tv_simple = -# 945 "flambda_parser.mly" +# 943 "flambda_parser.mly" ( Var v ) -# 9551 "flambda_parser_in.ml" +# 9517 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9566,17 +9532,17 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let c : ( -# 229 "flambda_parser.mly" +# 228 "flambda_parser.mly" (Fexpr.const) -# 9572 "flambda_parser_in.ml" +# 9538 "flambda_parser_in.ml" ) = Obj.magic c in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_c_ in let _endpos = _endpos_c_ in let _v : 'tv_simple = -# 946 "flambda_parser.mly" +# 944 "flambda_parser.mly" ( Const c ) -# 9580 "flambda_parser_in.ml" +# 9546 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9613,9 +9579,9 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_c_ in let _v : 'tv_simple = -# 947 "flambda_parser.mly" +# 945 "flambda_parser.mly" ( Coerce (s, c) ) -# 9619 "flambda_parser_in.ml" +# 9585 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9631,9 +9597,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_simple_args = -# 915 "flambda_parser.mly" +# 913 "flambda_parser.mly" ( [] ) -# 9637 "flambda_parser_in.ml" +# 9603 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9670,9 +9636,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_simple_args = -# 916 "flambda_parser.mly" +# 914 "flambda_parser.mly" ( s ) -# 9676 "flambda_parser_in.ml" +# 9642 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9688,9 +9654,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_size_opt = -# 438 "flambda_parser.mly" +# 437 "flambda_parser.mly" ( None ) -# 9694 "flambda_parser_in.ml" +# 9660 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9734,9 +9700,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_size_opt = -# 439 "flambda_parser.mly" +# 438 "flambda_parser.mly" ( Some size ) -# 9740 "flambda_parser_in.ml" +# 9706 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9759,13 +9725,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 251 "flambda_parser.mly" +# 250 "flambda_parser.mly" (Fexpr.special_continuation) -# 9765 "flambda_parser_in.ml" +# 9731 "flambda_parser_in.ml" ) = -# 1004 "flambda_parser.mly" +# 1002 "flambda_parser.mly" ( Done ) -# 9769 "flambda_parser_in.ml" +# 9735 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9788,13 +9754,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 251 "flambda_parser.mly" +# 250 "flambda_parser.mly" (Fexpr.special_continuation) -# 9794 "flambda_parser_in.ml" +# 9760 "flambda_parser_in.ml" ) = -# 1005 "flambda_parser.mly" +# 1003 "flambda_parser.mly" ( Error ) -# 9798 "flambda_parser_in.ml" +# 9764 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9810,13 +9776,13 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 9816 "flambda_parser_in.ml" +# 9782 "flambda_parser_in.ml" ) = -# 442 "flambda_parser.mly" +# 441 "flambda_parser.mly" ( Tagged_immediate ) -# 9820 "flambda_parser_in.ml" +# 9786 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9839,13 +9805,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 9845 "flambda_parser_in.ml" +# 9811 "flambda_parser_in.ml" ) = -# 443 "flambda_parser.mly" +# 442 "flambda_parser.mly" ( Naked_immediate ) -# 9849 "flambda_parser_in.ml" +# 9815 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9868,13 +9834,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 9874 "flambda_parser_in.ml" +# 9840 "flambda_parser_in.ml" ) = -# 444 "flambda_parser.mly" +# 443 "flambda_parser.mly" ( Naked_int32 ) -# 9878 "flambda_parser_in.ml" +# 9844 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9897,13 +9863,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 9903 "flambda_parser_in.ml" +# 9869 "flambda_parser_in.ml" ) = -# 445 "flambda_parser.mly" +# 444 "flambda_parser.mly" ( Naked_int64 ) -# 9907 "flambda_parser_in.ml" +# 9873 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9926,13 +9892,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 252 "flambda_parser.mly" +# 251 "flambda_parser.mly" (Fexpr.standard_int) -# 9932 "flambda_parser_in.ml" +# 9898 "flambda_parser_in.ml" ) = -# 446 "flambda_parser.mly" +# 445 "flambda_parser.mly" ( Naked_nativeint ) -# 9936 "flambda_parser_in.ml" +# 9902 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -9969,9 +9935,9 @@ module Tables = struct let _startpos = _startpos_symbol_ in let _endpos = _endpos_fun_decl_ in let _v : 'tv_static_closure_binding = -# 347 "flambda_parser.mly" +# 346 "flambda_parser.mly" ( { symbol; fun_decl } ) -# 9975 "flambda_parser_in.ml" +# 9941 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10024,27 +9990,27 @@ module Tables = struct let _4 : unit = Obj.magic _4 in let tag : 'tv_tag = Obj.magic tag in let m : ( -# 244 "flambda_parser.mly" +# 243 "flambda_parser.mly" (Fexpr.mutability) -# 10030 "flambda_parser_in.ml" +# 9996 "flambda_parser_in.ml" ) = Obj.magic m in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos__6_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10039 "flambda_parser_in.ml" +# 10005 "flambda_parser_in.ml" ) = let elements = # 232 "" ( xs ) -# 10043 "flambda_parser_in.ml" +# 10009 "flambda_parser_in.ml" in -# 858 "flambda_parser.mly" +# 856 "flambda_parser.mly" ( (Block { tag; mutability = m; elements } : static_data) ) -# 10048 "flambda_parser_in.ml" +# 10014 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10065,19 +10031,19 @@ module Tables = struct let f : ( # 68 "flambda_parser.mly" (float) -# 10069 "flambda_parser_in.ml" +# 10035 "flambda_parser_in.ml" ) = Obj.magic f in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10077 "flambda_parser_in.ml" +# 10043 "flambda_parser_in.ml" ) = -# 859 "flambda_parser.mly" +# 857 "flambda_parser.mly" ( Boxed_float (Const f) ) -# 10081 "flambda_parser_in.ml" +# 10047 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10098,19 +10064,19 @@ module Tables = struct let i : ( # 74 "flambda_parser.mly" (string * char option) -# 10102 "flambda_parser_in.ml" +# 10068 "flambda_parser_in.ml" ) = Obj.magic i in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10110 "flambda_parser_in.ml" +# 10076 "flambda_parser_in.ml" ) = -# 860 "flambda_parser.mly" +# 858 "flambda_parser.mly" ( make_boxed_const_int i ) -# 10114 "flambda_parser_in.ml" +# 10080 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10141,9 +10107,9 @@ module Tables = struct }; } = _menhir_stack in let k : ( -# 257 "flambda_parser.mly" +# 256 "flambda_parser.mly" (Fexpr.variable -> Fexpr.static_data) -# 10147 "flambda_parser_in.ml" +# 10113 "flambda_parser_in.ml" ) = Obj.magic k in let _2 : unit = Obj.magic _2 in let v : 'tv_variable = Obj.magic v in @@ -10151,13 +10117,13 @@ module Tables = struct let _startpos = _startpos_v_ in let _endpos = _endpos_k_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10157 "flambda_parser_in.ml" +# 10123 "flambda_parser_in.ml" ) = -# 861 "flambda_parser.mly" +# 859 "flambda_parser.mly" ( k v ) -# 10161 "flambda_parser_in.ml" +# 10127 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10201,18 +10167,18 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10207 "flambda_parser_in.ml" +# 10173 "flambda_parser_in.ml" ) = let fs = # 232 "" ( xs ) -# 10211 "flambda_parser_in.ml" +# 10177 "flambda_parser_in.ml" in -# 865 "flambda_parser.mly" +# 863 "flambda_parser.mly" ( Immutable_float_block fs ) -# 10216 "flambda_parser_in.ml" +# 10182 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10256,18 +10222,18 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10262 "flambda_parser_in.ml" +# 10228 "flambda_parser_in.ml" ) = let fs = # 232 "" ( xs ) -# 10266 "flambda_parser_in.ml" +# 10232 "flambda_parser_in.ml" in -# 869 "flambda_parser.mly" +# 867 "flambda_parser.mly" ( Immutable_float_array fs ) -# 10271 "flambda_parser_in.ml" +# 10237 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10292,22 +10258,22 @@ module Tables = struct }; } = _menhir_stack in let s : ( -# 105 "flambda_parser.mly" +# 104 "flambda_parser.mly" (string) -# 10298 "flambda_parser_in.ml" +# 10264 "flambda_parser_in.ml" ) = Obj.magic s in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_s_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10307 "flambda_parser_in.ml" +# 10273 "flambda_parser_in.ml" ) = -# 870 "flambda_parser.mly" +# 868 "flambda_parser.mly" ( Mutable_string { initial_value = s } ) -# 10311 "flambda_parser_in.ml" +# 10277 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10326,21 +10292,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let s : ( -# 105 "flambda_parser.mly" +# 104 "flambda_parser.mly" (string) -# 10332 "flambda_parser_in.ml" +# 10298 "flambda_parser_in.ml" ) = Obj.magic s in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10340 "flambda_parser_in.ml" +# 10306 "flambda_parser_in.ml" ) = -# 871 "flambda_parser.mly" +# 869 "flambda_parser.mly" ( Immutable_string s ) -# 10344 "flambda_parser_in.ml" +# 10310 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10371,9 +10337,9 @@ module Tables = struct }; } = _menhir_stack in let sp : ( -# 253 "flambda_parser.mly" +# 252 "flambda_parser.mly" (Fexpr.static_data) -# 10377 "flambda_parser_in.ml" +# 10343 "flambda_parser_in.ml" ) = Obj.magic sp in let _2 : unit = Obj.magic _2 in let s : 'tv_symbol = Obj.magic s in @@ -10381,13 +10347,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_sp_ in let _v : ( -# 254 "flambda_parser.mly" +# 253 "flambda_parser.mly" (Fexpr.static_data_binding) -# 10387 "flambda_parser_in.ml" +# 10353 "flambda_parser_in.ml" ) = -# 852 "flambda_parser.mly" +# 850 "flambda_parser.mly" ( { symbol = s; defining_expr = sp } ) -# 10391 "flambda_parser_in.ml" +# 10357 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10417,13 +10383,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 257 "flambda_parser.mly" +# 256 "flambda_parser.mly" (Fexpr.variable -> Fexpr.static_data) -# 10423 "flambda_parser_in.ml" +# 10389 "flambda_parser_in.ml" ) = -# 875 "flambda_parser.mly" +# 873 "flambda_parser.mly" ( fun v -> Boxed_float (Var v) ) -# 10427 "flambda_parser_in.ml" +# 10393 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10453,13 +10419,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 257 "flambda_parser.mly" +# 256 "flambda_parser.mly" (Fexpr.variable -> Fexpr.static_data) -# 10459 "flambda_parser_in.ml" +# 10425 "flambda_parser_in.ml" ) = -# 876 "flambda_parser.mly" +# 874 "flambda_parser.mly" ( fun v -> Boxed_int32 (Var v) ) -# 10463 "flambda_parser_in.ml" +# 10429 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10489,13 +10455,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 257 "flambda_parser.mly" +# 256 "flambda_parser.mly" (Fexpr.variable -> Fexpr.static_data) -# 10495 "flambda_parser_in.ml" +# 10461 "flambda_parser_in.ml" ) = -# 877 "flambda_parser.mly" +# 875 "flambda_parser.mly" ( fun v -> Boxed_int64 (Var v) ) -# 10499 "flambda_parser_in.ml" +# 10465 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10525,13 +10491,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 257 "flambda_parser.mly" +# 256 "flambda_parser.mly" (Fexpr.variable -> Fexpr.static_data) -# 10531 "flambda_parser_in.ml" +# 10497 "flambda_parser_in.ml" ) = -# 878 "flambda_parser.mly" +# 876 "flambda_parser.mly" ( fun v -> Boxed_nativeint (Var v) ) -# 10535 "flambda_parser_in.ml" +# 10501 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10575,9 +10541,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_static_set_of_closures = -# 355 "flambda_parser.mly" +# 354 "flambda_parser.mly" ( { bindings; elements } ) -# 10581 "flambda_parser_in.ml" +# 10547 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10600,13 +10566,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10606 "flambda_parser_in.ml" +# 10572 "flambda_parser_in.ml" ) = -# 597 "flambda_parser.mly" +# 595 "flambda_parser.mly" ( Anything ) -# 10610 "flambda_parser_in.ml" +# 10576 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10636,13 +10602,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10642 "flambda_parser_in.ml" +# 10608 "flambda_parser_in.ml" ) = -# 598 "flambda_parser.mly" +# 596 "flambda_parser.mly" ( Boxed_float ) -# 10646 "flambda_parser_in.ml" +# 10612 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10672,13 +10638,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10678 "flambda_parser_in.ml" +# 10644 "flambda_parser_in.ml" ) = -# 599 "flambda_parser.mly" +# 597 "flambda_parser.mly" ( Boxed_int32 ) -# 10682 "flambda_parser_in.ml" +# 10648 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10708,13 +10674,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10714 "flambda_parser_in.ml" +# 10680 "flambda_parser_in.ml" ) = -# 600 "flambda_parser.mly" +# 598 "flambda_parser.mly" ( Boxed_int64 ) -# 10718 "flambda_parser_in.ml" +# 10684 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10744,13 +10710,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10750 "flambda_parser_in.ml" +# 10716 "flambda_parser_in.ml" ) = -# 601 "flambda_parser.mly" +# 599 "flambda_parser.mly" ( Boxed_nativeint ) -# 10754 "flambda_parser_in.ml" +# 10720 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10780,13 +10746,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10786 "flambda_parser_in.ml" +# 10752 "flambda_parser_in.ml" ) = -# 602 "flambda_parser.mly" +# 600 "flambda_parser.mly" ( Tagged_immediate ) -# 10790 "flambda_parser_in.ml" +# 10756 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10823,13 +10789,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_num_fields_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10829 "flambda_parser_in.ml" +# 10795 "flambda_parser_in.ml" ) = -# 603 "flambda_parser.mly" +# 601 "flambda_parser.mly" ( Float_block { num_fields } ) -# 10833 "flambda_parser_in.ml" +# 10799 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10866,13 +10832,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10872 "flambda_parser_in.ml" +# 10838 "flambda_parser_in.ml" ) = -# 605 "flambda_parser.mly" +# 603 "flambda_parser.mly" ( let consts, non_consts = ctors in Variant { consts; non_consts; }) -# 10876 "flambda_parser_in.ml" +# 10842 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10902,13 +10868,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10908 "flambda_parser_in.ml" +# 10874 "flambda_parser_in.ml" ) = -# 606 "flambda_parser.mly" +# 604 "flambda_parser.mly" ( Float_array ) -# 10912 "flambda_parser_in.ml" +# 10878 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10938,13 +10904,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10944 "flambda_parser_in.ml" +# 10910 "flambda_parser_in.ml" ) = -# 607 "flambda_parser.mly" +# 605 "flambda_parser.mly" ( Immediate_array ) -# 10948 "flambda_parser_in.ml" +# 10914 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -10974,13 +10940,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 10980 "flambda_parser_in.ml" +# 10946 "flambda_parser_in.ml" ) = -# 608 "flambda_parser.mly" +# 606 "flambda_parser.mly" ( Value_array ) -# 10984 "flambda_parser_in.ml" +# 10950 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11010,13 +10976,13 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : ( -# 255 "flambda_parser.mly" +# 254 "flambda_parser.mly" (Fexpr.subkind) -# 11016 "flambda_parser_in.ml" +# 10982 "flambda_parser_in.ml" ) = -# 609 "flambda_parser.mly" +# 607 "flambda_parser.mly" ( Generic_array ) -# 11020 "flambda_parser_in.ml" +# 10986 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11039,13 +11005,13 @@ module Tables = struct let _startpos = _startpos_sks_ in let _endpos = _endpos_sks_ in let _v : ( -# 256 "flambda_parser.mly" +# 255 "flambda_parser.mly" (Fexpr.subkind list) -# 11045 "flambda_parser_in.ml" +# 11011 "flambda_parser_in.ml" ) = -# 612 "flambda_parser.mly" +# 610 "flambda_parser.mly" ( sks ) -# 11049 "flambda_parser_in.ml" +# 11015 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11077,12 +11043,12 @@ module Tables = struct let _v : 'tv_switch = let cs = # 232 "" ( xs ) -# 11081 "flambda_parser_in.ml" +# 11047 "flambda_parser_in.ml" in -# 569 "flambda_parser.mly" +# 567 "flambda_parser.mly" ( cs ) -# 11086 "flambda_parser_in.ml" +# 11052 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11119,9 +11085,9 @@ module Tables = struct let _startpos = _startpos_i_ in let _endpos = _endpos_ac_ in let _v : 'tv_switch_case = -# 565 "flambda_parser.mly" +# 563 "flambda_parser.mly" ( i,ac ) -# 11125 "flambda_parser_in.ml" +# 11091 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11140,9 +11106,9 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let e : ( -# 106 "flambda_parser.mly" +# 105 "flambda_parser.mly" (Fexpr.compilation_unit option * string) -# 11146 "flambda_parser_in.ml" +# 11112 "flambda_parser_in.ml" ) = Obj.magic e in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_e_ in @@ -11150,9 +11116,9 @@ module Tables = struct let _v : 'tv_symbol = let _endpos = _endpos_e_ in let _startpos = _startpos_e_ in -# 987 "flambda_parser.mly" +# 985 "flambda_parser.mly" ( make_located e (_startpos, _endpos) ) -# 11156 "flambda_parser_in.ml" +# 11122 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11171,21 +11137,21 @@ module Tables = struct CamlinternalMenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in let s : ( -# 254 "flambda_parser.mly" +# 253 "flambda_parser.mly" (Fexpr.static_data_binding) -# 11177 "flambda_parser_in.ml" +# 11143 "flambda_parser_in.ml" ) = Obj.magic s in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 11185 "flambda_parser_in.ml" +# 11151 "flambda_parser_in.ml" ) = -# 298 "flambda_parser.mly" +# 297 "flambda_parser.mly" ( Data s ) -# 11189 "flambda_parser_in.ml" +# 11155 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11208,13 +11174,13 @@ module Tables = struct let _startpos = _startpos_code_ in let _endpos = _endpos_code_ in let _v : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 11214 "flambda_parser_in.ml" +# 11180 "flambda_parser_in.ml" ) = -# 299 "flambda_parser.mly" +# 298 "flambda_parser.mly" ( Code code ) -# 11218 "flambda_parser_in.ml" +# 11184 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11237,13 +11203,13 @@ module Tables = struct let _startpos = _startpos_code_id_ in let _endpos = _endpos_code_id_ in let _v : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 11243 "flambda_parser_in.ml" +# 11209 "flambda_parser_in.ml" ) = -# 300 "flambda_parser.mly" +# 299 "flambda_parser.mly" ( Deleted_code code_id ) -# 11247 "flambda_parser_in.ml" +# 11213 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11266,13 +11232,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 11272 "flambda_parser_in.ml" +# 11238 "flambda_parser_in.ml" ) = -# 301 "flambda_parser.mly" +# 300 "flambda_parser.mly" ( Closure s ) -# 11276 "flambda_parser_in.ml" +# 11242 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11295,13 +11261,13 @@ module Tables = struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : ( -# 258 "flambda_parser.mly" +# 257 "flambda_parser.mly" (Fexpr.symbol_binding) -# 11301 "flambda_parser_in.ml" +# 11267 "flambda_parser_in.ml" ) = -# 302 "flambda_parser.mly" +# 301 "flambda_parser.mly" ( Set_of_closures s ) -# 11305 "flambda_parser_in.ml" +# 11271 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11322,7 +11288,7 @@ module Tables = struct let tag : ( # 74 "flambda_parser.mly" (string * char option) -# 11326 "flambda_parser_in.ml" +# 11292 "flambda_parser_in.ml" ) = Obj.magic tag in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_tag_ in @@ -11330,9 +11296,9 @@ module Tables = struct let _v : 'tv_tag = let _endpos = _endpos_tag_ in let _startpos = _startpos_tag_ in -# 888 "flambda_parser.mly" +# 886 "flambda_parser.mly" ( make_tag ~loc:(make_loc (_startpos, _endpos)) tag ) -# 11336 "flambda_parser_in.ml" +# 11302 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11376,9 +11342,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_tag_opt = -# 892 "flambda_parser.mly" +# 890 "flambda_parser.mly" ( Some tag ) -# 11382 "flambda_parser_in.ml" +# 11348 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11394,9 +11360,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_tag_opt = -# 893 "flambda_parser.mly" +# 891 "flambda_parser.mly" ( None ) -# 11400 "flambda_parser_in.ml" +# 11366 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11417,15 +11383,15 @@ module Tables = struct let i : ( # 74 "flambda_parser.mly" (string * char option) -# 11421 "flambda_parser_in.ml" +# 11387 "flambda_parser_in.ml" ) = Obj.magic i in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_targetint = -# 885 "flambda_parser.mly" +# 883 "flambda_parser.mly" ( make_targetint i ) -# 11429 "flambda_parser_in.ml" +# 11395 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11499,18 +11465,18 @@ module Tables = struct let _4 : unit = Obj.magic _4 in let arr : 'tv_simple = Obj.magic arr in let ak : ( -# 225 "flambda_parser.mly" +# 224 "flambda_parser.mly" (Fexpr.array_kind) -# 11505 "flambda_parser_in.ml" +# 11471 "flambda_parser_in.ml" ) = Obj.magic ak in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_v_ in let _v : 'tv_ternop_app = -# 539 "flambda_parser.mly" +# 537 "flambda_parser.mly" ( Ternary (Array_set (ak, ia), arr, ix, v) ) -# 11514 "flambda_parser_in.ml" +# 11480 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11548,9 +11514,9 @@ module Tables = struct } = _menhir_stack in let _4 : unit = Obj.magic _4 in let exn_handler : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 11554 "flambda_parser_in.ml" +# 11520 "flambda_parser_in.ml" ) = Obj.magic exn_handler in let _2 : unit = Obj.magic _2 in let _1 : unit = Obj.magic _1 in @@ -11558,9 +11524,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_trap_action = -# 821 "flambda_parser.mly" +# 819 "flambda_parser.mly" ( Push { exn_handler } ) -# 11564 "flambda_parser_in.ml" +# 11530 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11604,9 +11570,9 @@ module Tables = struct } = _menhir_stack in let _5 : unit = Obj.magic _5 in let exn_handler : ( -# 230 "flambda_parser.mly" +# 229 "flambda_parser.mly" (Fexpr.continuation) -# 11610 "flambda_parser_in.ml" +# 11576 "flambda_parser_in.ml" ) = Obj.magic exn_handler in let raise_kind : 'tv_option_raise_kind_ = Obj.magic raise_kind in let _2 : unit = Obj.magic _2 in @@ -11615,9 +11581,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_trap_action = -# 825 "flambda_parser.mly" +# 823 "flambda_parser.mly" ( Pop { exn_handler; raise_kind } ) -# 11621 "flambda_parser_in.ml" +# 11587 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11640,9 +11606,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 367 "flambda_parser.mly" +# 366 "flambda_parser.mly" ( Array_length ) -# 11646 "flambda_parser_in.ml" +# 11612 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11667,18 +11633,18 @@ module Tables = struct }; } = _menhir_stack in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 11673 "flambda_parser_in.ml" +# 11639 "flambda_parser_in.ml" ) = Obj.magic alloc in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_alloc_ in let _v : 'tv_unop = -# 369 "flambda_parser.mly" +# 368 "flambda_parser.mly" ( Box_number (Naked_float, alloc) ) -# 11682 "flambda_parser_in.ml" +# 11648 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11703,18 +11669,18 @@ module Tables = struct }; } = _menhir_stack in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 11709 "flambda_parser_in.ml" +# 11675 "flambda_parser_in.ml" ) = Obj.magic alloc in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_alloc_ in let _v : 'tv_unop = -# 371 "flambda_parser.mly" +# 370 "flambda_parser.mly" ( Box_number (Naked_int32, alloc) ) -# 11718 "flambda_parser_in.ml" +# 11684 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11739,18 +11705,18 @@ module Tables = struct }; } = _menhir_stack in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 11745 "flambda_parser_in.ml" +# 11711 "flambda_parser_in.ml" ) = Obj.magic alloc in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_alloc_ in let _v : 'tv_unop = -# 373 "flambda_parser.mly" +# 372 "flambda_parser.mly" ( Box_number (Naked_int64, alloc) ) -# 11754 "flambda_parser_in.ml" +# 11720 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11775,18 +11741,18 @@ module Tables = struct }; } = _menhir_stack in let alloc : ( -# 223 "flambda_parser.mly" +# 222 "flambda_parser.mly" (Fexpr.alloc_mode_for_allocations) -# 11781 "flambda_parser_in.ml" +# 11747 "flambda_parser_in.ml" ) = Obj.magic alloc in let _1 : unit = Obj.magic _1 in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos__1_ in let _endpos = _endpos_alloc_ in let _v : 'tv_unop = -# 375 "flambda_parser.mly" +# 374 "flambda_parser.mly" ( Box_number (Naked_nativeint, alloc) ) -# 11790 "flambda_parser_in.ml" +# 11756 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11809,9 +11775,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 376 "flambda_parser.mly" +# 375 "flambda_parser.mly" ( String_length Bytes ) -# 11815 "flambda_parser_in.ml" +# 11781 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11834,9 +11800,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 377 "flambda_parser.mly" +# 376 "flambda_parser.mly" ( End_region ) -# 11840 "flambda_parser_in.ml" +# 11806 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11859,9 +11825,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 378 "flambda_parser.mly" +# 377 "flambda_parser.mly" ( Get_tag ) -# 11865 "flambda_parser_in.ml" +# 11831 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11884,9 +11850,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 379 "flambda_parser.mly" +# 378 "flambda_parser.mly" ( Is_flat_float_array ) -# 11890 "flambda_parser_in.ml" +# 11856 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11909,9 +11875,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 380 "flambda_parser.mly" +# 379 "flambda_parser.mly" ( Is_int ) -# 11915 "flambda_parser_in.ml" +# 11881 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -11961,15 +11927,15 @@ module Tables = struct } = _menhir_stack in let _6 : unit = Obj.magic _6 in let dst : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 11967 "flambda_parser_in.ml" +# 11933 "flambda_parser_in.ml" ) = Obj.magic dst in let _4 : unit = Obj.magic _4 in let src : ( -# 231 "flambda_parser.mly" +# 230 "flambda_parser.mly" (Fexpr.standard_int_or_float) -# 11973 "flambda_parser_in.ml" +# 11939 "flambda_parser_in.ml" ) = Obj.magic src in let _2 : unit = Obj.magic _2 in let _1 : unit = Obj.magic _1 in @@ -11977,9 +11943,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__6_ in let _v : 'tv_unop = -# 384 "flambda_parser.mly" +# 383 "flambda_parser.mly" ( Num_conv { src; dst } ) -# 11983 "flambda_parser_in.ml" +# 11949 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12002,9 +11968,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 385 "flambda_parser.mly" +# 384 "flambda_parser.mly" ( Opaque_identity ) -# 12008 "flambda_parser_in.ml" +# 11974 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12048,9 +12014,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos_value_slot_ in let _v : 'tv_unop = -# 387 "flambda_parser.mly" +# 386 "flambda_parser.mly" ( Project_value_slot { project_from; value_slot } ) -# 12054 "flambda_parser_in.ml" +# 12020 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12108,9 +12074,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__6_ in let _v : 'tv_unop = -# 391 "flambda_parser.mly" +# 390 "flambda_parser.mly" ( Project_function_slot { move_from; move_to } ) -# 12114 "flambda_parser_in.ml" +# 12080 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12133,9 +12099,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 392 "flambda_parser.mly" +# 391 "flambda_parser.mly" ( String_length String ) -# 12139 "flambda_parser_in.ml" +# 12105 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12158,9 +12124,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 393 "flambda_parser.mly" +# 392 "flambda_parser.mly" ( Tag_immediate ) -# 12164 "flambda_parser_in.ml" +# 12130 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12183,9 +12149,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 394 "flambda_parser.mly" +# 393 "flambda_parser.mly" ( Unbox_number Naked_float ) -# 12189 "flambda_parser_in.ml" +# 12155 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12208,9 +12174,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 395 "flambda_parser.mly" +# 394 "flambda_parser.mly" ( Unbox_number Naked_int32 ) -# 12214 "flambda_parser_in.ml" +# 12180 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12233,9 +12199,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 396 "flambda_parser.mly" +# 395 "flambda_parser.mly" ( Unbox_number Naked_int64 ) -# 12239 "flambda_parser_in.ml" +# 12205 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12258,9 +12224,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 397 "flambda_parser.mly" +# 396 "flambda_parser.mly" ( Unbox_number Naked_nativeint ) -# 12264 "flambda_parser_in.ml" +# 12230 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12283,9 +12249,9 @@ module Tables = struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unop = -# 398 "flambda_parser.mly" +# 397 "flambda_parser.mly" ( Untag_immediate ) -# 12289 "flambda_parser_in.ml" +# 12255 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12322,9 +12288,9 @@ module Tables = struct let _startpos = _startpos_var_ in let _endpos = _endpos_value_ in let _v : 'tv_value_slot = -# 723 "flambda_parser.mly" +# 721 "flambda_parser.mly" ( { var; value; } ) -# 12328 "flambda_parser_in.ml" +# 12294 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12345,7 +12311,7 @@ module Tables = struct let e : ( # 73 "flambda_parser.mly" (string) -# 12349 "flambda_parser_in.ml" +# 12315 "flambda_parser_in.ml" ) = Obj.magic e in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_e_ in @@ -12353,9 +12319,9 @@ module Tables = struct let _v : 'tv_value_slot_for_projection = let _endpos = _endpos_e_ in let _startpos = _startpos_e_ in -# 1009 "flambda_parser.mly" +# 1007 "flambda_parser.mly" ( make_located e (_startpos, _endpos) ) -# 12359 "flambda_parser_in.ml" +# 12325 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12376,7 +12342,7 @@ module Tables = struct let e : ( # 73 "flambda_parser.mly" (string) -# 12380 "flambda_parser_in.ml" +# 12346 "flambda_parser_in.ml" ) = Obj.magic e in let _endpos__0_ = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _startpos = _startpos_e_ in @@ -12384,9 +12350,9 @@ module Tables = struct let _v : 'tv_variable = let _endpos = _endpos_e_ in let _startpos = _startpos_e_ in -# 991 "flambda_parser.mly" +# 989 "flambda_parser.mly" ( make_located e (_startpos, _endpos) ) -# 12390 "flambda_parser_in.ml" +# 12356 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12432,12 +12398,12 @@ module Tables = struct let _v : 'tv_where_expr = let bindings = # 232 "" ( xs ) -# 12436 "flambda_parser_in.ml" +# 12402 "flambda_parser_in.ml" in -# 665 "flambda_parser.mly" +# 663 "flambda_parser.mly" ( Let_cont { recursive; body; bindings } ) -# 12441 "flambda_parser_in.ml" +# 12407 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12453,9 +12419,9 @@ module Tables = struct let _startpos = _menhir_stack.CamlinternalMenhirLib.EngineTypes.endp in let _endpos = _startpos in let _v : 'tv_with_value_slots_opt = -# 715 "flambda_parser.mly" +# 713 "flambda_parser.mly" ( None ) -# 12459 "flambda_parser_in.ml" +# 12425 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12501,12 +12467,12 @@ module Tables = struct let _v : 'tv_with_value_slots_opt = let elements = # 232 "" ( xs ) -# 12505 "flambda_parser_in.ml" +# 12471 "flambda_parser_in.ml" in -# 719 "flambda_parser.mly" +# 717 "flambda_parser.mly" ( Some elements ) -# 12510 "flambda_parser_in.ml" +# 12476 "flambda_parser_in.ml" in { CamlinternalMenhirLib.EngineTypes.state = _menhir_s; @@ -12534,46 +12500,46 @@ end let flambda_unit = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry `Legacy 581 lexer lexbuf) : ( -# 234 "flambda_parser.mly" + (Obj.magic (MenhirInterpreter.entry `Legacy 580 lexer lexbuf) : ( +# 233 "flambda_parser.mly" (Fexpr.flambda_unit) -# 12541 "flambda_parser_in.ml" +# 12507 "flambda_parser_in.ml" )) and expect_test_spec = fun lexer lexbuf -> (Obj.magic (MenhirInterpreter.entry `Legacy 0 lexer lexbuf) : ( -# 232 "flambda_parser.mly" +# 231 "flambda_parser.mly" (Fexpr.expect_test_spec) -# 12549 "flambda_parser_in.ml" +# 12515 "flambda_parser_in.ml" )) module Incremental = struct let flambda_unit = fun initial_position -> - (Obj.magic (MenhirInterpreter.start 581 initial_position) : ( -# 234 "flambda_parser.mly" + (Obj.magic (MenhirInterpreter.start 580 initial_position) : ( +# 233 "flambda_parser.mly" (Fexpr.flambda_unit) -# 12559 "flambda_parser_in.ml" +# 12525 "flambda_parser_in.ml" ) MenhirInterpreter.checkpoint) and expect_test_spec = fun initial_position -> (Obj.magic (MenhirInterpreter.start 0 initial_position) : ( -# 232 "flambda_parser.mly" +# 231 "flambda_parser.mly" (Fexpr.expect_test_spec) -# 12567 "flambda_parser_in.ml" +# 12533 "flambda_parser_in.ml" ) MenhirInterpreter.checkpoint) end -# 1012 "flambda_parser.mly" +# 1010 "flambda_parser.mly" -# 12575 "flambda_parser_in.ml" +# 12541 "flambda_parser_in.ml" # 269 "" -# 12580 "flambda_parser_in.ml" +# 12546 "flambda_parser_in.ml" diff --git a/middle_end/flambda2/parser/flambda_parser.mli b/middle_end/flambda2/parser/flambda_parser.mli index 93545936103..689e6703cce 100644 --- a/middle_end/flambda2/parser/flambda_parser.mli +++ b/middle_end/flambda2/parser/flambda_parser.mli @@ -61,7 +61,6 @@ type token = | MINUS | LPAREN | LESSMINUS - | LESSGREATER | LESSEQUALDOT | LESSEQUAL | LESSDOT diff --git a/middle_end/flambda2/parser/flambda_parser.mly b/middle_end/flambda2/parser/flambda_parser.mly index cc5be7d5e17..eeef21ce320 100644 --- a/middle_end/flambda2/parser/flambda_parser.mly +++ b/middle_end/flambda2/parser/flambda_parser.mly @@ -80,7 +80,6 @@ let make_boxed_const_int (i, m) : static_data = %token LESSEQUAL [@symbol "<="] %token LESSEQUALDOT [@symbol "<=."] %token LESSMINUS [@symbol "<-"] -%token LESSGREATER [@symbol "<>"] %token LPAREN [@symbol "("] %token MINUS [@symbol "-"] %token MINUSDOT [@symbol "-."] @@ -490,7 +489,6 @@ binary_float_arith_op: int_comp: | LESS { fun s -> Yielding_bool (Lt s) } | GREATER { fun s -> Yielding_bool (Gt s) } - | LESSGREATER { fun s -> Yielding_bool Neq } | LESSEQUAL { fun s -> Yielding_bool (Le s) } | GREATEREQUAL { fun s -> Yielding_bool (Ge s) } | NOTEQUAL { fun _ -> Yielding_bool Neq }