let yyact = [|
  (fun _ -> failwith "parser")
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'err01) in
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Role_definitionsin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'Maybe_goal_declarationin
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Role_instantiationin
    Obj.repr(
# 157 "parser.mly"
  ( new Types.specification_class _2 _3 _4 )
# 1051 "parser.ml"
               : Types.specification_class))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Role_definitionin
    Obj.repr(
# 163 "parser.mly"
  ( Globals.current_role := 0;
    [_1] )
# 1059 "parser.ml"
               : 'Role_definitions))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Role_definitionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Role_definitionsin
    Obj.repr(
# 166 "parser.mly"
  ( _1::_2 )
# 1067 "parser.ml"
               : 'Role_definitions))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Basic_rolein
    Obj.repr(
# 177 "parser.mly"
  ( Types.Basic (_1) )
# 1074 "parser.ml"
               : 'Role_definition))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Composition_rolein
    Obj.repr(
# 179 "parser.mly"
  ( Types.Composition(_1) )
# 1081 "parser.ml"
               : 'Role_definition))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'Role_headerin
    let _3 = (Parsing.peek_val __caml_parser_env 7 : 'err33) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'Playerin
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Role_declarationsin
    let _6 = (Parsing.peek_val __caml_parser_env 4 : 'err29) in
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'Maybe_transition_declarationin
    let _10 = (Parsing.peek_val __caml_parser_env 0 : 'err01) in
    Obj.repr(
# 188 "parser.mly"
  ( let (name, formal_args) = _2 in
    let player = _4 in
    let (local, owns, init, accept, knowledge) = _5 in
    let role = new Types.basic_hlpsl_role in
    role#set_name name;
    role#set_player player;
    role#set_param formal_args;
    role#set_owned owns;
    role#set_local (local@(!newSetsDecl));
    role#set_init (init@(!newSetsInit));
    role#set_accept accept;
    role#set_knowledge knowledge;
    role#set_actions _7;
    Globals.player_to_role:=(player,name)::(!Globals.player_to_role);
    check_player_of_role player name formal_args;
    role
  )
# 1110 "parser.ml"
               : 'Basic_role))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err03) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 209 "parser.mly"
  ( Globals.string_id#register_name _3 !Globals.current_role )
# 1118 "parser.ml"
               : 'Player))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 6 : 'Role_headerin
    let _3 = (Parsing.peek_val __caml_parser_env 5 : 'Role_declarationsin
    let _4 = (Parsing.peek_val __caml_parser_env 4 : 'err30) in
    let _5 = (Parsing.peek_val __caml_parser_env 3 : 'Maybe_composition_declarationin
    let _8 = (Parsing.peek_val __caml_parser_env 0 : 'err01) in
    Obj.repr(
# 218 "parser.mly"
  ( let (name, formal_args) = _2 in
    let (local, owns, init, accept, knowledge) = _3 in
    let role = new Types.composition_role _5 in
    role#set_name name;
    role#set_param formal_args;
    role#set_owned owns;
    role#set_local (local@(!newSetsDecl));
    role#set_init (init@(!newSetsInit));
    role#set_accept accept;
    role#set_knowledge knowledge;
    role
  )
# 1140 "parser.ml"
               : 'Composition_role))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : 'Role_namein
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err202) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Maybe_formal_argumentsin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 235 "parser.mly"
  ( newSetsInfo:=[];
    newSetsInit:=[];
    newSetsDecl:=[];
    (_1,_5) )
# 1154 "parser.ml"
               : 'Role_header))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err37) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 243 "parser.mly"
  ( Globals.current_role := Globals.string_id#register_name _2 0;
    !Globals.current_role
  )
# 1164 "parser.ml"
               : 'Role_name))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Formal_argumentsin
    Obj.repr(
# 270 "parser.mly"
  ( _1 )
# 1171 "parser.ml"
               : 'Maybe_formal_arguments))
; (fun __caml_parser_env ->
    Obj.repr(
# 271 "parser.mly"
  ( [] )
# 1177 "parser.ml"
               : 'Maybe_formal_arguments))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Variable_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err35) in
    Obj.repr(
# 276 "parser.mly"
  ( _1 )
# 1185 "parser.ml"
               : 'Formal_arguments))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Variable_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err35) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Formal_argumentsin
    Obj.repr(
# 278 "parser.mly"
  ( _1@_4 )
# 1194 "parser.ml"
               : 'Formal_arguments))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 13 : 'err06) in
    let _3 = (Parsing.peek_val __caml_parser_env 11 : 'err13) in
    let _4 = (Parsing.peek_val __caml_parser_env 10 : 'Maybe_local_declarationin
    let _5 = (Parsing.peek_val __caml_parser_env 9 : 'err12) in
    let _6 = (Parsing.peek_val __caml_parser_env 8 : 'Maybe_owns_declarationin
    let _7 = (Parsing.peek_val __caml_parser_env 7 : 'err36) in
    let _8 = (Parsing.peek_val __caml_parser_env 6 : 'Maybe_const_declarationin
    let _9 = (Parsing.peek_val __caml_parser_env 5 : 'err14) in
    let _10 = (Parsing.peek_val __caml_parser_env 4 : 'Maybe_init_declarationin
    let _11 = (Parsing.peek_val __caml_parser_env 3 : 'err15) in
    let _12 = (Parsing.peek_val __caml_parser_env 2 : 'Maybe_accept_declarationin
    let _13 = (Parsing.peek_val __caml_parser_env 1 : 'err32) in
    let _14 = (Parsing.peek_val __caml_parser_env 0 : 'Maybe_iknowledge_declarationin
    Obj.repr(
# 290 "parser.mly"
  ( (_4,_6,_10,_12,_14) (* WARNING: const declarations not taken into account *) )
# 1213 "parser.ml"
               : 'Role_declarations))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Local_declarationin
    Obj.repr(
# 319 "parser.mly"
  ( _2 )
# 1220 "parser.ml"
               : 'Maybe_local_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 320 "parser.mly"
  ( [] )
# 1226 "parser.ml"
               : 'Maybe_local_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Variables_declaration_listin
    Obj.repr(
# 325 "parser.mly"
  ( _1 )
# 1233 "parser.ml"
               : 'Local_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Variable_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err351) in
    Obj.repr(
# 330 "parser.mly"
  ( _1 )
# 1241 "parser.ml"
               : 'Variables_declaration_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Variable_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err351) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Variables_declaration_listin
    Obj.repr(
# 332 "parser.mly"
  ( _1@_4 )
# 1250 "parser.ml"
               : 'Variables_declaration_list))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Owns_declarationin
    Obj.repr(
# 344 "parser.mly"
  ( _2 )
# 1257 "parser.ml"
               : 'Maybe_owns_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 345 "parser.mly"
  ( [] )
# 1263 "parser.ml"
               : 'Maybe_owns_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Variables_listin
    Obj.repr(
# 350 "parser.mly"
  ( List.fold_left
      (fun lv var -> 
        try
          (lv@[new Types.hlpsl_variable var (Globals.type_table#get_type var)])
        with
          Not_found ->
            (Semantic_check.add_sem_error
             (19,
              Globals.string_id#get_name var,
              line_number(),
              Globals.string_id#get_name !Globals.current_role,
              "","");
             lv))
      [] _1 
  )
# 1284 "parser.ml"
               : 'Owns_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Const_declarationin
    Obj.repr(
# 370 "parser.mly"
  ()
# 1291 "parser.ml"
               : 'Maybe_const_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 371 "parser.mly"
  ()
# 1297 "parser.ml"
               : 'Maybe_const_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_declaration_listin
    Obj.repr(
# 376 "parser.mly"
  ()
# 1304 "parser.ml"
               : 'Const_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Constant_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err352) in
    Obj.repr(
# 381 "parser.mly"
  ()
# 1312 "parser.ml"
               : 'Constants_declaration_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Constant_declarationin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err352) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_declaration_listin
    Obj.repr(
# 383 "parser.mly"
  ()
# 1321 "parser.ml"
               : 'Constants_declaration_list))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Init_declarationsin
    Obj.repr(
# 395 "parser.mly"
  ( List.iter
      (fun (xid,l) ->
        let setType =
          let rec find_applied = function
              t::lt ->
                (try
                  Set([Utils.term_to_type t])
                with Not_found -> find_applied lt)
            | [] -> Set([])
          in
          find_applied l
        in
        ignore (Globals.type_table#register_type xid setType);
        newSetsDecl := !newSetsDecl @ [new Types.hlpsl_variable xid setType];
        newSetsInit := !newSetsInit @ [Types.Equal(Types.Base(Types.Var(xid)),Set(l))])
      !newSetsInfo;
    newSetsInfo:=[];
    _2 )
# 1345 "parser.ml"
               : 'Maybe_init_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 413 "parser.mly"
  ([])
# 1351 "parser.ml"
               : 'Maybe_init_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Init_declarationin
    Obj.repr(
# 418 "parser.mly"
  ( [_1] )
# 1358 "parser.ml"
               : 'Init_declarations))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'Init_declarationin
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Init_declarationsin
    Obj.repr(
# 420 "parser.mly"
  ( _1::_3 )
# 1366 "parser.ml"
               : 'Init_declarations))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err243) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 425 "parser.mly"
  ( match _5 with
    Types.Base(Types.Var(xid)) ->
      if List.mem_assoc xid !newSetsInfo then
        (let l = List.assoc xid !newSetsInfo in
        newSetsInfo := List.remove_assoc xid !newSetsInfo;
        Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)), Set(l)))
      else
        Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)), _5)
  | _ -> Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 1384 "parser.ml"
               : 'Init_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err243) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 435 "parser.mly"
  ( match _5 with
    Types.Base(Types.Var(xid)) ->
      if List.mem_assoc xid !newSetsInfo then
        (let l = List.assoc xid !newSetsInfo in
        newSetsInfo := List.remove_assoc xid !newSetsInfo;
        Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)), Set(l)))
      else
        Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)), _5)
  | _ -> Types.Equal(Types.Base(Types.Var(Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 1402 "parser.ml"
               : 'Init_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 445 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),[]) )
# 1411 "parser.ml"
               : 'Init_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 447 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),_5) )
# 1422 "parser.ml"
               : 'Init_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Concatenated_variables_listin
    Obj.repr(
# 456 "parser.mly"
  ( (* \fix{To be implemented} *) 
    (new 
       Types.call_over_declaration 0
         (dummy_val_of_type (Types.Base(Types.Text))))
  )
# 1433 "parser.ml"
               : 'Parameters_instance))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'Concatenated_variables_listin
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _7 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 462 "parser.mly"
  (
    let string_var = 
      match _7 with
        Types.Base(Types.Var i) -> i
      | _ -> 
          Error_handler.errorNumber := 20;
          raise Parse_error
    in
    new Types.call_over_declaration string_var _4
  )
# 1453 "parser.ml"
               : 'Parameters_instance))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Concatenated_variablesin
    Obj.repr(
# 476 "parser.mly"
  ( _1 )
# 1460 "parser.ml"
               : 'Concatenated_variables_list))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Concatenated_variablesin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 478 "parser.mly"
  ( _2 )
# 1468 "parser.ml"
               : 'Concatenated_variables_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err03) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 484 "parser.mly"
  ( Types.Base (Types.Var (Globals.string_id#register_name _2 !Globals.current_role)) )
# 1476 "parser.ml"
               : 'Concatenated_variables))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err03) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'err19) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Concatenated_variablesin
    Obj.repr(
# 486 "parser.mly"
  ( Pair(Types.Base (Types.Var (Globals.string_id#register_name _2 !Globals.current_role)), _5) )
# 1486 "parser.ml"
               : 'Concatenated_variables))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Accept_declarationin
    Obj.repr(
# 506 "parser.mly"
  ( _2 )
# 1493 "parser.ml"
               : 'Maybe_accept_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 507 "parser.mly"
  ( [] )
# 1499 "parser.ml"
               : 'Maybe_accept_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err21) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Predicatesin
    Obj.repr(
# 512 "parser.mly"
  ( _2 )
# 1507 "parser.ml"
               : 'Accept_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'IKnowledge_declarationin
    Obj.repr(
# 536 "parser.mly"
  ( let newSetKnlg =
      (List.map
         (fun (xid,l) ->
           let setType =
             let rec find_applied = function
                 t::lt ->
                   (try
                     Set([Utils.term_to_type t])
                   with Not_found -> find_applied lt)
               | [] -> Set([])
             in
             find_applied l
           in
           ignore (Globals.type_table#register_type xid setType);
           newSetsInit := !newSetsInit @ [Types.Equal(Types.Base(Types.Var(xid)),Set(l))];
           Types.Base(Types.Var(xid)))
         !newSetsInfo)
    in
    newSetsInfo:=[];
    _1 @ newSetKnlg )
# 1533 "parser.ml"
               : 'Maybe_iknowledge_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 556 "parser.mly"
  ( [] )
# 1539 "parser.ml"
               : 'Maybe_iknowledge_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err242) in
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err09) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err316) in
    let _7 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err08) in
    Obj.repr(
# 561 "parser.mly"
  ( _7 )
# 1550 "parser.ml"
               : 'IKnowledge_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err242) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err09) in
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err08) in
    Obj.repr(
# 563 "parser.mly"
  ( [] )
# 1559 "parser.ml"
               : 'IKnowledge_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err16) in
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'Transitions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'err02) in
    Obj.repr(
# 576 "parser.mly"
  ( _3 )
# 1568 "parser.ml"
               : 'Maybe_transition_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err02) in
    Obj.repr(
# 578 "parser.mly"
  ( [] )
# 1575 "parser.ml"
               : 'Maybe_transition_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err161) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Transitionin
    Obj.repr(
# 583 "parser.mly"
  ( [_2] )
# 1583 "parser.ml"
               : 'Transitions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'err161) in
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'Transitionin
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Transitions_listin
    Obj.repr(
# 585 "parser.mly"
  ( _2::_3 )
# 1592 "parser.ml"
               : 'Transitions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 8 : 'Labelin
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err19) in
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err21) in
    let _5 = (Parsing.peek_val __caml_parser_env 4 : 'Predicatesin
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err18) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err38) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Actionsin
    Obj.repr(
# 590 "parser.mly"
  ( let newSetCons =
      (List.map
         (fun (xid,l) ->
           let setType =
             let rec find_applied = function
                 t::lt ->
                   (try
                     Set([Utils.term_to_type t])
                   with Not_found -> find_applied lt)
               | [] -> Set([])
             in
             find_applied l
           in
           ignore (Globals.type_table#register_type xid setType);
           newSetsDecl := !newSetsDecl@[new Types.hlpsl_variable xid setType];
           newSetsInit := !newSetsInit@[Types.Equal(Types.Base(Types.Var(xid)),Set([]))];
           let rec makeCons = function
               [] -> Types.Base(Types.Var(xid))
             | t::lt ->
                 Types.Cons(t, makeCons lt)
           in
           Types.Equal(Types.Prime(Types.Var(xid)), makeCons l))
         !newSetsInfo)
    in
    newSetsInfo:=[];
    (truenew Types.hlpsl_transition _1 _5 (_9 @ newSetCons)) )
# 1630 "parser.ml"
               : 'Transition))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 8 : 'Labelin
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err19) in
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err21) in
    let _5 = (Parsing.peek_val __caml_parser_env 4 : 'Eventsin
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err18) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err38) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Reactionsin
    Obj.repr(
# 617 "parser.mly"
  ( let newSetCons =
      (List.map
         (fun (xid,l) ->
           let setType =
             let rec find_applied = function
                 t::lt ->
                   (try
                     Set([Utils.term_to_type t])
                   with Not_found -> find_applied lt)
               | [] -> Set([])
             in
             find_applied l
           in
           ignore (Globals.type_table#register_type xid setType);
           newSetsDecl := !newSetsDecl@[new Types.hlpsl_variable xid setType];
           newSetsInit := !newSetsInit@[Types.Equal(Types.Base(Types.Var(xid)),Set([]))];
           let rec makeCons = function
               [] -> Types.Base(Types.Var(xid))
             | t::lt ->
                 Types.Cons(t, makeCons lt)
           in
           Types.Equal(Types.Prime(Types.Var(xid)), makeCons l))
         !newSetsInfo)
    in
    newSetsInfo:=[];
    (falsenew Types.hlpsl_transition _1 _5 (_9 @ newSetCons)) )
# 1668 "parser.ml"
               : 'Transition))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 647 "parser.mly"
  ( Globals.string_id#register_name _1 0 )
# 1675 "parser.ml"
               : 'Label))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 649 "parser.mly"
  ( Globals.string_id#register_name _1 0 )
# 1682 "parser.ml"
               : 'Label))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Predicatein
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err22) in
    Obj.repr(
# 655 "parser.mly"
  ( if !newSetsInfo <> [] then
      (Error_handler.errorNumber := 251;
       raise Parse_error);
    [_1] )
# 1693 "parser.ml"
               : 'Predicates))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Predicatein
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err22) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err21) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Predicatesin
    Obj.repr(
# 660 "parser.mly"
  ( _1::_5 )
# 1703 "parser.ml"
               : 'Predicates))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_formulain
    Obj.repr(
# 665 "parser.mly"
  ( _1 )
# 1710 "parser.ml"
               : 'Predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 667 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),[]) )
# 1719 "parser.ml"
               : 'Predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 669 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),_5) )
# 1730 "parser.ml"
               : 'Predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 671 "parser.mly"
  ( Types.Event(Types.Var (Globals.string_id#register_name _1 !Globals.current_role),_5) )
# 1741 "parser.ml"
               : 'Predicate))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Predicatein
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 673 "parser.mly"
  ( Types.Not(_5) )
# 1751 "parser.ml"
               : 'Predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Predicatein
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err22) in
    Obj.repr(
# 685 "parser.mly"
  ( if !newSetsInfo <> [] then
      (Error_handler.errorNumber := 251;
       raise Parse_error);
    [_1] )
# 1762 "parser.ml"
               : 'Events))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Eventin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err22) in
    Obj.repr(
# 690 "parser.mly"
  ( if !newSetsInfo <> [] then
      (Error_handler.errorNumber := 251;
       raise Parse_error);
    [_1] )
# 1773 "parser.ml"
               : 'Events))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Predicatein
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err22) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err21) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Eventsin
    Obj.repr(
# 695 "parser.mly"
  ( _1::_5 )
# 1783 "parser.ml"
               : 'Events))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Eventin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err22) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err21) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Eventsin
    Obj.repr(
# 697 "parser.mly"
  ( _1::_5 )
# 1793 "parser.ml"
               : 'Events))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_formulain
    Obj.repr(
# 702 "parser.mly"
  ( _1 )
# 1800 "parser.ml"
               : 'Event))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 704 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),_5) )
# 1811 "parser.ml"
               : 'Event))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 706 "parser.mly"
  ( Types.Event(Types.Var (Globals.string_id#register_name _1 !Globals.current_role),_5) )
# 1822 "parser.ml"
               : 'Event))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 5 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 708 "parser.mly"
  ( Globals.global_start_const := true;
    Globals.register_start();
    Types.Event
      (Types.Var (Globals.string_id#register_name _1 !Globals.current_role),
       [Types.Base
          (Types.Const 
             !Globals.global_start)]) )
# 1837 "parser.ml"
               : 'Event))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Eventin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 716 "parser.mly"
  ( Types.Not(_5) )
# 1847 "parser.ml"
               : 'Event))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Actionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err16) in
    Obj.repr(
# 722 "parser.mly"
  ( [_1] )
# 1855 "parser.ml"
               : 'Actions))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Actionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err16) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Actionsin
    Obj.repr(
# 724 "parser.mly"
  ( _1::_4 )
# 1864 "parser.ml"
               : 'Actions))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Actionsin
    Obj.repr(
# 729 "parser.mly"
  ( _1 )
# 1871 "parser.ml"
               : 'Reactions))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err23) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err243) in
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _7 = (Parsing.peek_val __caml_parser_env 0 : 'Expressionin
    Obj.repr(
# 734 "parser.mly"
  ( 
    Types.Equal
      (Types.Prime
         (Types.Var
            (Globals.string_id#register_name _1 !Globals.current_role)),
       _7)
  )
# 1888 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 10 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 9 : 'err23) in
    let _4 = (Parsing.peek_val __caml_parser_env 7 : 'err243) in
    let _6 = (Parsing.peek_val __caml_parser_env 5 : 'err312) in
    let _8 = (Parsing.peek_val __caml_parser_env 3 : 'err23) in
    let _10 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 742 "parser.mly"
  ( 
    Types.New
      (Globals.string_id#register_name _1 !Globals.current_role)
  )
# 1903 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err23) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err243) in
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _7 = (Parsing.peek_val __caml_parser_env 0 : 'Expressionin
    Obj.repr(
# 747 "parser.mly"
  ( 
    Types.Equal
      (Types.Prime
         (Types.Var
            (Globals.string_id#register_name _1 !Globals.current_role)),
       _7)
  )
# 1920 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 10 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 9 : 'err23) in
    let _4 = (Parsing.peek_val __caml_parser_env 7 : 'err243) in
    let _6 = (Parsing.peek_val __caml_parser_env 5 : 'err312) in
    let _8 = (Parsing.peek_val __caml_parser_env 3 : 'err23) in
    let _10 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 755 "parser.mly"
  ( 
    Types.New
      (Globals.string_id#register_name _1 !Globals.current_role)
  )
# 1935 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 763 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),[]) )
# 1944 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 765 "parser.mly"
  ( Types.Event(Types.Const (Globals.string_id#register_name _1 0),_5) )
# 1955 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 767 "parser.mly"
  ( Types.Event(Types.Var (Globals.string_id#register_name _1 !Globals.current_role),_5) )
# 1966 "parser.ml"
               : 'Action))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err28) in
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'Compositions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'err02) in
    Obj.repr(
# 773 "parser.mly"
  ( List.iter
      (fun (xid,l) ->
        let setType =
          let rec find_applied = function
              t::lt ->
                (try
                  Set([Utils.term_to_type t])
                with Not_found -> find_applied lt)
            | [] -> Set([])
          in
          find_applied l
        in
        ignore (Globals.type_table#register_type xid setType);
        newSetsDecl := !newSetsDecl@[new Types.hlpsl_variable xid setType];
        newSetsInit := !newSetsInit@[Types.Equal(Types.Base(Types.Var(xid)),Set(l))])
      !newSetsInfo;
    newSetsInfo:=[];
    _3 )
# 1992 "parser.ml"
               : 'Maybe_composition_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err02) in
    Obj.repr(
# 792 "parser.mly"
  ( Types.Empty )
# 1999 "parser.ml"
               : 'Maybe_composition_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err201) in
    Obj.repr(
# 797 "parser.mly"
  ( _1 )
# 2007 "parser.ml"
               : 'Compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err201) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_par_compositions_listin
    Obj.repr(
# 799 "parser.mly"
  ( Types.Parallel(_1,_4) )
# 2016 "parser.ml"
               : 'Compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err201) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_seq_compositions_listin
    Obj.repr(
# 801 "parser.mly"
  ( Types.Sequential(_1,_4) )
# 2025 "parser.ml"
               : 'Compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Compositions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 803 "parser.mly"
  ( _3 )
# 2034 "parser.ml"
               : 'Compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Role_instancein
    Obj.repr(
# 808 "parser.mly"
  ( _1 )
# 2041 "parser.ml"
               : 'Composition))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err07) in
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err09) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'Parameters_instancein
    let _7 = (Parsing.peek_val __caml_parser_env 2 : 'err08) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_compositions_listin
    Obj.repr(
# 810 "parser.mly"
  (
   Types.MultiPar(_6,_9)
     (*
        match $8 with
          Types.Parallel(r1,r2) ->
            Types.MultiPar($5,$8)
        | Types.Sequential(r1,r2) ->
            Types.MultiSeq($5,$8)
        | _ ->
          Types.MultiPar($5,$8)
      *)

  )
# 2063 "parser.ml"
               : 'Composition))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err201) in
    Obj.repr(
# 826 "parser.mly"
  ( _1 )
# 2071 "parser.ml"
               : 'Bracketed_par_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err201) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_par_compositions_listin
    Obj.repr(
# 828 "parser.mly"
  ( Types.Parallel(_1,_4) )
# 2080 "parser.ml"
               : 'Bracketed_par_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Compositions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 830 "parser.mly"
  ( _3 )
# 2089 "parser.ml"
               : 'Bracketed_par_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err201) in
    Obj.repr(
# 835 "parser.mly"
  ( _1 )
# 2097 "parser.ml"
               : 'Bracketed_seq_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err201) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_seq_compositions_listin
    Obj.repr(
# 837 "parser.mly"
  ( Types.Sequential(_1,_4) )
# 2106 "parser.ml"
               : 'Bracketed_seq_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Compositions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 839 "parser.mly"
  ( _3 )
# 2115 "parser.ml"
               : 'Bracketed_seq_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Compositionin
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'err201) in
    Obj.repr(
# 844 "parser.mly"
  ( _1 )
# 2123 "parser.ml"
               : 'Bracketed_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Compositions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 846 "parser.mly"
  ( _3 )
# 2132 "parser.ml"
               : 'Bracketed_compositions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Role_instantiationin
    Obj.repr(
# 852 "parser.mly"
  ( _1 )
# 2139 "parser.ml"
               : 'Role_instance))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 7 : 'err37) in
    let _2 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _5 = (Parsing.peek_val __caml_parser_env 3 : 'Maybe_effective_argumentsin
    let _6 = (Parsing.peek_val __caml_parser_env 2 : 'err11) in
    let _8 = (Parsing.peek_val __caml_parser_env 0 : 'err201) in
    Obj.repr(
# 861 "parser.mly"
  ( (* \fix{what if no params?} *)
    Types.Call(new Types.call_type (Globals.string_id#register_name _2 0) _5)
  )
# 2153 "parser.ml"
               : 'Role_instantiation))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Expressions_listin
    Obj.repr(
# 868 "parser.mly"
  ( _1 )
# 2160 "parser.ml"
               : 'Maybe_effective_arguments))
; (fun __caml_parser_env ->
    Obj.repr(
# 869 "parser.mly"
  ( [] )
# 2166 "parser.ml"
               : 'Maybe_effective_arguments))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Goal_declarationin
    Obj.repr(
# 875 "parser.mly"
  ( _1 )
# 2173 "parser.ml"
               : 'Maybe_goal_declaration))
; (fun __caml_parser_env ->
    Obj.repr(
# 876 "parser.mly"
  ( [] )
# 2179 "parser.ml"
               : 'Maybe_goal_declaration))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Goal_formulas_listin
    Obj.repr(
# 881 "parser.mly"
  ( _2 )
# 2186 "parser.ml"
               : 'Goal_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Goal_formulain
    Obj.repr(
# 886 "parser.mly"
  ( [_1] )
# 2193 "parser.ml"
               : 'Goal_formulas_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Goal_formulain
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Goal_formulas_listin
    Obj.repr(
# 888 "parser.mly"
  ( _1::_2 )
# 2201 "parser.ml"
               : 'Goal_formulas_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 7 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 6 : 'err05) in
    let _4 = (Parsing.peek_val __caml_parser_env 4 : 'err37) in
    let _5 = (Parsing.peek_val __caml_parser_env 3 : string) in
    let _7 = (Parsing.peek_val __caml_parser_env 1 : 'err37) in
    let _8 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 908 "parser.mly"
  ( let rid1 = Globals.string_id#register_name _1 0 in
    let rid2 = Globals.string_id#register_name _5 0 in
    let sid1 = Globals.string_id#register_name "SID1" 0 in
    let sid1_type = Globals.type_table#register_type sid1 (Types.Base Types.Natin
    if sid1_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID1 has to be of type nat","","","","");
    let sid2 = Globals.string_id#register_name "SID2" 0 in
    let sid2_type = Globals.type_table#register_type sid2 (Types.Base Types.Natin
    if sid2_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID2 has to be of type nat","","","","");
    let mgoal = Globals.string_id#register_name "MGoal" 0 in
    let mgoal_type = Globals.type_table#register_type mgoal (Types.Base Types.Messagein
    if mgoal_type <> (Types.Base Types.Messagethen
      Semantic_check.add_sem_error
        (18,"pre-defined variable MGoal has to be of type message","","","","");
    Types.Auth (rid1,rid2,_8) )
# 2230 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 8 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err05) in
    let _5 = (Parsing.peek_val __caml_parser_env 4 : 'err37) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : string) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err37) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 927 "parser.mly"
  ( let rid1 = Globals.string_id#register_name _1 0 in
    let rid2 = Globals.string_id#register_name _6 0 in
    let mgoal = Globals.string_id#register_name "MGoal" 0 in
    let mgoal_type = Globals.type_table#register_type mgoal (Types.Base Types.Messagein
    if mgoal_type <> (Types.Base Types.Messagethen
      Semantic_check.add_sem_error
        (18,"pre-defined variable MGoal has to be of type message","","","","");
    Types.Weak_auth (rid1,rid2,_9) )
# 2249 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err27) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 938 "parser.mly"
  ( let mgoal = Globals.string_id#register_name "MGoal" 0 in
    let mgoal_type = Globals.type_table#register_type mgoal (Types.Base Types.Messagein
    if mgoal_type <> (Types.Base Types.Messagethen
      Semantic_check.add_sem_error
        (18,"pre-defined variable MGoal has to be of type message","","","","");
    let asgoal = Globals.string_id#register_name "ASGoal" 0 in
    let asgoal_type = Globals.type_table#register_type asgoal (Types.Set [Types.Base Types.Agent]) in
    if asgoal_type <> (Types.Set [Types.Base Types.Agent]) then
      Semantic_check.add_sem_error
        (18,"pre-defined variable ASGoal has to be of type agent set","","","","");
    Types.Secrecy _3 )
# 2267 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err37) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 950 "parser.mly"
  ( let a1goal = Globals.string_id#register_name "A1Goal" 0 in
    let a1goal_type = Globals.type_table#register_type a1goal (Types.Base Types.Agentin
    if a1goal_type <> (Types.Base Types.Agentthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable A1Goal has to be of type agent","","","","");
    let a2goal = Globals.string_id#register_name "A2Goal" 0 in
    let a2goal_type = Globals.type_table#register_type a2goal (Types.Base Types.Agentin
    if a2goal_type <> (Types.Base Types.Agentthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable A2Goal has to be of type agent","","","","");
    let sid = Globals.string_id#register_name "SID" 0 in
    let sid_type = Globals.type_table#register_type sid (Types.Base Types.Natin
    if sid_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID has to be of type nat","","","","");
    let sid1 = Globals.string_id#register_name "SID1" 0 in
    let sid1_type = Globals.type_table#register_type sid1 (Types.Base Types.Natin
    if sid1_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID1 has to be of type nat","","","","");
    let sid2 = Globals.string_id#register_name "SID2" 0 in
    let sid2_type = Globals.type_table#register_type sid2 (Types.Base Types.Natin
    if sid2_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID2 has to be of type nat","","","","");
    let mgoal = Globals.string_id#register_name "MGoal" 0 in
    let mgoal_type = Globals.type_table#register_type mgoal (Types.Base Types.Messagein
    if mgoal_type <> (Types.Base Types.Messagethen
      Semantic_check.add_sem_error
        (18,"pre-defined variable MGoal has to be of type message","","","","");
    Types.Authentication (_3) )
# 2305 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err37) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 982 "parser.mly"
  ( let a1goal = Globals.string_id#register_name "A1Goal" 0 in
    let a1goal_type = Globals.type_table#register_type a1goal (Types.Base Types.Agentin
    if a1goal_type <> (Types.Base Types.Agentthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable A1Goal has to be of type agent","","","","");
    let a2goal = Globals.string_id#register_name "A2Goal" 0 in
    let a2goal_type = Globals.type_table#register_type a2goal (Types.Base Types.Agentin
    if a2goal_type <> (Types.Base Types.Agentthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable A2Goal has to be of type agent","","","","");
    let sid = Globals.string_id#register_name "SID" 0 in
    let sid_type = Globals.type_table#register_type sid (Types.Base Types.Natin
    if sid_type <> (Types.Base Types.Natthen
      Semantic_check.add_sem_error
        (18,"pre-defined variable SID has to be of type nat","","","","");
    let mgoal = Globals.string_id#register_name "MGoal" 0 in
    let mgoal_type = Globals.type_table#register_type mgoal (Types.Base Types.Messagein
    if mgoal_type <> (Types.Base Types.Messagethen
      Semantic_check.add_sem_error
        (18,"pre-defined variable MGoal has to be of type message","","","","");
    Types.Weak_authentication (_3) )
# 2333 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1004 "parser.mly"
  ( if !newSetsInfo <> [] then
      (Error_handler.errorNumber := 252;
       raise Parse_error);
    Types.LTL_goal (Op1(_2), Utils.vars_consts_from_LTL_goal _2) )
# 2343 "parser.ml"
               : 'Goal_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_predicatein
    Obj.repr(
# 1012 "parser.mly"
  (Pred(_1))
# 2350 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1014 "parser.mly"
  (Op2(_2))
# 2357 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1016 "parser.mly"
  (Op3(_2))
# 2364 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1018 "parser.mly"
  (Op4(_2))
# 2371 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1020 "parser.mly"
  (Op5(_2))
# 2378 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_formulain
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1022 "parser.mly"
  (_3)
# 2387 "parser.ml"
               : 'LTL_unary_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_predicatein
    Obj.repr(
# 1027 "parser.mly"
  (Pred(_1))
# 2394 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1029 "parser.mly"
  (Op2(_2))
# 2401 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1031 "parser.mly"
  (Op3(_2))
# 2408 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1033 "parser.mly"
  (Op4(_2))
# 2415 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_formulain
    Obj.repr(
# 1035 "parser.mly"
  (Op5(_2))
# 2422 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_formulain
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_formulain
    Obj.repr(
# 1037 "parser.mly"
  (Conj(_1,_3))
# 2430 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_formulain
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_formulain
    Obj.repr(
# 1039 "parser.mly"
  (Dij(_1,_3))
# 2438 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_formulain
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_formulain
    Obj.repr(
# 1041 "parser.mly"
  (Impl(_1,_3))
# 2446 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_formulain
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1043 "parser.mly"
  (_3)
# 2455 "parser.ml"
               : 'LTL_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1048 "parser.mly"
  ( Types.Unknown(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),[]) )
# 2464 "parser.ml"
               : 'LTL_unary_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1050 "parser.mly"
  ( Types.Unknown(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),_5) )
# 2475 "parser.ml"
               : 'LTL_unary_predicate))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Stutter_expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Variable_or_constantin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1052 "parser.mly"
  ( Types.Ifcontains(_5,_8) )
# 2487 "parser.ml"
               : 'LTL_unary_predicate))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'LTL_predicatein
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1054 "parser.mly"
  ( Types.Ifnot(_4) )
# 2496 "parser.ml"
               : 'LTL_unary_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'LTL_unary_predicatein
    Obj.repr(
# 1059 "parser.mly"
  (_1)
# 2503 "parser.ml"
               : 'LTL_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1061 "parser.mly"
  ( Types.Ifequal(_1,_4) )
# 2512 "parser.ml"
               : 'LTL_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1063 "parser.mly"
  ( Types.Ifleq(_1,_4) )
# 2521 "parser.ml"
               : 'LTL_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1065 "parser.mly"
  ( Types.Ifnot(Types.Ifequal(_1,_4)) )
# 2530 "parser.ml"
               : 'LTL_predicate))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Variables_listin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err10) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Type_ofin
    Obj.repr(
# 1078 "parser.mly"
  ( List.map 
      (fun var ->
        if (Globals.type_table#register_type var _4) <> _4 then
          (let error_string =
            ("variable "^(Globals.string_id#get_name var)^
             " redeclared with incompatible type")
          in
          Semantic_check.add_sem_error
            (16, error_string, line_number(), "","",""));
        new Types.hlpsl_variable var _4)
      _1
  )
# 2550 "parser.ml"
               : 'Variable_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'err03) in
    let _2 = (Parsing.peek_val __caml_parser_env 1 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'err702) in
    Obj.repr(
# 1095 "parser.mly"
  ( [Globals.string_id#register_name _2 !Globals.current_role] )
# 2559 "parser.ml"
               : 'Variables_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err03) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'err702) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Variables_listin
    Obj.repr(
# 1097 "parser.mly"
  ( (Globals.string_id#register_name _2 !Globals.current_role)::_5 )
# 2569 "parser.ml"
               : 'Variables_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Subtype_ofin
    Obj.repr(
# 1110 "parser.mly"
  ( _1 )
# 2576 "parser.ml"
               : 'Type_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Type_ofin
    Obj.repr(
# 1112 "parser.mly"
  ( match _3 with
      Types.Function(r,lt) -> Types.Function(r,_1::lt)
    | _ -> Types.Function(_3,[_1])
  )
# 2587 "parser.ml"
               : 'Type_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_typein
    Obj.repr(
# 1120 "parser.mly"
  ( Types.Base _1 )
# 2594 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1122 "parser.mly"
  ( _2 )
# 2602 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Subtype_ofin
    Obj.repr(
# 1124 "parser.mly"
  ( Types.Pair(_1,_3) )
# 2610 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'Subtype_ofin
    Obj.repr(
# 1132 "parser.mly"
  ( Types.Set [_1] )
# 2617 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'Subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 4 : 'err08) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'err07) in
    let _7 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_subtype_ofin
    Obj.repr(
# 1134 "parser.mly"
  ( match _7 with
    Base(Public_key)
  | Inv(Base(Public_key)) ->
      Types.Crypt(_2,_7)
  | _ ->
      Types.Scrypt(_2,_7) )
# 2632 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1141 "parser.mly"
  ( Types.Inv(_4) )
# 2641 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1143 "parser.mly"
  ( Types.Hash(_4) )
# 2650 "parser.ml"
               : 'Subtype_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_typein
    Obj.repr(
# 1148 "parser.mly"
  ( Types.Base _1 )
# 2657 "parser.ml"
               : 'Bracketed_subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1150 "parser.mly"
  ( Types.Inv(_4) )
# 2666 "parser.ml"
               : 'Bracketed_subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1152 "parser.mly"
  ( _2 )
# 2674 "parser.ml"
               : 'Bracketed_subtype_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Constants_listin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err10) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_type_ofin
    Obj.repr(
# 1157 "parser.mly"
  ( List.iter
      (fun cst ->
         if (Globals.type_table#register_type cst _4) <> _4 then
           let error_string =
             ("constant "^(Globals.string_id#get_name cst)^
              " redeclared with incompatible type")
           in
           Semantic_check.add_sem_error
             (16, error_string, line_number(), "","",""))
      _1
  )
# 2693 "parser.ml"
               : 'Constant_declaration))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'err37) in
    let _2 = (Parsing.peek_val __caml_parser_env 1 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'err701) in
    Obj.repr(
# 1172 "parser.mly"
  ( [Globals.string_id#register_name _2 0] )
# 2702 "parser.ml"
               : 'Constants_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err37) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'err701) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_listin
    Obj.repr(
# 1174 "parser.mly"
  ( (Globals.string_id#register_name _2 0)::_5 )
# 2712 "parser.ml"
               : 'Constants_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_subtype_ofin
    Obj.repr(
# 1180 "parser.mly"
  ( _1 )
# 2719 "parser.ml"
               : 'Simple_type_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : 'Simple_subtype_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_type_ofin
    Obj.repr(
# 1182 "parser.mly"
  ( match _3 with
      Types.Function(r,lt) -> Types.Function(r,_1::lt)
    | _ -> Types.Function(_3,[_1])
  )
# 2730 "parser.ml"
               : 'Simple_type_of))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Simple_typein
    Obj.repr(
# 1190 "parser.mly"
  ( Types.Base _1 )
# 2737 "parser.ml"
               : 'Simple_subtype_of))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Simple_type_ofin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1192 "parser.mly"
  ( _2 )
# 2745 "parser.ml"
               : 'Simple_subtype_of))
; (fun __caml_parser_env ->
    Obj.repr(
# 1202 "parser.mly"
  ( Types.Agent )
# 2751 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1204 "parser.mly"
  ( Types.Channel )
# 2757 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    let _3 = (Parsing.peek_val __caml_parser_env 3 : 'err34) in
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1206 "parser.mly"
  ( Types.Channel_dy )
# 2765 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    let _3 = (Parsing.peek_val __caml_parser_env 3 : 'err34) in
    let _5 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1208 "parser.mly"
  ( Types.Channel_ota )
# 2773 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1210 "parser.mly"
  ( Types.Public_key )
# 2779 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1212 "parser.mly"
  ( Types.Symmetric_key )
# 2785 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1214 "parser.mly"
  ( Types.Text )
# 2791 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1216 "parser.mly"
  ( Types.Message )
# 2797 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1218 "parser.mly"
  ( Types.Protocol_id )
# 2803 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1220 "parser.mly"
  ( Types.Nat )
# 2809 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1222 "parser.mly"
  ( Types.Bool )
# 2815 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    Obj.repr(
# 1224 "parser.mly"
  ( Types.Hash_func )
# 2821 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 2 : 'Constants_or_nat_listin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err08) in
    Obj.repr(
# 1226 "parser.mly"
  ( Types.Enum _2 )
# 2829 "parser.ml"
               : 'Simple_type))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1231 "parser.mly"
  ( [Globals.string_id#register_name _1 0] )
# 2836 "parser.ml"
               : 'Constants_or_nat_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1233 "parser.mly"
  ( let name = Globals.string_id#register_name  _1 0 in
    ignore (Globals.type_table#register_type name (Types.Base Types.Nat));
    [name] )
# 2845 "parser.ml"
               : 'Constants_or_nat_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_or_nat_listin
    Obj.repr(
# 1237 "parser.mly"
  ( (Globals.string_id#register_name _1 0)::_3 )
# 2853 "parser.ml"
               : 'Constants_or_nat_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
    let _3 = (Parsing.peek_val __caml_parser_env 0 : 'Constants_or_nat_listin
    Obj.repr(
# 1239 "parser.mly"
  ( let name = Globals.string_id#register_name  _1 0 in
    ignore (Globals.type_table#register_type name (Types.Base Types.Nat));
    name::_3 )
# 2863 "parser.ml"
               : 'Constants_or_nat_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1247 "parser.mly"
  ( Types.Equal(_1,_5) )
# 2873 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err313) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1249 "parser.mly"
  ( Types.Leq(_1,_5) )
# 2883 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Stutter_expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1251 "parser.mly"
  ( Types.In(_5,_8) )
# 2895 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Non_stutter_expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1253 "parser.mly"
  ( Types.In(_5,_8) )
# 2907 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err314) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1255 "parser.mly"
  ( Types.Not(Types.Equal(_1,_5)) )
# 2917 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_formulain
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1261 "parser.mly"
  ( _3 )
# 2926 "parser.ml"
               : 'Stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1266 "parser.mly"
  ( Types.Equal(_1,_5) )
# 2936 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1268 "parser.mly"
  ( Types.Equal(_1,_5) )
# 2946 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err312) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1270 "parser.mly"
  ( Types.Equal(_1,_5) )
# 2956 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err313) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1272 "parser.mly"
  ( Types.Leq(_1,_5) )
# 2966 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err313) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1274 "parser.mly"
  ( Types.Leq(_1,_5) )
# 2976 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err313) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1276 "parser.mly"
  ( Types.Leq(_1,_5) )
# 2986 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Non_stutter_expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1278 "parser.mly"
  ( Types.In(_5,_8) )
# 2998 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Stutter_expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1280 "parser.mly"
  ( Types.In(_5,_8) )
# 3010 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err314) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1282 "parser.mly"
  ( Types.Not(Types.Equal(_1,_5)) )
# 3020 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err314) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1284 "parser.mly"
  ( Types.Not(Types.Equal(_1,_5)) )
# 3030 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'Non_stutter_expressionin
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err241) in
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err314) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1286 "parser.mly"
  ( Types.Not(Types.Equal(_1,_5)) )
# 3040 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_formulain
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1292 "parser.mly"
  ( _3 )
# 3049 "parser.ml"
               : 'Non_stutter_formula))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1298 "parser.mly"
  ( [_2] )
# 3057 "parser.ml"
               : 'Stutter_expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err311) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressions_listin
    Obj.repr(
# 1300 "parser.mly"
  ( _2::_5 )
# 3067 "parser.ml"
               : 'Stutter_expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1305 "parser.mly"
  ( [_2] )
# 3075 "parser.ml"
               : 'Non_stutter_expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'Non_stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err311) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Expressions_listin
    Obj.repr(
# 1307 "parser.mly"
  ( _2::_5 )
# 3085 "parser.ml"
               : 'Non_stutter_expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err311) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressions_listin
    Obj.repr(
# 1309 "parser.mly"
  ( _2::_5 )
# 3095 "parser.ml"
               : 'Non_stutter_expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 1 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 0 : 'Expressionin
    Obj.repr(
# 1314 "parser.mly"
  ( [_2] )
# 3103 "parser.ml"
               : 'Expressions_list))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 4 : 'err27) in
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'Expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err311) in
    let _5 = (Parsing.peek_val __caml_parser_env 0 : 'Expressions_listin
    Obj.repr(
# 1316 "parser.mly"
  ( _2::_5 )
# 3113 "parser.ml"
               : 'Expressions_list))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1322 "parser.mly"
  ( _3 )
# 3122 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1324 "parser.mly"
  ( Types.Inv _5 )
# 3132 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err317) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1326 "parser.mly"
  ( Types.Pair(_1,_4) )
# 3141 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1347 "parser.mly"
  ( Types.Function(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),_5) )
# 3152 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1349 "parser.mly"
  ( Types.Function(Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 3163 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Variable_or_constant_or_natin
    Obj.repr(
# 1351 "parser.mly"
  ( _1 )
# 3170 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err08) in
    Obj.repr(
# 1353 "parser.mly"
  (
(*prerr_string "; Interface.prerr_term (Types.Set([])); prerr_newline();
     Types.Set([]) *)

   let xid = Globals.string_id#register_blind_var "Set" !Globals.current_role in
   newSetsInfo := !newSetsInfo@[(xid,[])];
   Types.Base(Types.Var(xid)) )
# 3182 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err316) in
    let _3 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'err08) in
    let _6 = (Parsing.peek_val __caml_parser_env 0 : 'err07) in
    Obj.repr(
# 1360 "parser.mly"
  (
(*prerr_string "; Interface.prerr_term (Types.Set($3)); prerr_newline();
   Types.Set($3) *)

   let xid = Globals.string_id#register_blind_var "Set" !Globals.current_role in
   newSetsInfo := !newSetsInfo@[(xid,_3)];
   Types.Base(Types.Var(xid)) )
# 3197 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err316) in
    let _3 = (Parsing.peek_val __caml_parser_env 6 : 'Stutter_expressions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err08) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err07) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err315) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_stutter_expressionin
    Obj.repr(
# 1367 "parser.mly"
  ( match _3 with
      [e] ->
        (match _9 with
          Types.Inv _ ->
             Types.Crypt(e,_9)
        | Types.Base (Types.Var i | Types.Const i) ->
            (try
              let t =
                (try
                  Globals.type_table#get_type i
                with Not_found ->
                  if !Globals.current_role = 0 then
                    Globals.get_any_type_of i
                  else
                    raise Not_found)
              in
              match t with
                Base(Public_key)
              | Inv(Base(Public_key)) ->
                  Types.Crypt(e,_9)
              | _ ->
                  Types.Scrypt(e,_9)
            with Not_found ->
              (Semantic_check.add_sem_error
                 (16,
                  ("cannot infer type of variable/constant "^(Globals.string_id#get_name i)),
                  line_number (),"","","");
               Types.Scrypt(e,_9)))
(*TODO: The key may be the result of a function call
   Rmk: this can be avoided by writing:  K'=F(A) and {...}K' *)

        | _ -> Types.Scrypt(e,_9))
    | _ ->
        Error_handler.errorNumber := 901;
        raise Parsing.Parse_error
  )
# 3243 "parser.ml"
               : 'Stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1406 "parser.mly"
  ( _3 )
# 3252 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err23) in
    Obj.repr(
# 1408 "parser.mly"
  ( Types.Prime (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)) )
# 3260 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1410 "parser.mly"
  ( Types.Inv _5 )
# 3270 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Non_stutter_expressionin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err317) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1412 "parser.mly"
  ( Types.Pair(_1,_4) )
# 3279 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Stutter_expressionin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err317) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1414 "parser.mly"
  ( Types.Pair(_1,_4) )
# 3288 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 3 : 'Non_stutter_expressionin
    let _3 = (Parsing.peek_val __caml_parser_env 1 : 'err317) in
    let _4 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1416 "parser.mly"
  ( Types.Pair(_1,_4) )
# 3297 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1425 "parser.mly"
  ( Types.Function(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),_5) )
# 3308 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1427 "parser.mly"
  ( Types.Function(Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 3319 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1429 "parser.mly"
  ( Types.Cons(_5,_8) )
# 3331 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 8 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 6 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 5 : 'Expressionin
    let _7 = (Parsing.peek_val __caml_parser_env 3 : 'err311) in
    let _8 = (Parsing.peek_val __caml_parser_env 2 : 'Expressionin
    let _9 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1431 "parser.mly"
  ( Types.Delete(_5,_8) )
# 3343 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 4 : 'err316) in
    let _3 = (Parsing.peek_val __caml_parser_env 3 : 'Non_stutter_expressions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 2 : 'err08) in
    let _6 = (Parsing.peek_val __caml_parser_env 0 : 'err07) in
    Obj.repr(
# 1433 "parser.mly"
  ( 
(*prerr_string "; Interface.prerr_term (Types.Set($3)); prerr_newline();
    Types.Set($3)  *)

   let xid = Globals.string_id#register_blind_var "Set" !Globals.current_role in
   newSetsInfo := !newSetsInfo@[(xid,_3)];
   Types.Base(Types.Var(xid)) )
# 3358 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err316) in
    let _3 = (Parsing.peek_val __caml_parser_env 6 : 'Non_stutter_expressions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err08) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err07) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err315) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_expressionin
    Obj.repr(
# 1440 "parser.mly"
  ( match _3 with
      [e] ->
        (match _9 with
          Types.Inv _ ->
             Types.Crypt(e,_9)
        | Types.Base (Types.Var i | Types.Const i)    
        | Types.Prime (Types.Var i | Types.Const i)  ->
            (try
              match (Globals.type_table#get_type i) with
                Base(Public_key)
              | Inv(Base(Public_key)) ->
                  Types.Crypt(e,_9)
              | _ ->
                  Types.Scrypt(e,_9)
            with Not_found ->
              (Semantic_check.add_sem_error
                 (16,
                  ("cannot infer type of variable/constant "^(Globals.string_id#get_name i)),
                  line_number (),"","","");
               Types.Scrypt(e,_9)))
(*TODO: The key may be the result of a function call
   Rmk: this can be avoided by writing:  K'=F(A) and {...}K' *)

        | _ -> Types.Scrypt(e,_9))
    | _ ->
        Error_handler.errorNumber := 901;
        raise Parsing.Parse_error
  )
# 3396 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 7 : 'err316) in
    let _3 = (Parsing.peek_val __caml_parser_env 6 : 'Stutter_expressions_listin
    let _4 = (Parsing.peek_val __caml_parser_env 5 : 'err08) in
    let _6 = (Parsing.peek_val __caml_parser_env 3 : 'err07) in
    let _8 = (Parsing.peek_val __caml_parser_env 1 : 'err315) in
    let _9 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_non_stutter_expressionin
    Obj.repr(
# 1468 "parser.mly"
  ( match _3 with
      [e] ->
        (match _9 with
          Types.Inv _ ->
             Types.Crypt(e,_9)
        | Types.Base (Types.Var i | Types.Const i)    
        | Types.Prime (Types.Var i | Types.Const i)  ->
            (try
              match (Globals.type_table#get_type i) with
                Base(Public_key)
              | Inv(Base(Public_key)) ->
                  Types.Crypt(e,_9)
              | _ ->
                  Types.Scrypt(e,_9)
            with Not_found ->
              (Semantic_check.add_sem_error
                 (16,
                  ("cannot infer type of variable/constant "^(Globals.string_id#get_name i)),
                  line_number (),"","","");
               Types.Scrypt(e,_9)))
(*TODO: The key may be the result of a function call
   Rmk: this can be avoided by writing:  K'=F(A) and {...}K' *)

        | _ -> Types.Scrypt(e,_9))
    | _ ->
        Error_handler.errorNumber := 901;
        raise Parsing.Parse_error
  )
# 3434 "parser.ml"
               : 'Non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Stutter_expressionin
    Obj.repr(
# 1499 "parser.mly"
  ( _1 )
# 3441 "parser.ml"
               : 'Expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Non_stutter_expressionin
    Obj.repr(
# 1501 "parser.mly"
  ( _1 )
# 3448 "parser.ml"
               : 'Expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1506 "parser.mly"
  ( Types.Inv _5 )
# 3458 "parser.ml"
               : 'Bracketed_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1508 "parser.mly"
  ( Types.Function(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),_5) )
# 3469 "parser.ml"
               : 'Bracketed_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1510 "parser.mly"
  ( Types.Function(Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 3480 "parser.ml"
               : 'Bracketed_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Variable_or_constant_or_natin
    Obj.repr(
# 1512 "parser.mly"
  ( _1 )
# 3487 "parser.ml"
               : 'Bracketed_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1514 "parser.mly"
  ( _3 )
# 3496 "parser.ml"
               : 'Bracketed_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 1 : 'err23) in
    Obj.repr(
# 1519 "parser.mly"
  ( Types.Prime 
      (Types.Var 
         (Globals.string_id#register_name _1 !Globals.current_role))
  )
# 3507 "parser.ml"
               : 'Bracketed_non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1524 "parser.mly"
  ( Types.Inv _5 )
# 3517 "parser.ml"
               : 'Bracketed_non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1526 "parser.mly"
  ( Types.Function(Types.Base (Types.Const (Globals.string_id#register_name _1 0)),_5) )
# 3528 "parser.ml"
               : 'Bracketed_non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 6 : string) in
    let _2 = (Parsing.peek_val __caml_parser_env 5 : 'err04) in
    let _4 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _5 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressions_listin
    let _6 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1528 "parser.mly"
  ( Types.Function(Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)),_5) )
# 3539 "parser.ml"
               : 'Bracketed_non_stutter_expression))
; (fun __caml_parser_env ->
    let _2 = (Parsing.peek_val __caml_parser_env 3 : 'err31) in
    let _3 = (Parsing.peek_val __caml_parser_env 2 : 'Non_stutter_expressionin
    let _4 = (Parsing.peek_val __caml_parser_env 1 : 'err11) in
    Obj.repr(
# 1530 "parser.mly"
  ( _3 )
# 3548 "parser.ml"
               : 'Bracketed_non_stutter_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_stutter_expressionin
    Obj.repr(
# 1535 "parser.mly"
  ( _1 )
# 3555 "parser.ml"
               : 'Bracketed_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : 'Bracketed_non_stutter_expressionin
    Obj.repr(
# 1537 "parser.mly"
  ( _1 )
# 3562 "parser.ml"
               : 'Bracketed_expression))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1543 "parser.mly"
  ( Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)) )
# 3569 "parser.ml"
               : 'Variable_or_constant))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1545 "parser.mly"
  ( Types.Base (Types.Const (Globals.string_id#register_name _1 0)) )
# 3576 "parser.ml"
               : 'Variable_or_constant))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1550 "parser.mly"
  ( Types.Base (Types.Var (Globals.string_id#register_name _1 !Globals.current_role)) )
# 3583 "parser.ml"
               : 'Variable_or_constant_or_nat))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1552 "parser.mly"
  ( let name = Globals.string_id#register_name _1 0 in
    (try ignore (Globals.type_table#get_type name)
    with _ -> ());
    Types.Base (Types.Const name) )
# 3593 "parser.ml"
               : 'Variable_or_constant_or_nat))
; (fun __caml_parser_env ->
    let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
    Obj.repr(
# 1557 "parser.mly"
  ( let name = Globals.string_id#register_name _1 0 in
    ignore (Globals.type_table#register_type name (Types.Base Types.Nat));
    Types.Base (Types.Const name)
  )
# 3603 "parser.ml"
               : 'Variable_or_constant_or_nat))
; (fun __caml_parser_env ->
    Obj.repr(
# 1565 "parser.mly"
  ( Error_handler.errorNumber := 1 )
# 3609 "parser.ml"
               : 'err01))
; (fun __caml_parser_env ->
    Obj.repr(
# 1569 "parser.mly"
  ( Error_handler.errorNumber := 2 )
# 3615 "parser.ml"
               : 'err02))
; (fun __caml_parser_env ->
    Obj.repr(
# 1573 "parser.mly"
  ( Error_handler.errorNumber := 201 )
# 3621 "parser.ml"
               : 'err201))
; (fun __caml_parser_env ->
    Obj.repr(
# 1577 "parser.mly"
  ( Error_handler.errorNumber := 3 )
# 3627 "parser.ml"
               : 'err03))
; (fun __caml_parser_env ->
    Obj.repr(
# 1581 "parser.mly"
  ( Error_handler.errorNumber := 4 )
# 3633 "parser.ml"
               : 'err04))
; (fun __caml_parser_env ->
    Obj.repr(
# 1585 "parser.mly"
  ( Error_handler.errorNumber := 5 )
# 3639 "parser.ml"
               : 'err05))
; (fun __caml_parser_env ->
    Obj.repr(
# 1589 "parser.mly"
  ( Error_handler.errorNumber := 6 )
# 3645 "parser.ml"
               : 'err06))
; (fun __caml_parser_env ->
    Obj.repr(
# 1593 "parser.mly"
  ( Error_handler.errorNumber := 7 )
# 3651 "parser.ml"
               : 'err07))
; (fun __caml_parser_env ->
    Obj.repr(
# 1597 "parser.mly"
  ( Error_handler.errorNumber := 701 )
# 3657 "parser.ml"
               : 'err701))
; (fun __caml_parser_env ->
    Obj.repr(
# 1601 "parser.mly"
  ( Error_handler.errorNumber := 702 )
# 3663 "parser.ml"
               : 'err702))
; (fun __caml_parser_env ->
    Obj.repr(
# 1605 "parser.mly"
  ( Error_handler.errorNumber := 8 )
# 3669 "parser.ml"
               : 'err08))
; (fun __caml_parser_env ->
    Obj.repr(
# 1609 "parser.mly"
  ( Error_handler.errorNumber := 9 )
# 3675 "parser.ml"
               : 'err09))
; (fun __caml_parser_env ->
    Obj.repr(
# 1613 "parser.mly"
  ( Error_handler.errorNumber := 10 )
# 3681 "parser.ml"
               : 'err10))
; (fun __caml_parser_env ->
    Obj.repr(
# 1617 "parser.mly"
  ( Error_handler.errorNumber := 11 )
# 3687 "parser.ml"
               : 'err11))
; (fun __caml_parser_env ->
    Obj.repr(
# 1621 "parser.mly"
  ( Error_handler.errorNumber := 12 )
# 3693 "parser.ml"
               : 'err12))
; (fun __caml_parser_env ->
    Obj.repr(
# 1625 "parser.mly"
  ( Error_handler.errorNumber := 13 )
# 3699 "parser.ml"
               : 'err13))
; (fun __caml_parser_env ->
    Obj.repr(
# 1629 "parser.mly"
  ( Error_handler.errorNumber := 14 )
# 3705 "parser.ml"
               : 'err14))
; (fun __caml_parser_env ->
    Obj.repr(
# 1633 "parser.mly"
  ( Error_handler.errorNumber := 15 )
# 3711 "parser.ml"
               : 'err15))
; (fun __caml_parser_env ->
    Obj.repr(
# 1637 "parser.mly"
  ( Error_handler.errorNumber := 16 )
# 3717 "parser.ml"
               : 'err16))
; (fun __caml_parser_env ->
    Obj.repr(
# 1641 "parser.mly"
  ( Error_handler.errorNumber := 161 )
# 3723 "parser.ml"
               : 'err161))
; (fun __caml_parser_env ->
    Obj.repr(
# 1645 "parser.mly"
  ( Error_handler.errorNumber := 18 )
# 3729 "parser.ml"
               : 'err18))
; (fun __caml_parser_env ->
    Obj.repr(
# 1649 "parser.mly"
  ( Error_handler.errorNumber := 19 )
# 3735 "parser.ml"
               : 'err19))
; (fun __caml_parser_env ->
    Obj.repr(
# 1653 "parser.mly"
  ( Error_handler.errorNumber := 202 )
# 3741 "parser.ml"
               : 'err202))
; (fun __caml_parser_env ->
    Obj.repr(
# 1657 "parser.mly"
  ( Error_handler.errorNumber := 21 )
# 3747 "parser.ml"
               : 'err21))
; (fun __caml_parser_env ->
    Obj.repr(
# 1661 "parser.mly"
  ( Error_handler.errorNumber := 22 )
# 3753 "parser.ml"
               : 'err22))
; (fun __caml_parser_env ->
    Obj.repr(
# 1665 "parser.mly"
  ( Error_handler.errorNumber := 23 )
# 3759 "parser.ml"
               : 'err23))
; (fun __caml_parser_env ->
    Obj.repr(
# 1669 "parser.mly"
  ( Error_handler.errorNumber := 241 )
# 3765 "parser.ml"
               : 'err241))
; (fun __caml_parser_env ->
    Obj.repr(
# 1672 "parser.mly"
  ( Error_handler.errorNumber := 242 )
# 3771 "parser.ml"
               : 'err242))
; (fun __caml_parser_env ->
    Obj.repr(
# 1675 "parser.mly"
  ( Error_handler.errorNumber := 243 )
# 3777 "parser.ml"
               : 'err243))
; (fun __caml_parser_env ->
    Obj.repr(
# 1683 "parser.mly"
  ( Error_handler.errorNumber := 27 )
# 3783 "parser.ml"
               : 'err27))
; (fun __caml_parser_env ->
    Obj.repr(
# 1687 "parser.mly"
  ( Error_handler.errorNumber := 28 )
# 3789 "parser.ml"
               : 'err28))
; (fun __caml_parser_env ->
    Obj.repr(
# 1691 "parser.mly"
  ( Error_handler.errorNumber := 29 )
# 3795 "parser.ml"
               : 'err29))
; (fun __caml_parser_env ->
    Obj.repr(
# 1695 "parser.mly"
  ( Error_handler.errorNumber := 30 )
# 3801 "parser.ml"
               : 'err30))
; (fun __caml_parser_env ->
    Obj.repr(
# 1699 "parser.mly"
  ( Error_handler.errorNumber := 31 )
# 3807 "parser.ml"
               : 'err31))
; (fun __caml_parser_env ->
    Obj.repr(
# 1703 "parser.mly"
  ( Error_handler.errorNumber := 311 )
# 3813 "parser.ml"
               : 'err311))
; (fun __caml_parser_env ->
    Obj.repr(
# 1707 "parser.mly"
  ( Error_handler.errorNumber := 312 )
# 3819 "parser.ml"
               : 'err312))
; (fun __caml_parser_env ->
    Obj.repr(
# 1711 "parser.mly"
  ( Error_handler.errorNumber := 313 )
# 3825 "parser.ml"
               : 'err313))
; (fun __caml_parser_env ->
    Obj.repr(
# 1715 "parser.mly"
  ( Error_handler.errorNumber := 314 )
# 3831 "parser.ml"
               : 'err314))
; (fun __caml_parser_env ->
    Obj.repr(
# 1719 "parser.mly"
  ( Error_handler.errorNumber := 315 )
# 3837 "parser.ml"
               : 'err315))
; (fun __caml_parser_env ->
    Obj.repr(
# 1723 "parser.mly"
  ( Error_handler.errorNumber := 316 )
# 3843 "parser.ml"
               : 'err316))
; (fun __caml_parser_env ->
    Obj.repr(
# 1727 "parser.mly"
  ( Error_handler.errorNumber := 317 )
# 3849 "parser.ml"
               : 'err317))
; (fun __caml_parser_env ->
    Obj.repr(
# 1731 "parser.mly"
  ( Error_handler.errorNumber := 32 )
# 3855 "parser.ml"
               : 'err32))
; (fun __caml_parser_env ->
    Obj.repr(
# 1735 "parser.mly"
  ( Error_handler.errorNumber := 33 )
# 3861 "parser.ml"
               : 'err33))
; (fun __caml_parser_env ->
    Obj.repr(
# 1739 "parser.mly"
  ( Error_handler.errorNumber := 34 )
# 3867 "parser.ml"
               : 'err34))
; (fun __caml_parser_env ->
    Obj.repr(
# 1743 "parser.mly"
  ( Error_handler.errorNumber := 35 )
# 3873 "parser.ml"
               : 'err35))
; (fun __caml_parser_env ->
    Obj.repr(
# 1747 "parser.mly"
  ( Error_handler.errorNumber := 351 )
# 3879 "parser.ml"
               : 'err351))
; (fun __caml_parser_env ->
    Obj.repr(
# 1751 "parser.mly"
  ( Error_handler.errorNumber := 352 )
# 3885 "parser.ml"
               : 'err352))
; (fun __caml_parser_env ->
    Obj.repr(
# 1755 "parser.mly"
  ( Error_handler.errorNumber := 36 )
# 3891 "parser.ml"
               : 'err36))
; (fun __caml_parser_env ->
    Obj.repr(
# 1759 "parser.mly"
  ( Error_handler.errorNumber := 37 )
# 3897 "parser.ml"
               : 'err37))
; (fun __caml_parser_env ->
    Obj.repr(
# 1763 "parser.mly"
  ( Error_handler.errorNumber := 38 )
# 3903 "parser.ml"
               : 'err38))
(* Entry specification *)
; (fun __caml_parser_env -> raise (Parsing.YYexit (Parsing.peek_val __caml_parser_env 0)))
|]