let rec token lexbuf =
    __ocaml_lex_token_rec lexbuf 0
and __ocaml_lex_token_rec lexbuf __ocaml_lex_state =
  match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with
      | 0 ->
# 49 "src/ltl_to_acsl/yalexer.mll"
                      ( token lexbuf )
# 550 "src/ltl_to_acsl/yalexer.ml"

  | 1 ->
# 50 "src/ltl_to_acsl/yalexer.mll"
                      ( new_line lexbuf; token lexbuf )
# 555 "src/ltl_to_acsl/yalexer.ml"

  | 2 ->
let
# 51 "src/ltl_to_acsl/yalexer.mll"
                  lxm
# 561 "src/ltl_to_acsl/yalexer.ml"
Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in
# 51 "src/ltl_to_acsl/yalexer.mll"
                      ( INT(lxm) )
# 565 "src/ltl_to_acsl/yalexer.ml"

  | 3 ->
# 52 "src/ltl_to_acsl/yalexer.mll"
                      ( CALL_OF )
# 570 "src/ltl_to_acsl/yalexer.ml"

  | 4 ->
# 53 "src/ltl_to_acsl/yalexer.mll"
                      ( RETURN_OF )
# 575 "src/ltl_to_acsl/yalexer.ml"

  | 5 ->
# 54 "src/ltl_to_acsl/yalexer.mll"
                      ( CALLORRETURN_OF )
# 580 "src/ltl_to_acsl/yalexer.ml"

  | 6 ->
# 55 "src/ltl_to_acsl/yalexer.mll"
                      ( TRUE )
# 585 "src/ltl_to_acsl/yalexer.ml"

  | 7 ->
# 56 "src/ltl_to_acsl/yalexer.mll"
                      ( FALSE )
# 590 "src/ltl_to_acsl/yalexer.ml"

  | 8 ->
let
# 57 "src/ltl_to_acsl/yalexer.mll"
             lxm
# 596 "src/ltl_to_acsl/yalexer.ml"
Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in
# 57 "src/ltl_to_acsl/yalexer.mll"
                      ( IDENTIFIER(lxm) )
# 600 "src/ltl_to_acsl/yalexer.ml"

  | 9 ->
# 58 "src/ltl_to_acsl/yalexer.mll"
                      ( COMMA )
# 605 "src/ltl_to_acsl/yalexer.ml"

  | 10 ->
# 59 "src/ltl_to_acsl/yalexer.mll"
                      ( PLUS )
# 610 "src/ltl_to_acsl/yalexer.ml"

  | 11 ->
# 60 "src/ltl_to_acsl/yalexer.mll"
                      ( MINUS )
# 615 "src/ltl_to_acsl/yalexer.ml"

  | 12 ->
# 61 "src/ltl_to_acsl/yalexer.mll"
                      ( STAR )
# 620 "src/ltl_to_acsl/yalexer.ml"

  | 13 ->
# 62 "src/ltl_to_acsl/yalexer.mll"
                      ( SLASH )
# 625 "src/ltl_to_acsl/yalexer.ml"

  | 14 ->
# 63 "src/ltl_to_acsl/yalexer.mll"
                      ( PERCENT )
# 630 "src/ltl_to_acsl/yalexer.ml"

  | 15 ->
# 64 "src/ltl_to_acsl/yalexer.mll"
                      ( LPAREN )
# 635 "src/ltl_to_acsl/yalexer.ml"

  | 16 ->
# 65 "src/ltl_to_acsl/yalexer.mll"
                      ( RPAREN )
# 640 "src/ltl_to_acsl/yalexer.ml"

  | 17 ->
# 66 "src/ltl_to_acsl/yalexer.mll"
                      ( LSQUARE )
# 645 "src/ltl_to_acsl/yalexer.ml"

  | 18 ->
# 67 "src/ltl_to_acsl/yalexer.mll"
                      ( RSQUARE )
# 650 "src/ltl_to_acsl/yalexer.ml"

  | 19 ->
# 68 "src/ltl_to_acsl/yalexer.mll"
                      ( LCURLY )
# 655 "src/ltl_to_acsl/yalexer.ml"

  | 20 ->
# 69 "src/ltl_to_acsl/yalexer.mll"
                      ( RCURLY )
# 660 "src/ltl_to_acsl/yalexer.ml"

  | 21 ->
# 70 "src/ltl_to_acsl/yalexer.mll"
                      ( DOT )
# 665 "src/ltl_to_acsl/yalexer.ml"

  | 22 ->
# 71 "src/ltl_to_acsl/yalexer.mll"
                      ( RARROW )
# 670 "src/ltl_to_acsl/yalexer.ml"

  | 23 ->
# 72 "src/ltl_to_acsl/yalexer.mll"
                      ( AMP )
# 675 "src/ltl_to_acsl/yalexer.ml"

  | 24 ->
# 73 "src/ltl_to_acsl/yalexer.mll"
                      ( PIPE )
# 680 "src/ltl_to_acsl/yalexer.ml"

  | 25 ->
# 74 "src/ltl_to_acsl/yalexer.mll"
                      ( AND )
# 685 "src/ltl_to_acsl/yalexer.ml"

  | 26 ->
# 75 "src/ltl_to_acsl/yalexer.mll"
                      ( OR )
# 690 "src/ltl_to_acsl/yalexer.ml"

  | 27 ->
# 76 "src/ltl_to_acsl/yalexer.mll"
                      ( NOT )
# 695 "src/ltl_to_acsl/yalexer.ml"

  | 28 ->
# 77 "src/ltl_to_acsl/yalexer.mll"
                      ( LT )
# 700 "src/ltl_to_acsl/yalexer.ml"

  | 29 ->
# 78 "src/ltl_to_acsl/yalexer.mll"
                      ( GT )
# 705 "src/ltl_to_acsl/yalexer.ml"

  | 30 ->
# 79 "src/ltl_to_acsl/yalexer.mll"
                      ( LE )
# 710 "src/ltl_to_acsl/yalexer.ml"

  | 31 ->
# 80 "src/ltl_to_acsl/yalexer.mll"
                      ( GE )
# 715 "src/ltl_to_acsl/yalexer.ml"

  | 32 ->
# 81 "src/ltl_to_acsl/yalexer.mll"
                      ( EQ )
# 720 "src/ltl_to_acsl/yalexer.ml"

  | 33 ->
# 82 "src/ltl_to_acsl/yalexer.mll"
                      ( NEQ )
# 725 "src/ltl_to_acsl/yalexer.ml"

  | 34 ->
# 83 "src/ltl_to_acsl/yalexer.mll"
                      ( TRUE )
# 730 "src/ltl_to_acsl/yalexer.ml"

  | 35 ->
# 84 "src/ltl_to_acsl/yalexer.mll"
                      ( FALSE )
# 735 "src/ltl_to_acsl/yalexer.ml"

  | 36 ->
# 85 "src/ltl_to_acsl/yalexer.mll"
                      ( SEMI_COLON )
# 740 "src/ltl_to_acsl/yalexer.ml"

  | 37 ->
# 86 "src/ltl_to_acsl/yalexer.mll"
                      ( COLON )
# 745 "src/ltl_to_acsl/yalexer.ml"

  | 38 ->
# 87 "src/ltl_to_acsl/yalexer.mll"
                      ( EOF )
# 750 "src/ltl_to_acsl/yalexer.ml"

  | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_token_rec lexbuf __ocaml_lex_state