Release coccinelle-0.2.4rc1
authorCoccinelle <cocci@diku.dk>
Sun, 3 Oct 2010 12:04:24 +0000 (14:04 +0200)
committerRene Rydhof Hansen <rrh@cs.aau.dk>
Sun, 3 Oct 2010 12:04:24 +0000 (14:04 +0200)
Release Candidate 1 for coccinelle-0.2.4

99 files changed:
Makefile
Makefile.dev
changes.txt
cocci.ml
commitmsg
demos/camltococci.c [new file with mode: 0644]
demos/camltococci.cocci [new file with mode: 0644]
demos/camltococci.res [new file with mode: 0644]
demos/pythontococci.c [new file with mode: 0644]
demos/pythontococci.cocci [new file with mode: 0644]
demos/pythontococci.res [new file with mode: 0644]
docs/manual/cocci_syntax.tex
docs/manual/main_grammar.pdf
docs/manual/manual.pdf
docs/manual/options.pdf
docs/manual/spatch_options.tex
engine/asttoctl2.ml
engine/check_exhaustive_pattern.ml
engine/cocci_vs_c.ml
engine/cocci_vs_c.mli
engine/pattern_c.ml
engine/pretty_print_engine.ml
engine/transformation_c.ml
globals/config.ml.in
main.ml
ocaml/coccilib.ml
ocaml/coccilib.mli
ocaml/ocamlcocci_aux.ml
ocaml/run_ocamlcocci.ml
ocaml/yes_prepare_ocamlcocci.ml
parsing_c/ast_c.ml
parsing_c/lib_parsing_c.ml
parsing_c/pretty_print_c.ml
parsing_c/pretty_print_c.mli
parsing_c/sexp_ast_c.ml
parsing_c/test_parsing_c.ml
parsing_c/unparse_c.ml
parsing_c/unparse_cocci.ml
parsing_c/unparse_hrule.ml
parsing_c/visitor_c.ml
parsing_c/visitor_c.mli
parsing_cocci/adjust_pragmas.ml
parsing_cocci/arity.ml
parsing_cocci/ast0_cocci.ml
parsing_cocci/ast0_cocci.mli
parsing_cocci/ast0toast.ml
parsing_cocci/ast_cocci.ml
parsing_cocci/ast_cocci.mli
parsing_cocci/check_meta.ml
parsing_cocci/compute_lines.ml
parsing_cocci/context_neg.ml
parsing_cocci/data.ml
parsing_cocci/data.mli
parsing_cocci/disjdistr.ml
parsing_cocci/flag_parsing_cocci.ml
parsing_cocci/free_vars.ml
parsing_cocci/get_constants.ml
parsing_cocci/get_constants2.ml
parsing_cocci/index.ml
parsing_cocci/iso_pattern.ml
parsing_cocci/lexer_cocci.mll
parsing_cocci/parse_aux.ml
parsing_cocci/parse_cocci.ml
parsing_cocci/parser_cocci_menhir.ml
parsing_cocci/parser_cocci_menhir.mli
parsing_cocci/parser_cocci_menhir.mly
parsing_cocci/pretty_print_cocci.ml
parsing_cocci/pretty_print_cocci.mli
parsing_cocci/single_statement.ml
parsing_cocci/type_infer.ml
parsing_cocci/unify_ast.ml
parsing_cocci/unitary_ast0.ml
parsing_cocci/unparse_ast0.ml
parsing_cocci/visitor_ast.ml
parsing_cocci/visitor_ast0.ml
pycaml/pycaml.ml
pycaml/pycaml_ml.c
python/Makefile
python/Makefile.orig [new file with mode: 0644]
python/coccilib/__init__.pyc [deleted file]
python/coccilib/elems.pyc [deleted file]
python/coccilib/org.pyc [deleted file]
python/coccilib/output.pyc [deleted file]
python/coccilib/report.pyc [deleted file]
python/no_pycocci.ml
python/yes_pycocci.ml
python/yes_pycocci_aux.ml
test.ml
testing.ml
tests/camltococci.c [new file with mode: 0644]
tests/camltococci.cocci [new file with mode: 0644]
tests/camltococci.res [new file with mode: 0644]
tests/pythontococci.c [new file with mode: 0644]
tests/pythontococci.cocci [new file with mode: 0644]
tests/pythontococci.res [new file with mode: 0644]
tools/Makefile
tools/bridge.ml
tools/dumper.ml [new file with mode: 0644]
tools/dumper.mli [new file with mode: 0644]

index 0997e05..eae58c8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -316,10 +316,14 @@ install-common:
        mkdir -p $(DESTDIR)$(BINDIR)
        mkdir -p $(DESTDIR)$(LIBDIR)
        mkdir -p $(DESTDIR)$(SHAREDIR)/ocaml
+       mkdir -p $(DESTDIR)$(SHAREDIR)/commons
+       mkdir -p $(DESTDIR)$(SHAREDIR)/parsing_c
        mkdir -p $(DESTDIR)$(MANDIR)/man1
        $(INSTALL_DATA) standard.h $(DESTDIR)$(SHAREDIR)
        $(INSTALL_DATA) standard.iso $(DESTDIR)$(SHAREDIR)
        $(INSTALL_DATA) ocaml/coccilib.cmi $(DESTDIR)$(SHAREDIR)/ocaml/
+       $(INSTALL_DATA) parsing_c/*.cmi $(DESTDIR)$(SHAREDIR)/parsing_c/
+       $(INSTALL_DATA) commons/*.cmi $(DESTDIR)$(SHAREDIR)/commons/
        $(INSTALL_DATA) docs/spatch.1 $(DESTDIR)$(MANDIR)/man1/
        @if [ $(FEATURE_PYTHON) -eq 1 ]; then $(MAKE) install-python; fi
 
@@ -380,6 +384,8 @@ uninstall:
        rm -f $(DESTDIR)$(SHAREDIR)/standard.h
        rm -f $(DESTDIR)$(SHAREDIR)/standard.iso
        rm -f $(DESTDIR)$(SHAREDIR)/ocaml/coccilib.cmi
+       rm -f $(DESTDIR)$(SHAREDIR)/parsing_c/*.cmi
+       rm -f $(DESTDIR)$(SHAREDIR)/commons*.cmi
        rm -f $(DESTDIR)$(SHAREDIR)/python/coccilib/coccigui/*
        rm -f $(DESTDIR)$(SHAREDIR)/python/coccilib/*.py
        rmdir --ignore-fail-on-non-empty -p \
index 7b24e2a..df9c4a4 100644 (file)
@@ -67,18 +67,19 @@ ubuntu:
 
 #$(UBUNTURELEASE):
 #      debchange -c debian/changelog.karmic -D karmic -v $(VERSION)~$(@:ubuntu-%=%)~npalix1 "New release $(VERSION)"
+IDX?=1
 
 ubuntu-karmic:
-       debchange -c debian/changelog.karmic -D karmic -v $(VERSION)~910npalix1 "New release $(VERSION)"
+       debchange -c debian/changelog.karmic -D karmic -v $(VERSION)~910npalix$(IDX) "New release $(VERSION)"
 
 ubuntu-lucid:
-       debchange -c debian/changelog.lucid -D lucid -v $(VERSION)~1004npalix1 "New release $(VERSION)"
+       debchange -c debian/changelog.lucid -D lucid -v $(VERSION)~1004npalix$(IDX) "New release $(VERSION)"
 
 ubuntu-maverik:
        if [ ! -f debian/changelog.$(@:ubuntu-%=%) ] ; then \
                debchange --create -c debian/changelog.$(@:ubuntu-%=%) -D UNRELEASED \
-                       -v $(VERSION)~npalix1 "New release $(VERSION)" --package $(PRJNAME) ; \
+                       -v $(VERSION)~npalix$(IDX) "New release $(VERSION)" --package $(PRJNAME) ; \
        else \
-               debchange -c debian/changelog.$(@:ubuntu-%=%) -D UNRELEASED -v $(VERSION)~npalix1 "New release $(VERSION)" ; \
+               debchange -c debian/changelog.$(@:ubuntu-%=%) -D UNRELEASED -v $(VERSION)~npalix$(IDX) "New release $(VERSION)" ; \
        fi
 
index b360c4d..8d3852e 100644 (file)
 - Add more information in documentation, man pages and wiki
 
 
+* 0.2.4
+** Language:
+- scripts now have names and can declare metavariables that are seen by
+  SmPL as identifier metavariables, see demos/{python,ocaml}tococci.cocci
+- declaration (match variable declarations) and field (match structure
+  field declarations) metavariables
+
+** Features:
+- compatability with Python 2.7.  Thanks to Richard W.M. Jones for pointing
+  out the problem
+- python and ocaml string representations of parameter lists and expression
+  lists
+- try simpler patterns on glimpse failure
+
+** Bugfix:
+- detect used after metavariables in simple statement metavariable match
+
 * 0.2.3
 ** Language:
 - <= constraints relating an expression metavariable to one or more
index 2f505e4..8073594 100644 (file)
--- a/cocci.ml
+++ b/cocci.ml
@@ -764,17 +764,24 @@ type toplevel_c_info = {
   (* id: int *)
 }
 
+type rule_info = {
+  rulename: string;
+  dependencies: Ast_cocci.dependency;
+  used_after: Ast_cocci.meta_name list;
+  ruleid: int;
+  was_matched: bool ref;
+} 
+
 type toplevel_cocci_info_script_rule = {
-  scr_rulename: string;
   scr_ast_rule:
       string *
       (Ast_cocci.script_meta_name * Ast_cocci.meta_name *
         Ast_cocci.metavar) list *
+      Ast_cocci.meta_name list (*fresh vars*) *
       string;
   language: string;
-  scr_dependencies: Ast_cocci.dependency;
-  scr_ruleid: int;
   script_code: string;
+  scr_rule_info: rule_info;
 }
 
 type toplevel_cocci_info_cocci_rule = {
@@ -783,21 +790,17 @@ type toplevel_cocci_info_cocci_rule = {
   ast_rule: Ast_cocci.rule;
   isexp: bool; (* true if + code is an exp, only for Flag.make_hrule *)
 
-  rulename: string;
-  dependencies: Ast_cocci.dependency;
   (* There are also some hardcoded rule names in parse_cocci.ml:
    *  let reserved_names = ["all";"optional_storage";"optional_qualifier"]
    *)
   dropped_isos: string list;
   free_vars:  Ast_cocci.meta_name list;
   negated_pos_vars:  Ast_cocci.meta_name list;
-  used_after: Ast_cocci.meta_name list;
   positions: Ast_cocci.meta_name list;
 
-  ruleid: int;
   ruletype: Ast_cocci.ruletype;
 
-  was_matched: bool ref;
+  rule_info: rule_info;
 }
 
 type toplevel_cocci_info =
@@ -865,15 +868,13 @@ let python_code =
     local_python_code ^
     "cocci = Cocci()\n"
 
-let make_init name rulenb lang deps code =
+let make_init lang code rule_info =
   let mv = [] in
   {
-  scr_rulename = name;
-  scr_ast_rule = (lang, mv, code);
+  scr_ast_rule = (lang, mv, [], code);
   language = lang;
-  scr_dependencies = deps;
-  scr_ruleid = rulenb;
-  script_code = (if lang = "python" then python_code else "") ^code
+  script_code = (if lang = "python" then python_code else "") ^code;
+  scr_rule_info = rule_info;
 }
 
 (* --------------------------------------------------------------------- *)
@@ -889,6 +890,13 @@ let prepare_cocci ctls free_var_lists negated_pos_lists
     (fun (((((((((ctl_toplevel_list,metavars),ast),free_var_list),
             negated_pos_list),ua),fua),fuas),positions_list),rulenb) ->
 
+      let build_rule_info rulename deps =
+       {rulename = rulename;
+         dependencies = deps;
+         used_after = (List.hd ua) @ (List.hd fua);
+         ruleid = rulenb;
+         was_matched = ref false;} in
+
       let is_script_rule r =
         match r with
          Ast_cocci.ScriptRule _
@@ -899,54 +907,45 @@ let prepare_cocci ctls free_var_lists negated_pos_lists
       then failwith "not handling multiple minirules";
 
       match ast with
-        Ast_cocci.ScriptRule (name,lang,deps,mv,code) ->
+        Ast_cocci.ScriptRule (name,lang,deps,mv,script_vars,code) ->
           let r =
-          {
-           scr_rulename = name;
-            scr_ast_rule = (lang, mv, code);
-            language = lang;
-            scr_dependencies = deps;
-            scr_ruleid = rulenb;
-            script_code = code;
-          }
+            {
+             scr_ast_rule = (lang, mv, script_vars, code);
+              language = lang;
+              script_code = code;
+              scr_rule_info = build_rule_info name deps;
+           }
           in ScriptRuleCocciInfo r
       | Ast_cocci.InitialScriptRule (name,lang,deps,code) ->
-         let r = make_init name rulenb lang deps code in
+         let r = make_init lang code (build_rule_info name deps) in
            InitialScriptRuleCocciInfo r
       | Ast_cocci.FinalScriptRule (name,lang,deps,code) ->
          let mv = [] in
           let r =
-          {
-           scr_rulename = name;
-            scr_ast_rule = (lang, mv, code);
-            language = lang;
-            scr_dependencies = deps;
-            scr_ruleid = rulenb;
-            script_code = code;
-          }
+            {
+              scr_ast_rule = (lang, mv, [], code);
+              language = lang;
+              script_code = code;
+              scr_rule_info = build_rule_info name deps;
+            }
           in FinalScriptRuleCocciInfo r
       | Ast_cocci.CocciRule
          (rulename,(dependencies,dropped_isos,z),restast,isexp,ruletype) ->
-          CocciRuleCocciInfo (
-          {
-            ctl = List.hd ctl_toplevel_list;
-            metavars = metavars;
-            ast_rule = ast;
-           isexp = List.hd isexp;
-            rulename = rulename;
-            dependencies = dependencies;
-            dropped_isos = dropped_isos;
-            free_vars = List.hd free_var_list;
-            negated_pos_vars = List.hd negated_pos_list;
-            used_after = (List.hd ua) @ (List.hd fua);
-            positions = List.hd positions_list;
-            ruleid = rulenb;
-           ruletype = ruletype;
-            was_matched = ref false;
-          })
+            CocciRuleCocciInfo (
+            {
+              ctl = List.hd ctl_toplevel_list;
+              metavars = metavars;
+              ast_rule = ast;
+             isexp = List.hd isexp;
+              dropped_isos = dropped_isos;
+              free_vars = List.hd free_var_list;
+              negated_pos_vars = List.hd negated_pos_list;
+              positions = List.hd positions_list;
+             ruletype = ruletype;
+             rule_info = build_rule_info rulename dependencies;
+            })
     )
 
-
 (* --------------------------------------------------------------------- *)
 
 let build_info_program cprogram env =
@@ -1171,7 +1170,7 @@ let contains_binding e (_,(r,m),_) =
     true
   with Not_found -> false
 
-let python_application mv ve r =
+let python_application mv ve script_vars r =
   let mv =
     List.map
       (function
@@ -1179,40 +1178,47 @@ let python_application mv ve r =
        | _ ->
            failwith
              (Printf.sprintf "unexpected ast metavar in rule %s"
-                r.scr_rulename))
+                r.scr_rule_info.rulename))
       mv in
   try
     Pycocci.build_classes (List.map (function (x,y) -> x) ve);
     Pycocci.construct_variables mv ve;
+    Pycocci.construct_script_variables script_vars;
     let _ = Pycocci.pyrun_simplestring (local_python_code ^r.script_code) in
-    !Pycocci.inc_match
+    if !Pycocci.inc_match
+    then Some (Pycocci.retrieve_script_variables script_vars)
+    else None
   with Pycocci.Pycocciexception ->
-    (pr2 ("Failure in " ^ r.scr_rulename);
+    (pr2 ("Failure in " ^ r.scr_rule_info.rulename);
      raise Pycocci.Pycocciexception)
 
-let ocaml_application mv ve r =
+let ocaml_application mv ve script_vars r =
   try
-    Run_ocamlcocci.run mv ve r.scr_rulename r.script_code;
-    !Coccilib.inc_match
-  with e -> (pr2 ("Failure in " ^ r.scr_rulename); raise e)
+    let script_vals =
+      Run_ocamlcocci.run mv ve script_vars
+       r.scr_rule_info.rulename r.script_code in
+    if !Coccilib.inc_match
+    then Some script_vals
+    else None
+  with e -> (pr2 ("Failure in " ^ r.scr_rule_info.rulename); raise e)
 
 let apply_script_rule r cache newes e rules_that_have_matched
     rules_that_have_ever_matched script_application =
   Common.profile_code r.language (fun () ->
-  show_or_not_scr_rule_name r.scr_ruleid;
+  show_or_not_scr_rule_name r.scr_rule_info.ruleid;
   if not(interpret_dependencies rules_that_have_matched
-          !rules_that_have_ever_matched r.scr_dependencies)
+          !rules_that_have_ever_matched r.scr_rule_info.dependencies)
   then
     begin
       print_dependencies "dependencies for script not satisfied:"
        rules_that_have_matched
-       !rules_that_have_ever_matched r.scr_dependencies;
+       !rules_that_have_ever_matched r.scr_rule_info.dependencies;
       show_or_not_binding "in environment" e;
       (cache, (e, rules_that_have_matched)::newes)
     end
   else
     begin
-      let (_, mv, _) = r.scr_ast_rule in
+      let (_, mv, script_vars, _) = r.scr_ast_rule in
       let ve =
        (List.map (function (n,v) -> (("virtual",n),Ast_c.MetaIdVal (v,[])))
           !Flag.defined_virtual_env) @ e in
@@ -1224,45 +1230,68 @@ let apply_script_rule r cache newes e rules_that_have_matched
              (function ((re,rm),_) ->
                List.exists (function (_,(r,m),_) -> r =*= re && m =$= rm) mv)
              e in
-         if List.mem relevant_bindings cache
-         then
-           begin
-             print_dependencies
-               "dependencies for script satisfied, but cached:"
-               rules_that_have_matched
-               !rules_that_have_ever_matched
-               r.scr_dependencies;
-             show_or_not_binding "in" e;
+         (try
+           let script_vals =  List.assoc relevant_bindings cache in
+           print_dependencies
+             "dependencies for script satisfied, but cached:"
+             rules_that_have_matched
+             !rules_that_have_ever_matched
+             r.scr_rule_info.dependencies;
+           show_or_not_binding "in" e;
              (* env might be bigger than what was cached against, so have to
                 merge with newes anyway *)
-             (cache,merge_env [(e, rules_that_have_matched)] newes)
-           end
-         else
+           let new_e = (List.combine script_vars script_vals) @ e in
+           let new_e =
+             new_e +>
+             List.filter
+               (fun (s,v) -> List.mem s r.scr_rule_info.used_after) in
+           (cache,merge_env [(new_e, rules_that_have_matched)] newes)
+         with Not_found ->
            begin
              print_dependencies "dependencies for script satisfied:"
                rules_that_have_matched
                !rules_that_have_ever_matched
-               r.scr_dependencies;
+               r.scr_rule_info.dependencies;
              show_or_not_binding "in" e;
-             let new_cache = relevant_bindings :: cache in
-             if script_application mv ve r
-             then (new_cache, merge_env [(e, rules_that_have_matched)] newes)
-             else (new_cache, newes)
-           end
+             match script_application mv ve script_vars r with
+               None ->
+                 (* failure means we should drop e, no new bindings *)
+                 (((relevant_bindings,[]) :: cache), newes)
+             | Some script_vals ->
+                 let script_vals =
+                   List.map (function x -> Ast_c.MetaIdVal(x,[]))
+                     script_vals in
+                 let new_e =
+                   (List.combine script_vars script_vals) @ e in
+                 let new_e =
+                   new_e +>
+                   List.filter
+                     (fun (s,v) -> List.mem s r.scr_rule_info.used_after) in
+                 r.scr_rule_info.was_matched := true;
+                 (((relevant_bindings,script_vals) :: cache),
+                  merge_env
+                    [(new_e,
+                      r.scr_rule_info.rulename :: rules_that_have_matched)]
+                    newes)
+           end)
       |        unbound ->
          (if !Flag_cocci.show_dependencies
          then
            let m2c (_,(r,x),_) = r^"."^x in
            pr2 (Printf.sprintf "script not applied: %s not bound"
                   (String.concat ", " (List.map m2c unbound))));
+         let e =
+           e +>
+           List.filter
+             (fun (s,v) -> List.mem s r.scr_rule_info.used_after) in
          (cache, merge_env [(e, rules_that_have_matched)] newes))
     end)
 
 let rec apply_cocci_rule r rules_that_have_ever_matched es
     (ccs:file_info list ref) =
-  Common.profile_code r.rulename (fun () ->
-    show_or_not_rule_name r.ast_rule r.ruleid;
-    show_or_not_ctl_text r.ctl r.ast_rule r.ruleid;
+  Common.profile_code r.rule_info.rulename (fun () ->
+    show_or_not_rule_name r.ast_rule r.rule_info.ruleid;
+    show_or_not_ctl_text r.ctl r.ast_rule r.rule_info.ruleid;
 
     let reorganized_env =
       reassociate_positions r.free_vars r.negated_pos_vars !es in
@@ -1274,17 +1303,20 @@ let rec apply_cocci_rule r rules_that_have_ever_matched es
          function ((e,rules_that_have_matched),relevant_bindings) ->
            if not(interpret_dependencies rules_that_have_matched
                     !rules_that_have_ever_matched
-                    r.dependencies)
+                    r.rule_info.dependencies)
            then
              begin
                print_dependencies
-                 ("dependencies for rule "^r.rulename^" not satisfied:")
+                 ("dependencies for rule "^r.rule_info.rulename^
+                  " not satisfied:")
                  rules_that_have_matched
-                 !rules_that_have_ever_matched r.dependencies;
+                 !rules_that_have_ever_matched r.rule_info.dependencies;
                show_or_not_binding "in environment" e;
                (cache,
                 merge_env
-                  [(e +> List.filter (fun (s,v) -> List.mem s r.used_after),
+                  [(e +>
+                    List.filter
+                      (fun (s,v) -> List.mem s r.rule_info.used_after),
                     rules_that_have_matched)]
                   newes)
              end
@@ -1294,10 +1326,11 @@ let rec apply_cocci_rule r rules_that_have_ever_matched es
                with
                  Not_found ->
                    print_dependencies
-                     ("dependencies for rule "^r.rulename^" satisfied:")
+                     ("dependencies for rule "^r.rule_info.rulename^
+                      " satisfied:")
                      rules_that_have_matched
                      !rules_that_have_ever_matched
-                     r.dependencies;
+                     r.rule_info.dependencies;
                    show_or_not_binding "in" e;
                    show_or_not_binding "relevant in" relevant_bindings;
 
@@ -1334,7 +1367,9 @@ let rec apply_cocci_rule r rules_that_have_ever_matched es
 
              let old_bindings_to_keep =
                Common.nub
-                 (e +> List.filter (fun (s,v) -> List.mem s r.used_after)) in
+                 (e +>
+                  List.filter
+                    (fun (s,v) -> List.mem s r.rule_info.used_after)) in
              let new_e =
                if null new_bindings
                then
@@ -1364,20 +1399,20 @@ let rec apply_cocci_rule r rules_that_have_ever_matched es
                                (* see comment before combine_pos *)
                                (s,Ast_c.MetaPosValList []) -> false
                              | (s,v) ->
-                                 List.mem s r.used_after &&
+                                 List.mem s r.rule_info.used_after &&
                                  not (List.mem s old_variables)))) in
                  List.map
                    (function new_binding_to_add ->
                      (List.sort compare
                         (Common.union_set
                            old_bindings_to_keep new_binding_to_add),
-                      r.rulename::rules_that_have_matched))
+                      r.rule_info.rulename::rules_that_have_matched))
                    new_bindings_to_add in
              ((relevant_bindings,new_bindings)::cache,
               merge_env new_e newes))
        ([],[]) reorganized_env in (* end iter es *)
-    if !(r.was_matched)
-    then Common.push2 r.rulename rules_that_have_ever_matched;
+    if !(r.rule_info.was_matched)
+    then Common.push2 r.rule_info.rulename rules_that_have_ever_matched;
 
     es := newes;
 
@@ -1475,7 +1510,7 @@ and process_a_generated_a_env_a_toplevel2 r env = function
       let free_vars =
        List.filter
          (function
-             (rule,_) when rule =$= r.rulename -> false
+             (rule,_) when rule =$= r.rule_info.rulename -> false
            | (_,"ARGS") -> false
            | _ -> true)
          r.free_vars in
@@ -1483,7 +1518,7 @@ and process_a_generated_a_env_a_toplevel2 r env = function
       let metavars =
        List.filter
          (function md ->
-           let (rl,_) = Ast_cocci.get_meta_name md in rl =$= r.rulename)
+           let (rl,_) = Ast_cocci.get_meta_name md in rl =$= r.rule_info.rulename)
          r.metavars in
       if Common.include_set free_vars env_domain
       then Unparse_hrule.pp_rule metavars r.ast_rule env cfile.full_fname
@@ -1506,7 +1541,7 @@ and process_a_ctl_a_env_a_toplevel2 r e c f =
       (* !Main point! The call to the engine *)
       (***************************************)
       let model_ctl  = CCI.model_for_ctl r.dropped_isos (Common.some c.flow) e
-      in CCI.mysat model_ctl r.ctl (r.used_after, e)
+      in CCI.mysat model_ctl r.ctl (r.rule_info.used_after, e)
     )
   in
   if not returned_any_states
@@ -1516,7 +1551,7 @@ and process_a_ctl_a_env_a_toplevel2 r e c f =
     show_or_not_trans_info trans_info;
     List.iter (show_or_not_binding "out") newbindings;
 
-    r.was_matched := true;
+    r.rule_info.was_matched := true;
 
     if not (null trans_info)
     then begin
@@ -1528,7 +1563,7 @@ and process_a_ctl_a_env_a_toplevel2 r e c f =
          * trasformation au fichier concerne. *)
 
         (* modify ast via side effect *)
-        ignore(Transformation_c.transform r.rulename r.dropped_isos
+        ignore(Transformation_c.transform r.rule_info.rulename r.dropped_isos
                   inherited_bindings trans_info (Common.some c.flow));
       with Timeout -> raise Timeout | UnixExit i -> raise (UnixExit i)
     end;
@@ -1560,10 +1595,11 @@ let rec bigloop2 rs (ccs: file_info list) =
 
           adjust_pp_with_indent (fun () ->
             Format.force_newline();
-            let (l,mv,code) = r.scr_ast_rule in
-           let deps = r.scr_dependencies in
+            let (l,mv,script_vars,code) = r.scr_ast_rule in
+           let nm = r.scr_rule_info.rulename in
+           let deps = r.scr_rule_info.dependencies in
             Pretty_print_cocci.unparse
-             (Ast_cocci.ScriptRule ("",l,deps,mv,code)));
+             (Ast_cocci.ScriptRule (nm,l,deps,mv,script_vars,code)));
        end;
 
        if !Flag.show_misc then print_endline "RESULT =";
@@ -1590,6 +1626,10 @@ let rec bigloop2 rs (ccs: file_info list) =
                     (cache, newes))
             ([],[]) !es in
 
+       (if !(r.scr_rule_info.was_matched)
+       then
+         Common.push2 r.scr_rule_info.rulename rules_that_have_ever_matched);
+
         es := (if newes = [] then init_es else newes);
     | CocciRuleCocciInfo r ->
        apply_cocci_rule r rules_that_have_ever_matched
@@ -1625,7 +1665,7 @@ let initial_final_bigloop2 ty rebuild r =
 
       adjust_pp_with_indent (fun () ->
        Format.force_newline();
-       Pretty_print_cocci.unparse(rebuild r.scr_ast_rule r.scr_dependencies));
+       Pretty_print_cocci.unparse(rebuild r.scr_ast_rule r.scr_rule_info.dependencies));
     end;
 
   match r.language with
@@ -1702,12 +1742,12 @@ let pre_engine2 (coccifile, isofile) =
                then
                 failwith
                   ("double initializer found for "^r.language));
-              if interpret_dependencies [] [] r.scr_dependencies
+              if interpret_dependencies [] [] r.scr_rule_info.dependencies
               then
                 begin
                   initial_final_bigloop Initial
-                    (fun (x,_,y) -> fun deps ->
-                      Ast_cocci.InitialScriptRule(r.scr_rulename,x,deps,y))
+                    (fun (x,_,_,y) -> fun deps ->
+                      Ast_cocci.InitialScriptRule(r.scr_rule_info.rulename,x,deps,y))
                     r;
                   r.language::languages
                 end
@@ -1718,15 +1758,20 @@ let pre_engine2 (coccifile, isofile) =
   let uninitialized_languages =
     List.filter
       (fun used -> not (List.mem used initialized_languages))
-      used_languages
-  in
-    List.iter (fun lgg ->
-                initial_final_bigloop Initial
-                  (fun (x,_,y) -> fun deps ->
-                    Ast_cocci.InitialScriptRule("",x,deps,y))
-                  (make_init "" (-1) lgg Ast_cocci.NoDep "");
-             )
-      uninitialized_languages;
+      used_languages in
+  List.iter
+    (fun lgg ->
+      let rule_info =
+       {rulename = "";
+         dependencies = Ast_cocci.NoDep;
+         used_after = [];
+         ruleid = (-1);
+         was_matched = ref false;} in
+      initial_final_bigloop Initial
+       (fun (x,_,_,y) -> fun deps ->
+         Ast_cocci.InitialScriptRule("",x,deps,y))
+       (make_init lgg "" rule_info))
+    uninitialized_languages;
 
   (cocci_infos,toks)
 
@@ -1806,8 +1851,8 @@ let post_engine2 (cocci_infos,_) =
              (if List.mem r.language languages
              then failwith ("double finalizer found for "^r.language));
              initial_final_bigloop Final
-               (fun (x,_,y) -> fun deps ->
-                 Ast_cocci.FinalScriptRule(r.scr_rulename,x,deps,y))
+               (fun (x,_,_,y) -> fun deps ->
+                 Ast_cocci.FinalScriptRule(r.scr_rule_info.rulename,x,deps,y))
                r;
              r.language::languages
          | _ -> languages)
dissimilarity index 99%
index bc950ae..1785155 100644 (file)
--- a/commitmsg
+++ b/commitmsg
@@ -1,67 +1,3 @@
-Release coccinelle-0.2.3
-
-** Language:
-   - <= constraints relating an expression metavariable to one or more
-     inherited expression metavariables that it should be a subexpression of
-   - the -inplace and -outplace options have been renamed -in_place and
-     -out_place.  -in_place no longer makes a backup.  A backup can be
-     requested using the option -backup_suffix, eg -backup_suffix .bk
-   - identifiers can be constrained to be different from an inherited
-     identifier metavariable, or from a set containing both concrete
-     identifiers and inherited identifier metavariables.
-   - support for ocaml scripting
-   - ast available in ocaml scripts
-
-** Features:
-   - drop inconsistent paths check when only one node was matched
-   - allow #define id with no definition
-   - attempt to add newlines in the generated code when function calls in the
-     smpl cause passing column 80
-   - allow - in front of statement level nests, if everything inside the nest
-     is also -
-   - 'configure' looks for some system libraries: menhirLib, sexplib, pycaml.
-     Not available libraries are replaced by a copy provided with the sources.
-   - added static for a function goes just before what is specified in the
-     semantic patch, not before any comments etc.
-   - Add a new option, -ignore_unknown_options, to ease the integration
-     of Coccinelle as a checker in a toolchain.
-   - error in python code causes immediate abort of spatch
-   - use the same algorithm for collecting grep tokens as for collecting
-     glimpse tokens
-   - Add scripts/spatch.bash_completion for automatic completion of common
-     options under the bash shell.
-   - Print rule name when a script rule crashes
-   - Allow the declaration of an expression list or parameter list
-     metavariable to specify the number of expressions or parameters,
-     respectively.
-
-** Bugfix:
-   - drop inconsistent paths check when only one node was matched
-   - better take into account virtual rules when selecting glimpse tokens
-   - print diff when only a comment is added
-   - the type of the C code !x should be int regardless of the type of x
-   - allow python code at the beginning of an included file
-   - better adjustment of whitespace when deleting adjacent lines.  Thanks to
-     Wolfram Sang for pointing out the problem.
-   - allow metavariables to be inherited from included files
-   - allow ? on goto
-   - more graceful failure on finding a strange character in a macro parameter
-     list
-   - support Parameter metavariables
-   - add space after the last comma in an added portion of an argument list
-   - SmPL nameless struct should only match a nameless struct, not a nameless
-     union.  Thanks to Peter Tummeltshammer for pointing out the problem.
-   - adjustments to storage don't modify inline as well
-   - matching and transformation allowed on inline
-   - allow removed field between two ... in structure initialization
-   - allow removing an entire structure initialization
-   - manage labels within do while 0 macros
-   - added space after : in printing a conditional expression.  Thanks to Josh
-     Triplett for noticing the problem.
-   - dropped trailing whitespace when code at the end of a line is deleted.
-     Thanks to Josh Triplett for noticing the problem.
-   - Fixed environment management when script rule uses cache.  Thanks to
-     Bissyande for finding the problem.
-   - when false matches if with no else
-   - ensure { ... } with whencode checks to the end of the function.  Thanks to
-     Rene Rydhof Hansen for finding the problem.
+Release coccinelle-0.2.4rc1
+
+Release Candidate 1 for coccinelle-0.2.4
diff --git a/demos/camltococci.c b/demos/camltococci.c
new file mode 100644 (file)
index 0000000..e67463a
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  bar();
+}
diff --git a/demos/camltococci.cocci b/demos/camltococci.cocci
new file mode 100644 (file)
index 0000000..8cc110f
--- /dev/null
@@ -0,0 +1,23 @@
+@a@
+identifier x;
+@@
+
+foo(x);
+
+@script:ocaml b@
+x << a.x;
+y;
+z;
+@@
+
+y := x;
+z := "something"
+
+@c@
+identifier b.y;
+identifier b.z;
+identifier a.x;
+@@
+
+- bar();
++ matched_bar(y,z,x);
diff --git a/demos/camltococci.res b/demos/camltococci.res
new file mode 100644 (file)
index 0000000..d4eafc9
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  matched_bar(a0, something, a0);
+}
diff --git a/demos/pythontococci.c b/demos/pythontococci.c
new file mode 100644 (file)
index 0000000..e67463a
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  bar();
+}
diff --git a/demos/pythontococci.cocci b/demos/pythontococci.cocci
new file mode 100644 (file)
index 0000000..e09e278
--- /dev/null
@@ -0,0 +1,25 @@
+@a@
+identifier x;
+@@
+
+foo(x);
+
+@script:python b@
+x << a.x;
+y;
+z;
+@@
+
+print y
+coccinelle.y = x
+coccinelle.z = "something"
+print y
+
+@c@
+identifier b.y;
+identifier b.z;
+identifier a.x;
+@@
+
+- bar();
++ matched_bar(y,z,x);
diff --git a/demos/pythontococci.res b/demos/pythontococci.res
new file mode 100644 (file)
index 0000000..d4eafc9
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  matched_bar(a0, something, a0);
+}
index 5ad13a0..7109db9 100644 (file)
@@ -112,7 +112,7 @@ The keyword \KW{disable} is normally used with the names of
 isomorphisms defined in standard.iso or whatever isomorphism file has been
 included.  There are, however, some other isomorphisms that are built into
 the implementation of Coccinelle and that can be disabled as well.  Their
-names are given below.  In each case, the text descibes the standard
+names are given below.  In each case, the text describes the standard
 behavior.  Using \NT{disable-iso} with the given name disables this behavior.
 
 \begin{itemize}
@@ -139,7 +139,10 @@ used in {\tt +} code.  These properties are not expressed in the grammar,
 but are checked by a subsequent analysis.  The metavariables are designated
 according to the kind of terms they can match, such as a statement, an
 identifier, or an expression.  An expression metavariable can be further
-constrained by its type.
+constrained by its type.  A declaration metavariable matches the
+declaration of one or more variables, all sharing the same type
+specification ({\em e.g.}, {\tt int a,b,c=3;}).  A field metavariable does
+the same, but for structure fields.
 
 \begin{grammar}
   \RULE{\rt{metadecl}}
@@ -151,6 +154,8 @@ constrained by its type.
   \CASE{parameter list [ \NT{const} ] \NT{ids} ;}
   \CASE{type \NT{ids} ;}
   \CASE{statement \opt{list} \NT{ids} ;}
+  \CASE{declaration \opt{list} \NT{ids} ;}
+  \CASE{field \opt{list} \NT{ids} ;}
   \CASE{typedef \NT{ids} ;}
   \CASE{declarer name \NT{ids} ;}
 %  \CASE{\opt{local} function \NT{pmid\_with\_not\_eq\_list} ;}
@@ -247,14 +252,16 @@ typing, metavariables for scripts do not include type declarations.
 
 \begin{grammar}
   \RULE{\rt{script\_metavariables}}
-  \CASE{@ script:\NT{language} \OPT{depends on \NT{dep}} @
+  \CASE{@ script:\NT{language} \OPT{\NT{rulename}} \OPT{depends on \NT{dep}} @
         \any{\NT{script\_metadecl}} @@}
   \CASE{@ initialize:\NT{language} \OPT{depends on \NT{dep}} @}
   \CASE{@ finalize:\NT{language} \OPT{depends on \NT{dep}} @}
 
-  \RULE{\rt{language}} \CASE{python}
+  \RULE{\rt{language}} \CASE{python} \CASE{ocaml}
 
-  \RULE{\rt{script\_metadecl}} \CASE{\T{id} <{}< \T{rulename\_id}.\T{id} ;}
+  \RULE{\rt{script\_metadecl}}
+  \CASE{\T{id} <{}< \T{rulename\_id}.\T{id} ;}
+  \CASE{\T{id} ;}
 \end{grammar}
 
 Currently, the only scripting languages that are supported are Python and
@@ -270,6 +277,34 @@ metavariables.  Nevertheless, a finalize script rule can access any
 variables initialized by the other script rules, allowing information to be
 transmitted from the matching process to the finalize rule.
 
+A script metavariable that does not specify an origin, using \texttt{<<},
+is newly declared by the script.  This metavariable should be assigned to a
+string and can be inherited by subsequent rules as an identifier.  In
+Python, the assignment of such a metavariable $x$ should refer to the
+metavariable as {\tt coccinelle.\(x\)}.  Examples are in the files
+\texttt{demos/pythontococci.cocci} and \texttt{demos/camltococci.cocci}.
+
+In an ocaml script, the following extended form of \textit{script\_metadecl}
+may be used:
+
+\begin{grammar}
+  \RULE{\rt{script\_metadecl}}
+  \CASE{(\T{id},\T{id}) <{}< \T{rulename\_id}.\T{id} ;}
+  \CASE{\T{id} <{}< \T{rulename\_id}.\T{id} ;}
+  \CASE{\T{id} ;}
+\end{grammar}
+
+\noindent
+In a declaration of the form \texttt{(\T{id},\T{id}) <{}<
+  \T{rulename\_id}.\T{id} ;}, the left component of \texttt{(\T{id},\T{id})}
+receives a string representation of the value of the inherited metavariable
+while the right component receives its abstract syntax tree.  The file
+\texttt{parsing\_c/ast\_c.ml} in the Coccinelle implementation gives some
+information about the structure of the abstract syntax tree.  Either the
+left or right component may be replaced by \verb+_+, indicating that the
+string representation or abstract syntax trees representation is not
+wanted, respectively.
+
 \section{Transformation}
 
 The transformation specification essentially has the form of C code,
@@ -455,7 +490,7 @@ some constraints on the use of these annotations:
 
 Each element of a disjunction must be a proper term like an
 expression, a statement, an identifier or a declaration. Thus, the
-rule on the left below is not a syntaxically correct SmPL rule. One may
+rule on the left below is not a syntactically correct SmPL rule. One may
 use the rule on the right instead.
 
 \begin{center}
@@ -656,7 +691,7 @@ T foo() { ... }
 \end{lstlisting}
 
 \noindent
-It may be nencessary to consider several cases to ensure that the added ode
+It may be necessary to consider several cases to ensure that the added ode
 is placed in the right position.  For example, one may need one pattern
 that considers that the function is declared {\tt inline} and another that
 considers that it is not.
index c6cc619..6cced42 100644 (file)
Binary files a/docs/manual/main_grammar.pdf and b/docs/manual/main_grammar.pdf differ
index 669781b..06bf752 100644 (file)
Binary files a/docs/manual/manual.pdf and b/docs/manual/manual.pdf differ
index d7525cd..5b255a7 100644 (file)
Binary files a/docs/manual/options.pdf and b/docs/manual/options.pdf differ
index 3d35786..b6228e2 100644 (file)
@@ -80,6 +80,9 @@ isomorphisms to the specified integer.
 \rare{-no\_iso\_limit} Put no limit on the number of times that
 isomorphisms can be applied. This is the default.
 
+\rare{-disable\_iso}{Disable a specific isomorphism from the command line.
+  This option can be specified multiple times.}
+
 \developer{-track\_iso}{ Gather information about isomorphism usage.}
 
 \developer{-profile\_iso}{ Gather information about the time required for
index 5b7cd6f..ee7ac66 100644 (file)
@@ -498,7 +498,12 @@ let make_match label guard code =
     | _ -> CTL.Exists(true,v,predmaker guard (matcher,CTL.UnModif v) label))
 
 let make_raw_match label guard code =
-  predmaker guard (Lib_engine.Match(code),CTL.Control) label
+  match intersect !used_after (Ast.get_fvs code) with
+    [] -> predmaker guard (Lib_engine.Match(code),CTL.Control) label
+  | _ ->
+      let v = fresh_var() in
+    CTL.Exists(true,v,predmaker guard (Lib_engine.Match(code),CTL.UnModif v)
+                label)
 
 let rec seq_fvs quantified = function
     [] -> []
index 5996c89..7dab2ac 100644 (file)
@@ -77,6 +77,7 @@ let dumb_astcocci_decl = function
  | A.MacroDecl(fn, _, eas, _, _) -> ()
  | A.Ddots(dots,whencode) -> ()
  | A.MetaDecl _ -> ()
+ | A.MetaField _ -> ()
  | A.Typedef(d,ty1,ty2,pv) -> ()
  | A.DisjDecl xs -> ()
  | A.OptDecl _ | A.UniqueDecl _ -> ()
@@ -90,6 +91,7 @@ let dumb_astcocci_initialiser = function
   | A.DisjDecl(decls) -> ()
   | A.Ddots(dots,whencode) -> ()
   | A.MetaDecl(name,_,_) -> ()
+  | A.MetaField(name,_,_) -> ()
   | A.OptDecl(decl) -> ()
   | A.UniqueDecl(decl) -> ()
 
index a84d682..8fe06f5 100644 (file)
@@ -276,6 +276,10 @@ let equal_metavarval valu valu' =
   | Ast_c.MetaExprListVal a, Ast_c.MetaExprListVal b ->
       Lib_parsing_c.al_arguments a =*= Lib_parsing_c.al_arguments b
 
+  | Ast_c.MetaDeclVal a, Ast_c.MetaDeclVal b ->
+      Lib_parsing_c.al_declaration a =*= Lib_parsing_c.al_declaration b
+  | Ast_c.MetaFieldVal a, Ast_c.MetaFieldVal b ->
+      Lib_parsing_c.al_field a =*= Lib_parsing_c.al_field b
   | Ast_c.MetaStmtVal a, Ast_c.MetaStmtVal b ->
       Lib_parsing_c.al_statement a =*= Lib_parsing_c.al_statement b
   | Ast_c.MetaInitVal a, Ast_c.MetaInitVal b ->
@@ -305,7 +309,7 @@ let equal_metavarval valu valu' =
        l1
 
   | (B.MetaPosValList _|B.MetaListlenVal _|B.MetaPosVal _|B.MetaStmtVal _
-      |B.MetaTypeVal _ |B.MetaInitVal _
+      |B.MetaDeclVal _ |B.MetaFieldVal _ |B.MetaTypeVal _ |B.MetaInitVal _
       |B.MetaParamListVal _|B.MetaParamVal _|B.MetaExprListVal _
       |B.MetaExprVal _|B.MetaLocalFuncVal _|B.MetaFuncVal _|B.MetaIdVal _
     ), _
@@ -333,6 +337,10 @@ let equal_inh_metavarval valu valu'=
   | Ast_c.MetaExprListVal a, Ast_c.MetaExprListVal b ->
       Lib_parsing_c.al_inh_arguments a =*= Lib_parsing_c.al_inh_arguments b
 
+  | Ast_c.MetaDeclVal a, Ast_c.MetaDeclVal b ->
+      Lib_parsing_c.al_inh_declaration a =*= Lib_parsing_c.al_inh_declaration b
+  | Ast_c.MetaFieldVal a, Ast_c.MetaFieldVal b ->
+      Lib_parsing_c.al_inh_field a =*= Lib_parsing_c.al_inh_field b
   | Ast_c.MetaStmtVal a, Ast_c.MetaStmtVal b ->
       Lib_parsing_c.al_inh_statement a =*= Lib_parsing_c.al_inh_statement b
   | Ast_c.MetaInitVal a, Ast_c.MetaInitVal b ->
@@ -362,7 +370,7 @@ let equal_inh_metavarval valu valu'=
        l1
 
   | (B.MetaPosValList _|B.MetaListlenVal _|B.MetaPosVal _|B.MetaStmtVal _
-      |B.MetaTypeVal _ |B.MetaInitVal _
+      |B.MetaDeclVal _ |B.MetaFieldVal _ |B.MetaTypeVal _ |B.MetaInitVal _
       |B.MetaParamListVal _|B.MetaParamVal _|B.MetaExprListVal _
       |B.MetaExprVal _|B.MetaLocalFuncVal _|B.MetaFuncVal _|B.MetaIdVal _
     ), _
@@ -628,6 +636,10 @@ module type PARAM =
       (A.meta_name A.mcode, Ast_c.parameterType) matcher
     val distrf_ini :
       (A.meta_name A.mcode, Ast_c.initialiser) matcher
+    val distrf_decl :
+      (A.meta_name A.mcode, Ast_c.declaration) matcher
+    val distrf_field :
+      (A.meta_name A.mcode, Ast_c.field) matcher
     val distrf_node :
       (A.meta_name A.mcode, Control_flow_c.node) matcher
 
@@ -1777,12 +1789,15 @@ and (declaration: (A.mcodekind * bool * A.declaration,B.declaration) matcher) =
    * be no transform of MetaDecl, just matching are allowed.
    *)
 
-  | A.MetaDecl(ida,_keep,_inherited), _ -> (* keep ? inherited ? *)
-      (* todo: should not happen in transform mode *)
-      return ((mckstart, allminus, decla), declb)
-
-
-
+  | A.MetaDecl (ida,keep,inherited), _ ->
+      let max_min _ =
+       Lib_parsing_c.lin_col_by_pos (Lib_parsing_c.ii_of_decl declb) in
+      X.envf keep inherited (ida, Ast_c.MetaDeclVal declb, max_min) (fun () ->
+        X.distrf_decl ida declb
+          ) >>= (fun ida declb ->
+           return ((mckstart, allminus,
+                    (A.MetaDecl (ida, keep, inherited))+> A.rewrap decla),
+                   declb))
   | _, (B.DeclList ([var], iiptvirgb::iifakestart::iisto)) ->
       onedecl allminus decla (var,iiptvirgb,iisto) >>=
       (fun decla (var,iiptvirgb,iisto)->
@@ -1835,7 +1850,7 @@ and (declaration: (A.mcodekind * bool * A.declaration,B.declaration) matcher) =
                          [iisb;lpb;rpb;iiendb;iifakestart] ++ iistob))
           ))))))))
 
-  | _, (B.MacroDecl _ |B.DeclList _) ->       fail
+  | _, (B.MacroDecl _ |B.DeclList _) ->      fail
 
 
 and onedecl = fun allminus decla (declb, iiptvirgb, iistob) ->
@@ -1845,6 +1860,7 @@ and onedecl = fun allminus decla (declb, iiptvirgb, iistob) ->
  (* kind of typedef iso, we must unfold, it's for the case
   * T { }; that we want to match against typedef struct { } xx_t;
   *)
+
  | A.TyDecl (tya0, ptvirga),
    ({B.v_namei = Some (nameidb, None);
      B.v_type = typb0;
@@ -2425,8 +2441,16 @@ and (struct_fields: (A.declaration list, B.field list) matcher) =
 
 and (struct_field: (A.declaration, B.field) matcher) = fun fa fb ->
 
-  match fb with
-  | B.DeclarationField (B.FieldDeclList (onefield_multivars,iiptvirg)) ->
+  match A.unwrap fa,fb with
+  | A.MetaField (ida,keep,inherited), _ ->
+      let max_min _ =
+       Lib_parsing_c.lin_col_by_pos (Lib_parsing_c.ii_of_field fb) in
+      X.envf keep inherited (ida, Ast_c.MetaFieldVal fb, max_min) (fun () ->
+        X.distrf_field ida fb
+          ) >>= (fun ida fb ->
+           return ((A.MetaField (ida, keep, inherited))+> A.rewrap fa,
+                   fb))
+  | _,B.DeclarationField (B.FieldDeclList (onefield_multivars,iiptvirg)) ->
 
     let iiptvirgb = tuple_of_list1 iiptvirg in
 
@@ -2484,16 +2508,15 @@ and (struct_field: (A.declaration, B.field) matcher) = fun fa fb ->
       pr2_once "PB: More that one variable in decl. Have to split";
       fail
     )
-  | B.EmptyField _iifield ->
+  | _,B.EmptyField _iifield ->
       fail
 
-  | B.MacroDeclField ((sb,ebs),ii) ->
-      (match A.unwrap fa with
-       A.MacroDecl (sa,lpa,eas,rpa,enda) -> raise Todo
-      |        _ -> fail)
+  | A.MacroDecl (sa,lpa,eas,rpa,enda),B.MacroDeclField ((sb,ebs),ii) ->
+      raise Todo
+  | _,B.MacroDeclField ((sb,ebs),ii) -> fail
 
-  | B.CppDirectiveStruct directive -> fail
-  | B.IfdefStruct directive -> fail
+  | _,B.CppDirectiveStruct directive -> fail
+  | _,B.IfdefStruct directive -> fail
 
 
 
index 2200d9e..c2f90b6 100644 (file)
@@ -127,6 +127,10 @@ module type PARAM =
 
     val distrf_ini :
       (Ast_cocci.meta_name Ast_cocci.mcode, Ast_c.initialiser) matcher
+    val distrf_decl :
+      (Ast_cocci.meta_name Ast_cocci.mcode, Ast_c.declaration) matcher
+    val distrf_field :
+      (Ast_cocci.meta_name Ast_cocci.mcode, Ast_c.field) matcher
 
     val distrf_node :
       (Ast_cocci.meta_name Ast_cocci.mcode, Control_flow_c.node) matcher
index 04519d0..029dcd8 100644 (file)
@@ -288,15 +288,17 @@ module XMATCH = struct
     in
     tag_mck_pos_mcode mcode posmck x tin
 
-  let distrf_e    = distrf (Lib_parsing_c.ii_of_expr)
-  let distrf_args = distrf (Lib_parsing_c.ii_of_args)
-  let distrf_type = distrf (Lib_parsing_c.ii_of_type)
-  let distrf_param = distrf (Lib_parsing_c.ii_of_param)
+  let distrf_e      = distrf (Lib_parsing_c.ii_of_expr)
+  let distrf_args   = distrf (Lib_parsing_c.ii_of_args)
+  let distrf_type   = distrf (Lib_parsing_c.ii_of_type)
+  let distrf_param  = distrf (Lib_parsing_c.ii_of_param)
   let distrf_params = distrf (Lib_parsing_c.ii_of_params)
-  let distrf_ini   = distrf (Lib_parsing_c.ii_of_ini)
+  let distrf_ini    = distrf (Lib_parsing_c.ii_of_ini)
+  let distrf_decl   = distrf (Lib_parsing_c.ii_of_decl)
+  let distrf_field  = distrf (Lib_parsing_c.ii_of_field)
   let distrf_node   = distrf (Lib_parsing_c.ii_of_node)
-  let distrf_struct_fields   = distrf (Lib_parsing_c.ii_of_struct_fields)
-  let distrf_cst = distrf (Lib_parsing_c.ii_of_cst)
+  let distrf_struct_fields = distrf (Lib_parsing_c.ii_of_struct_fields)
+  let distrf_cst    = distrf (Lib_parsing_c.ii_of_cst)
   let distrf_define_params = distrf (Lib_parsing_c.ii_of_define_params)
 
 
@@ -421,6 +423,18 @@ module XMATCH = struct
                   then Lib_parsing_c.al_arguments a
                   else Lib_parsing_c.semi_al_arguments a))
                
+          | Ast_c.MetaDeclVal a ->
+             success
+               (Ast_c.MetaDeclVal
+                  (if strip
+                  then Lib_parsing_c.al_declaration a
+                  else Lib_parsing_c.semi_al_declaration a))
+          | Ast_c.MetaFieldVal a ->
+             success
+               (Ast_c.MetaFieldVal
+                  (if strip
+                  then Lib_parsing_c.al_field a
+                  else Lib_parsing_c.semi_al_field a))
           | Ast_c.MetaStmtVal a ->
              success
                (Ast_c.MetaStmtVal
index fbad228..657d6c6 100644 (file)
@@ -41,6 +41,10 @@ let rec pp_binding_kind = function
       Pretty_print_c.pp_init_simple ini
   | Ast_c.MetaTypeVal      typ ->
       Pretty_print_c.pp_type_simple typ
+  | Ast_c.MetaDeclVal      decl ->
+      Pretty_print_c.pp_decl_simple decl
+  | Ast_c.MetaFieldVal      decl ->
+      Pretty_print_c.pp_field_simple decl
   | Ast_c.MetaStmtVal      statement ->
       Pretty_print_c.pp_statement_simple statement
   | Ast_c.MetaParamVal     params -> pp "<<param>>"
index 69b9050..029aa91 100644 (file)
@@ -417,6 +417,12 @@ module XTRANS = struct
   let distribute_mck_type (maxpos, minpos) = fun (lop,mop,rop,bop) -> fun x ->
     Visitor_c.vk_type_s (mk_bigf (maxpos, minpos) (lop,mop,rop,bop)) x
 
+  let distribute_mck_decl (maxpos, minpos) = fun (lop,mop,rop,bop) -> fun x ->
+    Visitor_c.vk_decl_s (mk_bigf (maxpos, minpos) (lop,mop,rop,bop)) x
+
+  let distribute_mck_field (maxpos, minpos) = fun (lop,mop,rop,bop) -> fun x ->
+    Visitor_c.vk_struct_field_s (mk_bigf (maxpos, minpos) (lop,mop,rop,bop)) x
+
   let distribute_mck_ini (maxpos, minpos) = fun (lop,mop,rop,bop) -> fun x ->
     Visitor_c.vk_ini_s (mk_bigf (maxpos, minpos) (lop,mop,rop,bop)) x
 
@@ -493,6 +499,8 @@ module XTRANS = struct
   let distrf_param  = distrf (Lib_parsing_c.ii_of_param, distribute_mck_param)
   let distrf_params = distrf (Lib_parsing_c.ii_of_params,distribute_mck_params)
   let distrf_ini = distrf (Lib_parsing_c.ii_of_ini,distribute_mck_ini)
+  let distrf_decl = distrf (Lib_parsing_c.ii_of_decl,distribute_mck_decl)
+  let distrf_field = distrf (Lib_parsing_c.ii_of_field,distribute_mck_field)
   let distrf_node = distrf (Lib_parsing_c.ii_of_node,distribute_mck_node)
   let distrf_struct_fields =
     distrf (Lib_parsing_c.ii_of_struct_fields, distribute_mck_struct_fields)
index 1f27bf3..c5a1606 100644 (file)
@@ -1,4 +1,4 @@
-let version = "0.2.3"
+let version = "0.2.4rc1"
 
 let path =
   try (Sys.getenv "COCCINELLE_HOME")
diff --git a/main.ml b/main.ml
index eb02bb7..60fd7df 100644 (file)
--- a/main.ml
+++ b/main.ml
@@ -340,7 +340,7 @@ let short_options = [
     "  guess what";
 
   "-date",   Arg.Unit (fun () ->
-    pr2 "version: $Date: 2010/07/01 13:22:53 $";
+    pr2 "version: $Date: 2010/08/06 12:05:34 $";
     raise (Common.UnixExit 0)
     ),
   "   guess what";
@@ -491,6 +491,11 @@ let other_options = [
     "   disable limit on max depth of iso application";
     "-track_iso", Arg.Set Flag.track_iso_usage,
     "   gather information about isomorphism usage";
+    "-disable_iso",
+    Arg.String
+    (fun s -> Flag_parsing_cocci.disabled_isos :=
+      s :: !Flag_parsing_cocci.disabled_isos),
+    "   disable a specific isomorphism";
     "-profile_iso",
     Arg.Unit
     (function () ->
@@ -738,19 +743,22 @@ let glimpse_filter (coccifile, isofile) dir =
     Cocci.sp_of_file coccifile (Some isofile) in
   match query with
     None -> pr2 "no glimpse keyword inferred from snippet"; None
-  | Some [query] ->
-      (let suffixes = if !include_headers then ["c";"h"] else ["c"] in
-      Printf.fprintf stderr "%s\n" ("glimpse request = " ^ query);
-      let command = spf "glimpse -y -H %s -N -W -w '%s'" dir query in
-      let (glimpse_res,stat) = Common.cmd_to_list_and_status command in
-      match stat with
-       Unix.WEXITED(0) | Unix.WEXITED(1) ->
-         Some
-           (glimpse_res +>
-            List.filter
-              (fun file -> List.mem (Common.filesuffix file) suffixes))
-      |        _ -> None (* error, eg due to pattern too big *))
-  | _ -> failwith "not possible"
+  | Some queries ->
+      let suffixes = if !include_headers then ["c";"h"] else ["c"] in
+      let rec loop = function
+         [] -> None (* error, eg due to pattern too big *)
+       | query::queries ->
+           Printf.fprintf stderr "%s\n" ("glimpse request = " ^ query);
+           let command = spf "glimpse -y -H %s -N -W -w '%s'" dir query in
+           let (glimpse_res,stat) = Common.cmd_to_list_and_status command in
+           match stat with
+             Unix.WEXITED(0) | Unix.WEXITED(1) ->
+               Some
+                 (glimpse_res +>
+                  List.filter
+                    (fun file -> List.mem (Common.filesuffix file) suffixes))
+           |   _ -> loop queries (* error, eg due to pattern too big *) in
+      loop queries
 
 (*****************************************************************************)
 (* Main action *)
index 8c04600..5567ef7 100644 (file)
@@ -17,9 +17,11 @@ type param_type =
   | ParamList of Ast_c.parameterType Ast_c.wrap2 list
   | Expr of Ast_c.expression
   | ExprList of Ast_c.argument Ast_c.wrap2 list
+  | Decl of Ast_c.declaration
+  | Field of Ast_c.field
   | Stmt of Ast_c.statement
 
-let fcts : (string, param_type list -> unit) Hashtbl.t =
+let fcts : (string, param_type list -> string ref list -> unit) Hashtbl.t =
   Hashtbl.create 11 (* Use prime number *)
 
 (* ---------------------------------------------------------------------- *)
index 08f6416..d2619af 100644 (file)
@@ -16,9 +16,11 @@ type param_type =
   | ParamList of Ast_c.parameterType Ast_c.wrap2 list
   | Expr of Ast_c.expression
   | ExprList of Ast_c.argument Ast_c.wrap2 list
+  | Decl of Ast_c.declaration
+  | Field of Ast_c.field
   | Stmt of Ast_c.statement
 
-val fcts : (string, param_type list -> unit) Hashtbl.t
+val fcts : (string, param_type list -> string ref list -> unit) Hashtbl.t
 
 (* ---------------------------------------------------------------------- *)
 (* Match management *)
index fd182a6..36269b6 100644 (file)
@@ -17,14 +17,20 @@ let stringrep = function
 | Ast_c.MetaFuncVal      s -> s
 | Ast_c.MetaLocalFuncVal s -> s
 | Ast_c.MetaExprVal      (expr,_) -> exprrep expr
-| Ast_c.MetaExprListVal  expr_list -> "TODO: <<exprlist>>"
+| Ast_c.MetaExprListVal  expr_list ->
+    call_pretty Pretty_print_c.pp_arg_list_gen expr_list
 | Ast_c.MetaTypeVal      typ -> call_pretty Pretty_print_c.pp_type_gen typ
 | Ast_c.MetaInitVal      ini -> call_pretty Pretty_print_c.pp_init_gen ini
+| Ast_c.MetaDeclVal      declaration ->
+    call_pretty Pretty_print_c.pp_decl_gen declaration
+| Ast_c.MetaFieldVal      field ->
+    call_pretty Pretty_print_c.pp_field_gen field
 | Ast_c.MetaStmtVal      statement ->
     call_pretty Pretty_print_c.pp_statement_gen statement
 | Ast_c.MetaParamVal     param ->
     call_pretty Pretty_print_c.pp_param_gen param
-| Ast_c.MetaParamListVal params -> "TODO: <<paramlist>>"
+| Ast_c.MetaParamListVal params ->
+    call_pretty Pretty_print_c.pp_param_list_gen params
 | Ast_c.MetaListlenVal n -> string_of_int n
 | Ast_c.MetaPosVal (pos1, pos2) ->
     let print_pos = function
index ff4ce7a..338927f 100644 (file)
@@ -34,12 +34,14 @@ let ast_binding vl = function
 
       | Ast_c.MetaTypeVal ty -> Coccilib.Type ty
       | Ast_c.MetaInitVal init -> Coccilib.Init init
+      | Ast_c.MetaDeclVal decl -> Coccilib.Decl decl
+      | Ast_c.MetaFieldVal field -> Coccilib.Field field
       | Ast_c.MetaStmtVal stm -> Coccilib.Stmt stm
 
       | Ast_c.MetaPosVal _ | Ast_c.MetaPosValList _ | Ast_c.MetaListlenVal _ ->
          failwith "not associated with a declared metavariable"]
 
-let run mv ve name code =
+let run mv ve script_vars name code =
   (* set up variables *)
   let find_binding (r,m) =
     try
@@ -58,9 +60,12 @@ let run mv ve name code =
               (string_binding vl str_name) @ (ast_binding vl ast_name))
         mv) in
 
+  let script_args = List.map (function _ -> ref "") script_vars in
+
   (* call the function *)
   Coccilib.include_match true;
   let fn =
     try Hashtbl.find Coccilib.fcts name
     with Not_found -> failwith (Printf.sprintf "%s not found" name) in
-  fn args
+  fn args script_args;
+  List.map (function x -> !x) script_args
index 652e00b..ac2fa2e 100644 (file)
@@ -71,6 +71,8 @@ let ast_rep_binding ctr = function
   | (Some nm,Ast.MetaIdExpDecl _) -> print_match ctr nm "Expr"
   | (Some nm,Ast.MetaLocalIdExpDecl _) -> print_match ctr nm "Expr"
   | (Some nm,Ast.MetaExpListDecl _) -> print_match ctr nm "ExprList"
+  | (Some nm,Ast.MetaDeclDecl _) -> print_match ctr nm "Decl"
+  | (Some nm,Ast.MetaFieldDecl _) -> print_match ctr nm "Field"
   | (Some nm,Ast.MetaStmDecl _) -> print_match ctr nm "Stmt"
   | (Some nm,Ast.MetaStmListDecl _) -> failwith ("not supported: "^nm)
   | (Some nm,Ast.MetaFuncDecl _) -> print_match ctr nm "Str"
@@ -79,11 +81,19 @@ let ast_rep_binding ctr = function
   | (Some nm,Ast.MetaIteratorDecl _) -> print_match ctr nm "Str"
   | (None,_) -> ""
 
-let prepare_rule (name, metavars, code) =
+let manage_script_vars script_vars =
+  let rec loop n = function
+      [] -> ""
+    | (_,x)::xs ->
+       (Printf.sprintf "let %s = List.nth script_args %d in\n" x n) ^
+       (loop (n+1) xs) in
+  loop 0 script_vars
+
+let prepare_rule (name, metavars, script_vars, code) =
   let fname = String.concat "_" (Str.split (Str.regexp " ") name) in
   (* function header *)
   let function_header body =
-    Printf.sprintf "let %s args =\n %s" fname body in
+    Printf.sprintf "let %s args script_args =\n %s" fname body in
   (* parameter list *)
   let build_parameter_list body =
     let ctr = ref 0 in
@@ -98,7 +108,7 @@ let prepare_rule (name, metavars, code) =
                  let ast_rep = ast_rep_binding ctr (ast_nm,mv) in
                  ast_rep :: string_rep :: prev)
              [] metavars)) in
-    lets ^ body in
+    lets ^ (manage_script_vars script_vars) ^ body in
   (* add to hash table *)
   let hash_add body =
     Printf.sprintf
@@ -119,11 +129,11 @@ let prepare coccifile code =
     List.fold_left
       (function prev ->
        function
-           Ast_cocci.ScriptRule (name,"ocaml",deps,mv,code) ->
-             (name,mv,code) :: prev
+           Ast_cocci.ScriptRule (name,"ocaml",deps,mv,script_vars,code) ->
+             (name,mv,script_vars,code) :: prev
          | Ast_cocci.InitialScriptRule (name,"ocaml",deps,code) -> prev
          | Ast_cocci.FinalScriptRule (name,"ocaml",deps,code) ->
-             (name,[],code) :: prev
+             (name,[],[],code) :: prev
          | _ -> prev)
       [] code in
   let other_rules = List.rev other_rules in
@@ -222,17 +232,17 @@ let parse_dep mlfile depout =
   | _ ->
       raise
        (CompileFailure ("Wrong dependencies for "^mlfile^" (Got "^depout^")"))
-       
+
 let dep_flag mlfile =
   let depcmd  = !Flag.ocamldep ^" -modules "^mlfile in
   match Common.cmd_to_list depcmd with
     [dep] -> parse_dep mlfile dep
   | _ -> raise (CompileFailure ("Wrong dependencies for "^mlfile))
-       
+
 let compile_bytecode_cmd flags mlfile =
   let obj = (Filename.chop_extension mlfile) ^ ".cmo" in
   (obj, Printf.sprintf "%s -c %s %s %s" !Flag.ocamlc obj flags mlfile)
-    
+
 let compile_native_cmd flags mlfile =
   let obj = (Filename.chop_extension mlfile) ^ ".cmxs" in
   (obj,
index 2c4c5ff..3b7e651 100644 (file)
@@ -699,6 +699,8 @@ and metavars_binding = (Ast_cocci.meta_name, metavar_binding_kind) assoc
 
   | MetaTypeVal      of fullType
   | MetaInitVal      of initialiser
+  | MetaDeclVal      of declaration
+  | MetaFieldVal     of field
   | MetaStmtVal      of statement
 
   (* Could also be in Lib_engine.metavars_binding2 with the ParenVal,
index 19a283d..8b30c54 100644 (file)
@@ -68,6 +68,8 @@ let strip_info_visitor _ =
   }
 
 let al_expr      x = Visitor_c.vk_expr_s      (strip_info_visitor()) x
+let al_declaration x = Visitor_c.vk_decl_s    (strip_info_visitor()) x
+let al_field     x = Visitor_c.vk_struct_field_s (strip_info_visitor()) x
 let al_statement x = Visitor_c.vk_statement_s (strip_info_visitor()) x
 let al_type      x = Visitor_c.vk_type_s      (strip_info_visitor()) x
 let al_init      x = Visitor_c.vk_ini_s       (strip_info_visitor()) x
@@ -119,6 +121,8 @@ let strip_inh_info_visitor _ =  (* for inherited metavariables *)
   }
 
 let al_inh_expr      x = Visitor_c.vk_expr_s      (strip_inh_info_visitor()) x
+let al_inh_declaration x = Visitor_c.vk_decl_s    (strip_inh_info_visitor()) x
+let al_inh_field  x = Visitor_c.vk_struct_field_s (strip_inh_info_visitor()) x
 let al_inh_statement x = Visitor_c.vk_statement_s (strip_inh_info_visitor()) x
 let al_inh_type      x = Visitor_c.vk_type_s      (strip_inh_info_visitor()) x
 let al_inh_init      x = Visitor_c.vk_ini_s       (strip_inh_info_visitor()) x
@@ -142,6 +146,8 @@ let semi_strip_info_visitor = (* keep position information *)
   }
 
 let semi_al_expr      = Visitor_c.vk_expr_s      semi_strip_info_visitor
+let semi_al_declaration = Visitor_c.vk_decl_s    semi_strip_info_visitor
+let semi_al_field = Visitor_c.vk_struct_field_s  semi_strip_info_visitor
 let semi_al_statement = Visitor_c.vk_statement_s semi_strip_info_visitor
 let semi_al_type      = Visitor_c.vk_type_s      semi_strip_info_visitor
 let semi_al_init      = Visitor_c.vk_ini_s       semi_strip_info_visitor
@@ -203,6 +209,7 @@ let extract_info_visitor recursor x =
   end
 
 let ii_of_decl = extract_info_visitor Visitor_c.vk_decl
+let ii_of_field = extract_info_visitor Visitor_c.vk_struct_field
 let ii_of_node = extract_info_visitor Visitor_c.vk_node
 let ii_of_expr = extract_info_visitor Visitor_c.vk_expr
 let ii_of_stmt = extract_info_visitor Visitor_c.vk_statement
index 78314ec..e161c37 100644 (file)
@@ -40,8 +40,10 @@ type pretty_printers = {
   arg_list        : (Ast_c.argument Ast_c.wrap2 list) printer;
   statement       : Ast_c.statement printer;
   decl            : Ast_c.declaration printer;
+  field           : Ast_c.field printer;
   init            : Ast_c.initialiser printer;
   param           : Ast_c.parameterType printer;
+  paramlist       : (Ast_c.parameterType Ast_c.wrap2 list) printer;
   ty              : Ast_c.fullType printer;
   type_with_ident : type_with_ident;
   toplevel        : Ast_c.toplevel printer;
@@ -441,98 +443,7 @@ let mk_pretty_printers
           | x -> raise Impossible
          );
 
-          fields +> List.iter
-            (fun (field) ->
-
-              match field with
-              | DeclarationField(FieldDeclList(onefield_multivars,iiptvirg))->
-                  (match onefield_multivars with
-                  | x::xs ->
-                    (* handling the first var. Special case, with the
-                       first var, we print the whole type *)
-
-                     (match x with
-                     | (Simple (nameopt, typ)), iivirg ->
-                        (* first var cant have a preceding ',' *)
-                         assert (List.length iivirg =|= 0);
-                         let identinfo =
-                            match nameopt with
-                           | None -> None
-                            | Some name -> Some (get_s_and_info_of_name name)
-                          in
-                         pp_type_with_ident identinfo None typ Ast_c.noattr;
-
-                     | (BitField (nameopt, typ, iidot, expr)), iivirg ->
-                      (* first var cant have a preceding ',' *)
-                         assert (List.length iivirg =|= 0);
-                         (match nameopt with
-                         | None ->
-                             pp_type typ;
-                         | Some name ->
-                              let (s, is) = get_s_and_info_of_name name in
-                             pp_type_with_ident
-                               (Some (s, is)) None typ Ast_c.noattr;
-                         );
-                          pr_elem iidot;
-                         pp_expression expr
-
-                      ); (* match x, first onefield_multivars *)
-
-                      (* for other vars *)
-                     xs +> List.iter (function
-                       | (Simple (nameopt, typ)), iivirg ->
-                           iivirg +> List.iter pr_elem;
-                           let identinfo =
-                             match nameopt with
-                             | None -> None
-                             | Some name -> Some (get_s_and_info_of_name name)
-                           in
-                           pp_type_with_ident_rest identinfo typ Ast_c.noattr
-
-                       | (BitField (nameopt, typ, iidot, expr)), iivirg ->
-                           iivirg +> List.iter pr_elem;
-                           (match nameopt with
-                           | Some name ->
-                                let (s,is) = get_s_and_info_of_name name in
-                               pp_type_with_ident_rest
-                                 (Some (s, is)) typ Ast_c.noattr;
-                               pr_elem iidot;
-                               pp_expression expr
-                           | x -> raise Impossible
-                           )); (* iter other vars *)
-
-                 | [] -> raise Impossible
-                 ); (* onefield_multivars *)
-                 assert (List.length iiptvirg =|= 1);
-                 iiptvirg +> List.iter pr_elem;
-
-
-             | MacroDeclField ((s, es), ii)  ->
-                 let (iis, lp, rp, iiend, ifakestart) =
-                   Common.tuple_of_list5 ii in
-                 (* iis::lp::rp::iiend::ifakestart::iisto
-                iisto +> List.iter pr_elem; (* static and const *)
-                 *)
-                pr_elem ifakestart;
-                pr_elem iis;
-                pr_elem lp;
-                es +> List.iter (fun (e, opt) ->
-                   assert (List.length opt <= 1);
-                   opt +> List.iter pr_elem;
-                   pp_argument e;
-                );
-
-                pr_elem rp;
-                pr_elem iiend;
-
-
-
-             | EmptyField iipttvirg_when_emptyfield ->
-                  pr_elem iipttvirg_when_emptyfield
-
-             | CppDirectiveStruct cpp -> pp_directive cpp
-             | IfdefStruct ifdef -> pp_ifdef ifdef
-         );
+          fields +> List.iter pp_field;
 
           (match sopt,iis with
           | Some s , [i1;i2;i3;i4] -> pr_elem i4
@@ -626,8 +537,95 @@ let mk_pretty_printers
             (* | TypeOfExpr _ | TypeOfType _ *)
          ), _ -> raise Impossible
 
+  and pp_field = function
+      DeclarationField(FieldDeclList(onefield_multivars,iiptvirg))->
+        (match onefield_multivars with
+          x::xs ->
+           (* handling the first var. Special case, with the
+               first var, we print the whole type *)
+
+           (match x with
+             (Simple (nameopt, typ)), iivirg ->
+              (* first var cant have a preceding ',' *)
+               assert (List.length iivirg =|= 0);
+               let identinfo =
+                  match nameopt with
+                 | None -> None
+                  | Some name -> Some (get_s_and_info_of_name name)
+                in
+               pp_type_with_ident identinfo None typ Ast_c.noattr;
+               
+           | (BitField (nameopt, typ, iidot, expr)), iivirg ->
+                      (* first var cant have a preceding ',' *)
+               assert (List.length iivirg =|= 0);
+               (match nameopt with
+               | None ->
+                   pp_type typ;
+               | Some name ->
+                    let (s, is) = get_s_and_info_of_name name in
+                   pp_type_with_ident
+                     (Some (s, is)) None typ Ast_c.noattr;
+                   );
+                pr_elem iidot;
+               pp_expression expr
+
+                  ); (* match x, first onefield_multivars *)
+
+                      (* for other vars *)
+           xs +> List.iter (function
+             | (Simple (nameopt, typ)), iivirg ->
+                 iivirg +> List.iter pr_elem;
+                 let identinfo =
+                   match nameopt with
+                   | None -> None
+                   | Some name -> Some (get_s_and_info_of_name name)
+                 in
+                 pp_type_with_ident_rest identinfo typ Ast_c.noattr
+
+             | (BitField (nameopt, typ, iidot, expr)), iivirg ->
+                 iivirg +> List.iter pr_elem;
+                 (match nameopt with
+                 | Some name ->
+                      let (s,is) = get_s_and_info_of_name name in
+                     pp_type_with_ident_rest
+                       (Some (s, is)) typ Ast_c.noattr;
+                     pr_elem iidot;
+                     pp_expression expr
+                 | x -> raise Impossible
+                       )); (* iter other vars *)
+
+       | [] -> raise Impossible
+             ); (* onefield_multivars *)
+       assert (List.length iiptvirg =|= 1);
+       iiptvirg +> List.iter pr_elem;
+
+
+    | MacroDeclField ((s, es), ii)  ->
+        let (iis, lp, rp, iiend, ifakestart) =
+          Common.tuple_of_list5 ii in
+                 (* iis::lp::rp::iiend::ifakestart::iisto
+                   iisto +> List.iter pr_elem; (* static and const *)
+                 *)
+       pr_elem ifakestart;
+       pr_elem iis;
+       pr_elem lp;
+       es +> List.iter (fun (e, opt) ->
+          assert (List.length opt <= 1);
+          opt +> List.iter pr_elem;
+          pp_argument e;
+         );
+
+       pr_elem rp;
+       pr_elem iiend;
 
 
+
+    | EmptyField iipttvirg_when_emptyfield ->
+        pr_elem iipttvirg_when_emptyfield
+
+    | CppDirectiveStruct cpp -> pp_directive cpp
+    | IfdefStruct ifdef -> pp_ifdef ifdef
+
 (* used because of DeclList, in    int i,*j[23];  we dont print anymore the
    int before *j *)
   and (pp_type_with_ident_rest: (string * info) option ->
@@ -997,12 +995,7 @@ and pp_init (init, iinit) =
            iib +> List.iter pr_elem;
 
         *)
-        paramst +> List.iter (fun (param,iicomma) ->
-          assert ((List.length iicomma) <= 1);
-          iicomma +> List.iter (function x -> pr_elem x; pr_space());
-
-          pp_param param;
-        );
+       pp_param_list paramst;
         iib +> List.iter pr_elem;
 
 
@@ -1012,7 +1005,11 @@ and pp_init (init, iinit) =
         pr_elem i2;
     | _ -> raise Impossible
 
-
+  and pp_param_list paramst =
+    paramst +> List.iter (fun (param,iicomma) ->
+      assert ((List.length iicomma) <= 1);
+      iicomma +> List.iter (function x -> pr_elem x; pr_space());
+      pp_param param)
 
 (* ---------------------- *)
 
@@ -1279,15 +1276,17 @@ and pp_init (init, iinit) =
 
 
   { expression = pp_expression;
-    arg_list = pp_arg_list;
-    statement = pp_statement;
-    decl = pp_decl;
-    init = pp_init;
-    param = pp_param;
-    ty = pp_type;
+    arg_list   = pp_arg_list;
+    statement  = pp_statement;
+    decl       = pp_decl;
+    field      = pp_field;
+    init       = pp_init;
+    param      = pp_param;
+    paramlist = pp_param_list;
+    ty         = pp_type;
     type_with_ident = pp_type_with_ident;
-    toplevel = pp_toplevel;
-    flow = pp_flow;
+    toplevel   = pp_toplevel;
+    flow       = pp_flow;
   }
 
 (*****************************************************************************)
@@ -1321,6 +1320,8 @@ let ppc =
     ~pr_elem ~pr_space ~pr_nl ~pr_outdent ~pr_indent ~pr_unindent
 
 let pp_expression_simple = ppc.expression
+let pp_decl_simple       = ppc.decl
+let pp_field_simple      = ppc.field
 let pp_statement_simple  = ppc.statement
 let pp_type_simple       = ppc.ty
 let pp_init_simple       = ppc.init
@@ -1336,21 +1337,27 @@ let pp_elem_sp ~pr_elem ~pr_space =
 let pp_expression_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).expression
 
-let pp_arg_list_gen pr_elem pr_space =
+let pp_arg_list_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).arg_list
 
 let pp_statement_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).statement
 
-let pp_decl_gen pr_elem pr_space =
+let pp_decl_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).decl
 
+let pp_field_gen ~pr_elem ~pr_space =
+  (pp_elem_sp pr_elem pr_space).field
+
 let pp_init_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).init
 
 let pp_param_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).param
 
+let pp_param_list_gen ~pr_elem ~pr_space =
+  (pp_elem_sp pr_elem pr_space).paramlist
+
 let pp_type_gen ~pr_elem ~pr_space =
   (pp_elem_sp pr_elem pr_space).ty
 
index bf4febb..18d8292 100644 (file)
@@ -11,8 +11,10 @@ type pretty_printers = {
   arg_list        : (Ast_c.argument Ast_c.wrap2 list) printer;
   statement       : Ast_c.statement printer;
   decl            : Ast_c.declaration printer;
+  field           : Ast_c.field printer;
   init            : Ast_c.initialiser printer;
   param           : Ast_c.parameterType printer;
+  paramlist       : (Ast_c.parameterType Ast_c.wrap2 list) printer;
   ty              : Ast_c.fullType printer;
   type_with_ident : type_with_ident;
   toplevel        : Ast_c.toplevel printer;
@@ -31,10 +33,18 @@ val mk_pretty_printers :
 (* used in pycocci mostly *)
 val pp_expression_gen: pr_elem:Ast_c.info printer -> pr_space: unit printer ->
   Ast_c.expression printer
+val pp_arg_list_gen: pr_elem:Ast_c.info printer -> pr_space: unit printer ->
+  (Ast_c.argument Ast_c.wrap2 list) printer
+val pp_decl_gen: pr_elem:Ast_c.info printer -> pr_space: unit printer ->
+  Ast_c.declaration printer
+val pp_field_gen: pr_elem:Ast_c.info printer -> pr_space: unit printer ->
+  Ast_c.field printer
 val pp_statement_gen: pr_elem:Ast_c.info printer -> pr_space: unit printer ->
   Ast_c.statement printer
 val pp_param_gen:  pr_elem:Ast_c.info printer -> pr_space: unit printer ->
   Ast_c.parameterType printer
+val pp_param_list_gen:  pr_elem:Ast_c.info printer -> pr_space: unit printer ->
+  (Ast_c.parameterType Ast_c.wrap2 list) printer
 val pp_type_gen:  pr_elem:Ast_c.info printer -> pr_space:unit printer ->
   Ast_c.fullType printer
 val pp_init_gen:  pr_elem:Ast_c.info printer -> pr_space:unit printer ->
@@ -47,6 +57,8 @@ val pp_program_gen : pr_elem:Ast_c.info printer -> pr_space:unit printer ->
 val pp_expression_simple: Ast_c.expression printer
 val pp_init_simple:       Ast_c.initialiser printer
 val pp_type_simple:       Ast_c.fullType printer
+val pp_decl_simple:       Ast_c.declaration printer
+val pp_field_simple:      Ast_c.field printer
 val pp_statement_simple:  Ast_c.statement printer
 val pp_toplevel_simple:   Ast_c.toplevel printer
 
index 3fa0ce6..5c20c8c 100644 (file)
@@ -2987,6 +2987,18 @@ and metavar_binding_kind_of_sexp__ =
         (match sexp_args with
          | [ v1 ] -> let v1 = initialiser_of_sexp v1 in MetaInitVal v1
          | _ -> Conv_error.stag_incorrect_n_args _loc tag sexp)
+    | (Sexp.List
+         (Sexp.Atom (("metaDeclVal" | "MetaDeclVal" as tag)) :: sexp_args)
+       as sexp) ->
+        (match sexp_args with
+         | [ v1 ] -> let v1 = declaration_of_sexp v1 in MetaDeclVal v1
+         | _ -> Conv_error.stag_incorrect_n_args _loc tag sexp)
+    | (Sexp.List
+         (Sexp.Atom (("metaFieldVal" | "MetaFieldVal" as tag)) :: sexp_args)
+       as sexp) ->
+        (match sexp_args with
+         | [ v1 ] -> let v1 = field_of_sexp v1 in MetaDeclVal v1
+         | _ -> Conv_error.stag_incorrect_n_args _loc tag sexp)
     | (Sexp.List
          (Sexp.Atom (("metaStmtVal" | "MetaStmtVal" as tag)) :: sexp_args)
        as sexp) ->
index 4dc799a..1d2512d 100644 (file)
@@ -33,11 +33,11 @@ let test_parse_gen xs ext =
   Flag_parsing_c.debug_etdt := false;
   Flag_parsing_c.filter_msg := true;
 
-  let dirname_opt =
+  (*let dirname_opt =
     match xs with
     | [x] when is_directory x -> Some x
     | _ -> None
-  in
+  in*)
 
   (* old:
      let xs = if !Flag.dir then
index 15217bd..5a65f89 100644 (file)
@@ -782,7 +782,6 @@ let rec paren_to_space = function
   | [x;y] -> [x;y]
   | ((T2(_,Ctx,_)) as a)::((T2(t,Min _,_)) as b)::((T2(_,Ctx,_)) as c)::rest
     when not (is_whitespace a) && TH.str_of_tok t = "(" ->
-      simple_print_all_tokens2 [a;b;c];
       a :: b :: (C2 " ") :: (paren_to_space (c :: rest))
   | a :: rest -> a :: (paren_to_space rest)
 
index 5fbaa8a..6eab5bb 100644 (file)
@@ -564,7 +564,19 @@ and ft_space ty =
 
 and declaration d =
   match Ast.unwrap d with
-    Ast.Init(stg,ty,id,eq,ini,sem) ->
+    Ast.MetaDecl(name,_,_) ->
+      handle_metavar name
+       (function
+           Ast_c.MetaDeclVal d ->
+              pretty_print_c.Pretty_print_c.decl d
+          | _ -> raise Impossible)
+  | Ast.MetaField(name,_,_) ->
+      handle_metavar name
+       (function
+           Ast_c.MetaFieldVal d ->
+              pretty_print_c.Pretty_print_c.field d
+          | _ -> raise Impossible)
+  | Ast.Init(stg,ty,id,eq,ini,sem) ->
       print_option (mcode storage) stg;
       print_option (function _ -> pr_space()) stg;
       print_named_type ty id;
@@ -584,7 +596,7 @@ and declaration d =
       mcode print_string stg;
       fullType ty; typeC id;
       mcode print_string sem
-  | Ast.DisjDecl(_) | Ast.MetaDecl(_,_,_) -> raise CantBeInPlus
+  | Ast.DisjDecl(_) -> raise CantBeInPlus
   | Ast.Ddots(_,_) -> raise CantBeInPlus
   | Ast.OptDecl(decl)  | Ast.UniqueDecl(decl) ->
       raise CantBeInPlus
index f9e0305..ecad98f 100644 (file)
@@ -234,6 +234,8 @@ let print_extra_typedefs pr env =
 
       | Ast_c.MetaTypeVal(ty) -> Visitor_c.vk_type bigf ty
       | Ast_c.MetaInitVal(ty) -> Visitor_c.vk_ini bigf ty
+      | Ast_c.MetaDeclVal(decl) -> Visitor_c.vk_decl bigf decl
+      | Ast_c.MetaFieldVal(field) -> Visitor_c.vk_struct_field bigf field
       | Ast_c.MetaStmtVal(stm) -> Visitor_c.vk_statement bigf stm
       | Ast_c.MetaPosVal _ | Ast_c.MetaPosValList _
       | Ast_c.MetaListlenVal _ -> ())
@@ -277,6 +279,10 @@ let rename argids env =
           Ast_c.MetaTypeVal(Visitor_c.vk_type_s bigf ty)
        | Ast_c.MetaInitVal(ini) ->
           Ast_c.MetaInitVal(Visitor_c.vk_ini_s bigf ini)
+       | Ast_c.MetaDeclVal(stm) ->
+          Ast_c.MetaDeclVal(Visitor_c.vk_decl_s bigf stm)
+       | Ast_c.MetaFieldVal(stm) ->
+          Ast_c.MetaFieldVal(Visitor_c.vk_struct_field_s bigf stm)
        | Ast_c.MetaStmtVal(stm) ->
           Ast_c.MetaStmtVal(Visitor_c.vk_statement_s bigf stm)
        | Ast_c.MetaPosVal _ | Ast_c.MetaPosValList _
@@ -356,6 +362,10 @@ let pp_meta_decl pr env decl =
   | Ast.MetaExpListDecl(ar, name, Ast.CstLen len) ->
       no_arity ar; pr "parameter list ";
       pp_name name; pr "["; pr (string_of_int len); pr "]"; pr ";\n"
+  | Ast.MetaDeclDecl(ar, name) ->
+      no_arity ar; pr "declaration "; pp_name name; pr ";\n"
+  | Ast.MetaFieldDecl(ar, name) ->
+      no_arity ar; pr "field "; pp_name name; pr ";\n"
   | Ast.MetaStmDecl(ar, name) ->
       no_arity ar; pr "statement "; pp_name name; pr ";\n"
   | Ast.MetaStmListDecl(ar, name) ->
index 6d6c558..b05ac5f 100644 (file)
@@ -1376,31 +1376,30 @@ and vk_struct_fieldkinds_s = fun bigf onefield_multivars ->
     ), iif iicomma
   )
 
-and vk_struct_fields_s = fun bigf fields ->
-
+and vk_struct_field_s = fun bigf field ->
   let iif ii = vk_ii_s bigf ii in
 
-  fields +> List.map (fun (field) ->
-    (match field with
-    | (DeclarationField (FieldDeclList (onefield_multivars, iiptvirg))) ->
-        DeclarationField
-          (FieldDeclList
-              (vk_struct_fieldkinds_s bigf onefield_multivars, iif iiptvirg))
-    | EmptyField info -> EmptyField (vk_info_s bigf info)
-    | MacroDeclField ((s, args),ii) ->
-        MacroDeclField
-          ((s,
-           args +> List.map (fun (e,ii) -> vk_argument_s bigf e, iif ii)
-           ),
-          iif ii)
+  match field with
+    (DeclarationField (FieldDeclList (onefield_multivars, iiptvirg))) ->
+      DeclarationField
+        (FieldDeclList
+           (vk_struct_fieldkinds_s bigf onefield_multivars, iif iiptvirg))
+  | EmptyField info -> EmptyField (vk_info_s bigf info)
+  | MacroDeclField ((s, args),ii) ->
+      MacroDeclField
+        ((s,
+          args +> List.map (fun (e,ii) -> vk_argument_s bigf e, iif ii)
+         ),
+         iif ii)
+
+  | CppDirectiveStruct directive ->
+      CppDirectiveStruct (vk_cpp_directive_s bigf directive)
+  | IfdefStruct ifdef ->
+      IfdefStruct (vk_ifdef_directive_s bigf ifdef)
 
-    | CppDirectiveStruct directive ->
-        CppDirectiveStruct (vk_cpp_directive_s bigf directive)
-    | IfdefStruct ifdef ->
-        IfdefStruct (vk_ifdef_directive_s bigf ifdef)
+and vk_struct_fields_s = fun bigf fields ->
 
-    )
-  )
+  fields +> List.map (vk_struct_field_s bigf)
 
 
 and vk_def_s = fun bigf d ->
index c7bc674..72e7dd2 100644 (file)
@@ -50,6 +50,7 @@ val vk_param_list : visitor_c -> parameterType wrap2 list -> unit
 val vk_params_splitted :
   visitor_c -> (parameterType, il) Common.either list -> unit
 
+val vk_struct_field : visitor_c -> field -> unit
 val vk_struct_fields : visitor_c -> field list -> unit
 val vk_struct_fieldkinds : visitor_c -> fieldkind wrap list -> unit
 
@@ -129,6 +130,7 @@ val vk_define_params_splitted_s :
   (string Ast_c.wrap, il) Common.either list ->
   (string Ast_c.wrap, il) Common.either list
 
+val vk_struct_field_s : visitor_c_s -> field -> field
 val vk_struct_fields_s : visitor_c_s -> field list -> field list
 
 val vk_cst_s : visitor_c_s -> ((constant, string) Common.either wrap) inout
index 6c55d6d..54597ed 100644 (file)
@@ -55,7 +55,13 @@ let update_after pragmas (info,x) =
 
 let rec right_decl d =
   match Ast0.unwrap d with
-    Ast0.Init(Some stg,ty,id,eq,ini,sem) ->
+    Ast0.MetaDecl(name,pure) ->
+      call_right right_mcode name d
+       (function name -> Ast0.MetaDecl(name,pure))
+  | Ast0.MetaField(name,pure) ->
+      call_right right_mcode name d
+       (function name -> Ast0.MetaField(name,pure))
+  | Ast0.Init(Some stg,ty,id,eq,ini,sem) ->
       call_right right_mcode sem d
        (function sem -> Ast0.Init(Some stg,ty,id,eq,ini,sem))
   | Ast0.Init(None,ty,id,eq,ini,sem) ->
@@ -241,7 +247,13 @@ let left_fundecl name fninfo =
 
 let rec left_decl decl =
   match Ast0.unwrap decl with
-    Ast0.Init(Some stg,ty,id,eq,ini,sem) ->
+    Ast0.MetaDecl(name,pure) ->
+      call_right right_mcode name decl
+       (function name -> Ast0.MetaDecl(name,pure))
+  | Ast0.MetaField(name,pure) ->
+      call_right right_mcode name decl
+       (function name -> Ast0.MetaField(name,pure))
+  | Ast0.Init(Some stg,ty,id,eq,ini,sem) ->
       call_right left_mcode stg decl
        (function stg -> Ast0.Init(Some stg,ty,id,eq,ini,sem))
   | Ast0.Init(None,ty,id,eq,ini,sem) ->
index 824d692..4525d45 100644 (file)
@@ -465,7 +465,15 @@ and make_decl =
 
 and declaration tgt decl =
   match Ast0.unwrap decl with
-    Ast0.Init(stg,ty,id,eq,exp,sem) ->
+    Ast0.MetaDecl(name,pure) ->
+      let arity = all_same true tgt (mcode2line name) [mcode2arity name] in
+      let name = mcode name in
+      make_decl decl tgt arity (Ast0.MetaDecl(name,pure))
+  | Ast0.MetaField(name,pure) ->
+      let arity = all_same true tgt (mcode2line name) [mcode2arity name] in
+      let name = mcode name in
+      make_decl decl tgt arity (Ast0.MetaField(name,pure))
+  | Ast0.Init(stg,ty,id,eq,exp,sem) ->
       let arity =
        all_same true tgt (mcode2line eq)
          ((match stg with None -> [] | Some x -> [mcode2arity x]) @
index aeea8a1..191962b 100644 (file)
@@ -204,7 +204,12 @@ and typeC = base_typeC wrap
    split out into multiple declarations of a single variable each. *)
 
 and base_declaration =
-    Init of Ast.storage mcode option * typeC * ident * string mcode (*=*) *
+    MetaDecl of Ast.meta_name mcode * pure (* variables *)
+    (* the following are kept separate from MetaDecls because ultimately
+       they don't match the same thin at all.  Consider whether there
+       should be a separate type for fields, as in the C AST *)
+  | MetaField of Ast.meta_name mcode * pure (* structure fields *)
+  | Init of Ast.storage mcode option * typeC * ident * string mcode (*=*) *
        initialiser * string mcode (*;*)
   | UnInit of Ast.storage mcode option * typeC * ident * string mcode (* ; *)
   | TyDecl of typeC * string mcode (* ; *)
@@ -406,6 +411,7 @@ and parsed_rule =
   | ScriptRule of string (* name *) *
       string * Ast.dependency *
        (Ast.script_meta_name * Ast.meta_name * Ast.metavar) list *
+       Ast.meta_name list (*script vars*) *
        string
   | InitialScriptRule of  string (* name *) *string * Ast.dependency * string
   | FinalScriptRule of  string (* name *) *string * Ast.dependency * string
index 31b3e47..0229c1b 100644 (file)
@@ -194,7 +194,9 @@ and typeC = base_typeC wrap
    split out into multiple declarations of a single variable each. *)
 
 and base_declaration =
-    Init       of Ast_cocci.storage mcode option * typeC * ident *
+    MetaDecl   of Ast_cocci.meta_name mcode * pure
+  | MetaField  of Ast_cocci.meta_name mcode * pure (* structure fields *)
+  | Init       of Ast_cocci.storage mcode option * typeC * ident *
        string mcode (*=*) * initialiser * string mcode (*;*)
   | UnInit     of Ast_cocci.storage mcode option * typeC * ident *
        string mcode (* ; *)
@@ -399,7 +401,8 @@ and parsed_rule =
   | ScriptRule of string (* name *) *
       string * Ast_cocci.dependency *
        (Ast_cocci.script_meta_name *
-          Ast_cocci.meta_name * Ast_cocci.metavar) list *
+          Ast_cocci.meta_name * Ast_cocci.metavar) list (*inherited vars*) *
+       Ast_cocci.meta_name list (*script vars*) *
        string
   | InitialScriptRule of string (* name *) *
       string (*language*) * Ast_cocci.dependency * string (*code*)
index e331afe..66855b9 100644 (file)
@@ -485,7 +485,9 @@ and base_typeC t =
 and declaration d =
   rewrap d (do_isos (Ast0.get_iso d))
     (match Ast0.unwrap d with
-      Ast0.Init(stg,ty,id,eq,ini,sem) ->
+      Ast0.MetaDecl(name,_) -> Ast.MetaDecl(mcode name,unitary,false)
+    | Ast0.MetaField(name,_) -> Ast.MetaField(mcode name,unitary,false)
+    | Ast0.Init(stg,ty,id,eq,ini,sem) ->
        let stg = get_option mcode stg in
        let ty = typeC ty in
        let id = ident id in
index 096a273..8e7b4a2 100644 (file)
@@ -114,6 +114,8 @@ and metavar =
   | MetaLocalIdExpDecl of
       arity * meta_name (* name *) * Type_cocci.typeC list option
   | MetaExpListDecl of arity * meta_name (*name*) * list_len (*len*)
+  | MetaDeclDecl of arity * meta_name (* name *)
+  | MetaFieldDecl of arity * meta_name (* name *)
   | MetaStmDecl of arity * meta_name (* name *)
   | MetaStmListDecl of arity * meta_name (* name *)
   | MetaFuncDecl of arity * meta_name (* name *)
@@ -314,6 +316,7 @@ and base_declaration =
   | Ddots    of string mcode (* ... *) * declaration option (* whencode *)
 
   | MetaDecl of meta_name mcode * keep_binding * inherited
+  | MetaField of meta_name mcode * keep_binding * inherited
 
   | OptDecl    of declaration
   | UniqueDecl of declaration
@@ -575,7 +578,8 @@ and rule =
   | ScriptRule of string (* name *) *
       (* metaname for python (untyped), metavar for ocaml (typed) *)
       string * dependency *
-       (script_meta_name * meta_name * metavar) list * string
+       (script_meta_name * meta_name * metavar) list (*inherited vars*) *
+       meta_name list (*script vars*) * string
   | InitialScriptRule of  string (* name *) *
        string (*language*) * dependency * string (*code*)
   | FinalScriptRule of  string (* name *) *
@@ -700,6 +704,8 @@ let get_meta_name = function
   | MetaIdExpDecl(ar,nm,ty) -> nm
   | MetaLocalIdExpDecl(ar,nm,ty) -> nm
   | MetaExpListDecl(ar,nm,nm1) -> nm
+  | MetaDeclDecl(ar,nm) -> nm
+  | MetaFieldDecl(ar,nm) -> nm
   | MetaStmDecl(ar,nm) -> nm
   | MetaStmListDecl(ar,nm) -> nm
   | MetaFuncDecl(ar,nm) -> nm
index 200e6d4..4d71238 100644 (file)
@@ -100,6 +100,8 @@ and metavar =
   | MetaLocalIdExpDecl of
       arity * meta_name (* name *) * Type_cocci.typeC list option
   | MetaExpListDecl of arity * meta_name (*name*) * list_len (*len*)
+  | MetaDeclDecl of arity * meta_name (* name *)
+  | MetaFieldDecl of arity * meta_name (* name *)
   | MetaStmDecl of arity * meta_name (* name *)
   | MetaStmListDecl of arity * meta_name (* name *)
   | MetaFuncDecl of arity * meta_name (* name *)
@@ -293,6 +295,7 @@ and base_declaration =
   | Ddots    of string mcode (* ... *) * declaration option (* whencode *)
 
   | MetaDecl of meta_name mcode * keep_binding * inherited
+  | MetaField of meta_name mcode * keep_binding * inherited
 
   | OptDecl    of declaration
   | UniqueDecl of declaration
@@ -548,7 +551,8 @@ and rule =
        top_level list * bool list (* true if generates an exp *) * ruletype
   | ScriptRule of string (* name *) *
       string * dependency *
-       (script_meta_name * meta_name * metavar) list * string
+       (script_meta_name * meta_name * metavar) list *
+       meta_name list (*script vars*) * string
   | InitialScriptRule of  string (* name *) *
        string * dependency * string
   | FinalScriptRule of  string (* name *) *
index 526e2c0..55c7780 100644 (file)
@@ -224,7 +224,9 @@ and typeC old_metas table minus t =
 
 and declaration context old_metas table minus d =
   match Ast0.unwrap d with
-    Ast0.Init(stg,ty,id,eq,ini,sem) ->
+    Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) ->
+      check_table table minus name
+  | Ast0.Init(stg,ty,id,eq,ini,sem) ->
       (match Ast0.unwrap ini with
        Ast0.InitExpr exp ->
          typeC old_metas table minus ty;
index 6bcb0f7..58279b9 100644 (file)
@@ -432,7 +432,9 @@ and is_decl_dots s =
 
 and declaration d =
   match Ast0.unwrap d with
-    Ast0.Init(stg,ty,id,eq,exp,sem) ->
+    (Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_)) as up ->
+      let ln = promote_mcode name in mkres d up ln ln
+  | Ast0.Init(stg,ty,id,eq,exp,sem) ->
       let ty = typeC ty in
       let id = ident id in
       let exp = initialiser exp in
index 686b727..53e5855 100644 (file)
@@ -562,7 +562,10 @@ let rec equal_typeC t1 t2 =
 
 let equal_declaration d1 d2 =
   match (Ast0.unwrap d1,Ast0.unwrap d2) with
-    (Ast0.Init(stg1,_,_,eq1,_,sem1),Ast0.Init(stg2,_,_,eq2,_,sem2)) ->
+    (Ast0.MetaDecl(name1,_),Ast0.MetaDecl(name2,_))
+  | (Ast0.MetaField(name1,_),Ast0.MetaField(name2,_)) ->
+      equal_mcode name1 name2
+  | (Ast0.Init(stg1,_,_,eq1,_,sem1),Ast0.Init(stg2,_,_,eq2,_,sem2)) ->
       equal_option stg1 stg2 && equal_mcode eq1 eq2 && equal_mcode sem1 sem2
   | (Ast0.UnInit(stg1,_,_,sem1),Ast0.UnInit(stg2,_,_,sem2)) ->
       equal_option stg1 stg2 && equal_mcode sem1 sem2
index d744fee..75a83e5 100644 (file)
@@ -135,6 +135,12 @@ let add_explist_meta:
     (Ast.meta_name -> Ast.list_len -> Ast0.pure -> unit) ref =
   ref (fun _ -> failwith "uninitialized add_meta")
 
+let add_decl_meta: (Ast.meta_name -> Ast0.pure -> unit) ref =
+  ref (fun _ -> failwith "uninitialized add_meta")
+
+let add_field_meta: (Ast.meta_name -> Ast0.pure -> unit) ref =
+  ref (fun _ -> failwith "uninitialized add_meta")
+
 let add_stm_meta: (Ast.meta_name -> Ast0.pure -> unit) ref =
   ref (fun _ -> failwith "uninitialized add_meta")
 
index 43bd928..87be3fd 100644 (file)
@@ -106,6 +106,10 @@ val add_explist_meta:
     (Ast_cocci.meta_name -> Ast_cocci.list_len -> Ast0_cocci.pure ->
       unit) ref
 
+val add_decl_meta: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref
+
+val add_field_meta: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref
+
 val add_stm_meta: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref
 
 val add_stmlist_meta: (Ast_cocci.meta_name -> Ast0_cocci.pure -> unit) ref
index 7076a59..00349ee 100644 (file)
@@ -241,7 +241,8 @@ and designator = function
 
 and disjdecl d =
   match Ast.unwrap d with
-    Ast.Init(stg,ty,id,eq,ini,sem) ->
+    Ast.MetaDecl(_,_,_) | Ast.MetaField(_,_,_) -> [d]
+  | Ast.Init(stg,ty,id,eq,ini,sem) ->
       disjmult2 (disjty ty) (disjini ini)
        (function ty -> function ini ->
          Ast.rewrap d (Ast.Init(stg,ty,id,eq,ini,sem)))
@@ -259,7 +260,7 @@ and disjdecl d =
       let ty = disjty ty in (* disj not allowed in id *)
       List.map (function ty -> Ast.rewrap d (Ast.Typedef(stg,ty,id,sem))) ty
   | Ast.DisjDecl(decls) -> List.concat (List.map disjdecl decls)
-  | Ast.Ddots(_,_) | Ast.MetaDecl(_,_,_) -> [d]
+  | Ast.Ddots(_,_) -> [d]
   | Ast.OptDecl(decl) ->
       let decl = disjdecl decl in
       List.map (function decl -> Ast.rewrap d (Ast.OptDecl(decl))) decl
index 4b22f4a..0868f02 100644 (file)
@@ -31,3 +31,4 @@ let show_SP = ref false
 let show_iso_failures = ref true
 
 let iso_limit = ref (None : int option) (*(Some 3)*)
+let disabled_isos = ref ([] : string list)
index 7589b32..32d2584 100644 (file)
@@ -140,7 +140,8 @@ let collect_refs include_constraints =
   let astfvdecls recursor k d =
     bind (k d)
       (match Ast.unwrap d with
-       Ast.DisjDecl(decls) -> bind_disj (List.map k decls)
+       Ast.MetaDecl(name,_,_) | Ast.MetaField(name,_,_) -> [metaid name]
+      | Ast.DisjDecl(decls) -> bind_disj (List.map k decls)
       | _ -> option_default) in
 
   let astfvfullType recursor k ty =
@@ -283,6 +284,13 @@ let collect_saved =
       | Ast.MetaParamList(name,_,_,_) -> [metaid name]
       | _ -> option_default) in
 
+  let astfvdecls recursor k d =
+    bind (k d)
+      (match Ast.unwrap d with
+       Ast.MetaDecl(name,TC.Saved,_) | Ast.MetaField(name,TC.Saved,_) ->
+         [metaid name]
+      | _ -> option_default) in
+
   let astfvrule_elem recursor k re =
     (*within a rule_elem, pattern3 manages the coherence of the bindings*)
     bind (k re)
@@ -301,7 +309,7 @@ let collect_saved =
     mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode
     donothing donothing donothing donothing
     astfvident astfvexpr donothing astfvtypeC astfvinit astfvparam
-    donothing astfvrule_elem donothing donothing donothing donothing
+    astfvdecls astfvrule_elem donothing donothing donothing donothing
 
 (* ---------------------------------------------------------------- *)
 
@@ -550,6 +558,17 @@ let classify_variables metavar_decls minirules used_after =
        Ast.rewrap e (Ast.MetaParamList(name,lenname,unitary,inherited))
     | _ -> e in
 
+  let decl r k e =
+    let e = k e in
+    match Ast.unwrap e with
+      Ast.MetaDecl(name,_,_) ->
+       let (unitary,inherited) = classify name in
+       Ast.rewrap e (Ast.MetaDecl(name,unitary,inherited))
+    | Ast.MetaField(name,_,_) ->
+       let (unitary,inherited) = classify name in
+       Ast.rewrap e (Ast.MetaField(name,unitary,inherited))
+    | _ -> e in
+
   let rule_elem r k e =
     let e = k e in
     match Ast.unwrap e with
@@ -564,7 +583,7 @@ let classify_variables metavar_decls minirules used_after =
   let fn = V.rebuilder
       mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode
       donothing donothing donothing donothing
-      ident expression donothing typeC init param donothing rule_elem
+      ident expression donothing typeC init param decl rule_elem
       donothing donothing donothing donothing in
 
   List.map fn.V.rebuilder_top_level minirules
@@ -717,7 +736,10 @@ let collect_astfvs rules =
       [] -> []
     | (metavars, rule)::rules ->
         match rule with
-          Ast.ScriptRule (_,_,_,_,_)
+          Ast.ScriptRule (_,_,_,_,script_vars,_) ->
+           (* why are metavars in rule, but outside for cocci rule??? *)
+            let bound = script_vars @ bound in
+           rule::(loop bound rules)
        | Ast.InitialScriptRule (_,_,_,_) | Ast.FinalScriptRule (_,_,_,_) ->
            (* bound stays as is because script rules have no names, so no
               inheritance is possible *)
@@ -789,13 +811,16 @@ let collect_top_level_used_after metavar_rule_list =
     List.fold_right
       (function (metavar_list,r) ->
        function (used_after,used_after_lists) ->
-         let locally_defined = List.map Ast.get_meta_name metavar_list in
+         let locally_defined =
+            match r with
+              Ast.ScriptRule (_,_,_,_,free_vars,_) -> free_vars
+           | _ -> List.map Ast.get_meta_name metavar_list in
          let continue_propagation =
            List.filter (function x -> not(List.mem x locally_defined))
              used_after in
          let free_vars =
             match r with
-              Ast.ScriptRule (_,_,_,mv,_) ->
+              Ast.ScriptRule (_,_,_,mv,_,_) ->
                 drop_virt(List.map (function (_,(r,v),_) -> (r,v)) mv)
             | Ast.InitialScriptRule (_,_,_,_)
            | Ast.FinalScriptRule (_,_,_,_) -> []
@@ -905,9 +930,9 @@ let collect_used_after metavar_rule_list =
     (function (metavars,r) ->
       function used_after ->
         match r with
-          Ast.ScriptRule (_,_,_,_,_)
+          Ast.ScriptRule (_,_,_,_,_,_) (* no minirules, so nothing to do? *)
        | Ast.InitialScriptRule (_,_,_,_) | Ast.FinalScriptRule (_,_,_,_) ->
-           ([], [used_after], [], [])
+           ([], [used_after], [[]], [])
         | Ast.CocciRule (name, rule_info, minirules, _,_) ->
           collect_local_used_after metavars minirules used_after
     )
@@ -931,7 +956,7 @@ let free_vars rules =
     List.map
       (function (mv, r) ->
          match r with
-           Ast.ScriptRule _
+           Ast.ScriptRule _ (* doesn't declare position variables *)
         | Ast.InitialScriptRule _ | Ast.FinalScriptRule _ -> []
          | Ast.CocciRule (_,_,rule,_,_) ->
            let positions =
index 2c87190..3864d91 100644 (file)
@@ -221,7 +221,9 @@ let check_inherited nm =
 
   let strictdecls recursor k d =
     match Ast.unwrap d with
-      Ast.DisjDecl(decls) -> option_default
+      Ast.MetaDecl(name,_,_) | Ast.MetaField(name,_,_) ->
+       bind (k p) (minherited name)
+    | Ast.DisjDecl(decls) -> option_default
     | _ -> k d in
 
   let strictfullType recursor k ty =
index dd23575..8bdbd5f 100644 (file)
@@ -54,6 +54,52 @@ wanted *)
 type combine =
     And of combine list | Or of combine list | Elem of string | False | True
 
+(* glimpse often fails on large queries.  We can safely remove arguments of
+&& as long as we don't remove all of them (note that there is no negation).
+This tries just removing one of them and then orders the results by
+increasing number of ors (ors are long, increasing the chance of failure,
+and are less restrictive, possibly increasing the chance of irrelevant
+code. *)
+let reduce_glimpse x =
+  let rec loop x k q =
+    match x with
+      Elem _ -> q()
+    | And [x] -> loop x (function changed_l -> k (And [changed_l])) q
+    | And l ->
+       kloop l
+         (function changed_l -> k (And changed_l))
+         (function _ ->
+           let rec rloop l k =
+             match l with
+               [] -> q()
+             | x::xs ->
+                 (k xs) ::
+                 rloop xs (function changed_xs -> k (x :: changed_xs)) in
+           rloop l (function changed_l -> k (And changed_l)))
+    | Or l -> kloop l (function changed_l -> k (Or changed_l)) q
+    | _ -> failwith "not possible"
+  and kloop l k q =
+    match l with
+      [] -> q()
+    | x::xs ->
+       loop x
+         (function changed_x -> k (changed_x::xs))
+         (function _ ->
+           kloop xs
+             (function changed_xs -> k (x :: changed_xs))
+             q) in
+  let rec count_ors = function
+      Elem _ -> 0
+    | And l -> List.fold_left (+) 0 (List.map count_ors l)
+    | Or l ->
+       ((List.length l) - 1) +
+         (List.fold_left (+) 0 (List.map count_ors l))
+    | _ -> failwith "not possible" in
+  let res = loop x (function x -> x) (function _ -> []) in
+  let res = List.map (function x -> (count_ors x,x)) res in
+  let res = List.sort compare res in
+  List.map (function (_,x) -> x) res
+
 let interpret_glimpse strict x =
   let rec loop = function
       Elem x -> x
@@ -73,7 +119,8 @@ let interpret_glimpse strict x =
     True -> None
   | False when strict ->
       failwith "False should not be in the final result.  Perhaps your rule doesn't contain any +/-/* code"
-  | _ -> Some [(loop x)]
+  | _ ->
+      Some (if strict then List.map loop (x::reduce_glimpse x) else [loop x])
 
 (* grep only does or *)
 let interpret_grep strict x =
@@ -307,7 +354,9 @@ let do_get_constants constants keywords env neg_pos =
 
   let declaration r k d =
     match Ast.unwrap d with
-      Ast.DisjDecl(decls) ->
+      Ast.MetaDecl(name,_,_) | Ast.MetaField(name,_,_) ->
+       bind (k d) (minherited name)
+    | Ast.DisjDecl(decls) ->
        disj_union_all (List.map r.V.combiner_declaration decls)
     | Ast.OptDecl(decl) -> option_default
     | Ast.Ddots(dots,whencode) -> option_default
@@ -557,7 +606,7 @@ let run rules neg_pos_vars =
     List.fold_left
       (function (rest_info,in_plus,env,locals(*dom of env*)) ->
         function
-           (Ast.ScriptRule (_,_,deps,mv,_),_) ->
+           (Ast.ScriptRule (nm,_,deps,mv,_,_),_) ->
              let extra_deps =
                List.fold_left
                  (function prev ->
@@ -567,7 +616,7 @@ let run rules neg_pos_vars =
                      else Ast.AndDep (Ast.Dep rule,prev))
                  deps mv in
              (match dependencies env extra_deps with
-               False -> (rest_info, in_plus, env, locals)
+               False -> (rest_info, in_plus, (nm,True)::env, nm::locals)
              | dependencies ->
                  (build_or dependencies rest_info, in_plus, env, locals))
           | (Ast.InitialScriptRule (_,_,deps,_),_)
index 7c39fff..b30aa16 100644 (file)
@@ -23,7 +23,7 @@
 
 
 (* create an index for each constructor *)
-(* current max is 147 *)
+(* current max is 149 *)
 
 (* doesn't really work - requires that identical terms with no token
 subterms (eg dots) not appear on the same line *)
@@ -137,7 +137,9 @@ let typeC t =
 
 let declaration d =
   match Ast0.unwrap d with
-    Ast0.Init(stg,ty,id,eq,exp,sem) -> [54]
+    Ast0.MetaDecl(name,_) -> [148]
+  | Ast0.MetaField(name,_) -> [149]
+  | Ast0.Init(stg,ty,id,eq,exp,sem) -> [54]
   | Ast0.UnInit(stg,ty,id,sem) -> [55]
   | Ast0.MacroDecl(name,lp,args,rp,sem) -> [137]
   | Ast0.TyDecl(ty,sem) -> [116]
index 08e00ae..aa8cc1d 100644 (file)
@@ -408,6 +408,12 @@ let match_maker checks_needed context_required whencode_allowed =
          Ast0.MetaParam(name,pure) | Ast0.MetaParamList(name,_,pure) -> pure
        | _ -> Ast0.Impure) in
 
+    let decl r k d =
+      bind (bind (pure_mcodekind (Ast0.get_mcodekind d)) (k d))
+       (match Ast0.unwrap d with
+         Ast0.MetaDecl(name,pure) | Ast0.MetaField(name,pure) -> pure
+       | _ -> Ast0.Impure) in
+
     let stmt r k s =
       bind (bind (pure_mcodekind (Ast0.get_mcodekind s)) (k s))
        (match Ast0.unwrap s with
@@ -417,7 +423,7 @@ let match_maker checks_needed context_required whencode_allowed =
     V0.flat_combiner bind option_default
       mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode mcode
       donothing donothing donothing donothing donothing donothing
-      ident expression typeC init param donothing stmt donothing
+      ident expression typeC init param decl stmt donothing
       donothing in
 
   let add_pure_list_binding name pure is_pure builder1 builder2 lst =
@@ -808,63 +814,73 @@ let match_maker checks_needed context_required whencode_allowed =
        else return_false (ContextRequired (Ast0.TypeCTag t))
 
   and match_decl pattern d =
-    if not(checks_needed) or not(context_required) or is_context d
-    then
-      match (Ast0.unwrap pattern,Ast0.unwrap d) with
-       (Ast0.Init(stga,tya,ida,eq1,inia,sc1),
-        Ast0.Init(stgb,tyb,idb,eq,inib,sc)) ->
-         if bool_match_option mcode_equal stga stgb
-         then
-           conjunct_many_bindings
-             [check_mcode eq1 eq; check_mcode sc1 sc;
-               match_option check_mcode stga stgb;
-               match_typeC tya tyb; match_ident ida idb;
-               match_init inia inib]
-         else return false
-      | (Ast0.UnInit(stga,tya,ida,sc1),Ast0.UnInit(stgb,tyb,idb,sc)) ->
-         if bool_match_option mcode_equal stga stgb
-         then
-           conjunct_many_bindings
-             [check_mcode sc1 sc; match_option check_mcode stga stgb;
-               match_typeC tya tyb; match_ident ida idb]
-         else return false
-      | (Ast0.MacroDecl(namea,lp1,argsa,rp1,sc1),
-        Ast0.MacroDecl(nameb,lp,argsb,rp,sc)) ->
-          conjunct_many_bindings
-            [match_ident namea nameb;
-              check_mcode lp1 lp; check_mcode rp1 rp;
-              check_mcode sc1 sc;
-              match_dots match_expr is_elist_matcher do_elist_match
-                argsa argsb]
-      | (Ast0.TyDecl(tya,sc1),Ast0.TyDecl(tyb,sc)) ->
-         conjunct_bindings (check_mcode sc1 sc) (match_typeC tya tyb)
-      | (Ast0.Typedef(stga,tya,ida,sc1),Ast0.Typedef(stgb,tyb,idb,sc)) ->
-         conjunct_bindings (check_mcode sc1 sc)
-           (conjunct_bindings (match_typeC tya tyb) (match_typeC ida idb))
-      | (Ast0.DisjDecl(_,declsa,_,_),Ast0.DisjDecl(_,declsb,_,_)) ->
-         failwith "not allowed in the pattern of an isomorphism"
-      | (Ast0.Ddots(d1,None),Ast0.Ddots(d,None)) -> check_mcode d1 d
-      |        (Ast0.Ddots(dd,None),Ast0.Ddots(d,Some wc)) ->
-         conjunct_bindings (check_mcode dd d)
+    match Ast0.unwrap pattern with
+      Ast0.MetaDecl(name,pure) ->
+       add_pure_binding name pure pure_sp_code.VT0.combiner_rec_declaration
+         (function d -> Ast0.DeclTag d)
+         d
+    | Ast0.MetaField(name,pure) ->
+       add_pure_binding name pure pure_sp_code.VT0.combiner_rec_declaration
+         (function d -> Ast0.DeclTag d)
+         d
+    | up ->
+       if not(checks_needed) or not(context_required) or is_context d
+       then
+         match (up,Ast0.unwrap d) with
+           (Ast0.Init(stga,tya,ida,eq1,inia,sc1),
+            Ast0.Init(stgb,tyb,idb,eq,inib,sc)) ->
+              if bool_match_option mcode_equal stga stgb
+              then
+                conjunct_many_bindings
+                  [check_mcode eq1 eq; check_mcode sc1 sc;
+                    match_option check_mcode stga stgb;
+                    match_typeC tya tyb; match_ident ida idb;
+                    match_init inia inib]
+              else return false
+         | (Ast0.UnInit(stga,tya,ida,sc1),Ast0.UnInit(stgb,tyb,idb,sc)) ->
+             if bool_match_option mcode_equal stga stgb
+             then
+               conjunct_many_bindings
+                 [check_mcode sc1 sc; match_option check_mcode stga stgb;
+                   match_typeC tya tyb; match_ident ida idb]
+             else return false
+         | (Ast0.MacroDecl(namea,lp1,argsa,rp1,sc1),
+            Ast0.MacroDecl(nameb,lp,argsb,rp,sc)) ->
+              conjunct_many_bindings
+                [match_ident namea nameb;
+                  check_mcode lp1 lp; check_mcode rp1 rp;
+                  check_mcode sc1 sc;
+                  match_dots match_expr is_elist_matcher do_elist_match
+                    argsa argsb]
+         | (Ast0.TyDecl(tya,sc1),Ast0.TyDecl(tyb,sc)) ->
+             conjunct_bindings (check_mcode sc1 sc) (match_typeC tya tyb)
+         | (Ast0.Typedef(stga,tya,ida,sc1),Ast0.Typedef(stgb,tyb,idb,sc)) ->
+             conjunct_bindings (check_mcode sc1 sc)
+               (conjunct_bindings (match_typeC tya tyb) (match_typeC ida idb))
+         | (Ast0.DisjDecl(_,declsa,_,_),Ast0.DisjDecl(_,declsb,_,_)) ->
+             failwith "not allowed in the pattern of an isomorphism"
+         | (Ast0.Ddots(d1,None),Ast0.Ddots(d,None)) -> check_mcode d1 d
+         |     (Ast0.Ddots(dd,None),Ast0.Ddots(d,Some wc)) ->
+             conjunct_bindings (check_mcode dd d)
            (* hope that mcode of ddots is unique somehow *)
-           (let (ddots_whencode_allowed,_,_) = whencode_allowed in
-           if ddots_whencode_allowed
-           then add_dot_binding dd (Ast0.DeclTag wc)
-           else
-             (Printf.printf "warning: not applying iso because of whencode";
-              return false))
-      | (Ast0.Ddots(_,Some _),_) ->
-         failwith "whencode not allowed in a pattern1"
-
-      | (Ast0.OptDecl(decla),Ast0.OptDecl(declb))
-      | (Ast0.UniqueDecl(decla),Ast0.UniqueDecl(declb)) ->
-         match_decl decla declb
-      | (_,Ast0.OptDecl(declb))
-      | (_,Ast0.UniqueDecl(declb)) ->
-         match_decl pattern declb
-      | _ -> return false
-    else return_false (ContextRequired (Ast0.DeclTag d))
-
+               (let (ddots_whencode_allowed,_,_) = whencode_allowed in
+               if ddots_whencode_allowed
+               then add_dot_binding dd (Ast0.DeclTag wc)
+               else
+                 (Printf.printf "warning: not applying iso because of whencode";
+                  return false))
+         | (Ast0.Ddots(_,Some _),_) ->
+             failwith "whencode not allowed in a pattern1"
+               
+         | (Ast0.OptDecl(decla),Ast0.OptDecl(declb))
+         | (Ast0.UniqueDecl(decla),Ast0.UniqueDecl(declb)) ->
+             match_decl decla declb
+         | (_,Ast0.OptDecl(declb))
+         | (_,Ast0.UniqueDecl(declb)) ->
+             match_decl pattern declb
+         | _ -> return false
+       else return_false (ContextRequired (Ast0.DeclTag d))
+           
   and match_init pattern i =
     match Ast0.unwrap pattern with
       Ast0.MetaInit(name,pure) ->
@@ -1766,7 +1782,23 @@ let instantiate bindings mv_bindings =
   let declfn r k e =
     let e = k e in
     match Ast0.unwrap e with
-      Ast0.Ddots(d,_) ->
+      Ast0.MetaDecl(name,pure) ->
+       (rebuild_mcode None).VT0.rebuilder_rec_declaration
+         (match lookup name bindings mv_bindings with
+           Common.Left(Ast0.DeclTag(d)) -> d
+         | Common.Left(_) -> failwith "not possible 1"
+         | Common.Right(new_mv) ->
+             Ast0.rewrap e
+               (Ast0.MetaDecl(Ast0.set_mcode_data new_mv name, pure)))
+    | Ast0.MetaField(name,pure) ->
+       (rebuild_mcode None).VT0.rebuilder_rec_declaration
+         (match lookup name bindings mv_bindings with
+           Common.Left(Ast0.DeclTag(d)) -> d
+         | Common.Left(_) -> failwith "not possible 1"
+         | Common.Right(new_mv) ->
+             Ast0.rewrap e
+               (Ast0.MetaField(Ast0.set_mcode_data new_mv name, pure)))
+    | Ast0.Ddots(d,_) ->
        (try
          (match List.assoc (dot_term d) bindings with
            Ast0.DeclTag(exp) -> Ast0.rewrap e (Ast0.Ddots(d,Some exp))
@@ -1801,7 +1833,7 @@ let instantiate bindings mv_bindings =
   let stmtfn r k e =
     let e = k e in
     match Ast0.unwrap e with
-    Ast0.MetaStmt(name,pure) ->
+      Ast0.MetaStmt(name,pure) ->
        (rebuild_mcode None).VT0.rebuilder_rec_statement
          (match lookup name bindings mv_bindings with
            Common.Left(Ast0.StmtTag(stm)) -> stm
@@ -2007,6 +2039,10 @@ let get_name = function
       (nm,function nm -> Ast.MetaLocalIdExpDecl(ar,nm,ty))
   | Ast.MetaExpListDecl(ar,nm,nm1) ->
       (nm,function nm -> Ast.MetaExpListDecl(ar,nm,nm1))
+  | Ast.MetaDeclDecl(ar,nm) ->
+      (nm,function nm -> Ast.MetaDeclDecl(ar,nm))
+  | Ast.MetaFieldDecl(ar,nm) ->
+      (nm,function nm -> Ast.MetaFieldDecl(ar,nm))
   | Ast.MetaStmDecl(ar,nm) ->
       (nm,function nm -> Ast.MetaStmDecl(ar,nm))
   | Ast.MetaStmListDecl(ar,nm) ->
@@ -2043,7 +2079,7 @@ let do_nothing x = x
 
 let mkdisj matcher metavars alts e instantiater mkiso disj_maker minusify
     rebuild_mcodes name printer extra_plus update_others has_context =
-  let call_instantiate bindings mv_bindings alts has_context =
+  let call_instantiate bindings mv_bindings alts pattern has_context =
     List.concat
       (List.map
         (function (a,_,_,_) ->
@@ -2058,6 +2094,9 @@ let mkdisj matcher metavars alts e instantiater mkiso disj_maker minusify
                    then
                      copy_plus printer minusify e (extra_plus e instantiated)
                    else instantiated in
+                 if pattern = a
+                 then plus_added
+                 else (* iso tracking *)
                  Ast0.set_iso plus_added
                    ((name,mkiso a)::(Ast0.get_iso e))) (* keep count, not U *)
                bindings))
@@ -2101,7 +2140,7 @@ let mkdisj matcher metavars alts e instantiater mkiso disj_maker minusify
                  make_new_metavars metavars (nub(List.concat bindings)) in
                Common.Right
                  (new_metavars,
-                  call_instantiate bindings mv_bindings all_alts
+                  call_instantiate bindings mv_bindings all_alts pattern
                     (has_context pattern)))) in
   let rec outer_loop prev_ecount prev_icount prev_dcount = function
       [] | [[_]] (*only one alternative*)  -> (0,[],e) (* nothing matched *)
index 065cf63..30bde85 100644 (file)
@@ -205,6 +205,10 @@ let id_tokens lexbuf =
       check_arity_context_linetype s; TGenerated
   | "expression" when in_meta || in_rule_name ->
       check_arity_context_linetype s; TExpression
+  | "declaration" when in_meta || in_rule_name ->
+      check_arity_context_linetype s; TDeclaration
+  | "field" when in_meta || in_rule_name ->
+      check_arity_context_linetype s; TField
   | "initialiser" when in_meta || in_rule_name ->
       check_arity_context_linetype s; TInitialiser
   | "initializer" when in_meta || in_rule_name ->
@@ -380,6 +384,14 @@ let init _ =
     (function name -> function lenname -> function pure ->
       let fn clt = TMetaExpList(name,lenname,pure,clt) in
       Hashtbl.replace metavariables (get_name name) fn);
+  Data.add_decl_meta :=
+    (function name -> function pure ->
+      let fn clt = TMetaDecl(name,pure,clt) in
+      Hashtbl.replace metavariables (get_name name) fn);
+  Data.add_field_meta :=
+    (function name -> function pure ->
+      let fn clt = TMetaField(name,pure,clt) in
+      Hashtbl.replace metavariables (get_name name) fn);
   Data.add_stm_meta :=
     (function name -> function pure ->
       let fn clt = TMetaStm(name,pure,clt) in
@@ -652,9 +664,9 @@ rule token = parse
   | "||"           { start_line true; TOrLog  (get_current_line_type lexbuf) }
 
   | ">>"           { start_line true;
-                    TShOp(Ast.DecRight,get_current_line_type lexbuf) }
+                    TShROp(Ast.DecRight,get_current_line_type lexbuf) }
   | "<<"           { start_line true;
-                    TShOp(Ast.DecLeft,get_current_line_type lexbuf) }
+                    TShLOp(Ast.DecLeft,get_current_line_type lexbuf) }
 
   | "&"            { start_line true; TAnd    (get_current_line_type lexbuf) }
   | "^"            { start_line true; TXor(get_current_line_type lexbuf) }
index 3008bb2..f9e724b 100644 (file)
@@ -428,7 +428,15 @@ let str2inc s =
   List.map (function "..." -> Ast.IncDots | s -> Ast.IncPath s) elements
 
 (* ---------------------------------------------------------------------- *)
-(* statements *)
+(* declarations and statements *)
+
+let meta_decl name =
+  let (nm,pure,clt) = name in
+  Ast0.wrap(Ast0.MetaDecl(clt2mcode nm clt,pure))
+
+let meta_field name =
+  let (nm,pure,clt) = name in
+  Ast0.wrap(Ast0.MetaField(clt2mcode nm clt,pure))
 
 let meta_stm name =
   let (nm,pure,clt) = name in
@@ -502,35 +510,30 @@ let seq lb s rb =
 
 (* ---------------------------------------------------------------------- *)
 
-let make_iso_rule_name_result n =
-    (try let _ =  Hashtbl.find Data.all_metadecls n in
-    raise (Semantic_cocci.Semantic ("repeated rule name"))
-    with Not_found -> ());
-    Ast.CocciRulename (Some n,Ast.NoDep,[],[],Ast.Undetermined,false (*discarded*))
-
-let make_cocci_rule_name_result nm d i a e ee =
-  match nm with
+let check_rule_name = function
     Some nm ->
       let n = id2name nm in
       (try let _ =  Hashtbl.find Data.all_metadecls n in
       raise (Semantic_cocci.Semantic ("repeated rule name"))
-      with Not_found -> ());
-      Ast.CocciRulename (Some n,d,i,a,e,ee)
-  | None -> Ast.CocciRulename (None,d,i,a,e,ee)
+      with Not_found -> Some n)
+  | None -> None
+
+let make_iso_rule_name_result n =
+  (try let _ =  Hashtbl.find Data.all_metadecls n in
+  raise (Semantic_cocci.Semantic ("repeated rule name"))
+  with Not_found -> ());
+  Ast.CocciRulename
+    (Some n,Ast.NoDep,[],[],Ast.Undetermined,false (*discarded*))
+
+let make_cocci_rule_name_result nm d i a e ee =
+  Ast.CocciRulename (check_rule_name nm,d,i,a,e,ee)
 
 let make_generated_rule_name_result nm d i a e ee =
-  match nm with
-    Some nm ->
-      let n = id2name nm in
-      (try let _ =  Hashtbl.find Data.all_metadecls n in
-      raise (Semantic_cocci.Semantic ("repeated rule name"))
-      with Not_found -> ());
-      Ast.GeneratedRulename (Some n,d,i,a,e,ee)
-  | None -> Ast.GeneratedRulename (None,d,i,a,e,ee)
+  Ast.GeneratedRulename (check_rule_name nm,d,i,a,e,ee)
 
-let make_script_rule_name_result lang deps =
+let make_script_rule_name_result lang nm deps =
   let l = id2name lang in
-  Ast.ScriptRulename (None,l,deps)
+  Ast.ScriptRulename (check_rule_name nm,l,deps)
 
 let make_initial_script_rule_name_result lang deps =
   let l = id2name lang in
index 7c524b7..a37c9fd 100644 (file)
@@ -60,6 +60,8 @@ let token2c (tok,_) =
   | PC.TExpression -> "expression"
   | PC.TIdExpression -> "idexpression"
   | PC.TInitialiser -> "initialiser"
+  | PC.TDeclaration -> "declaration"
+  | PC.TField -> "field"
   | PC.TStatement -> "statement"
   | PC.TPosition -> "position"
   | PC.TPosAny -> "any"
@@ -170,12 +172,8 @@ let token2c (tok,_) =
       |        Ast.SupEq -> ">="
       |        _ -> failwith "not possible")
       ^(line_type2c clt)
-  | PC.TShOp(op,clt) ->
-      (match op with
-       Ast.DecLeft -> "<<"
-      |        Ast.DecRight -> ">>"
-      |        _ -> failwith "not possible")
-      ^(line_type2c clt)
+  | PC.TShLOp(op,clt) -> "<<"^(line_type2c clt)
+  | PC.TShROp(op,clt) -> ">>"^(line_type2c clt)
   | PC.TPlus(clt) -> "+"^(line_type2c clt)
   | PC.TMinus(clt) -> "-"^(line_type2c clt)
   | PC.TMul(clt) -> "*"^(line_type2c clt)
@@ -198,8 +196,10 @@ let token2c (tok,_) =
   | PC.TMetaId(_,_,_,clt)    -> "idmeta"^(line_type2c clt)
   | PC.TMetaType(_,_,clt)    -> "typemeta"^(line_type2c clt)
   | PC.TMetaInit(_,_,clt)    -> "initmeta"^(line_type2c clt)
-  | PC.TMetaStm(_,_,clt)   -> "stmmeta"^(line_type2c clt)
-  | PC.TMetaStmList(_,_,clt)   -> "stmlistmeta"^(line_type2c clt)
+  | PC.TMetaDecl(_,_,clt)    -> "declmeta"^(line_type2c clt)
+  | PC.TMetaField(_,_,clt)   -> "fieldmeta"^(line_type2c clt)
+  | PC.TMetaStm(_,_,clt)     -> "stmmeta"^(line_type2c clt)
+  | PC.TMetaStmList(_,_,clt) -> "stmlistmeta"^(line_type2c clt)
   | PC.TMetaFunc(_,_,_,clt)  -> "funcmeta"^(line_type2c clt)
   | PC.TMetaLocalFunc(_,_,_,clt) -> "funcmeta"^(line_type2c clt)
   | PC.TMetaPos(_,_,_,clt)   -> "posmeta"
@@ -312,7 +312,8 @@ let plus_attachable only_plus (tok,_) =
   | PC.TOrLog(clt) | PC.TAndLog(clt) | PC.TOr(clt) | PC.TXor(clt)
   | PC.TAnd (clt) | PC.TEqEq(clt) | PC.TNotEq(clt) | PC.TTildeEq(clt)
   | PC.TLogOp(_,clt)
-  | PC.TShOp(_,clt) | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
+  | PC.TShLOp(_,clt) | PC.TShROp(_,clt)
+  | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
   | PC.TDmOp(_,clt) | PC.TTilde (clt)
 
   | PC.TMetaParam(_,_,clt) | PC.TMetaParamList(_,_,_,clt)
@@ -322,8 +323,8 @@ let plus_attachable only_plus (tok,_) =
   | PC.TMetaExpList(_,_,_,clt)
   | PC.TMetaId(_,_,_,clt)
   | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaStm(_,_,clt)
-  | PC.TMetaStmList(_,_,clt)  | PC.TMetaFunc(_,_,_,clt)
-  | PC.TMetaLocalFunc(_,_,_,clt)
+  | PC.TMetaStmList(_,_,clt) | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt)
+  | PC.TMetaFunc(_,_,_,clt) | PC.TMetaLocalFunc(_,_,_,clt)
 
   | PC.TWhen(clt) |  PC.TWhenTrue(clt) |  PC.TWhenFalse(clt)
   | PC.TAny(clt) | PC.TStrict(clt) | PC.TEllipsis(clt)
@@ -379,7 +380,8 @@ let get_clt (tok,_) =
   | PC.TOrLog(clt) | PC.TAndLog(clt) | PC.TOr(clt) | PC.TXor(clt)
   | PC.TAnd (clt) | PC.TEqEq(clt) | PC.TNotEq(clt) | PC.TTildeEq(clt)
   | PC.TSub(clt) | PC.TLogOp(_,clt)
-  | PC.TShOp(_,clt) | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
+  | PC.TShLOp(_,clt) | PC.TShROp(_,clt)
+  | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
   | PC.TDmOp(_,clt) | PC.TTilde (clt)
 
   | PC.TMetaParam(_,_,clt) | PC.TMetaParamList(_,_,_,clt)
@@ -389,8 +391,9 @@ let get_clt (tok,_) =
   | PC.TMetaExpList(_,_,_,clt)
   | PC.TMetaId(_,_,_,clt)
   | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt) | PC.TMetaStm(_,_,clt)
-  | PC.TMetaStmList(_,_,clt)  | PC.TMetaFunc(_,_,_,clt)
-  | PC.TMetaLocalFunc(_,_,_,clt) | PC.TMetaPos(_,_,_,clt)
+  | PC.TMetaStmList(_,_,clt) | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt)
+  | PC.TMetaFunc(_,_,_,clt) | PC.TMetaLocalFunc(_,_,_,clt)
+  | PC.TMetaPos(_,_,_,clt)
 
   | PC.TWhen(clt) | PC.TWhenTrue(clt) | PC.TWhenFalse(clt) |
     PC.TAny(clt) | PC.TStrict(clt) | PC.TEllipsis(clt)
@@ -482,7 +485,8 @@ let update_clt (tok,x) clt =
   | PC.TTildeEq(_) -> (PC.TTildeEq(clt),x)
   | PC.TSub(_) -> (PC.TSub(clt),x)
   | PC.TLogOp(op,_) -> (PC.TLogOp(op,clt),x)
-  | PC.TShOp(op,_) -> (PC.TShOp(op,clt),x)
+  | PC.TShLOp(op,_) -> (PC.TShLOp(op,clt),x)
+  | PC.TShROp(op,_) -> (PC.TShROp(op,clt),x)
   | PC.TPlus(_) -> (PC.TPlus(clt),x)
   | PC.TMinus(_) -> (PC.TMinus(clt),x)
   | PC.TMul(_) -> (PC.TMul(clt),x)
@@ -500,8 +504,10 @@ let update_clt (tok,x) clt =
   | PC.TMetaId(a,b,c,_)    -> (PC.TMetaId(a,b,c,clt),x)
   | PC.TMetaType(a,b,_)    -> (PC.TMetaType(a,b,clt),x)
   | PC.TMetaInit(a,b,_)    -> (PC.TMetaInit(a,b,clt),x)
-  | PC.TMetaStm(a,b,_)   -> (PC.TMetaStm(a,b,clt),x)
-  | PC.TMetaStmList(a,b,_)   -> (PC.TMetaStmList(a,b,clt),x)
+  | PC.TMetaDecl(a,b,_)    -> (PC.TMetaDecl(a,b,clt),x)
+  | PC.TMetaField(a,b,_)   -> (PC.TMetaField(a,b,clt),x)
+  | PC.TMetaStm(a,b,_)     -> (PC.TMetaStm(a,b,clt),x)
+  | PC.TMetaStmList(a,b,_) -> (PC.TMetaStmList(a,b,clt),x)
   | PC.TMetaFunc(a,b,c,_)  -> (PC.TMetaFunc(a,b,c,clt),x)
   | PC.TMetaLocalFunc(a,b,c,_) -> (PC.TMetaLocalFunc(a,b,c,clt),x)
 
@@ -609,6 +615,7 @@ let split t clt =
 let split_token ((tok,_) as t) =
   match tok with
     PC.TIdentifier | PC.TConstant | PC.TExpression | PC.TIdExpression
+  | PC.TDeclaration | PC.TField
   | PC.TStatement | PC.TPosition | PC.TPosAny | PC.TInitialiser
   | PC.TFunction | PC.TTypedef | PC.TDeclarer | PC.TIterator | PC.TName
   | PC.TType | PC.TParameter | PC.TLocal | PC.Tlist | PC.TFresh
@@ -642,6 +649,7 @@ let split_token ((tok,_) as t) =
   | PC.TMetaExpList(_,_,_,clt)
   | PC.TMetaParam(_,_,clt) | PC.TMetaParamList(_,_,_,clt)
   | PC.TMetaId(_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt)
+  | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt)
   | PC.TMetaStm(_,_,clt) | PC.TMetaStmList(_,_,clt) | PC.TMetaErr(_,_,_,clt)
   | PC.TMetaFunc(_,_,_,clt) | PC.TMetaLocalFunc(_,_,_,clt)
   | PC.TMetaDeclarer(_,_,_,clt) | PC.TMetaIterator(_,_,_,clt) -> split t clt
@@ -676,7 +684,8 @@ let split_token ((tok,_) as t) =
   | PC.TOrLog(clt) | PC.TAndLog(clt) | PC.TOr(clt) | PC.TXor(clt)
   | PC.TAnd (clt) | PC.TEqEq(clt) | PC.TNotEq(clt) | PC.TTildeEq(clt)
   | PC.TTildeExclEq(clt) | PC.TSub(clt) | PC.TLogOp(_,clt)
-  | PC.TShOp(_,clt) | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
+  | PC.TShLOp(_,clt) | PC.TShROp(_,clt)
+  | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
   | PC.TDmOp(_,clt) | PC.TTilde (clt) -> split t clt
 
   | PC.TOBrace(clt) | PC.TCBrace(clt) | PC.TOInit(clt) -> split t clt
@@ -796,6 +805,8 @@ let detect_types in_meta_decls l =
     | (PC.TMetaExpList(_,_,_,_),_)
     | (PC.TMetaType(_,_,_),_)
     | (PC.TMetaInit(_,_,_),_)
+    | (PC.TMetaDecl(_,_,_),_)
+    | (PC.TMetaField(_,_,_),_)
     | (PC.TMetaStm(_,_,_),_)
     | (PC.TMetaStmList(_,_,_),_)
     | (PC.TMetaPos(_,_,_,_),_) -> in_meta_decls
@@ -876,7 +887,8 @@ let token2line (tok,_) =
 
   | PC.TOrLog(clt) | PC.TAndLog(clt) | PC.TOr(clt) | PC.TXor(clt)
   | PC.TAnd (clt) | PC.TEqEq(clt) | PC.TNotEq(clt) | PC.TLogOp(_,clt)
-  | PC.TShOp(_,clt) | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
+  | PC.TShLOp(_,clt) | PC.TShROp(_,clt)
+  | PC.TPlus(clt) | PC.TMinus(clt) | PC.TMul(clt)
   | PC.TDmOp(_,clt) | PC.TTilde (clt)
 
   | PC.TMetaParam(_,_,clt) | PC.TMetaParamList(_,_,_,clt)
@@ -884,6 +896,7 @@ let token2line (tok,_) =
   | PC.TMetaIdExp(_,_,_,_,clt) | PC.TMetaLocalIdExp(_,_,_,_,clt)
   | PC.TMetaExpList(_,_,_,clt)
   | PC.TMetaId(_,_,_,clt) | PC.TMetaType(_,_,clt) | PC.TMetaInit(_,_,clt)
+  | PC.TMetaDecl(_,_,clt) | PC.TMetaField(_,_,clt)
   | PC.TMetaStm(_,_,clt) | PC.TMetaStmList(_,_,clt) | PC.TMetaFunc(_,_,_,clt)
   | PC.TMetaLocalFunc(_,_,_,clt) | PC.TMetaPos(_,_,_,clt)
 
@@ -1379,8 +1392,8 @@ let get_rule_name parse_fn starts_with_name get_tokens file prefix =
           Ast.CocciRulename (check_name nm,a,b,c,d,e)
       | Ast.GeneratedRulename (nm,a,b,c,d,e) ->
           Ast.GeneratedRulename (check_name nm,a,b,c,d,e)
-      | Ast.ScriptRulename(_,s,deps) ->
-         Ast.ScriptRulename(check_name None,s,deps)
+      | Ast.ScriptRulename(nm,s,deps) ->
+         Ast.ScriptRulename(check_name nm,s,deps)
       | Ast.InitialScriptRulename(_,s,deps) ->
          Ast.InitialScriptRulename(check_name None,s,deps)
       | Ast.FinalScriptRulename(_,s,deps) ->
@@ -1546,6 +1559,7 @@ let parse file =
 
           let parse_cocci_rule ruletype old_metas
              (rule_name, dependencies, iso, dropiso, exists, is_expression) =
+           let dropiso = !Flag_parsing_cocci.disabled_isos @ dropiso in
             Ast0.rule_name := rule_name;
             Data.inheritable_positions :=
                rule_name :: !Data.inheritable_positions;
@@ -1641,6 +1655,25 @@ let parse file =
              Data.call_in_meta
                (function _ ->
                  get_script_metavars PC.script_meta_main table file lexbuf) in
+           let (metavars,script_metavars) =
+             List.fold_left
+               (function (metavars,script_metavars) ->
+                 function
+                     (script_var,Some(parent,var)) ->
+                       ((script_var,parent,var) :: metavars, script_metavars)
+                   | ((Some script_var,None),None) ->
+                       (metavars, (name,script_var) :: script_metavars)
+                   | _ -> failwith "not possible")
+               ([],[]) metavars in
+           let metavars = List.rev metavars in
+           let script_metavars = List.rev script_metavars in
+
+           Hashtbl.add Data.all_metadecls name
+             (List.map (function x -> Ast.MetaIdDecl(Ast.NONE,x))
+                script_metavars);
+           Hashtbl.add Lexer_cocci.rule_names name ();
+           (*TODOHashtbl.add Lexer_cocci.all_metavariables name script_metavars;*)
+
 (*
             let exists_in old_metas (py,(r,m)) =
              r = "virtual" or
@@ -1662,7 +1695,9 @@ let parse file =
               (* script code *)
             let (more, tokens) = get_tokens [PC.TArobArob; PC.TArob] in
             let data = collect_script_tokens tokens in
-            (more,Ast0.ScriptRule(name, language, deps, metavars, data),
+            (more,
+            Ast0.ScriptRule(name, language, deps, metavars,
+                            script_metavars, data),
             [],tokens) in
 
           let parse_if_script_rule k name language _ deps =
@@ -1783,8 +1818,8 @@ let process file isofile verbose =
   let parsed =
     List.map
       (function
-          Ast0.ScriptRule (a,b,c,d,e) ->
-           [([],Ast.ScriptRule (a,b,c,d,e))]
+          Ast0.ScriptRule (a,b,c,d,fv,e) ->
+           [([],Ast.ScriptRule (a,b,c,d,fv,e))]
        | Ast0.InitialScriptRule(a,b,c,d) ->
            [([],Ast.InitialScriptRule (a,b,c,d))]
        | Ast0.FinalScriptRule (a,b,c,d) ->
index dd9f1bf..e11bab0 100644 (file)
@@ -190,249 +190,264 @@ type token =
        (Data.clt)
 # 192 "parser_cocci_menhir.ml"
 )
-  | TShOp of (
+  | TShROp of (
 # 99 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
 # 197 "parser_cocci_menhir.ml"
+)
+  | TShLOp of (
+# 99 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 202 "parser_cocci_menhir.ml"
 )
   | TScriptData of (
 # 74 "parser_cocci_menhir.mly"
        (string)
-# 202 "parser_cocci_menhir.ml"
+# 207 "parser_cocci_menhir.ml"
 )
   | TScript
   | TRuleName of (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 208 "parser_cocci_menhir.ml"
+# 213 "parser_cocci_menhir.ml"
 )
   | TRightIso
   | TReturn of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 214 "parser_cocci_menhir.ml"
+# 219 "parser_cocci_menhir.ml"
 )
   | TPure
   | TPtrOp of (
 # 107 "parser_cocci_menhir.mly"
        (Data.clt)
-# 220 "parser_cocci_menhir.ml"
+# 225 "parser_cocci_menhir.ml"
 )
   | TPtVirg of (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 225 "parser_cocci_menhir.ml"
+# 230 "parser_cocci_menhir.ml"
 )
   | TPragma of (
 # 62 "parser_cocci_menhir.mly"
        (Ast_cocci.added_string * Data.clt)
-# 230 "parser_cocci_menhir.ml"
+# 235 "parser_cocci_menhir.ml"
 )
   | TPosition
   | TPosAny
   | TPlusFile of (
 # 86 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 237 "parser_cocci_menhir.ml"
+# 242 "parser_cocci_menhir.ml"
 )
   | TPlus0
   | TPlus of (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 243 "parser_cocci_menhir.ml"
+# 248 "parser_cocci_menhir.ml"
 )
   | TPathIsoFile of (
 # 82 "parser_cocci_menhir.mly"
        (string)
-# 248 "parser_cocci_menhir.ml"
+# 253 "parser_cocci_menhir.ml"
 )
   | TParameter
   | TPOEllipsis of (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 254 "parser_cocci_menhir.ml"
+# 259 "parser_cocci_menhir.ml"
 )
   | TPCEllipsis of (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 259 "parser_cocci_menhir.ml"
+# 264 "parser_cocci_menhir.ml"
 )
   | TPArob
   | TOrLog of (
 # 92 "parser_cocci_menhir.mly"
        (Data.clt)
-# 265 "parser_cocci_menhir.ml"
+# 270 "parser_cocci_menhir.ml"
 )
   | TOr of (
 # 94 "parser_cocci_menhir.mly"
        (Data.clt)
-# 270 "parser_cocci_menhir.ml"
+# 275 "parser_cocci_menhir.ml"
 )
   | TOn
   | TOPar0 of (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 276 "parser_cocci_menhir.ml"
+# 281 "parser_cocci_menhir.ml"
 )
   | TOPar of (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 281 "parser_cocci_menhir.ml"
+# 286 "parser_cocci_menhir.ml"
 )
   | TOInit of (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 286 "parser_cocci_menhir.ml"
+# 291 "parser_cocci_menhir.ml"
 )
   | TOEllipsis of (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 291 "parser_cocci_menhir.ml"
+# 296 "parser_cocci_menhir.ml"
 )
   | TOCro of (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 296 "parser_cocci_menhir.ml"
+# 301 "parser_cocci_menhir.ml"
 )
   | TOBrace of (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 301 "parser_cocci_menhir.ml"
+# 306 "parser_cocci_menhir.ml"
 )
   | TNothing
   | TNotEq of (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 307 "parser_cocci_menhir.ml"
+# 312 "parser_cocci_menhir.ml"
 )
   | TNever
   | TName
   | TMul of (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 314 "parser_cocci_menhir.ml"
+# 319 "parser_cocci_menhir.ml"
 )
   | TMinusFile of (
 # 86 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 319 "parser_cocci_menhir.ml"
+# 324 "parser_cocci_menhir.ml"
 )
   | TMinus of (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 324 "parser_cocci_menhir.ml"
+# 329 "parser_cocci_menhir.ml"
 )
   | TMid0 of (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 329 "parser_cocci_menhir.ml"
+# 334 "parser_cocci_menhir.ml"
 )
   | TMetaType of (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 334 "parser_cocci_menhir.ml"
+# 339 "parser_cocci_menhir.ml"
 )
   | TMetaStmList of (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 339 "parser_cocci_menhir.ml"
+# 344 "parser_cocci_menhir.ml"
 )
   | TMetaStm of (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 344 "parser_cocci_menhir.ml"
+# 349 "parser_cocci_menhir.ml"
 )
   | TMetaPos of (
 # 71 "parser_cocci_menhir.mly"
        (Parse_aux.pos_info)
-# 349 "parser_cocci_menhir.ml"
+# 354 "parser_cocci_menhir.ml"
 )
   | TMetaParamList of (
 # 69 "parser_cocci_menhir.mly"
        (Parse_aux.list_info)
-# 354 "parser_cocci_menhir.ml"
+# 359 "parser_cocci_menhir.ml"
 )
   | TMetaParam of (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 359 "parser_cocci_menhir.ml"
+# 364 "parser_cocci_menhir.ml"
 )
   | TMetaLocalIdExp of (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 364 "parser_cocci_menhir.ml"
+# 369 "parser_cocci_menhir.ml"
 )
   | TMetaLocalFunc of (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 369 "parser_cocci_menhir.ml"
+# 374 "parser_cocci_menhir.ml"
 )
   | TMetaIterator of (
 # 65 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 374 "parser_cocci_menhir.ml"
+# 379 "parser_cocci_menhir.ml"
 )
   | TMetaInit of (
 # 68 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 379 "parser_cocci_menhir.ml"
+# 384 "parser_cocci_menhir.ml"
 )
   | TMetaIdExp of (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 384 "parser_cocci_menhir.ml"
+# 389 "parser_cocci_menhir.ml"
 )
   | TMetaId of (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 389 "parser_cocci_menhir.ml"
+# 394 "parser_cocci_menhir.ml"
 )
   | TMetaFunc of (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 394 "parser_cocci_menhir.ml"
+# 399 "parser_cocci_menhir.ml"
+)
+  | TMetaField of (
+# 68 "parser_cocci_menhir.mly"
+       (Parse_aux.info)
+# 404 "parser_cocci_menhir.ml"
 )
   | TMetaExpList of (
 # 69 "parser_cocci_menhir.mly"
        (Parse_aux.list_info)
-# 399 "parser_cocci_menhir.ml"
+# 409 "parser_cocci_menhir.ml"
 )
   | TMetaExp of (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 404 "parser_cocci_menhir.ml"
+# 414 "parser_cocci_menhir.ml"
 )
   | TMetaErr of (
 # 66 "parser_cocci_menhir.mly"
        (Parse_aux.expinfo)
-# 409 "parser_cocci_menhir.ml"
+# 419 "parser_cocci_menhir.ml"
 )
   | TMetaDeclarer of (
 # 65 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 414 "parser_cocci_menhir.ml"
+# 424 "parser_cocci_menhir.ml"
+)
+  | TMetaDecl of (
+# 68 "parser_cocci_menhir.mly"
+       (Parse_aux.info)
+# 429 "parser_cocci_menhir.ml"
 )
   | TMetaConst of (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 419 "parser_cocci_menhir.ml"
+# 434 "parser_cocci_menhir.ml"
 )
   | TMPtVirg
   | TLogOp of (
 # 98 "parser_cocci_menhir.mly"
        (Ast_cocci.logicalOp * Data.clt)
-# 425 "parser_cocci_menhir.ml"
+# 440 "parser_cocci_menhir.ml"
 )
   | TLocal
   | TLineEnd of (
 # 77 "parser_cocci_menhir.mly"
        (Data.clt)
-# 431 "parser_cocci_menhir.ml"
+# 446 "parser_cocci_menhir.ml"
 )
   | TIteratorId of (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 436 "parser_cocci_menhir.ml"
+# 451 "parser_cocci_menhir.ml"
 )
   | TIterator
   | TIsoType
@@ -448,62 +463,63 @@ type token =
   | TInt of (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 452 "parser_cocci_menhir.ml"
+# 467 "parser_cocci_menhir.ml"
 )
   | TInitialize
   | TInitialiser
   | TIncludeNL of (
 # 83 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 459 "parser_cocci_menhir.ml"
+# 474 "parser_cocci_menhir.ml"
 )
   | TIncludeL of (
 # 83 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 464 "parser_cocci_menhir.ml"
+# 479 "parser_cocci_menhir.ml"
 )
   | TInc of (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 469 "parser_cocci_menhir.ml"
+# 484 "parser_cocci_menhir.ml"
 )
   | TIf of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 474 "parser_cocci_menhir.ml"
+# 489 "parser_cocci_menhir.ml"
 )
   | TIdentifier
   | TIdent of (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 480 "parser_cocci_menhir.ml"
+# 495 "parser_cocci_menhir.ml"
 )
   | TIdExpression
   | TGoto of (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 486 "parser_cocci_menhir.ml"
+# 501 "parser_cocci_menhir.ml"
 )
   | TGenerated
   | TFunction
   | TFunDecl of (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 493 "parser_cocci_menhir.ml"
+# 508 "parser_cocci_menhir.ml"
 )
   | TFresh
   | TForall
   | TFor of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 500 "parser_cocci_menhir.ml"
+# 515 "parser_cocci_menhir.ml"
 )
   | TFloat of (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 505 "parser_cocci_menhir.ml"
+# 520 "parser_cocci_menhir.ml"
 )
   | TFinalize
+  | TField
   | TExtends
   | TExpression
   | TExists
@@ -512,151 +528,152 @@ type token =
   | TEqEq of (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 516 "parser_cocci_menhir.ml"
+# 532 "parser_cocci_menhir.ml"
 )
   | TEq of (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 521 "parser_cocci_menhir.ml"
+# 537 "parser_cocci_menhir.ml"
 )
   | TElse of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 526 "parser_cocci_menhir.ml"
+# 542 "parser_cocci_menhir.ml"
 )
   | TEllipsis of (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 531 "parser_cocci_menhir.ml"
+# 547 "parser_cocci_menhir.ml"
 )
   | TDotDot of (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 536 "parser_cocci_menhir.ml"
+# 552 "parser_cocci_menhir.ml"
 )
   | TDot of (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 541 "parser_cocci_menhir.ml"
+# 557 "parser_cocci_menhir.ml"
 )
   | TDo of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 546 "parser_cocci_menhir.ml"
+# 562 "parser_cocci_menhir.ml"
 )
   | TDmOp of (
 # 100 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 551 "parser_cocci_menhir.ml"
+# 567 "parser_cocci_menhir.ml"
 )
   | TDisable
   | TDepends
   | TDefineParam of (
 # 85 "parser_cocci_menhir.mly"
        (Data.clt * token * int * int)
-# 558 "parser_cocci_menhir.ml"
+# 574 "parser_cocci_menhir.ml"
 )
   | TDefine of (
 # 84 "parser_cocci_menhir.mly"
        (Data.clt * token)
-# 563 "parser_cocci_menhir.ml"
+# 579 "parser_cocci_menhir.ml"
 )
   | TDefault of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 568 "parser_cocci_menhir.ml"
+# 584 "parser_cocci_menhir.ml"
 )
   | TDeclarerId of (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 573 "parser_cocci_menhir.ml"
+# 589 "parser_cocci_menhir.ml"
 )
   | TDeclarer
+  | TDeclaration
   | TDec of (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 579 "parser_cocci_menhir.ml"
+# 596 "parser_cocci_menhir.ml"
 )
   | TCppConcatOp
   | TContinue of (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 585 "parser_cocci_menhir.ml"
+# 602 "parser_cocci_menhir.ml"
 )
   | TContext
   | TConstant
   | TComma of (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 592 "parser_cocci_menhir.ml"
+# 609 "parser_cocci_menhir.ml"
 )
   | TChar of (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 597 "parser_cocci_menhir.ml"
+# 614 "parser_cocci_menhir.ml"
 )
   | TCase of (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 602 "parser_cocci_menhir.ml"
+# 619 "parser_cocci_menhir.ml"
 )
   | TCPar0 of (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 607 "parser_cocci_menhir.ml"
+# 624 "parser_cocci_menhir.ml"
 )
   | TCPar of (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 612 "parser_cocci_menhir.ml"
+# 629 "parser_cocci_menhir.ml"
 )
   | TCEllipsis of (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 617 "parser_cocci_menhir.ml"
+# 634 "parser_cocci_menhir.ml"
 )
   | TCCro of (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 622 "parser_cocci_menhir.ml"
+# 639 "parser_cocci_menhir.ml"
 )
   | TCBrace of (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 627 "parser_cocci_menhir.ml"
+# 644 "parser_cocci_menhir.ml"
 )
   | TBreak of (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 632 "parser_cocci_menhir.ml"
+# 649 "parser_cocci_menhir.ml"
 )
   | TBang0
   | TBang of (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 638 "parser_cocci_menhir.ml"
+# 655 "parser_cocci_menhir.ml"
 )
   | TAssign of (
 # 111 "parser_cocci_menhir.mly"
        (Ast_cocci.assignOp * Data.clt)
-# 643 "parser_cocci_menhir.ml"
+# 660 "parser_cocci_menhir.ml"
 )
   | TArobArob
   | TArob
   | TAny of (
 # 77 "parser_cocci_menhir.mly"
        (Data.clt)
-# 650 "parser_cocci_menhir.ml"
+# 667 "parser_cocci_menhir.ml"
 )
   | TAndLog of (
 # 93 "parser_cocci_menhir.mly"
        (Data.clt)
-# 655 "parser_cocci_menhir.ml"
+# 672 "parser_cocci_menhir.ml"
 )
   | TAnd of (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 660 "parser_cocci_menhir.ml"
+# 677 "parser_cocci_menhir.ml"
 )
   | EOF
 
@@ -678,7 +695,7 @@ module Ast0 = Ast0_cocci
 module Ast = Ast_cocci
 module P = Parse_aux
 
-# 682 "parser_cocci_menhir.ml"
+# 699 "parser_cocci_menhir.ml"
 let _eRR =
   Error
 
@@ -692,270 +709,280 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     fun _tok ->
       match _tok with
       | EOF ->
-          178
+          183
       | TAnd _ ->
-          177
+          182
       | TAndLog _ ->
-          176
+          181
       | TAny _ ->
-          175
+          180
       | TArob ->
-          174
+          179
       | TArobArob ->
-          173
+          178
       | TAssign _ ->
-          172
+          177
       | TBang _ ->
-          171
+          176
       | TBang0 ->
-          170
+          175
       | TBreak _ ->
-          169
+          174
       | TCBrace _ ->
-          168
+          173
       | TCCro _ ->
-          167
+          172
       | TCEllipsis _ ->
-          166
+          171
       | TCPar _ ->
-          165
+          170
       | TCPar0 _ ->
-          164
+          169
       | TCase _ ->
-          163
+          168
       | TChar _ ->
-          162
+          167
       | TComma _ ->
-          161
+          166
       | TConstant ->
-          160
+          165
       | TContext ->
-          159
+          164
       | TContinue _ ->
-          158
+          163
       | TCppConcatOp ->
-          157
+          162
       | TDec _ ->
-          156
+          161
+      | TDeclaration ->
+          160
       | TDeclarer ->
-          155
+          159
       | TDeclarerId _ ->
-          154
+          158
       | TDefault _ ->
-          153
+          157
       | TDefine _ ->
-          152
+          156
       | TDefineParam _ ->
-          151
+          155
       | TDepends ->
-          150
+          154
       | TDisable ->
-          149
+          153
       | TDmOp _ ->
-          148
+          152
       | TDo _ ->
-          147
+          151
       | TDot _ ->
-          146
+          150
       | TDotDot _ ->
-          145
+          149
       | TEllipsis _ ->
-          144
+          148
       | TElse _ ->
-          143
+          147
       | TEq _ ->
-          142
+          146
       | TEqEq _ ->
-          141
+          145
       | TError ->
-          140
+          144
       | TEver ->
-          139
+          143
       | TExists ->
-          138
+          142
       | TExpression ->
-          137
+          141
       | TExtends ->
-          136
+          140
+      | TField ->
+          139
       | TFinalize ->
-          135
+          138
       | TFloat _ ->
-          134
+          137
       | TFor _ ->
-          133
+          136
       | TForall ->
-          132
+          135
       | TFresh ->
-          131
+          134
       | TFunDecl _ ->
-          130
+          133
       | TFunction ->
-          129
+          132
       | TGenerated ->
-          128
+          131
       | TGoto _ ->
-          127
+          130
       | TIdExpression ->
-          126
+          129
       | TIdent _ ->
-          125
+          128
       | TIdentifier ->
-          124
+          127
       | TIf _ ->
-          123
+          126
       | TInc _ ->
-          122
+          125
       | TIncludeL _ ->
-          121
+          124
       | TIncludeNL _ ->
-          120
+          123
       | TInitialiser ->
-          119
+          122
       | TInitialize ->
-          118
+          121
       | TInt _ ->
-          117
+          120
       | TInvalid ->
-          116
+          119
       | TIso ->
-          115
+          118
       | TIsoArgExpression ->
-          114
+          117
       | TIsoDeclaration ->
-          113
+          116
       | TIsoExpression ->
-          112
+          115
       | TIsoStatement ->
-          111
+          114
       | TIsoTestExpression ->
-          110
+          113
       | TIsoToTestExpression ->
-          109
+          112
       | TIsoTopLevel ->
-          108
+          111
       | TIsoType ->
-          107
+          110
       | TIterator ->
-          106
+          109
       | TIteratorId _ ->
-          105
+          108
       | TLineEnd _ ->
-          104
+          107
       | TLocal ->
-          103
+          106
       | TLogOp _ ->
-          102
+          105
       | TMPtVirg ->
-          101
+          104
       | TMetaConst _ ->
-          100
+          103
+      | TMetaDecl _ ->
+          102
       | TMetaDeclarer _ ->
-          99
+          101
       | TMetaErr _ ->
-          98
+          100
       | TMetaExp _ ->
-          97
+          99
       | TMetaExpList _ ->
-          96
+          98
+      | TMetaField _ ->
+          97
       | TMetaFunc _ ->
-          95
+          96
       | TMetaId _ ->
-          94
+          95
       | TMetaIdExp _ ->
-          93
+          94
       | TMetaInit _ ->
-          92
+          93
       | TMetaIterator _ ->
-          91
+          92
       | TMetaLocalFunc _ ->
-          90
+          91
       | TMetaLocalIdExp _ ->
-          89
+          90
       | TMetaParam _ ->
-          88
+          89
       | TMetaParamList _ ->
-          87
+          88
       | TMetaPos _ ->
-          86
+          87
       | TMetaStm _ ->
-          85
+          86
       | TMetaStmList _ ->
-          84
+          85
       | TMetaType _ ->
-          83
+          84
       | TMid0 _ ->
-          82
+          83
       | TMinus _ ->
-          81
+          82
       | TMinusFile _ ->
-          80
+          81
       | TMul _ ->
-          79
+          80
       | TName ->
-          78
+          79
       | TNever ->
-          77
+          78
       | TNotEq _ ->
-          76
+          77
       | TNothing ->
-          75
+          76
       | TOBrace _ ->
-          74
+          75
       | TOCro _ ->
-          73
+          74
       | TOEllipsis _ ->
-          72
+          73
       | TOInit _ ->
-          71
+          72
       | TOPar _ ->
-          70
+          71
       | TOPar0 _ ->
-          69
+          70
       | TOn ->
-          68
+          69
       | TOr _ ->
-          67
+          68
       | TOrLog _ ->
-          66
+          67
       | TPArob ->
-          65
+          66
       | TPCEllipsis _ ->
-          64
+          65
       | TPOEllipsis _ ->
-          63
+          64
       | TParameter ->
-          62
+          63
       | TPathIsoFile _ ->
-          61
+          62
       | TPlus _ ->
-          60
+          61
       | TPlus0 ->
-          59
+          60
       | TPlusFile _ ->
-          58
+          59
       | TPosAny ->
-          57
+          58
       | TPosition ->
-          56
+          57
       | TPragma _ ->
-          55
+          56
       | TPtVirg _ ->
-          54
+          55
       | TPtrOp _ ->
-          53
+          54
       | TPure ->
-          52
+          53
       | TReturn _ ->
-          51
+          52
       | TRightIso ->
-          50
+          51
       | TRuleName _ ->
-          49
+          50
       | TScript ->
-          48
+          49
       | TScriptData _ ->
+          48
+      | TShLOp _ ->
           47
-      | TShOp _ ->
+      | TShROp _ ->
           46
       | TSizeof _ ->
           45
@@ -1100,6 +1127,8 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr ()
       | TDec _v ->
           Obj.repr _v
+      | TDeclaration ->
+          Obj.repr ()
       | TDeclarer ->
           Obj.repr ()
       | TDeclarerId _v ->
@@ -1140,6 +1169,8 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr ()
       | TExtends ->
           Obj.repr ()
+      | TField ->
+          Obj.repr ()
       | TFinalize ->
           Obj.repr ()
       | TFloat _v ->
@@ -1212,6 +1243,8 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr ()
       | TMetaConst _v ->
           Obj.repr _v
+      | TMetaDecl _v ->
+          Obj.repr _v
       | TMetaDeclarer _v ->
           Obj.repr _v
       | TMetaErr _v ->
@@ -1220,6 +1253,8 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr _v
       | TMetaExpList _v ->
           Obj.repr _v
+      | TMetaField _v ->
+          Obj.repr _v
       | TMetaFunc _v ->
           Obj.repr _v
       | TMetaId _v ->
@@ -1318,7 +1353,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr ()
       | TScriptData _v ->
           Obj.repr _v
-      | TShOp _v ->
+      | TShLOp _v ->
+          Obj.repr _v
+      | TShROp _v ->
           Obj.repr _v
       | TSizeof _v ->
           Obj.repr _v
@@ -1412,19 +1449,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           Obj.repr _v
   
   let default_reduction =
-    (16, "\000\000\000\000\002\163\000|\000\000\000\000\002\240\001L\000\000\001J\001K\001I\000\000\001N\001M\000\001\000\000\001\140\000\000\000\000\000\140\000\000\000\000\001|\000\165\000\000\000\000\000\152\000\000\000\000\000\157\000\156\000\000\000\153\000\000\000\151\000\000\000\000\000\000\000\155\000\000\000\154\003'\003&\000\000\000\000\000\145\000\000\000\000\000\150\000\149\000\000\000\146\000\000\000\144\000\000\000\000\000\000\000\148\000\000\000\147\000\000\000\159\000\000\000\000\000\164\000\163\000\000\000\160\000\000\000\167\000\000\001F\001E\000\000\000\168\000\000\000\166\000\139\000\000\000\158\000\000\000\173\000\000\000\000\000\000\000\162\000\000\000\000\000\000\003\029\000\000\000\000\000\000\000\000\000\000\003\"\000\000\000\000\000\170\000\000\003$\000\000\000\000\000\000\003\161\002m\000\000\003\159\000\000\002\135\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\158\003\160\002s\001A\002r\001?\001@\002q\002p\002o\002k\000\000\000\000\002l\001\014\000\000\002n\000\000\003\157\000\000\000c\001>\002N\000\000\000\000\002Q\000\000\000\015\000\000\000\000\000\000\000\000\001\015\002j\002v\000[\000\021\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\002)\000R\001\024\000^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\\\000T\000\000\000S\001\025\000\000\002T\001\026\000\014\000\016\000\000\000\000\000\195\000\000\000\000\000\182\000\000\000\000\000\187\000\186\000\000\000\183\000\000\000\181\000\000\000\000\000\000\000\185\000\000\000\184\000\000\000\000\000\175\000\000\000\000\000\180\000\179\000\000\000\176\000\000\000\174\000\000\000\000\000\000\000\178\000\000\000\177\000\000\000\189\000\000\000\000\000\194\000\193\000\000\000\190\000\000\000\197\000\000\000\000\000\198\000\000\000\196\000\000\000\188\000\000\000\203\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\000\000\202\000\000\000\000\000\142\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\211\000\000\000\000\000n\000o\002\015\001\240\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\217\000\000\001\241\000\000\000\000\000\000\000\000\000\210\000\208\000\223\000\000\001\132\000\000\000\000\003\031\000\000\003\030\000\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\201\000\199\000\000\000\000\003!\003%\000\191\000\000\000\000\001\029\000\000\000\000\002O\002R\000\000\002P\002S\003\132\003\133\003\131\000\000\002t\003\130\000\000\002\142\000\000\000\000\002\141\002\140\002\139\002\138\002\137\002\133\000\000\000\000\002\134\000\000\002\136\000\000\000\000\000g\002\\\000\000\000\000\002_\000\000\000\000\002b\000\000\000\000\002]\002`\000\000\002^\002a\002\144\002\132\003\146\003\147\003\145\003\144\000h\000\000\000\000\000W\000\000\000V\001\"\000\000\001\250\000\000\000\000\000\000\000\000\000\000\001\019\002\000\000\000\000\000\001\164\000U\0001\001\012\000_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\000\000\0003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002u\000\000\000\206\000\000\000\000\001\235\000\000\001\154\001\216\000\000\000\000\001\234\000\000\001\152\001\215\000\000\000\000\000d\000\000\002\143\000\000\000\000\003\149\003\148\000\000\001\251\000\000\000\000\003\135\003\134\000\000\000Q\000\207\000\000\001~\000\000\003 \000\000\000\000\000\000\000\000\000\171\000\169\000\000\001\023\000\000\000\000\000\172\000\161\000\000\000\000\001f\000\000\001e\000\000\001t\000\000\001\142\000\000\000\000\000\000\003W\000\000\000\000\003J\000\000\000\000\003O\003N\000\000\003K\000\000\003I\000\000\000\000\000\000\003M\000\000\003L\000\000\000\000\003C\000\000\000\000\003H\003G\000\000\003D\000\000\003B\000\000\000\000\000\000\003F\000\000\003E\000\000\003Q\000\000\000\000\003V\003U\000\000\003R\000\000\003Y\000\000\000\000\003Z\000\000\003X\000\000\003P\000\000\003_\000\000\000\000\000\000\003T\000\000\000\000\003~\000\000\000\000\000\000\000\000\003^\003S\000\000\003\128\000\000\000\000\003\000\003\127\000\132\000\000\000\251\000\000\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\003[\000\000\000\000\003u\000\000\000\000\003h\000\000\000\000\003m\003l\000\000\003i\000\000\003g\000\000\000\000\000\000\003k\000\000\003j\000\000\000\000\003a\000\000\000\000\003f\003e\000\000\003b\000\000\003`\000\000\000\000\000\000\003d\000\000\003c\000\000\003o\000\000\000\000\003t\003s\000\000\003p\000\000\003w\000\000\000\000\003x\000\000\003v\000\000\003n\000\000\003}\000\000\000\000\000\000\003r\000\000\000\000\000\000\000\000\003|\003q\000\000\000\000\000\000\000\000\003z\000\000\000\000\000\000\000\000\003{\003y\003\025\003\027\003\028\003\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\212\000\000\000\000\000y\000\000\000\000\000\000\002z\000\000\000\000\000\000\002\130\000\000\000\000\002\129\000\000\003\142\002\128\002\127\002~\002}\002|\001b\002x\000\000\000\000\002y\000\000\002{\000\000\000\000\000\000\000\000\000\000\000e\002U\000\000\000\000\002X\000\000\000\000\002[\000\000\000\000\002V\002Y\000\000\002W\002Z\002\131\002w\000f\003\139\003\140\003\138\003\137\003\141\000\000\000\000\000\000\000\000\001\011\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001W\000\000\001\021\001T\000\000\001\t\000\000\000\000\000\000\001[\000\000\000\000\001\\\000\000\001\136\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001`\000\000\000\000\001_\000\000\000\000\000\000\000\000\000\000\000\000\000u\000\000\000\000\000v\000q\000s\000r\001a\001Z\001]\000\000\001Y\001V\000\000\001U\000\000\000\244\000\000\002\234\000\000\000\000\000\240\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\247\000\000\000\000\000\250\000\000\000\000\000\000\000\000\000\000\000\000\001D\000\000\000\000\000\000\000\237\000\000\000\234\000\000\000\000\000\000\000\000\000\000\000\245\000\000\000\241\000\000\000\000\000\000\000\000\000\242\000\000\000\238\000\000\000\000\000\000\002\148\000\000\000\000\000\000\000\000\002\155\000\000\000\000\002\154\002\153\002\152\002\151\002\150\002\146\000\000\000\000\002\147\000\000\002\149\000\000\000\000\000i\002c\000\000\000\000\002f\000\000\000\000\002i\000\000\000\000\002d\002g\000\000\002e\002h\002\157\002\145\003\153\003\154\003\152\003\151\000j\000\000\000\000\000Z\000\000\000Y\000\000\002\156\000\000\001\217\000X\000?\001!\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\156\003\155\000\000\003\016\000\000\003\015\000\000\000\000\000\000\000\000\003\168\000\000\000\000\000\000\003\169\000\000\000\018\000\000\000\000\000\000\003\164\000\000\001\166\000\000\000\000\000\000\000\224\003\006\001z\001y\001P\001O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\001\017\001\001\000\000\001\138\000\000\000\000\001\000\000\252\000\000\001\003\000\253\001\002\000\000\003\018\000\000\003\017\003\003\000\000\000\000\000\000\000\000\000\000\003\012\000\000\000\000\000\000\000\000\003\013\003\005\000\000\003\019\000\000\003\007\000\000\000\228\001Q\000\000\003\022\000\000\001S\000\000\000\000\003-\000\000\0034\000\230\000\000\000\235\000\000\003.\000\229\000\000\003/\000\000\0036\000\000\000\000\000\000\000\000\000\248\000\000\000\232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\246\000\000\000\000\000\249\000\000\000\000\000\000\000\000\001C\000\000\000\000\000\000\000\236\000\000\000\233\000\000\000\000\000\000\000\000\000\000\000\243\000\000\000\239\000\226\000\225\000\000\0037\0038\000\000\0039\000\000\003:\000\000\001R\003\n\000\000\000\000\001\239\000\000\001\162\001\221\000\000\003\004\000\000\000\000\000\000\003\t\000\000\000\000\000\000\0017\000\000\0011\000\000\0012\000\000\001<\0010\001;\000\000\003\021\001=\000\000\000\231\000\000\000\000\000\000\000\000\0019\0014\001\236\000\000\0015\000\000\0016\000\000\001\156\001\218\000\000\000\000\000\000\001\246\000\000\001\244\000\000\000\000\001\248\001\242\000\000\001\249\001\243\000\000\003\023\001\252\000\000\000\227\000\000\000\000\001\237\000\000\001\158\001\219\000\000\003\165\000\000\003\162\000\000\003\163\000\019\000\020\000\000\000\000\002\208\000\000\002\207\000\000\000\000\002\210\000\000\002\209\000\000\000\000\000\000\002\025\000\000\000\000\002\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\002#\000\000\002\019\000\000\000\000\002\022\000\000\000\000\000\000\002\026\000\000\000\000\002\030\000\000\000\000\001\238\000\000\000\000\002\023\000\000\000\000\002\027\002\205\002\020\000\000\002\206\000\000\000\000\000\000\000\000\002!\000\000\002\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\031\000\000\000\000\002\"\000\000\002\018\000\000\000\000\002\021\000\000\000\000\000\000\002\024\000\000\000\000\002\028\000\000\001\160\001\220\000\000\002\211\000\000\000\000\000\000\003\166\000\017\000w\000\000\003\167\000\000\000\000\002\230\000\000\000\000\003\024\000a\000\000\000\000\000\000\000b\000\000\003\014\000\000\001\128\000\000\001\134\003\011\000\000\000\000\001l\000\000\001k\000\000\001u\000\000\001\148\000\000\000\000\000\000\001j\000\000\001i\000\000\001r\000\000\001\146\000\000\000\000\000\000\001q\000\000\000\000\000\000\001n\000\000\001m\000\000\001s\000\000\001\150\000\000\000\000\000\000\001o\000\000\000\000\000\000\001h\000\000\001g\000\000\001v\000\000\001\144\000\000\000\000\000\000\001p\000\002\000\000\000N\000O\000\000\000\000\002\173\002\177\002\181\002\169\002\166\000\000\000\000\002\178\002\185\002\170\002\184\002\168\002\183\002\172\002\164\002\171\002\180\002\167\002\174\002\165\002\176\002\182\002\179\002\175\001\184\001\183\000\130\000\000\000\000\002\252\000\000\000\000\002\224\000\000\000\000\002\226\002\225\002\195\000\000\000\000\003\002\002\187\002\186\002\188\000\000\001\196\000M\001w\000\003\000\000\000\000\002\160\000\000\002'\000\000\000\131\000\000\000\000\002\254\000\000\000\000\000\000\000{\000\000\000\000\002\238\000\000\002\012\002\011\001\178\002\196\000\000\001\212\000\000\002\161\000\000\000\000\000}\000\000\000\000\002\242\000\000\001\193\000\000\000\000\001\189\000\000\000\000\000\000\001\192\000\000\001\191\000\000\000\000\000\000\001\168\001\167\000\000\000\000\000\000\001\213\000\000\001\187\000\000\001\186\000\000\000x\000\000\000\000\002\232\000\000\000\000\001\182\000\000\000\000\000\128\000\000\000\000\002\248\000\000\000\000\002\203\000\000\002\202\000\000\000\000\000\000\002\n\002\t\002\200\002/\002\191\002\201\000\000\001\199\000\000\000\000\000\000\001\195\000\000\001\201\000\000\000\000\001\190\000\000\000\000\000\000\002\193\000\129\000\000\000\000\002\250\000\000\002\192\000\000\001\197\000\000\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\001\214\000\000\001\188\000\000\002\002\000~\000\000\000\000\002\244\000\000\000\000\000\000\000\000\003)\003(\000\000\000\000\001H\000z\001G\000\000\000\000\002\236\000\000\002\004\002\003\002\006\002\189\002+\002\005\000\000\000\127\000\000\000\000\002\246\000\000\000\000\000\000\000\000\002\008\002\007\002\199\002\197\002-\002\190\002\198\000\000\001\206\000\000\001\210\000\000\000\000\001\202\000\000\000\000\000\000\001\194\000\000\001\200\000\000\000\000\000\000\000\000\001\181\000\000\000\000\001\209\000\000\001\208\000\000\000\000\000\000\000\000\001\205\000\000\000\000\001\204\000\000\001\203\000\000\000\000\000\000\000\000\001\207\000\000\001\211\000\000\000\000\001x\000\004\000\000\001\185\000\005\000\000\000\000\001%\000\006\000\000\001\225\001\226\001\224\000\000\001\223\003*\001\174\000\000\000\007\000\000\001\228\001\229\001\227\000\000\000\000\000\000\000\000\001'\000\000\000\000\000\000\000\000\001,\001.\001-\001(\001*\001)\000\000\000\000\000\000\000\000\000\000\0030\003=\000\000\0031\000\000\0032\000\000\000\000\003+\000\000\000\000\000\000\000\000\003<\000\000\000\000\003;\001\233\001\232\000\000\000\000\001\176\001\222\001\230\000\000\000\000\000\000\000\000\002\014\000\000\000\000\000l\000m\002\013\000\000\000\000\000\000\000\220\000\000\001\130\000\000\000\000\000\219\000\215\000\000\000\000\000\000\000\000\001B\000\000\003@\000\000\003A\000\000\000\000\001\255\001\253\000\000\001\254\000\008\000\000\000\t\000\000\002>\002?\002=\000\000\002<\000\000\000\n\000\000\002A\002B\002@\000\000\002D\000\000\000\000\000\000\0026\000\000\000\000\0028\000\000\0022\000\000\0024\000\000\0029\000\000\002:\000\000\0023\0021\002E\001\180\002;\000\000\002G\000\000\002F\000\000\002H\000\000\002\204\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002I\000\000\000\000\002L\000\000\002K\000\000\002J\001\004\000\000\000\000\000\000\000\000\001\005\002M\000\000\000\000\002\215\000\000\000\000\000\000\000\000\002\216\000\000\000\000\001$\000\000\000\000\000\000\000\000\000\000\002\228\000k\000\000\000\000\001\013\000\000\001\031\001\030\000\000\001d\000\000\002\214\001\172\001\170\000\000\000\000\000\000\000\000\002\217\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\213\000\000\000\000\000\000\000\000\000\000\000\000\002\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\223\000\000\000\000\000\000\002\222\002\219\000\000\000\000\000\000\000\000\002\220\000\000\000\000\002\221\000\013\000\000\002\218")
+    (16, "\000\000\000\000\002\171\000\128\000\000\000\000\002\250\001Q\000\000\001O\001P\001N\000\000\001S\001R\000\001\000\000\001\145\000\000\000\000\000\144\000\000\000\000\001\129\000\169\000\000\000\000\000\156\000\000\000\000\000\161\000\160\000\000\000\157\000\000\000\155\000\000\000\000\000\000\000\159\000\000\000\158\0032\0031\000\000\000\000\000\149\000\000\000\000\000\154\000\153\000\000\000\150\000\000\000\148\000\000\000\000\000\000\000\152\000\000\000\151\000\000\000\163\000\000\000\000\000\168\000\167\000\000\000\164\000\000\000\171\000\000\001K\001J\000\000\000\172\000\000\000\170\000\143\000\000\000\162\000\000\000\177\000\000\000\000\000\000\000\166\000\000\000\000\000\000\003'\003(\000\000\000\000\000\000\000\000\000\000\003-\000\000\000\000\000\174\000\000\003/\000\000\000\000\000\000\003\172\002u\000\000\003\170\000\000\002\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\169\003\171\002{\001F\002z\001D\001E\002y\002x\002w\002s\000\000\000\000\002t\001\019\000\000\002v\000\000\003\168\000\000\000g\001C\002V\000\000\000\000\002Y\000\000\000\015\000\000\000\000\000\000\000\000\001\020\002r\002~\000_\000\021\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\138\0021\000V\001\029\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000X\000\000\000W\001\030\000\000\002\\\001\031\000\014\000\016\000\000\000\000\000\199\000\000\000\000\000\186\000\000\000\000\000\191\000\190\000\000\000\187\000\000\000\185\000\000\000\000\000\000\000\189\000\000\000\188\000\000\000\000\000\179\000\000\000\000\000\184\000\183\000\000\000\180\000\000\000\178\000\000\000\000\000\000\000\182\000\000\000\181\000\000\000\193\000\000\000\000\000\198\000\197\000\000\000\194\000\000\000\201\000\000\000\000\000\202\000\000\000\200\000\000\000\192\000\000\000\207\000\000\000\000\000\000\000\196\000\000\000\000\000\000\000\000\000\206\000\000\000\000\000\146\000\000\000\000\000\000\000\000\000\000\000\000\002\023\000\215\000\000\000\000\000r\000s\002\022\001\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\221\000\000\001\248\000\000\000\000\000\000\000\000\000\214\000\212\000\227\000\000\001\137\000\000\000\000\003*\000\000\003)\000\000\000\000\000\000\000\000\000\000\000\204\000\000\000\000\000\000\000\000\000\205\000\203\000\000\000\000\003,\0030\000\195\000\000\000\000\001\"\000\000\000\000\002W\002Z\000\000\002X\002[\003\143\003\144\003\142\000\000\002|\003\141\000\000\002\150\000\000\000\000\002\149\002\148\002\147\002\146\002\145\002\141\000\000\000\000\002\142\000\000\002\144\000\000\000\000\000k\002d\000\000\000\000\002g\000\000\000\000\002j\000\000\000\000\002e\002h\000\000\002f\002i\002\152\002\140\003\157\003\158\003\156\003\155\000l\000\000\000\000\000[\000\000\000Z\001'\000\000\002\001\000\000\000\000\000\000\000\000\000\000\001\024\002\007\000\000\000\000\001\169\000Y\0003\001\017\000c\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\000\000\0005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002}\000\000\000\210\000\000\000\000\001\242\000\000\001\159\001\223\000\000\000\000\001\241\000\000\001\157\001\222\000\000\000\000\000h\000\000\002\151\000\000\000\000\003\160\003\159\000\000\002\002\000\000\000\000\003\146\003\145\000\000\000U\000\211\000\000\001\131\000\000\003+\000\000\000\000\000\000\000\000\000\175\000\173\000\000\001\028\000\000\000\000\000\176\000\165\000\000\000\000\001k\000\000\001j\000\000\001y\000\000\001\147\000\000\000\000\000\000\003b\000\000\000\000\003U\000\000\000\000\003Z\003Y\000\000\003V\000\000\003T\000\000\000\000\000\000\003X\000\000\003W\000\000\000\000\003N\000\000\000\000\003S\003R\000\000\003O\000\000\003M\000\000\000\000\000\000\003Q\000\000\003P\000\000\003\\\000\000\000\000\003a\003`\000\000\003]\000\000\003d\000\000\000\000\003e\000\000\003c\000\000\003[\000\000\003j\000\000\000\000\000\000\003_\000\000\000\000\003\137\000\000\000\000\000\000\000\000\003i\003^\000\000\003\139\000\000\000\000\003\n\003\138\000\136\000\000\001\000\000\000\000\000\000\000\000\000\003g\000\000\000\000\000\000\000\000\003h\003f\000\000\000\000\003\128\000\000\000\000\003s\000\000\000\000\003x\003w\000\000\003t\000\000\003r\000\000\000\000\000\000\003v\000\000\003u\000\000\000\000\003l\000\000\000\000\003q\003p\000\000\003m\000\000\003k\000\000\000\000\000\000\003o\000\000\003n\000\000\003z\000\000\000\000\003\127\003~\000\000\003{\000\000\003\130\000\000\000\000\003\131\000\000\003\129\000\000\003y\000\000\003\136\000\000\000\000\000\000\003}\000\000\000\000\000\000\000\000\003\135\003|\000\000\000\000\000\000\000\000\003\133\000\000\000\000\000\000\000\000\003\134\003\132\003#\003%\003&\003$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\237\000\216\000\000\000\000\000}\000\000\000\000\000\000\002\130\000\000\000\000\000\000\002\138\000\000\000\000\002\137\000\000\003\153\002\136\002\135\002\134\002\133\002\132\001g\002\128\000\000\000\000\002\129\000\000\002\131\000\000\000\000\000\000\000\000\000\000\000i\002]\000\000\000\000\002`\000\000\000\000\002c\000\000\000\000\002^\002a\000\000\002_\002b\002\139\002\127\000j\003\150\003\151\003\149\003\148\003\152\000\000\000\000\000\000\000\000\001\016\001\015\000\000\000\000\000\000\000\000\000\000\000\000\001\\\000\000\001\026\001Y\000\000\001\014\000\000\000\000\000\000\001`\000\000\000\000\001a\000\000\001\141\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\000\000\000&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001e\000\000\000\000\001d\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\000\000\000z\000u\000w\000v\001f\001_\001b\000\000\001^\001[\000\000\001Z\000\000\000\249\000\000\002\244\000\000\000\000\000\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\252\000\000\000\000\000\255\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\000\000\000\000\000\000\242\000\000\000\239\000\000\000\000\000\000\000\000\000\000\000\250\000\000\000\246\000\000\000\000\000\000\000\000\000\247\000\000\000\243\000\000\000\000\000\000\002\156\000\000\000\000\000\000\000\000\002\163\000\000\000\000\002\162\002\161\002\160\002\159\002\158\002\154\000\000\000\000\002\155\000\000\002\157\000\000\000\000\000m\002k\000\000\000\000\002n\000\000\000\000\002q\000\000\000\000\002l\002o\000\000\002m\002p\002\165\002\153\003\164\003\165\003\163\003\162\000n\000\000\000\000\000^\000\000\000]\000\000\002\164\000\000\001\224\000\\\000B\001&\000d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000C\000\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\167\003\166\000\000\003\026\000\000\003\025\000\000\000\000\000\000\000\000\003\179\000\000\000\000\000\000\003\180\000\000\000\018\000\000\000\000\000\000\003\175\000\000\001\171\000\000\000\000\000\000\000\228\003\016\001\127\001~\001U\001T\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\022\001\006\000\000\001\143\000\000\000\000\001\005\001\001\000\000\001\b\001\002\001\007\000\000\003\028\000\000\003\027\003\r\000\000\000\000\000\000\000\000\000\000\003\022\000\000\000\000\000\000\000\000\003\023\003\015\000\000\003\029\000\000\003\017\000\000\000\232\001V\000\000\003 \000\000\001X\000\000\000\000\0038\000\000\003?\000\234\000\000\000\240\000\000\0039\000\233\000\000\003:\000\000\003A\000\000\000\000\000\000\000\000\000\253\000\000\000\236\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\251\000\000\000\000\000\254\000\000\000\000\000\000\000\000\001H\000\000\000\000\000\000\000\241\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\248\000\000\000\244\000\230\000\229\000\000\003B\003C\000\000\003D\000\000\003E\000\000\001W\003\020\000\000\000\000\001\246\000\000\001\167\001\228\000\000\003\014\000\000\000\000\000\000\003\019\000\000\000\000\000\000\001<\000\000\0016\000\000\0017\000\000\001A\0015\001@\000\000\003\031\001B\000\000\000\235\000\000\000\000\000\000\000\000\001>\0019\001\243\000\000\001:\000\000\001;\000\000\001\161\001\225\000\000\000\000\000\000\001\253\000\000\001\251\000\000\000\000\001\255\001\249\000\000\002\000\001\250\000\000\003!\002\003\000\000\000\231\000\000\000\000\001\244\000\000\001\163\001\226\000\000\003\176\000\000\003\173\000\000\003\174\000\019\000\020\000\000\000\000\002\216\000\000\002\215\000\000\002\025\000\000\002\218\000\000\002\217\000\000\000\000\000\000\002!\000\000\000\000\002%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002(\000\000\000\000\002+\000\000\002\027\000\000\000\000\002\030\000\000\000\000\000\000\002\"\000\000\000\000\002&\000\000\000\000\001\245\000\000\000\000\002\031\000\000\000\000\002#\002\213\002\028\000\000\002\214\000\000\000\000\000\000\000\000\002)\000\000\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002'\000\000\000\000\002*\000\000\002\026\000\000\000\000\002\029\000\000\000\000\000\000\002 \000\000\000\000\002$\000\000\001\165\001\227\000\000\002\219\000\000\000\000\000\000\003\177\000\017\000{\000\000\003\178\000\000\000\000\002\240\000\000\000\000\003\"\000e\000\000\000\000\000\000\000f\000\000\003\024\000\000\001\133\000\000\001\139\003\021\000\000\000\000\001q\000\000\001p\000\000\001z\000\000\001\153\000\000\000\000\000\000\001o\000\000\001n\000\000\001w\000\000\001\151\000\000\000\000\000\000\001v\000\000\000\000\000\000\001s\000\000\001r\000\000\001x\000\000\001\155\000\000\000\000\000\000\001t\000\000\000\000\000\000\001m\000\000\001l\000\000\001{\000\000\001\149\000\000\000\000\000\000\001u\000\002\000\000\000R\000S\000\000\000\000\002\181\002\185\002\189\002\177\002\174\000\000\000\000\002\186\002\193\002\178\002\192\002\176\002\191\002\180\002\172\002\179\002\188\002\175\002\182\002\173\002\184\002\190\002\187\002\183\001\189\001\188\000\134\000\000\000\000\003\006\000\000\000\000\002\234\000\000\000\000\002\236\002\235\002\203\000\000\000\000\003\012\002\195\002\194\002\196\000\000\001\203\000Q\001|\000\003\000\000\000\000\002\168\000\000\002/\000\000\000\135\000\000\000\000\003\b\000\000\000\000\000\000\000\127\000\000\000\000\002\248\000\000\002\019\002\018\001\183\002\204\000\000\001\219\000\000\002\169\000\000\000\000\000\129\000\000\000\000\002\252\000\000\001\200\000\000\000\000\001\194\000\000\000\000\000\000\001\199\000\000\001\196\000\000\000\000\000\000\001\173\001\172\000\000\000\000\000\000\001\220\000\000\001\192\000\000\001\191\000\000\000|\000\000\000\000\002\242\000\000\000\000\001\187\000\000\000\000\000\132\000\000\000\000\003\002\000\000\000\000\002\211\000\000\002\210\000\000\000\000\000\000\002\017\002\016\002\208\0027\002\199\002\209\000\000\001\206\000\000\000\000\000\000\001\202\000\000\001\208\000\000\000\000\001\195\000\000\000\000\000\000\002\201\000\133\000\000\000\000\003\004\000\000\002\200\000\000\001\204\000\000\000\000\001\205\000\000\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\001\221\000\000\001\193\000\000\002\t\000\130\000\000\000\000\002\254\000\000\000\000\000\000\000\000\0034\0033\000\000\000\000\001M\000~\001L\000\000\000\000\002\246\000\000\002\011\002\n\002\r\002\197\0023\002\012\000\000\000\131\000\000\000\000\003\000\000\000\000\000\000\000\000\000\002\015\002\014\002\207\002\205\0025\002\198\002\206\000\000\001\213\000\000\001\217\000\000\000\000\001\209\000\000\000\000\000\000\001\201\000\000\001\207\000\000\000\000\001\197\000\000\000\000\000\000\000\000\001\186\000\000\000\000\001\216\000\000\001\215\000\000\000\000\000\000\000\000\001\212\000\000\000\000\001\211\000\000\001\210\000\000\000\000\000\000\000\000\001\214\000\000\001\218\000\000\000\000\001}\000\004\000\000\001\190\000\005\000\000\000\000\001*\000\006\000\000\001\232\001\233\001\231\000\000\001\230\0035\001\179\000\000\000\007\000\000\001\235\001\236\001\234\000\000\000\000\000\000\000\000\001,\000\000\000\000\000\000\000\000\0011\0013\0012\001-\001/\001.\000\000\000\000\000\000\000\000\000\000\003;\003H\000\000\003<\000\000\003=\000\000\000\000\0036\000\000\000\000\000\000\000\000\003G\000\000\000\000\003F\001\240\001\239\000\000\000\000\001\181\001\229\001\237\000\000\000\000\000\000\000\000\002\021\000\000\000\000\000p\000q\002\020\000\000\000\000\000\000\000\224\000\000\001\135\000\000\000\000\000\223\000\219\000\000\000\000\000\000\000\000\001G\000\000\003K\000\000\003L\000\000\000\000\002\006\002\004\000\000\002\005\000\b\000\000\000\t\000\000\002F\002G\002E\000\000\002D\000\000\000\n\000\000\002I\002J\002H\000\000\002L\000\000\000\000\000\000\002>\000\000\000\000\002@\000\000\002:\000\000\002<\000\000\002A\000\000\002B\000\000\002;\0029\002M\001\185\002C\000\000\002O\000\000\002N\000\000\002P\000\000\002\212\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002Q\000\000\000\000\002T\000\000\002S\000\000\002R\001\t\000\000\000\000\000\000\000\000\001\n\002U\000\000\000\000\000\000\002\224\000\000\002\223\000\000\000\000\000\000\000\000\002\225\000\000\000\000\001)\000\000\000\000\000\000\000\000\000\000\002\238\000o\000\000\000\000\001\018\000\000\001$\001#\000\000\001i\000\000\002\222\001\177\001\175\000\000\000\000\000\000\000\000\002\226\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\221\000\000\000\000\000\000\000\000\000\000\000\000\002\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\233\000\000\000\000\002\232\000\000\002\229\000\000\000\000\000\000\000\000\000\000\002\230\000\000\000\000\000\000\002\231\000\r\000\000\002\227\000\000\002\228")
   
   let error =
-    (179, "\000\000\000\001\128\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\000\000\000\000\000\000\000\000\000\004\000\134\000\000\004\008`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\128\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\128\000\000\000\000\000\000\000=j\188\000\008\000 \000\002\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@J\161\160\n\002\026\160\128\144\204\008\192h\004C\188\018\000\004s!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000.\209\192\000\000\012@\000@\006\004`\016\002\000\132\000\000\000\t\144\196\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\019(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000H\161\128\000\000\008\128\000\128H\008\192 \004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023h\224\000\000\006 \000 \003\0020\008\001\000B\000\000\000\004\200b\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\1480\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\001\"\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000$P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\1480\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\001\"\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \000\128\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\"\000\002! #\000\128\016\004 \000\000\000L\134/Z\175\000\002\000\008\000\000\130\002\000\000\000\000\000\128\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\001\008\000 \000\002\008\008\000\000\000\000\002\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000 \000\128\000\008  \000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\128\000\000\001\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \128\128\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\001\000\004\000\000A\001\000\000\000\000\000@\000\008\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\016\000\002 \000\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\128\008!\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\000\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\000\000A\000\130\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\128\008 \016@\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\t\235U\224\000D\145\000$\026\005A\157\160\000\016\144\008\002\000 \128A=j\188\000\008\146 \004\131@\1683\180\000\002\018\001\000@\004\016\008 \000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\245\170\240\000\"H\128\018\013\002\160\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\004L\019e\146\192\000\005\000 @\000\013\208\016\158\029\192\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$@\t\006\129Pg\232\000\004$\002\000\128\008$\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\128\000\008\136 \192%\128\000\n\000@\000\000\027 \0014;\128\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\018\000\000\" \155\008\150\000\000(\001\000\000\000l\128\004\240\238\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\000\" \155\008\150\000\000(\001\000\000\000L\128\004\240n\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000H\000\000\136\130l\"X\000\000\160\004\000\000\0012\000\019\193\184\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\001 \000\002\"\t\176\137`\000\002\128\016\000\000\004\200\000O\006\224\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\004\128\000\008\136&\194%\128\000\n\000@\000\000\019 \001<\027\128\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\001 \000\002\"\t\176\137`\000\002\128\016\000\000\004\200\000O\006\224\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\004\128\000\008\136&\194%\128\000\n\000@\000\000\019 \001<\027\128\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\018\000\000\" \155\008\150\000\000(\001\000\000\000L\128\004\240n\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000H\000\000\136\130l\"X\000\000\160\004\000\000\0012\000\019\193\184\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\001 \000\002\"\t\176\137`\000\002\128\016\000\000\004\200\000O\006\224\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\024\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\004\128\000\008\136&\194%\128\000\n\000@\000\000\019 \001<\027\128\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\018\000\000\" \155\008\150\000\000(\001\000\000\000L\128\004\240n\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000H\000\000\136\130l\"X\000\000\160\004\000\000\0012\000\019\193\184\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\235U\160\000@\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\168\016\000\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\000\008\128\000\128H\008\192 \004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 $P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\000\008\128\000\128H\008\192 \004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\016\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000D\000\004\002@F\001\000 \008@\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\001\016\000\016\t\001\024\004\000\128!\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\004\138\024\000\000\000\136\000\008\004\128\140\002\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\000\008\128\000\128H\008\192 \004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\"\000\002\001 #\000\128\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\018(`\000\000\002 \000 \018\0020\008\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\000\008\128\000\136H\008\192 \004\001\008\000\000\000\019!\139\214\171\192\000\128\002\000\000 \128\128\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000$P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\000 \000\002\008\008\000\000\000\000\002\000\000\000\000\000@\007\173W\128\001\000\004\000\000A\001\000\000\000\000\000@\000\008\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\128\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\000 \000\002\000\008\192\000\000\000\000\000\000@\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\003\214\171\192\000\128\002\000\000 \000\140\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000 \000\000\000@\000\000\000\004@\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000@\000\004\000\017\128\000\000\000\000\000\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\128\001\235U\224\000@\001\000\000\016\000F\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\002\000\008\000\000\128\0020\000\000\000\000\000\000\016\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\170\208\000 \000\128\000\000\000 \000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\128\000\000\001\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \128\128\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000$P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\017\000\001\016\144\017\128@\008\002\016\000\000\000&C\023\173W\128\001\000\004\000\000A\001\000\000\000\000\000@\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000H\161\128\000\000\008\128\000\128H\008\192 \004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\003\214\171\192\000\137\"\000H4\n\131?@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\000\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\000\008 \016@\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000\000\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\000\000\016@ \128\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000@\129\022I(\000\000@\000\004\000\000\213\001\000A\024\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\001\018D\000\144h\021\006~\128\000B@ \008\000\130A\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\004\000\017`\018\128\000\004\000\000\000\000\013\016\000\004\017\128\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\001\000\000\004\000\000\000\000\000\128I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\001\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\001\000\004X\004\160\000\001\000\000\000\000\002D\000\001\000`\000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\000\000\002@\000\004\000\017`\018\128\000\004\000\000\000\000\t\016\000\004\001\128\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\t\000\000\016\000E\128J\000\000\016\000\000\000\000$@\000\016\006\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\000\008 \016@\000\000$\000\000@\001\022\001(\000\000@\000\000\000\000\145\000\000@\024\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\000\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\t\000\000\016\000E\128J\000\000\016\000\000\000\000$@\000\016\006\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\000\008 \016@\000\000$\000\000@\001\022\001(\000\000@\000\000\000\000\145\000\000@\024\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\000\000 \128A\000\000\000\144\000\001\000\004X\004\160\000\001\000\000\000\000\002D\000\001\000`\000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\000\000\002@\000\004\000\017`\018\128\000\004\000\000\000\000\t\016\000\004\001\128\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\t\000\000\016\000E\128J\000\000\016\000\000\000\000$@\000\016\006\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\192\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\000\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \000\000\130\001\004\000\000\002@\000\004\000\017`\018\128\000\004\000\000\000\000\t\016\000\004\001\128\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128\000\002\008\004\016\000\000\t\000\000\016\000E\128J\000\000\016\000\000\000\000$@\000\016\006\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\000\008 \016@\000\000$\000\000@\001\022\001(\000\000@\000\000\000\000\145\000\000@\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\128\000\245\170\240\000 \000\128\000\008\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\137\"\000H4\n\131;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000\"H\128\018\013\002\160\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000\000\000 \000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\"\000\002! #\000\128\016\004 \000\000\000L\134/Z\175\000\002\000\008\000\000\130\002\000\000\000\000\000\128\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\145C\000\000\000\017\000\001\000\144\017\128@\008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000$P\192\000\000\004@\000@$\004`\016\002\000\132\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\002\245\170\240\000 \000\128\000\008\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 #H\160\016\012b\184\238\240\128\025\234\012\000#T@\160\158\181^\000\004\000\016\000\001\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\129\000\000\000\008\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\016\001\000P\016\145\004\000\134 \000\002@\002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001P \000\000\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\001\000P\016\145\004\000\134 \000\002@\002\029\160\144\000#\000\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\001\000P\016\145\004\000\134 \000\002@\002\029\160\144\000#\000\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\008\000\000\000\000\000\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\224\000@\001\000\000\016\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000P\016\145\004\000\198 \000\002@\002\029\160\144\000#\000\000\030\181^\000\004\000\016\000\001\004\004\000\000\000\000\001\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000@\000\000\000\000\000\000\245\170\240\000 \000\128\000\008  \000\000\000\000\008\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\012b\000\000$\000!\218\t\000\0020\000\001\235U\224\000@\001\000\000\016@@\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\214\171@\000\128\002\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001P \000\000\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\001\000P\016\145\004\000\134 \000\002@\002\029\160\144\000#\000\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000*\004\000\000\000 \000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\008\000\128(\008H\130\000C\016\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\001\012@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\000\000\000\000@\004\001@BD\016\002\024\128\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\000!\136\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000P\016\145\004\000\134 \000\002@\002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004$A\0001\136\000\000\144\000\135h$\000\008\192\000\007\173W\128\001\000\004\000\000A\001\000\000\000\000\000@\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\002\000 \n\002\018 \128\016\196\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000@\000\000\000\128\000\000\000\000\000\001\235U\224\000@\001\000\000\016@@\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\128\008\002\128\132\136 \0041\000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\018 \128\024\196\000\000H\000C\180\018\000\004`\000\003\214\171\192\000\128\002\000\000 \128\128\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\001\000\016\005\001\t\016@\008b\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\008\000\210\008\004\003\016\162;\180 \006z\131\000\008\197\016( \000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\000\016\000@\000\004\000\016\000\016\000\000\004\000\000\000`\016\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\000 \000\002\000\008\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\000\000\000\t \000H5\n\003{@\000! \016\004\000A\000\130\000\000\000\000\001$\000\008\006q@gh\000\012$\002\002\160\008 \144@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181^\000\004I\016\002A\160T\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\016\012\002\128\206\208\000\024H\004\000\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000@0\n\003;@\000a \016\000\000A\000\130\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016OZ\175\000\002$\136\001 \208*\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\146\000\004\003\000\1603\180\000\006\018\001\000\000\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\129\002\012\146P\000\000\128\000\008\000\001\n\002\016\0000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\002$\136\001 \208*\012\253\000\000\132\128@\016\001\004\130\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\016\000\000\000\000\000\002H\000\018\013\002\128\206\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001\000\206(\012\237\000\001\132\128@T\001\004\018\008\000\000\000\000\004\144\000 \025\197\001\157\160\0000\144\008\n\128 \128A\000\000\000\144\000\001\019\004\217d\176\000\001@\008\016\000\003t\004%\007p\000\000\000 \018@\000\128g\020\006v\128\000\194@ *\000\130\t\004\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\168P\027\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\004\012\016d\146\192\000\004\000\000@\000\012\208\016\144\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\t \000@3\n\003;@\000a \016\017\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\004\144\000 \025\133\001\157\160\0000\144\008\008\128 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\016\000A\128J\000\000\016\000\000\000\000 @\002\000\006\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000 \000\000@\001\006\001(\000\000@\000\000\000\000\129\000\008\000\024\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\128\000\001\000\004\024\004\160\000\001\000\000\000\000\002\004\000 \000`\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\002\000\000\004\000\016`\018\128\000\004\000\000\000\000\008\016\000\128\001\128\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\128\000\001\000\004\024\004\160\000\001\000\000\000\000\002\004\000 \000`\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\002\000\000\004\000\016`\018\128\000\004\000\000\000\000\008\016\000\128\001\128\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\008\000\000\016\000A\128J\000\000\016\000\000\000\000 @\002\000\006\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000 \000\000@\001\006\001(\000\000@\000\000\000\000\129\000\008\000\024\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\128\000\001\000\004\024\004\160\000\001\000\000\000\000\002\004\000 \000`\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\002\000\000\004\000\016`\018\128\000\004\000\000\000\000\008\016\000\128\001\128\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\008\000\000\016\000A\128J\000\000\016\000\000\000\000 @\002\000\006\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000 \000\000@\001\006\001(\000\000@\000\000\000\000\129\000\008\000\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\018@\000\128g\020\006v\128\000\194@ *\000\130\t\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002\001\156P\025\218\000\003\t\000\128\168\002\008$\016\000\000\000\000\t \000@3\138\003;@\000a \016\021\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000$\128\001\000\206(\012\237\000\001\132\128@T\001\004\018\008\000\000\000\000\004\144\000 \025\197\001\157\160\0000\144\008\008\128 \130A\000\000\000\000\000\146\000\004\0038\1603\180\000\006\018\001\001P\004\016H \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000I\000\002\001\156P\025\218\000\003\t\000\128\168\002\008$\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\140\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \000\140\000\000\000\000\000\000\004\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131P\1607\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\144\000\000\000\000\000\000\000\000\128\000\016\000\000\000\000\000\000\000\000\016\000\018\000\000\000\000\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\002\000\008\000\000\128\0020\000\000\000\000\000\000\016\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\004\000\000\128\000\000\000\000\000\000I\000\002A\168P\027\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029j\180\000\008\000 \000\000\000\008\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\004\000\000\128\000\000\000\000\000\000I\000\002A\168P\027\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000\002H\000\018\013B\128\222\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\007\255_\193\001\026E\000\144j\021\199w\132\000\207P`\t\030\163\013\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\000\000\t \000@0\n\003;@\000a \016\000\000A\000\130z\213x\000\017$@\t\006\129Pgh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\003\000\1603\180\000\006\018\001\000\000\004\016\008 \000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000\000\000$\128\001\000\192(\012\237\000\001\132\128@\000\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\000\"`\155,\150\000\000(\001\002\000\000j\128\128\160\238\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\137\"\000H4\n\131?@\000! \016\004\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\002\"\t\176\137`\000\002\128\016\000\000\006\136\000\n\014\224\000\000\000\000$\128\001 \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\004D\019a\018\192\000\005\000 \000\000\t\016\000\020\013\192\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\t\000\000\017\016M\132K\000\000\020\000\128\000\000$@\000P7\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000$\000\000DA6\017,\000\000P\002\000\000\000\145\000\001@\220\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\144\000\001\017\004\216D\176\000\001@\008\000\000\002D\000\005\003p\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000$\000\000DA6\017,\000\000P\002\000\000\000\145\000\001@\220\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\144\000\001\017\004\216D\176\000\001@\008\000\000\002D\000\005\003p\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\002@\000\004D\019a\018\192\000\005\000 \000\000\t\016\000\020\013\192\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\t\000\000\017\016M\132K\000\000\020\000\128\000\000$@\000P7\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000$\000\000DA6\017,\000\000P\002\000\000\000\145\000\001@\220\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\003\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\018@\000\128`\020\006v\128\000\194@ \000\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002\001\128P\025\218\000\003\t\000\128\000\002\008\004\016\000\000\t\000\000\017\016M\132K\000\000\020\000\128\000\000$@\000P7\000\000\000\000\001$\000\008\006\001@gh\000\012$\002\000\000\008 \016@\000\000$\000\000DA6\017,\000\000P\002\000\000\000\145\000\001@\220\000\000\000\000\004\144\000 \024\005\001\157\160\0000\144\008\000\000 \128A\000\000\000\144\000\001\017\004\216D\176\000\001@\008\000\000\002D\000\005\003w\173W\128\001\018D\000\144h\021\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\002\t\006\129@gh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\193\225\026E\000\128c\021\199w\132\000\207P`\001\026\162\005\004\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\016\000\000\000\000\000\000\016D\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\128\141\"\128@1\n\227\187\194\000g\1680\000\141Q\002\130\127\245\252\016\017\164P\t\006\161|wx@\012\245\006\000\145\170(PO\254\191\131\1944\138\001\000\198+\142\239\008\001\158\160\192\0025D\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\255\015\008\210(\004\003\024\190;\188`\006z\147\000\008\245\028k0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 #H\160\016\012b\184\238\240\128\025\234\012\000#T@\160\159\253\127\004\004i\020\002A\168_\029\222\016\003=A\128$j\138\020\019\255\175\224\128\141\"\128H5\n\227\187\194\000g\1680\004\141Q\006\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\002\0004\130\001\000\196(\142\237\008\001\158\160\192\0021D\n\008\000\000\000@\006\144@ \024\133\017\221\161\0003\212\024\000F(\129A\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \016H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128A \208(\012\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131@\1603\180\000\002\018\001\000@\004\018\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000 \003H \016\012B\136\238\208\128\025\234\012\000#\020@\160\128\000\000\004\000i\004\002\001\136Q\029\218\016\003=A\128\004b\136\020\016\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\004\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\004\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\146 \004\131@\1683\244\000\002\018\001\000@\004\018\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000 \003H \016\012B\136\238\208\128\025\234\012\000#\020@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\193\001\026E\000\144j\021\199w\140\000\207P`\t\026\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\240\240\141\"\128@1\139\227\187\198\000g\1690\000\143Q\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\254\008\008\210(\004\003\024\174;\188`\006z\131\000\008\213\016( \000\000\000\000\000\000\000\016\008\000\000\000\008\000\000\000\000\008\000\000\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\004\004i\020\002\001\140W\029\2220\003=A\128\004j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000D\1936Y,\000@P\002\004\128\000\221\001\001A\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000@\000\000\000\000@\000\000\003\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\004\004i\020\002A\168W\029\2220\003=A\128$j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164P\008\0061\\wx\192\012\245\006\000\017\170 V`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\146 \004\131@\1683\244\000\002\018\001\000@\004\018\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\016\000\001\024\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000 \000\128\000\008\000#\000\000\000\000\000\000\001\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\001 \212(\013\237\000\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000 \000\128\000\008\000#\000\000\000\000\000\000\001\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000@\000\008\000\000\000\000\000\000\004\144\000$\026\133\001\189\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\214\171@\000\128\002\000\000\000\000\128\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000@\000\008\000\000\000\000\000\000\004\144\000$\026\133\001\189\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\191\130\0024\138\001 \212+\142\239\024\001\158\160\192\0185D\n\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \016\008\000\000\000\008\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\004\004i\020\002A\168W\029\2220\003=A\128$j\136\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\002\000\000#\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\004\000\000\000\000\001\000\026A\000\128b\020Gv\132\000\207P`\001\024\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\004\000\007\255\127\225\001\026G\000\152j\023\199w\140\001\207R`\025\030\163\173f\000\000\000 \003H \016\012B\136\238\208\128\025\234\012\000#\020@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\128\141\"\128@1\139\227\187\194\000g\1680\000\143Q\198\130\000\000\000\000\000\000\000\001\000\128\000\000\000\000\000\000\000\000\128\000\000\000\015\254\191\130\0024\138\001\000\198/\142\239\008\001\158\160\192\002=G\026\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 #H\160\018\013B\248\238\240\128\025\234\012\001#\212q\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\128\141\"\128H5\011\227\187\194\000g\1680\004\143Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\008\000\015\254\191\130\0024\138\001\000\198/\142\239\008\001\158\160\192\0025E\n\008\000\000\000\000\000\000\000\004\002\000\128\000\000\000\000\000\000\002\000\000 \000?\250\254\008\008\210(\004\003\024\190;\188 \006z\131\000\008\213\020( \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\008\004\001\000\000\000\000\000\000\000\004\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\191\130\0024\138\001 \212/\142\239\008\001\158\160\192\0185E\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\128\008\008\192\000\000\001\000\000\000\000\002\000\000\000\000\000\000\000\001\000\012\004\000\000\000\000\000\128\000\000\004\000\000\016\001\127\245\252\016\017\164P\008\0061\\wx@\012\245\006\000\017\170 P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\006\002\000\000\000\000\000@\000\000\002\000\000\008\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\193\001\026G\000\152j\021\199w\132\001\207P`\t\026\162%\006\255\235\248 #H\160\016\012b\184\238\240\128\025\234\012\000#T@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164p\t\134\161\\wx@\028\245\006\000\145\170\"P`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\008\000\015\254\191\130\0024\138\001 \212/\142\239\008\001\158\160\192\0185E\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\001\000\128\000\000\000\128\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\215\240@F\145@$\026\133q\221\227\0003\212\024\002F\168\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\253\127\000\004I\020\002\001\128T\025\222\000\003\t\000\128\000\n\136\020\016\000\000\000\000\t \016H4\n\003;@\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=\250\254\000\008\146(\004\003\000\1683\188\000\006\018\001\000\000\021\016( \000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000@\000\004\000\016\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144j\020\006\246\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\024\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\001\000\004\000\000@\001\024\000\000\000\000\000\000\008\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\161@oh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013B\128\222\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000@\000\000\000\016\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144j\020\006\246\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000@\000{\245\252\000\017$P\008\006\001Pgx\000\012$\002\000\000* P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\128\000\008\024 \201%\128\008\008\000\000\144\000\024\160  #\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\018\013B\128\222\208\000\008H\004\001\000\016@ \128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000\"H\128\018\013\002\160\207\208\000\008H\004\001\000\016H \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000@\000\004`\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\003\214\171\192\000\128\002\000\000 \000\140\000\000\000\000\000\000\004\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\004\131P\1607\180\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\161@oh\000\004$\002\000\128\008 \016@\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029j\180\000\008\000 \000\000\000\008\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t \000H5\n\003{@\000! \016\004\000A\000\130\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\002\000\002\000 #\000\000\000\004\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\002\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\008 \000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\215\240@F\145@ \024\197q\221\225\0003\212\024\000F\168\129A\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\127\245\252\016\017\164P\t\006\161\\wx@\012\245\006\000\145\2340\208@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\000\004\000\016\000\001\000\004\000\004\000\000\001\000\000\000\024\004 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\005\255\215\240@F\145@ \024\197q\221\225\0003\212\024\000F\168\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\193\001\026E\000\128c\021\199w\132\000\207P`\001\026\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\016\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\016\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\016\000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160P\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000@\000\000\000\000\000\000\000 \000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\164\016\008\006!Dwh@\012\245\006\000\017\138 P@\000\000\000\000\000\004\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\004\000\000\000@\006\144@ \024\133\017\221\161\0003\212\024\000F(\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\026A\000\128b\020Gv\132\000\207P`\001\024\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\016\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\144\000$\026\005\001\157\160\000\016\144\008\002\000 \128A\000\000\000\000\000\000\016\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\000\004\000\016\000\001\000\004\000\004\000\000\001\000\000\000\008\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\127\245\252\000\016\000@\000\004\000\016\000\016\000\000\004\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\215\240\000@\001\000\000\016\000@\000@\000\000\016\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\t\006\129@gh\000\004$\002\000\128\008 \016@\000\000\000\000\000\004\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\128p\016\145$\008@ \000\002@\002\020\160\144\000#\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\000@\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\008\000\128(\008\008\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\002\000\000@\000\000\000\000\000\000\004\008\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\004@\000\000\000\000\000\000\004\008\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\028\004$A\002\016\008\000\000\144\000\133 $\000\008\192\000\007\173W\128\003\128\132\000 B\001\000\000\018\000\016\164\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\0180\128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\001\000\000\000\004\000@\020\004$A\000\001\000\000\000\144\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\008\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\016\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\016\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\028\004$\001\002\016\008\000\000\144\000\133 $\000\008@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000p\016\128\004\008@ \000\002@\002\020\128\144\000!\000\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000@\128\000\001\000\016\005\001\t\016@\000@\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000P\016\145\004\000\004\000\000\002@\002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\128(\008H\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\001\000\016\005\001\t\016@\000@\000\000\164\000!\218\t\000\0028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000@\004\001@BD\016\002\016\000\000)\000\008v\130@\000\142\000\000\000\008\000\128(\008H\130\000\002\000\000\001 \005\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\128\008\002\128\132\136 \000 \000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000\008\000 \000\002\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\030\181^\000\004\000\016\000\001\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\001\000\016\005\001\t\016@\008`\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\000\128\008\002\128\132\136 \000 \000\000\018\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\016\000\000\000@\004\001@BD\016\000\016\000\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\000\000\000\001\000\000\000\128\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\018 \128\008\128\000\000H\000C\180\018\000\004`\000\000\000@\004\001@BD\016\000\016\000\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\000@\000\000$\000!\218\t\000\0020\000\000\000 \002\000\184!\"\008\000(\000\000\020\128\004;A \000G\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\001@BD\016\000\016\000\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\004\160!\"\008\000\008\000\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\002\000\000\000\008\000\129(\008H\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\000\000\000 \000\000\016\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\000`\000\000$\000!\218\t\000\0020\000\000\000 \002\000\161!\"\008\001(\000\000\020\128\004;A \000G\000\000\000\004\000@\020\004$A\000\001\000\000\000\144\002\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\016\001\000P\016\145\004\000\004\000\000\002@\002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160!\"\008\000\012\000\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\008\000\000\004\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\008\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\001\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000  \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 @\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000P\016\145\004\000\004\000\000\002@\002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\002\000\000\000\008\000\128(\008H\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\000\000\000\000 \000\000\016\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\000@\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\002\128\132\136 \000 \000\000\018\000\016\237\004\128\001\024\000\000\000\016\001\000\\\016\145\004\000\020\000\000\n@\002\029\160\144\000#\128\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235u\226\000\224!\"\008\016\136@\000\004\128\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\128\008\002\128\128\136 \000 \000\000\018\000\016\237\004\128\001\024\000\000\000\016\001\000\\\144\145\004\000\022\000\000\n@\002\029\160\144\000#\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\001@BD\016\000\016\000\000\t\000\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\245\186\241\000p\016\145\004\008F \000\002@\002\029\160\144\000#\000\000\000\002\000 \n\002\018 \128\000\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\005\001\t\016@\000@\000\000$\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\018 \128\016\128\000\000H\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\008\000\128(\008H\130\000\002\000\000\001 \001\014\208H\000\017\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\008\007\001\t\018@\132\002\000\000$\000!J\t\000\0020\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\028\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164P\t\007\161\220wx@\012\245&\000\145\170 V`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\132\004i\020\002A\232W\029\222\016\003=I\128$j\136\021\155\223\191\240\000\128\002\000\000 \000\128\000\000\000\000\001\000\000\000\000\000\000{\247\254\000\016\000@\000\004\000\016\000\000\000\000\000 \000\000\000\000\000\015~\255\192\002\000\008\000\000\128\002\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\018(`\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\002E\012\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000H\161\128\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248<#H\160\016\012b\184\238\240\128\025\234\012\000#T@\160\159\253\127\004\004i\020\002\001\140W\029\222\016\003=A\128\004j\136\020\016\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164P\008\0061\\wx@\012\245\006\000\017\170 V`\000\000\000\000\000\000\000 \016\000\000\000\000\000\000\000\000\016\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \016\008\000\000\000\000\000\000\000\000\008\000\000\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\127\004\004i\020\002A\168W\029\222\016\003=A\128$j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\008\006q@gh\000\012$\002\002\160\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\254\015\008\210(\004\003\024\174;\188 \006z\131\000\008\213\016('\255_\193\001\026E\000\128c\021\199w\132\000\207P`\001\026\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\031\253\127\004\004i\020\002\001\140W\029\222\016\003=A\128\004j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\030\017\164P\008\0061\\wx@\012\245\006\000\017\170 PO\254\191\130\0024\138\001\000\198+\142\239\008\001\158\160\192\0025D\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\247\239\252\000 \000\128\000\008\000 \000\000\000\000\008@\000\000\000\000\000\000H\161\128\000\000\000\000\000\128\000\008\192\000\000\001\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000 \000\128\000\008\000#\000\000\000\000\000\000\001\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\016\000@\000\004\000\017\128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000 \000\000\000@\000\000\000\004@\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\000=j\188\000\008\000 \000\002\000\008\192\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164P\t\006\161\\wx@\012\245\006\000\145\170 \208@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000@\000\000\003\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 #H\160\018\013B\184\238\240\128\025\234\012\001#T@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\000\016\000\016\000\001\024\000\000\000!\000\000\000\000\0001\000\000\000\000\000\001\001\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\002A\160p\025\218\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000\144h\020\006v\128\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\132\004i\020\002A\232w\029\222\016\003=I\128$j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\127\225\001\026E\000\144z\021\199w\132\000\207R`\t\026\162\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\132\004i\020\002\001\140W\029\222\016\003=I\128\004j\136\021\152\000\000\000\000\000\000\000\008\004\000\000\000\000\000\000\000\000\004\000\000\0001\127\247\254\016\017\164P\008\0061\\wx@\012\245&\000\017\170 V`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\223\248@F\145@$\026\133q\221\225\0003\212\152\002F\168\129Y\191\251\255\008\008\210(\004\003\024\174;\188 \006z\147\000\008\213\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\002\001\000\000\000\000\000\000\000\000\001\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\240\128\141\"\128H5\n\227\187\194\000g\1690\004\141Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\255\194\0024\138\001 \212+\142\239\008\001\158\164\192\0185D\n\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\255\008\008\210(\004\131P\174;\188 \006z\147\000H\213\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002E\012\000\000\000\004\000\004\000\000F\000\000\000\008@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\255\008\008\210(\004\131P\174;\188 \006z\147\000H\213\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\002\001\000\000\000\000\000\000\000\000\001\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\240\128\141\"\128H5\n\227\187\194\000g\1690\004\141Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$P\192\000\000\000@\000@\000\004`\000\000\000\132\000\000\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\008\000\000\000\000\000\000\000\000 H\158\000`\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\016\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000@\128\000\000\000\000\000\000\002\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\008\000\000\000\008\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\002\000@\000\000\000\000\000\004\000\000 @\000\000\000\000\000\000\001\000\000\000\001\000\000\000\000\001\000\000\000\000@\000\000\000\000\000\000\000\016\192\008\000\008\005\000\000\000\000\000\000\016\000\000\129\000\000\000\000\000\000\000\004\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\004\000\000\000\000\000\000\000\001\012\000\128\000\000P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\001\028\000\192\000\000@\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\134\000`\000\000 \000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\016\192\008\000\000\004\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000C\000 \002\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0040\002\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\024\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\017\192\012\000\000\004\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\002\024\001\128\000\000\128\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000C\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008`\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\012\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\016\192\012\000\000\004\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\002\024\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000C\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008`\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
+    (184, "\000\000\000\001\128\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\128\000\000\000\000\000\000\000\000\000\000\b\001\006\000\000\002\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\128\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\252\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001*\134\128(\b5A\001!\152\017\1284\002!\222\004\128\001\014d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001v\142\000\000\0001\000\001\000\024\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001v\142\000\000\0001\000\001\000\024\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\002\016\000 \000\002\b\b\000@\000\000\000\128\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\000\000\000\000\000 \000\002 \000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\b\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\019\004\217d\176\000\000P\002\004\000\000n\128Bxw\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\017\004\024\004\176\000\000P\002\000\000\000l\128\002hw\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000l\128\002xw\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\000\000\000\004\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\001\000\000\000\000\128\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\002\004Y$\160\000\000@\000\004\000\000j\128@\016F\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000h\128\000\016F\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\b\000\000\016\000\000\000\000\002\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\b\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\000\016\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\000\000\000\000\000 \000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\001\"\134\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\b\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\213x\000\016\000 \000\002\b\b\000@\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\000\016\000 \000\002\000\b\000\006\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\003\002\004\025$\160\000\000@\000\004\000\000B\128B\000\006\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\b\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\000\130\000\000\001 \000\003\019\004\217d\176\000\000P\002\004\000\000n\128BPw\000\000\000\002\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\003\004\025$\176\000\000@\000\004\000\000f\128B@F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\001$\000\004\0030\1603\153\000\001\132\128@\"\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\001$\000\004\0030\1603\153\000\001\132\128@\"\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@\"\000A\004\130\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\017\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001 \000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\001\000\001 \000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\030Q\134\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\019\004\217d\176\000\000P\002\004\000\000j\128@Pw\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000h\128\000Pw\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\012\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7z\213x\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\001\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\030\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\004\000\000\000\000\000\000\001\002 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\016\174;\159\b\001\158\160\192\001\026Q\002\130\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\026QB\130\127\245\252\030\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\030\017\164(\004\003\024\190;\159\024\001\158\164\192\001\030Q\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\026QB\130\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\026Q\006\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\001\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\001\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\030\017\164(\004\003\024\190;\159\024\001\158\164\192\001\030Q\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\024\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\128@\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\024\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\019\004\217d\176\001\000P\002\004\128\000n\128@Pw\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\024\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\024\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\000\017\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\024\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\000\017\128\016\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\127\247\254\016\017\1648\004\195P\190;\159\024\003\158\164\192\025\030Q\214\179\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\190;\159\b\001\158\160\192\001\030Q\198\130\000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\b\000\000\000\000\127\245\252\016\017\164(\004\003\024\190;\159\b\001\158\160\192\001\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\030Q\198\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\127\245\252\016\017\164(\004\003\024\190;\159\b\001\158\160\192\001\026QB\130\000\000\000\000\000\000\000\000\128@\016\000\000\000\000\000\000\000\b\000\000@\000\127\245\252\016\017\164(\004\003\024\190;\159\b\001\158\160\192\001\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\016\000\000\000\000\000\000\000\b\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\016\017\128\000\000\000\128\000\000\000\000@\000\000\000\000\000\000\000\016\000\192@\000\000\000\000\002\000\000\000\b\000\000\016\001\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\192@\000\000\000\000\002\000\000\000\b\000\000\016\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\1648\004\195P\174;\159\b\003\158\160\192\t\026Q\018\131\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\1648\004\195P\174;\159\b\003\158\160\192\t\026Q\018\131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\127\245\252\016\017\164(\004\131P\190;\159\b\001\158\160\192\t\026QB\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\024\001\158\160\192\t\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\245\252\000\017$(\004\003\000\1683\159\000\001\132\128@\000\002Q\002\130\000\000\000\000\001$\001\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\245\252\000\017$(\004\003\000\1683\159\000\001\132\128@\000\002Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\017\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000{\245\252\000\017$(\004\003\000\1683\159\000\001\132\128@\000\002Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\003\003\004\025$\176\001\000@\000\004\128\000b\128@@F\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\017$ \004\131@\1683\185\000\000\132\128@\b\000A \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\000\017\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213h\000\016\000 \000\000\000\b\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131P\1607\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\001\000\001\000\016\017\128\000\000\000\128\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\002\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\001\002\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\030Q\134\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\000\016\000 \000\002\000\b\000\006\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\000\016\000 \000\002\000\b\000\006\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\245\252\000\016\000 \000\002\000\b\000\006\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\000\016\000 \000\002\000\b\000\006\000\000\000\128\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\016\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x@8\b$I\002\016\b\000\000$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\b\000\128(\b\004A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000 \000\002\000\000\000\000\000\000\000  \000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\"\000\000\000\000\000\000\000  \000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\0008\b$A\002\016\b\000\000$\000!H\020\128\001\140\000\000z\213x\0008\b \001\002\016\b\000\000$\000!H\020\128\001\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$a\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\0008\b$\001\002\016\b\000\000$\000!H\020\128\001\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\0008\b \001\002\016\b\000\000$\000!H\020\128\001\132\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\004\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000\001\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000!\000\000\000\164\000!\218\004\128\001\014\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000z\213x\000\016\000 \000\002\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\b\000\128(\b$A\000!\128\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000\000\000\000\004\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\017\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128.\b$A\000\005\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\129(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\129(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000\000\000\000\004\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\128\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(H$A\000%\000\000\000\164\000!\218\004\128\001\014\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\128\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\004\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\002\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006@\000\000\000\004\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128.\b$A\000\005\000\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\221x\1288\b$A\002\017\b\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\b\000\128(\b\004A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128.H$A\000\005\128\000\000\164\000!\218\004\128\001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000z\221x\1288\b$A\002\017\136\000\000$\000!\218\004\128\001\012\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\128(\b$A\000!\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\b\000\128(\b$A\000\001\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x@8\b$I\002\016\b\000\000$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\2243\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131\208\238;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131\208\174;\159\b\001\158\164\192\t\026Q\002\179{\247\254\000\016\000 \000\002\000\b\000\000\000\000\000\004\000\000\000\000\000\000{\247\254\000\016\000 \000\002\000\b\000\000\000\000\000\004\000\000\000\000\000\000{\247\254\000\016\000 \000\002\000\b\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\"\134\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\"\134\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\"\134\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\030\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@*\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\030\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\030\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\127\245\252\016\017\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\247\254\000\016\000 \000\002\000\b\000\000\000\000\000\132\000\000\000\000\000\000\001\"\134\000\000\000\000\000\001\000\000\017\128\000\000\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\001\000\000\000\000\128\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000z\213x\000\016\000 \000\002\000\b\192\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\026Q\006\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\017\164(\004\131P\174;\159\b\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\001\000\001\000\000\017\128\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\128\128 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\2243\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131\208\238;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131\208\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\003\024\174;\159\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\127\247\254\016\017\164(\004\003\024\174;\159\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\127\247\254\016\017\164(\004\003\024\174;\159\b\001\158\164\192\001\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\001\000\001\000\000\017\128\000\000\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\247\254\016\017\164(\004\131P\174;\159\b\001\158\164\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000\001\000\001\000\000\017\128\000\000\000\132\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000@\000\000\000\000\000\000\000\000@\145.\000`\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000 \000\000\016\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000 \004\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\128\000\000\000\016\000\000\000\000\000\000\000\001\006\000@\000 \020\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\016\000\000\000\000\000\000\000\001\006\000@\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\002\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
   
   let action =
-    ((16, "\000F\000\197\000\000\000\000\000\234\000\197\000\000\000\000\000?\000\000\000\000\000\000\001-\000\000\000\000\000\000\000F\000\000\000\244\024\018\000\000\018\200\018\200\000\000\000\000,\224\018\200\000\0002\014\018\200\000\000\000\000\018\200\000\000\018\200\000\000\000\227\000\006\018\200\000\000\018\200\000\000\000\000\000\000-\146\018\200\000\000?D\018\200\000\000\000\000\018\200\000\000\018\200\000\000\000\002\000X\018\200\000\000\018\200\000\000\018\200\000\000?\142\018\200\000\000\000\000\018\200\000\000\018\200\000\000\000O\000\000\000\000\018\200\000\000\018\200\000\000\000\000\018\200\000\000\018\200\000\000\0008\000\156\018\200\000\000\024\0182\014/\208\000\000\026\132\001\130/\208\000O/\208\000\000\001.\018\200\000\000L\012\000\000\000O\004*0\004\000\000\000\000<\\\000\000@B\000\000@\2060\0040\004\020,\020,@B\020,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000<\2320\004\000\000\000\000<\232\000\000<\232\000\0000\004\000\000\000\000\000\000\023b\000O\000\000\020,\000\000-\2300\004\028:0\004\000\000\000\000\000\000\000\000\000\000\000\000 V0\004!`0\004!\1860\004\"\1880\004\000\0000\004\000\0000\004#\0220\004$\0240\004$r0\004%t0\004%\2060\004\001\1600\004\000\000\000\000\000\000\000\000\000\0000\004&\2080\004'*0\004(,0\004\000\000\000\0000\004\000\000\000\000\002\020\000\000\000\000\000\000\000\0004\130\018\200\000\000\003\128\018\200\000\000A\148\018\200\000\000\000\000\018\200\000\000\018\200\000\000\002\168\002\226\018\200\000\000\018\200\000\000\003\246\018\200\000\000A\160\018\200\000\000\000\000\018\200\000\000\018\200\000\000\003B\003\202\018\200\000\000\018\200\000\000\018\200\000\000A\188\018\200\000\000\000\000\018\200\000\000\018\200\000\000\000O\018\200\000\000\018\200\000\000\018\200\000\000\018\200\000\000\003\166\003\250\018\200\000\000?D/\208\003\226\018\200\000\000LdL6\000\000\000'\004\160\000O\004\002\004\234Ld\000\000\000\000\000\239\031,\000\000\000\000\000\000\000\000\004\132\004\218\000\015\005\026Ld\000xLd\000\000\000\000\004x\000\000\004\134\005\186Ld\005\014\000\000\000\000\000\000\000\239\000\000\005\028\006\002\000\000\006\004\000\0004\130\000E/\208\0056\018\200\000\000?\142/\208\005@\018\200\000\000\000\000\000O\006(\000\000\000\000\000\000\000\184\020,\000\0000\004\005R\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\005Z\000\000\000\000\005z\000\000\005\132@B\000\000\000\000\000\000\000\000\000\000\000\000B\1460\004\000\000B\146\000\000B\146@B\000\000\000\000B\224\000O\000\000\020,\005\192\000\0000\004\005\210\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\0000\004\000\0000\004\000\000\000\000\005\214\000\000\000A=\146\006\1480\004\006^\000\000\000\000@B\000A\000\000\000\000\000\000\000\000\000\000L\244@BM\194@BN\028@BNz@B\000\000@B\000\000@BN\212@BO2@BO\140@BO\234@BPD0\004\006\016@B\000\000@BP\162@BP\252@BQZ\005\236\000\000\005\238\000\000\002\0000\004\000\000\002\000\000\000\000\000\001\182\024\018\000\000\001\182\000\000\000\000\006\0040\004\000\000\006\008\000\000\020,\006\018\000\000\000\000\006\230\000\000\020,\006$\000\000\000\000\006&\000\000\000\000\004*\000\000\007\020\000\000A\160/\208\006:\018\200\000\000\000\000\006\188\000\000\006B\018\200\000\000\000\000\000\250\024\018\000\000\024\018\000\000\006<\000\000\000\250\000\000\016\174\027\134\018\196\000\000\007\238\018\196\000\000\018\196\018\196\000\000\000\000\018\196\000\000\018\196\000\000\006\154\006\208\018\196\000\000\018\196\000\000\008p\018\196\000\000\018\200\018\196\000\000\000\000\018\196\000\000\018\196\000\000\006\168\006\212\018\196\000\000\018\196\000\000\018\196\000\000,\024\018\196\000\000\000\000\018\196\000\000\018\196\000\000\000O\018\196\000\000\018\196\000\000\018\196\000\000\018\196\000\000\006\172\006\216\018\196\000\000\024\018\006\142\000\000\018\228/\208\006\136\018\196\000\000\000\000\000&\000\000\000\174\000&\000\000\000\000\000\000\007t\000\000\001\250/\208\006\158\018\196\000\0001\236/\208\006\164\018\196\000\000\000\0005\222\018\196\000\000\008\210\018\196\000\0001\236\018\196\000\000\000\000\018\196\000\000\018\196\000\000\006\212\007\008\018\196\000\000\018\196\000\000\t\016\018\196\000\0002b\018\196\000\000\000\000\018\196\000\000\018\196\000\000\006\226\007\016\018\196\000\000\018\196\000\000\018\196\000\0002v\018\196\000\000\000\000\018\196\000\000\018\196\000\000\000O\018\196\000\000\018\196\000\000\018\196\000\000\018\196\000\000\006\232\007\020\018\196\000\0002b/\208\006\196\018\196\000\000\000\000\002f/\208\006\202\018\196\000\0002v/\208\006\204\018\196\000\000\000\000\000\000\000\000\000\000\000\000\007\1460\004\006\222\021\162\007\1600\004\006\230\007\160/\208\000\000\000\000/\208\000O\000\000\002N0\004(x\000\000C`0\004\006\244\000\000\020,\006\244\000\000\006\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\n0\004\000\000D\n\000\000D\nD\150\020,\006\252D\150\000\000\000\000\020z\000O\000\000\020,\007\000\000\0000\004\007\004\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\004\000\1480\004\007 \000\000\000\000)L(x\025\212\0312\007\2180\004\000\000\007\180\000\000\000\000\000O\000\000>$\007l(x\000\000\007l(x\000\000\000\162\000\000\000\000,\168D\150-ZD\150C$D\150D\004D\150\000\000D\150\000\000D\150Q\180D\150Q\242D\150R\020D\150RzD\150R\166D\150R\202D\150S\008D\150Sv\000\000\007N)\246\000\000*\160*\160\007P*\160+J*\160\000\000\007X*\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007N\000\000\000\000\007P\000\000\0086\000\000\000O\000\000\002N\008<\000\000\000%\008\014\000O\007d\008&Ld\007j\000v\000\0000\004\008R\000\000\005\156\006\184\0084Ld\007x\008X\000\000\004\2480\004\008Z\000\000\008\\\000\0004\130\000O\005n0\004\008^\000\000\008`\000\000\000O\005\1340\004\008d\000\000\008l\000\000\000\179\007\184\006\242\000\000E\"E\174\020,\007\146\000\000\007\148E\174\000\000\000\000\000\000\000\000\000\000\000\000F:0\004\000\000F:\000\000F:E\174\000\000\000\000\026\214\000O\000\000\020,\007\164\000\0000\004\007\162\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000.\2320\004\000\0000\004\000\000\007\170\000\000\002\000\000\000\000\000\000\000\000\000\000\0003VE\1743\176E\1744\178E\1745\012E\174\000\000E\174\000\000E\1746\014E\1746hE\1747jE\1747\196E\1748\1980\004\007\212E\174\000\000E\1749 E\174:\"E\174:|\020,\007\184\000\000\000\0000\004\000\000\008\152\000\000\001b\008n0\004\008>\000\000\008\1360\004\008T\000\000\000\031\000\000\006\242\006\242\001b\000\000\001b\000\000\016\174\006\242\006\242\000\000\000\000\000\000\000\000\000\000\000\000\008\1600\004\007\228\021\162\022r\000O\008\196\000\000\008\166;D\008\202;D\008\2060\004\007\250\021\162\021\162\000\238\002\168\000'\000\000\000\000\000\000\002\168\000\000\003\204\000\238\000\000\000\000\008\004\000\000\000\000\000\000\008\230\000\000\008\236\000\000\000\000\t$\008\2080\004\008\"\t\002\000\000\008\228\020,\008*\021\162\000\000\000\000\008X\000\000\000\015\000\000\005\142\000\000\000\000\001b\000\000\008\174\000\000\012\130\005~\000\000\012\130\000\000\000\000\024\198\000\000\005~\000\000\000\000\t\186\000\000\012\130\000\000\008\252\020,\008B\t$\000\000\000R\000\000\008\246\000O\008L\t\012Ld\008R\001$\000\0000\004\t2\000\000\t\020Ld\008Z\t:\000\000\005\1380\004\t>\000\000\tB\000\0004\130\000O\005\1420\004\tD\000\000\tH\000\000\000\000\000\000\t\186\000\000\000\000\0042\000\000\006\242\000\000\001\182\000\000\000\000\002\184\022r\000\000\002\184\000\000\000\000\008\138\000\000\002T\000\003\021\162\000\000\004*\000\015\004*\000\000\000\015\000\000\006\242\000\000\006\242\000\000\000\000\000\000\008\134\000\000\000\000\008\158\000\000\002\210\005\142\001\230\004*\000\000\000\000\000\000\005T\000\000\006\242\000\000\002\210\000\000\000\000\001\182\000\015\016\174\000\000\000\015\000\000\008V\016\174\000\000\000\000\008V\000\000\000\000\008\156\000\000\000\000\008\162\000\000\003\240\006\242\000\000\003\240\000\000\000\000\t\028\000\000\0042\000\000\006\242\000\000\000\000\000\000\018\006;\208\000\000\t\130\000\000\018\006\t\134\000\000\t\136\000\000/\208\000O\003\008\000\0000\004\t\138\000\000\003\240\tZ\000O\008\176\tpLd\008\180\003Z\000\0000\004\t\150\000\000\004\226\000\0000\004\t\152\000\0004\130\000O\005z\000\0000\004\t\154\000\000\003\252\018\006\000\000\024\198\005\150\000\0000\004\t\160\000\000\000\000\000\000\003@\000\000\t\132\020,\008\200\t\170\000\000\001\228\000\000\tz\000O\008\208\t\146Ld\008\216\005\158\000\0000\004\t\184\000\000\005\164\000\0000\004\t\186\000\0004\130\000O\005\208\000\0000\004\t\188\000\000\003\252\000\000\000\000\008\226\000\000\003@\003\026\t\\\000\000\000\000\000\000\t^\000\000\004\006\000\031\000\000\016\174\t\176\000\000\000\0000\004\t\018\006\242\000\000\008\230\000\000\000\179\000\000/\208\000\000\000\000\005\194\016\174\000\000\016\174\000\000\008\214\000\000\005\194\000\0000\004\005\2460\004\000\0000\004\000\000\008\216\000\000\005\246\000\0000\004\005\246\008\218\000\000\021\162\006\000\021\162\000\000\021\162\000\000\008\220\000\000\006\000\000\0000\004\005\246\008\222\000\000/\208\006\008/\208\000\000/\208\000\000\008\228\000\000\006\008\000\0000\004\005\246\008\232\000\000\000\000\024\198\000\000\000\000\tX0\208\000\000\000\000\000\000\000\000\000\000\t.\004*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005:0\208\000\000\003H\001\146\000\000\t0\000\197\000\000\000\000\000\000\0032\001\146\000\000\000\000\000\000\000\000\t\140\000\000\000\000\000\000\000\000\028:\029\158\000\000F\208\000\0000\208\000\000\005t0\208\000\000\000?\001|\001|\000\000\002\008\001|\000\000\t\n\000\000\000\000\000\000\000\000\t\148\000\000\030\162\000\000 V0\208\000\000\002\1520\208\000\000\t\156\000\0000\208\t\158\000\000HX1^\t\160\000\000\t\168\000\000ID>\1480\208\000\000\000\000\t,0\208\t\186\000\000\t\188\000\000\t\190\000\000\024\018\000\000\002b\024\018\000\000\t>\018\196\000\000\001~0\208\000\000\005\1460\208\000\000\000~\n<\000\000\n>\000\0000\2080\208\tD\000\000\000\000\000\000\000\000\000\000\000\000\t\204\000\000I\1460\208\t\206\000\000\t\208\000\0000\208\t\210\000\0000\208\tz\000\197\000\000\000\000\006`0\208\000\000\000~\000\000\t\214\000\0000\208\t\220\000\000G\0301^0\208\tZ0\208\t\232\000\000\t\236\000\000H\n\000\000\000\000\006~0\208\000\000\003\196\004\244\001|\tj\000\000\000\000\001~\001~\000\000\000\000\000\000\003\184\001~\000\000\tl\000\000\000\000\000\000\000\000\000\000\000\0000\208\000\000\006\1680\208\000\000\001\228\000\128\000\197\tn\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\246\000\000\t\248\000\0000\208\t\254\000\000J~0\208\n\000\000\000\n\002\000\000\0218\t\170J\204,\024\000\0000\208\n\006\000\000\n\008\000\000\t\216\02180\208\n\012\000\0000\208\n\014\000\000\n\018\000\0000\208\t\1440\208\n\024\000\000\n\026\000\000\000\197\t\138\000\000\000\000\024\198\000\000\000\000\002~\nx\000\000\000\000\000\241\000\000\000\000\000\0000\004\000\000\000\000\000\000\002\198\000\000\002F\000\000\000\000\000\000\004*/\208/\208/\208\000\000\000\030\000\030\000\030\000\030\000\000\000\000\000\000\000\000\000\000\000\000\001b\016\174\np\013\230\001(\000\000\000\000\001(\000\000\t\186\000\000(x\t\164\000\000\001b\016\174\t\172\015J\000\000\001b\013\230\000\000\000\000\000\000/\208\000\030\000\000\000\000\000\000\t\246\000\240\npM\020\000\000\004@M\196\000\000\000\000\000\000\0050\nb\000O\000\000\004@\000\000\005 M\020\000\000\000\000\t\184\np\006\242\t\182\000\000\001(\000\000\t\186\000\000\011b\0070\000\000\000\000\n\\\000\000\000\000\002~\000\000\002\170\000\000\000\000\000\0000\004\000\000\002\198\000\000\003~\000\000\000\000\000\000\005\142\000\000\011\030\002\148\011\030\000\000\006\242\011\030\000\000\002\148\000\000\006\242\000\000\006\242\000\000\006\242\000\000\011b\000\000\000\000\000\000\000\000\000\000\006\242\000\000\002\148\000\000\006\242\000\000\014*\000\000\000\000\008V\t\232\000\197\001\216\n\134\006\220\000\000\006\220\n\176\000\000\n\182\000\000\n\184\000\000\000\000\001\184\006\220\004\182\006\220\000\000\000\000\006(\t\218\000\000\n*\000\197\001\216\t\242\000\000\006N\n\238\000\000\002\"\004\196\n\254\003V\n\254\000\000\000\000\006\180\000\197\000\000\003\248\000\000\000\000\002\130\000\000\t\250\000\000\000\000\000\000\n6\000\197\001\216\t\254\000\000\000\000\006N\002\"\004\196\006\180\003\248\002\130\n\000\000\000\002\"\004\196\006\180\003\248\002\130\n\002\000\000\001\178\001\162\n\030\000\197\n\024\011\n\004H\nD\000\197\n\160\000\000\nP\000\197\n\176\000\000\000\000\n:\002\206\n<\011\n\000\000\n>\011\n\000\000\000\000\011\n\000\000"), (16, "\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\000&\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\012\029\nR\0007\000;\nV\012\029\000\n\015\026\025\146\000*\nZ\006\137\000\150\012\029\001~\n^\025\150\012\029\012\029\004\222\012\029\004^\007\209\012\029\022\026\006\t\016.\012\029\012\029\012\029\004>\012\206\025G\025K\001\"\014\242\007\209\025O\012\029\001\"\015\030\012\029\012\029\013n\015&\000\006\000\"\012\029\012\029\006\193\012\029\001\230\012\029\020\026\001\"\012\250\001\242\012\029\005\249\012\029\012\029\012\029\012\029\012\029\012\206\000\n\001\"\012\029\012\029\012\029\000\n\012\029\012\029\012\029\016\162\012\029\012\029\012\029\012\029\023\n\023\018\008\210\012\029\012\029\001\230\000\n\000\n\007\209\012\250\001\242\016\166\006\026\012\234\012\029\012\029\012\029\018r\000\n\012\029\012\029\012\029\012\029\018v\012\029\015\170\012\029\018z\000\154\012\029\006\193\001\230\012\029\012\029\006\137\012\250\001\242\016>\024R\023\026\000\n\011\249\017v\012\029\000\n\004\169\012\029\000\226\011\185\011\185\012\029\012\029\012\029\012\029\011n\012\029\000.\012\029\004~\007\209\019\238\012\029\012\029\012\029\008\181\012\029\000\n\012\029\012\029\000\230\012\029\007\209\012\029\012\029\001R\007\150\012\029\012\029\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\000\n\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\006\145\016\194\012\238\016.\001V\006\145\014\246\015\006\015\022\006)\006)\001\230\014\242\006\145\001\"\001\238\001\242\006\145\006\145\011v\006\145\015&\004\138\006\145\006\025\008\181\003q\006\145\011\174\006\145\000N\007\182\020j\020\146\020\162\020\202\020\218\021\002\006\145\011\185\021>\007\158\011\130\028\154\021\170\000\n\000\n\006\145\006\145\008\218\011\185\021\174\006\145\006\145\005\030\011\185\011\185\006\145\004m\006\145\006\145\006\145\006\145\006\145\015\162\022\030\023\254\006\145\006\145\006\145\001v\006\145\006\145\006\145\016\162\006\145\006\145\006\145\006\145\000\022\023\n\023\018\006\145\006\145\023\230\003\245\011\185\027\178\028\150\016\198\016\166\011\185\011\185\016>\006\145\006\145\021\186\019j\006\145\006\145\006\145\006\145\006\246\006\145\0061\006\145\004\025\014\242\006\145\024\002\001\230\006\145\006\145\019n\012\250\001\242\015&\000\n\008\145\024N\001\138\022\242\012\201\012\201\017F\006\145\004\221\012\201\008\246\006\145\006\145\006\145\006\145\001\230\006\145\000\n\006\145\012\250\001\242\006\222\006\145\006\145\006\145\000\n\008\173\000\n\006\145\006\145\001\"\006\145\011\161\006\145\006\145\016.\002\206\006\145\006\145\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\000\n\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\000\n\006\177\006\222\n*\006\177\006Y\016.\027\194\027\130\016>\006\177\006\177\006\177\006\177\028\218\014\242\006\177\006\177\027\186\006\177\006\177\0256\006\177\001\"\015&\008\173\006\177\004\025\006\177\004\221\006\177\006\177\004\025\004\025\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006\177\006a\022*\004\025\027\130\006\177\006\177\006\177\006\177\011\177\006\177\017R\003\026\000\n\011\193\006\177\0256\006\177\n\158\006\177\006\177\006\177\006\177\018\174\017\198\006\177\006\177\006\177\004\025\006\177\006\177\006\177\019j\006\177\006\177\006\177\006\177\012\182\003:\028*\003B\006\177\003R\006a\006\177\025o\025s\022\218\019n\003Z\025w\019N\006\177\006\177\011\153\016>\006\177\006\177\006\177\006\177\006\246\006\177\006\177\006\177\018\222\000\n\006\177\003f\001\230\006\177\006\177\006\177\012\250\001\242\022f\003j\005\137\006\177\003b\006\222\006\177\011\193\015\166\006\177\008\209\008\209\006!\006\177\006\177\008\209\006\177\012\001\006\177\006\129\006\177\026\199\026\203\003~\006\177\003\134\026\207\003\150\011\005\000\n\023\230\006\177\006i\006\177\003\158\006\177\006\177\018\178\003r\006\177\006\177\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\021*\001\014\025~\001\022\nZ\001\030\0012\001:\001>\n^\025\130\003\166\021.\023\250\011\137\nb\006Y\021\166\003\170\011\137\011\137\021\198\0212\001F\0216\012\001\018\226\001\166\nr\018\194\013v\011\137\021:\013z\028\174\006a\011\005\001N\008\165\014\226\021F\018F\005\241\028\002\021J\003\182\016.\019\"\001\178\001\230\021N\025\182\028\190\012\250\001\242\014\242\011\137\015:\013\130\025\226\025\238\001\162\015>\017\130\015&\003\174\021R\001\218\004\014\001\222\004\185\001b\0166\015F\011\145\026\231\026\235\013\150\001\230\015J\026\239\013\154\011\142\001\242\000\n\013\158\013\162\n\134\013\166\004\018\004\021\021V\024\018\015N\021Z\028\030\012\201\027\250\008\165\011\169\004}\028\"\015\194\004v\n\226\013\170\003\249\021^\015R\015V\013\174\015Z\021b\000\n\021f\015n\021j\021n\004\149\021r\004&\015z\013\182\006q\004\021\021v\004B\001\"\021z\006y\005\241\020\002\026\002\004J\018\242\015\154\016>\004}\021>\015\158\015\218\004\185\n\138\021~\013\186\011\161\015\222\021\130\021\134\005\241\013\190\004\185\004\185\005\241\004N\004z\004\185\015\230\000\n\013\194\026B\006\185\006\185\023\234\006\001\002\"\006\185\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\004\130\001\014\025~\001\022\nZ\001\030\0012\001:\001>\n^\025\130\026V\004\021\016.\004\154\nb\003A\004\021\004\021\006\161\003A\004\162\014\242\001F\006\161\006\161\011\161\001\166\nr\004\021\013v\015&\019\014\013z\016.\001\"\006\161\001N\011\161\014\226\011\161\004\221\011\161\014\242\018\246\004\021\0192\011\233\001\178\005\021\019\138\014\242\015&\019\158\004\021\013\026\027\186\015:\013\130\025\226\015&\006\161\015>\017\202\020J\004\249\000\n\001\218\005\021\001\222\004\201\001b\0166\015F\012\182\019\186\011\241\013\150\001\230\015J\004\166\013\154\011\142\001\242\012\201\013\158\013\162\n\134\013\166\004\174\020r\011\217\016:\015N\026n\020\170\004\198\004\029\003e\020\226\004\202\004\210\003A\016>\n\226\013\170\003A\021\154\015R\015V\013\174\015Z\004\230\000\n\013:\015n\004\137\004\250\004\149\005\014\019\018\015z\013\182\004\221\016>\005.\013V\005R\016\234\020R\017\n\027\178\016>\012\182\0196\015\154\022\014\005\021\019\142\015\158\015\218\019\162\n\138\005^\013\186\012\182\015\222\012\182\005f\012\182\013\190\022\254\004\201\012\201\012\201\020z\005\021\015\230\012\201\013\194\020\178\006\201\006\201\019\190\020\234\002\"\006\201\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\005\186\001\014\025~\001\022\nZ\001\030\0012\001:\001>\n^\025\130\005\198\006\018\005\017\006I\nb\011\225\006\"\006*\004\029\006\170\006\206\006\214\001F\004\029\004\029\027\138\001\166\nr\004\245\013v\011\201\005\017\013z\007\014\007\026\004\029\001N\004\137\014\226\006A\007&\027\234\004\137\004\137\006Q\0072\027\142\001\178\0069\007>\014\242\011\209\007J\027\146\004\137\004\137\015\"\013\130\007^\015&\004\029\015>\027\186\007n\007~\026\167\001\218\007\134\001\222\004\229\001b\015B\015F\026\171\007\171\023\130\013\150\001\230\015J\004\137\013\154\011\142\001\242\026\174\013\158\013\162\n\134\013\166\006\169\007\246\023\218\012\209\015N\006\169\006\169\007\250\008:\008>\008\158\008\162\005\017\008\178\008\194\n\226\013\170\028\018\008\238\015R\015V\013\174\015Z\024B\000\n\008\254\015n\027\154\t\018\004\149\tZ\005\017\015z\013\182\007\202\t^\007\210\t\158\007\226\t\162\n\002\n\006\006\169\016>\n\026\007\234\015\154\n2\nF\nf\015\158\015\218\004\229\n\138\nn\013\186\nv\015\222\n~\027\162\n\130\013\190\004\229\004\229\n\182\n\194\n\202\004\229\015\230\011\014\013\194\011.\008\217\008\217\007\242\011:\002\"\008\217\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\011~\001\014\011\154\001\022\nZ\001\030\0012\001:\001>\n^\008\014\011\166\008\022\011\190\008&\nb\011\202\012R\012f\008\002\004\137\008.\012z\001F\012\158\012\170\012\178\001\166\nr\012\198\013v\012\210\012\218\013z\012\222\012\230\027v\001N\007\217\014\226\012\246\013\006\013\014\013\018\013\"\013*\013B\013J\001\178\013^\0086\014\242\007\217\013f\013r\013\138\013\146\015\"\013\130\t.\015&\t6\015>\tF\013\230\013\242\014:\001\218\014\178\001\222\tN\001b\015B\015F\014\218\014\238\014\250\013\150\001\230\015J\015\002\013\154\011\142\001\242\008F\013\158\013\162\n\134\013\166\015\n\tr\015\018\tz\015N\t\138\015^\015f\015v\015~\tV\015\134\t\146\015\142\007\217\n\226\013\170\027\210\015\150\015R\015V\013\174\015Z\015\210\000\n\015\226\015n\027\230\015\234\015\246\015\250\004\137\015z\013\182\028>\027\234\004\137\004\137\016\002\016\006\016\014\t\154\016\022\016>\tf\016&\015\154\016J\004\137\004\137\015\158\015\218\016\142\n\138\016\150\013\186\016\154\015\222\016\170\016\178\016\182\013\190\016\190\016\206\016\214\007\217\016\222\016\226\015\230\016\242\013\194\016\250\017\018\004\137\017\026\t\170\002\"\007\217\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\017j\001\014\017\178\001\022\nZ\001\030\0012\001:\001>\n^\017\190\0182\018>\018^\018\138\nb\018\150\018\158\018\186\018\198\018\206\018\210\018\218\001F\018\234\018\254\019\026\001\166\nr\019>\013v\019V\019^\013z\019b\019r\019z\001N\019~\014\226\019\134\019\150\019\170\019\198\019\218\019\234\019\250\020\018\001\178\020\"\020.\014\242\020_\020\135\020\159\020\191\020\215\015\"\013\130\020\247\015&\021\015\015>\021&\021B\021\178\021\223\001\218\0226\001\222\022K\001b\015B\015F\022s\022\127\022\143\013\150\001\230\015J\022\151\013\154\011\142\001\242\022\178\013\158\013\162\n\134\013\166\022\187\022\195\022\203\012\209\015N\022\230\023\014\023\022\023&\023C\023S\023[\023g\023r\023\151\n\226\013\170\023\163\023\182\015R\015V\013\174\015Z\023\191\000\n\023\199\015n\023\242\024\030\024Z\024{\024\131\015z\013\182\024\143\024\159\024\167\024\178\024\199\024\207\024\214\024\227\024\239\016>\024\247\025\002\015\154\025\011\025\019\025\031\015\158\015\218\025:\n\138\025\194\013\186\025\234\015\222\025\250\026.\0266\013\190\026Z\026~\026\130\026\138\026\179\027z\015\230\027\134\013\194\027\150\012\209\012\209\027\158\027\166\002\"\012\209\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\027\207\001\014\025~\001\022\nZ\001\030\0012\001:\001>\n^\025\130\027\214\027\227\027\238\027\254\nb\0283\028B\028O\028s\028\143\028\158\028\166\001F\028\170\028\178\028\187\001\166\nr\nR\013v\028\194\nV\013z\028\203\028\214\025\146\001N\nZ\014\226\028\222\028\234\000\000\n^\025\150\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015:\013\130\000\000\000\000\000\000\015>\026\254\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\0166\015F\000\000\000\000\016\162\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\016\166\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\001\230\000\n\000\000\015n\012\250\001\242\004\149\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\154\000\000\000\000\000\000\015\158\015\218\000\000\n\138\000\000\013\186\000\000\015\222\000\n\000\000\000\000\013\190\000\000\004\169\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\008\189\008\189\000\000\000\000\002\"\008\189\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\000\000\001\022\nZ\001\030\0012\001:\001>\n^\000\000\000\000\000\000\000\000\000\000\nb\000\000\007\153\007\153\000\000\000\000\000\000\007\153\001F\000\000\000\000\000\000\001\166\nr\000\000\013v\000\000\000\000\013z\000\000\000\000\000\000\001N\000\000\014\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015:\013\130\000\000\000\000\000\000\015>\016R\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\0166\015F\000\000\000\000\000\000\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\012\173\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\000\000\000\n\000\000\015n\000\000\000\000\000\000\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\154\000\000\000\000\000\000\015\158\015\218\000\000\n\138\000\000\013\186\000\000\015\222\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\012\173\012\173\000\000\000\000\002\"\012\173\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\000\000\001\022\nZ\001\030\0012\001:\001>\n^\000\000\000\000\000\000\000\000\000\000\nb\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\166\nr\nR\013v\000\000\nV\013z\000\000\000\000\025\146\001N\nZ\014\226\000\000\000\000\000\000\n^\025\150\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015:\013\130\000\000\000\000\000\000\015>\025\198\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\0166\015F\000\000\000\000\016\162\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\016\166\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\001\230\000\n\000\000\015n\012\250\001\242\000\000\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\154\000\000\000\000\000\000\015\158\015\218\000\000\n\138\000\000\013\186\000\000\015\222\000\n\000\000\000\000\013\190\000\000\004\169\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\012\249\012\249\000\000\000\000\002\"\012\249\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\000\000\001\022\nZ\001\030\0012\001:\001>\n^\000\000\000\000\000\000\000\000\000\000\nb\000\000\t\t\t\t\000\000\000\000\000\000\t\t\001F\000\000\000\000\000\000\001\166\nr\000\000\013v\000\000\000\000\013z\000\000\000\000\000\000\001N\000\000\014\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015:\013\130\000\000\000\000\000\000\015>\025\198\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\0166\015F\000\000\000\000\000\000\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\000\000\000\n\000\000\015n\000\000\000\000\000\000\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\154\000\000\000\000\000\000\015\158\015\218\000\000\n\138\000\000\013\186\000\000\015\222\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\012\245\012\245\000\000\000\000\002\"\012\245\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\000\000\001\022\nZ\001\030\0012\001:\001>\n^\000\000\000\000\000\000\000\000\000\000\nb\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\166\nr\000\000\013v\000\000\000\000\013z\000\000\000\000\000\000\001N\000\000\014\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015:\013\130\000\000\000\000\000\000\015>\017\254\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\0166\015F\000\000\000\000\000\000\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\000\000\000\n\000\000\015n\000\000\000\000\000\000\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\154\000\000\000\000\000\000\015\158\015\218\000\000\n\138\000\000\013\186\000\000\015\222\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\000R\000V\000f\000\170\002\"\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\000\000\001\022\nZ\001\030\0012\001:\001>\n^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\166\000\000\000\000\013v\000\000\000\000\013z\000\000\000\000\000\000\001N\000\000\018~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\142\013\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\000\000\000\000\000\000\000\000\000\000\013\150\001\230\000\000\000\000\013\154\001\238\001\242\000\000\013\158\013\162\n\134\013\166\000\000\000\000\000\000\005\233\000\000\007\214\005\233\008\026\005\233\000\000\005\233\000\000\005\233\000\000\000\000\n\226\013\170\005\233\005\233\000\000\005\233\013\174\005\233\000\000\000\n\000\000\000\000\000\000\005\233\000\000\005\233\000\000\005\233\013\182\005\233\000\000\000\000\000\000\005\233\000\000\005\233\000\000\000\000\005\233\005\233\005\233\005\233\000\000\005\233\000\000\005\233\000\000\005\233\n\138\005\233\013\186\005\233\018\146\005\233\005\233\000\000\013\190\005\233\000\000\000\000\000\000\005\233\005\233\018\154\005\233\013\194\000\000\005\233\000Z\005\233\000Z\002\"\005\233\005\233\005\233\000\000\000\000\000\000\005\233\008\186\000\000\005\233\000\000\005\233\000Z\005\233\005\233\000\000\005\233\000\000\000\000\000\000\005\233\000\000\005\233\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\005\233\000\000\005\233\005\233\000\000\005\233\005\233\005\233\005\233\005\233\005\233\005\233\005\233\005\233\005\233\000\000\005\233\000\000\005\233\000\000\005\233\005\233\005\233\005\233\000\000\005\233\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\005\233\005\233\005\233\000\000\005\233\005\233\005\233\005\233\005\233\000\000\000\000\005\233\005\233\000\000\000\000\005\233\005\233\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\005\233\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\166\000\000\000\000\001\170\000\000\000\000\001\174\000\000\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\014\029\001\182\000\000\000\000\000\000\000\000\000\000\001\206\001\202\000\000\001\210\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\001b\000\000\014\029\000\000\000\000\000\000\001\226\001\230\000\000\011\030\001\234\001\238\001\242\002F\001\246\001\250\014\029\001\254\000\000\000\000\000\000\000\000\014\029\014\029\000\000\000\000\011&\000\000\000\000\0112\000\000\000\000\014\029\000\000\002\002\014\029\000\000\014\029\000\000\002\006\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\014\000R\007\190\007\198\000\170\000\000\000\174\014\029\008\n\008N\002\018\008V\021*\008f\000\000\008n\000\000\008v\008\130\001:\008\138\000\000\002\022\000\000\021.\000\000\000\000\011>\002\026\000\000\000\000\004i\000\000\000\000\0212\008\146\0216\002\030\000\000\000\000\000\000\000\000\000\000\002\"\021:\000\000\014\029\000\000\000\000\024\174\000\000\011B\021F\014\029\000\000\000\000\021J\000\000\000\000\000\000\000\000\011J\021N\000\000\000\000\000\000\014\029\000\000\000\000\008\170\000\000\000\000\000\000\000\000\022\206\000\000\000\000\000\000\021R\023\202\nb\014\029\014\029\008\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\166\nr\000\000\013v\000\000\000\000\013z\000\000\000\000\000\000\000\000\021V\014\226\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\021^\000\000\000\000\015j\013\130\021b\000\n\021f\015>\021j\021n\000\000\021r\001\218\000\000\001\222\000\000\000\000\021v\015F\000\000\021z\000\000\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\000\000\013\166\000\000\021~\000\000\000\000\015N\021\130\021\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\000\000\000\n\000\000\015n\000\000\000\000\000\000\nb\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\166\nr\000\000\013v\015\154\000\000\013z\000\000\015\158\015\218\000\000\000\000\014\226\013\186\000\000\015\222\000\000\000\000\000\000\013\190\000\000\001\178\000\000\000\000\000\000\000\000\015\230\000\000\013\194\000\000\013~\013\130\000\000\000\000\002\"\015>\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\015F\000\000\000\000\000\000\013\150\001\230\015J\000\000\013\154\011\142\001\242\000\000\013\158\013\162\000\000\013\166\000\000\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\013\170\000\000\000\000\015R\015V\013\174\015Z\000\000\000\n\000\000\015n\000\000\000\000\000\000\000\000\000\000\015z\013\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\001\000\000\000\000\014\001\015\154\000\000\000\000\000\000\015\158\015\218\000\000\000\000\000\000\013\186\000\000\015\222\000\000\000\000\000\000\013\190\000\000\000\000\000\000\014\001\000\000\000\000\015\230\014\001\013\194\000\000\002:\014\001\000\000\000\000\002\"\000\000\000\000\014\001\000\000\000\000\014\001\014\001\000\000\014\001\014\001\000\000\000\000\002B\000\000\014\001\005&\000\000\000\000\014\001\000\000\000\000\014\001\000\000\014\001\014\001\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\014\001\001\022\014\001\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\014\001\000\000\000\000\000\000\000\000\000\000\000\000\0052\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001N\000\000\000\000\000\000\014\001\014\001\000\000\014\001\014\001\0056\000\000\014\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005>\001^\000\000\000\000\000\000\014\001\000\000\000\000\014\001\014\001\014\001\014\001\000\000\000\000\000\000\001b\014\001\014\001\014\001\000\000\014\001\014\001\014\001\001=\001=\001=\001=\000\000\001=\000\000\001=\001=\000\000\001=\000\000\001=\000\000\001=\000\000\001=\001=\001=\001=\000\000\000\000\004\245\000\000\021\026\004\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001=\001=\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001=\000\000\004\245\000\000\000\000\001=\004\245\000\000\001=\004\245\004\245\000\000\001=\000\000\000\000\021\030\004\245\000\000\001=\004\245\004\245\000\000\004\245\004\245\000\000\001=\004\245\000\000\004\245\004\245\001=\000\000\004\245\000\000\000\000\004\245\000\000\004\245\004\245\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\245\001=\004\245\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\245\000\000\000\000\000\000\001=\000\000\000\000\004\245\000\000\001=\000\n\001=\000\000\000\000\001=\000\000\021\"\000\000\000\000\000\000\000\000\000\000\001=\000\000\000\000\001=\004\245\004\245\000\000\004\245\005\017\004\245\000\000\004\245\000\000\000\000\000\000\000\000\000\000\000\000\001=\004\245\000\000\004\249\001=\001=\004\249\000\000\000\000\004\245\000\000\004\245\000\000\000\000\000\000\021\226\000\000\004\245\004\245\004\245\000\000\004\245\004\245\004\245\000\000\000\000\004\249\000\000\000\000\000\000\004\249\000\000\000\000\004\249\004\249\000\000\000\000\000\000\000\000\000\000\004\249\000\000\000\000\004\249\004\249\000\000\004\249\004\249\000\000\000\000\004\249\000\000\004\249\004\249\000\000\000\000\004\249\000\000\000\000\004\249\000\000\004\249\004\249\000\000\000\000\000\000\000\000\000\000\000\000\004U\004U\004U\004U\000\000\004U\000\000\004U\004U\000\000\004U\000\000\004U\004\249\004U\004\249\004U\004U\004U\004U\000\000\000\000\000\000\000\000\000\000\000\000\004\249\000\000\000\000\001r\000\000\000\000\000\000\004\249\004U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004U\000\000\000\000\000\000\004\249\004\249\000\000\004\249\005\021\004\249\000\000\004\249\000\000\000\000\000\000\014U\000\000\000\000\014U\004\249\004U\000\000\000\000\000\000\004\249\000\000\004U\004\249\000\000\004\249\000\000\000\000\000\000\000\000\004U\004\249\004\249\004\249\014U\004\249\004\249\004\249\014U\000\000\000\000\013\214\014U\000\000\000\000\000\000\000\000\000\000\014U\000\000\000\000\014U\014U\000\000\014U\014U\000\000\000\000\013\222\000\000\014U\013\234\000\000\000\000\014U\000\000\000\000\014U\000\000\014U\014U\000\000\004U\000\000\000\000\000\000\000\000\000R\007\190\007\198\000\170\000\000\000\174\000\000\008\n\008N\000\000\008V\000\000\008f\014U\008n\014U\008v\008\130\001:\008\138\000\000\000\000\000\000\000\000\000\000\000\000\014U\000\000\000\000\000\000\000\000\000\000\000\000\013\246\008\146\000\000\000\000\000\000\004U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\154\000\000\000\000\000\000\014U\014U\000\000\014U\000\000\013\250\000\000\014U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\002\008\170\000\000\000\000\000\000\000\000\000\000\000\000\014U\000\000\014U\000\000\000\000\000\000\000\000\008\182\014U\014U\014U\000\000\014U\014U\014U\n\133\n\133\n\133\n\133\000\000\n\133\000\000\n\133\n\133\000\000\n\133\000\000\n\133\000\000\n\133\000\000\n\133\n\133\n\133\n\133\000\000\000\000\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\133\n\133\n\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\133\000\000\001\137\000\000\000\000\n\133\001\137\000\000\021\242\000\000\001\137\000\000\021\250\000\000\000\000\000\000\001\137\000\000\n\133\001\137\001\137\000\000\001\137\001\137\000\000\n\133\000\000\000\000\001\137\000\000\n\133\000\000\001\137\000\000\000\000\001\137\000\000\001\137\001\137\n\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\n\133\001\137\000\000\n\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\000\000\n\133\000\000\000\000\000\000\000\000\n\133\000\000\n\133\000\000\000\000\n\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\133\000\000\000\000\n\133\001\137\002V\000\000\001\137\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\000\000\n\133\000\000\000\000\000\000\022N\n\133\001\137\000\000\000\000\001\137\001\137\001\137\001\137\000\000\000\000\000\000\000\000\002\254\001\137\001\137\000\000\001\137\001\137\001\137\nu\nu\nu\nu\000\000\nu\000\000\nu\nu\000\000\nu\000\000\nu\000\000\nu\000\000\nu\nu\nu\nu\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nu\nu\nu\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nu\000\000\000\000\000\000\000\000\nu\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nu\000\000\000\000\000\000\000\000\000\000\000\000\nu\000\000\000\000\001\153\000\000\nu\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nu\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nu\000\000\000\000\nu\000\000\000\000\001\153\000\000\000\000\000\000\001\153\000\000\001\153\001\153\000\000\000\000\nu\000\000\000\000\000\000\000\000\nu\001\153\nu\000\000\001\153\nu\001\153\ny\ny\ny\ny\000\000\ny\nu\ny\ny\nu\ny\000\000\ny\000\000\ny\000\000\ny\ny\ny\ny\001\153\000\000\000\000\000\000\nu\000\000\000\000\000\000\021\246\nu\000\000\000\000\000\000\ny\ny\ny\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ny\000\000\000\000\000\000\000\000\ny\000\000\000\000\022R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\005\250\ny\001\153\000\000\000\000\000\000\001\153\000\000\ny\000R\000V\000f\000\170\ny\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\ny\001\022\001\153\001\030\0012\001:\001>\000\000\006\002\000\000\000\000\000\000\001\153\001\153\000\000\000\000\000\000\000\000\000\000\011\150\ny\001F\000\000\ny\000\000\000\000\000\000\000\000\004M\000\000\000\000\004M\000\000\000\000\004M\001N\ny\000\000\000\000\000\000\000\000\ny\000\000\ny\000\000\000\000\ny\000\000\000\000\004M\000\000\000\000\000\000\000\000\ny\001^\000\000\ny\004M\004M\000\000\000\000\004M\004M\004M\000\000\000\000\000\000\004M\001b\004M\000\000\ny\004R\004V\000\000\000\000\ny\004M\004M\000\000\000\000\004M\004M\004M\000\000\004M\004M\000\000\004M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004M\004M\000\000\000\000\000\000\000\000\004M\000\000\000\000\004M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004M\000\000\000\000\000\000\000\000\000\000\000\000\004b\004M\000\000\004M\000\000\004M\000R\007\190\007\198\000\170\000\000\000\174\000\000\008\n\008N\004M\008V\000\000\008f\000\000\008n\004M\008v\008\130\001:\008\138\000\000\004M\002v\000\000\004M\002\198\000\000\000\000\000\000\000\000\004M\000\000\000\000\022Z\008\146\022v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\130\000\000\002~\000\000\000\000\008\154\002\017\000\000\000\000\000\000\002\017\000\000\000\000\000\000\000\000\000\000\002\134\000\000\022\154\002\017\002\017\000\000\002\230\002\238\000\000\008\170\000\000\000\000\002\017\000\000\022\206\000\000\002\166\000\000\000\000\002\142\000\000\002\158\002\017\008\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\174\022\238\002\017\000\000\023F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\017\000\000\000\000\000\000\023^\000\000\000\000\000\000\000\000\023j\000\000\008\141\000\000\000\000\023\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\166\000\000\000\000\024\134\002\182\000\000\000\000\002\017\002\017\000\000\000\000\002\150\000\000\000\000\000\000\000\000\000\000\000\000\024\146\000}\000\000\000\000\000}\024\170\002\017\000\000\000\000\002\017\002\017\002\017\002\017\000\000\000\000\000\000\000\000\000\000\002\017\002\017\000\000\002\246\002\190\002\017\002~\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000}\000}\000\000\000}\000}\000e\000\000\000\000\000e\000}\000\000\000\000\000\000\002\166\000\000\000\000\002\142\000\000\002\158\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\002\174\000\000\000}\002\134\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000\000\000}\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\002\142\000\000\002\158\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\182\000\000\000\000\000}\000}\000\000\000e\002\150\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000}\000\000\000\000\000}\000}\000}\000}\000\000\000\000\000\000\000\000\000\000\000}\000}\000\000\000}\002\190\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000e\000\000\000\000\002\150\000\000\000\000\000\000\000]\000\000\000\000\000]\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000e\000e\000e\000\000\000\000\000\000\000\000\000\000\000e\000e\000]\000e\000e\000e\000]\000\000\000\000\000\000\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000]\000]\000a\000\000\000\000\000a\000]\000\000\000\000\000\000\000]\000\000\000\000\002\142\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\000]\000\000\000]\000a\000\000\000\000\000a\000a\000\000\000a\000a\000\000\000\000\000]\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\002\142\000\000\000a\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000a\002\150\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000]\000\000\000\000\000]\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000]\000]\000\000\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000\000\002\150\000\000\000\000\000\000\000q\000\000\000\000\000q\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000a\000a\000\000\000\000\000\000\000\000\000\000\000a\000a\002~\000a\000a\000a\000q\000\000\000\000\000\000\000q\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000q\000q\000\000\000q\000q\000i\000\000\000\000\000i\000q\000\000\000\000\000\000\000q\000\000\000\000\002\142\000\000\002\158\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002~\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\002\174\000\000\000q\002\134\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000\000\000q\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\002\142\000\000\002\158\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\000i\002\150\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000q\000\000\000\000\000q\000q\000q\000q\000\000\000\000\000\000\000\000\000\000\000q\000q\000\000\000q\000q\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000\000\000\000\002\150\000\000\000\000\000\000\000m\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000\000\000\000\000\000\000i\000i\002~\000i\000i\000i\000m\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000m\000m\000\000\000m\000m\000u\000\000\000\000\000u\000m\000\000\000\000\000\000\000m\000\000\000\000\002\142\000\000\002\158\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002~\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000\000\000\000\002\174\000\000\000m\002\134\000\000\000\000\000u\000u\000\000\000u\000u\000\000\000\000\000m\000\000\000u\000\000\000\000\000\000\002\166\000\000\000\000\002\142\000\000\002\158\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\002\174\002\150\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000m\000\000\000\000\000m\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000m\000m\000\000\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\182\000\000\000\000\000u\000u\000\000\000\000\002\150\000\000\000\000\000\000\002v\000\000\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\000u\000u\002~\000u\000u\000u\000\133\000\000\000\000\000\000\000\133\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000\133\000\133\000\000\000\133\002\238\002v\000\000\000\000\000y\000\133\000\000\000\000\000\000\002\166\000\000\000\000\002\142\000\000\002\158\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002~\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\000\000\000\000\002\174\000\000\000\133\002\134\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\133\000\000\000y\000\000\000\000\000\000\002\166\000\000\000\000\002\142\000\000\002\158\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\182\000\000\000\000\000\133\000\133\000\000\002\174\002\150\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000\000\000\000\000\000\000\000\000\000\000\133\000\133\000\000\002\246\002\190\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\182\000\000\000\000\000y\000y\000\000\000\000\002\150\000\000\000\000\000\000\002v\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000\000\000y\000\000\000\000\000y\000y\000y\000y\000\000\000\000\000\000\000\000\000\000\000y\000y\002~\000y\002\190\000y\000\129\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000\129\000\129\000\000\000\129\002\238\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\002\166\001\166\000\000\002\142\n\166\002\158\000\129\n\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\002\174\000\000\000\129\000\000\000\000\n\174\011\006\000\000\000\000\011n\011\134\011\138\000\000\000\129\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\206\001\230\000\000\000\000\n\210\011\142\001\242\000\000\n\214\n\218\000\000\n\222\000\000\000\000\002\182\000\000\000\000\000\129\000\129\000\000\000\000\002\150\000\000\000\000\000\000\000\000\000\000\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\129\000\000\000\n\000\129\000\129\000\129\000\129\000\000\000\000\000\000\000\000\n\242\000\129\000\129\000\000\000\129\002\190\000\129\000\000\006\025\000\000\011\146\001\166\011\174\000\000\n\166\000\000\000\000\n\170\000\000\000\000\000\000\000\000\n\246\000\000\000\000\000\000\000\000\000\000\n\250\000\000\000\000\000\000\001\178\000\000\012\162\000\000\000\000\n\254\000\000\000\000\000\000\n\174\011\006\002\"\000\000\011n\011\134\011\138\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\206\001\230\000\000\000\000\n\210\011\142\001\242\000\000\n\214\n\218\000\000\n\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\001\166\000\n\000\000\n\166\000\000\000\000\n\170\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\025\000\000\011\146\001\178\011\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\174\011\006\n\246\000\000\011n\011\134\011\138\000\000\n\250\000\000\001\218\000\000\001\222\000\000\012\146\000\000\000\000\n\254\000\000\000\000\n\206\001\230\000\000\002\"\n\210\011\142\001\242\000\000\n\214\n\218\000\000\n\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\001\166\000\n\000\000\n\166\000\000\000\000\n\170\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\025\000\000\011\146\001\178\011\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\174\011\006\n\246\000\000\011n\011\134\012^\000\000\n\250\000\000\001\218\000\000\001\222\000\000\005u\000\000\000\000\n\254\000\000\000\000\n\206\001\230\000\000\002\"\n\210\011\142\001\242\000\000\n\214\n\218\000\000\n\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\001\166\000\n\000\000\n\166\000\000\000\000\n\170\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\025\000\000\011\146\001\178\011\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\174\011\006\n\246\000\000\011n\011\134\012n\000\000\n\250\000\000\001\218\000\000\001\222\000\000\001\189\000\000\000\000\n\254\000\000\000\000\n\206\001\230\000\000\002\"\n\210\011\142\001\242\000\000\n\214\n\218\000\000\n\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008Z\005\233\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\000\000\000\n\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\n\242\000\000\000\000\005\233\000\000\005\233\n\137\n\137\006\025\000\000\n\137\000\000\011\174\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\n\246\000\000\000\000\005\233\000\000\000\000\n\250\000\000\000\000\005\233\000\000\000\000\001\205\000\000\000\000\n\254\000\000\000\000\000\000\000\000\005\233\002\"\000\000\n\137\000\000\005\233\000Z\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\226\000\000\000\000\000\000\000\000\000\000\n\137\000\000\005\233\000\000\000\000\005\233\0031\000\000\000j\0031\000r\000\000\000\130\0031\000\000\0031\000\000\011\234\005\233\000\138\0031\0031\000\000\005\233\005\233\005\233\000\000\005\233\005\233\000\000\005\233\011\242\000\000\000\000\000\000\000\000\005\233\0122\012:\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\018\000\146\0031\011\250\000\000\012\n\0031\005\233\000\000\000\000\000\000\005\233\005\233\n\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0031\000\000\000\000\000\000\012\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0031\000\162\000\181\000\000\000\000\000\000\000\000\000\000\0031\000\000\000\000\000\000\0031\0031\003-\000\000\000\182\003-\000\190\000\000\000\206\003-\0031\003-\000\000\011\234\000\000\000\214\003-\003-\000\000\012\"\000\000\0031\000\000\000\000\000\000\000\000\012\002\011\242\000\000\000\000\000\000\0031\000\000\000\181\000\181\000\000\0031\000\000\000\000\005]\000\000\000\000\000\000\012\018\000\222\003-\011\250\000\000\012\n\003-\000\000\000\000\000\000\000\000\012B\012*\000\000\000\000\000\000\000\000\001\137\000\000\000\000\001\137\000\000\003-\000\000\0031\000\000\012\026\0031\0031\000\000\000\000\0031\000\000\000\000\003-\000\238\0031\0031\000\000\000\000\001\137\0031\003-\000\000\001\137\000\000\003-\003-\001\137\000\000\000\000\000\000\000\000\000\000\001\137\000\000\003-\000\000\000\000\000\000\001\137\001\137\000\000\000\000\000\000\012\"\000\000\003-\000\000\000\000\001\137\000\000\012\002\001\137\000\000\001\137\001\137\003-\000\000\000\000\000\000\000\000\003-\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\001\137\000\000\000\181\012*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\000\000\003-\000\000\000\000\003-\003-\000\000\000\000\003-\000\000\000\000\000\000\000\000\003-\003-\000\000\000\000\000\000\003-\000\000\000\000\000\000\000\000\001\137\002N\000\000\001\137\001\137\000\000\000\000\001\137\000\000\000\000\000\000\001\161\000\000\000\000\001\161\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\001\137\001\137\000\000\001\137\000\000\000\000\000\000\000\000\003\n\001\137\001\137\001\161\001\137\001\137\001\137\001\161\000\000\000\000\000\000\001\161\000\000\000\000\000\000\000\000\000\000\001\161\000\000\000\000\001\161\001\161\000\000\001\161\001\161\000\000\000\000\000\000\000\000\001\161\000\000\000\000\000\000\001\161\000\000\000\000\001\161\000\000\001\161\001\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\161\000\000\001\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\161\000\000\000R\000V\000f\000\170\007\186\000\174\nR\000\178\000\246\nV\000\254\000\000\001\014\025~\001\022\nZ\001\030\0012\001:\001>\n^\025\130\000\000\000\000\001\161\014&\000\000\001\161\000\000\000\000\000\000\001\161\000\000\000\000\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\161\001N\001\161\000\000\000\000\000\000\000\000\000\000\014.\001\161\001\161\000\000\001\161\001\161\001\161\000\000\000\000\001\166\000\000\000\000\001\170\001^\000\000\001\174\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\014\230\000\000\000\000\001b\000\000\000\000\001\178\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\001\198\001\202\000\000\001\210\n\134\n\162\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\226\001\230\000\000\011\158\001\234\001\238\001\242\000\000\001\246\001\250\000\n\001\254\000\000\000\000\000\000\004\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021*\000\000\000\000\002\002\001n\000\000\000\000\000\000\002\006\000\000\000\000\000\n\021.\006\017\n\138\000\000\000\000\000\000\000\000\023n\002\014\000\000\0212\006\017\0216\n\221\n\221\000\000\006\017\000\000\002\018\008\157\021:\000\000\000\000\000\000\000\000\021>\000\000\000\000\021F\000\000\002\022\000\000\021J\000\000\000\000\000\000\002\026\000\000\021N\008\157\000\000\008\157\000\000\000\000\000\000\002\030\000\000\000\000\000\000\024\254\023\030\002\"\n\221\000\000\021R\000\000\000\000\000\000\000\000\021*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021.\000\000\000\000\000\000\000\000\000\000\n\221\000\000\021V\000\000\0212\021Z\0216\000\000\000\000\000\000\000\000\n\177\000\000\000\000\021:\000\000\022\166\000\000\021^\021>\000\000\000\000\021F\021b\000\n\021f\021J\021j\021n\000\000\021r\000\000\021N\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\000\000\000\000\023\174\000\000\000\000\n\177\000\000\021R\000\000\000\000\000\000\t:\005\233\021~\000\000\000\000\000\000\021\130\021\134\n\221\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000v\000\000\n\177\005\233\021V\005\233\005\233\021Z\005\233\000\000\005\233\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\021^\005\233\000\000\000\000\005\233\021b\000\n\021f\005\233\021j\021n\000\000\021r\000\000\005\233\000\000\000\000\000\000\021v\005\233\000\000\021z\t~\005\233\000\000\005\233\t\n\000\000\000\000\000\000\005\233\000Z\t\190\005\233\000\000\005\233\021~\000\000\000\000\005\233\021\130\021\134\n\177\001f\000\000\005\233\000\000\005\233\000Z\000\000\000\000\005\233\000\000\000\000\000\000\005\233\000\000\005\233\005\233\005\233\005\233\000\000\000\000\005\233\005\233\005\233\000\000\005\233\000\000\000\000\005\233\005\233\000\000\005\233\000\000\000\000\005\233\005\233\005\233\000\000\005\233\005\233\000\000\005\233\005\233\n\018\000\000\000\000\000\000\005\233\000Z\000\000\005\233\000\000\005\233\n>\000\000\000\000\000\000\005\233\000Z\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\000\000\000\000\005\233\005\233\000\000\005\233\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\000\000\005\233\000\000\000\000\005\233\005\233\005\233\005\233\005\233\000\000\005\233\005\233\000\000\005\233\005\233\000\000\005\233\005\233\005\233\005\233\005\233\005\233\005\233\005\233\000\000\000\000\000\000\014Z\000\000\005\233\014\170\000\000\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\014b\005\233\005\233\000\000\002!\000\000\000\000\000\000\002!\000\000\000\000\000\000\000\000\000\000\014j\000\000\000\000\002!\002!\000\000\014\186\014\194\001%\000\000\000\000\001%\002!\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\002!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014b\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\014\146\000\000\002!\014j\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\002!\000\000\001%\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\154\000\000\000\000\002!\000\000\000\000\014\146\014z\001%\000\000\000\000\003.\0036\000\170\000\000\000\174\000\000\003z\003\190\001%\003\198\000\000\003\214\002!\003\222\002!\003\230\003\242\000\000\003\250\000\000\000\000\002!\002!\000\000\014\202\014\162\002!\000\000\000\000\000\000\000\000\000\000\000\000\004\002\014\154\000\000\000\000\001%\000\000\000\000\000\000\014z\000\000\000\000\000\000\001\013\000\000\004\n\001\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\001%\001%\001\013\001%\014\162\001%\001\013\000\000\000\000\000\000\001\013\000\000\000\000\000\000\000\000\004\026\014j\000\000\000\000\001\013\001\013\000\000\001\013\001\013\001\005\000\000\000\000\001\005\001\013\000\000\000\000\000\000\001\013\000\000\000\000\014r\000\000\014\130\001\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\005\000\000\000\000\000\000\001\005\000\000\000\000\000\000\001\005\000\000\000\n\001\013\000\000\001\013\001\005\000\000\000\000\001\005\001\005\000\000\001\005\001\005\000\000\000\000\001\013\000\000\001\005\000\000\000\000\000\000\001\005\000\000\000\000\014r\000\000\001\005\001\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\013\000\000\000\000\001\013\000\000\000\000\001\005\014z\001\005\000\000\000\000\t\"\t*\000\170\000\000\000\174\000\000\tn\t\178\001\005\t\186\000\000\t\202\001\013\t\210\001\013\t\218\t\230\000\000\t\238\000\000\000\000\001\013\001\013\000\000\001\013\001\013\001\013\000\000\000\000\000\000\000\000\000\000\000\000\t\246\001\005\000\000\000\000\001\005\000\000\000\000\000\000\014z\000\000\000\000\000\000\001\t\000\000\t\254\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\005\000\000\001\005\000\000\000\000\000\000\000\000\000\000\000\000\001\005\001\005\001\t\001\005\001\005\001\005\001\t\000\000\000\000\000\000\001\t\000\000\000\000\000\000\000\000\n\014\001\t\000\000\000\000\001\t\001\t\000\000\001\t\001\t\001\025\000\000\000\000\001\025\001\t\000\000\000\000\000\000\001\t\000\000\000\000\014r\000\000\001\t\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014b\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\001\t\000\000\001\t\014j\000\000\000\000\001\025\001\025\000\000\001\025\001\025\000\000\000\000\001\t\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\014r\000\000\014\130\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\t\000\000\000\000\001\t\000\000\000\000\014\146\014z\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\t\000\000\001\t\000\000\000\000\000\000\000\000\000\000\000\000\001\t\001\t\000\000\001\t\001\t\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\000\000\001\025\000\000\000\000\000\000\014z\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\014b\001\025\001\025\001\025\001\017\000\000\000\000\000\000\001\017\000\000\000\000\000\000\000\000\000\000\014j\000\000\000\000\001\017\001\017\000\000\001\017\001\017\001\021\000\000\000\000\001\021\001\017\000\000\000\000\000\000\001\017\000\000\000\000\014r\000\000\014\130\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014b\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\001\017\000\000\001\017\014j\000\000\000\000\001\021\001\021\000\000\001\021\001\021\000\000\000\000\001\017\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\014r\000\000\014\130\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\014\146\014z\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\017\000\000\001\017\000\000\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\001\017\001\017\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\000\001\021\000\000\000\000\000\000\014z\000\000\000\000\000\000\001\029\000\000\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\001\021\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\014b\001\021\001\021\001\021\001\029\000\000\000\000\000\000\001\029\000\000\000\000\000\000\000\000\000\000\014j\000\000\000\000\001\029\001\029\000\000\001\029\001\029\014Z\000\000\000\000\001-\001\029\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014b\000\000\000\000\000\000\001-\000\000\000\000\000\000\001-\000\000\000\000\014\146\000\000\001\029\014j\000\000\000\000\001-\001-\000\000\001-\014\194\000\000\000\000\001\029\000\000\001-\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\154\000\000\000\000\001\029\000\000\000\000\014\146\014z\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\000\000\000\000\000\000\001\029\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\001\029\001\029\000\000\001\029\001\029\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\154\000\000\000\000\001-\000\000\000\000\000\000\014z\000\000\000\000\000\000\014Z\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\000\000\001-\000\000\000\000\000\000\000\000\000\000\000\000\001-\001-\014b\014\202\014\162\001-\001!\000\000\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\014j\000\000\000\000\001!\001!\000\000\001!\001!\014Z\000\000\000\000\001)\001!\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014b\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\014\146\000\000\001!\014j\000\000\000\000\001)\001)\000\000\001)\014\194\000\000\000\000\001!\000\000\001)\000\000\000\000\000\000\014\138\000\000\000\000\014r\000\000\014\130\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\154\000\000\000\000\001!\000\000\000\000\014\146\014z\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\000\000\000\000\001!\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\000\001!\001!\000\000\001!\014\162\001!\000\000\000\000\000\000\000\000\000\000\001\166\000\000\014\154\001\170\000\000\001)\001\174\000\000\000\000\014z\000\000\000\000\000\000\000\000\000\000\008\157\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\001)\000\000\001)\000\000\000\000\001\198\001\202\000\000\001\210\001)\001)\000\000\001)\014\162\001)\001\218\000\000\001\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\226\001\230\000\000\000\000\001\234\001\238\001\242\000\000\001\246\001\250\000\000\001\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\166\000\000\000\000\001\170\000\000\000\000\001\174\000\000\002\002\000\000\000\000\000\000\000\000\002\006\000\000\018\130\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\002\014\000\000\000\000\000\000\000\000\001\198\001\202\000\000\001\210\000\000\002\018\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\002\022\000\000\000\000\001\226\001\230\000\000\002\026\001\234\001\238\001\242\000\000\001\246\001\250\000\000\001\254\002\030\000\000\000\000\000\000\000\000\000\000\002\"\000\000\001\166\000\000\000\000\001\170\000\000\000\000\001\174\000\000\002\002\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\002\014\000\000\000\000\000\000\000\000\001\198\0076\000\000\001\210\000\000\002\018\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\002\022\000\000\000\000\001\226\001\230\000\000\002\026\001\234\001\238\001\242\000\000\001\246\001\250\000\000\001\254\002\030\000\000\000\000\000\000\000\000\000\000\002\"\000\000\001\166\000\000\000\000\001\170\000\000\000\000\001\174\000\000\002\002\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\002\014\000\000\000\000\000\000\000\000\001\198\002\n\000\000\001\210\000\000\002\018\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\002\022\000\000\000\000\001\226\001\230\000\000\002\026\001\234\001\238\001\242\000\000\001\246\001\250\000\000\001\254\002\030\000\000\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\030\000\000\002\002\000\000\000\000\000\000\000\000\002\006\000\000\004E\000\n\000\000\004E\000\000\000\000\004E\000\000\000\000\000\000\002\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\004E\000\000\000\000\004E\000\000\000\000\000\000\000\000\000\000\004E\004E\002\022\004E\000\000\000\000\000\000\000\000\002\026\000\000\004E\000\000\004E\000\000\000\000\000\000\000\000\002\030\000\000\000\000\004E\004E\000\000\002\"\004E\004E\004E\004\245\004E\004E\004\245\004E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004E\000\000\004\245\000\000\000\000\004E\000\000\000\000\004E\004\245\004\245\000\000\000\000\000\000\000\000\000\000\004\245\004E\000\000\000\000\000\000\000\000\004\245\004\245\021*\000\000\004\245\000\000\000\000\004\245\000\000\000\000\004\245\000\000\000\000\004\245\021.\004\245\004\245\004E\000\000\000\000\000\000\000\000\000\000\004E\0212\000\000\0216\000\000\000\000\000\000\000\000\000\000\004E\000\000\021:\000\000\004\245\000\000\004E\021>\000\000\000\000\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\000\000\000\000\000\000\004\245\000\000\000\000\000\000\000\000\000\000\000\000\022\162\000\000\000\000\000\000\000\000\021R\000\000\000\000\000\000\000\000\000\000\000\000\004\245\004\245\000\000\000\000\005\017\004\245\000\000\004\245\000\000\000\000\005\233\000\000\000\000\005\233\000\194\004\245\n\177\005\233\021V\005\233\004\245\021Z\000\000\004\245\005\233\005\233\000\000\000\000\000\000\000\000\000\000\004\245\000\000\000\000\021^\004\245\004\245\000\000\000\000\021b\000\n\021f\000\000\021j\021n\000\000\021r\005\233\000\000\000\000\005\233\001\002\021v\005\233\005\233\021z\005\233\005\233\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021~\000\000\000\000\005\233\021\130\021\134\n\177\004\030\000\000\000\000\000\000\000\000\000Z\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\000\000\000\000\004\242\000\000\000\000\000\000\005\233\000Z\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\005\233\000\000\000\000\005\233\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\005\233\000\000\005\233\005\233\001\166\005\233\005\233\001\186\000\000\000\000\001\190\005\233\005\233\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\001\194\001\214\005\233\001\210\000\000\005\233\005\233\000\000\000\000\005\233\001\218\000\000\001\222\000\000\005\233\005\233\000\000\000\000\000\000\005\233\005j\001\230\000\000\000\000\005n\001\238\001\242\000\000\005r\005v\000\000\005z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\166\000\000\000\000\001\186\000\000\000\000\001\190\000\000\005~\000\000\000\000\000\000\000\000\005\130\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\001\182\005\138\000\000\000\000\000\000\000\000\001\194\007\030\000\000\001\210\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\005\142\000\000\000\000\005j\001\230\000\000\005\146\005n\001\238\001\242\000\000\005r\005v\000\000\005z\005\150\000\000\000\000\000\000\000\000\005\233\002\"\000\000\005\233\003F\000\000\005\233\005\233\000\000\005\233\003\138\005~\000\000\005\233\005\233\005\233\005\130\000\000\000\000\000\n\005\233\005\233\000\000\005\233\003\202\000\000\000\000\005\233\005\138\005\233\000\000\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\005\233\000\000\005\233\005\142\000\000\000\000\005\233\000\000\000\000\005\146\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\005\150\000\000\005\233\000\000\005\233\000\000\002\"\000Z\007f\000\000\005\233\000\000\000\000\000Z\000\000\000\000\005\233\000\000\005\233\000\000\000\000\000\000\005\233\005\233\005\233\000\000\000\000\000Z\005\233\005\233\005\233\000\000\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\005\233\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\005\233\001\166\005\233\005\233\001\186\005\233\005\233\001\190\005\233\005\233\000\000\000\000\000\000\005\233\005\233\005\233\005\233\000\000\000\000\005\233\005\233\000\000\001\178\005\233\0149\001\182\000\000\0149\005\233\005\233\000\000\001\194\005\134\005\233\001\210\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\0149\000\000\000\000\000\000\005j\001\230\000\000\005\170\005n\001\238\001\242\000\157\005r\005v\0149\005z\000\000\000\000\0149\000\000\0149\0149\000\000\000\000\005\178\000\000\000\000\005\190\000\000\000\000\0149\000\000\005~\0149\000\157\0149\000\000\005\130\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\242\005\138\000\000\000\000\000\000\000\000\000\157\000\157\0149\001\166\000\000\000\000\n\166\000\000\000\000\n\170\000\157\000\000\000\000\011\250\000\000\012\n\000\000\005\142\000\000\000\000\000\000\000\000\005\202\005\146\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\150\n\174\n\186\000\000\000\157\000\000\002\"\000\000\000\000\0149\0149\001\218\0149\001\222\005\206\000\000\0149\000\000\000\000\000\000\000\000\n\206\001\230\000\000\005\214\n\210\001\238\001\242\000\000\n\214\n\218\000\000\n\222\000\000\0149\000\000\000\000\000\149\000\000\000\000\0149\000\000\000\000\000\157\0149\0149\000\000\000\000\n\226\n\230\012\002\000\000\000\000\000\000\n\234\000\000\001\166\000\n\000\000\n\166\000\149\000\000\n\170\000\157\000\000\000\000\n\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\001\178\000\157\000\157\000\149\000\149\000\000\000\000\000\000\000\000\n\174\n\238\n\246\000\000\000\149\000\000\000\000\011\250\n\250\000\149\001\218\000\000\001\222\000\000\000\000\000\000\000\000\n\254\000\000\000\000\n\206\001\230\000\000\002\"\n\210\001\238\001\242\000\000\n\214\n\218\000\149\n\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\166\000\000\000\000\n\166\000\000\000\000\n\170\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\149\n\174\011\006\000\000\000\000\000\000\000\000\012\002\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\n\246\000\000\000\149\n\206\001\230\000\000\n\250\n\210\001\238\001\242\000\000\n\214\n\218\000\000\n\222\n\254\000\000\000\149\000\149\000\000\000\000\002\"\000\000\001\166\000\000\000\000\013v\000\000\000\000\013z\n\226\n\230\000\000\000\000\000\000\000\000\n\234\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\n\242\000\000\000\000\000\000\000\000\013~\014\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\n\246\000\000\000\000\013\150\001\230\000\000\n\250\013\154\001\238\001\242\000\000\013\158\013\162\000\000\013\166\n\254\000\000\000\000\000\000\000\000\000\000\002\"\000\000\001\166\000\000\000\000\013v\000\000\000\000\013z\n\226\013\170\000\000\000\000\000\000\000\000\013\174\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\013\182\000\000\000\000\000\000\000\000\013~\013\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\013\186\000\000\000\000\013\150\001\230\000\000\013\190\013\154\001\238\001\242\000\000\013\158\013\162\000\000\013\166\013\194\000\000\000\000\000\000\000\000\000\000\002\"\000\000\001\166\000\000\000\000\013v\000\000\000\000\013z\n\226\013\170\000\000\000\000\000\000\000\000\013\174\000\000\000\000\000\n\000\000\000\000\000\000\000\000\001\178\000\000\000\000\000\000\013\182\000\000\000\000\000\000\000\000\013~\013\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\218\000\000\001\222\000\000\000\000\000\000\000\000\013\186\008\149\000\000\013\150\001\230\000\000\013\190\013\154\001\238\001\242\000\000\013\158\013\162\008\149\013\166\013\194\000\000\000\000\000\000\000\000\000\000\002\"\000\000\008\149\000\000\008\149\000\000\000\000\000\000\000\000\n\226\013\170\000\000\008\149\000\000\000\000\013\174\000\000\008\149\000\n\023\170\008\149\000\000\000\000\000\000\008\149\021\254\000\000\013\182\000\000\000\000\008\149\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\000\000\000\000\008\149\000\000\000\000\013\186\000\000\021:\000\000\000\000\000\000\013\190\021>\000\000\000\000\021F\000\000\000\000\000\000\021J\013\194\000\000\000\000\000\000\000\000\021N\002\"\008\149\000\000\000\000\008\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021R\023\202\008\149\000\000\000\000\000\000\000\000\008\149\008\149\008\149\000\000\008\149\008\149\000\000\008\149\000\000\000\000\000\000\000\000\000\000\008\149\000\000\000\000\008\149\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\149\000\000\000\000\021^\008\149\008\149\000\000\000\000\021b\000\n\021f\000\000\021j\021n\008\001\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\008\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\001\000\000\008\001\021~\000\000\000\000\000\000\021\130\021\134\000\000\008\001\000\000\000\000\000\000\000\000\008\001\000\000\022\134\008\001\000\000\000\000\000\000\008\001\000\000\000\000\000\000\000\000\000\000\008\001\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\000\000\000\000\008\001\023\202\000\000\000\000\000\000\021:\000\000\000\000\000\000\000\000\021>\000\000\000\000\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\000\000\008\001\000\000\000\000\008\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021R\000\000\008\001\000\000\000\000\000\000\000\000\008\001\008\001\008\001\000\000\008\001\008\001\000\000\008\001\000\000\000\000\000\000\000\000\000\000\008\001\000\000\000\000\008\001\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\001\000\000\000\000\021^\008\001\008\001\000\000\000\000\021b\000\n\021f\000\000\021j\021n\022\158\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\021~\000\000\000\000\000\000\021\130\021\134\000\000\021:\000\000\000\000\000\000\000\000\021>\000\000\021*\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\000\000\000\000\021R\000\000\000\000\000\000\000\000\021:\000\000\000\000\000\000\000\000\021>\000\000\000\000\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023J\000\000\021^\000\000\000\000\000\000\000\000\021b\000\n\021f\000\000\021j\021n\000\000\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021~\000\000\000\000\021^\021\130\021\134\000\000\000\000\021b\000\n\021f\000\000\021j\021n\021*\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\021~\000\000\000\000\000\000\021\130\021\134\000\000\021:\000\000\000\000\000\000\000\000\021>\000\000\021*\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\021.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\0216\000\000\000\000\024\150\000\000\000\000\000\000\000\000\021:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021F\000\000\000\000\000\000\021J\000\000\000\000\000\000\000\000\000\000\021N\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021R\000\000\021^\000\000\000\000\000\000\000\000\021b\000\n\021f\000\000\021j\021n\000\000\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\021V\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021~\000\000\000\000\021^\021\130\021\134\000\000\000\000\021b\024\182\021f\000\000\021j\021n\000\000\021r\000\000\000\000\000\000\000\000\000\000\021v\000\000\000\000\021z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021~\000\000\000\000\000\000\021\130\021\134\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\001F\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000R\000V\000f\000\170\001N\000\174\000\000\000\178\000\246\000\000\000\254\001F\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\001^\001N\000\000\000\000\000\000\000\000\001j\000\000\000\000\000\000\001F\000\000\000\000\000\000\001b\000\000\000\000\000\000\000\000\000\000\000\000\001^\000\000\000\000\001N\000\000\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001^\000\000\000\000\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\n\000\000\001b\000\000\000\000\000\000\004R\004V\000R\000V\000f\000\170\000\000\000\174\006R\000\178\000\246\006\162\000\254\001n\001\014\000\n\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\001n\000\000\001F\012\137\000\n\000\000\000\000\000\000\000\000\000\000\000\000\006b\000\000\000\000\000\000\002\025\001N\006\178\006\186\000\000\000\000\000\000\000\000\004Z\0029\000\000\000\000\006\130\000\000\000\000\006j\000\000\006z\000\000\000\000\000\000\001^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003]\000\000\000\000\0021\000\000\000\000\001b\000\000\000\000\006\138\026:\004V\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\237\000\000\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\006\146\000\000\000\000\002\025\000\000\000\000\000\000\006r\006Z\000\000\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\026>\000\000\000\000\006b\000\000\000\000\002\025\000\237\000\000\000\237\000\237\000\213\000\000\001^\000\213\000\000\006\194\006\154\000\000\006\130\000\000\003U\006j\000\000\006z\000\000\000\000\001b\000\000\000\000\000\000\026:\004V\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\138\000\000\000\000\006b\000\000\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\000\000\205\000\000\000\000\000\205\000\000\000\000\000\213\000\000\000\000\006j\000\000\006z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\205\000\000\000\000\006\146\000\000\000\000\000\237\026F\000\000\000\213\006r\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\205\000\000\000\205\000\205\000\209\000\000\000\000\000\209\000\000\000\000\000\237\000\000\000\205\000\000\000\000\006j\000\000\000\205\000\000\000\000\000\237\006\154\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\213\000\000\000\000\000\213\000\000\000\000\000\000\006r\000\205\000\000\000\000\000\209\000\000\000\000\000\000\000\209\000\000\000\209\000\209\000\000\000\000\000\225\000\000\000\000\000\225\000\213\000\000\000\209\000\000\000\000\006j\000\000\000\209\000\000\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\205\000\000\000\000\000\205\000\000\000\000\000\209\006r\000\000\000\000\000\000\006b\000\000\000\000\000\000\000\225\000\000\000\225\000\225\000\217\000\000\000\000\000\217\000\000\000\000\000\205\000\000\000\225\000\000\000\000\006j\000\000\006z\000\000\000\000\000\205\000\205\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\209\000\000\000\000\000\209\000\000\000\000\000\000\006r\006\138\000\000\000\000\006b\000\000\000\000\000\000\000\217\000\000\000\217\000\217\000\000\000\000\000\221\000\000\000\000\000\221\000\209\000\000\000\217\000\000\000\000\006j\000\000\006z\000\000\000\000\000\209\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\225\000\000\000\000\000\225\000\000\000\000\000\217\006r\000\000\000\000\000\000\006b\000\000\000\000\000\000\000\221\000\000\000\221\000\221\000\229\000\000\000\000\000\229\000\000\000\000\000\225\000\000\000\221\000\000\000\000\006j\000\000\006z\000\000\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\000\000\000\006r\006\138\000\000\000\000\006b\000\000\000\000\000\000\000\229\000\000\000\229\000\229\000\000\000\000\006R\000\000\000\000\000\245\000\217\000\000\006\130\000\000\000\000\006j\000\000\006z\000\000\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\221\000\000\000\000\000\221\000\000\000\000\006\138\006r\000\000\000\000\000\000\006b\000\000\000\000\000\000\000\245\000\000\000\245\006\186\006R\000\000\000\000\000\233\000\000\000\000\000\221\000\000\006\130\000\000\000\000\006j\000\000\006z\000\000\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\006\146\000\000\000\000\000\229\000\000\000\000\000\000\006r\006\138\000\000\000\000\006b\000\000\000\000\000\000\000\233\000\000\000\233\000\233\000\000\000\000\006R\000\000\000\000\000\241\000\229\000\000\006\130\000\000\000\000\006j\000\000\006z\000\000\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\006\146\000\000\000\000\000\245\000\000\000\000\006\138\006r\000\000\000\000\000\000\006b\000\000\000\000\000\000\000\241\000\000\000\241\006\186\000\153\000\000\000\000\000\000\000\000\000\000\000\245\000\000\006\130\000\000\000\000\006j\000\000\006z\000\000\000\000\006\194\006\154\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\006\146\000\000\000\000\000\233\000\000\000\169\000\000\006r\006\138\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\161\000\000\000\000\000\233\000\000\000\153\011\234\000\000\011\250\000\000\000\153\000\000\000\000\000\233\006\154\000\000\000\000\000\000\000\000\000\000\011\242\000\000\000\000\011\234\000\000\006\146\000\169\000\169\000\241\000\000\000\000\000\153\006r\000\000\000\000\000\000\000\169\011\242\000\000\011\250\000\000\012\n\000\000\000\161\000\161\000\000\000\000\000\000\000\000\000\000\000\241\000\165\000\000\000\161\000\000\000\000\011\250\000\000\012\n\000\000\000\241\006\154\012\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\173\011\234\000\000\000\000\012\002\000\000\000\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\242\000\000\000\153\011\226\000\000\000\000\000\165\000\165\011\234\000\000\000\000\000\000\000\000\000\169\000\000\000\000\000\165\000\153\000\153\011\250\012\002\012\n\011\242\000\000\000\000\000\000\011\234\000\000\000\173\000\173\000\161\000\000\000\000\000\169\011\226\000\000\000\000\012\002\012\018\000\000\011\242\011\250\012\026\012\n\000\000\000\000\000\189\012:\000\169\000\169\000\161\000\000\000\000\000\000\000\000\000\000\012\018\011\234\000\000\011\250\000\000\012\n\000\000\000\000\012\026\000\161\000\161\000\000\000\000\000\000\000\000\011\242\000\000\000\000\000\000\000\000\000\000\000\177\000\177\000\000\000\000\000\165\012\026\000\000\000\000\000\000\000\000\012\018\012\002\011\226\011\250\000\000\012\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\165\000\000\012\"\000\000\000\000\000\000\000\000\000\000\000\000\012\002\000\000\011\234\012\026\000\000\000\000\000\165\000\165\000\000\000\000\000\000\012\"\000\000\000\173\000\000\000\000\011\242\000\000\012\002\000\000\000\000\000\000\000\185\012:\000\000\000\000\000\000\000\000\000\173\000\173\000\000\000\189\012\018\000\000\000\000\011\250\000\000\012\n\000\000\000\000\000\000\000\000\012\"\000\000\000\000\000\000\012B\012*\000\000\012\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\026\000\000\000\000\000\000\000\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177\012*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\"\000\000\000\000\000\000\000\000\000\000\000\000\012\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\012*"))
+    ((16, "\000\240\000\193\000\000\000\000\n\228\000\193\000\000\000\000\000'\000\000\000\000\000\000\001)\000\000\000\000\000\000\000\240\000\000\000u\027<\000\000\019x\019x\000\000\000\000/\002\019x\000\000@\218\019x\000\000\000\000\019x\000\000\019x\000\000\000\179\000g\019x\000\000\019x\000\000\000\000\000\000/\204\019x\000\000A,\019x\000\000\000\000\019x\000\000\019x\000\000\000u\000\005\019x\000\000\019x\000\000\019x\000\000A`\019x\000\000\000\000\019x\000\000\019x\000\000\000y\000\000\000\000\019x\000\000\019x\000\000\000\000\019x\000\000\019x\000\000\000\130\000\240\019x\000\000\027<@\218L\232\000\000\000\000L>\001\1840\220\001@L\232\000\000\001\004\019x\000\000L\232\000\000\000y\000x0\194\000\000\000\000>\174\000\000BH\000\000B\1600\1940\194\020\230\020\230BH\020\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?,0\194\000\000\000\000?,\000\000?,\000\0000\194\000\000\000\000\000\000\025$\000y\000\000\020\230\000\000-\0220\194\031J0\194\000\000\000\000\000\000\000\000\000\000\000\000 \1500\194!\1700\194\"\0120\194# 0\194\000\0000\194\000\0000\194#\1300\194$\1500\194$\2480\194&\0120\194&n0\194'\1300\194\001J0\194\000\000\000\000\000\000\000\000\000\0000\194'\2280\194(\2480\194)Z0\194\000\000\000\0000\194\000\000\000\000\002\n\000\000\000\000\000\000\000\000\018\182\019x\000\000\001\002\019x\000\000C\\\019x\000\000\000\000\019x\000\000\019x\000\000\002\160\002\240\019x\000\000\019x\000\000\001\244\019x\000\000Ch\019x\000\000\000\000\019x\000\000\019x\000\000\003\148\004\n\019x\000\000\019x\000\000\019x\000\000Cx\019x\000\000\000\000\019x\000\000\019x\000\000\000y\019x\000\000\019x\000\000\019x\000\000\019x\000\000\003\242\004V\019x\000\000A,L\232\004\002\019x\000\000N\182M0\000\000\002\186\005J\000y\004\166\005rN\182\000\000\000\000\000\199\028\014\000\000\000\000\000\000\000\000\001`\005v\000\\\005\252N\182\001<\029|\000\000\000\000\005B\000\000\005v\006JN\182\005\166\000\000\000\000\000\000\000\199\000\000\005\172\006\160\000\000\006\162\000\000\018\182\001JL\232\005\198\019x\000\000A`L\232\006\002\019x\000\000\000\000\000y\006\250\000\000\000\000\000\000\001\130\020\230\000\0000\194\006\024\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\006\"\000\000\000\000\006(\000\000\0062BH\000\000\000\000\000\000\000\000\000\000\000\000D\1340\194\000\000D\134\000\000D\134BH\000\000\000\000E\028\000y\000\000\020\230\0066\000\0000\194\006:\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\2140\194\000\0000\194\000\000\000\000\006@\000\000\000\000?\170\007\0000\194\006\202\000\000\000\000BH\000\000\000\000\000\000\000\000\000\000\000\0004JBH5\190BH72BH8\166BH\000\000BH\000\000BHOFBHPNBHP^BHP\198BHQrBHQ\1780\194\006\130BH\000\000BHQ\242BHR2BHRr\006\\\000\000\006j\000\000\000\0210\194\000\000\000\021\000\000\000\000\000\017\027<\000\000\000\017\000\000\000\000\006j0\194\000\000\006t\000\000\020\230\006~\000\000\000\000\007R\000\000\020\230\006\130\000\000\000\000\006\134\000\000\000\000\000x\000\000\007x\000\000C\\L\232\006\142\019x\000\000\000\000\007 \000\000\006\158\019x\000\000\000\000\000\\\027<\000\000\027<\000\000\006\144\000\000\000\\\000\000\017&\028V\019N\000\000\003\154\019N\000\000\019N\019N\000\000\000\000\019N\000\000\019N\000\000\006\212\007\002\019N\000\000\019N\000\000\006\186\019N\000\000\019t\019N\000\000\000\000\019N\000\000\019N\000\000\006\216\007\006\019N\000\000\019N\000\000\019N\000\000\019x\019N\000\000\000\000\019N\000\000\019N\000\000\000y\019N\000\000\019N\000\000\019N\000\000\019N\000\000\006\220\007\n\019N\000\000\027<\006\186\000\000\019bL\232\006\182\019N\000\000\000\000\0002\000\000\000r\0002\000\000\000\000\000\000\007\168\000\000\004&L\232\006\190\019N\000\000\019xL\232\006\200\019N\000\000\000\000!L\019N\000\000\006\240\019N\000\000<r\019N\000\000\000\000\019N\000\000\019N\000\000\006\250\007,\019N\000\000\019N\000\000\b(\019N\000\000<\134\019N\000\000\000\000\019N\000\000\019N\000\000\007\004\0072\019N\000\000\019N\000\000\019N\000\000<\190\019N\000\000\000\000\019N\000\000\019N\000\000\000y\019N\000\000\019N\000\000\019N\000\000\019N\000\000\007\012\007@\019N\000\000<\134L\232\006\234\019N\000\000\000\000\004:L\232\006\236\019N\000\000<\190L\232\006\240\019N\000\000\000\000\000\000\000\000\000\000\000\000\007\2000\194\007\004\022\234\007\2140\194\007\024\007\2180\220\000\000\000\000\000\000\028\014\000y\000\000\001J0\194*\200\000\000Ej0\194\007&\000\000\020\230\007&\000\000\007(\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000F\0180\194\000\000F\018\000\000F\018F\156\020\230\007.F\156\000\000\000\000O\006\000y\000\000\020\230\0072\000\0000\194\0076\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\194\000\1730\194\007R\000\000\000\000+R*\200\027f*>\b\0200\194\000\000\007\232\000\000\000\000\000y\000\000\026P\007\156*\200\000\000\007\152*\200\000\000\000\190\000\000\000\000\021dF\1560\"F\156;\004F\156;\222F\156\000\000F\156\000\000F\156C\244F\156J\208F\156N\178F\156R\242F\156S`F\156S\132F\156S\148F\156T\024F\156T|\000\000\007x+\220\000\000,f,f\007z,f-d,f\000\000\007~,f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007r\000\000\000\000\007t\000\000\bd\000\000\000y\000\000\001J\bf\000\000\000\246\b6\000y\007\134\bPN\182\007\154\002<\000\0000\194\b\130\000\000\006.\007\218\bdN\182\007\160\b\142\000\000\002\0240\194\b\148\000\000\b\150\000\000\018\182\000y\004@0\194\b\152\000\000\b\154\000\000\000y\004H0\194\b\156\000\000\b\162\000\000\002\166\007\236\007$\000\000F\244G~\020\230\007\196\000\000\007\198G~\000\000\000\000\000\000\000\000\000\000\000\000G\2140\194\000\000G\214\000\000G\214G~\000\000\000\000\028\212\000y\000\000\020\230\007\200\000\0000\194\007\210\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000.d0\194\000\0000\194\000\000\007\218\000\000\000\021\000\000\000\000\000\000\000\000\000\0001\194G~2\"G~36G~3\150G~\000\000G~\000\000G~4\170G~5\nG~6\030G~6~G~7\146G~7\2420\194\b\004G~\000\000G~9\006G~9fG~:z\020\230\007\220\000\000\000\000=Z\000\000\b\210\000\000\001l\b\1680\194\bn\000\000\b\1780\194\b~\000\000\002\156\000\000\007$\007$\001l\000\000\001l\000\000\017&\007$\007$\000\000\000\000\000\000\000\000\000\000\000\000\b\2000\194\b\014\022\234\023\194\000y\b\246\000\000\b\216=\216\b\250=\216\b\254=Z\b\026\022\234\022\234\000y\002\228\001J\000\000\000\000\000\000\002\228\000\000\0030\000y\000\000\000\000\b\028\000\000\000\000\000\000\t\004\000\000\t\006\000\000\000\000\t@\b\2340\194\b&\t\014\000\000\b\246\020\230\b2\022\234\000\000\000\000\bf\000\000\000\021\000\000\005\182\000\000\000\000\001l\000\000\b\190\000\000\012\220\003\028\000\000\012\220\000\000\000\000\026P\000\000\003\028\000\000\000\000\n\000\000\000\012\220\000\000\t\012\020\230\bH\t2\000\000\0002\000\000\t\b\000y\bX\t N\182\b\\\004\b\000\0000\194\tD\000\000\t*N\182\bh\tP\000\000\005\0260\194\tT\000\000\tV\000\000\018\182\000y\005\1440\194\tX\000\000\t^\000\000\000\000\000\000\n\000\000\000\000\000\003\028\000\000\007$\000\000\001\194\000\000\000\000\002l\023\194\000\000\002l\000\000\000\000\b~\000\000\000\021\000\003\022\234\000\000\004H\000Q\004H\000\000\002\030\000\000\007$\000\000\007$\000\000\000\000\000\000\bx\000\000\000\000\b\132\000\000\002\134\005\182\002\208\004H\000\000\000\000\000\000\007\188\000\000\007$\000\000\002\134\000\000\000\000\005\148\000Q\017&\000\000\002\030\000\000\b\146\017&\000\000\000\000\b\146\000\000\000\000\b\132\000\000\000\000\b\138\000\000\003@\007$\000\000\003@\000\000\000\000\t\b\000\000\003\028\000\000\007$\000\000\000\000\000\000\018\136>V\000\000\tt\000\000\018\136\000\000\tv\000\000\tx\000\000\028\014\000y\004\170\000\0000\194\t|\000\000\003\006\tL\000y\b\156\tfN\182\b\162\004\252\000\0000\194\t\140\000\000\005\000\000\0000\194\t\142\000\000\018\182\000y\005\014\000\0000\194\t\174\000\000\004&\018\136\000\000\026P\005v\000\0000\194\t\190\000\000\000\000\000\000\000\250\000\000\t\160\020\230\b\220\t\196\000\000\004t\000\000\t\148\000y\b\228\t\172N\182\b\232\005\154\000\0000\194\t\208\000\000\006l\000\0000\194\t\212\000\000\018\182\000y\006\144\000\0000\194\t\214\000\000\004&\000\000\000\000\b\250\000\000\000\250\005\234\t|\000\000\000\000\000\000\t\128\000\000\005\028\002\156\000\000\017&\t\214\000\000\000\0000\194\t2\007$\000\000\t\004\000\000\002\166\000\0000\220\000\000\000\000\004B\017&\000\000\017&\000\000\b\242\000\000\004B\000\0000\194\004D0\194\000\0000\194\000\000\b\244\000\000\004D\000\0000\194\004D\b\248\000\000\022\234\004\190\022\234\000\000\022\234\000\000\b\252\000\000\004\190\000\0000\194\004D\b\254\000\0000\220\005\2340\220\000\0000\220\000\000\t\000\000\000\005\234\000\0000\194\004D\t\002\000\000\000\000\025$\000\000\000\000\tt:\250\000\000\000\000\000\000\000\000\000\000\tH\004H\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206:\250\000\000\000v\000~\000\000\tJ\000\193\000\000\000\000\000\000\002\176\000~\000\000\000\000\000\000\000\000\t\168\000\000\000\000\000\000\000\000\028\212\030B\000\000Hp\000\000:\250\000\000\001~:\250\000\000\003H\004`\004`\000\000\000\146\004`\000\000\t\"\000\000\000\000\000\000\000\000\t\174\000\000\030\192\000\000 @:\250\000\000\000}:\250\000\000\t\178\000\000:\250\t\180\000\000I\216;\192\t\182\000\000\t\184\000\000J\138@^:\250\000\000\000\000\t8:\250\t\200\000\000\t\202\000\000\t\204\000\000\027<\000\000\004\204\027<\000\000\tD\019N\000\000\002\022:\250\000\000\002\206:\250\000\000\000\020\nN\000\000\nR\000\000:\250:\250\tT\000\000\000\000\000\000\000\000\000\000\000\000\t\224\000\000J\226:\250\t\226\000\000\t\234\000\000:\250\t\242\000\000:\250\t\152\000\193\000\000\000\000\004\026:\250\000\000\000\020\000\000\n\000\000\000:\250\n\002\000\000:\250\n\004\000\000H\200;\192:\250\t\130:\250\n\012\000\000\n\014\000\000Iz\000\000\000\000\005\200:\250\000\000\005\148\006\012\004`\t\134\000\000\000\000\001\212\001\212\000\000\000\000\000\000\004\222\001\212\000\000\t\136\000\000\000\000\000\000\000\000\000\000\000\000:\250\000\000\006\024:\250\000\000\000\003\004(\000\193\t\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\022\000\000\n\024\000\000:\250\n\026\000\000K\148:\250\n\028\000\000\n\"\000\000:\250\n$\000\000\022H\t\210Ml\019b\000\000:\250\n2\000\000\n6\000\000\n\006\022H:\250\n:\000\000:\250\n<\000\000\n>\000\000:\250\t\188:\250\nF\000\000\nH\000\000\000\193\t\180\000\000\000\000\025$\000\000\000\000\002\142\n\166\000\000\000\000\000\216\000\000\000\000\000\0000\194\000\000\000\000\000\000\002\218\000\000\002\198\000\000\000\000\000\000\004H0\2200\2200\220\000\000\000\246\000\246\000\246\000\246\000\000\000\000\000\000\000\000\000\000\000\000\001l\017&\n\156\014J\001R\000\000\000\000\002\166\000\000\n\000\000\000*\200\t\198\000\000\001l\017&\t\208\015\184\000\000\001l\014J\000\000\000\000\000\0000\220\000\246\000\000\000\000\000\000\n \001\212\n\158N\224\000\000\004\232P:\000\000\000\000\000\000\004&\n\144\000y\000\000\004\232\000\000\006\nN\224\000\000\000\000\t\222\n\158\007$\t\224\000\000\002\166\000\000\n\000\000\000/n\003\174\000\000\000\000\n\144\000\000\000\000\002\142\000\000\004\138\000\000\000\000\000\0000\194\000\000\002\218\000\000\004\174\000\000\000\000\000\000\005\182\000\000\011n\002\192\011n\000\000\007$\011n\000\000\0048\000\000\007$\000\000\007$\000\000\007$\000\000\t\138\000\000\000\000\000\000\000\000\000\000\007$\000\000\0048\000\000\007$\000\000S\022\000\000\000\000\006\142\n\022\000\193\000\200\n\186\004@\000\000\004@\n\228\000\000\n\230\000\000\n\232\000\000\000\000\005\162\004@\007\206\004@\000\000\000\000\002\b\000\200\t\234\000\000\t\236\000\000\n*\000\193\000\200\t\240\000\000\000\192\n\244\000\000\004\218\006R\011\006\005l\011\006\000\000\000\000\003l\000\193\000\000\000\227\000\000\000\000\001\242\000\000\t\248\000\000\000\000\000\000\n8\000\193\000\200\n\002\000\000\000\000\000\192\004\218\006R\003l\000\227\001\242\n\004\000\000\004\218\006R\003l\000\227\001\242\n \000\000\004\012\003\250\nP\000\193\nJ\006\150\000\t\nt\000\193\000\000\nv\000\193\000\000\n\214\000\000\n\\\006\130\nV\006\150\n\220\000\000\nZ\006\150\n\224\000\000\000\000\006\150\000\000\n\226\000\000"), (16, "\012E\012E\012E\012E\012E\012E\012E\012E\012E\012E\012E\007\237\012E\012E\012E\012E\012E\012E\012E\012E\012E\012E\028n\000&\015\026\007\237\012E\028\254\004\145\028r\0007\000;\000\n\015N\012E\001\"\0236\023>\012E\012E\024\030\012E\011\233\000*\012E\016V\029\n\0236\023>\012E\012E\012E\000N\007\202\020\150\020\190\020\206\020\246\021\006\021.\012E\000\150\011\142\012E\012E\006\157\004\145\004j\000\n\012E\012E\006\029\012E\006\242\012E\007\n\024\134\000\154\007\237\012E\016\202\012E\012E\012E\012E\012E\011\154\023F\015\202\012E\012E\012E\000\226\012E\012E\012E\016\206\007\170\012E\012E\012E\012E\012E\b\205\022\146\021\214\012E\012E\016f\b\230\004\t\011\233\012!\021\218\b\213\006\005\001\234\012E\012E\012E\r\026\001\246\012E\012E\012E\012E\000\230\012E\004\157\012E\nf\007\237\012E\nj\001\166\012E\012E\025\214\003F\nn\003N\001\"\003^\007\237\nr\025\218\017\158\012E\006&\003f\012E\000\006\000\"\000\n\012E\012E\012E\012E\021\230\006u\012E\006m\012E\011%\007\178\b\205\012E\012E\012E\011\134\012E\006\157\012E\012E\000\n\012E\b\213\012E\012E\003n\019z\012E\012E\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\012\238\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\021\210\006\005\012\017\006\242\006\165\015\030\015.\015>\003~\001\234\001R\004\138\006\165\r\026\001\246\011\201\006\165\006\165\b\238\006\165\011%\006\005\006\165\000\n\006E\006\005\004\157\006\165\015\026\006\165\001\130\028:\004\157\004\157\022V\004\234\006-\015N\006\165\000.\011\198\011\217\004\130\001V\004\157\004\157\000\n\006\165\006\165\027\198\001\"\004\189\006\165\006\165\003\138\001\"\003\146\006\165\003\162\006\165\006\165\006\165\006\165\006\165\021\198\003\170\001\"\006\165\006\165\006\165\004\157\006\165\006\165\006\165\004-\016\202\006\165\006\165\006\165\006\165\006\165\025\139\025\143\000\n\006\165\006\165\025\147\0041\000\n\006u\012\025\016\206\001z\006=\006=\003\178\006\165\006\165\001\142\000\n\006\165\006\165\006\165\006\165\0246\006\165\n\182\006\165\015\210\002\218\006\165\001\234\016f\006\165\006\165\r\026\001\246\007\237\011\201\004\150\001\234\016V\027\246\003\129\001\242\001\246\012\214\017n\006\165\003\194\015\026\007\237\006\165\006\165\006\165\006\165\r\n\003Q\006\165\015N\006\165\003Q\012\245\012\245\006\165\006\165\006\165\012\245\000\n\024:\006\165\006\165\022:\006\165\005*\006\165\006\165\000\n\004\129\006\165\006\165\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\015B\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\006\197\007\237\028z\006\197\006\197\017z\016V\0041\b\177\006\197\006\197\023\030\006\197\0041\0041\015\026\006\197\006\197\017\238\006\197\025z\006\197\006\197\015F\015N\0041\r:\006\197\015\026\006\197\006\197\016f\004J\006\197\006\197\006\197\015\026\015N\006\197\006\197\005\157\006\197\006\197\003&\r\014\015N\012\214\006\197\006\197\006\197\006\197\0041\006\197\027\254\007\237\004\241\001\"\006\197\025z\006\197\012)\006\197\006\197\006\197\006\197\016V\007\237\006\197\006\197\006\197\018\238\006\197\006\197\006\197\015\026\012\001\006\197\006\197\006\197\006\197\006\197\018\154\007\222\015N\007\230\006\197\007\246\006\197\018\158\000\n\001\234\006\149\018\162\007\254\r\026\001\246\006\197\006\197\003r\016f\006\197\006\197\006\197\006\197\006}\006\197\006\197\006\197\r\142\022F\006\197\018n\016f\006\197\006\197\006\197\003v\012\245\021\242\020F\016f\006\197\012)\b\006\006\r\006\197\020\026\000\n\006\197\012\245\012\245\026\235\006\197\006\197\012\245\006\197\006\213\023*\006\197\026\239\006\197\004\241\b\241\b\241\006\197\025\179\025\183\b\241\015\206\026\242\025\187\006\197\0065\006\197\028\234\006\197\006\197\b\022\016f\006\197\006\197\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\021V\001\014\025\194\001\022\nn\001\030\0012\001:\001>\nr\025\198\016\234\021Z\006\189\015\234\nv\012\245\012\245\004\r\006\189\006\189\012\245\021^\001F\021b\006\133\006\213\001\170\n\134\028\230\r\150\028b\021f\r\154\027\206\016V\020v\020\158\001N\011\201\015\n\021r\026\154\011\201\015\026\021v\t\n\024\138\003\182\001\182\021j\021z\025\250\015N\019N\027\210\n>\006\189\015b\r\162\026&\0262\027\214\015f\017\170\019\150\001\"\021~\001\222\012\t\001\226\004\205\001b\016^\015n\022J\001\"\000\n\r\182\001\234\015r\019\154\r\186\011\166\001\246\003\186\000\n\r\190\r\194\n\154\n\158\r\198\018\218\004-\021\130\004\026\015v\021\134\020\214\000\n\000\n\001\234\016\238\020~\020\166\r\026\001\246\n\250\r\202\000\n\021\138\015z\015~\r\206\015\130\021\142\000\n\021\146\015\150\021\150\021\154\004\169\021\158\004\030\015\162\r\214\0042\027\222\016f\021\162\rZ\023\174\021\166\019\n\rv\019\030\026F\003Q\000\n\015\194\006\141\003Q\019:\015\198\016\002\004\205\n\162\021\170\011\201\r\218\012\214\016\006\021\174\021\178\012\214\r\222\004\205\004\205\b\241\b\241\027\230\004\205\016\014\b\241\r\226\020\222\006\205\006\205\006]\006U\002&\006\205\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\018\222\001\014\025\194\001\022\nn\001\030\0012\001:\001>\nr\025\198\019^\024\030\004-\004N\nv\027\011\027\015\011\185\004-\004-\027\019\004V\001F\011\201\004Z\016\202\001\170\n\134\019\182\r\150\004-\027\198\r\154\027+\027/\004\134\023\006\001N\0273\015\n\019\014\016\206\019\"\011\193\027\246\024J\006e\0242\001\182\019>\026\134\015\026\011\209\007\n\006\021\017\018\004-\015b\r\162\026&\015N\001\234\015f\017\242\021\014\r\026\001\246\001\222\019\150\001\226\004\221\001b\016^\015n\b\197\012\214\020.\r\182\001\234\015r\021j\r\186\011\166\001\246\019\154\011\177\r\190\r\194\n\154\n\158\r\198\011\177\011\177\004\142\016b\015v\007\n\028J\000\n\004\166\011\241\019b\005)\011\177\001\234\024\"\n\250\r\202\r\026\001\246\015z\015~\r\206\015\130\0172\000\n\028R\015\150\005\r\019\186\004\169\005)\029&\015\162\r\214\004\174\b\"\004\157\b*\011\177\b:\021\022\004\178\019\202\012\214\016f\b\197\bB\015\194\006m\011\249\000\n\015\198\016\002\027\186\n\162\028\250\028\006\r\218\004\186\016\006\019\230\004\210\tB\r\222\tJ\004\221\tZ\027\254\004\214\004\222\016\014\024\018\r\226\tb\006\221\006\221\bJ\004\242\002&\006\221\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\006m\001\014\025\194\001\022\nn\001\030\0012\001:\001>\nr\025\198\005)\tj\026\178\006M\nv\005\006\003u\006\181\bZ\024z\029O\005\026\001F\006\181\006\181\005:\001\170\n\134\005^\r\150\005)\005j\r\154\028\"\000\n\006\181\005r\001N\005\198\015\n\000\n\019\206\005\210\0286\006\030\tz\006.\004\157\001\182\0066\028\142\015\026\028:\004\157\004\157\006\190\006\226\015J\r\162\019\234\015N\006\181\015f\006\234\007\"\004\157\004\157\001\222\007.\001\226\004\249\001b\015j\015n\007:\007F\007R\r\182\001\234\015r\007^\r\186\011\166\001\246\007r\007\130\r\190\r\194\n\154\n\158\r\198\004\157\007\146\007\154\012\253\015v\007\191\b\n\b\014\bN\bR\b\178\b\182\b\198\004)\b\214\n\250\r\202\t\002\t\018\015z\015~\r\206\015\130\t&\000\n\tn\015\150\016V\tr\004\169\t\178\t\182\015\162\r\214\n\022\t\134\015\026\t\142\n\026\t\158\n.\nF\005%\nZ\016f\015N\t\166\015\194\004)\nz\n\130\015\198\016\002\004\249\n\162\004\241\n\138\r\218\005\t\016\006\n\146\005%\n\150\r\222\004\249\004\249\n\206\n\218\n\226\004\249\016\014\011&\r\226\011F\b\249\b\249\t\174\011R\002&\b\249\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\011\150\001\014\011\178\001\022\nn\001\030\0012\001:\001>\nr\011\190\011\214\011\226\012r\012\134\nv\012\154\012\190\012\202\t\190\012\210\012\230\012\242\001F\012\250\004)\012\254\001\170\n\134\016f\r\150\004)\004)\r\154\r\006\r\022\r&\r.\001N\007\245\015\n\r2\005%\004)\rB\rJ\rb\rj\r~\001\182\004\241\r\134\015\026\007\245\r\146\r\170\r\178\014\006\015J\r\162\004)\015N\005%\015f\014\018\014Z\014\218\015\002\001\222\004)\001\226\027\254\001b\015j\015n\015\022\015\"\015*\r\182\001\234\015r\0152\r\186\011\166\001\246\015:\015\134\r\190\r\194\n\154\n\158\r\198\015\142\015\158\015\166\015\174\015v\015\182\015\190\015\250\016\n\016\018\016\030\016\"\016*\016.\007\245\n\250\r\202\0166\016>\015z\015~\r\206\015\130\016N\000\n\016r\015\150\nf\016\182\016\190\nj\016\194\015\162\r\214\025\214\016\210\nn\016\218\016\222\016\230\016\246\nr\025\218\016\254\016f\017\006\017\n\015\194\017\026\017\"\017:\015\198\016\002\017B\n\162\017\146\017\218\r\218\017\230\016\006\018Z\018f\018\134\r\222\018\178\018\194\018\202\007\245\018\230\018\242\016\014\018\250\r\226\018\254\019\006\016\202\019\022\019*\002&\007\245\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\016\206\001\014\019F\001\022\nn\001\030\0012\001:\001>\nr\019j\019\130\019\138\019\142\019\158\nv\019\166\019\170\019\178\019\194\001\234\019\214\019\242\001F\r\026\001\246\020\006\001\170\n\134\020\022\r\150\020&\020>\r\154\020N\020Z\020\139\020\179\001N\020\203\015\n\020\235\021\003\021#\021;\021R\021n\021\222\022\011\001\182\022b\022w\015\026\022\159\022\171\022\187\022\195\000\n\015J\r\162\022\222\015N\004\189\015f\022\231\022\239\022\247\023\018\001\222\023:\001\226\023B\001b\015j\015n\023R\023o\023\127\r\182\001\234\015r\023\135\r\186\011\166\001\246\023\147\023\158\r\190\r\194\n\154\n\158\r\198\023\195\023\207\023\219\012\253\015v\023\238\023\247\023\255\024*\024V\024\146\024\179\024\187\024\199\024\215\n\250\r\202\024\223\024\235\015z\015~\r\206\015\130\024\246\000\n\025\011\015\150\025\019\025\026\025'\0253\025;\015\162\r\214\025F\025O\025W\025c\025~\026\006\026.\011\225\011\225\026>\016f\026r\026z\015\194\026\158\026\194\026\198\015\198\016\002\026\206\n\162\026\247\027\190\r\218\027\202\016\006\027\218\027\226\027\234\r\222\028\023\028\031\028&\0283\028>\028N\016\014\028\131\r\226\028\146\012\253\012\253\028\159\028\195\002&\012\253\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\028\223\001\014\025\194\001\022\nn\001\030\0012\001:\001>\nr\025\198\028\238\028\246\029\002\029\014\nv\029\027\029\"\029*\0293\029:\029C\029W\001F\000\000\000\000\000\000\001\170\n\134\000\000\r\150\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\015\n\000\000\000\000\011\225\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\011\225\000\000\000\000\000\000\015b\r\162\011\225\011\225\000\000\015f\027B\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\016^\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\022\000\000\r\190\r\194\n\154\n\158\r\198\011\225\000\000\000\000\000\000\015v\011\225\011\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\004\169\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\n\162\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\b\221\b\221\000\000\000\000\002&\b\221\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\000\000\001\014\000\000\001\022\nn\001\030\0012\001:\001>\nr\000\000\000\000\000\000\000\000\000\000\nv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\170\n\134\000\000\r\150\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\015\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015b\r\162\000\000\000\000\000\000\015f\016z\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\016^\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\n\154\n\158\r\198\000\000\000\000\000\000\012\217\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\n\162\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\012\217\012\217\000\000\000\000\002&\012\217\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\000\000\001\014\000\000\001\022\nn\001\030\0012\001:\001>\nr\000\000\000\000\000\000\000\000\000\000\nv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\170\n\134\000\000\r\150\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\015\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015b\r\162\000\000\000\000\000\000\015f\026\n\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\016^\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\n\154\n\158\r\198\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\n\162\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\r%\r%\000\000\000\000\002&\r%\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\000\000\001\014\000\000\001\022\nn\001\030\0012\001:\001>\nr\000\000\000\000\000\000\000\000\000\000\nv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\170\n\134\000\000\r\150\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\015\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015b\r\162\000\000\000\000\000\000\015f\026\n\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\016^\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\n\154\n\158\r\198\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\n\162\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\r!\r!\000\000\000\000\002&\r!\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\000\000\001\014\000\000\001\022\nn\001\030\0012\001:\001>\nr\000\000\000\000\000\000\000\000\000\000\nv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\170\n\134\000\000\r\150\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\015\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015b\r\162\000\000\000\000\000\000\015f\018&\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\016^\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\n\154\n\158\r\198\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\n\162\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\000R\000V\000f\000\170\002&\000\174\nf\000\178\000\246\nj\000\254\000\000\001\014\000\000\001\022\nn\001\030\0012\001:\001>\nr\000\000\000\000\000\000\003:\003B\000\170\000\000\000\174\000\000\003\134\003\202\000\000\003\210\001F\003\226\000\000\003\234\001\170\003\242\003\254\r\150\004\006\000\000\r\154\000\000\000\000\000\000\000\000\001N\000\000\018\166\000\000\000\000\000\000\000\000\000\000\004\014\000\000\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\182\r\162\000\000\004\022\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\000\000\000\000\000\000\000\000\000\000\r\182\001\234\000\000\000\000\r\186\001\242\001\246\000\000\000\000\r\190\r\194\n\154\018\186\r\198\000\000\000\000\000\000\004&\000\000\000\000\007\234\005\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\005\253\000\000\005\253\000\000\r\206\000\000\005\253\000\n\b.\005\253\bn\005\253\005\253\005\253\005\253\005\253\r\214\000\000\000\000\000\000\005\253\005\253\005\253\005\253\005\253\n\169\n\169\000\000\005\253\n\169\000\n\005\253\005\253\005\253\000\000\005\253\000\000\n\162\005\253\000\000\r\218\005\253\018\190\005\253\000\000\005\253\r\222\005\253\000\000\005\253\005\253\005\253\005\253\018\198\005\253\r\226\005\253\005\253\000Z\000\000\005\253\002&\005\253\b\206\000\000\n\169\000\000\005\253\000Z\000\000\005\253\005\253\005\253\005\253\t\030\000\000\005\253\000Z\005\253\000Z\000\000\005\253\005\253\005\253\005\253\000\000\000\000\005\253\000\000\000\000\005\253\000\000\n\169\000\000\005\253\005\253\000\000\005\253\000\000\000\000\005\253\000\000\000\000\005\253\000\000\005\253\005\253\005\253\005\253\005\253\005\253\000\000\005\253\000\000\000\000\005\253\005\253\005\253\000\000\005\253\005\253\005\253\005\253\000\000\005\253\005\253\005\253\005\253\005\253\005\253\005\253\005\253\005\253\005\253\000\000\000\000\000\000\005\253\005\253\000\000\005\253\005\253\005\253\005\253\000\000\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\005\253\n\169\000\000\005\253\000\000\005\253\000\000\000\000\005\253\005\253\005\253\005\253\005\253\000\000\000\000\005\253\005\253\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\005\253\000\000\000\000\000\000\005\253\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\170\000\000\000\000\001\174\000\000\000\000\001\178\000\000\000\000\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\001\210\001\206\000\000\001\214\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\001b\000\000\011\250\000\000\000\000\000\000\001\230\001\234\000\000\000\000\001\238\001\242\001\246\000\000\002J\001\250\001\254\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\012\002\012*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\012\n\002\n\000\000\000\000\000\n\000\000\012R\012Z\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\0122\000\000\000\000\012\018\000\000\012\"\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\026\000\000\000\000\000\000\000\000\000\000\002\030\012:\000\000\004}\000\000\000\000\000\000\000\000\000\000\002\"\000\000\000R\007\210\007\218\000\170\002&\000\174\000\000\b\030\bb\000\000\bj\021V\bz\000\000\b\130\000\000\b\138\b\150\001:\b\158\000\000\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\012B\000\000\000\000\021^\b\166\021b\000\000\012\026\000\000\000\000\000\000\000\000\000\000\021f\000\000\000\000\000\000\000\000\000\000\024\242\000\000\005q\021r\000\000\000\000\000\000\021v\000\000\000\000\000\000\000\000\000\000\021z\000\000\000\000\000\000\012b\012J\000\000\b\190\000\000\000\000\000\000\000\000\022\250\000\000\000\000\000\000\021~\024\002\000\000\000\000\000\000\b\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\130\000\000\nv\021\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\170\n\134\021\138\r\150\000\000\000\000\r\154\021\142\000\n\021\146\000\000\021\150\021\154\015\n\021\158\000\000\000\000\000\000\000\000\000\000\000\000\021\162\001\182\000\000\021\166\000\000\000\000\000\000\000\000\000\000\000\000\015\146\r\162\000\000\000\000\000\000\015f\000\000\000\000\021\170\000\000\001\222\000\000\001\226\021\174\021\178\000\000\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\000\000\000\000\r\198\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\nv\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\170\n\134\000\000\r\150\015\194\000\000\r\154\000\000\015\198\016\002\000\000\000\000\000\000\015\n\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\001\182\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\r\158\r\162\000\000\000\000\002&\015f\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\000\000\000\000\015n\000\000\000\000\000\000\r\182\001\234\015r\000\000\r\186\011\166\001\246\000\000\000\000\r\190\r\194\000\000\000\000\r\198\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\250\r\202\000\000\000\000\015z\015~\r\206\015\130\000\000\000\n\000\000\015\150\000\000\000\000\000\000\000\000\000\000\015\162\r\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\194\000\000\000\000\000\000\015\198\016\002\000\000\000\000\000\000\000\000\r\218\000\000\016\006\000\000\000\000\000\000\r\222\000\000\000\000\000\000\000\000\000\000\000\000\016\014\000\000\r\226\000\000\001M\001M\001M\001M\002&\001M\000\000\001M\001M\000\000\001M\000\000\001M\000\000\001M\000\000\001M\001M\001M\001M\000\000\000\000\014-\000\000\021F\014-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\001M\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\014-\014-\000\000\000\000\001M\014-\000\000\001M\002>\014-\000\000\001M\000\000\000\000\021J\014-\000\000\001M\014-\014-\000\000\014-\014-\000\000\001M\002F\000\000\014-\0052\001M\000\000\014-\000\000\000\000\014-\000\000\014-\014-\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014-\001M\014-\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014-\000\000\000\000\000\000\001M\000\000\000\000\005>\000\000\001M\000\000\001M\000\000\000\000\001M\000\000\021N\000\000\000\000\000\000\000\000\001M\000\000\001M\000\000\000\000\001M\014-\014-\000\000\014-\014-\005B\000\000\014-\000\000\000\000\000\000\000\000\000\000\000\000\001M\001M\005J\000\000\000\000\001M\001M\014-\000\000\000\000\014-\014-\014-\014-\005\t\000\000\022\014\005\t\014-\014-\014-\000\000\014-\014-\014-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\005\t\000\000\000\000\000\000\005\t\000\000\000\000\005\t\005\t\000\000\000\000\000\000\000\000\000\000\005\t\000\000\000\000\005\t\005\t\000\000\005\t\005\t\000\000\000\000\005\t\000\000\005\t\005\t\000\000\000\000\005\t\000\000\000\000\005\t\000\000\005\t\005\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\000\000\005\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\000R\000V\000f\000\170\000\000\000\174\005\t\000\178\000\246\000\n\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\005\t\005\t\000\000\005\t\005%\005\t\000\000\005\t\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\005\r\000\000\000\000\005\r\005\t\000\000\001N\005\t\000\000\005\t\000\000\000\000\000\000\000\000\000\000\005\t\005\t\005\t\000\000\005\t\005\t\005\t\000\000\005\r\005\r\000\000\001^\000\000\005\r\000\000\000\000\005\r\005\r\000\000\000\000\000\000\000\000\000\000\005\r\000\000\001b\005\r\005\r\000\000\005\r\005\r\000\000\000\000\005\r\000\000\005\r\005\r\000\000\000\000\005\r\000\000\000\000\005\r\000\000\005\r\005\r\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\005\r\000\000\005\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\r\001F\000\000\000R\007\210\007\218\000\170\005\r\000\174\000\000\b\030\bb\000\000\bj\000\000\bz\001N\b\130\000\000\b\138\b\150\001:\b\158\000\000\000\000\000\000\000\000\005\r\005\r\000\000\005\r\005)\005\r\000\000\005\r\000\000\001^\b\166\000\000\000\000\000\000\000\000\000\000\005\r\000\000\000\000\000\000\000\000\005\r\000\000\001b\005\r\b\174\005\r\004^\004b\000\000\000\000\000\000\005\r\005\r\005\r\000\000\005\r\005\r\005\r\n\165\n\165\n\165\n\165\000\000\n\165\b\190\n\165\n\165\000\000\n\165\000\000\n\165\000\000\n\165\000\000\n\165\n\165\n\165\n\165\b\202\000\000\014\129\000\000\000\000\014\129\000\000\000\000\000\n\000\000\000\000\000\000\000\000\n\165\n\165\n\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\165\000\000\014\129\014\129\000\000\004n\n\165\014\129\000\000\022\030\r\246\014\129\000\000\022&\000\000\000\000\000\000\014\129\000\000\n\165\014\129\014\129\000\000\014\129\014\129\000\000\n\165\r\254\000\000\014\129\014\n\n\165\000\000\014\129\000\000\000\000\014\129\000\000\014\129\014\129\n\165\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\014\129\n\165\014\129\000\000\n\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\129\001F\000\000\000\000\n\165\000\000\000\000\014\022\000\000\n\165\000\000\n\165\000\000\000\000\n\165\000\000\001N\000\000\000\000\000\000\000\000\n\165\000\000\n\165\000\000\000\000\n\165\014\129\014\129\000\000\014\129\000\000\014\026\000\000\014\129\000\000\001^\000\000\000\000\000\000\000\000\n\165\n\165\014\"\000\000\000\000\022z\n\165\000\000\000\000\001b\014\129\000\000\014\129\004^\004b\000\000\000\000\000\000\014\129\014\129\014\129\000\000\014\129\014\129\014\129\n\149\n\149\n\149\n\149\000\000\n\149\000\000\n\149\n\149\000\000\n\149\000\000\n\149\000\000\n\149\000\000\n\149\n\149\n\149\n\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\149\n\149\n\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\149\000\000\000\000\000\000\000\000\004f\n\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\149\n\153\n\153\n\153\n\153\000\000\n\153\n\149\n\153\n\153\000\000\n\153\n\149\n\153\000\000\n\153\000\000\n\153\n\153\n\153\n\153\n\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\153\n\153\n\153\000\000\000\000\000\000\000\000\000\000\000\000\n\149\n\153\000\000\n\149\000\000\000\000\000\000\n\153\000\000\000\000\022~\000\000\000\000\000\000\000\000\000\000\n\149\000\000\000\000\000\000\n\153\n\149\000\000\n\149\000\000\000\000\n\149\n\153\000\000\000\000\000\000\000\000\n\153\n\149\000\000\n\149\000\000\000\000\n\149\000\000\000\000\n\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\001\153\n\149\n\149\000\000\000\000\000\000\022\"\n\149\000\000\000\000\000\000\n\153\000\000\000\000\n\153\000\000\000\000\000\000\000\000\000\000\001\153\001\153\000\000\000\000\000\000\001\153\000\000\n\153\000\000\001\153\000\000\000\000\n\153\000\000\n\153\001\153\000\000\n\153\001\153\001\153\000\000\001\153\001\153\000\000\n\153\000\000\n\153\001\153\000\000\n\153\000\000\001\153\000\000\000\000\001\153\000\000\001\153\001\153\000\000\000\000\000\000\000\000\000\000\000\000\n\153\n\153\000\000\000\000\000\000\000\000\n\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\000R\007\210\007\218\000\170\000\000\000\174\000\000\b\030\bb\000\000\bj\000\000\bz\000\000\b\130\000\000\b\138\b\150\001:\b\158\000\000\001\153\002Z\000\000\001\153\001\153\000\000\000\000\001\153\000\000\000\000\000\000\000\000\022\134\b\166\022\162\000\000\000\000\000\000\000\000\000\000\000\000\001\153\022\174\000\000\001\153\001\153\001\153\001\153\b\174\000\000\000\000\000\000\003\n\001\153\001\153\000\000\001\153\001\153\001\153\000\000\000\000\022\198\000\000\000\000\002z\000\000\000\000\002\210\b\190\000\000\000\000\000\000\000\000\022\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\202\000\000\000\000\000\000\000\000\002\130\002\170\000\000\000\000\000\000\002!\000\000\000\000\000\000\002!\000\000\000\000\000\000\000\000\000\000\002\138\000\000\023\026\002!\002!\023r\002\242\002\250\000\000\000\000\000\000\000\000\002!\000\000\000\000\000\000\002\178\000\000\023\138\002\146\000\000\002\162\002!\023\150\000\000\b\173\000\000\000\000\023\198\000\000\000\000\000\000\t6\t>\000\170\023\210\000\174\023\222\t\130\t\198\024\190\t\206\000\000\t\222\002\186\t\230\002!\t\238\t\250\000\000\n\002\000\000\000\000\000\000\000\000\024\202\024\226\002!\000\000\000\000\000\000\024\238\000\000\000\000\000\000\n\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\018\000\000\000\000\000\000\002\194\000\000\000\000\002!\002!\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\129\000\000\002!\000\000\000\000\002!\002!\002!\002!\000\000\000\000\n\"\000\000\000\000\002!\002!\000\000\003\002\002\202\002!\002\130\002\170\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000\000\002\138\000\000\000\000\000\129\000\129\000\000\000\129\000\129\000\000\000\000\000\000\000i\000\129\000\000\000i\000\000\002\178\000\000\000\000\002\146\000\000\002\162\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000i\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\002\186\000\000\000\129\000\000\000\000\002\138\000\000\000\000\000i\000i\000\000\000i\000i\000\129\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\002\146\000\000\002\162\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\194\000\000\000\000\000\129\000\129\000\000\000\000\002\154\000\000\000i\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000i\000\000\000\129\000\129\000\129\000\129\000\000\000\000\000\000\000\000\000\000\000\129\000\129\000\000\000\129\002\202\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000\000\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000\000\000\000\000\000\000i\000i\000\000\000i\000i\000i\000]\000]\000\000\000\000\000\000\000]\000\000\000\000\000\000\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000\000\000a\000]\000\000\000a\000\000\000]\000\000\000\000\002\146\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000a\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000]\000\000\000]\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000a\000a\000]\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\002\146\000\000\000a\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000\000\002\154\000\000\000a\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000a\000\000\000]\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000]\000]\000\000\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000\000\000a\000\000\000\000\000a\000a\000a\000a\000\000\000\000\000\000\000\000\000\000\000a\000a\000\000\000a\000a\000a\000e\000e\000\000\000\000\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\000\000\000\002\138\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000\000\000\000\000u\000e\000\000\000u\000\000\000e\000\000\000\000\002\146\000\000\002\162\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\130\002\170\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000e\000\000\000e\000\000\000\000\002\138\000\000\000\000\000u\000u\000\000\000u\000u\000e\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000\000\000\000\002\146\000\000\002\162\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000e\000\000\000\000\002\154\000\000\002\186\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000u\000\000\000e\000e\000e\000e\000\000\000\000\000\000\000\000\000\000\000e\000e\000\000\000e\000e\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000\000\000\000\000u\000u\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000\000\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\000u\000u\000\000\000u\000u\000u\002\130\002\170\000\000\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\002\138\000\000\000\000\000m\000m\000\000\000m\000m\000\000\000\000\000\000\000q\000m\000\000\000q\000\000\000m\000\000\000\000\002\146\000\000\002\162\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\130\002\170\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000m\000\000\000m\000\000\000\000\002\138\000\000\000\000\000q\000q\000\000\000q\000q\000m\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\000\000\002\146\000\000\002\162\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\000\000\002\154\000\000\002\186\000\000\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000q\000\000\000m\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000m\000m\000\000\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\000\000\000y\000\000\000q\000\000\000\000\000q\000q\000q\000q\000\000\000\000\000\000\000\000\000\000\000q\000q\000\000\000q\000q\000q\002\130\002\170\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\002\138\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\000\002z\000y\000\000\000\137\000\000\002\178\000\000\000\000\002\146\000\000\002\162\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\130\002\170\000\000\000\000\000\000\000\137\000\000\000\000\000\000\000\137\002\186\000\000\000y\000\000\000\000\002\138\000\000\000\000\000\137\000\137\000\000\000\137\002\250\000y\000\000\000\000\000\000\000\137\000\000\000\000\000\000\002\178\000\000\000\000\002\146\000\000\002\162\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\194\000\000\000\000\000y\000y\000\000\000\000\002\154\000\000\002\186\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\137\000\000\000y\000y\000y\000y\000\000\000\000\000\000\000\000\000\000\000y\000y\000\000\000y\000y\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\194\000\000\000\000\000\137\000\137\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002z\000\000\000\000\000}\000\000\000\137\000\000\000\000\000\137\000\137\000\137\000\137\000\000\000\000\000\000\000\000\000\000\000\137\000\137\000\000\003\002\002\202\000\137\002\130\002\170\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\000\000\000\000\000\000\000\000\000\000\002\138\000\000\000\000\000}\000}\000\000\000}\000}\000\000\000\000\000\000\002z\000}\000\000\000\133\000\000\002\178\000\000\000\000\002\146\000\000\002\162\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\130\002\170\000\000\000\000\000\000\000\133\000\000\000\000\000\000\000\133\002\186\000\000\000}\000\000\000\000\002\138\000\000\000\000\000\133\000\133\000\000\000\133\002\250\000}\000\000\000\000\000\000\000\133\000\000\000\000\000\000\002\178\000\000\000\000\002\146\000\000\002\162\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\194\000\000\000\000\000}\000}\000\000\000\000\002\154\000\000\002\186\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\133\000\000\000}\000}\000}\000}\000\000\000\000\000\000\000\000\000\000\000}\000}\000\000\000}\002\202\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\174\002\194\000\000\000\000\000\133\000\133\000\000\000\000\002\154\004a\000\000\000\000\004a\000\000\000\000\004a\000\000\000\000\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000\000\000\000\004a\000\000\000\000\000\133\000\133\000\000\000\133\002\202\000\133\004a\004a\000\000\000\000\004a\004a\004a\000\000\000\000\000\000\004a\000\000\004a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004a\004a\000\000\000\000\004a\004a\004a\000\000\000\000\004a\004a\000\000\000\000\004a\000\000\000\000\000\000\000\000\001\170\000\000\000\000\n\190\000\000\000\000\n\194\000\000\000\000\000\000\000\000\004a\004a\000\000\000\000\000\000\000\000\004a\000\000\000\000\004a\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\004a\000\000\n\198\011\030\000\000\000\000\011\134\011\158\011\162\004a\000\000\004a\001\222\004a\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\004a\000\000\n\234\011\166\001\246\000\000\004a\n\238\n\242\000\000\000\000\n\246\004a\000\000\000\000\004a\001\170\000\000\000\000\n\190\000\000\004a\n\194\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\000\000\000\n\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\011\n\000\000\n\198\011\030\000\000\000\000\011\134\011\158\011\162\006-\000\000\011\170\001\222\011\198\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\011\014\000\000\n\234\011\166\001\246\000\000\011\018\n\238\n\242\000\000\000\000\n\246\012\194\000\000\000\000\011\022\001\170\000\000\000\000\n\190\000\000\002&\n\194\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\000\000\000\n\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\011\n\000\000\n\198\011\030\000\000\000\000\011\134\011\158\011\162\006-\000\000\011\170\001\222\011\198\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\011\014\000\000\n\234\011\166\001\246\000\000\011\018\n\238\n\242\000\000\000\000\n\246\012\178\000\000\000\000\011\022\001\170\000\000\000\000\n\190\000\000\002&\n\194\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\000\000\000\n\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\011\n\000\000\n\198\011\030\000\000\000\000\011\134\011\158\012~\006-\000\000\011\170\001\222\011\198\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\011\014\000\000\n\234\011\166\001\246\000\000\011\018\n\238\n\242\000\000\000\000\n\246\005\137\000\000\000\000\011\022\000\000\000\000\000\000\001\153\000\000\002&\001\153\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\001\153\001\153\000\000\011\n\000\000\001\153\000\000\000\000\000\000\001\153\000\000\000\000\006-\000\000\011\170\001\153\011\198\000\000\000\000\000\000\000\000\001\153\001\153\000\000\000\000\000\000\000\000\011\014\000\000\000\000\000\000\001\153\001\170\011\018\001\153\n\190\001\153\001\153\n\194\001\205\000\000\000\000\011\022\000\000\000\000\000\000\000\000\000\000\002&\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\000\000\000\000\001\153\000\000\001\153\000\000\n\198\011\030\000\000\000\000\011\134\011\158\012\142\000\000\000\000\001\153\001\222\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\000\000\000\000\n\234\011\166\001\246\000\000\000\000\n\238\n\242\000\000\000\000\n\246\000\000\000\000\001\153\002R\000\000\001\153\001\153\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\001\153\000\n\000\000\001\153\001\153\000\000\001\153\000\000\000\000\000\000\011\n\003\022\001\153\001\153\000\000\001\153\001\153\001\153\000\000\006-\000\000\000\000\000\000\011\198\001\177\000\000\000\000\001\177\000\000\000\000\000\000\000\000\000\000\000\000\011\014\000\000\000\000\000\000\000\000\000\000\011\018\000\000\000\000\000\000\000\000\000\000\001\221\001\177\001\177\011\022\000\000\000\000\001\177\000\000\000\000\002&\001\177\000\000\000\000\000\000\000\000\000\000\001\177\000\000\000\000\001\177\001\177\000\000\001\177\001\177\000\000\000\000\000\000\000\000\001\177\000\000\000\000\000\000\001\177\000\000\000\000\001\177\000\000\001\177\001\177\000\000\000\000\003A\000\000\000j\003A\000r\000\000\000\130\003A\000\000\003A\000\000\000\000\000\000\000\138\003A\003A\000\000\000\000\000\000\001\177\000\000\001\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\003A\000\000\000\000\000\000\003A\000\000\000\000\000\000\000\000\000\000\nf\000\000\000\000\nj\000\000\001\177\014F\025\214\001\177\nn\003A\000\000\001\177\000\000\nr\025\218\000\000\000\000\000\000\000\000\000\000\000\000\003A\000\162\000\000\000\000\000\000\000\000\000\000\001\177\003A\001\177\000\000\000\000\003A\003A\000\000\014N\001\177\001\177\000\000\001\177\001\177\001\177\000\000\000\000\003A\003=\016\202\000\182\003=\000\190\000\000\000\206\003=\000\000\003=\003A\000\000\000\000\000\214\003=\003=\000\000\016\206\000\000\000\000\003A\000\000\000\000\000\000\000\000\003A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\000\000\000\000\r\026\001\246\000\222\003=\000\000\000\000\000\000\003=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003A\000\189\000\000\003A\003A\000\000\003=\003A\000\000\000\000\000\000\000\000\003A\003A\000\000\000\000\000\n\003A\003=\000\238\000\000\004\189\000\000\000\000\012\002\012*\003=\000\000\000\000\000\000\003=\003=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\n\000\000\000\000\003=\000\000\000\000\000\189\000\189\000\000\000\000\000\000\000\000\000\000\000\000\003=\000\000\0122\000\000\000\000\012\018\000\000\012\"\000\000\000\000\003=\000\000\000\000\007\181\007\181\003=\000\000\000\000\007\181\000R\000V\000f\000\170\007\206\000\174\nf\000\178\000\246\nj\000\254\012:\001\014\025\194\001\022\nn\001\030\0012\001:\001>\nr\025\198\000\000\000\000\000\000\001\170\000\000\000\000\001\174\003=\000\000\001\178\003=\003=\001F\000\000\003=\000\000\000\000\000\000\000\000\003=\003=\000\000\000\000\000\000\003=\001\182\000\000\001N\001\186\012B\000\000\000\000\000\000\000\000\001\202\001\206\012\026\001\214\000\000\n\186\000\000\000\000\000\000\000\000\001\222\000\000\001\226\001^\000\000\000\000\000\189\000\000\000\000\001j\001\230\001\234\000\000\011\182\001\238\001\242\001\246\001b\000\000\001\250\001\254\000\189\012J\002\002\000\000\000\000\000\000\000\000\000\000\000\000\001n\000\000\000\000\000\000\n\154\n\158\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\000\000\002\n\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\004\169\000\000\002\022\b\189\000\000\014z\000\000\000\000\014\210\000\000\000\000\000\000\000\000\000\000\000\000\002\026\000\000\000\000\000\000\000\000\000\000\002\030\000\000\000\000\006%\n\162\b\189\000\000\014\130\014\170\002\"\000\000\000\000\0021\000\000\006%\002&\0021\000\000\000\000\006%\000\000\000\000\014\138\000\000\000\000\0021\0021\000\000\014\226\014\234\000\000\000\000\0015\000\000\0021\0015\000\000\000\000\014\178\000\000\000\000\014\146\000\000\014\162\0021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\130\014\170\000\000\000\000\000\000\0015\000\000\000\000\000\000\0015\000\000\014\186\000\000\0021\000\000\014\138\000\000\000\000\0015\0015\000\000\0015\0015\000\000\0021\000\000\000\000\0015\000\000\000\000\000\000\014\178\000\000\000\000\014\146\000\000\014\162\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\000\000\0021\000\000\000\000\000\000\014\154\014\186\000\000\0015\000\000\000\000\000\000\000\000\000\000\001\169\000\000\000\000\001\169\000\000\0015\000\000\000\000\0021\000\000\0021\000\000\000\000\000\000\000\000\000\000\000\000\0021\0021\000\000\014\242\014\202\0021\001\169\001\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\000\000\0015\000\000\000\000\001\169\014\154\000\000\000\000\001\169\000\000\001\169\001\169\000\000\000\000\001\029\000\000\000\000\001\029\000\000\000\000\001\169\000\000\0015\001\169\0015\001\169\000\000\000\000\000\000\000\000\000\000\0015\0015\000\000\0015\014\202\0015\001\029\001\029\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001\029\000\000\001\169\000\000\000\000\000\000\014\138\000\000\000\000\001\029\001\029\000\000\001\029\001\029\000\000\000\000\001\017\000\000\001\029\001\017\000\000\000\000\001\029\000\000\000\000\014\146\000\000\014\162\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\001\169\006\006\001\017\001\169\000\000\000\000\001\017\001\169\001\029\000\000\001\029\000\000\001\017\000\000\000\000\001\017\001\017\000\000\001\017\001\017\000\000\001\029\000\000\000\000\001\017\000\000\001\169\000\000\001\017\000\000\000\000\014\146\006\014\001\017\001\017\000\000\001\169\001\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\000\000\000\000\001\029\000\000\000\000\000\000\014\154\001\017\000\000\001\017\000\000\000\000\000\000\000\000\000\000\006^\000\000\000\000\006\182\000\000\001\017\000\000\000\000\001\029\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\001\029\001\029\000\000\001\029\001\029\001\029\006f\006\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\006n\014\154\000\000\000\000\002)\000\000\006\198\006\206\000\000\000\000\001\021\000\000\000\000\001\021\000\000\000\000\006\150\000\000\001\017\006v\001\017\006\134\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\001\017\001\017\001\017\001\021\001\021\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\006\158\000\000\000\000\000\000\001\021\000\000\000\000\001\021\001\021\000\000\001\021\001\021\000\000\000\000\001\025\000\000\001\021\001\025\000\000\000\000\001\021\000\000\000\000\014\146\000\000\001\021\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\006\166\000\000\001\025\002)\000\000\000\000\001\025\006~\001\021\000\000\001\021\000\000\014\138\000\000\000\000\001\025\001\025\000\000\001\025\001\025\000\000\001\021\000\000\000\000\001\025\000\000\002)\000\000\001\025\000\000\000\000\014\146\000\000\014\162\001\025\000\000\006\214\006\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\000\001\021\000\000\000\000\000\000\014\154\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\249\000\000\000\000\000\249\000\000\001\025\000\000\000\000\001\021\000\000\001\021\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\000\000\001\021\001\021\001\021\006f\006\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\000\000\001\025\000\000\000\000\006n\014\154\000\000\000\000\000\249\000\000\000\249\000\249\000\000\000\000\001)\000\000\000\000\001)\000\000\000\000\006\150\000\000\001\025\006v\001\025\006\134\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\025\014\130\014\170\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\006\158\000\000\000\000\000\000\014\138\000\000\000\000\001)\001)\000\000\001)\001)\000\000\000\000\001!\000\000\001)\001!\000\000\000\000\001)\000\000\000\000\014\146\000\000\014\162\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\130\014\170\000\000\006\166\000\000\001!\000\249\000\000\000\000\001!\006~\014\186\000\000\001)\000\000\014\138\000\000\000\000\001!\001!\000\000\001!\001!\000\000\001)\000\000\000\000\001!\000\000\000\249\000\000\001!\000\000\000\000\014\146\000\000\014\162\001!\000\000\000\249\006\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\000\000\001)\000\000\000\000\000\000\014\154\001!\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\225\000\000\001!\000\000\000\000\001)\000\000\001)\000\000\000\000\000\000\000\000\000\000\000\000\001)\001)\000\000\001)\001)\001)\000\225\000\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\000\001!\000\000\000\000\006n\014\154\000\000\000\000\000\225\000\000\000\225\000\225\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\000\225\000\000\001!\006v\001!\006\134\000\000\000\000\000\000\000\000\000\000\001!\001!\000\000\001!\001!\001!\014\130\014\170\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\225\000\000\000\000\000\000\014\138\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\001-\000\000\001%\001-\000\000\000\000\001%\000\000\000\000\014\146\000\000\014\162\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\130\014\170\000\000\000\225\000\000\001-\000\225\000\000\000\000\001-\006~\014\186\000\000\001%\000\000\014\138\000\000\000\000\001-\001-\000\000\001-\001-\000\000\001%\000\000\000\000\001-\000\000\000\225\000\000\014\178\000\000\000\000\014\146\000\000\014\162\001-\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\000\000\014\154\014\186\000\000\001-\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\213\000\000\001-\000\000\000\000\001%\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\001%\001%\000\000\001%\001%\001%\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\000\000\001-\000\000\000\000\000\213\014\154\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\000\014z\000\000\000\000\001=\000\000\000\000\000\213\000\000\001-\006v\001-\000\213\000\000\000\000\000\000\000\000\000\000\001-\001-\000\000\001-\001-\001-\014\130\014\170\000\000\000\000\000\000\001=\000\000\000\000\000\000\001=\000\000\000\213\000\000\000\000\000\000\014\138\000\000\000\000\001=\001=\000\000\001=\014\234\000\000\000\000\014z\000\000\001=\0011\000\000\000\000\014\178\000\000\000\000\014\146\000\000\014\162\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\130\014\170\000\000\000\213\000\000\0011\000\213\000\000\000\000\0011\006~\014\186\000\000\001=\000\000\014\138\000\000\000\000\0011\0011\000\000\0011\0011\000\000\001=\000\000\000\000\0011\000\000\000\213\000\000\014\178\000\000\000\000\014\146\000\000\014\162\0011\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\000\000\001=\000\000\000\000\000\000\014\154\014\186\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0011\000\000\000\000\001=\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\001=\001=\000\000\014\242\014\202\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\000\000\0011\000\000\000\000\000\000\014\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014z\000\000\000\000\0019\000\000\000\000\000\000\000\000\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\0011\0011\000\000\0011\014\202\0011\014\130\014\170\000\000\000\000\000\000\0019\000\000\000\000\000\000\0019\000\000\000\000\000\000\000\000\000\000\014\138\000\000\000\000\0019\0019\000\000\0019\014\234\000\000\000\000\000\000\000\000\0019\000\000\000\000\021V\014\178\000\000\000\000\014\146\000\000\014\162\0019\000\000\000\000\000\000\000\000\021Z\000\000\000\000\000\000\000\165\000\000\000\000\023\154\000\000\000\000\021^\000\000\021b\n\253\n\253\000\000\000\000\014\186\000\000\0019\021f\000\000\000\000\000\000\000\000\000\000\021j\000\165\000\165\021r\0019\000\000\000\000\021v\000\000\000\000\000\000\000\000\000\000\021z\000\000\000\000\012\n\000\000\000\000\000\000\000\000\000\000\000\165\000\165\025B\023J\000\000\n\253\000\000\021~\000\000\014\194\000\165\000\000\0019\012\018\000\000\012\"\014\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\253\0019\021\130\0019\000\000\021\134\000\165\021V\000\000\000\000\0019\0019\000\000\0019\014\202\0019\022\210\000\000\021\138\021Z\000\000\000\000\000\000\021\142\000\n\021\146\000\000\021\150\021\154\021^\021\158\021b\000\000\000\153\000\000\000\000\n\209\021\162\000\000\021f\021\166\000\000\000\000\000\000\000\000\021j\000\165\000\000\021r\000\000\000\000\000\000\021v\012\026\000\000\021\170\000\153\000\153\021z\000\000\021\174\021\178\n\253\000\000\000\000\000\000\000\000\000\165\000\000\023\230\000\000\000\153\n\209\000\000\021~\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\165\000\165\000\000\000\000\000\000\000\153\000\000\000\000\012\018\000\000\000\153\000\000\000\000\tN\005\253\000\000\000\000\n\209\000\000\021\130\000\000\000\000\021\134\t\146\005\253\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\021\138\005\253\000\000\005\253\000\000\021\142\000\n\021\146\000\000\021\150\021\154\005\253\021\158\005\253\000\000\000\000\t\210\005\253\000\000\021\162\005\253\005\253\021\166\000\000\005\253\000\000\000\000\005\253\000\000\005\253\005\253\000\000\000\000\000\000\005\253\000\000\000\000\021\170\000\153\005\253\005\253\005\253\021\174\021\178\n\209\012\026\005\253\000Z\000\000\005\253\000\000\005\253\n&\000\000\000\000\005\253\005\253\000Z\005\253\000\153\000\000\005\253\005\253\000\000\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\000\153\000\153\005\253\000\000\000\000\005\253\nR\000\000\000\000\005\253\005\253\000Z\005\253\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\005\253\005\253\000\000\005\253\005\253\000\000\005\253\000\000\000\000\005\253\005\253\005\253\000\000\005\253\005\253\000\000\005\253\000\000\000\000\005\253\000\000\000\000\000\000\005\253\000\000\000\000\005\253\001\170\000\000\000\000\001\174\005\253\005\253\001\178\000\000\000\000\005\253\005\253\005\253\005\253\000\000\005\253\005\253\015\014\005\253\000\000\005\253\005\253\000\000\001\182\000\000\005\253\001\186\000\000\005\253\000\000\000\000\000\000\001\202\001\206\000\000\001\214\000\000\000\000\000\000\000\000\000\000\000\000\001\222\005\253\001\226\000\000\000\000\000\000\005\253\005\253\000\000\000\000\001\230\001\234\000\000\000\000\001\238\001\242\001\246\000\000\000\000\001\250\001\254\000\000\001\170\002\002\000\000\001\174\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\189\000\000\002\006\000\000\000\000\000\000\001\182\002\n\000\000\001\186\000\n\000\000\000\000\000\000\000\000\001\202\001\206\000\000\001\214\002\018\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\000\000\002\022\000\000\000\000\000\000\000\000\001\230\001\234\000\000\000\000\001\238\001\242\001\246\000\000\002\026\001\250\001\254\000\000\001\170\002\002\002\030\001\174\000\000\b\189\001\178\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\000\000\018\170\002&\002\006\000\000\000\000\000\000\001\182\002\n\000\000\001\186\000\n\000\000\000\000\000\000\000\000\001\202\001\206\000\000\001\214\002\018\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\001\170\000\000\002\022\001\174\000\000\000\000\001\178\001\230\001\234\000\000\000\000\001\238\001\242\001\246\000\000\002\026\001\250\001\254\000\000\000\000\002\002\002\030\001\182\000\000\000\000\001\186\000\000\000\000\000\000\000\000\002\"\001\202\007J\000\000\001\214\000\000\002&\002\006\000\000\000\000\000\000\001\222\002\n\001\226\000\000\000\n\000\000\000\000\000\000\000\000\000\000\001\230\001\234\000\000\002\018\001\238\001\242\001\246\000\000\000\000\001\250\001\254\000\000\001\170\002\002\002\022\001\174\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\026\000\000\000\000\002\006\000\000\000\000\002\030\001\182\002\n\000\000\001\186\000\n\000\000\000\000\000\000\002\"\001\202\002\014\000\000\001\214\002\018\002&\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\000\000\002\022\000\000\000\000\000\000\000\000\001\230\001\234\000\000\006*\001\238\001\242\001\246\000\000\002\026\001\250\001\254\000\000\004Y\002\002\002\030\004Y\000\000\000\000\004Y\000\000\000\000\000\000\000\000\002\"\000\000\000\000\000\000\000\000\000\000\002&\002\006\000\000\000\000\000\000\004Y\002\n\000\000\004Y\000\n\000\000\000\000\000\000\000\000\004Y\004Y\000\000\004Y\002\018\000\000\000\000\000\000\000\000\000\000\004Y\000\000\004Y\000\000\000\000\002\022\000\000\000\000\000\000\000\000\004Y\004Y\000\000\000\000\004Y\004Y\004Y\000\000\002\026\004Y\004Y\000\000\021V\004Y\002\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\"\021Z\000\000\000\000\000\000\000\000\002&\004Y\000\000\000\000\000\000\021^\004Y\021b\000\000\004Y\000\000\000\000\000\000\000\000\000\000\021f\000\000\000\000\004Y\000\000\000\000\021j\000\000\000\000\021r\000\000\000\000\000\000\021v\000\000\000\000\000\000\000\000\000\000\021z\000\000\000\000\000\000\000\000\000\000\005\253\000\000\004Y\005\253\000v\022\206\000\000\005\253\004Y\005\253\021~\000\000\000\000\000\000\005\253\005\253\000\000\004Y\000\000\000\000\000\000\000\000\000\000\004Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\209\000\000\021\130\000\000\000\000\021\134\005\253\000\000\000\000\005\253\000\194\000\000\000\000\005\253\000\000\005\253\000\000\000\000\021\138\000\000\005\253\005\253\000\000\021\142\000\n\021\146\000\000\021\150\021\154\005\253\021\158\000\000\005\253\001f\000\000\005\253\001\002\021\162\000Z\005\253\021\166\005\253\000\000\000\000\000\000\000\000\005\253\005\253\000\000\005\253\005\253\000\000\000\000\005\253\005\253\021\170\000\000\000\000\000\000\000\000\021\174\021\178\n\209\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\004*\000\000\005\253\000\000\000\000\000Z\005\253\000\000\005\253\000\000\000\000\000\000\005\253\000\000\000\000\000\000\005\253\005\253\000\000\000\000\005\253\005\253\005\253\000\000\000\000\000\000\004\254\000\000\000\000\000\000\000\000\000Z\005\253\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\253\005\253\000\000\000\000\005\253\005\253\000\000\000\000\005\253\000\000\000\000\005\253\005\253\000\000\000\000\005\253\005\253\000\000\000\000\000\000\005\253\005\253\000\000\000\000\000\000\005\253\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\000\005\253\000\000\000\000\005\253\005\253\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\005\253\000\000\001\170\000\000\005\253\001\190\000\000\000\000\001\194\000\000\000\000\000\000\000\000\005\253\000\000\000\000\005\253\005\253\000\000\000\000\005\253\000\000\000\000\000\000\001\182\005\253\005\253\001\186\000\000\000\000\005\253\000\000\000\000\001\198\001\218\000\000\001\214\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\001\170\000\000\000\000\001\190\000\000\000\000\001\194\005v\001\234\000\000\000\000\005z\001\242\001\246\000\000\000\000\005~\005\130\000\000\000\000\005\134\000\000\001\182\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\001\198\0072\000\000\001\214\000\000\000\000\005\138\000\000\000\000\000\000\001\222\005\142\001\226\000\000\000\n\000\000\000\000\000\000\000\000\000\000\005v\001\234\000\000\005\150\005z\001\242\001\246\000\000\000\000\005~\005\130\005\253\000\000\005\134\005\253\003R\000\000\005\253\005\253\000\000\005\253\003\150\000\000\000\000\005\253\005\253\005\253\005\154\005\253\003\214\005\138\005\253\005\253\005\158\005\253\005\142\000\000\000\000\000\n\005\253\005\253\000\000\005\162\000\000\000\000\000\000\000\000\005\150\002&\000\000\000\000\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\005\253\000\000\005\253\000\000\000\000\000\000\005\253\000\000\000\000\000\000\005\253\000\000\005\154\000\000\005\253\000\000\005\253\000\000\005\158\000\000\007z\000\000\005\253\000\000\000\000\000Z\000\000\005\162\005\253\000\000\005\253\000Z\000\000\002&\005\253\000\000\005\253\000\000\000\000\000Z\005\253\005\253\005\253\000\000\000\157\000\000\005\253\005\253\000\000\000\000\005\253\000\000\005\253\000\000\005\253\005\253\000\000\000\000\005\253\000\000\000\000\000\000\000\000\005\253\000\000\000\000\005\253\000\157\000\157\005\253\000\000\000\000\000\000\005\253\000\000\000\000\000\000\005\253\005\253\005\253\000\000\000\000\000\157\000\000\005\253\000\000\000\000\005\253\000\157\000\157\000\000\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\000\012\018\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\253\000\000\000\000\005\253\005\253\000\000\005\253\005\253\000\000\005\253\005\253\000\000\005\253\005\253\005\253\000\157\000\000\005\253\005\253\005\253\000\000\005\253\001\170\005\253\000\000\001\190\005\253\005\253\001\194\000\000\000\000\005\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\001\198\005\146\000\157\001\214\000\000\000\000\000\000\000\000\000\000\012\026\001\222\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005v\001\234\000\000\000\157\005z\001\242\001\246\000\000\014e\005~\005\130\014e\000\000\005\134\000\000\000\000\000\000\000\000\000\157\000\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\138\014e\014e\000\000\000\000\005\142\000\000\000\000\000\n\005\182\000\000\000\000\000\000\000\000\000\000\000\000\014e\005\150\000\000\000\000\014e\000\000\014e\014e\000\000\000\000\005\190\000\000\000\000\005\202\000\000\000\000\014e\001\170\000\000\014e\n\190\014e\000\000\n\194\000\000\005\154\000\000\000\000\000\000\000\000\000\000\005\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\005\162\000\000\000\000\000\000\014e\000\000\002&\000\000\n\198\n\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\000\000\000\000\000\000\005\214\000\000\000\000\000\000\n\230\001\234\000\000\000\000\n\234\001\242\001\246\000\000\000\000\n\238\n\242\000\000\000\000\n\246\000\000\000\000\014e\014e\000\000\014e\000\000\005\218\000\000\014e\000\000\000\000\000\000\000\000\000\000\n\250\n\254\000\000\005\226\001\170\000\000\011\002\n\190\000\000\000\n\n\194\000\000\000\000\014e\000\000\000\000\000\000\000\000\011\n\014e\000\000\000\000\000\000\014e\014e\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\198\011\006\000\000\000\000\000\000\000\000\000\000\011\014\000\000\000\000\001\222\000\000\001\226\011\018\000\000\000\000\000\000\000\000\000\000\000\000\n\230\001\234\011\022\000\000\n\234\001\242\001\246\000\000\002&\n\238\n\242\000\000\000\000\n\246\000\000\000\000\000\000\000\000\001\170\000\000\000\000\n\190\000\000\000\000\n\194\000\000\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\000\000\011\002\000\000\000\000\000\n\000\000\001\182\000\000\000\000\000\000\000\000\000\000\000\000\011\n\000\000\n\198\011\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\001\170\000\000\000\000\r\150\000\000\000\000\r\154\n\230\001\234\011\014\000\000\n\234\001\242\001\246\000\000\011\018\n\238\n\242\000\000\000\000\n\246\000\000\001\182\000\000\011\022\000\000\000\000\000\000\000\000\000\000\002&\r\158\014\250\000\000\000\000\000\000\n\250\n\254\000\000\000\000\000\000\001\222\011\002\001\226\000\000\000\n\000\000\000\000\000\000\000\000\000\000\r\182\001\234\000\000\011\n\r\186\001\242\001\246\000\000\000\000\r\190\r\194\000\000\000\000\r\198\000\000\000\000\000\000\000\000\001\170\000\000\000\000\r\150\000\000\000\000\r\154\000\000\000\000\011\014\000\000\n\250\r\202\000\000\000\000\011\018\000\000\r\206\000\000\000\000\000\n\000\000\001\182\000\000\011\022\000\000\000\000\000\000\000\000\r\214\002&\r\158\r\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\222\000\000\001\226\001\170\000\000\000\000\r\150\000\000\000\000\r\154\r\182\001\234\r\218\000\000\r\186\001\242\001\246\000\000\r\222\r\190\r\194\000\000\000\000\r\198\000\000\001\182\000\000\r\226\000\000\000\000\000\000\000\000\000\000\002&\r\158\r\210\000\000\000\000\000\000\n\250\r\202\000\000\000\000\000\000\001\222\r\206\001\226\000\000\000\n\000\000\000\000\000\000\000\000\b\181\r\182\001\234\000\000\r\214\r\186\001\242\001\246\000\000\000\000\r\190\r\194\b\181\000\000\r\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\181\000\000\b\181\000\000\000\000\000\000\r\218\000\000\n\250\r\202\b\181\000\000\r\222\000\000\r\206\000\000\b\181\000\n\000\000\b\181\000\000\r\226\023\226\b\181\022*\000\000\r\214\002&\000\000\b\181\000\000\000\000\000\000\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021^\b\181\021b\000\000\000\000\000\000\r\218\000\000\000\000\000\000\021f\000\000\r\222\000\000\000\000\000\000\021j\000\000\000\000\021r\000\000\r\226\000\000\021v\000\000\000\000\000\000\002&\b\181\021z\000\000\b\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\181\021~\024\002\000\000\000\000\b\181\b\181\b\181\000\000\b\181\b\181\000\000\b\181\000\000\000\000\000\000\000\000\000\000\000\000\b\181\000\000\000\000\b\181\b\029\000\000\000\000\000\000\000\000\021\130\000\000\000\000\021\134\000\000\000\000\000\000\b\029\000\000\b\181\000\000\000\000\000\000\000\000\b\181\b\181\021\138\b\029\000\000\b\029\000\000\021\142\000\n\021\146\000\000\021\150\021\154\b\029\021\158\000\000\000\000\000\000\000\000\b\029\000\000\021\162\b\029\000\000\021\166\000\000\b\029\000\000\022\178\000\000\000\000\000\000\b\029\000\000\000\000\000\000\000\000\000\000\000\000\021\170\021Z\000\000\000\000\000\000\021\174\021\178\000\000\000\000\b\029\024\002\021^\000\000\021b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021f\000\000\000\000\000\000\000\000\000\000\021j\000\000\000\000\021r\000\000\000\000\000\000\021v\000\000\b\029\000\000\000\000\b\029\021z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\029\000\000\000\000\000\000\021~\b\029\b\029\b\029\000\000\b\029\b\029\000\000\b\029\000\000\000\000\000\000\000\000\000\000\000\000\b\029\000\000\000\000\b\029\000\000\000\000\000\000\022\202\000\000\000\000\000\000\000\000\021\130\000\000\000\000\021\134\000\000\000\000\b\029\021Z\000\000\000\000\000\000\b\029\b\029\000\000\000\000\000\000\021\138\021^\000\000\021b\000\000\021\142\000\n\021\146\000\000\021\150\021\154\021f\021\158\000\000\000\000\000\000\000\000\021j\000\000\021\162\021r\000\000\021\166\021V\021v\000\161\000\000\000\000\000\000\000\000\021z\000\000\000\000\000\000\000\000\021Z\000\000\021\170\000\000\000\000\000\000\000\000\021\174\021\178\000\000\021^\021~\021b\000\161\000\161\000\000\000\000\000\000\000\000\000\000\021f\000\000\000\000\000\000\000\000\000\000\021j\000\000\012\n\021r\000\000\000\000\000\000\021v\000\161\000\161\000\000\000\000\021\130\021z\000\000\021\134\000\000\000\000\000\161\000\000\000\000\012\018\000\000\012\"\000\000\000\000\000\000\000\000\021\138\023v\000\000\000\000\000\000\021\142\000\n\021\146\000\000\021\150\021\154\000\000\021\158\000\000\000\000\000\000\000\000\000\000\000\161\021\162\000\000\000\000\021\166\021V\000\000\000\000\000\000\000\000\021\130\000\000\000\000\021\134\000\000\000\000\000\000\021Z\000\000\021\170\000\000\000\000\000\000\000\000\021\174\021\178\021\138\021^\000\000\021b\000\000\021\142\000\n\021\146\000\000\021\150\021\154\021f\021\158\000\000\000\161\000\000\000\000\021j\000\000\021\162\021r\012\026\021\166\000\000\021v\000\000\000\000\000\000\000\000\000\000\021z\000\000\000\000\000\000\000\000\000\161\000\000\021\170\000\000\000\000\000\000\000\000\021\174\021\178\000\000\000\000\024\206\000\000\000\000\000\000\000\161\000\161\000\000\004i\004i\004i\004i\000\000\004i\000\000\004i\004i\000\000\004i\000\000\004i\000\000\004i\000\000\004i\004i\004i\004i\021\130\000\000\000\000\021\134\000\000\000\000\000\000\000\000\000\000\001v\000\000\000\000\000\000\000\000\004i\000\000\021\138\000\000\000\000\000\000\000\000\021\142\000\n\021\146\000\000\021\150\021\154\000\000\021\158\004i\000\000\000\000\000\000\000\000\000\000\021\162\000\000\000\000\021\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004i\000\000\000\000\000\000\021\170\000\000\004i\000\000\000\000\021\174\021\178\000\000\000\000\000\000\004i\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\004i\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\000R\000V\000f\000\170\000\000\000\174\004i\000\178\000\246\000\000\000\254\000\000\001\014\001N\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001^\001F\000\000\000\000\000\000\000\000\001j\000\000\021V\000\000\000\000\000\000\000\000\000\000\001b\000\000\001N\000\000\004i\000\000\021Z\000\000\000\000\000\000\000\000\000\000\000\000\001n\000\000\000\000\021^\000\000\021b\000\000\000\000\000\000\001^\000\000\000\000\000\000\021f\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\000\021r\001b\000\000\000\000\021v\000\000\000\000\000\000\000\000\000\n\021z\000\000\000\000\000\000\001n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021~\000\000\000\000\001r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\130\012\181\000\000\021\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001r\000\000\000\000\000\000\021\138\000\000\000\000\000\000\000\000\021\142\024\250\021\146\000\000\021\150\021\154\000\000\021\158\000\000\000\000\000\000\000\000\000\000\000\000\021\162\000\000\002I\021\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\170\000\000\000\000\000\000\000\000\021\174\021\178\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\177\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\246\000\000\000\254\000\000\001\014\001F\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\012\002\012*\000\000\000\000\000\000\000\000\001N\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\012\n\000\000\000\000\000\000\014I\000\000\000\177\000\177\000\000\000\000\000\000\001^\001N\000\000\000\000\000\000\000\177\001j\000\000\012\018\000\000\012\"\000\000\000\000\000\000\001b\000\000\014I\014I\004^\004b\000\000\001^\000\000\000\000\0116\000\217\000\000\001n\000\217\000\000\000\000\014I\000\000\012:\000\000\001b\000\000\014I\014I\026~\004b\011>\000\000\000\000\011J\000\000\000\000\014I\000\217\000\217\014I\000\000\014I\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\217\000\000\000\217\000\217\000\000\000\000\000\177\000\000\014I\000\000\000\000\004f\000\217\012\026\000\000\006v\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177\011V\000\000\000\000\000\000\026\130\003m\000\000\000\000\002A\000\000\000\000\000\000\000\217\000\000\000\177\000\177\000\000\000\000\000\000\000\000\014I\000\000\000\000\000\000\000\000\011Z\003e\014I\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\011b\000\178\000\246\000\000\000\254\014I\001\014\000\000\001\022\000\000\001\030\0012\001:\001>\000\000\000\000\000\217\000\000\000\000\000\217\014I\014I\000\000\006~\000\000\000\000\000\221\000\000\001F\000\221\000\000\000\000\000\000\000\000\000\237\000\000\000\000\000\237\000\000\000\000\000\000\000\000\000\217\001N\000\000\000\000\000\000\000\000\000\000\000\221\000\221\000\000\000\217\000\217\000\000\000\000\000\000\006f\006\142\000\000\000\000\000\000\000\000\001^\006n\000\000\000\000\000\000\000\221\000\000\000\221\000\221\006n\000\000\000\000\000\000\000\237\001b\000\237\000\237\000\221\026~\004b\006v\000\000\006\134\000\229\000\000\000\237\000\229\000\000\006v\000\000\006\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\221\006f\006\142\000\000\000\000\000\000\000\000\000\000\006\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006n\000\000\000\000\000\000\000\229\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\229\026\138\000\000\006v\000\000\006\134\000\000\000\000\000\221\000\000\000\000\000\221\000\000\000\000\000\000\006~\000\237\000\000\000\000\000\237\000\000\000\000\000\000\006~\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\000\000\233\000\000\000\221\000\233\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\237\000\000\006f\006\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\241\000\229\000\000\006n\000\229\000\000\000\000\000\233\006~\000\233\000\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\233\006f\006\142\006v\000\000\006\134\000\000\000\000\000\229\000\000\006^\000\000\000\000\001\001\000\000\000\000\006n\000\000\000\229\000\229\000\241\000\000\000\241\000\241\000\000\000\000\000\000\000\000\006\158\000\000\000\000\000\000\006\150\006f\006\142\006v\000\000\006\134\000\000\000\000\000\000\000\000\006^\000\000\000\000\000\245\000\000\000\000\006n\000\000\000\000\000\000\001\001\000\000\001\001\006\206\000\000\000\000\000\000\000\000\006\158\000\000\000\000\000\000\006\150\006f\006\142\006v\000\233\006\134\000\000\000\233\000\000\000\000\006^\006~\000\000\000\253\000\000\000\000\006n\000\000\000\000\000\000\000\245\000\000\000\245\000\245\000\000\000\000\000\000\000\000\006\158\000\000\000\233\000\000\006\150\006f\006\142\006v\006\166\006\134\000\000\000\241\000\233\000\233\000\000\006~\000\000\000\000\000\000\000\000\006n\000\000\000\000\000\000\000\253\000\000\000\253\006\206\000\000\000\000\000\000\000\000\006\158\000\000\000\241\000\000\006\150\000\000\000\000\006v\006\166\006\134\000\000\001\001\000\241\000\241\000\169\006~\nf\000\000\000\000\nj\000\000\000\000\000\000\025\214\000\000\nn\000\000\000\000\000\000\000\000\nr\025\218\006\158\000\000\001\001\000\000\000\000\012\002\012*\000\000\006\166\000\000\000\000\000\245\006\214\006\174\000\000\006~\000\000\000\000\000\000\000\000\012\n\000\000\000\000\000\000\000\000\000\000\000\169\000\169\000\000\000\000\000\000\000\000\016\202\000\000\000\245\000\000\000\169\000\173\000\000\012\018\006\166\012\"\000\000\000\253\000\245\006\174\000\000\006~\016\206\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\012\002\012*\000\000\011\250\000\169\000\000\000\253\000\000\001\234\000\000\000\000\000\000\r\026\001\246\000\000\012\n\000\253\006\174\012\002\012*\000\000\000\173\000\173\000\000\000\000\000\000\012\002\012*\000\000\000\000\000\000\000\173\000\000\012\n\012\018\000\000\012\"\000\000\000\000\000\181\000\181\012\n\000\000\000\000\000\169\000\n\000\000\000\197\012Z\0122\004\189\012\026\012\018\000\000\012\"\000\000\000\000\0122\000\000\012:\012\018\000\000\012\"\000\000\000\000\000\169\000\000\000\000\000\000\011\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012:\000\000\000\000\000\169\000\169\000\000\000\000\000\000\012:\000\000\000\000\000\000\000\000\000\000\000\000\012\002\012*\000\000\t)\t)\000\000\000\000\000\173\t)\000\000\000\000\000\000\000\000\000\000\012\026\012\n\000\000\000\000\000\000\000\000\000\000\000\185\000\185\000\000\000\000\012B\000\000\011\250\000\173\000\000\000\000\0122\012\026\012B\012\018\000\000\012\"\000\000\000\000\000\000\012\026\000\000\000\000\000\173\000\173\000\000\000\181\000\000\000\000\000\000\012\002\012*\000\000\000\000\000\197\000\000\000\000\000\000\000\000\012:\000\000\000\181\000\181\000\000\000\000\012\n\000\000\000\000\000\000\012b\012J\000\193\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0122\000\000\000\000\012\018\000\000\012\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012B\000\000\000\000\000\000\000\000\000\000\000\000\012\026\000\000\000\000\012:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\012J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012B\000\000\000\000\000\000\000\000\000\000\000\000\012\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\193\012J"))
   
   let lhs =
-    (16, "\000\012\000\011\000\n\000\t\000\008\000\007\000\006\000\005\000\004\000\003\000\002\000\001\000\000\001\018\001\018\001\018\001\017\001\017\001\017\001\017\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\013\001\012\001\012\001\012\001\012\001\011\001\n\001\n\001\n\001\t\001\t\001\t\001\008\001\008\001\008\001\007\001\007\001\007\001\006\001\005\001\004\001\003\001\003\001\002\001\002\001\001\001\001\001\000\001\000\000\255\000\255\000\254\000\253\000\253\000\252\000\252\000\251\000\251\000\251\000\251\000\250\000\250\000\250\000\249\000\248\000\247\000\246\000\245\000\244\000\243\000\242\000\241\000\240\000\239\000\238\000\237\000\236\000\235\000\235\000\234\000\234\000\233\000\233\000\232\000\232\000\231\000\231\000\231\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\229\000\228\000\228\000\228\000\228\000\227\000\227\000\226\000\226\000\225\000\225\000\224\000\224\000\224\000\223\000\223\000\223\000\222\000\222\000\222\000\222\000\221\000\221\000\221\000\221\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\219\000\218\000\218\000\217\000\217\000\217\000\216\000\216\000\215\000\215\000\215\000\214\000\214\000\213\000\213\000\213\000\212\000\211\000\210\000\210\000\209\000\209\000\208\000\208\000\207\000\207\000\206\000\206\000\205\000\204\000\203\000\203\000\202\000\202\000\201\000\201\000\201\000\200\000\199\000\198\000\198\000\197\000\196\000\196\000\196\000\196\000\196\000\195\000\195\000\195\000\195\000\194\000\194\000\194\000\194\000\193\000\193\000\193\000\193\000\192\000\191\000\191\000\190\000\190\000\190\000\189\000\188\000\188\000\188\000\188\000\187\000\186\000\186\000\185\000\185\000\184\000\184\000\183\000\183\000\183\000\183\000\182\000\182\000\181\000\181\000\181\000\181\000\181\000\180\000\180\000\180\000\180\000\179\000\179\000\179\000\179\000\179\000\178\000\177\000\177\000\177\000\177\000\176\000\175\000\175\000\174\000\174\000\173\000\173\000\172\000\172\000\171\000\171\000\170\000\170\000\169\000\169\000\169\000\169\000\169\000\169\000\169\000\169\000\168\000\167\000\166\000\166\000\165\000\165\000\164\000\164\000\163\000\163\000\162\000\162\000\161\000\161\000\160\000\160\000\159\000\159\000\158\000\158\000\157\000\157\000\156\000\156\000\155\000\155\000\154\000\154\000\153\000\153\000\152\000\152\000\151\000\151\000\150\000\150\000\149\000\149\000\148\000\148\000\147\000\147\000\146\000\146\000\145\000\145\000\144\000\144\000\143\000\143\000\142\000\142\000\141\000\141\000\140\000\140\000\139\000\139\000\138\000\138\000\137\000\137\000\136\000\136\000\135\000\135\000\134\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\132\000\131\000\130\000\129\000\128\000\127\000~\000}\000|\000{\000{\000{\000z\000z\000z\000y\000y\000y\000y\000x\000w\000v\000u\000t\000s\000r\000r\000q\000q\000q\000p\000p\000o\000o\000o\000n\000n\000m\000l\000l\000l\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000d\000d\000c\000c\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000]\000]\000\\\000\\\000[\000[\000[\000[\000[\000Z\000Z\000Y\000Y\000Y\000Y\000X\000W\000V\000V\000V\000U\000U\000U\000T\000T\000T\000T\000T\000T\000S\000S\000S\000S\000S\000R\000R\000R\000R\000R\000R\000R\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000P\000P\000P\000P\000P\000P\000P\000O\000O\000O\000O\000O\000O\000O\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000J\000J\000J\000J\000J\000I\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000G\000G\000G\000F\000E\000D\000C\000C\000B\000B\000A\000@\000@\000@\000?\000?\000>\000>\000=\000<\000<\000<\000<\000<\000<\000<\000;\000;\000;\000;\000;\000;\000:\000:\000:\000:\0009\0009\0008\0008\0008\0007\0007\0006\0006\0005\0005\0004\0004\0003\0003\0002\0002\0001\0001\0000\0000\000/\000/\000.\000.\000-\000-\000,\000,\000+\000+\000*\000*\000)\000)\000(\000(\000'\000'\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000%\000%\000%\000$\000$\000$\000$\000#\000#\000#\000#\000#\000\"\000!\000!\000!\000 \000 \000\031\000\031\000\030\000\029\000\028\000\028\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\025\000\025\000\025\000\024\000\024\000\024\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\021\000\021\000\020\000\020\000\020\000\020\000\020\000\020\000\020\000\019\000\019\000\019\000\019\000\019\000\019\000\019\000\018\000\018\000\018\000\018\000\018\000\018\000\018\000\017\000\017\000\017\000\017\000\017\000\017\000\017\000\016\000\016\000\016\000\016\000\016\000\015\000\015\000\014\000\013\000\013\000\013\000\013\000\013")
+    (16, "\000\012\000\011\000\n\000\t\000\b\000\007\000\006\000\005\000\004\000\003\000\002\000\001\000\000\001\018\001\018\001\018\001\017\001\017\001\017\001\017\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\016\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\015\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\014\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\r\001\012\001\012\001\012\001\012\001\011\001\n\001\n\001\n\001\t\001\t\001\t\001\b\001\b\001\b\001\007\001\007\001\007\001\006\001\005\001\004\001\003\001\003\001\002\001\002\001\001\001\001\001\000\001\000\000\255\000\255\000\254\000\253\000\253\000\252\000\252\000\251\000\251\000\251\000\251\000\250\000\250\000\250\000\249\000\248\000\247\000\246\000\245\000\244\000\243\000\242\000\241\000\240\000\239\000\238\000\237\000\236\000\235\000\235\000\234\000\234\000\233\000\233\000\232\000\232\000\231\000\231\000\231\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\230\000\229\000\228\000\228\000\228\000\228\000\227\000\227\000\226\000\226\000\225\000\225\000\224\000\224\000\224\000\223\000\223\000\223\000\222\000\222\000\222\000\222\000\221\000\221\000\221\000\221\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\220\000\219\000\218\000\218\000\217\000\217\000\217\000\216\000\216\000\215\000\215\000\215\000\214\000\214\000\213\000\213\000\213\000\212\000\211\000\210\000\210\000\209\000\209\000\208\000\208\000\207\000\207\000\206\000\206\000\205\000\204\000\203\000\203\000\202\000\202\000\201\000\201\000\201\000\200\000\199\000\198\000\198\000\197\000\196\000\196\000\196\000\196\000\196\000\195\000\195\000\195\000\195\000\194\000\194\000\194\000\194\000\193\000\193\000\193\000\193\000\192\000\191\000\191\000\190\000\190\000\190\000\189\000\188\000\188\000\188\000\188\000\187\000\186\000\186\000\185\000\185\000\184\000\184\000\183\000\183\000\183\000\183\000\182\000\182\000\181\000\181\000\181\000\181\000\181\000\180\000\180\000\180\000\180\000\179\000\179\000\179\000\179\000\179\000\178\000\177\000\177\000\177\000\177\000\176\000\175\000\175\000\174\000\174\000\173\000\173\000\172\000\172\000\171\000\171\000\170\000\170\000\169\000\169\000\169\000\169\000\169\000\169\000\169\000\169\000\168\000\167\000\166\000\166\000\165\000\165\000\164\000\164\000\163\000\163\000\162\000\162\000\161\000\161\000\160\000\160\000\159\000\159\000\158\000\158\000\157\000\157\000\156\000\156\000\155\000\155\000\154\000\154\000\153\000\153\000\152\000\152\000\151\000\151\000\150\000\150\000\149\000\149\000\148\000\148\000\147\000\147\000\146\000\146\000\145\000\145\000\144\000\144\000\143\000\143\000\142\000\142\000\141\000\141\000\140\000\140\000\139\000\139\000\138\000\138\000\137\000\137\000\136\000\136\000\135\000\135\000\134\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\133\000\132\000\131\000\130\000\129\000\128\000\127\000~\000}\000|\000{\000{\000{\000z\000z\000z\000y\000y\000y\000y\000x\000w\000v\000u\000t\000s\000r\000r\000q\000q\000q\000p\000p\000o\000o\000o\000n\000n\000m\000l\000l\000l\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000d\000d\000c\000c\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000]\000]\000\\\000\\\000[\000[\000[\000[\000[\000Z\000Z\000Y\000Y\000Y\000Y\000X\000W\000V\000V\000V\000U\000U\000U\000T\000T\000T\000T\000T\000T\000S\000S\000S\000S\000S\000R\000R\000R\000R\000R\000R\000R\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000P\000P\000P\000P\000P\000P\000P\000O\000O\000O\000O\000O\000O\000O\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000M\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000L\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000J\000J\000J\000J\000J\000I\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000H\000G\000G\000G\000F\000E\000D\000C\000C\000B\000B\000A\000@\000@\000@\000?\000?\000>\000>\000=\000<\000<\000<\000<\000<\000<\000<\000;\000;\000;\000;\000;\000;\000;\000:\000:\000:\000:\000:\0009\0009\0008\0008\0008\0007\0007\0006\0006\0005\0005\0004\0004\0003\0003\0002\0002\0001\0001\0000\0000\000/\000/\000.\000.\000-\000-\000,\000,\000+\000+\000*\000*\000)\000)\000(\000(\000'\000'\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000&\000%\000%\000%\000$\000$\000$\000$\000#\000#\000#\000#\000#\000#\000\"\000!\000!\000!\000 \000 \000\031\000\031\000\030\000\029\000\028\000\028\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\025\000\025\000\025\000\024\000\024\000\024\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\021\000\021\000\020\000\020\000\020\000\020\000\020\000\020\000\020\000\019\000\019\000\019\000\019\000\019\000\019\000\019\000\018\000\018\000\018\000\018\000\018\000\018\000\018\000\017\000\017\000\017\000\017\000\017\000\017\000\017\000\016\000\016\000\016\000\016\000\016\000\015\000\015\000\014\000\r\000\r\000\r\000\r\000\r")
   
   let goto =
-    ((16, "\000J\000\n\000\000\000\000\000\000\000S\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\235\001H\000\000\000\151\000\139\000\000\000\000\000\000\000m\000\000\000\030\000\146\000\000\000\000\001\024\000\000\001\160\000\000\000\000\000\000\001\214\000\000\002T\000\000\000\000\000\000\000\000\002\210\000\000\002\218\002\248\000\000\000\000\003n\000\000\004\022\000\000\000\000\000\000\004>\000\000\004\150\000\000\005\n\000\000\005\024\005\186\000\000\000\000\005\194\000\000\006\190\000\000\000w\000\000\000\000\006\246\000\000\007\020\000\000\000\000\0072\000\000\007:\000\000\000\000\000\000\007N\000\000\000\130\007v\000\196\000\000\000\000\000\000\006.\0001\003\204\000\000\000\000\008\218\000\000\024\008\000\000\000n\000\134\t\130\000\000\000\000\011\142\000\000\007|\000\000\001\164\n\172\017\154\012\206\017\154\013\244\022\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012x\012\206\000\000\000\000\015.\000\000\023\204\000\000\000T\000\000\000\000\000\000\000\000\001F\000\000!R\000\000\000\000\000\132\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\006^\000\000\006\172\000\000\006\232\000\000\008\182\000\000\015\244\000\000\029$\000\000\"\166\000\000%\156\000\000&2\000\000*\140\000\000\023F\000\000\000\000\000\000\000\000\000\000)\164\000\000/N\000\0007\154\000\000\001\234\000\000\000\000\020\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\204\t\018\000\000\000\000\t^\000\000\tj\t\146\000\000\000\000\t\218\000\000\t\230\000\000\000\000\000\000\t\238\000\000\n\008\000\000\000\000\n\n\000\000\n\020\n0\000\000\000\000\n:\000\000\nB\000\000\000\000\000\000\nF\000\000\nP\000\000\nT\000\000\nV\nt\000\000\000\000\nv\000\000\nz\000\000\001\218\n|\000\000\n~\000\000\n\130\000\000\n\136\000\000\000\000\000\000\n\144\000\000\n\164\012,\000\000\n\170\000\000\000\238\026h\000\000\002\190\000\000\003\198\000\000\000\000\001\250\000\000\000\000\001?\005R\000\000\000\000\000\000\000\000\003B\000\000\003\254\000\000\004b\000\000\008\n\000\000\000\000\000\000\000\000\000\000\000\000\t\166\000\000\000\000\000\000\000\000\001\007\000\000\000\000\000\000\000\000\000\000\000\000\000\204\005 \014\130\000\000\n\178\000\000\n\192\015\030\000\000\n\202\000\000\000\000\004\008\000\000\000\000\000\000\000\000\000\000\026\156\000\0001\150\000\000\000\000\000\000\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\019\000\000\000\000\000\000\000\000\000\000\000\000\011<\022\144\000\000\016\016\000\000\019\236\000J\000\000\000\000\000\000\005\232\000\000!\184\000\000\000\0001\230\000\000\000\000\000\000\005\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\216\000\000\026\228\000\000\000\000\000\000\000\000\000\128\000\000\000\0002:\000\000\000\000\000\000\015N\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000&\000\000\003\026\000\000\005B\000\000\007\018\000\000\t\214\000\000\012$\000\000\014\216\000\000\015z\000\000\018\006\000\000\0182\000\000*\144\000\000\003R\000\000\018\192\000\000\019R\000\000\021j\000\000\000\000\000\000\000\000\000\000\000~2\202\000\000\001(\000\000\000\000\002\026\002n\000\000\002d\000\000\000\000\000\000\n\144\000\000\000\000\000\000'\224\000\000\000\000\000\000\000\000\000\000(\182\000\000\000\000\000\000\000\000\000\000\000\000\001\202\000\000\000\000\000\000\n\204\016\184\000\000\n\208\000\000\000\000\000\000\000\000\000\000\n\220\000\000\000\000\001\t\004\250\000\000\005\206\000\000\000\000\000\000\002R\000\000\012f\002\248\n\226\000\000\000\000\n\228\000\000\n\238\n\246\000\000\000\000\011\000\000\000\011\004\000\000\000\000\000\000\011\020\000\000\011\022\000\000\000\000\011\024\000\000\011\030\011*\000\000\000\000\011.\000\000\0114\000\000\000\000\000\000\011@\000\000\011L\000\000\011P\000\000\011T\011Z\000\000\000\000\011^\000\000\011b\000\000\006\244\011p\000\000\011~\000\000\011\134\000\000\011\144\000\000\000\000\000\000\011\148\000\000\003b\000\000\000\000\011\152\016\196\000\000\011\154\000\000\000\000\000\030\000\000\000\000\0002\000\000\000\000\000\000\000\000\000\000\007\144\018\168\000\000\011\158\000\000\011\170\019\002\000\000\011\176\000\000\000\000\012\190\011\190\000\000\000\000\011\194\000\000\011\198\011\212\000\000\000\000\011\226\000\000\011\228\000\000\000\000\000\000\011\236\000\000\011\248\000\000\000\000\012\002\000\000\012\006\012\008\000\000\000\000\012\014\000\000\012\016\000\000\000\000\000\000\012\018\000\000\012\020\000\000\012\030\000\000\012.\0120\000\000\000\000\0122\000\000\012:\000\000\007\154\012<\000\000\012>\000\000\012@\000\000\012D\000\000\000\000\000\000\012F\000\000\012V\024\130\000\000\012Z\000\000\000\000\007\156\024\198\000\000\012\\\000\000\012j\024\230\000\000\012n\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\232\000\000$\184\000\0003\012\000\000\000\000\006\158\000\000\000\000\007\164\005^\000\000\000\000*\192\004H\000\000\003\184\020D\000\000\000\000(\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0124(\248\000\000\013\136\000\000\028\236\028n)f\000\000&\206\000\000\000\000\000\000\008\000\000\000\"^\000\000\000\0003\"\000\000\000\000\000\000\008\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0003p\000\0003\184\000\000\000\000\000\000\"@\008\142\000\000\000\000\000\000*\230\000\000\000\000\000\000\000\000\008\176\000\000\000\000\000\000\021~\000\000\000\000\029\184\000\000\001\220\000\000\000\000\000\000\005\"\000\000\017\018\000\000\020\222\000\000\027\234\000\000\029\006\000\000&\226\000\000(j\000\000(\210\000\000-\224\000\000/\170\000\0000H\000\0001h\000\0003R\000\000\000\000\000\000\n~\000\000\018\248\030L\000\000+N\013\218+\176\000\000\000\000+\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004$\000\000\000\000\000\000\000\000\005\242\000\000\005\132\000\000\000\000\011X\000\000\000\000\000\000,,\000\000\000\000\000\000\000\000\000\000\0176\000\000\000\000\000\000\000\000,\162\000\000\000\000\000\000\000\000\003\248\012p\000\000,\186\000\000\000\000\000\000\000\000\013\012\000\000-\006\000\000\000\000\000\000\000\000\003\154\000\000\006\202\000\000\012\208\004\018)\128\000\000\000\000\000\000\005\234\000\000\000\000\000\000\000\000\000\000\000\000\015\182)\128\000\000\017\\\000\000\025\134\n\222\000\000\000\000\000\000\008\204\000\000\"\244\000\000\000\0003\198\000\000\000\000\000\000\008\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\142\000\0007\150\000\000\000\000\000\000\003\142\000\000\000\000\000\000\000\000\000\000\000\000\021\020\000\000\023\226\000\000\027\200\000\000#\138\000\000)H\000\0002\030\000\0007J\000\0007\196\000\0007\206\000\0008(\000\000-R\000\000\002\238\000\00082\000\0008H\000\0008v\000\000)\254\000\000\000\000\000\0004\000\000\000\000\000\000\000\000^\000\0004\210\000\000\000\000\000\0004\214\000\000\000\000\000\030\000\000\025\150\000!\001X\000\000\002N\000\000\013$\001\228\007n\000\000\000\000\000\000\000\000\000\000\000\000\000\0005$\000\000%\160\0006\008\254\000\000\000\000\000\000-X\000\000-\172\000\000-\208\000\000%\186&L\001.\004R\t\002\000\000\000\000\000\000\0056\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005l\000\000\000\000\000\000\000\000#v\000\000&f\000\000\000\000\000\000\000\000\000\000\000\000\013\196\000\000\000\000\002\220\000\000\000\000\000\000\025\202\005\016\000\000\026\130\000\000\000\000\013\012\000\000\006\228\000\000\000\000\014p\000\000\027j\000\000\000\000#\154\000\000\000\000\000\000\n\136\000\000\000\000\005\180\000\000\000\000\023\014\000\000\000\000\000\000-\248\000\000\000\000\000\000\024<\000\000\000\000\000\000\000\000.\232\000\000\000\000\000\000\000\000\004~\014 \000\000.\236\000\000\000\000\000\000\000\000\000\000\000\000\015\016\000\000\000\000\007\152\000\000\016\024\000\000\n\136\000\000\000\000\004:\004\198\000\000\006 \000\000\000\000\000\000\000\000\003\142\000\000&\152\000\000\028\004\004\168\028\176\000\000\004\180\000\000\016R\000\000\016\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\030\029J\005:\029\246\000\000\000\000\000\000\006x\000\000\017\240\000\000\008\142\000\000\000\000\026X\007\160\030\144\000\000\007\220\000\000\018\144\031<\000\000\000\000\019<\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\224\008,\000\000\008\230\000\000\000\000\000\000\000\000\008l\000\000\019\220\000\000\000\000\000\000\00745\180\000\000\000\000\000\000 \188\000\000\000\000\000\000\000\000\007\224\006P\000\000\000\000/\016\000\000\000\000\000\127\000\000\006\138\000\000\000\000\025`\000\000\000\000\000\000/\018\000\000\000\000\000\000\000\000/v\000\000\000\000\008j\006\166\000\000\000\000/\154\000\000\000\000\008\250$\004\000\000\007,\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$P\000\000\000\000\000\000\001\144\000\000\000\000\007b\000\000\000\000\029\210\000\000\000\000\000\0000\170\000\000\000\000\000\000\000\0001\014\000\000\000\000\t\196\007\246\000\000\000\00014\000\000\000\000\t\002\000\000\000\000\000\000\000\000\003\142\005\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\228\000\000\020\154\000\000\000\000\000\0005\194\000\000\008\208\000\000\000\000\000\000\006\136\000\000\019\254\000\000\000\000\004\134\021:\000\000\021\230\000\000\000\000\000\000\006P\000\0005\246\007\1325\252\000\0006\134\000\000\000\000\000\000\007\224\000\0006\172\008\018\000\000\000\000'<\008\226'V\000\000(,\000\000\000\000\000\000\t:\000\0006\224\t^\000\000\000\000\013Z\tb\019N\000\000\020\208\000\000\000\000\000\000\td\000\0007\130\tz\000\000\000\000\000\000\000\026\000\000\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\008\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\172\000\000\000\000\005f\000\000\000\000\0138\000\000\000\000\000\000\000\000\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0138\000\000\000\000\013\018\000\000\013.\000\000\000\000\004r\000\000\007\158\012\198\001V\000\000\000\000\003\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\198\001\138\000\000\000\000\000@\000\000\000\000\000\000\017\238\000\000\000\000\021\224\022\002\000\000\000\000\000\000\000\000\023\002\025>\000\135\000\000\000\000\000\000\028\142\000\000\000\000\000\000\000\000\000\000\000\000\002\132\000\000\000\000\000\206\000\000\000\000\012\146\000\000\000\000\022\252\000\000\000\000\t\244\000\000\000g\000\000\000\000\000\000\000\000\008\020 R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029\158 \136\000\000\000\000\000\000\000\000 \142\000\000\000\000\025\222\000\000\013V\000\000\000\000\000\000\027\210\000\000\003\026\000\000\000\000\000\000\031\134\000\000\000\000\016\226!\148\019\134\000\000\"~\000\000\000\000\000\000\000\000\013\022\000\000\000\000\000\000\000Y\000\000\000\028\012\224\004\030\000\000\000\000\000\000\007\166\004\012\000\000\000\000\000\000\000\000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t$\000\000\000\000\002\218\000\000\000\029\013`\007\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023L\000\000\000\000\031\236#\134\000\000\000\000\000\000\000\000\005>\000\000\008\186\011\148\000\000\025\198\000\000\000\000\000\000\000\000\000\000\000\002\028\028\000\000\000\000\030\000\000\000\000\000\000\000\000\000\030\168\000\000 4\000\000\000\000\000\000\000\000\tF\000\000\000\000\000\000\003\210\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\0001B\000\000\000\000\000\000\003\132\000\000\000\000\000\000\000\000\000\000\000\004\001\172\003:\004\220\000\000\005\242\tv\t\134\t\152\000\000\000\000\000\000\000\000\000\000\000\000\005\138\022\134\000\000 \004\t\184\000\000\000\000\n\028\000\000\023\130\000\000*T\000\000\000\000\005\224\024\"\000\000 8\000\000\006\148 \240\000\000\000\000\000\000\tB\005\242\000\000\000\000\000\000\000\000\006b\000\000\007\148\000\000\006\204\t\022\000\000\000\000\000\000\003B\000\000\003\254\000\000\008\198\000\000\000\000\012\130\000\000\000\000\000\000\000\000\tz\000\000\000\000\n\250\000\000\024\206\000\000\026\252\013*\000\000\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000\0001\\\000\000\006\168\000\000\000\000\000\000\000\000\000\000\000\252\000\000\n2\005\188\011\026\000\000\002\144\011\198\000\000\n`\000\000\002\180\000\000\003\132\000\000\004\140\000\000\026\252\000\000\000\000\000\000\000\000\000\000\005,\000\000\n\204\000\000\006 \000\000\026\252\013\142\000\000\003\008\000\000\013x\012f\000\000\t\188\000\000\n\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n^\000\000\nb\000\000\000\000\000\000\000\000\000\000\000\000\013\148\012|\000\000\000\000\012\162\000\000\000\000\012\136\t\220\013\208\000\000\013\214\000\000\000\000\005\192\002@\000\000\012\186\000\000\000\000\012\242\000\000\000\000\000\000\000\000\000\000\000\000\013\194\012\172\000\000\000\000\000\000\012\208\012\180\n&\t\000\012\212\013\012\000\000\000\000\012\204\n:\n\014\012\232\013$\000\000\000\000\000H\013\248\000\000\014\014\000\000\0144\000\000\000\000\014\022\000\000\000\000\000\000\014\024\000\000\000\000\000\000\000\000\014\026\000\000\014<\000\000\000\000\014D\000\000\000\000\014L\000\000"), (16, "\003r\003\137\001.\005\248\005\171\005t\005u\001g\000\007\001h\003@\005\204\005\205\000\018\000J\000J\000_\006\025\003r\003\137\002\164\004`\004H\006/\001\234\006\132\005\246\005\249\005t\005u\0010\006\133\000\005\002=\000_\001g\0026\001h\006\134\000\017\004\025\005\206\001\236\003r\003\137\006\n\0026\006\015\006\026\000J\006\027\005\207\005E\001g\000\004\001h\002:\004\026\000\138\003t\003\203\003\204\000\139\003u\000\140\004T\0028\001i\005v\004\253\006\016\001j\006\019\005t\005u\004\026\005\172\003t\000\005\006\028\005\155\003u\000\138\000\138\006\176\006\177\000\149\000\139\0029\006\029\000\025\005v\000\140\001/\007=\001i\000\024\000_\0029\001j\002\238\001w\003t\005\153\005t\005u\003u\0067\006\011\007>\000\140\000\028\004\143\001i\003\142\000\140\001\181\001j\006\012\006\013\000\141\001/\000h\006\136\000\142\003A\000K\003\240\000J\001w\000_\000a\001\225\000e\0017\000_\005v\006:\006\181\000\140\000\140\006\137\003r\003\137\000\141\000\141\005z\001w\000\142\000\142\004\003\000_\000\151\004Z\001\013\006\190\005\184\003\142\000_\003\242\003\130\001\217\006\134\006\191\004\025\004\008\004\188\005v\004\003\004\t\004\027\000g\003\131\004\145\004n\001B\000\151\000\151\003\130\001x\000 \005{\001\186\004\008\004\\\003\203\003\204\004\t\004\027\006\138\003\131\005\003\000g\004\003\000\013\006X\000_\001\181\006\139\004\026\004\013\003t\006\164\003\130\004I\003u\004h\001x\004\008\001\140\006\210\004#\004\t\001\188\004\127\003\131\004@\003\146\004\013\000\016\000\017\005\137\004\030\006\166\000J\001x\001g\004\\\001\203\004#\000\152\001\212\006\168\002H\004@\003\146\000J\000\138\000\031\003\147\000h\000\149\006=\004\013\003\148\005\152\000_\001}\003\149\000\008\006b\002;\000\153\003\150\000\152\000\152\001\143\003\147\003r\003\137\003\146\000\138\003\148\006\211\004\254\000\149\003\149\001\186\005\153\005t\005u\003\150\001\141\003@\000_\001\145\000\153\000\153\002\164\004`\004H\005|\003\147\000\140\001\215\000_\001i\003\148\005\000\001\150\001j\003\149\004\003\001y\000\140\001\189\003\150\000\203\001\187\000\141\001Q\000\154\003\130\000\142\001\012\000\"\005\138\004\008\003\203\003\204\000J\004\t\004\027\006\212\003\131\004\026\003\206\003t\000\140\001\141\001w\003u\006\139\000\141\000\155\000\155\006\214\000\142\001\015\000\194\0016\000\151\005v\005\182\001\213\000\203\003\240\007\006\000\157\000\159\006P\006Q\004\013\000_\003r\003\137\004\030\006\216\000\144\001\015\001E\0016\001\"\004#\000_\000\151\006\218\006U\004@\003\146\000_\000\005\003r\003\137\006\134\006\196\004H\001\027\003\243\003\244\003\246\004o\003\142\000$\001\181\005\181\005e\006/\000_\003\203\003\204\003\147\006\134\006\196\004H\000h\003\148\002=\0045\001\192\003\149\003r\003s\001\214\001\229\003\150\000\203\002\246\001x\005f\000(\004\026\0024\003t\005i\005t\005u\003u\004\003\000\152\006m\006\018\002=\001g\006X\001h\005\141\006\207\003\130\004\026\001\194\003t\000\251\004\008\000J\003u\001\192\004\t\004\027\004\231\003\131\000\153\004q\000\152\006\016\006\201\006\019\005t\005u\003\205\005\156\001g\004\\\001h\006d\000_\000\203\007\021\000\140\006b\003t\002\245\0065\001\237\003u\000\153\000\154\001\193\004\013\005\204\005\205\007\022\004I\000*\004h\000_\003r\003\137\005v\004#\000\140\001\236\004\127\001i\004@\003\146\001%\001j\0011\000\155\000\154\001\028\000_\001\029\000\156\000\203\006\134\006\196\004H\005\228\000J\006?\002\193\000\157\004\003\002\219\001\213\003\147\000\140\005\207\005v\001i\003\148\000\155\003\130\001j\003\149\001w\000\193\004\008\004\017\003\150\004\003\004\t\004\027\006\202\003\131\000\157\000_\000a\000b\000e\003\130\004\026\006\139\003t\000/\004\008\004\011\003u\0003\004\t\004\027\006\202\003\131\001w\000h\003r\003\137\006\203\0017\001\191\006\139\000\203\004\013\0002\004\011\005\140\004I\000\140\006\204\003\130\005\182\002\198\000\203\004#\000J\002\199\006\206\000g\004@\003\146\004\013\003\131\002\193\002,\004I\002\197\006\204\006\002\005\185\005w\006Z\004#\001\186\006[\006\206\005\137\004@\003\146\0014\003M\003/\003\147\000J\001x\007\030\002H\003\148\000J\006_\006\003\003\149\000_\000\140\006\006\003t\003\150\003r\003\137\003u\003\147\001-\000J\0005\003\145\003\148\0017\003\174\006l\003\149\005\133\002H\001x\000_\003\150\004\003\006\003\006\134\006\196\004H\002\238\006K\006L\005\011\002\198\003\130\003r\003\137\002\199\003\147\004\008\005\138\004b\005\131\004\t\004\027\006\202\003\131\004b\005\134\005t\005u\006d\003\150\000\203\006\139\006X\004A\004V\004\011\003\142\002\212\001\145\000_\004\026\004W\003t\006b\001\172\001\"\003u\005\138\001\189\002\213\000\203\004\013\001\152\000h\000_\004I\006\205\006\204\002\193\004\022\001\027\002\197\004#\003r\003\137\006\206\001\145\004@\003\146\002\238\004\023\003t\004Y\0007\001g\003u\001h\001\012\006/\000_\001\148\001(\003\130\006\134\006\196\004H\000h\006\004\002=\005v\003\147\004t\002\239\000;\003\131\003\148\003\237\001\018\000_\003\149\000h\001\015\006\015\0016\003\150\005\013\003\144\003\203\003\204\002\212\003&\003*\003\020\006\004\000J\000\140\005p\005\023\002\242\002\198\004\026\002\213\003t\002\199\002\166\006\016\003u\006\019\005t\005u\001C\000\140\005q\004\003\001i\005\025\006\213\000=\001j\003\146\003\023\000J\005|\003\130\0030\000J\002\245\003\238\004\008\006\007\003\203\003\204\004\t\004\027\006\202\003\131\006\193\005\252\003r\003s\000_\003\147\004\003\006\139\000J\001\026\003\148\004\011\001w\001%\003\149\001&\003\130\004j\001\028\003\150\001\029\004\008\000\203\004e\001\027\004\t\006g\004\013\003\131\003r\003\137\004I\000J\006\204\002\247\005v\0060\005\002\004#\000?\004\011\006\206\002\166\004@\003\146\000_\000C\006c\002\248\006\134\006\196\004H\000_\006\208\003\239\001\223\004\013\004\003\000J\000\140\000\138\003t\002\212\003@\000\139\003u\003\147\003\130\000J\003@\001<\003\148\004\008\003\146\002\213\003\149\004\t\004\027\006\202\003\131\003\150\006d\006o\000\203\003\203\003\204\004\026\006\139\003t\004v\001x\004\011\003u\000g\004t\003\147\001\231\001O\000\203\000\138\003\148\000h\006\217\000\139\003\149\003\238\007\007\004\013\000_\003\150\000J\004I\002\164\006\204\003r\003\137\001\192\000\140\004#\000\140\000h\006\206\000\141\004@\003\146\006}\000\142\000B\004W\000\138\000_\000E\002H\000\139\002\164\004`\004H\004\029\001\028\000J\001\029\0063\000\203\002\247\000h\002\167\003\147\001\194\004\023\003T\001g\003\148\001h\000J\000\151\003\149\000\140\002\250\001\145\004X\003\150\000\141\003\130\0031\0036\000\142\006\184\003r\003\137\006\185\001l\004\026\001\154\003t\003\131\000h\007\014\003u\003A\004\003\001u\000h\000\004\000_\0045\006k\000\140\004\169\004,\003\130\005\026\000\141\000J\000\151\004\008\000\142\003r\003\137\004\t\004\027\006\202\003\131\001\233\001g\000\203\001~\000\005\000\140\005\025\006\139\001i\004\250\000_\004\011\001j\006\130\002\164\004`\004H\003F\000J\006\189\000h\000\151\004\203\004\231\003t\004N\005\014\004\013\003u\000_\000\152\004I\006\141\006\204\003[\003J\004\023\000_\004#\003\136\004\129\006\206\001w\004@\003\146\000J\004y\004\209\001\015\000h\0016\004\026\000\153\003t\005\000\000G\004|\003u\000\140\006\152\004\027\001i\004\003\000h\004\171\001j\003\147\000_\000J\000\152\004\129\003\148\003\130\000J\000J\003\149\006X\004\008\002\165\006\003\003\150\004\t\004\027\000L\003\131\005\006\004n\004~\000_\003r\003\137\000\153\001\131\004\179\005\015\001w\004\011\006\155\000N\000\152\000\155\004#\002\031\005\144\004(\000_\004@\004\195\004\170\002\164\004`\004H\004\013\000Q\000\161\004\139\004I\000S\004h\000J\001x\000\153\005\013\004#\000J\003\130\004(\000W\004@\003\146\000h\004\154\005\203\005t\005u\004\210\0017\003\131\002\193\000\155\005\145\002\197\004\023\005!\004\003\004\132\004\026\001\228\003t\004\211\006\153\003\147\003u\000\163\003\130\001\"\003\148\000h\000\138\004\008\003\149\005#\000\139\004\t\004\027\003\150\003\131\004l\004n\000\155\001\027\003r\003\137\001x\004\204\006\022\004\213\004\194\004\011\004\218\002B\004\236\003\146\000\165\001\204\002x\002\143\000_\001\145\005$\006\t\002\164\004`\004H\004\013\002\238\005v\001\134\004I\002\198\004h\004\222\001\156\002\199\003\147\004#\000J\005#\004(\003\148\004@\003\146\000J\003\149\005'\000\140\005c\005d\003\150\001\144\000\141\006\158\000_\006\159\000\142\006\148\000J\006\149\004\026\000\203\003t\000h\005#\003\147\003u\0033\002\201\003L\003\148\004\003\004|\001\145\003\149\006\015\000_\000J\001\146\003\150\006b\003\130\001\147\000J\000\151\000J\004\008\001\148\003r\003\137\004\t\004\027\000\138\003\131\004\147\004n\000\147\004\176\006\016\004\193\006\019\005t\005u\004}\000_\004\011\006g\004\238\002\164\004`\004H\001$\004\148\002\239\006g\004\148\001\028\002\165\001\029\006G\000\203\004\013\006\147\006g\004\243\004I\000_\004h\004\243\006s\002\212\003\019\004#\003\020\001g\004(\001h\004@\003\146\002\242\004\023\0017\002\213\004\150\006\154\004\026\004\149\003t\005/\000\140\002\210\003u\007\026\004\003\000\141\004\245\002\237\000d\000\142\004\244\003\147\003\023\000\152\003\130\005v\003\148\0051\002\245\004\008\003\149\003w\001\210\004\t\004\027\003\150\003\131\005\n\004n\005\193\006v\003r\003\137\004\237\005s\000\153\000\205\000\151\004\011\006\235\003\128\004\023\000\140\0052\001\"\001i\003\221\000_\003\236\001j\005q\006\134\005\191\004\025\004\013\005\194\005t\005u\004I\001\027\004h\0051\002\247\0055\006I\004#\005=\005@\004(\002\193\004@\003\146\002\197\007\014\000\208\006\193\002\248\005C\000\138\001w\000\212\005#\000\139\000\155\005?\005?\006\153\006\235\004\026\004\003\003t\006c\000\138\003\147\003u\005#\000\147\000\167\003\148\003\130\000\211\006\148\003\149\006\149\004\008\000\203\006\209\003\150\004\t\004\027\002\166\003\131\006\162\004n\007\004\000\152\006j\003r\003s\005v\006\235\006\030\006\235\004\011\006i\006\135\002\238\003L\006\199\006\193\002\198\003@\000\182\006h\002\199\000\140\000\214\000\153\007!\004\013\000\141\006\165\000\216\004I\000\142\004h\000\220\003r\003\137\000\140\004#\007\025\004\023\004(\000\141\004@\003\146\001x\000\142\000\222\000\225\007 \000\183\000_\001g\000\229\001|\006\134\001%\004\025\001+\006\242\000\151\001\028\000\140\001\029\003t\000\203\003\147\000\228\003u\004\003\006\215\003\148\000\231\000\155\000\151\003\149\000\233\000\184\000\237\003\130\003\150\000\185\000_\000\239\004\008\000\241\000\245\000\157\004\t\004\027\006\195\003\131\004\026\000\138\003t\001\198\007\014\001\209\003u\006\139\002\239\000\244\000\247\006\198\000\249\000\252\000\254\006\236\001\000\000\140\006\194\001\002\001i\001\145\007\015\001\006\001j\002\212\003\022\004\013\003\020\003r\003\137\004\030\006\200\001F\002\242\001\158\001\011\002\213\004#\000h\001;\006\206\0045\004@\003\146\000_\000\152\001A\006\238\006\134\006\240\004\025\001@\001\222\001w\001\221\003\023\001\"\000\140\007\015\000\152\001\227\002\245\000\141\001\241\001\244\003\147\000\142\000\153\007\015\001\248\003\148\001\027\003\130\001\247\003\149\001g\001\183\001h\001\250\003\150\001\252\000\153\004:\002\193\003\131\004\026\002\218\003t\002\000\002\002\002\005\003u\004\003\002\t\000\151\000_\000a\001\t\000e\002\008\004>\002\011\003\130\006\197\002\013\002\247\000\183\004\008\003r\003\137\002\017\004\t\004\027\006\195\003\131\001\197\002\019\000\138\002\021\002\248\002\025\001V\006\139\002\024\000_\002\027\006\198\002\029\002\164\000\155\004\025\001x\000\140\000\184\002 \001i\000g\000\185\000_\001j\000\140\002\"\004\013\000\157\002\198\002$\004\030\006\200\002\199\002\166\002&\003\132\002*\004#\0023\0022\006\206\002A\004@\003\146\000\138\003r\003\184\002G\000\147\004\026\002F\003t\002\138\001w\000J\003u\000\152\002J\000\140\002M\000_\002Q\004\003\000\141\001%\003\147\0039\000\142\002P\001\028\003\148\001\029\003\130\000\203\003\149\002S\002U\004\008\000\153\003\150\002Y\004\t\004\027\006\195\003\131\005\018\002[\003r\003\137\004\142\006\155\002^\006\139\002b\002a\000\151\006\198\002d\002f\002j\002l\000\140\000\140\000_\003t\002n\000\141\002\164\003u\004\025\000\142\002\166\004\013\002r\002q\002t\004\030\006\200\005\130\002v\002y\002{\002}\004#\002\127\002\131\006\206\002\212\004@\003\146\000_\001x\000J\002\137\002\164\002\136\002\142\002\193\000\151\002\213\002\217\005\131\004\003\002\148\004\026\002\147\003t\005\134\005t\005u\003u\003\147\003\130\001\012\005n\005\150\003\148\004\008\005\129\005\143\003\149\004\t\004\027\005\187\003\131\003\150\000h\003r\003\137\005\222\005\244\003T\005\254\000\152\006\024\004\018\004\131\001\015\002\193\0016\004\140\002\197\006\174\000_\004\142\006\220\006\224\002\164\004\020\004\025\006\243\001g\004\013\001~\000\140\000\153\004\030\004\133\002\198\001\145\006\247\006\248\002\199\004#\006\253\003\130\004(\006\254\004@\003\146\003N\005v\007\003\001\160\006\157\007\002\000\152\003\131\006\148\007\n\006\149\007\012\000\203\007\018\004\026\007\019\003t\007\023\003R\007\024\003u\003\147\007\027\001T\007\028\002\238\003\148\004\003\000\153\002\198\003\149\007\031\007\"\002\199\000h\003\150\007#\003\130\000\140\002\166\0075\001i\004\008\003r\003\137\001j\004\t\004\027\001\195\003\131\000\203\007)\004 \000\183\0074\007.\0072\007:\0079\000_\000J\004\131\007<\002\164\004!\004H\007?\000\000\000_\000a\0019\000e\001\131\000\000\004\027\001w\000\155\004\013\003U\000\000\000\184\004\030\004\133\000\000\000\185\000\000\000\000\002\212\004#\000\000\000\157\004(\000\000\004@\003\146\001g\003Y\001h\000\000\002\213\004\026\000\000\003t\005\146\000\000\000\000\003u\004\003\0058\000g\000\000\002\239\000\000\000\000\000\000\004#\003\147\003\130\004(\000\000\004@\003\148\004\008\003r\003\137\003\149\004\t\004\027\002\212\003\131\003\150\003\030\004K\000\000\000\000\000\000\000\000\002\242\000\138\000_\002\213\004M\001S\002\164\004!\004H\000_\000a\001>\000e\000\000\000\000\000\140\001x\001g\001i\001~\004\013\000\000\001j\000\000\004\030\004O\000\000\001\132\002\245\000\000\000\000\004#\000\000\000\000\004Q\000h\004@\003\146\000\000\001g\001\134\001h\000\000\004\026\000\000\003t\000\000\000\000\000\000\003u\000g\000\000\001w\000\000\000\000\000\000\004\003\000\000\000\140\003\147\000\000\000\000\001\144\000\141\003\148\003!\003\130\000\142\003\149\003r\003\135\004\008\002\247\003\150\000\140\004\t\004\027\001i\003\131\004B\000\000\001j\000\000\000\000\001\145\000\000\002\248\000\000\000\000\001\146\004\011\000\000\000\000\001\147\000\000\000\151\000\140\004F\001\148\001i\000\138\000\000\000\000\001j\000\139\001\012\004\013\000\000\000\000\000\000\004I\001w\004J\000\000\001g\000\000\001{\004#\003r\003\137\004(\000\000\004@\003\146\000\000\000\000\000\140\004P\003t\001\015\001x\0016\003u\001w\000_\000\000\004\003\000\000\002\164\004!\004H\000\000\000\000\000\000\000\000\003\147\003\130\003r\003\137\000\000\003\148\004\008\000\000\000\000\003\149\004\t\004\027\000\140\003\131\003\150\000\000\000\000\000\141\000_\000\000\000\000\000\142\002\164\004`\004H\004\011\000\140\000\000\000\152\001i\004\026\000\000\003t\001j\000\000\000\000\003u\000\000\001\012\000\000\000\000\004\013\000\000\000\000\001x\004I\000\000\004J\000\000\000\151\000\153\000\000\004#\001\145\000\000\004(\000\000\004@\003\146\004\026\000\000\003t\001\015\001w\0016\003u\001x\001\162\001\142\000_\000a\001\219\000e\000\000\000\000\000_\000a\0020\000e\000\000\003\147\000\000\000\000\000\000\003\130\003\148\000\000\003r\003\137\003\149\001\144\000\000\000\000\000\000\003\150\000\000\003\131\000\000\002\193\000\000\000\000\002\197\000\000\000_\000\000\005\245\000\000\002\164\004`\004H\000g\000\000\001\145\000\000\000\000\000\000\000g\001\146\000\000\000\000\000\000\001\147\000\000\004\003\000\000\000\000\001\148\000\152\005\246\005\249\005t\005u\000_\003\130\001\145\003r\003\134\000\000\004\008\000\000\000\000\001x\004\t\004\027\004\026\003\131\003t\000\000\001\164\000\153\003u\000\000\004\003\000\000\000\000\000\140\000\000\004\011\000\000\002\198\000\000\000\000\003\130\002\199\006\014\000\000\000\138\004\008\000\000\000\000\000\147\004\t\004\027\004\013\003\131\000\000\004g\004I\000\000\004J\000\000\000\000\000_\000\000\004#\000\000\004\011\004(\000\000\004@\003\146\000\000\000\140\005v\003t\000\000\000\000\000\155\003u\001\"\000\000\000\000\004\013\000\000\000\000\000\000\004I\000\000\004h\003r\003\137\000\169\003\147\004#\001\027\000\000\004(\003\148\004@\003\146\001g\003\149\001h\000\140\000\000\000_\003\150\000\000\000\141\002\164\004`\004H\000\142\000\000\000\000\000\000\000\000\004\003\000\000\000\000\005\152\003\147\001g\001\012\001h\000\000\003\148\003\130\000\000\001\012\003\149\000\000\004\008\000\000\000\000\003\150\004\t\004\027\002\212\003\131\000\151\004i\000\000\005\153\005t\005u\004\026\001\015\003t\0016\002\213\004\011\003u\001\015\000\000\0016\000\000\000\140\000\000\000\000\001i\001\179\001\181\000\000\001j\000\000\000\000\004\013\000\000\003r\003\137\004I\000\000\004h\000\000\003\130\000\000\000\000\004#\000\140\006 \004(\001i\004@\003\146\000_\001j\003\131\000\000\002\164\004\134\004H\000\000\001g\001w\001h\000\000\000_\000a\002?\000e\000\000\000\000\001%\000\000\003C\003\147\005v\001\028\000\000\001\029\003\148\000\203\000\000\000\000\003\149\001w\000\000\000\152\002\247\003\150\002\193\000\000\000\000\002\197\000\000\004\026\000\000\003t\000\000\000\000\000\000\003u\002\252\000\000\001\183\000\000\000\000\000g\004\003\000\153\000\000\000_\000a\002D\000e\000\000\000\000\000\000\003\130\000\140\000\000\000\000\001i\004\008\003r\003\137\001j\004\t\004\027\001\189\003\131\000\203\004{\004\136\000\183\001g\000\000\001h\000\000\000\000\000_\001x\004\011\000\000\002\164\004\134\004H\002\238\000\000\000_\000\000\002\198\000g\002\164\000\000\002\199\001w\000\155\004\013\000\000\000\000\000\184\004I\001x\004h\000\185\000\000\000\000\000\000\004#\000\000\000\157\004(\000\000\004@\003\146\000\000\000\000\000\000\000\000\000\000\004\026\000\000\003t\005\159\000\000\000\000\003u\004\003\000\000\003T\000\000\000\140\000\000\000\000\001i\000\000\003\147\003\130\001j\000\000\000\000\003\148\004\008\003r\003\137\003\149\004\t\004\027\001\145\003\131\003\150\001g\004\156\001z\000\000\005\171\005t\005u\004\138\000_\000\000\004\011\001\166\002\164\004!\004H\000\000\000\000\001w\000\000\001\145\000\000\002\239\001x\000\138\000\000\000_\004\013\000\149\001\012\002\164\004I\000\000\004\137\001\168\000\000\000\000\000\000\004#\002\212\000\000\004(\003\025\004@\003\146\000\138\000\000\000\000\002\242\000\147\004\026\002\213\003t\001\015\000\000\0016\003u\000\000\000\140\000\000\000\000\001i\000\000\004\003\000\000\001j\003\147\003T\000\000\005v\003\027\003\148\000\000\003\130\001\012\003\149\002\245\005\237\004\008\000\000\003\150\000\140\004\t\004\027\000\000\003\131\000\141\000\000\003r\003\137\000\142\001\145\004\027\000\000\000\000\001w\001x\004\011\001\015\000\000\0016\000\000\000\140\000\000\000_\001\174\000\000\000\141\002\164\000\000\004\025\000\142\000\000\004\013\003$\000\000\000\000\004I\000\151\004\137\002\247\000\000\002\193\000\000\004#\002\197\005:\004(\000\000\004@\003\146\000_\000\000\004#\002\248\002\164\004(\000\000\004@\000\151\000\000\000\000\000\000\004\003\000\000\004\026\000\000\003t\000\000\003r\003s\003u\003\147\003\130\005\016\000\000\000\000\003\148\004\008\000\000\002\173\003\149\004\t\004\027\001\145\003\131\003\150\000\000\003r\003\137\000\000\000\000\003T\001x\000\000\000\000\000\000\004\011\001\176\000\140\004\027\005\004\000\000\002\198\000_\004\142\000\000\002\199\002\164\000\000\004\025\000\000\001g\004\013\001h\000\000\000\152\004I\000\000\004J\000\000\000\000\002\193\000\000\004#\002\197\000\140\004(\003t\004@\003\146\000\000\003u\000\000\005\015\000\000\000\000\000\152\000\153\000\000\000\000\004#\000\000\000\000\004(\004\026\004@\003t\000\000\000\000\000\000\003u\003\147\000\000\001\183\000\000\000\000\003\148\004\003\000\153\000\000\003\149\000\000\000\154\000\000\000\000\003\150\000\000\003\130\000\140\000\000\000\000\001i\004\008\003r\003\137\001j\004\t\004\027\002\238\003\131\005\020\000\000\002\198\000\183\004\142\000\155\002\199\000\000\000\000\000_\000\196\004\131\000\000\002\164\000\000\004\025\000\000\000\000\000\000\000\157\000\000\002\212\005\152\000\000\004\027\001w\000\155\004\013\000\000\000\000\000\184\004\030\004\133\002\213\000\185\000\000\000\000\000\000\004#\005\152\000\157\004(\000\000\004@\003\146\005\153\005t\005u\003\130\000\000\004\026\000\000\003t\000\000\000\000\000\000\003u\004\003\005<\000\000\003\131\000\000\005\153\005t\005u\004#\003\147\003\130\004(\000\000\004@\003\148\004\008\003r\003\137\003\149\004\t\004\027\000\138\003\131\003\150\000\000\000\147\000\000\002\239\000\000\005\022\000\000\000\000\000_\004\142\004\131\000\000\002\164\000_\004\025\000\000\000\000\000\000\000\000\000\000\002\212\002\247\001x\002\241\000\000\000\000\004\013\000\000\005v\002\242\004\030\004\133\002\213\000\000\000\000\002\254\000\000\004#\005h\000\000\004(\000\000\004@\003\146\000\000\005v\003\147\000\000\000\000\004\026\000\000\003t\000\000\000\000\000\140\003u\000\000\002\245\000\000\000\141\003\152\005f\004\003\000\142\000\000\003\147\005i\005t\005u\000\000\003\148\000\000\003\130\000\000\003\149\000\000\000_\004\008\000\000\003\150\005\190\004\t\004\027\000\000\003\131\006p\005\152\000\000\000\138\004\142\001\145\000\151\000\139\000\000\000\000\000\000\004\131\000\000\000\000\000\000\000\000\002\247\000\000\005\191\001\178\000\000\005\194\005t\005u\005\153\005t\005u\004\013\000\000\000\000\002\248\004\030\004\133\003r\003\137\000\000\006\015\000\000\004#\000\000\000\000\004(\006x\004@\003\146\005v\000\000\000\000\000\000\000_\000\000\005\165\000\000\002\164\004!\004H\000\000\004\003\001\"\006\016\000\140\006\019\005t\005u\000\000\000\141\003\147\003\130\005\163\000\142\000\138\003\148\004\008\001\027\001R\003\149\004\t\004\027\000\000\003\131\003\150\003r\003s\000\000\000\152\005v\000\000\000\000\005v\000\000\004\026\004\131\003t\000\000\000\000\000\000\003u\000\151\000\000\000\000\000\000\001W\000\000\000\000\000\000\000\000\000\153\004\013\000\000\000\000\000\000\004\030\004\133\003r\003\137\000\000\000_\000f\004#\000e\000\000\004(\000\000\004@\003\146\005v\001Y\000\140\000\203\000_\000\000\000\183\000\141\002\164\000\000\004\025\000\142\000\000\000\140\000\000\003t\000\000\000_\000\000\003u\000\000\003\147\000\000\000\000\000\000\000\000\003\148\000\000\000\000\000\155\003\149\000\000\000g\000\184\000\000\003\150\000\000\000\185\000\000\000\151\000\000\000\000\000\000\000\157\000\000\004\026\000\000\003t\000\000\000\000\000\152\003u\000_\000a\002\134\000e\000\000\001%\004\003\004/\000\000\000\000\001\028\000\000\001\029\005\208\000\203\000\000\003\130\000\000\000\000\005\178\000\153\004\008\003r\003\137\000\000\004\t\004\027\000\000\003\131\006~\000\000\006\167\001\"\004\142\000_\000a\002\140\000e\000_\000\000\004\011\000g\002\164\004!\004H\000\181\000\000\001\027\000\000\000\000\000_\000a\002\145\000e\006#\000\000\004\013\000\000\000\000\000\000\004I\000\000\004J\000\000\003\130\000\152\000\000\004#\000\155\000\000\004(\000\000\004@\003\146\000\000\000g\003\131\000\000\000\000\004\026\000\000\003t\000\157\000\000\000\000\003u\004\003\000\153\000\000\000\000\000\000\000g\000\000\000\000\000\000\003\147\003\130\000\000\000\000\000\000\003\148\004\008\000\000\000\000\003\149\004\t\004\027\000\000\003\131\003\150\005\152\000_\000\000\001\012\003r\003\133\000\000\000\000\000\000\000\000\004\131\004\151\003r\003\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\153\005t\005u\004\013\001\015\000_\0016\004\030\004\133\002\164\003\147\004H\000\000\000\000\004#\003r\003\137\004(\000\000\004@\003\146\000\000\000\138\001%\003\154\0047\000\149\004L\001\028\000\000\001\029\000_\000\203\000\000\000\000\002\164\000\000\004\025\000\140\004\003\003t\001\012\003\147\006\015\003u\001\"\004\026\003\148\003t\003\130\000\000\003\149\003u\005\223\004\008\000\000\003\150\000\000\004\t\004\027\001\027\003\131\000\000\000\000\005v\001\015\006\016\0016\006\019\005t\005u\000\000\004\026\004\011\003t\001\012\005\224\000\000\003u\000\140\005\227\005t\005u\000\000\000\141\000\000\000\000\000\000\000\142\004\013\000\000\001\012\000\000\004I\000\000\004J\000\000\000\000\000\000\001\015\004#\0016\000\000\004(\000\000\004@\003\146\003r\003\137\000\000\000_\001\014\000\000\000e\000\000\001\015\000\151\0016\000\000\004\024\000\138\000\000\002\166\000_\000\147\000\000\000\000\002\164\003\147\004\025\000\000\000\000\005v\003\148\000\000\000\000\000_\003\149\000\000\004\003\000\000\003\130\003\150\003@\005v\000\000\000\000\000\000\000\000\003\130\000\000\000g\000\000\003\131\004\008\000\000\000\138\000\000\004\t\004\027\000\149\003\131\000\000\000\000\004\026\004\003\003t\000\000\000\000\001%\003u\004\182\005\176\004\153\001\028\003\130\001\029\000\140\000\203\000\000\004\008\000\000\000\141\000\000\004\t\004\027\000\142\003\131\006g\004\013\001\192\000\000\000\000\004I\000\152\004\155\000\000\000\000\000\000\004\028\004#\000\000\000\000\004(\002\166\004@\003\146\000\000\000\000\000\000\000\000\000\000\000\000\000\140\000\151\004\013\000\153\000\000\000\141\004\030\004\031\001\194\000\142\003r\003\137\003@\004#\000\000\003\147\004(\000\000\004@\003\146\003\148\000\000\004\"\000\000\003\149\0061\000_\000\000\000\154\003\150\002\164\000\000\004\025\000\000\000\000\005\229\000\000\000\151\000\000\000\000\000\000\003\147\000h\000\000\004\003\0045\003\148\000\000\000\000\000\000\003\149\000\155\000\000\000\000\003\130\003\150\001\128\003r\003s\004\008\000\000\000\000\000\000\004\t\004\027\000\157\003\131\004\026\000\000\003t\000\000\001\012\000\000\003u\002\193\000\000\000\000\002\197\004\028\000\152\000\000\000\000\000\000\000\000\000\000\000\000\004:\003r\003\137\000\000\005\226\000\000\000\000\001I\004\013\001\015\000\201\0016\004\030\004\031\000\000\000\153\000\000\000_\004>\004#\000\000\002\164\004(\004\025\004@\003\146\000\000\005\224\000\140\000\152\003t\005\227\005t\005u\003u\000\202\000\000\000\203\000h\000\000\000\183\0045\000\000\006\015\000\000\000\140\000\000\003\147\006k\002\198\000\000\000\153\003\148\002\199\002\193\000\000\003\149\002\197\004\026\000\000\003t\003\150\000\000\000\155\003u\000\000\006\016\000\184\006\019\005t\005u\000\185\000\000\000\000\004\003\000\000\000\154\000\157\000\000\001G\000\000\000\000\004:\000\000\003\130\000\000\000\000\003r\003\137\004\008\000\000\000\000\000\000\004\t\004\027\005v\003\131\000\000\000\000\000\155\004>\000\000\005\152\000_\001\130\000\000\000\000\002\164\004\028\004\025\000\000\000\140\000\000\000\157\000\000\002\198\000\000\002\193\000\000\002\199\002\216\000\000\000\000\000\000\004\013\005\153\005t\005u\004\030\004\031\002\193\003\130\005v\002\197\000\000\004#\000\000\000\000\004(\000\000\004@\003\146\000\000\003\131\004\026\000\138\003t\000\000\002\212\000\139\003u\004\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\213\003\130\000\000\003\147\003r\003\137\004\008\000\000\003\148\000\000\004\t\004\027\003\149\003\131\000\140\000\000\000\000\003\150\002\198\004k\000_\000\000\002\199\000\000\002\164\004d\004\025\000\140\000\000\005v\000\000\002\198\000\000\000\000\000\000\002\199\000\000\000\000\000\000\000\000\000\000\004\013\000\140\000\000\000\000\004\030\004f\000\141\000\000\000\000\003\147\000\142\004#\000\000\002\212\004(\000\000\004@\003\146\002\193\000\000\004\026\002\197\003t\003\156\000\000\002\213\003u\000\000\002\247\000\000\000\000\000\000\000\000\000\000\005\190\000\000\004\003\0068\000\151\003\147\000\000\000\000\003\000\000\000\003\148\000\000\003\130\000_\003\149\003r\003\137\004\008\000\000\003\150\000\000\004\t\004\027\005\191\003\131\000\000\005\194\005t\005u\000\000\004c\000_\000\000\000\000\000\000\002\164\004d\004\025\000\000\000\000\000\000\002\238\002\212\000\000\000\000\002\198\000\000\000\000\000\000\002\199\006\015\000\000\004\013\000\000\002\213\002\212\004\030\004f\002\193\000\000\002\215\002\197\005\174\004#\000\000\000\000\004(\002\213\004@\003\146\000\000\000\000\004\026\006\016\003t\006\019\005t\005u\003u\004\003\001\"\000\000\000\152\000\000\000\000\000\000\000\000\000\000\000\000\003\130\005v\003\147\003r\003\137\004\008\001\027\003\148\000\000\004\t\004\027\003\149\003\131\000\000\000\000\000\153\003\150\004w\000\000\000_\000\000\000\000\000\000\002\164\004x\004\025\002\238\000\000\000\000\000\000\002\198\000\000\000\000\000\000\002\199\000\000\000\000\000\000\002\239\000\000\004\013\000\000\000\000\000\000\004\030\004z\005\245\002\247\000\000\000\000\005v\004#\000\000\000\000\004(\002\212\004@\003\146\002\244\000\000\004\026\003\002\003t\000\155\002\242\000\000\003u\002\213\000\000\005\246\005\249\005t\005u\000\000\000\000\000\000\004\003\000\171\000\000\003\147\000\000\000\000\000\000\000\000\003\148\000\000\003\130\000\000\003\149\003r\003\137\004\008\002\245\003\150\000\000\004\t\004\027\000\000\003\131\000\000\004\130\000\000\000\000\000\000\004u\000_\005\214\000\000\000\000\002\164\004d\004\025\002\239\000\000\000\000\001%\000\000\004\225\000\000\000\000\001\028\000\000\001\029\000\000\000\203\000\000\004\013\000\000\000\000\002\212\004\030\004f\003\025\000\000\005v\000\000\002\247\004#\002\242\000\000\004(\002\213\004@\003\146\000\000\000\000\004\026\000\000\003t\000\000\002\248\000\000\003u\004\003\000\000\005\190\006;\000\000\000\000\000\000\003\027\000\000\000\000\003\130\000\000\003\147\002\245\000\000\004\008\000\000\003\148\000\000\004\t\004\027\003\149\003\131\000\000\000\000\005\191\003\150\000\000\005\194\005t\005u\000\000\000\000\004\135\004\131\000\000\003r\003\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006t\000\000\000\000\004\013\003#\000_\005\190\004\030\004\133\002\164\002\247\004\025\000\000\000\000\004#\003r\003\137\004(\000\000\004@\003\146\000\000\000\000\000\000\002\248\000\000\006\128\000\000\000\000\005\191\000\000\000_\005\194\005t\005u\002\164\000\000\004\025\000\000\004\003\000\000\006D\003\147\006\015\000\000\005v\004\026\003\148\003t\003\130\000\000\003\149\003u\000\000\004\008\000\000\003\150\000\000\004\t\004\027\005\152\003\131\000\000\000\000\000\000\000\000\006\016\000\000\006\019\005t\005u\000\000\004\026\004\131\003t\000\000\000\000\000\000\003u\000\000\000\000\003r\003\137\005\153\005t\005u\000\000\005\152\000\000\004\013\005\152\000\000\000\000\004\030\004\133\000\000\005v\000_\000\000\000\000\004#\004\169\000\000\004(\000\000\004@\003\146\003r\003\137\000\000\005\153\005t\005u\005\153\005t\005u\000\000\000\000\006\131\000\000\000\000\000\000\000\000\000_\000\000\004\200\000\000\002\164\003\147\004\025\000\000\000\000\005v\003\148\000\000\000\000\000\000\003\149\004\203\004\003\003t\000\000\003\150\000\000\003u\000\000\000\000\005v\000\000\003\130\005\232\000\000\000\000\000\000\004\008\000\000\000\138\000\000\004\t\004\027\000\147\003\131\000\000\004\209\004\026\004\003\003t\000\000\000\000\000\000\003u\000\000\000_\006u\005v\003\130\000\000\005v\000\000\000\000\004\008\000\000\000\000\000\000\004\t\004\027\000\138\003\131\000\000\004\013\000\149\000\000\004\246\004\030\006w\003\142\000\000\001\181\000\000\006u\004#\006)\000\000\004(\000\000\004@\003\146\000\138\000\000\000\000\000\000\000\147\000\000\000\140\000\000\004\013\000\000\000\000\000\141\004\030\006w\005\152\000\142\000_\000\000\000\000\004#\000\000\003\147\004(\000\000\004@\003\146\003\148\000\000\000\000\000\000\003\149\006B\000\000\000\000\003\130\003\150\000\140\005\153\005t\005u\000\000\000\141\000\000\000\151\004\210\000\142\003\131\003\147\005\201\000\000\004\003\000\000\003\148\000\000\000\000\000\000\003\149\000\140\004\248\000\000\003\130\003\150\000\141\000\000\000\000\004\008\000\142\000\000\002\193\004\t\004\027\002\197\003\131\000\151\000\000\005\212\000\000\000\000\005\217\000\000\000\000\000\000\000\000\000\138\006u\004\213\000\000\000\147\004\249\000\000\004\236\003\146\000\000\000\000\000\151\000\000\000\000\000\000\000\000\000_\004\013\005v\000\000\000\000\004\030\006w\000\000\000\000\000\000\000\000\000\000\004#\000\000\003\147\004(\000\000\004@\003\146\003\148\000\138\000\000\000\152\003\149\000\139\000\000\002\238\000\000\003\150\000\000\002\198\000\000\005\152\000\000\002\199\000\000\000\197\000\198\000\200\000\201\003\147\000\140\000\000\000\000\000\153\003\148\000\141\000\000\000\000\003\149\000\142\000\000\000\152\000\000\003\150\005\153\005t\005u\000\000\000\138\000\000\000\000\000\000\000\147\000\202\000\000\000\203\000\000\000\000\000\183\000\000\000\000\000\000\000\152\000\153\000_\000\000\000\140\000\151\000\000\000\000\000\000\000\141\000\000\000\000\000\000\000\142\000\197\001n\000\200\000\201\000\000\000\155\000\000\000\000\000\153\000\184\000\000\000\000\000\154\000\185\000\000\000\000\000\000\000\000\000\000\000\157\000\000\001G\000\000\005\241\000\000\002\239\000\000\000\151\000\202\000\140\000\203\000\000\005v\000\183\000\141\000\155\000\000\000\138\000\142\000\000\003\139\000\147\002\212\003&\003'\003\020\000\000\003r\003s\000\157\000\000\002\242\000\000\000_\002\213\000\138\000\155\000\000\000\000\000\147\000\184\000\000\000\000\000\000\000\185\000\000\000\151\000\000\000\000\000\152\000\157\000_\001G\003\023\000\000\000\000\000\000\005\152\000\000\002\245\000\000\000\000\000\000\000\197\002\203\000\200\000\201\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\141\005\153\005t\005u\000\142\000\140\000\152\003t\000\000\003r\003\137\003u\000\202\000\140\000\203\000\000\000\000\000\183\000\141\000\000\000\000\000\000\000\142\000\000\002\247\000_\000\000\000\000\000\153\004\169\000\000\000\000\000\151\000\000\000\000\000\000\000\000\000\000\002\248\000\000\000\155\005\239\000\000\000\000\000\184\000\152\000\000\000\138\000\185\000\000\000\151\000\147\000\000\004\202\000\157\000\000\001G\000\000\000\000\000\197\003y\000\200\000\201\000_\000\000\005v\004\203\000\153\003t\000\000\000\000\000\000\003u\000\000\000\000\000\000\000\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\202\000\000\000\203\000\173\004\209\000\183\000\000\000\000\000\000\000\000\000\000\000\000\003r\003\137\000\000\000\000\000\000\000\140\000\000\000\000\000\000\003\130\000\141\000\152\000\000\000\000\000\142\000\000\000\155\000\000\000\000\000\000\000\184\003\131\003\252\005\017\000\185\000\197\004\005\000\200\000\201\000\152\000\157\000\000\001G\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\151\000\197\004%\000\200\000\201\000\000\000\000\000\000\000\000\000\153\000\000\000\202\000\000\000\203\000\000\002\238\000\183\003t\000\000\000\000\000\000\003u\000\000\000\000\000\000\000\000\000\000\000\000\003\130\000\202\000\000\000\203\006'\000\000\000\183\000\000\000\000\000\000\004\210\000\155\003\131\000\000\000\000\000\184\000\000\000\000\003\147\000\185\000\000\000\000\000\000\000\000\004\211\000\157\000\000\001G\000\000\000\155\000\000\000\000\003\158\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\157\000\138\001G\003r\003\137\000\139\000\000\000\152\004\213\000\000\000\000\004\218\000\000\004\236\003\146\000\000\003r\003\137\000\000\000\000\000\000\000\197\004\215\000\200\000\201\003\252\004]\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\000\003\147\004\003\003\252\004S\000\000\003\148\000\000\000\000\000\000\003\149\000\000\003\130\000\000\000\202\003\150\000\203\004\008\000\000\000\183\000\000\004\t\000\000\000\140\003\131\002\238\000\000\003t\000\141\000\000\000\000\003u\000\142\000\000\000\000\000\000\004\011\000\000\002\238\000\000\003t\000\138\000\155\000\000\003u\000\139\000\184\000\000\000\000\000\000\000\185\000\000\004\013\000\000\003r\003\137\000\157\000\000\001G\000\000\000\151\000\000\000\000\000\000\000\000\000\000\000\000\003r\003\137\003\146\000\000\000\000\000\000\000\000\000\000\000\000\003\252\003\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\252\004\007\003\147\003r\003\137\000\000\000\000\003\148\000\000\000\140\000\000\003\149\000\000\000\000\000\141\000\000\003\150\000\000\000\142\000\000\000\000\000\000\002\238\000\000\003t\003\252\004_\000\000\003u\004\003\002\193\000\000\000\000\002\197\000\000\002\238\000\000\003t\000\000\003\130\002\193\003u\004\003\002\197\004\008\000\000\000\151\000\000\004\t\000\152\000\000\003\131\003\130\000\000\000\000\000\000\000\000\004\008\000\000\000\000\002\238\004\t\003t\004\011\003\131\000\000\003u\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\004\011\000\000\000\000\004\013\000\000\000\000\000\000\000\000\000\000\003r\003\137\000\140\000\000\000\000\000\000\002\198\004\013\000\000\000\000\002\199\003\146\000\140\003r\003\137\000\000\002\198\000\000\000\000\000\000\002\199\000\000\003\252\005*\003\146\000\000\000\000\000\000\000\000\000\000\004\003\000\000\000\000\003\147\000\155\003\252\005,\000\000\003\148\000\152\003\130\000\000\003\149\004\003\000\000\004\008\003\147\003\150\000\175\004\t\000\000\003\148\003\131\003\130\000\000\003\149\000\000\002\238\004\008\003t\003\150\000\153\004\t\003u\004\011\003\131\000\000\000\000\004\003\000\000\002\238\000\000\003t\000\000\000\000\000\000\003u\004\011\003\130\000\000\004\013\000\000\000\138\004\008\000\000\000\000\000\147\004\t\000\000\000\000\003\131\000\000\000\000\004\013\000\000\000\000\000\000\003\146\000_\000\000\000\000\000\000\004\011\000\000\000\000\002\212\000\000\000\000\000\000\000\155\003\146\000\000\000\000\000\000\000\000\002\212\000\000\002\213\004\013\003\147\003r\003\137\000\000\000\177\003\148\000\000\000\000\002\213\003\149\000\000\000\000\000\000\003\147\003\150\000\000\003\146\000\000\003\148\000\000\000\140\000\000\003\149\003\252\005.\000\141\000\000\003\150\000\000\000\142\000\000\004\003\002\193\000\000\000\000\002\197\000\000\000\000\003\147\000\000\000\000\003\130\000\000\003\148\004\003\000\000\004\008\003\149\000\000\000\000\004\t\000\000\003\150\003\131\003\130\000\000\000\000\000\151\002\238\004\008\003t\000\000\000\000\004\t\003u\004\011\003\131\002\214\000\000\000\000\000\138\000\000\000\000\000\000\000\147\000\000\000\000\002\247\004\011\000\000\000\000\004\013\000\000\000\000\002\193\000\000\000_\002\197\000\000\000\140\000\000\003\004\000\000\002\198\004\013\000\000\000\000\002\199\003\146\000\000\000\000\000\000\000\000\000\138\000\000\000\000\000\000\000\147\000\000\000\000\000\000\003\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000_\003\147\000\000\000\000\000\000\000\000\003\148\000\000\000\140\000\000\003\149\000\000\000\000\000\141\003\147\003\150\000\152\000\142\000\000\003\148\000\000\000\000\000\140\003\149\003r\003s\002\198\000\000\003\150\000\000\002\199\000\000\004\003\001W\000\000\000\000\000\000\000\000\000\153\000\138\000\000\000\140\003\130\000\147\000\000\000\151\000\141\004\008\000\000\000\000\000\142\004\t\000\138\000\000\003\131\000_\000\147\000\000\001\201\000\000\000\203\000\000\000\000\000\183\000\000\000\000\004\011\000\000\000_\000\000\000\138\000\000\000\000\002\212\000\139\000\000\000\000\000\000\000\151\000\000\000\000\000\140\004\013\003t\000\000\002\213\000\155\003u\000\000\000\000\000\184\000\000\000\000\000\000\000\185\000\000\000\140\000\000\000\000\003\146\000\157\000\141\000\000\000\000\000\000\000\142\000\000\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\141\000\138\000\000\000\000\000\142\000\147\000\000\003\147\000\000\000\152\000\000\002\212\003\148\000\140\000\000\000\000\003\149\000_\000\141\000\151\000\000\003\150\000\142\002\213\000\000\000\000\001T\000\000\000\000\000\000\000\000\000\153\000\151\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\247\000\000\000\152\000\000\002\193\000\000\000\000\002\197\000\000\000\000\000\151\001\207\000\000\000\203\003\006\000\000\000\183\000\000\000\140\002\176\000\000\000\000\000\000\000\141\000\153\000\000\000\000\000\142\000\000\000\000\003\130\000\000\000\138\000\000\000\138\000\000\000\147\000\000\000\147\000\155\000\000\000\000\003\131\000\184\002\178\000\000\000\203\000\185\000\000\000\183\000\000\000\000\002\247\000\157\000\000\000\151\000\000\000\152\000\138\000\000\000\000\002\238\000\147\000\000\000\000\002\198\003\008\000\000\000\000\002\199\000\152\000\000\000\155\000\000\002\176\000\000\000\184\000\138\000\000\000\153\000\185\000\147\000\000\000\000\000\000\000\000\000\157\003b\000\152\000\140\000\000\000\140\000\153\000\000\000\141\000\000\000\141\000\000\000\142\002\195\000\142\000\203\000\000\000\000\000\183\000\000\000\000\000\000\000\000\003\147\000\153\000\179\003d\001\170\000\203\000\140\000\000\000\183\000\000\000\000\000\141\000\000\000\000\003\160\000\142\000\000\000\151\000\155\000\151\002\193\000\000\000\184\002\197\000\152\000\140\000\185\000\000\000\000\000\000\000\141\000\155\000\157\000\000\000\142\000\184\000\000\000\000\002\239\000\185\000\000\003b\000\000\000\151\000\000\000\157\000\153\000\000\000\000\000\155\000\000\000\000\000\000\000\000\000\000\002\212\003&\006z\003\020\000\000\000\000\000\000\000\151\000\187\002\242\000\000\003\182\002\213\000\203\002\193\000\000\000\183\002\197\000\000\000\000\000\000\002\193\002\238\000\000\002\197\000\000\002\198\000\000\000\000\000\000\002\199\003\023\000\000\000\000\000\000\000\000\000\000\002\245\000\000\000\155\000\152\000\000\000\152\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\000\000\000\000\182\003,\000\182\000\000\000\000\000\153\000\000\000\153\000\000\000\152\000\000\000\000\000\000\000\000\002\238\000\000\000\000\000\000\002\198\000\138\002\233\002\238\002\199\000\147\002\247\002\198\002\235\000\000\000\152\002\199\000\183\000\153\000\183\000\000\000\000\000\000\000\000\000\000\002\248\000\000\000\000\000\000\000\000\000\000\000\000\002\235\000\000\000\000\000\000\000\000\000\153\002\239\000\000\000\155\000\000\000\155\000\183\000\184\000\000\000\184\000\000\000\185\000\000\000\185\000\000\000\000\000\000\000\157\002\212\000\157\000\000\003\025\000\000\000\000\000\000\000\183\000\140\002\242\000\138\000\155\002\213\000\141\000\147\000\184\000\000\000\142\000\000\000\185\000\000\000\000\000\138\000\000\000\000\000\157\000\147\000\000\000\000\000\000\000\155\003\027\002\239\000\000\000\184\000\000\000\000\002\245\000\185\002\239\000\000\000\000\000\000\000\000\000\157\000\151\000\000\000\000\000\000\002\212\000\000\000\000\003\025\000\000\000\000\000\000\002\212\000\000\002\242\003\025\000\138\002\213\000\000\000\000\000\147\002\242\000\000\000\140\002\213\000\000\000\000\000\000\000\141\000\000\000\000\003\"\000\142\000\000\000\000\000\140\003\027\002\247\000\000\000\000\000\141\000\000\002\245\003\027\000\142\000\000\000\000\000\000\000\000\002\245\000\000\002\248\000\000\000\000\000\138\000\000\000\000\000\138\000\147\000\000\000\151\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003=\000\151\000\140\000\000\000\000\000\000\000\000\000\141\000\152\003\029\000\000\000\142\000\000\000\000\000\000\002\247\003 \000\000\000\000\000\000\000\000\000\000\002\247\000\000\000\000\002\235\000\000\000\000\000\138\002\248\000\153\000\000\000\147\000\000\000\000\000\000\002\248\000\000\000\000\000\151\000\140\000\000\000\000\000\140\000\000\000\141\000\138\000\000\000\141\000\142\000\147\000\000\000\142\000\000\002\193\000\183\000\000\002\197\000\000\003H\000\000\000\000\003\172\000\000\000\000\003\225\000\138\000\152\000\000\000\000\000\147\003P\000\000\000\000\000\000\000\000\000\000\000\151\000\155\000\152\000\151\000\000\000\184\000\000\002\235\000\140\000\185\000\000\000\000\000\153\000\141\000\000\000\157\000\000\000\142\000\000\002\235\000\000\000\000\000\000\000\000\000\153\000\000\000\140\000\000\000\000\000\000\003\227\000\141\003W\000\000\000\140\000\142\000\000\000\183\002\198\000\000\000\152\000\000\002\199\000\000\000\000\000\151\000\140\000\000\003\229\000\183\000\000\000\141\000\000\000\000\000\000\000\142\000\000\002\235\000\000\000\000\000\155\000\000\000\153\000\151\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\155\000\000\000\157\000\000\000\184\000\000\000\152\000\000\000\185\000\152\000\000\000\151\000\000\000\000\000\157\000\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\182\000\000\000\000\000\182\000\000\000\153\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\138\000\155\000\138\000\000\000\147\000\184\000\147\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\152\000\157\000\183\000\000\000\000\000\183\000\138\000\138\000\000\000\000\000\147\000\147\000\000\000\000\002\212\000\000\000\000\000\182\000\152\000\000\000\000\000\000\000\153\000\000\000\000\000\155\002\213\000\000\000\155\000\184\0043\000\000\000\184\000\185\000\000\000\182\000\185\000\138\000\152\000\157\000\153\000\139\000\157\000\140\000\000\000\140\000\000\000\183\000\141\000\000\000\141\000\000\000\142\000\000\000\142\002\235\000\000\000\138\000\000\000\000\000\153\000\147\000\000\000\140\000\140\000\183\000\000\000\000\000\141\000\141\000\155\000\000\000\142\000\142\000\184\000\138\000\000\000\000\000\185\000\147\000\151\000\000\000\151\002\193\000\157\000\183\002\197\000\000\000\155\000\000\000\000\000\000\000\184\000\000\000\140\002\247\000\185\000\000\000\000\000\141\000\151\000\151\000\157\000\142\000\000\000\000\000\000\000\000\000\155\003\n\000\000\000\000\000\184\000\000\000\140\000\000\000\185\000\000\000\000\000\141\000\000\000\000\000\157\000\142\000\000\000\000\000\138\000\000\000\000\000\000\000\147\000\151\000\140\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\140\000\142\000\000\000\000\002\198\000\000\000\000\000\000\002\199\000\000\004<\000\151\004D\000\000\000\000\000\000\000\000\000\000\000\152\000\000\000\152\000\000\002\193\000\000\000\000\002\197\000\000\000\000\000\000\000\151\004\174\004\186\000\000\000\000\000\000\002\235\000\000\002\235\000\152\000\152\000\153\000\000\000\153\000\140\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\000\000\142\000\000\000\000\002\235\002\235\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\183\000\000\000\183\000\000\000\152\000\000\000\138\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\140\000\151\004\191\000\000\002\198\000\000\000\183\000\183\002\199\000\155\000\152\000\155\000\153\000\184\000\000\000\184\000\000\000\185\000\000\000\185\004\198\000\000\000\000\000\157\002\212\000\157\000\000\002\235\000\152\000\155\000\155\000\000\000\153\000\184\000\184\000\000\002\213\000\185\000\185\000\000\000\000\000\000\000\138\000\157\000\157\002\235\000\147\000\000\000\000\000\140\000\153\000\000\000\000\000\000\000\141\000\000\000\000\000\183\000\142\000\000\000\155\000\138\000\000\000\000\000\000\000\147\000\000\000\000\000\138\000\000\000\000\004\207\000\147\000\000\000\189\000\183\000\000\000\000\000\000\000\152\000\155\000\138\006V\000\000\000\184\000\147\000\151\002\193\000\185\000\000\002\197\000\000\000\000\000\000\000\157\006\182\002\235\000\000\000\155\000\140\000\000\000\153\000\184\002\212\000\141\002\247\000\185\000\000\000\142\000\000\000\138\000\000\000\157\000\000\000\147\002\213\000\000\000\000\000\140\003\012\000\000\000\000\000\000\000\141\000\000\000\140\000\183\000\142\000\000\000\000\000\141\000\000\000\000\000\000\000\142\000\000\000\151\000\000\000\140\000\000\000\000\000\000\000\000\000\141\000\140\000\000\000\000\000\142\002\198\000\155\000\138\000\000\002\199\000\184\000\147\000\151\004\229\000\185\000\000\000\000\000\000\000\000\000\151\000\157\000\152\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\151\000\142\000\000\003r\003s\000\000\002\235\000\000\000\000\002\247\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\138\000\000\000\000\000\000\000\147\000\000\003\014\000\000\000\000\000\000\000\000\000\000\000\151\000\000\004\234\000\140\000\000\000\000\000\000\000\183\000\141\000\000\000\152\000\000\000\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\241\000\000\000\000\000\000\000\000\000\000\002\235\000\000\000\152\000\155\000\140\000\153\003t\000\184\000\000\000\152\003u\000\185\000\000\000\151\000\000\000\000\002\212\000\157\000\140\002\235\000\000\000\000\000\152\000\141\000\153\000\000\006W\000\142\002\213\000\000\000\183\000\153\000\000\000\138\000\000\000\000\000\000\000\147\000\000\006W\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\138\000\183\000\000\000\152\000\147\000\155\000\000\000\151\000\183\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\138\000\157\001K\000\183\000\147\000\000\000\155\000\153\000\000\000\000\000\184\000\138\000\000\000\155\000\185\000\147\000\000\000\184\000\000\000\000\000\157\000\185\000\000\000\000\000\140\000\152\000\155\000\157\000\000\000\141\000\184\002\247\000\183\000\142\000\185\002\193\000\000\000\000\002\197\000\140\000\157\003\130\001q\000\000\000\141\003\016\000\000\000\153\000\142\000\000\000\138\000\000\000\000\003\131\000\147\000\155\000\000\000\140\000\000\000\184\000\000\000\151\000\141\000\185\000\000\000\000\000\142\000\152\000\140\000\157\000\000\000\000\000\183\000\141\000\000\000\000\000\151\000\142\000\000\000\000\000\000\000\000\000\000\000\000\001\138\000\000\000\138\000\000\000\000\000\153\000\147\000\000\000\140\000\138\000\151\000\155\002\198\000\147\000\000\000\184\002\199\000\000\000\000\000\185\000\000\000\151\000\000\000\140\000\000\000\157\000\000\000\000\000\141\000\000\000\183\000\000\000\142\000\000\000\000\000\000\003\147\000\000\000\138\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000\155\000\000\000\152\000\000\000\184\000\000\000\140\000\151\000\185\000\000\000\000\000\141\000\000\000\140\000\157\000\142\000\000\000\152\000\141\001\185\000\000\000\000\000\142\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\155\000\152\000\000\000\000\000\000\000\153\000\000\000\000\000\140\000\151\000\000\000\000\000\152\000\141\000\000\000\183\000\151\000\142\002\159\000\000\000\000\000\000\000\000\000\153\002\212\000\000\000\000\000\000\000\000\002\206\000\183\000\000\000\000\000\000\000\153\000\000\002\213\000\000\000\155\000\000\000\000\000\000\000\184\000\000\000\000\000\151\000\185\000\000\000\183\000\000\000\000\000\152\000\157\000\155\000\000\000\000\000\138\000\184\000\138\000\183\000\147\000\185\000\147\000\000\000\000\000\000\000\000\000\157\002\221\000\000\000\000\000\155\000\000\000\153\000\000\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\155\000\000\000\000\000\157\000\184\000\152\000\000\000\000\000\185\000\000\000\000\000\000\000\152\000\000\000\157\000\138\000\183\000\000\000\000\000\147\000\000\000\000\002\223\002\247\000\000\000\000\000\000\000\153\000\000\003|\000\000\000\140\000\000\000\140\000\153\000\000\000\141\003\018\000\141\000\155\000\142\000\152\000\142\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\138\000\183\000\157\000\000\000\147\000\000\000\000\003\187\000\183\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\151\000\000\000\151\000\000\000\140\000\000\000\000\000\155\000\000\000\141\000\000\000\184\000\000\000\142\000\155\000\185\000\000\000\000\000\184\000\138\000\183\000\157\000\185\000\147\000\000\000\000\000\138\000\000\000\157\000\000\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\140\000\151\000\000\000\155\000\000\000\141\000\000\000\184\000\000\000\142\000\000\000\185\000\138\000\000\000\000\000\138\000\147\000\157\000\000\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\140\000\151\000\152\000\000\000\152\000\141\000\000\000\140\000\000\000\142\000\000\000\000\000\141\000\000\000\000\000\000\000\142\000\000\000\000\003\192\000\000\003\196\000\000\000\000\000\153\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\140\000\000\000\000\000\140\000\151\000\141\000\000\000\000\000\141\000\142\000\152\000\151\000\142\000\000\000\000\000\138\000\183\000\000\000\183\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\217\000\000\000\000\000\000\000\000\000\153\000\000\000\138\000\000\000\000\000\151\000\147\000\155\000\151\000\155\000\000\000\184\000\000\000\184\000\152\000\185\000\000\000\185\000\000\000\000\000\000\000\157\000\000\000\157\000\000\000\183\000\000\000\000\000\138\000\000\000\000\004\000\000\147\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\155\000\142\000\152\000\000\000\184\000\000\000\000\000\000\000\185\000\152\000\000\000\140\000\000\000\183\000\157\000\000\000\141\000\000\000\000\004\162\000\142\000\000\000\000\000\000\000\153\000\000\005\008\000\000\000\000\000\151\000\000\000\153\000\000\003r\003s\000\152\000\155\000\140\000\152\000\000\000\184\000\000\000\141\000\000\000\185\000\000\000\142\000\000\000\151\000\183\000\157\000\000\005\028\000\000\000\000\005\030\000\183\000\153\000\000\000\000\000\153\000\138\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\000\000\000\000\138\000\155\000\138\000\151\000\149\000\184\000\139\000\000\000\155\000\185\000\000\000\183\000\184\000\000\000\183\000\157\000\185\000\000\000\000\000\140\000\000\003t\000\157\003r\003s\003u\000\000\000\000\003r\003s\000\000\000\000\000\000\000\000\000\155\000\000\000\152\000\155\000\184\000\000\000\000\000\184\000\185\000\000\000\000\000\185\000\000\000\140\000\157\000\000\000\000\000\157\000\141\005 \000\000\000\152\000\142\000\140\000\153\000\140\000\000\000\000\000\141\000\000\000\141\000\000\000\142\000\000\000\142\000\000\000\000\000\000\005&\003r\003s\000\000\000\000\000\153\003r\003s\000\140\000\152\003t\000\183\000\151\000\140\003u\003t\000\000\003r\003s\003u\000\000\000\000\000\151\000\000\000\151\000\000\0054\000\000\000\000\000\000\000\183\000\153\000\000\000\000\000\155\000\000\000\000\000\000\000\184\000\000\003r\003s\000\185\000\000\000\000\000\000\000\000\000\000\000\157\000\000\003\130\000\000\000\000\000\155\000\000\000\000\000\183\000\184\000\140\000\000\003t\000\185\003\131\000\140\003u\003t\000\000\000\157\000\000\003u\000\000\000\000\000\000\000\000\000\140\000\000\003t\000\000\000\000\000\155\003u\000\000\000\000\000\184\000\000\000\000\000\000\000\185\000\000\000\000\000\152\000\000\000\000\000\157\000\000\000\000\000\000\000\140\000\000\003t\000\152\000\000\000\152\003u\000\000\000\000\000\000\005B\000\000\000\000\000\000\003\130\000\153\000\000\000\000\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\153\003\131\000\153\000\000\000\000\000\000\003\131\003\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\000\000\000\003\164\000\000\000\000\000\000\000\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\155\003\130\000\000\000\000\000\184\000\000\003\130\000\000\000\185\000\000\000\155\000\000\000\155\003\131\000\157\003\141\000\000\003\130\003\131\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\191\000\000\000\000\003\131\003\147\000\000\000\000\000\000\000\000\003\147\000\000\000\000\000\000\000\000\003\130\000\000\000\000\000\000\003\166\000\000\000\000\000\000\000\000\003\168\000\000\000\000\003\131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\147\000\000\000\000\000\000\000\000\003\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\170\000\000\003\147\000\000\000\000\003\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\180"))
+    ((16, "\000J\000\n\000\000\000\000\000\000\000S\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\235\001H\000\000\000\151\000\139\000\000\000\000\000\000\000m\000\000\000\030\000\146\000\000\000\000\001\024\000\000\001\160\000\000\000\000\000\000\001\214\000\000\002\210\000\000\000\000\000\000\000\000\002\218\000\000\002\248\004\022\000\000\000\000\004>\000\000\004\150\000\000\000\000\000\000\005\n\000\000\005\024\000\000\005\186\000\000\005\194\006\190\000\000\000\000\006\246\000\000\007\020\000\000\000w\000\000\000\000\0072\000\000\007:\000\000\000\000\007N\000\000\007v\000\000\000\000\000\000\b\218\000\000\000\130\t\018\000\196\000\000\000\000\000\000\000\000\006.\0001\003\204\000\000\000\000\t^\000\000\029\178\000\000\000n\000\134\t\130\000\000\000\000\011\142\000\000\007|\000\000\001\164\n\172\017\154\012\206\017\154\r\244\022\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012x\012\206\000\000\000\000\015.\000\000\023\254\000\000\000T\000\000\000\000\000\000\000\000\001F\000\000!R\000\000\000\000\000\132\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\006^\000\000\006\172\000\000\006\232\000\000\b\182\000\000\015\244\000\000\029$\000\000\"\166\000\000%\156\000\000&2\000\000)\164\000\000*\140\000\000\023F\000\000\000\000\000\000\000\000\000\000/N\000\0007\154\000\0007\176\000\000\001\234\000\000\000\000\020\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\204\tj\000\000\000\000\t\146\000\000\t\218\t\230\000\000\000\000\t\238\000\000\n\b\000\000\000\000\000\000\n\n\000\000\n\020\000\000\000\000\n0\000\000\n:\nB\000\000\000\000\nF\000\000\nP\000\000\000\000\000\000\nT\000\000\nV\000\000\nt\000\000\nv\nz\000\000\000\000\n|\000\000\n~\000\000\001\218\n\130\000\000\n\136\000\000\n\144\000\000\n\164\000\000\000\000\000\000\n\170\000\000\n\178\012,\000\000\n\192\000\000\000\238\030`\000\000\002\190\000\000\003\198\000\000\000\000\001\250\000\000\000\000\001?\005R\000\000\000\000\000\000\000\000\003B\000\000\003\254\000\000\004b\000\000\b\n\000\000\000\000\000\000\000\000\000\000\000\000\t\166\000\000\000\000\000\000\000\000\001\007\000\000\000\000\000\000\000\000\000\000\000\000\000\204\005 \014\130\000\000\n\202\000\000\n\204\015\030\000\000\n\208\000\000\000\000\004\b\000\000\000\000\000\000\000\000\000\000\026\156\000\0001\150\000\000\000\000\000\000\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\019\000\000\000\000\000\000\000\000\000\000\000\000\011<\022\144\000\000\016\016\000\000\019\236\000J\000\000\000\000\000\000\005\232\000\000!\184\000\000\000\0001\230\000\000\000\000\000\000\005\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\216\000\000\026\228\000\000\000\000\000\000\000\000\000\128\000\000\000\0002:\000\000\000\000\000\000\015N\000\222\000\000\000\000\000\000\000\000\000\000\000\000\000&\000\000\003\026\000\000\005B\000\000\007\018\000\000\t\214\000\000\012$\000\000\014\216\000\000\015z\000\000\018\006\000\000\0182\000\000\018\192\000\000*\144\000\000\003R\000\000\019R\000\000\021j\000\000\022p\000\000\000\000\000\000\000\000\000\000\000~2\202\000\000\001(\000\000\000\000\002\026\002n\000\000\002d\000\000\000\000\000\000\n\144\000\000\000\000\000\000'\224\000\000\000\000\000\000\000\000\000\000(\182\000\000\000\000\000\000\000\000\000\000\000\000\001\202\000\000\000\000\000\000\n\220\016\184\000\000\n\226\000\000\000\000\000\000\000\000\000\000\n\228\000\000\000\000\001\t\004\250\000\000\005\206\000\000\000\000\000\000\002R\000\000\012f\002\248\n\238\000\000\000\000\n\246\000\000\011\000\011\004\000\000\000\000\011\020\000\000\011\022\000\000\000\000\000\000\011\024\000\000\011\030\000\000\000\000\011*\000\000\011.\0114\000\000\000\000\011@\000\000\011L\000\000\000\000\000\000\011P\000\000\011T\000\000\011Z\000\000\011^\011b\000\000\000\000\011p\000\000\011~\000\000\006\244\011\134\000\000\011\144\000\000\011\148\000\000\011\152\000\000\000\000\000\000\011\154\000\000\003b\000\000\000\000\011\158\016\196\000\000\011\170\000\000\000\000\000\030\000\000\000\000\0002\000\000\000\000\000\000\000\000\000\000\007\144\018\168\000\000\011\176\000\000\011\180\019\002\000\000\011\190\000\000\000\000\012\204\011\198\000\000\000\000\011\212\000\000\011\226\011\228\000\000\000\000\011\236\000\000\011\248\000\000\000\000\000\000\012\002\000\000\012\006\000\000\000\000\012\b\000\000\012\014\012\016\000\000\000\000\012\018\000\000\012\020\000\000\000\000\000\000\012\030\000\000\012.\000\000\0120\000\000\0122\012:\000\000\000\000\012<\000\000\012>\000\000\007\154\012@\000\000\012D\000\000\012F\000\000\012V\000\000\000\000\000\000\012Z\000\000\012\\\024\130\000\000\012j\000\000\000\000\007\156\024\198\000\000\012n\000\000\012\128\024\222\000\000\012\130\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\232\000\000$\184\000\0003\012\000\000\000\000\006\158\000\000\000\000\000\000\007\164\005^\000\000\000\000*\192\004H\000\000\003\184\020D\000\000\000\000(\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0124(\248\000\000\r\136\000\000\028\236\024\150)f\000\000\028n\000\000\000\000\000\000\b\000\000\000\"^\000\000\000\0003\"\000\000\000\000\000\000\b\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0003p\000\0003\184\000\000\000\000\000\000\"@\b\142\000\000\000\000\000\000*\230\000\000\000\000\000\000\000\000\b\176\000\000\000\000\000\000\021~\000\000\000\000\029\184\000\000\001\220\000\000\000\000\000\000\005\"\000\000\017\018\000\000\020\222\000\000\027\234\000\000\029\006\000\000&\226\000\000(j\000\000(\210\000\000-\224\000\000/\170\000\0000H\000\0001h\000\0003R\000\0005\128\000\000\000\000\000\000\n~\000\000\018\248\030L\000\000+N\r\218+\176\000\000\000\000+\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004$\000\000\000\000\000\000\000\000\005\242\000\000\005\132\000\000\000\000\011X\000\000\000\000\000\000,,\000\000\000\000\000\000\000\000\000\000\0176\000\000\000\000\000\000\000\000,\162\000\000\000\000\000\000\000\000\003\248\012p\000\000,\186\000\000\000\000\000\000\000\000\r\012\000\000-\006\000\000\000\000\000\000\000\000\003\154\000\000\006\202\000\000\012\208\004\018)\128\000\000\000\000\000\000\005\234\000\000\000\000\000\000\000\000\000\000\000\000\015\182)\128\000\000\017\\\000\000\025\134\n\222\000\000\000\000\000\000\b\204\000\000\"\244\000\000\000\0003\198\000\000\000\000\000\000\b\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\142\000\0007\150\000\000\000\000\000\000\003\142\000\000\000\000\000\000\000\000\000\000\000\000\021\020\000\000\023\226\000\000\027\200\000\000#\138\000\000)H\000\0002\030\000\0007J\000\0007\196\000\0007\206\000\0008(\000\0008H\000\000-R\000\000\002\238\000\0008v\000\0008\140\000\0008\192\000\000)\254\000\000\000\000\000\0004\000\000\000\000\000\000\000\000^\000\0004\210\000\000\000\000\000\0004\214\000\000\000\000\000\030\000\000\025\150\000!\001X\000\000\002N\000\000\r$\001\228\007n\000\000\000\000\000\000\000\000\000\000\000\000\000\0005$\000\000%\160\0006\b\254\000\000\000\000\000\000-X\000\000-\172\000\000-\208\000\000%\186&L\001.\004R\t\002\000\000\000\000\000\000\0056\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005l\000\000\000\000\000\000\000\000#v\000\000&f\000\000\000\000\000\000\000\000\000\000\000\000\r\196\000\000\000\000\002\220\000\000\000\000\000\000\025\202\005\016\000\000\026\130\000\000\000\000\r\012\000\000\006\228\000\000\000\000\014p\000\000\027j\000\000\000\000#\154\000\000\000\000\000\000\n\136\000\000\000\000\005\180\000\000\000\000\025`\000\000\000\000\000\000-\248\000\000\000\000\000\000\029\210\000\000\000\000\000\000\000\000.\232\000\000\000\000\000\000\000\000\004~\014 \000\000.\236\000\000\000\000\000\000\000\000\000\000\000\000\015\016\000\000\000\000\007\152\000\000\016\024\000\000\n\136\000\000\000\000\004:\004\198\000\000\006 \000\000\000\000\000\000\000\000\003\142\000\000&\152\000\000\028\004\004\168\028\176\000\000\004\180\000\000\016R\000\000\016\252\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\030\029J\005:\029\246\000\000\000\000\000\000\006x\000\000\017\240\000\000\b\142\000\000\000\000\026X\007\160\030\144\000\000\007\220\000\000\018\144\031<\000\000\000\000\019<\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\224\b,\000\000\b\230\000\000\000\000\000\000\000\000\bl\000\000\019\220\000\000\000\000\000\000\00745\180\000\000\000\000\000\000 \188\000\000\000\000\000\000\000\000\000\000\007\224\006P\000\000\000\000/\016\000\000\000\000\000\127\000\000\006\138\000\000\000\000\030l\000\000\000\000\000\000/\018\000\000\000\000\000\000\000\000/v\000\000\000\000\bj\006\166\000\000\000\000/\154\000\000\000\000\b\250$\004\000\000\007,\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$P\000\000\000\000\000\000\001\144\000\000\000\000\007b\000\000\000\000\030\170\000\000\000\000\000\0000\170\000\000\000\000\000\000\000\0001\014\000\000\000\000\t\196\007\246\000\000\000\00014\000\000\000\000\t\002\000\000\000\000\000\000\000\000\003\142\005\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\228\000\000\020\154\000\000\000\000\000\0005\194\000\000\b\208\000\000\000\000\000\000\006\136\000\000\019\254\000\000\000\000\004\134\021:\000\000\021\230\000\000\000\000\000\000\006P\000\0005\246\007\1325\252\000\0006\134\000\000\000\000\000\000\007\224\000\0006\172\b\018\000\000\000\000'<\b\226'V\000\000(,\000\000\000\000\000\000\t:\000\0006\224\t^\000\000\000\000\rZ\tb\019N\000\000\020\208\000\000\000\000\000\000\td\000\0007\130\tz\000\000\000\000\000\000\000\026\000\000\000\000\000\000\002\154\000\000\000\000\000\000\000\000\000\000\000\000\b\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023,\000\000\000\000\005f\000\000\000\000\r@\000\000\000\000\000\000\000\000\n\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r@\000\000\000\000\r\028\000\000\r.\000\000\000\000\004r\000\000\007\158\012\218\001V\000\000\000\000\003\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\198\001\138\000\000\000\000\000@\000\000\000\000\000\000\017\238\000\000\000\000\021\224\023\002\000\000\000\000\000\000\000\000\027t\028\142\000\135\000\000\000\000\000\000 \146\000\000\000\000\000\000\000\000\000\000\000\000\002\132\000\000\000\000\000\206\000\000\000\000\012\160\000\000\000\000\022\252\000\000\000\000\t\244\000\000\000g\000\000\000\000\000\000\000\000\b\020 \206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023L!\148\000\000\000\000\000\000\000\000!\228\000\000\000\000\025\222\000\000\r\\\000\000\000\000\000\000\027\210\000\000\003\026\000\000\000\000\000\000\031\134\000\000\000\000\"~\000\000\000\000\016\226#\134\019\134\000\000#\170\000\000\000\000\000\000\000\000\r\030\000\000\000\000\000\000\000Y\000\000\000\028\012\244\004\030\000\000\000\000\000\000\007\166\004\012\000\000\000\000\000\000\000\000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t$\000\000\000\000\002\218\000\000\000\029\rv\007\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\198\000\000\000\000 0$N\000\000\000\000\000\000\000\000$\228\000\000\000\000\005>\000\000\b\186\011\154\000\000\028\028\000\000\000\000\000\000\000\000\000\000\000\002\030\000\000\000\000\000\030\170\000\000\000\000\000\000\000\000 T\000\000 \140\000\000\000\000\000\000\000\000\tF\000\000\000\000\000\000\003\210\000\000\000\000\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\0001B\000\000\000\000\000\000\003\132\000\000\000\000\000\000\000\000\000\000\000\004\001\172\003:\004\220\000\000\005\242\tv\t\134\t\152\000\000\000\000\000\000\000\000\000\000\000\000\005\138\022\134\000\000 \004\t\184\000\000\000\000\n\028\000\000\023\130\000\000*T\000\000\000\000\005\224\024\"\000\000 8\000\000\006\148 \240\000\000\000\000\000\000\tB\005\242\000\000\000\000\000\000\000\000\006b\000\000\007\148\000\000\006\204\t\022\000\000\000\000\000\000\003B\000\000\003\254\000\000\b\198\000\000\000\000\012\130\000\000\000\000\000\000\000\000\tz\000\000\000\000\n\250\000\000\024\206\000\000\025h\r2\000\000\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000\0001\\\000\000\006\168\000\000\000\000\000\000\000\000\000\000\000\252\000\000\n2\005\188\011\026\000\000\002\144\011\198\000\000\n`\000\000\002\180\000\000\003\132\000\000\004\140\000\000\025h\000\000\000\000\000\000\000\000\000\000\005,\000\000\n\204\000\000\006 \000\000\025h\r\152\000\000\003\b\000\000\r\148\003\012\000\000\t\188\000\000\n\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n^\000\000\nb\000\000\000\000\000\000\012|\000\000\000\000\000\000\000\000\000\000\r\156\012\136\000\000\000\000\012\178\000\000\000\000\012\152\t\220\r\222\000\000\r\226\000\000\000\000\005\192\002@\000\000\012\194\000\000\000\000\012\250\000\000\000\000\000\000\000\000\000\000\000\000\r\202\012\180\000\000\000\000\000\000\012\218\012\190\n&\t\000\012\230\r\028\000\000\000\000\012\214\n:\n\014\012\248\rB\000\000\000\000\000H\014\020\000\000\014\022\000\000\0148\000\000\000\000\014\026\000\000\000\000\014\028\000\000\000\000\000\000\000\000\014$\000\000\014L\000\000\000\000\000\000\014N\000\000\000\000\000\000\014Z\000\000\000\000\000\000"), (16, "\003z\003\145\0011\006\006\005\182\005\127\005\128\001j\000\007\001k\003H\005\215\005\216\000\018\000J\000J\000`\006'\003z\003\145\002\170\004j\004R\006@\001\239\006\149\006\004\006\007\005\127\005\128\0013\006\150\000\005\002B\000`\001j\002;\001k\006\151\000\017\004#\005\217\001\241\003z\003\145\006\024\002;\006\029\006(\000J\006)\005\218\005P\001j\000\004\001k\002?\004$\000\139\003|\003\213\003\214\000\140\003}\000\141\004^\002=\001l\005\129\005\b\006\030\001m\006!\005\127\005\128\004$\005\183\003|\000\005\006*\005\166\003}\000\139\000\139\006\193\006\194\000\150\000\140\002>\006+\000\025\005\129\000\141\0012\007R\001l\000\024\000`\002>\001m\002\244\001z\003|\005\164\005\127\005\128\003}\006H\006\025\007S\000\141\000\028\004\153\001l\003\150\000\141\001\186\001m\006\026\006\027\000\142\0012\000i\006\153\000\143\003I\000K\003\250\000J\001z\000`\000b\001\230\000f\001:\000`\005\129\006K\006\198\000\141\000\141\006\154\003z\003\145\000\142\000\142\005\133\001z\000\143\000\143\004\r\000`\000\152\004d\001\016\006\207\005\195\003\150\000`\003\252\003\138\001\222\006\151\006\208\004#\004\018\004\199\005\129\004\r\004\019\004%\000h\003\139\004\155\004x\001E\000\152\000\152\003\138\001{\000 \005\134\001\191\004\018\004f\003\213\003\214\004\019\004%\006\155\003\139\005\014\000h\004\r\000\r\006i\000`\001\186\006\156\004$\004\023\003|\006\181\003\138\004S\003}\004r\001{\004\018\001\143\006\227\004-\004\019\001\193\004\137\003\139\004J\003\154\004\023\000\016\000\017\005\148\004(\006\183\000J\001{\001j\004f\001\208\004-\000\153\001\217\006\185\002M\004J\003\154\000J\000\139\000\031\003\155\000i\000\150\006N\004\023\003\156\005\163\000`\001\128\003\157\000\b\006s\002@\000\154\003\158\000\153\000\153\001\146\003\155\003z\003\145\003\154\000\139\003\156\006\228\005\t\000\150\003\157\001\191\005\164\005\127\005\128\003\158\001\144\003H\000`\001\148\000\154\000\154\002\170\004j\004R\005\135\003\155\000\141\001\220\000`\001l\003\156\005\011\001\153\001m\003\157\004\r\001|\000\141\001\194\003\158\000\206\001\192\000\142\001T\000\155\003\138\000\143\001\015\000\"\005\149\004\018\003\213\003\214\000J\004\019\004%\006\229\003\139\004$\003\216\003|\000\141\001\144\001z\003}\006\156\000\142\000\156\000\156\006\231\000\143\001\018\000\197\0019\000\152\005\129\005\193\001\218\000\206\003\250\007\026\000\158\000\160\006a\006b\004\023\000`\003z\003\145\004(\006\233\000\145\001\018\001H\0019\001%\004-\000`\000\152\006\235\006f\004J\003\154\000`\000\005\003z\003\145\006\151\006\213\004R\001\030\003\253\003\254\004\000\004y\003\150\000$\001\186\005\192\005p\006@\000`\003\213\003\214\003\155\006\151\006\213\004R\000i\003\156\002B\004?\001\197\003\157\003z\003{\001\219\001\234\003\158\000\206\002\252\001{\005q\000(\004$\0029\003|\005t\005\127\005\128\003}\004\r\000\153\006~\006 \002B\001j\006i\001k\005\152\006\224\003\138\004$\001\199\003|\000\254\004\018\000J\003}\001\197\004\019\004%\004\242\003\139\000\154\004{\000\153\006\030\006\218\006!\005\127\005\128\003\215\005\167\001j\004f\001k\006u\000`\000\206\007)\000\141\006s\003|\002\251\006F\001\242\003}\000\154\000\155\001\198\004\023\005\215\005\216\007*\004S\007\004\004r\000`\003z\003\145\005\129\004-\000\141\001\241\004\137\001l\004J\003\154\001(\001m\0014\000\156\000\155\001\031\000`\001 \000\157\000\206\006\151\006\213\004R\005\239\000J\006P\002\199\000\158\004\r\002\225\001\218\003\155\000\141\005\218\005\129\001l\003\156\000\156\003\138\001m\003\157\001z\000\196\004\018\004\027\003\158\004\r\004\019\004%\006\219\003\139\000\158\000`\000b\000c\000f\003\138\004$\006\156\003|\000*\004\018\004\021\003}\000/\004\019\004%\006\219\003\139\001z\000i\003z\003\145\006\220\001:\001\196\006\156\000\206\004\023\0003\004\021\005\151\004S\000\141\006\221\003\138\005\193\002\204\000\206\004-\000J\002\205\006\223\000h\004J\003\154\004\023\003\139\002\199\0021\004S\002\203\006\221\006\016\005\196\005\130\006k\004-\001\191\006l\006\223\005\148\004J\003\154\0017\003U\0037\003\155\000J\001{\0072\002M\003\156\000J\006p\006\017\003\157\000`\000\141\006\020\003|\003\158\003z\003\145\003}\003\155\0010\000J\007\007\003\153\003\156\001:\003\184\006}\003\157\005\144\002M\001{\000`\003\158\004\r\006\017\006\151\006\213\004R\002\244\006\\\006]\005\022\002\204\003\138\003z\003\145\002\205\003\155\004\018\005\149\004l\005\142\004\019\004%\006\219\003\139\004l\005\145\005\127\005\128\006u\003\158\000\206\006\156\006i\004K\004`\004\021\003\150\002\218\001\148\000`\004$\004a\003|\006s\001\177\001%\003}\005\149\001\194\002\219\000\206\004\023\001\155\000i\000`\004S\006\222\006\221\002\199\004 \001\030\002\203\004-\003z\003\145\006\223\001\148\004J\003\154\002\244\004!\003|\004c\0002\001j\003}\001k\001\015\006@\000`\001\151\001+\003\138\006\151\006\213\004R\000i\006\018\002B\005\129\003\155\004~\002\245\0005\003\139\003\156\003\247\001\021\000`\003\157\000i\001\018\006\029\0019\003\158\005\024\003\152\003\213\003\214\002\218\003.\0032\003\028\006\018\000J\000\141\005{\005\"\002\248\002\204\004$\002\219\003|\002\205\002\172\006\030\003}\006!\005\127\005\128\001F\000\141\005|\004\r\001l\005$\006\230\0007\001m\003\154\003\031\000J\005\135\003\138\0038\000J\002\251\003\248\004\018\006\021\003\213\003\214\004\019\004%\006\219\003\139\006\210\006\n\003z\003{\000`\003\155\004\r\006\156\000J\001\029\003\156\004\021\001z\001(\003\157\001)\003\138\004t\001\031\003\158\001 \004\018\000\206\004o\001\030\004\019\006x\004\023\003\139\003z\003\145\004S\000J\006\221\002\253\005\129\006A\005\r\004-\000;\004\021\006\223\002\172\004J\003\154\000`\000=\006t\002\254\006\151\006\213\004R\000`\006\225\003\249\001\228\004\023\004\r\000J\000\141\000\139\003|\002\218\003H\000\140\003}\003\155\003\138\000J\003H\001?\003\156\004\018\003\154\002\219\003\157\004\019\004%\006\219\003\139\003\158\006u\006\128\000\206\003\213\003\214\004$\006\156\003|\004\128\001{\004\021\003}\000h\004~\003\155\001\236\001R\000\206\000\139\003\156\000i\006\234\000\140\003\157\003\248\007\027\004\023\000`\003\158\000J\004S\002\170\006\221\003z\003\145\001\197\000\141\004-\000\141\000i\006\223\000\142\004J\003\154\006\142\000\143\000?\004a\000\139\000`\000C\002M\000\140\002\170\004j\004R\004'\001\031\000J\001 \006D\000\206\002\253\000i\002\173\003\155\001\199\004!\003\\\001j\003\156\001k\000J\000\152\003\157\000\141\003\000\001\148\004b\003\158\000\142\003\138\0039\003>\000\143\006\201\003z\003\145\006\202\001o\004$\001\157\003|\003\139\000i\007\"\003}\003I\004\r\001x\000i\000\004\000`\004?\006|\000\141\004\180\0046\003\138\005%\000\142\000J\000\152\004\018\000\143\003z\003\145\004\019\004%\006\219\003\139\001\238\001j\000\206\001\129\000\005\000\141\005$\006\156\001l\005\005\000`\004\021\001m\006\147\002\170\004j\004R\003N\000J\006\206\000i\000\152\004\214\004\242\003|\004X\005\025\004\023\003}\000`\000\153\004S\006\158\006\221\003c\003R\004!\000`\004-\003\144\004\139\006\223\001z\004J\003\154\000J\004\131\004\220\001\018\000i\0019\004$\000\154\003|\005\011\000B\004\134\003}\000\141\006\169\004%\001l\004\r\000i\004\182\001m\003\155\000`\000J\000\153\004\139\003\156\003\138\000J\000J\003\157\006i\004\018\002\171\006\017\003\158\004\019\004%\000E\003\139\005\017\004x\004\136\000`\003z\003\145\000\154\001\134\004\190\005\026\001z\004\021\006\172\000G\000\153\000\156\004-\002$\005\155\0042\000`\004J\004\206\004\181\002\170\004j\004R\004\023\000L\000\162\004\149\004S\000N\004r\000J\001{\000\154\005\024\004-\000J\003\138\0042\000Q\004J\003\154\000i\004\164\005\214\005\127\005\128\004\221\001:\003\139\002\199\000\156\005\156\002\203\004!\005,\004\r\004\142\004$\000S\003|\004\222\006\170\003\155\003}\000\164\003\138\001%\003\156\000i\000\139\004\018\003\157\005.\000\140\004\019\004%\003\158\003\139\004v\004x\000\156\001\030\003z\003\145\001{\004\215\006$\004\224\004\205\004\021\004\229\002G\004\247\003\154\000\166\001\209\002}\002\148\000`\001\148\005/\006\023\002\170\004j\004R\004\023\002\244\005\129\001\137\004S\002\204\004r\004\233\001\159\002\205\003\155\004-\000J\005.\0042\003\156\004J\003\154\000J\003\157\0052\000\141\005n\005o\003\158\001\147\000\142\006\175\000`\006\176\000\143\006\165\000J\006\166\004$\000\206\003|\000i\005.\003\155\003}\003;\002\207\003T\003\156\004\r\004\134\001\148\003\157\006\029\000`\000J\001\149\003\158\006s\003\138\001\150\000J\000\152\000J\004\018\001\151\003z\003\145\004\019\004%\000\139\003\139\004\157\004x\000\148\004\187\006\030\004\204\006!\005\127\005\128\004\135\000`\004\021\006x\004\249\002\170\004j\004R\001'\004\158\002\245\006x\004\158\001\031\002\171\001 \006X\000\206\004\023\006\164\006x\004\254\004S\000`\004r\004\254\006\132\002\218\003\027\004-\003\028\001j\0042\001k\004J\003\154\002\248\004!\001:\002\219\004\160\006\171\004$\004\159\003|\005:\000\141\002\216\003}\007.\004\r\000\142\005\000\002\243\000W\000\143\004\255\003\155\003\031\000\153\003\138\005\129\003\156\005<\002\251\004\018\003\157\003\127\001\215\004\019\004%\003\158\003\139\005\021\004x\005\204\006\135\003z\003\145\004\248\005~\000\154\001\233\000\152\004\021\006\252\003\136\004!\000\141\005=\001%\001l\003\231\000`\003\246\001m\005|\006\151\005\202\004#\004\023\005\205\005\127\005\128\004S\001\030\004r\005<\002\253\005@\006Z\004-\005H\005K\0042\002\199\004J\003\154\002\203\007\"\000e\006\210\002\254\005N\000\139\001z\000\208\005.\000\140\000\156\005J\005J\006\170\006\252\004$\004\r\003|\006t\000\139\003\155\003}\005.\000\148\000\168\003\156\003\138\000\211\006\165\003\157\006\166\004\018\000\206\006\226\003\158\004\019\004%\002\172\003\139\006\179\004x\007\024\000\153\006{\003z\003{\005\129\006\252\006,\006\252\004\021\006z\006\152\002\244\003T\006\216\006\210\002\204\003H\000\185\006y\002\205\000\141\000\215\000\154\0075\004\023\000\142\006\182\000\214\004S\000\143\004r\000\217\003z\003\145\000\141\004-\007-\004!\0042\000\142\004J\003\154\001{\000\143\000\219\000\223\0074\000\186\000`\001j\000\225\001\127\006\151\001(\004#\001.\007\003\000\152\001\031\000\141\001 \003|\000\206\003\155\000\228\003}\004\r\006\232\003\156\000\232\000\156\000\152\003\157\000\231\000\187\000\234\003\138\003\158\000\188\000`\000\236\004\018\000\240\000\242\000\158\004\019\004%\006\212\003\139\004$\000\139\003|\001\203\007\"\001\214\003}\006\156\002\245\000\244\000\248\006\215\000\247\000\250\000\252\006\253\000\255\000\141\006\211\001\001\001l\001\148\007#\001\003\001m\002\218\003\030\004\023\003\028\003z\003\145\004(\006\217\001\005\002\248\001\161\001\t\002\219\004-\000i\001I\006\223\004?\004J\003\154\000`\000\153\001\014\006\255\006\151\007\001\004#\001>\001D\001z\001C\003\031\001%\000\141\007#\000\153\001\227\002\251\000\142\001\226\001\232\003\155\000\143\000\154\007#\001\246\003\156\001\030\003\138\001\249\003\157\001j\001\188\001k\001\253\003\158\001\252\000\154\004D\002\199\003\139\004$\002\224\003|\001\255\002\001\002\005\003}\004\r\002\007\000\152\000`\000b\001\012\000f\002\n\004H\002\014\003\138\006\214\002\r\002\253\000\186\004\018\003z\003\145\002\016\004\019\004%\006\212\003\139\001\202\002\018\000\139\002\022\002\254\002\024\001Y\006\156\002\026\000`\002\030\006\215\002\029\002\170\000\156\004#\001{\000\141\000\187\002 \001l\000h\000\188\000`\001m\000\141\002\"\004\023\000\158\002\204\002%\004(\006\217\002\205\002\172\002'\003\140\002)\004-\002+\002/\006\223\0028\004J\003\154\000\139\003z\003\194\0027\000\148\004$\002F\003|\002L\001z\000J\003}\000\153\002K\000\141\002\143\000`\002O\004\r\000\142\001(\003\155\003A\000\143\002R\001\031\003\156\001 \003\138\000\206\003\157\002V\002U\004\018\000\154\003\158\002X\004\019\004%\006\212\003\139\005\029\002Z\003z\003\145\004\152\006\172\002^\006\156\002`\002c\000\152\006\215\002g\002f\002i\002k\000\141\000\141\000`\003|\002o\000\142\002\170\003}\004#\000\143\002\172\004\023\002q\002s\002w\004(\006\217\005\141\002v\002y\002{\002~\004-\002\128\002\130\006\223\002\218\004J\003\154\000`\001{\000J\002\132\002\170\002\136\002\142\002\199\000\152\002\219\002\223\005\142\004\r\002\141\004$\002\147\003|\005\145\005\127\005\128\003}\003\155\003\138\001\015\002\153\002\152\003\156\004\018\005y\005\161\003\157\004\019\004%\005\140\003\139\003\158\000i\003z\003\145\005\154\005\198\003\\\005\233\000\153\006\002\004\028\004\141\001\018\002\199\0019\004\150\002\203\006\012\000`\004\152\006&\006\191\002\170\004\030\004#\006\237\001j\004\023\001\129\000\141\000\154\004(\004\143\002\204\001\148\006\241\007\005\002\205\004-\007\011\003\138\0042\007\012\004J\003\154\003V\005\129\007\017\001\163\006\174\007\018\000\153\003\139\006\165\007\023\006\166\007\022\000\206\007\030\004$\007 \003|\007&\003Z\007'\003}\003\155\007+\001W\007,\002\244\003\156\004\r\000\154\002\204\003\157\007/\0070\002\205\000i\003\158\0073\003\138\000\141\002\172\0076\001l\004\018\003z\003\145\001m\004\019\004%\001\200\003\139\000\206\0077\004*\000\186\007H\007=\007F\007B\007E\000`\000J\004\141\007N\002\170\004+\004R\007L\007P\000`\000b\001<\000f\001\134\007U\004%\001z\000\156\004\023\003]\000\000\000\187\004(\004\143\000\000\000\188\000\000\000\000\002\218\004-\000\000\000\158\0042\000\000\004J\003\154\001j\003a\001k\000\000\002\219\004$\000\000\003|\005\157\000\000\000\000\003}\004\r\005C\000h\000\000\002\245\000\000\000\000\000\000\004-\003\155\003\138\0042\000\000\004J\003\156\004\018\003z\003\145\003\157\004\019\004%\002\218\003\139\003\158\003&\004U\000\000\000\000\000\000\000\000\002\248\000\139\000`\002\219\004W\001V\002\170\004+\004R\000`\000b\001A\000f\000\000\000\000\000\141\001{\001j\001l\001\129\004\023\000\000\001m\000\000\004(\004Y\000\000\001\135\002\251\000\000\000\000\004-\000\000\000\000\004[\000i\004J\003\154\000\000\001j\001\137\001k\000\000\004$\000\000\003|\000\000\000\000\000\000\003}\000h\000\000\001z\000\000\000\000\000\000\004\r\000\000\000\141\003\155\000\000\000\000\001\147\000\142\003\156\003)\003\138\000\143\003\157\003z\003\143\004\018\002\253\003\158\000\141\004\019\004%\001l\003\139\004L\000\000\001m\000\000\000\000\001\148\000\000\002\254\000\000\000\000\001\149\004\021\000\000\000\000\001\150\000\000\000\152\000\141\004P\001\151\001l\000\139\000\000\000\000\001m\000\140\001\015\004\023\000\000\000\000\000\000\004S\001z\004T\000\000\001j\000\000\001~\004-\003z\003\145\0042\000\000\004J\003\154\000\000\000\000\000\141\004Z\003|\001\018\001{\0019\003}\001z\000`\000\000\004\r\000\000\002\170\004+\004R\000\000\000\000\000\000\000\000\003\155\003\138\003z\003\145\000\000\003\156\004\018\000\000\000\000\003\157\004\019\004%\000\141\003\139\003\158\000\000\000\000\000\142\000`\000\000\000\000\000\143\002\170\004j\004R\004\021\000\141\000\000\000\153\001l\004$\000\000\003|\001m\000\000\000\000\003}\000\000\001\015\000\000\000\000\004\023\000\000\000\000\001{\004S\000\000\004T\000\000\000\152\000\154\000\000\004-\001\148\000\000\0042\000\000\004J\003\154\004$\000\000\003|\001\018\001z\0019\003}\001{\001\165\001\145\000`\000b\001\224\000f\000\000\000\000\000`\000b\0025\000f\000\000\003\155\000\000\000\000\000\000\003\138\003\156\000\000\003z\003\145\003\157\001\147\000\000\000\000\000\000\003\158\000\000\003\139\000\000\002\199\000\000\000\000\002\203\000\000\000`\000\000\006\003\000\000\002\170\004j\004R\000h\000\000\001\148\000\000\000\000\000\000\000h\001\149\000\000\000\000\000\000\001\150\000\000\004\r\000\000\000\000\001\151\000\153\006\004\006\007\005\127\005\128\000`\003\138\001\148\003z\003\142\000\000\004\018\000\000\000\000\001{\004\019\004%\004$\003\139\003|\000\000\001\167\000\154\003}\000\000\004\r\000\000\000\000\000\141\000\000\004\021\000\000\002\204\000\000\000\000\003\138\002\205\006\028\000\000\000\139\004\018\000\000\000\000\000\148\004\019\004%\004\023\003\139\000\000\004q\004S\000\000\004T\000\000\000\000\000`\000\000\004-\000\000\004\021\0042\000\000\004J\003\154\000\000\000\141\005\129\003|\000\000\000\000\000\156\003}\001%\000\000\000\000\004\023\000\000\000\000\000\000\004S\000\000\004r\003z\003\145\000\170\003\155\004-\001\030\000\000\0042\003\156\004J\003\154\001j\003\157\001k\000\141\000\000\000`\003\158\000\000\000\142\002\170\004j\004R\000\143\000\000\000\000\000\000\000\000\004\r\000\000\000\000\005\163\003\155\001j\001\015\001k\000\000\003\156\003\138\000\000\001\015\003\157\000\000\004\018\000\000\000\000\003\158\004\019\004%\002\218\003\139\000\152\004s\000\000\005\164\005\127\005\128\004$\001\018\003|\0019\002\219\004\021\003}\001\018\000\000\0019\000\000\000\141\000\000\000\000\001l\001\184\001\186\000\000\001m\000\000\000\000\004\023\000\000\003z\003\145\004S\000\000\004r\000\000\003\138\000\000\000\000\004-\000\141\006.\0042\001l\004J\003\154\000`\001m\003\139\000\000\002\170\004\144\004R\000\000\001j\001z\001k\000\000\000`\000b\002D\000f\000\000\000\000\001(\000\000\003K\003\155\005\129\001\031\000\000\001 \003\156\000\206\000\000\000\000\003\157\001z\000\000\000\153\002\253\003\158\002\199\000\000\000\000\002\203\000\000\004$\000\000\003|\000\000\000\000\000\000\003}\003\002\000\000\001\188\000\000\000\000\000h\004\r\000\154\000\000\000`\000b\002I\000f\000\000\000\000\000\000\003\138\000\141\000\000\000\000\001l\004\018\003z\003\145\001m\004\019\004%\001\194\003\139\000\206\004\133\004\146\000\186\001j\000\000\001k\000\000\000\000\000`\001{\004\021\000\000\002\170\004\144\004R\002\244\000\000\000`\000\000\002\204\000h\002\170\000\000\002\205\001z\000\156\004\023\000\000\000\000\000\187\004S\001{\004r\000\188\000\000\000\000\000\000\004-\000\000\000\158\0042\000\000\004J\003\154\000\000\000\000\000\000\000\000\000\000\004$\000\000\003|\005\170\000\000\000\000\003}\004\r\000\000\003\\\000\000\000\141\000\000\000\000\001l\000\000\003\155\003\138\001m\000\000\000\000\003\156\004\018\003z\003\145\003\157\004\019\004%\001\148\003\139\003\158\001j\004\166\001}\000\000\005\182\005\127\005\128\004\148\000`\000\000\004\021\001\169\002\170\004+\004R\000\000\000\000\001z\000\000\001\148\000\000\002\245\001{\000\139\000\000\000`\004\023\000\150\001\015\002\170\004S\000\000\004\147\001\171\000\000\000\000\000\000\004-\002\218\000\000\0042\003!\004J\003\154\000\139\000\000\000\000\002\248\000\148\004$\002\219\003|\001\018\000\000\0019\003}\000\000\000\141\000\000\000\000\001l\000\000\004\r\000\000\001m\003\155\003\\\000\000\005\129\003#\003\156\000\000\003\138\001\015\003\157\002\251\005\251\004\018\000\000\003\158\000\141\004\019\004%\000\000\003\139\000\142\000\000\003z\003\145\000\143\001\148\004%\000\000\000\000\001z\001{\004\021\001\018\000\000\0019\000\000\000\141\000\000\000`\001\173\000\000\000\142\002\170\000\000\004#\000\143\000\000\004\023\003,\000\000\000\000\004S\000\152\004\147\002\253\000\000\002\199\000\000\004-\002\203\005E\0042\000\000\004J\003\154\000`\000\000\004-\002\254\002\170\0042\000\000\004J\000\152\000\000\000\000\000\000\004\r\000\000\004$\000\000\003|\000\000\003z\003{\003}\003\155\003\138\005\027\000\000\000\000\003\156\004\018\000\000\002\179\003\157\004\019\004%\001\148\003\139\003\158\000\000\003z\003\145\000\000\000\000\003\\\001{\000\000\000\000\000\000\004\021\001\179\000\141\004%\005\015\000\000\002\204\000`\004\152\000\000\002\205\002\170\000\000\004#\000\000\001j\004\023\001k\000\000\000\153\004S\000\000\004T\000\000\000\000\002\199\000\000\004-\002\203\000\141\0042\003|\004J\003\154\000\000\003}\000\000\005\026\000\000\000\000\000\153\000\154\000\000\000\000\004-\000\000\000\000\0042\004$\004J\003|\000\000\000\000\000\000\003}\003\155\000\000\001\188\000\000\000\000\003\156\004\r\000\154\000\000\003\157\000\000\000\155\000\000\000\000\003\158\000\000\003\138\000\141\000\000\000\000\001l\004\018\003z\003\145\001m\004\019\004%\002\244\003\139\005\031\000\000\002\204\000\186\004\152\000\156\002\205\000\000\000\000\000`\000\199\004\141\000\000\002\170\000\000\004#\000\000\000\000\000\000\000\158\000\000\002\218\005\163\000\000\004%\001z\000\156\004\023\000\000\000\000\000\187\004(\004\143\002\219\000\188\000\000\000\000\000\000\004-\000\000\000\158\0042\000\000\004J\003\154\005\164\005\127\005\128\003\138\000\000\004$\000\000\003|\000\000\000\000\000\000\003}\004\r\005G\000\000\003\139\000\000\001j\000\000\001k\004-\003\155\003\138\0042\000\000\004J\003\156\004\018\003z\003\145\003\157\004\019\004%\000\139\003\139\003\158\000\000\000\148\000\000\002\245\000\000\005!\000\000\000\000\000`\004\152\004\141\000\000\002\170\000`\004#\000\000\000\000\000\000\000\000\000\000\002\218\002\253\001{\002\247\000\000\000\000\004\023\000\000\005\129\002\248\004(\004\143\002\219\000\000\000\000\003\004\000\000\004-\000\141\000\000\0042\001l\004J\003\154\000\000\001m\003\155\000\000\000\000\004$\000\000\003|\000\000\000\000\000\141\003}\000\000\002\251\000\000\000\142\003\160\000\000\004\r\000\143\000\000\003\155\000\000\000\000\000\000\000\000\003\156\000\000\003\138\000\000\003\157\001z\000\000\004\018\000\000\003\158\005\201\004\019\004%\000\000\003\139\006\129\005\163\000\000\000\139\004\152\001\148\000\152\000\140\000\000\000\000\000\000\004\141\000\000\000\000\000\000\000\000\002\253\005s\005\202\001\181\000\000\005\205\005\127\005\128\005\164\005\127\005\128\004\023\000\000\000\000\002\254\004(\004\143\003z\003\145\005\201\000\000\000\000\004-\000\000\005q\0042\006\137\004J\003\154\005t\005\127\005\128\000\000\000`\000\000\005\176\000\000\002\170\004+\004R\000\000\004\r\005\202\000\000\000\141\005\205\005\127\005\128\000\000\000\142\003\155\003\138\001{\000\143\000\000\003\156\004\018\000\000\000\000\003\157\004\019\004%\000\000\003\139\003\158\003z\003{\000\000\000\153\005\129\000\000\000\000\005\129\000\000\004$\004\141\003|\000\000\000\000\000\139\003}\000\152\000\000\001U\000\000\001Z\000\000\000\000\000\000\000\000\000\154\004\023\000\000\005\129\000\000\004(\004\143\003z\003\145\000\000\000\000\000\000\004-\000\000\000\000\0042\000\000\004J\003\154\005\129\001\\\000\000\000\206\000`\000\000\000\186\000\000\002\170\000\000\004#\001\148\000\000\000\141\000\000\003|\000\000\000\000\000\000\003}\000\000\003\155\000\000\000\000\000\000\001\183\003\156\000\141\000\000\000\156\003\157\000\000\000\142\000\187\000\000\003\158\000\143\000\188\000\000\000\000\000\000\000\000\000\000\000\158\000\000\004$\002\199\003|\000\000\002\203\000\153\003}\000`\000b\002\139\000f\000\000\000\000\004\r\000\000\000\000\000\000\000\000\000\000\000\152\005\219\000\000\000\000\003\138\000\000\000\000\005\174\000\154\004\018\003z\003\145\000\000\004\019\004%\000\000\003\139\006\143\000\000\006\184\000\000\004\152\000`\000b\002\145\000f\000`\000\000\004\021\000h\002\170\004+\004R\000\184\000`\000b\002\150\000f\000\000\000\141\000\000\005\225\000\000\002\204\004\023\000\000\000\000\002\205\004S\000\000\004T\000\000\003\138\000\000\000\000\004-\000\156\000\000\0042\000\000\004J\003\154\000\000\000h\003\139\000\000\000\000\004$\000\000\003|\000\158\000\000\000\000\003}\004\r\000h\000\000\000\000\000\153\000\000\000\000\000\000\000\000\003\155\003\138\000\000\000\000\000\000\003\156\004\018\000\000\000\000\003\157\004\019\004%\000\000\003\139\003\158\000\000\000`\000\154\000\000\003z\003\141\000\000\000\000\000\000\006x\004\141\004\161\003z\003\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\172\004\023\000\000\000`\000\000\004(\004\143\002\170\003\155\004R\000\000\000\000\004-\003z\003\145\0042\000\000\004J\003\154\002\218\000\139\003H\003\162\000\000\000\150\004V\000\000\000\000\000\000\000`\000\000\002\219\000\000\002\170\000\000\004#\000\141\004\r\003|\001\015\003\155\006\029\003}\001%\004$\003\156\003|\003\138\000\000\003\157\003}\005\234\004\018\000\000\003\158\000\000\004\019\004%\001\030\003\139\000\000\000\000\000\000\001\018\006\030\0019\006!\005\127\005\128\000\000\004$\004\021\003|\001\015\005\235\000\000\003}\000\141\005\238\005\127\005\128\000\000\000\142\000\000\000\000\001\015\000\143\004\023\000\000\000\000\000\000\004S\000\000\004T\000\000\000\000\000\000\001\018\004-\0019\002\221\0042\000\000\004J\003\154\003z\003\145\000\000\000\000\001\018\000\000\0019\000\000\000\000\000\152\000\000\000\000\004\"\000\139\000\000\002\172\000`\000\148\000\000\000\000\002\170\003\155\004#\000\000\000\000\005\129\003\156\000\000\000i\000`\003\157\004?\004\r\000\000\003\138\003\158\003H\005\129\006|\000\000\000\000\000\000\003\138\000\000\000\000\000\000\003\139\004\018\000\000\000\139\000\000\004\019\004%\000\150\003\139\000\000\000\000\004$\004\r\003|\000\000\000\000\001(\003}\0049\000\000\004\163\001\031\003\138\001 \000\141\000\206\004D\004\018\000\000\000\142\000\000\004\019\004%\000\143\003\139\000\000\004\023\001\197\000\000\000\000\004S\000\153\004\165\000\000\004H\000\000\004&\004-\000\000\000\000\0042\000\000\004J\003\154\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000\152\004\023\000\154\000\000\000\142\004(\004)\001\199\000\143\003z\003\145\000\000\004-\000\000\003\155\0042\000\000\004J\003\154\003\156\000\000\004,\000\000\003\157\0061\000`\000\000\000\155\003\158\002\170\000\000\004#\000\000\000\000\005\240\000\000\000\152\000\000\000\000\000\000\003\155\000i\000\000\004\r\004?\003\156\005\163\000\000\000\000\003\157\000\156\000\000\000\000\003\138\003\158\001\131\003z\003{\004\018\000\000\000\000\000\000\004\019\004%\000\158\003\139\004$\000\000\003|\005\164\005\127\005\128\003}\002\199\000\000\000\000\002\203\004&\000\153\000\000\000\000\000\000\000\000\000\000\000\000\004D\003z\003\145\000\000\005\237\000\000\000\000\001L\004\023\000\000\000\204\000\000\004(\004)\000\000\000\154\000\000\000`\004H\004-\000\000\002\170\0042\004#\004J\003\154\000\000\005\235\000\141\000\153\003|\005\238\005\127\005\128\003}\000\205\000\000\000\206\000\000\000\000\000\186\000\000\000\000\006\029\000\000\000\141\000\000\003\155\005\129\002\204\000\000\000\154\003\156\002\205\002\199\000\000\003\157\002\203\004$\000\000\003|\003\158\000\000\000\156\003}\000\000\006\030\000\187\006!\005\127\005\128\000\188\000\000\000\000\004\r\000\000\000\155\000\158\000\000\001J\000\000\000\000\000\000\000\000\003\138\000\000\000\000\003z\003\145\004\018\000\000\000\000\000\000\004\019\004%\005\129\003\139\000\000\000\000\000\156\000\000\000\000\005\163\000`\001\133\000\000\000\000\002\170\004&\004#\000\000\000\141\000\000\000\158\000\000\002\204\000\000\002\199\000\000\002\205\002\222\000\000\000\000\000\000\004\023\005\164\005\127\005\128\004(\004)\002\199\003\138\005\129\002\203\000\000\004-\000\000\000\000\0042\000\000\004J\003\154\000\000\003\139\004$\000\139\003|\000\000\002\218\000\140\003}\004\r\000\000\000\000\000\000\000\000\005\189\000\000\000\000\000\000\002\219\003\138\000\000\003\155\003z\003\145\004\018\000\000\003\156\000\000\004\019\004%\003\157\003\139\000\141\000\000\000\000\003\158\002\204\004u\000`\000\000\002\205\000\000\002\170\004n\004#\000\141\000\000\005\129\000\000\002\204\000\000\000\000\000\000\002\205\000\000\000\000\000\000\000\000\000\000\004\023\000\141\000\000\000\000\004(\004p\000\142\000\000\000\000\003\155\000\143\004-\000\000\002\218\0042\000\000\004J\003\154\002\199\000\000\004$\002\203\003|\003\164\000\000\002\219\003}\000\000\002\253\000\000\000\000\000`\000g\000\000\000f\000\000\004\r\006B\000\152\003\155\000\000\000\000\003\006\000\000\003\156\000\000\003\138\000`\003\157\003z\003\145\004\018\000\000\003\158\000\000\004\019\004%\000\000\003\139\000\000\000\000\000\000\000\000\000\000\004m\000`\000\000\000\000\000\000\002\170\004n\004#\000h\000\000\000\000\002\244\002\218\000\000\000\000\002\204\000\000\000\000\000\000\002\205\006\029\000\000\004\023\000\000\002\219\002\218\004(\004p\002\199\000\000\002\220\002\203\005\187\004-\000\000\000\000\0042\002\219\004J\003\154\000\000\000\000\004$\006\030\003|\006!\005\127\005\128\003}\004\r\001%\000\000\000\153\000\000\000`\001\017\000\000\000f\000\000\003\138\000`\003\155\003z\003\145\004\018\001\030\003\156\000\000\004\019\004%\003\157\003\139\000\000\000\000\000\154\003\158\004\129\000\000\000`\000\000\000\000\000\000\002\170\004\130\004#\002\244\000\000\000\000\000\000\002\204\000\000\000`\000\000\002\205\000\000\000h\000\000\002\245\000\000\004\023\000\000\000\000\000\000\004(\004\132\006\029\002\253\000\000\000\000\005\129\004-\000\000\000\000\0042\002\218\004J\003\154\002\250\000\000\004$\003\b\003|\000\156\002\248\000\000\003}\002\219\001%\006\030\000\000\006!\005\127\005\128\000\000\000\000\004\r\000\172\000\000\003\155\000\000\000\000\001\015\001\030\003\156\000\000\003\138\000\000\003\157\003z\003\145\004\018\002\251\003\158\000\000\004\019\004%\000\000\003\139\001%\004\140\000\000\000\000\000\000\004\127\000`\001\018\000\000\0019\002\170\004n\004#\002\245\000\000\001\030\001(\000\000\004A\000\000\000\000\001\031\000\000\001 \000\000\000\206\000\000\004\023\000\000\000\000\002\218\004(\004p\003!\000\000\000\000\005\129\002\253\004-\002\248\000\000\0042\002\219\004J\003\154\000\000\000\000\004$\000\000\003|\000\000\002\254\000\000\003}\004\r\000\000\005\201\006I\000\000\000\000\000\000\003#\000\000\000\000\003\138\000\000\003\155\002\251\000\000\004\018\001\015\003\156\000\000\004\019\004%\003\157\003\139\000\000\000\000\005\202\003\158\000\000\005\205\005\127\005\128\000\000\000\000\004\145\004\141\000\000\003z\003\145\000\000\001(\001\018\004\193\0019\000\000\001\031\000\000\001 \006\133\000\206\000\000\004\023\003+\000`\000\000\004(\004\143\002\170\002\253\004#\000\000\000\000\004-\003z\003\145\0042\000\000\004J\003\154\000\000\000\000\001(\002\254\004\236\006\145\000\000\001\031\000\000\001 \000`\000\206\000\000\000\000\002\170\000\000\004#\000\000\004\r\005\201\006L\003\155\000\000\000\000\005\129\004$\003\156\003|\003\138\000\000\003\157\003}\000\000\004\018\000\000\003\158\000\000\004\019\004%\006\003\003\139\000\000\005\202\000\000\000\000\005\205\005\127\005\128\000\000\000\000\000\000\004$\004\141\003|\000\000\000\000\000\000\003}\000\000\000\000\003z\003\145\006\004\006\007\005\127\005\128\006\029\000\000\004\023\000\000\000\000\005\163\004(\004\143\000\000\000\000\000`\000\000\000\000\004-\004\180\000\000\0042\000\000\004J\003\154\003z\003\145\000\000\006\030\000\000\006!\005\127\005\128\005\164\005\127\005\128\006\148\000\000\000\000\000\000\005\163\000`\000\000\004\211\000\000\002\170\003\155\004#\005\129\000\000\000\000\003\156\000\000\000\000\000\000\003\157\004\214\004\r\003|\000\000\003\158\000\000\003}\005\164\005\127\005\128\005\129\003\138\005\243\000\000\000\000\000\000\004\018\000\000\000\139\000\000\004\019\004%\000\148\003\139\000\000\004\220\004$\004\r\003|\000\000\000\000\000\000\003}\000\000\000`\006\134\000\000\003\138\005\129\000\000\000\000\005\129\004\018\000\000\000\000\000\000\004\019\004%\000\139\003\139\000\000\004\023\000\150\000\000\005\001\004(\006\136\003\150\000\000\001\186\000\000\006\134\004-\000\000\000\000\0042\000\000\004J\003\154\000\139\000\000\005\129\000\000\000\148\000\000\000\141\000\000\004\023\000\000\000\000\000\142\004(\006\136\005\163\000\143\000`\000\000\000\000\004-\000\000\003\155\0042\000\000\004J\003\154\003\156\000\000\0067\000\000\003\157\000\000\000\000\000\000\003\138\003\158\000\141\005\164\005\127\005\128\000\000\000\142\000\000\000\152\004\221\000\143\003\139\003\155\006U\000\000\004\r\000\000\003\156\000\000\005\163\000\000\003\157\000\141\005\003\000\000\003\138\003\158\000\142\000\000\000\000\004\018\000\143\000\000\002\199\004\019\004%\002\203\003\139\000\152\000\000\006S\000\000\005\164\005\127\005\128\005\185\000\000\000\000\000\139\006\134\004\224\000\000\000\148\005\004\000\000\004\247\003\154\000\000\000\000\000\152\000\000\000\000\000\000\000\000\000`\004\023\005\129\000\000\000\000\004(\006\136\000\000\000\000\000\000\000\000\005\212\004-\000\000\003\155\0042\000\000\004J\003\154\003\156\000\139\000\000\000\153\003\157\000\140\000\000\002\244\000\000\003\158\000\000\002\204\000\000\005\163\000\000\002\205\000\000\000\200\000\201\000\203\000\204\003\155\000\141\005\129\000\000\000\154\003\156\000\142\000\000\000\000\003\157\000\143\000\000\000\153\000\000\003\158\005\164\005\127\005\128\000\000\000\139\000\000\000\000\000\000\000\148\000\205\000\000\000\206\000\000\000\000\000\186\000\000\000\000\000\000\000\153\000\154\000`\000\000\000\141\000\152\000\000\000\000\000\000\000\142\000\000\000\000\000\000\000\143\000\200\001q\000\203\000\204\000\000\000\156\000\000\000\000\000\154\000\187\000\000\000\000\000\155\000\188\000\000\000\000\000\000\000\000\000\000\000\158\000\000\001J\000\000\005\223\000\000\002\245\000\000\000\152\000\205\000\141\000\206\000\000\005\129\000\186\000\142\000\156\000\000\000\139\000\143\000\000\003\147\000\148\002\218\003.\003/\003\028\000\000\003z\003{\000\158\000\000\002\248\000\000\000`\002\219\000\139\000\156\000\000\000\000\000\148\000\187\000\000\000\000\005\228\000\188\000\000\000\152\000\000\000\000\000\153\000\158\000`\001J\003\031\000\000\000\000\000\000\005\163\000\000\002\251\000\000\000\000\000\000\000\200\002\209\000\203\000\204\000\000\000\000\000\000\000\000\000\154\000\000\000\000\000\141\005\163\000\000\000\000\000\000\000\142\005\164\005\127\005\128\000\143\000\141\000\153\003|\000\000\003z\003\145\003}\000\205\000\141\000\206\000\000\000\000\000\186\000\142\005\164\005\127\005\128\000\143\000\000\002\253\000`\000\000\000\000\000\154\004\180\000\000\000\000\000\152\000\000\000\000\000\000\000\000\000\000\002\254\000\000\000\156\005\246\000\000\000\000\000\187\000\153\000\000\000\139\000\188\000\000\000\152\000\148\000\000\004\213\000\158\000\000\001J\000\000\000\000\000\200\003\129\000\203\000\204\000`\000\000\005\129\004\214\000\154\003|\000\000\000\000\000\000\003}\000\000\000\000\000\000\000\156\000\000\005\163\000\000\000\000\000\000\000\000\005\129\000\000\000\000\000\000\000\205\000\000\000\206\000\174\004\220\000\186\000\000\000\000\000\000\000\000\000\000\000\000\003z\003\145\005\164\005\127\005\128\000\141\000\000\000\000\000\000\003\138\000\142\000\153\000\000\000\000\000\143\000\000\000\156\000\000\000\000\000\000\000\187\003\139\004\006\005\028\000\188\000\200\004\015\000\203\000\204\000\153\000\158\000\000\001J\000\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\152\000\200\004/\000\203\000\204\000\000\000\000\000\000\000\000\000\154\000\000\000\205\005\163\000\206\000\000\002\244\000\186\003|\000\000\000\000\000\000\003}\000\000\000\000\005\129\000\000\000\000\000\000\003\138\000\205\000\000\000\206\005\255\000\000\000\186\005\164\005\127\005\128\004\221\000\156\003\139\000\000\000\000\000\187\000\000\000\000\003\155\000\188\000\000\000\000\005\253\000\000\004\222\000\158\000\000\001J\000\000\000\156\000\000\000\000\003\166\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\000\000\158\000\139\001J\003z\003\145\000\140\000\000\000\153\004\224\000\000\000\000\004\229\000\000\004\247\003\154\000\000\003z\003\145\000\000\000\000\000\000\000\200\004\226\000\203\000\204\004\006\004g\000\000\005\129\000\154\000\000\000\000\000\000\000\000\000\000\000\000\003\155\004\r\004\006\004]\000\000\003\156\000\000\000\000\000\000\003\157\000\000\003\138\000\000\000\205\003\158\000\206\004\018\000\000\000\186\000\000\004\019\000\000\000\141\003\139\002\244\0065\003|\000\142\000\000\000\000\003}\000\143\000\000\000\000\000\000\004\021\000\000\002\244\000\000\003|\000\139\000\156\000\000\003}\000\140\000\187\000\000\000\000\000\000\000\188\000\000\004\023\000\000\003z\003\145\000\158\000\000\001J\000\000\000\152\000\000\000\000\000\000\000\000\000\000\000\000\003z\003\145\003\154\000\000\000\000\000\000\000\000\000\000\000\000\004\006\004\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\006\004\017\003\155\003z\003\145\000\000\000\000\003\156\000\000\000\141\000\000\003\157\006:\000\000\000\142\000\000\003\158\000\000\000\143\000\000\000\000\000\000\002\244\000\000\003|\004\006\004i\000\000\003}\004\r\000\000\000\000\000\000\000\000\000\000\002\244\000\000\003|\000\000\003\138\002\199\003}\004\r\002\203\004\018\000\000\000\152\000\000\004\019\000\153\000\000\003\139\003\138\000\000\000\000\000\000\000\000\004\018\000\000\000\000\002\244\004\019\003|\004\021\003\139\000\000\003}\000\000\000\000\000\000\000\000\000\154\000\000\000\000\000\000\000\000\004\021\000\000\000\000\004\023\000\000\000\000\000\000\000\000\000\000\003z\003\145\000\000\000\000\000\000\000\000\000\000\004\023\000\000\000\000\000\000\003\154\000\141\003z\003\145\000\000\002\204\000\000\000\000\000\000\002\205\000\000\004\006\0055\003\154\000\000\000\000\000\000\000\000\000\000\004\r\000\000\000\000\003\155\000\156\004\006\0057\000\000\003\156\000\153\003\138\000\000\003\157\004\r\000\000\004\018\003\155\003\158\000\176\004\019\000\000\003\156\003\139\003\138\000\000\003\157\000\000\002\244\004\018\003|\003\158\000\154\004\019\003}\004\021\003\139\000\000\000\000\004\r\000\000\002\244\000\000\003|\000\000\000\000\000\000\003}\004\021\003\138\000\000\004\023\000\000\000\139\004\018\000\000\000\000\000\148\004\019\000\000\000\000\003\139\000\000\000\000\004\023\000\000\000\000\000\000\003\154\000`\000\000\000\000\000\000\004\021\000\000\000\000\000\000\000\000\000\000\000\000\000\156\003\154\000\000\000\000\000\000\000\000\002\218\000\000\000\000\004\023\003\155\003z\003\145\000\000\000\178\003\156\000\000\000\000\002\219\003\157\000\000\000\000\000\000\003\155\003\158\000\000\003\154\000\000\003\156\000\000\000\141\000\000\003\157\004\006\0059\000\142\000\000\003\158\000\000\000\143\000\000\004\r\002\199\000\000\000\000\002\203\000\000\000\000\003\155\000\000\000\000\003\138\000\000\003\156\004\r\000\000\004\018\003\157\000\000\000\000\004\019\000\000\003\158\003\139\003\138\000\000\000\000\000\152\002\244\004\018\003|\000\000\000\000\004\019\003}\004\021\003\139\000\000\000\000\000\000\000\139\000\000\000\000\000\000\000\148\000\000\000\000\002\253\004\021\000\000\000\000\004\023\000\000\000\000\002\199\000\000\000`\002\203\000\000\000\141\000\000\003\n\000\000\002\204\004\023\000\000\000\000\002\205\003\154\000\000\000\000\000\000\000\000\000\139\000\000\000\000\000\000\000\148\000\000\000\000\000\000\003\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\003\155\000\000\000\000\000\000\000\000\003\156\000\000\000\141\000\000\003\157\000\000\000\000\000\142\003\155\003\158\000\153\000\143\000\000\003\156\000\000\000\000\000\141\003\157\003z\003{\002\204\000\000\003\158\000\000\002\205\000\000\004\r\001Z\000\000\000\000\000\000\000\000\000\154\000\139\000\000\000\141\003\138\000\148\000\000\000\152\000\142\004\018\000\000\000\000\000\143\004\019\000\139\000\000\003\139\000`\000\148\000\000\001\206\000\000\000\206\000\000\000\000\000\186\000\000\000\000\004\021\000\000\000`\000\000\000\139\000\000\000\000\002\218\000\140\000\000\000\000\000\000\000\152\000\000\000\000\000\141\004\023\003|\000\000\002\219\000\156\003}\000\000\000\000\000\187\000\000\000\000\000\000\000\188\000\000\000\141\000\000\000\000\003\154\000\158\000\142\000\000\000\000\000\000\000\143\000\000\000\000\000\000\000\141\000\000\000\000\000\000\000\000\000\142\000\139\000\000\000\000\000\143\000\148\000\000\003\155\000\000\000\153\000\000\002\218\003\156\000\141\000\000\000\000\003\157\000`\000\142\000\152\000\000\003\158\000\143\002\219\000\000\000\000\001W\000\000\000\000\000\000\000\000\000\154\000\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\253\000\000\000\153\000\000\002\199\000\000\000\000\002\203\000\000\000\000\000\152\001\212\000\000\000\206\003\012\000\000\000\186\000\000\000\141\002\182\000\000\000\000\000\000\000\142\000\154\000\000\000\000\000\143\000\000\000\000\003\138\000\000\000\139\000\000\000\139\000\000\000\148\000\000\000\148\000\156\000\000\000\000\003\139\000\187\002\184\000\000\000\206\000\188\000\000\000\186\000\000\000\000\002\253\000\158\000\000\000\152\000\000\000\153\000\139\000\000\000\000\002\244\000\148\000\000\000\000\002\204\003\014\000\000\000\000\002\205\000\153\000\000\000\156\000\000\002\182\000\000\000\187\000\139\000\000\000\154\000\188\000\148\000\000\000\000\000\000\000\000\000\158\003j\000\153\000\141\000\000\000\141\000\154\000\000\000\142\000\000\000\142\000\000\000\143\002\201\000\143\000\206\000\000\000\000\000\186\000\000\000\000\000\000\000\000\003\155\000\154\000\182\003l\001\175\000\206\000\141\000\000\000\186\000\000\000\000\000\142\000\000\000\000\003\168\000\143\000\000\000\152\000\156\000\152\002\199\000\000\000\187\002\203\000\153\000\141\000\188\000\000\000\000\000\000\000\142\000\156\000\158\000\000\000\143\000\187\000\000\000\000\002\245\000\188\000\000\003j\000\000\000\152\000\000\000\158\000\154\000\000\000\000\000\156\000\000\000\000\000\000\000\000\000\000\002\218\003.\006\139\003\028\000\000\000\000\000\000\000\152\000\180\002\248\000\000\003\192\002\219\000\206\002\199\000\000\000\186\002\203\000\000\000\000\000\000\002\199\002\244\000\000\002\203\000\000\002\204\000\000\000\000\000\000\002\205\003\031\000\000\000\000\000\000\000\000\000\000\002\251\000\000\000\156\000\153\000\000\000\153\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\000\000\158\000\000\000\000\000\000\000\185\0034\000\185\000\000\000\000\000\154\000\000\000\154\000\000\000\153\000\000\000\000\000\000\000\000\002\244\000\000\000\000\000\000\002\204\000\139\002\239\002\244\002\205\000\148\002\253\002\204\002\241\000\000\000\153\002\205\000\186\000\154\000\186\000\000\000\000\000\000\000\000\000\000\002\254\000\000\000\000\000\000\000\000\000\000\000\000\002\241\000\000\000\000\000\000\000\000\000\154\002\245\000\000\000\156\000\000\000\156\000\186\000\187\000\000\000\187\000\000\000\188\000\000\000\188\000\000\000\000\000\000\000\158\002\218\000\158\000\000\003!\000\000\000\000\000\000\000\186\000\141\002\248\000\139\000\156\002\219\000\142\000\148\000\187\000\000\000\143\000\000\000\188\000\000\000\000\000\139\000\000\000\000\000\158\000\148\000\000\000\000\000\000\000\156\003#\002\245\000\000\000\187\000\000\000\000\002\251\000\188\002\245\000\000\000\000\000\000\000\000\000\158\000\152\000\000\000\000\000\000\002\218\000\000\000\000\003!\000\000\000\000\000\000\002\218\000\000\002\248\003!\000\139\002\219\000\000\000\000\000\148\002\248\000\000\000\141\002\219\000\000\000\000\000\000\000\142\000\000\000\000\003*\000\143\000\000\000\000\000\141\003#\002\253\000\000\000\000\000\142\000\000\002\251\003#\000\143\000\000\000\000\000\000\000\000\002\251\000\000\002\254\000\000\000\000\000\139\000\000\000\000\000\139\000\148\000\000\000\152\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003E\000\152\000\141\000\000\000\000\000\000\000\000\000\142\000\153\003%\000\000\000\143\000\000\000\000\000\000\002\253\003(\000\000\000\000\000\000\000\000\000\000\002\253\000\000\000\000\002\241\000\000\000\000\000\139\002\254\000\154\000\000\000\148\000\000\000\000\000\000\002\254\000\000\000\000\000\152\000\141\000\000\000\000\000\141\000\000\000\142\000\139\000\000\000\142\000\143\000\148\000\000\000\143\000\000\002\199\000\186\000\000\002\203\000\000\003P\000\000\000\000\003\182\000\000\000\000\003\235\000\139\000\153\000\000\000\000\000\148\003X\000\000\000\000\000\000\000\000\000\000\000\152\000\156\000\153\000\152\000\000\000\187\000\000\002\241\000\141\000\188\000\000\000\000\000\154\000\142\000\000\000\158\000\000\000\143\000\000\002\241\000\000\000\000\000\000\000\000\000\154\000\000\000\141\000\000\000\000\000\000\003\237\000\142\003_\000\000\000\141\000\143\000\000\000\186\002\204\000\000\000\153\000\000\002\205\000\000\000\000\000\152\000\141\000\000\003\239\000\186\000\000\000\142\000\000\000\000\000\000\000\143\000\000\002\241\000\000\000\000\000\156\000\000\000\154\000\152\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\156\000\000\000\158\000\000\000\187\000\000\000\153\000\000\000\188\000\153\000\000\000\152\000\000\000\000\000\158\000\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\185\000\000\000\154\000\000\000\000\000\154\000\000\000\000\000\000\000\000\000\000\000\139\000\156\000\139\000\000\000\148\000\187\000\148\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\153\000\158\000\186\000\000\000\000\000\186\000\139\000\139\000\000\000\000\000\148\000\148\000\000\000\000\002\218\000\000\000\000\000\185\000\153\000\000\000\000\000\000\000\154\000\000\000\000\000\156\002\219\000\000\000\156\000\187\004=\000\000\000\187\000\188\000\000\000\185\000\188\000\139\000\153\000\158\000\154\000\140\000\158\000\141\000\000\000\141\000\000\000\186\000\142\000\000\000\142\000\000\000\143\000\000\000\143\002\241\000\000\000\139\000\000\000\000\000\154\000\148\000\000\000\141\000\141\000\186\000\000\000\000\000\142\000\142\000\156\000\000\000\143\000\143\000\187\000\139\000\000\000\000\000\188\000\148\000\152\000\000\000\152\002\199\000\158\000\186\002\203\000\000\000\156\000\000\000\000\000\000\000\187\000\000\000\141\002\253\000\188\000\000\000\000\000\142\000\152\000\152\000\158\000\143\000\000\000\000\000\000\000\000\000\156\003\016\000\000\000\000\000\187\000\000\000\141\000\000\000\188\000\000\000\000\000\142\000\000\000\000\000\158\000\143\000\000\000\000\000\139\000\000\000\000\000\000\000\148\000\152\000\141\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\141\000\143\000\000\000\000\002\204\000\000\000\000\000\000\002\205\000\000\004F\000\152\004N\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\153\000\000\002\199\000\000\000\000\002\203\000\000\000\000\000\000\000\152\004\185\004\197\000\000\000\000\000\000\002\241\000\000\002\241\000\153\000\153\000\154\000\000\000\154\000\141\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\000\000\143\000\000\000\000\002\241\002\241\000\000\000\000\000\000\000\154\000\154\000\000\000\000\000\000\000\186\000\000\000\186\000\000\000\153\000\000\000\139\000\000\000\000\000\000\000\148\000\000\000\000\000\000\000\141\000\152\004\202\000\000\002\204\000\000\000\186\000\186\002\205\000\156\000\153\000\156\000\154\000\187\000\000\000\187\000\000\000\188\000\000\000\188\004\209\000\000\000\000\000\158\002\218\000\158\000\000\002\241\000\153\000\156\000\156\000\000\000\154\000\187\000\187\000\000\002\219\000\188\000\188\000\000\000\000\000\000\000\139\000\158\000\158\002\241\000\148\000\000\000\000\000\141\000\154\000\000\000\000\000\000\000\142\000\000\000\000\000\186\000\143\000\000\000\156\000\139\000\000\000\000\000\000\000\148\000\000\000\000\000\139\000\000\000\000\004\218\000\148\000\000\000\190\000\186\000\000\000\000\000\000\000\153\000\156\000\139\006g\000\000\000\187\000\148\000\152\002\199\000\188\000\000\002\203\000\000\000\000\000\000\000\158\006\199\002\241\000\000\000\156\000\141\000\000\000\154\000\187\002\218\000\142\002\253\000\188\000\000\000\143\000\000\000\139\000\000\000\158\000\000\000\148\002\219\000\000\000\000\000\141\003\018\000\000\000\000\000\000\000\142\000\000\000\141\000\186\000\143\000\000\000\000\000\142\000\000\000\000\000\000\000\143\000\000\000\152\000\000\000\141\000\000\000\000\000\000\000\000\000\142\000\141\000\000\000\000\000\143\002\204\000\156\000\139\000\000\002\205\000\187\000\148\000\152\004\240\000\188\000\000\000\000\000\000\000\000\000\152\000\158\000\153\000\000\000\000\000\141\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\152\000\143\000\000\003z\003{\000\000\002\241\000\000\000\000\002\253\000\000\000\154\000\000\000\000\000\000\000\000\000\000\000\139\000\000\000\000\000\000\000\148\000\000\003\020\000\000\000\000\000\000\000\000\000\000\000\152\000\000\004\245\000\141\000\000\000\000\000\000\000\186\000\142\000\000\000\153\000\000\000\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\252\000\000\000\000\000\000\000\000\000\000\002\241\000\000\000\153\000\156\000\141\000\154\003|\000\187\000\000\000\153\003}\000\188\000\000\000\152\000\000\000\000\002\218\000\158\000\141\002\241\000\000\000\000\000\153\000\142\000\154\000\000\006h\000\143\002\219\000\000\000\186\000\154\000\000\000\139\000\000\000\000\000\000\000\148\000\000\006h\000\000\000\000\000\000\000\000\000\154\000\000\000\000\000\000\000\139\000\186\000\000\000\153\000\148\000\156\000\000\000\152\000\186\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\139\000\158\001N\000\186\000\148\000\000\000\156\000\154\000\000\000\000\000\187\000\139\000\000\000\156\000\188\000\148\000\000\000\187\000\000\000\000\000\158\000\188\000\000\000\000\000\141\000\153\000\156\000\158\000\000\000\142\000\187\002\253\000\186\000\143\000\188\002\199\000\000\000\000\002\203\000\141\000\158\003\138\001t\000\000\000\142\003\022\000\000\000\154\000\143\000\000\000\139\000\000\000\000\003\139\000\148\000\156\000\000\000\141\000\000\000\187\000\000\000\152\000\142\000\188\000\000\000\000\000\143\000\153\000\141\000\158\000\000\000\000\000\186\000\142\000\000\000\000\000\152\000\143\000\000\000\000\000\000\000\000\000\000\000\000\001\141\000\000\000\139\000\000\000\000\000\154\000\148\000\000\000\141\000\139\000\152\000\156\002\204\000\148\000\000\000\187\002\205\000\000\000\000\000\188\000\000\000\152\000\000\000\141\000\000\000\158\000\000\000\000\000\142\000\000\000\186\000\000\000\143\000\000\000\000\000\000\003\155\000\000\000\139\000\000\000\000\000\000\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\170\000\000\000\000\000\156\000\000\000\153\000\000\000\187\000\000\000\141\000\152\000\188\000\000\000\000\000\142\000\000\000\141\000\158\000\143\000\000\000\153\000\142\001\190\000\000\000\000\000\143\000\000\000\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\160\000\153\000\000\000\000\000\000\000\154\000\000\000\000\000\141\000\152\000\000\000\000\000\153\000\142\000\000\000\186\000\152\000\143\002\164\000\000\000\000\000\000\000\000\000\154\002\218\000\000\000\000\000\000\000\000\002\212\000\186\000\000\000\000\000\000\000\154\000\000\002\219\000\000\000\156\000\000\000\000\000\000\000\187\000\000\000\000\000\152\000\188\000\000\000\186\000\000\000\000\000\153\000\158\000\156\000\000\000\000\000\139\000\187\000\139\000\186\000\148\000\188\000\148\000\000\000\000\000\000\000\000\000\158\002\227\000\000\000\000\000\156\000\000\000\154\000\000\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\156\000\000\000\000\000\158\000\187\000\153\000\000\000\000\000\188\000\000\000\000\000\000\000\153\000\000\000\158\000\139\000\186\000\000\000\000\000\148\000\000\000\000\002\229\002\253\000\000\000\000\000\000\000\154\000\000\003\132\000\000\000\141\000\000\000\141\000\154\000\000\000\142\003\024\000\142\000\156\000\143\000\153\000\143\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\139\000\186\000\158\000\000\000\148\000\000\000\000\003\197\000\186\000\000\002\199\000\000\000\154\002\203\000\000\000\000\000\000\000\152\000\000\000\152\000\000\000\141\000\000\000\000\000\156\000\000\000\142\000\000\000\187\000\000\000\143\000\156\000\188\000\000\000\000\000\187\000\139\000\186\000\158\000\188\000\148\000\000\000\000\000\139\000\000\000\158\000\000\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000\152\000\000\000\156\000\000\000\142\000\000\000\187\000\000\000\143\000\141\000\188\000\139\000\000\002\204\000\139\000\148\000\158\002\205\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000\152\000\153\000\000\000\153\000\142\000\000\000\141\000\000\000\143\000\000\000\000\000\142\000\000\000\000\000\000\000\143\000\000\000\000\003\202\000\000\003\206\000\000\000\000\000\154\000\000\000\154\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\141\000\152\000\142\000\000\000\000\000\142\000\143\000\153\000\152\000\143\000\000\000\000\000\139\000\186\000\000\000\186\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\227\000\000\000\000\000\000\000\000\000\154\000\000\000\139\000\000\000\000\000\152\000\148\000\156\000\152\000\156\000\000\000\187\002\218\000\187\000\153\000\188\000\000\000\188\000\000\000\000\000\000\000\158\000\000\000\158\002\219\000\186\000\000\000\000\000\139\000\000\000\000\004\n\000\148\000\000\000\000\000\000\000\154\000\000\000\000\000\000\000\141\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\156\000\143\000\153\000\000\000\187\000\000\000\000\000\000\000\188\000\153\000\000\000\141\000\000\000\186\000\158\000\000\000\142\000\000\000\000\004\172\000\143\000\000\000\000\000\000\000\154\000\000\005\019\000\000\000\000\000\152\000\000\000\154\000\000\003z\003{\000\153\000\156\000\141\000\153\000\000\000\187\000\000\000\142\000\000\000\188\002\253\000\143\000\000\000\152\000\186\000\158\000\000\005'\000\000\000\000\005)\000\186\000\154\000\000\003\026\000\154\000\139\000\000\000\000\000\000\000\148\000\000\000\000\000\000\000\000\000\000\000\139\000\156\000\139\000\152\000\150\000\187\000\140\000\000\000\156\000\188\000\000\000\186\000\187\000\139\000\186\000\158\000\188\000\140\000\000\000\141\000\000\003|\000\158\003z\003{\003}\000\000\000\000\003z\003{\000\000\000\000\000\000\000\000\000\156\000\000\000\153\000\156\000\187\000\000\000\000\000\187\000\188\000\000\000\000\000\188\000\000\000\141\000\158\000\000\000\000\000\158\000\142\005+\000\000\000\153\000\143\000\141\000\154\000\141\000\000\000\000\000\142\000\000\000\142\000\000\000\143\000\000\000\143\000\000\000\141\000\000\0051\003z\003{\000\142\000\000\000\154\000\000\000\143\000\141\000\153\003|\000\186\000\152\000\141\003}\003|\000\000\003z\003{\003}\000\000\000\000\000\152\000\000\000\152\000\000\005?\000\000\000\000\000\000\000\186\000\154\000\000\000\000\000\156\000\152\000\000\000\000\000\187\000\000\003z\003{\000\188\000\000\000\000\000\000\000\000\000\000\000\158\000\000\003\138\003z\003{\000\156\000\000\000\000\000\186\000\187\000\141\000\000\003|\000\188\003\139\000\000\003}\000\000\000\000\000\158\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000\000\003|\003z\003{\000\156\003}\000\000\000\000\000\187\000\000\000\000\000\000\000\188\000\000\000\000\000\153\000\000\000\000\000\158\000\000\000\000\000\000\000\141\000\000\003|\000\153\000\000\000\153\003}\000\000\000\000\000\000\005M\000\141\000\000\003|\003\138\000\154\000\153\003}\000\000\003\138\000\000\000\000\000\000\000\000\000\000\000\154\003\139\000\154\000\000\000\000\000\000\003\139\003\155\000\000\000\000\000\000\000\000\000\141\000\154\003|\000\186\000\000\000\000\003}\000\000\000\000\003\172\000\000\000\000\000\000\000\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\156\003\138\000\000\000\000\000\187\000\000\000\000\000\000\000\188\000\000\000\156\000\000\000\156\003\139\000\158\003\149\000\000\003\138\000\000\000\000\000\000\000\000\000\000\000\156\000\158\000\000\000\192\000\000\000\000\003\139\003\155\000\000\000\000\000\000\000\000\003\155\000\000\000\194\000\000\000\000\003\138\000\000\000\000\000\000\003\174\000\000\000\000\000\000\000\000\003\176\000\000\003\138\003\139\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\139\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\138\000\000\000\000\003\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\139\000\000\000\000\000\000\000\000\003\178\000\000\003\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\155\000\000\000\000\003\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\155\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\190"))
   
   let semantic_action =
     [|
@@ -1571,9 +1608,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_aexpr = 
-# 1943 "parser_cocci_menhir.mly"
+# 1956 "parser_cocci_menhir.mly"
       ( Ast0.set_arg_exp _1 )
-# 1577 "parser_cocci_menhir.ml"
+# 1614 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1594,12 +1631,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 69 "parser_cocci_menhir.mly"
        (Parse_aux.list_info)
-# 1598 "parser_cocci_menhir.ml"
+# 1635 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_aexpr = 
-# 1945 "parser_cocci_menhir.mly"
+# 1958 "parser_cocci_menhir.mly"
       ( let (nm,lenname,pure,clt) = _1 in
       let nm = P.clt2mcode nm clt in
       let lenname =
@@ -1608,7 +1645,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
        | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
        | Ast.CstLen n -> Ast0.CstListLen n in
       Ast0.wrap(Ast0.MetaExprList(nm,lenname,pure)) )
-# 1612 "parser_cocci_menhir.ml"
+# 1649 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1630,9 +1667,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_aexpr = 
-# 1954 "parser_cocci_menhir.mly"
+# 1967 "parser_cocci_menhir.mly"
       ( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) )
-# 1636 "parser_cocci_menhir.ml"
+# 1673 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1652,9 +1689,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_any_strict = 
-# 1998 "parser_cocci_menhir.mly"
+# 2011 "parser_cocci_menhir.mly"
             ( Ast.WhenAny )
-# 1658 "parser_cocci_menhir.ml"
+# 1695 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1674,9 +1711,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_any_strict = 
-# 1999 "parser_cocci_menhir.mly"
+# 2012 "parser_cocci_menhir.mly"
             ( Ast.WhenStrict )
-# 1680 "parser_cocci_menhir.ml"
+# 1717 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1696,9 +1733,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_any_strict = 
-# 2000 "parser_cocci_menhir.mly"
+# 2013 "parser_cocci_menhir.mly"
             ( Ast.WhenForall )
-# 1702 "parser_cocci_menhir.ml"
+# 1739 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1718,9 +1755,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_any_strict = 
-# 2001 "parser_cocci_menhir.mly"
+# 2014 "parser_cocci_menhir.mly"
             ( Ast.WhenExists )
-# 1724 "parser_cocci_menhir.ml"
+# 1761 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1742,9 +1779,49 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1303 "parser_cocci_menhir.mly"
+# 1314 "parser_cocci_menhir.mly"
                                             ( _1 )
-# 1748 "parser_cocci_menhir.ml"
+# 1785 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.semv = _3;
+          MenhirLib.EngineTypes.startp = _startpos__3_;
+          MenhirLib.EngineTypes.endp = _endpos__3_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = _2;
+            MenhirLib.EngineTypes.startp = _startpos__2_;
+            MenhirLib.EngineTypes.endp = _endpos__2_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.state = _menhir_s;
+              MenhirLib.EngineTypes.semv = _1;
+              MenhirLib.EngineTypes.startp = _startpos__1_;
+              MenhirLib.EngineTypes.endp = _endpos__1_;
+              MenhirLib.EngineTypes.next = _menhir_stack;
+              };
+            };
+          } = _menhir_stack in
+        let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+        let _2 : (
+# 102 "parser_cocci_menhir.mly"
+       (Data.clt)
+# 1817 "parser_cocci_menhir.ml"
+        ) = Obj.magic _2 in
+        let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__3_ in
+        let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
+# 1316 "parser_cocci_menhir.mly"
+      ( P.arith_op Ast.Mul _1 _2 _3 )
+# 1825 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1774,17 +1851,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           } = _menhir_stack in
         let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
         let _2 : (
-# 102 "parser_cocci_menhir.mly"
-       (Data.clt)
-# 1780 "parser_cocci_menhir.ml"
+# 100 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 1857 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1305 "parser_cocci_menhir.mly"
-      ( P.arith_op Ast.Mul _1 _2 _3 )
-# 1788 "parser_cocci_menhir.ml"
+# 1318 "parser_cocci_menhir.mly"
+      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 1865 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1814,17 +1891,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           } = _menhir_stack in
         let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
         let _2 : (
-# 100 "parser_cocci_menhir.mly"
-       (Ast_cocci.arithOp * Data.clt)
-# 1820 "parser_cocci_menhir.ml"
+# 101 "parser_cocci_menhir.mly"
+       (Data.clt)
+# 1897 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1307 "parser_cocci_menhir.mly"
-      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 1828 "parser_cocci_menhir.ml"
+# 1320 "parser_cocci_menhir.mly"
+      ( P.arith_op Ast.Plus _1 _2 _3 )
+# 1905 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1856,15 +1933,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 1860 "parser_cocci_menhir.ml"
+# 1937 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1309 "parser_cocci_menhir.mly"
-      ( P.arith_op Ast.Plus _1 _2 _3 )
-# 1868 "parser_cocci_menhir.ml"
+# 1322 "parser_cocci_menhir.mly"
+      ( P.arith_op Ast.Minus _1 _2 _3 )
+# 1945 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1894,17 +1971,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           } = _menhir_stack in
         let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
         let _2 : (
-# 101 "parser_cocci_menhir.mly"
-       (Data.clt)
-# 1900 "parser_cocci_menhir.ml"
+# 99 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 1977 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1311 "parser_cocci_menhir.mly"
-      ( P.arith_op Ast.Minus _1 _2 _3 )
-# 1908 "parser_cocci_menhir.ml"
+# 1324 "parser_cocci_menhir.mly"
+      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 1985 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1936,15 +2013,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 99 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 1940 "parser_cocci_menhir.ml"
+# 2017 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1313 "parser_cocci_menhir.mly"
+# 1326 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 1948 "parser_cocci_menhir.ml"
+# 2025 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -1976,15 +2053,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 98 "parser_cocci_menhir.mly"
        (Ast_cocci.logicalOp * Data.clt)
-# 1980 "parser_cocci_menhir.ml"
+# 2057 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1315 "parser_cocci_menhir.mly"
+# 1328 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 1988 "parser_cocci_menhir.ml"
+# 2065 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2016,15 +2093,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2020 "parser_cocci_menhir.ml"
+# 2097 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1317 "parser_cocci_menhir.mly"
+# 1330 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.Eq _1 _2 _3 )
-# 2028 "parser_cocci_menhir.ml"
+# 2105 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2056,15 +2133,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2060 "parser_cocci_menhir.ml"
+# 2137 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1319 "parser_cocci_menhir.mly"
+# 1332 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 2068 "parser_cocci_menhir.ml"
+# 2145 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2096,15 +2173,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2100 "parser_cocci_menhir.ml"
+# 2177 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1321 "parser_cocci_menhir.mly"
+# 1334 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.And _1 _2 _3 )
-# 2108 "parser_cocci_menhir.ml"
+# 2185 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2136,15 +2213,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 94 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2140 "parser_cocci_menhir.ml"
+# 2217 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1323 "parser_cocci_menhir.mly"
+# 1336 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Or _1 _2 _3 )
-# 2148 "parser_cocci_menhir.ml"
+# 2225 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2176,15 +2253,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 95 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2180 "parser_cocci_menhir.ml"
+# 2257 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1325 "parser_cocci_menhir.mly"
+# 1338 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Xor _1 _2 _3 )
-# 2188 "parser_cocci_menhir.ml"
+# 2265 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2216,15 +2293,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 93 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2220 "parser_cocci_menhir.ml"
+# 2297 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1327 "parser_cocci_menhir.mly"
+# 1340 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 2228 "parser_cocci_menhir.ml"
+# 2305 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2256,15 +2333,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 92 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2260 "parser_cocci_menhir.ml"
+# 2337 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_dot_expressions_ = 
-# 1329 "parser_cocci_menhir.mly"
+# 1342 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 2268 "parser_cocci_menhir.ml"
+# 2345 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2286,9 +2363,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1303 "parser_cocci_menhir.mly"
+# 1314 "parser_cocci_menhir.mly"
                                             ( _1 )
-# 2292 "parser_cocci_menhir.ml"
+# 2369 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2320,15 +2397,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2324 "parser_cocci_menhir.ml"
+# 2401 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1305 "parser_cocci_menhir.mly"
+# 1316 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Mul _1 _2 _3 )
-# 2332 "parser_cocci_menhir.ml"
+# 2409 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2360,15 +2437,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 100 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 2364 "parser_cocci_menhir.ml"
+# 2441 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1307 "parser_cocci_menhir.mly"
+# 1318 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2372 "parser_cocci_menhir.ml"
+# 2449 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2400,15 +2477,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2404 "parser_cocci_menhir.ml"
+# 2481 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1309 "parser_cocci_menhir.mly"
+# 1320 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Plus _1 _2 _3 )
-# 2412 "parser_cocci_menhir.ml"
+# 2489 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2440,15 +2517,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2444 "parser_cocci_menhir.ml"
+# 2521 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1311 "parser_cocci_menhir.mly"
+# 1322 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Minus _1 _2 _3 )
-# 2452 "parser_cocci_menhir.ml"
+# 2529 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2480,15 +2557,55 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 99 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 2484 "parser_cocci_menhir.ml"
+# 2561 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1313 "parser_cocci_menhir.mly"
+# 1324 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2492 "parser_cocci_menhir.ml"
+# 2569 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.semv = _3;
+          MenhirLib.EngineTypes.startp = _startpos__3_;
+          MenhirLib.EngineTypes.endp = _endpos__3_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = _2;
+            MenhirLib.EngineTypes.startp = _startpos__2_;
+            MenhirLib.EngineTypes.endp = _endpos__2_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.state = _menhir_s;
+              MenhirLib.EngineTypes.semv = _1;
+              MenhirLib.EngineTypes.startp = _startpos__1_;
+              MenhirLib.EngineTypes.endp = _endpos__1_;
+              MenhirLib.EngineTypes.next = _menhir_stack;
+              };
+            };
+          } = _menhir_stack in
+        let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+        let _2 : (
+# 99 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 2601 "parser_cocci_menhir.ml"
+        ) = Obj.magic _2 in
+        let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__3_ in
+        let _v : 'tv_arith_expr_eexpr_invalid_ = 
+# 1326 "parser_cocci_menhir.mly"
+      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 2609 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2520,15 +2637,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 98 "parser_cocci_menhir.mly"
        (Ast_cocci.logicalOp * Data.clt)
-# 2524 "parser_cocci_menhir.ml"
+# 2641 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1315 "parser_cocci_menhir.mly"
+# 1328 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 2532 "parser_cocci_menhir.ml"
+# 2649 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2560,15 +2677,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2564 "parser_cocci_menhir.ml"
+# 2681 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1317 "parser_cocci_menhir.mly"
+# 1330 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.Eq _1 _2 _3 )
-# 2572 "parser_cocci_menhir.ml"
+# 2689 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2600,15 +2717,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2604 "parser_cocci_menhir.ml"
+# 2721 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1319 "parser_cocci_menhir.mly"
+# 1332 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 2612 "parser_cocci_menhir.ml"
+# 2729 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2640,15 +2757,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2644 "parser_cocci_menhir.ml"
+# 2761 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1321 "parser_cocci_menhir.mly"
+# 1334 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.And _1 _2 _3 )
-# 2652 "parser_cocci_menhir.ml"
+# 2769 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2680,15 +2797,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 94 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2684 "parser_cocci_menhir.ml"
+# 2801 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1323 "parser_cocci_menhir.mly"
+# 1336 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Or _1 _2 _3 )
-# 2692 "parser_cocci_menhir.ml"
+# 2809 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2720,15 +2837,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 95 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2724 "parser_cocci_menhir.ml"
+# 2841 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1325 "parser_cocci_menhir.mly"
+# 1338 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Xor _1 _2 _3 )
-# 2732 "parser_cocci_menhir.ml"
+# 2849 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2760,15 +2877,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 93 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2764 "parser_cocci_menhir.ml"
+# 2881 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1327 "parser_cocci_menhir.mly"
+# 1340 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 2772 "parser_cocci_menhir.ml"
+# 2889 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2800,15 +2917,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 92 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2804 "parser_cocci_menhir.ml"
+# 2921 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_invalid_ = 
-# 1329 "parser_cocci_menhir.mly"
+# 1342 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 2812 "parser_cocci_menhir.ml"
+# 2929 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2830,9 +2947,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1303 "parser_cocci_menhir.mly"
+# 1314 "parser_cocci_menhir.mly"
                                             ( _1 )
-# 2836 "parser_cocci_menhir.ml"
+# 2953 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2864,15 +2981,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2868 "parser_cocci_menhir.ml"
+# 2985 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1305 "parser_cocci_menhir.mly"
+# 1316 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Mul _1 _2 _3 )
-# 2876 "parser_cocci_menhir.ml"
+# 2993 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2904,15 +3021,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 100 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 2908 "parser_cocci_menhir.ml"
+# 3025 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1307 "parser_cocci_menhir.mly"
+# 1318 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2916 "parser_cocci_menhir.ml"
+# 3033 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2944,15 +3061,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2948 "parser_cocci_menhir.ml"
+# 3065 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1309 "parser_cocci_menhir.mly"
+# 1320 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Plus _1 _2 _3 )
-# 2956 "parser_cocci_menhir.ml"
+# 3073 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -2984,15 +3101,55 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 2988 "parser_cocci_menhir.ml"
+# 3105 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1311 "parser_cocci_menhir.mly"
+# 1322 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Minus _1 _2 _3 )
-# 2996 "parser_cocci_menhir.ml"
+# 3113 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.semv = _3;
+          MenhirLib.EngineTypes.startp = _startpos__3_;
+          MenhirLib.EngineTypes.endp = _endpos__3_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = _2;
+            MenhirLib.EngineTypes.startp = _startpos__2_;
+            MenhirLib.EngineTypes.endp = _endpos__2_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.state = _menhir_s;
+              MenhirLib.EngineTypes.semv = _1;
+              MenhirLib.EngineTypes.startp = _startpos__1_;
+              MenhirLib.EngineTypes.endp = _endpos__1_;
+              MenhirLib.EngineTypes.next = _menhir_stack;
+              };
+            };
+          } = _menhir_stack in
+        let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+        let _2 : (
+# 99 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 3145 "parser_cocci_menhir.ml"
+        ) = Obj.magic _2 in
+        let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__3_ in
+        let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
+# 1324 "parser_cocci_menhir.mly"
+      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3153 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3024,15 +3181,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 99 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 3028 "parser_cocci_menhir.ml"
+# 3185 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1313 "parser_cocci_menhir.mly"
+# 1326 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 3036 "parser_cocci_menhir.ml"
+# 3193 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3064,15 +3221,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 98 "parser_cocci_menhir.mly"
        (Ast_cocci.logicalOp * Data.clt)
-# 3068 "parser_cocci_menhir.ml"
+# 3225 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1315 "parser_cocci_menhir.mly"
+# 1328 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 3076 "parser_cocci_menhir.ml"
+# 3233 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3104,15 +3261,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3108 "parser_cocci_menhir.ml"
+# 3265 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1317 "parser_cocci_menhir.mly"
+# 1330 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.Eq _1 _2 _3 )
-# 3116 "parser_cocci_menhir.ml"
+# 3273 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3144,15 +3301,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3148 "parser_cocci_menhir.ml"
+# 3305 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1319 "parser_cocci_menhir.mly"
+# 1332 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 3156 "parser_cocci_menhir.ml"
+# 3313 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3184,15 +3341,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3188 "parser_cocci_menhir.ml"
+# 3345 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1321 "parser_cocci_menhir.mly"
+# 1334 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.And _1 _2 _3 )
-# 3196 "parser_cocci_menhir.ml"
+# 3353 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3224,15 +3381,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 94 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3228 "parser_cocci_menhir.ml"
+# 3385 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1323 "parser_cocci_menhir.mly"
+# 1336 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Or _1 _2 _3 )
-# 3236 "parser_cocci_menhir.ml"
+# 3393 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3264,15 +3421,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 95 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3268 "parser_cocci_menhir.ml"
+# 3425 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1325 "parser_cocci_menhir.mly"
+# 1338 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Xor _1 _2 _3 )
-# 3276 "parser_cocci_menhir.ml"
+# 3433 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3304,15 +3461,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 93 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3308 "parser_cocci_menhir.ml"
+# 3465 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1327 "parser_cocci_menhir.mly"
+# 1340 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 3316 "parser_cocci_menhir.ml"
+# 3473 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3344,15 +3501,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 92 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3348 "parser_cocci_menhir.ml"
+# 3505 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_eexpr_nest_expressions_ = 
-# 1329 "parser_cocci_menhir.mly"
+# 1342 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 3356 "parser_cocci_menhir.ml"
+# 3513 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3374,9 +3531,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1303 "parser_cocci_menhir.mly"
+# 1314 "parser_cocci_menhir.mly"
                                             ( _1 )
-# 3380 "parser_cocci_menhir.ml"
+# 3537 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3408,15 +3565,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3412 "parser_cocci_menhir.ml"
+# 3569 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1305 "parser_cocci_menhir.mly"
+# 1316 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Mul _1 _2 _3 )
-# 3420 "parser_cocci_menhir.ml"
+# 3577 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3448,15 +3605,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 100 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 3452 "parser_cocci_menhir.ml"
+# 3609 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1307 "parser_cocci_menhir.mly"
+# 1318 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 3460 "parser_cocci_menhir.ml"
+# 3617 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3488,15 +3645,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3492 "parser_cocci_menhir.ml"
+# 3649 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1309 "parser_cocci_menhir.mly"
+# 1320 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Plus _1 _2 _3 )
-# 3500 "parser_cocci_menhir.ml"
+# 3657 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3528,15 +3685,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3532 "parser_cocci_menhir.ml"
+# 3689 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1311 "parser_cocci_menhir.mly"
+# 1322 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Minus _1 _2 _3 )
-# 3540 "parser_cocci_menhir.ml"
+# 3697 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3568,15 +3725,55 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 99 "parser_cocci_menhir.mly"
        (Ast_cocci.arithOp * Data.clt)
-# 3572 "parser_cocci_menhir.ml"
+# 3729 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1313 "parser_cocci_menhir.mly"
+# 1324 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 3580 "parser_cocci_menhir.ml"
+# 3737 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.semv = _3;
+          MenhirLib.EngineTypes.startp = _startpos__3_;
+          MenhirLib.EngineTypes.endp = _endpos__3_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = _2;
+            MenhirLib.EngineTypes.startp = _startpos__2_;
+            MenhirLib.EngineTypes.endp = _endpos__2_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.state = _menhir_s;
+              MenhirLib.EngineTypes.semv = _1;
+              MenhirLib.EngineTypes.startp = _startpos__1_;
+              MenhirLib.EngineTypes.endp = _endpos__1_;
+              MenhirLib.EngineTypes.next = _menhir_stack;
+              };
+            };
+          } = _menhir_stack in
+        let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+        let _2 : (
+# 99 "parser_cocci_menhir.mly"
+       (Ast_cocci.arithOp * Data.clt)
+# 3769 "parser_cocci_menhir.ml"
+        ) = Obj.magic _2 in
+        let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__3_ in
+        let _v : 'tv_arith_expr_expr_invalid_ = 
+# 1326 "parser_cocci_menhir.mly"
+      ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3777 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3608,15 +3805,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 98 "parser_cocci_menhir.mly"
        (Ast_cocci.logicalOp * Data.clt)
-# 3612 "parser_cocci_menhir.ml"
+# 3809 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1315 "parser_cocci_menhir.mly"
+# 1328 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 3620 "parser_cocci_menhir.ml"
+# 3817 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3648,15 +3845,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3652 "parser_cocci_menhir.ml"
+# 3849 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1317 "parser_cocci_menhir.mly"
+# 1330 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.Eq _1 _2 _3 )
-# 3660 "parser_cocci_menhir.ml"
+# 3857 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3688,15 +3885,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 97 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3692 "parser_cocci_menhir.ml"
+# 3889 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1319 "parser_cocci_menhir.mly"
+# 1332 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 3700 "parser_cocci_menhir.ml"
+# 3897 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3728,15 +3925,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3732 "parser_cocci_menhir.ml"
+# 3929 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1321 "parser_cocci_menhir.mly"
+# 1334 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.And _1 _2 _3 )
-# 3740 "parser_cocci_menhir.ml"
+# 3937 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3768,15 +3965,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 94 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3772 "parser_cocci_menhir.ml"
+# 3969 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1323 "parser_cocci_menhir.mly"
+# 1336 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Or _1 _2 _3 )
-# 3780 "parser_cocci_menhir.ml"
+# 3977 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3808,15 +4005,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 95 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3812 "parser_cocci_menhir.ml"
+# 4009 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1325 "parser_cocci_menhir.mly"
+# 1338 "parser_cocci_menhir.mly"
       ( P.arith_op Ast.Xor _1 _2 _3 )
-# 3820 "parser_cocci_menhir.ml"
+# 4017 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3848,15 +4045,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 93 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3852 "parser_cocci_menhir.ml"
+# 4049 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1327 "parser_cocci_menhir.mly"
+# 1340 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 3860 "parser_cocci_menhir.ml"
+# 4057 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3888,15 +4085,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 92 "parser_cocci_menhir.mly"
        (Data.clt)
-# 3892 "parser_cocci_menhir.ml"
+# 4089 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_arith_expr_expr_invalid_ = 
-# 1329 "parser_cocci_menhir.mly"
+# 1342 "parser_cocci_menhir.mly"
       ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 3900 "parser_cocci_menhir.ml"
+# 4097 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3916,9 +4113,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arity = 
-# 505 "parser_cocci_menhir.mly"
+# 513 "parser_cocci_menhir.mly"
               ( Ast.UNIQUE )
-# 3922 "parser_cocci_menhir.ml"
+# 4119 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3938,9 +4135,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arity = 
-# 506 "parser_cocci_menhir.mly"
+# 514 "parser_cocci_menhir.mly"
               ( Ast.OPT )
-# 3944 "parser_cocci_menhir.ml"
+# 4141 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3960,9 +4157,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_arity = 
-# 507 "parser_cocci_menhir.mly"
+# 515 "parser_cocci_menhir.mly"
               ( Ast.MULTI )
-# 3966 "parser_cocci_menhir.ml"
+# 4163 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -3977,9 +4174,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_arity = 
-# 508 "parser_cocci_menhir.mly"
+# 516 "parser_cocci_menhir.mly"
                    ( Ast.NONE )
-# 3983 "parser_cocci_menhir.ml"
+# 4180 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4010,20 +4207,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4014 "parser_cocci_menhir.ml"
+# 4211 "parser_cocci_menhir.ml"
         ) = Obj.magic r in
         let i : 'tv_option_eexpr_ = Obj.magic i in
         let l : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4020 "parser_cocci_menhir.ml"
+# 4217 "parser_cocci_menhir.ml"
         ) = Obj.magic l in
         let _startpos = _startpos_l_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_array_dec = 
-# 1106 "parser_cocci_menhir.mly"
+# 1117 "parser_cocci_menhir.mly"
                                            ( (l,i,r) )
-# 4027 "parser_cocci_menhir.ml"
+# 4224 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4045,9 +4242,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_assign_expr_eexpr_dot_expressions_ = 
-# 1275 "parser_cocci_menhir.mly"
+# 1286 "parser_cocci_menhir.mly"
                                            ( _1 )
-# 4051 "parser_cocci_menhir.ml"
+# 4248 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4079,17 +4276,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 111 "parser_cocci_menhir.mly"
        (Ast_cocci.assignOp * Data.clt)
-# 4083 "parser_cocci_menhir.ml"
+# 4280 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_eexpr_dot_expressions_ = 
-# 1277 "parser_cocci_menhir.mly"
+# 1288 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in
       Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
                                Ast0.set_arg_exp _3,false)) )
-# 4093 "parser_cocci_menhir.ml"
+# 4290 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4121,17 +4318,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4125 "parser_cocci_menhir.ml"
+# 4322 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_eexpr_dot_expressions_ = 
-# 1281 "parser_cocci_menhir.mly"
+# 1292 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.Assignment
             (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4135 "parser_cocci_menhir.ml"
+# 4332 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4153,9 +4350,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_assign_expr_eexpr_nest_expressions_ = 
-# 1275 "parser_cocci_menhir.mly"
+# 1286 "parser_cocci_menhir.mly"
                                            ( _1 )
-# 4159 "parser_cocci_menhir.ml"
+# 4356 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4187,17 +4384,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 111 "parser_cocci_menhir.mly"
        (Ast_cocci.assignOp * Data.clt)
-# 4191 "parser_cocci_menhir.ml"
+# 4388 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_eexpr_nest_expressions_ = 
-# 1277 "parser_cocci_menhir.mly"
+# 1288 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in
       Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
                                Ast0.set_arg_exp _3,false)) )
-# 4201 "parser_cocci_menhir.ml"
+# 4398 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4229,17 +4426,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4233 "parser_cocci_menhir.ml"
+# 4430 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_eexpr_nest_expressions_ = 
-# 1281 "parser_cocci_menhir.mly"
+# 1292 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.Assignment
             (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4243 "parser_cocci_menhir.ml"
+# 4440 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4261,9 +4458,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_assign_expr_expr_invalid_ = 
-# 1275 "parser_cocci_menhir.mly"
+# 1286 "parser_cocci_menhir.mly"
                                            ( _1 )
-# 4267 "parser_cocci_menhir.ml"
+# 4464 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4295,17 +4492,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 111 "parser_cocci_menhir.mly"
        (Ast_cocci.assignOp * Data.clt)
-# 4299 "parser_cocci_menhir.ml"
+# 4496 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_expr_invalid_ = 
-# 1277 "parser_cocci_menhir.mly"
+# 1288 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in
       Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
                                Ast0.set_arg_exp _3,false)) )
-# 4309 "parser_cocci_menhir.ml"
+# 4506 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4337,17 +4534,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4341 "parser_cocci_menhir.ml"
+# 4538 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_expr_invalid_ = 
-# 1281 "parser_cocci_menhir.mly"
+# 1292 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.Assignment
             (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4351 "parser_cocci_menhir.ml"
+# 4548 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4369,9 +4566,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_assign_expr_bis = 
-# 1286 "parser_cocci_menhir.mly"
+# 1297 "parser_cocci_menhir.mly"
                                                             ( _1 )
-# 4375 "parser_cocci_menhir.ml"
+# 4572 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4403,17 +4600,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 111 "parser_cocci_menhir.mly"
        (Ast_cocci.assignOp * Data.clt)
-# 4407 "parser_cocci_menhir.ml"
+# 4604 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_bis = 
-# 1288 "parser_cocci_menhir.mly"
+# 1299 "parser_cocci_menhir.mly"
       ( let (op,clt) = _2 in
       Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
                                Ast0.set_arg_exp _3,false)) )
-# 4417 "parser_cocci_menhir.ml"
+# 4614 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4445,17 +4642,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4449 "parser_cocci_menhir.ml"
+# 4646 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_assign_expr_bis = 
-# 1292 "parser_cocci_menhir.mly"
+# 1303 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.Assignment
             (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4459 "parser_cocci_menhir.ml"
+# 4656 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4477,9 +4674,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_basic_expr_eexpr_dot_expressions_ = 
-# 1272 "parser_cocci_menhir.mly"
+# 1283 "parser_cocci_menhir.mly"
                                                              ( _1 )
-# 4483 "parser_cocci_menhir.ml"
+# 4680 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4501,9 +4698,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_basic_expr_eexpr_nest_expressions_ = 
-# 1272 "parser_cocci_menhir.mly"
+# 1283 "parser_cocci_menhir.mly"
                                                              ( _1 )
-# 4507 "parser_cocci_menhir.ml"
+# 4704 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4525,9 +4722,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_basic_expr_expr_invalid_ = 
-# 1272 "parser_cocci_menhir.mly"
+# 1283 "parser_cocci_menhir.mly"
                                                              ( _1 )
-# 4531 "parser_cocci_menhir.ml"
+# 4728 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4559,20 +4756,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4563 "parser_cocci_menhir.ml"
+# 4760 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4568 "parser_cocci_menhir.ml"
+# 4765 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_case_line = 
-# 970 "parser_cocci_menhir.mly"
+# 979 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) )
-# 4576 "parser_cocci_menhir.ml"
+# 4773 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4609,20 +4806,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4613 "parser_cocci_menhir.ml"
+# 4810 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4619 "parser_cocci_menhir.ml"
+# 4816 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_case_line = 
-# 973 "parser_cocci_menhir.mly"
+# 982 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) )
-# 4626 "parser_cocci_menhir.ml"
+# 4823 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4644,9 +4841,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cast_expr_eexpr_dot_expressions_ = 
-# 1332 "parser_cocci_menhir.mly"
+# 1345 "parser_cocci_menhir.mly"
                                           ( _1 )
-# 4650 "parser_cocci_menhir.ml"
+# 4847 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4683,21 +4880,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4687 "parser_cocci_menhir.ml"
+# 4884 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4693 "parser_cocci_menhir.ml"
+# 4890 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_e_ in
         let _v : 'tv_cast_expr_eexpr_dot_expressions_ = 
-# 1334 "parser_cocci_menhir.mly"
+# 1347 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
                             P.clt2mcode ")" rp, e)) )
-# 4701 "parser_cocci_menhir.ml"
+# 4898 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4719,9 +4916,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cast_expr_eexpr_invalid_ = 
-# 1332 "parser_cocci_menhir.mly"
+# 1345 "parser_cocci_menhir.mly"
                                           ( _1 )
-# 4725 "parser_cocci_menhir.ml"
+# 4922 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4758,21 +4955,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4762 "parser_cocci_menhir.ml"
+# 4959 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4768 "parser_cocci_menhir.ml"
+# 4965 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_e_ in
         let _v : 'tv_cast_expr_eexpr_invalid_ = 
-# 1334 "parser_cocci_menhir.mly"
+# 1347 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
                             P.clt2mcode ")" rp, e)) )
-# 4776 "parser_cocci_menhir.ml"
+# 4973 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4794,9 +4991,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cast_expr_eexpr_nest_expressions_ = 
-# 1332 "parser_cocci_menhir.mly"
+# 1345 "parser_cocci_menhir.mly"
                                           ( _1 )
-# 4800 "parser_cocci_menhir.ml"
+# 4997 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4833,21 +5030,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4837 "parser_cocci_menhir.ml"
+# 5034 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4843 "parser_cocci_menhir.ml"
+# 5040 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_e_ in
         let _v : 'tv_cast_expr_eexpr_nest_expressions_ = 
-# 1334 "parser_cocci_menhir.mly"
+# 1347 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
                             P.clt2mcode ")" rp, e)) )
-# 4851 "parser_cocci_menhir.ml"
+# 5048 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4869,9 +5066,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cast_expr_expr_invalid_ = 
-# 1332 "parser_cocci_menhir.mly"
+# 1345 "parser_cocci_menhir.mly"
                                           ( _1 )
-# 4875 "parser_cocci_menhir.ml"
+# 5072 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4908,21 +5105,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4912 "parser_cocci_menhir.ml"
+# 5109 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4918 "parser_cocci_menhir.ml"
+# 5115 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_e_ in
         let _v : 'tv_cast_expr_expr_invalid_ = 
-# 1334 "parser_cocci_menhir.mly"
+# 1347 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
                             P.clt2mcode ")" rp, e)) )
-# 4926 "parser_cocci_menhir.ml"
+# 5123 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4950,7 +5147,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_choose_iso = 
 # 242 "parser_cocci_menhir.mly"
                                                  ( List.map P.id2name _2 )
-# 4954 "parser_cocci_menhir.ml"
+# 5151 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -4976,21 +5173,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4980 "parser_cocci_menhir.ml"
+# 5177 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 4985 "parser_cocci_menhir.ml"
+# 5182 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_comma_decls_TEllipsis_decl_ = 
-# 1738 "parser_cocci_menhir.mly"
+# 1751 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
        dot_builder _2] )
-# 4994 "parser_cocci_menhir.ml"
+# 5191 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5017,15 +5214,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5021 "parser_cocci_menhir.ml"
+# 5218 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_comma_decls_TEllipsis_decl_ = 
-# 1742 "parser_cocci_menhir.mly"
+# 1755 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
-# 5029 "parser_cocci_menhir.ml"
+# 5226 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5051,21 +5248,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5055 "parser_cocci_menhir.ml"
+# 5252 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5060 "parser_cocci_menhir.ml"
+# 5257 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ = 
-# 1738 "parser_cocci_menhir.mly"
+# 1751 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
        dot_builder _2] )
-# 5069 "parser_cocci_menhir.ml"
+# 5266 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5092,15 +5289,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5096 "parser_cocci_menhir.ml"
+# 5293 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ = 
-# 1742 "parser_cocci_menhir.mly"
+# 1755 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
-# 5104 "parser_cocci_menhir.ml"
+# 5301 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5115,9 +5312,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = 
-# 1161 "parser_cocci_menhir.mly"
+# 1172 "parser_cocci_menhir.mly"
               ( [] )
-# 5121 "parser_cocci_menhir.ml"
+# 5318 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5145,9 +5342,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = 
-# 1163 "parser_cocci_menhir.mly"
+# 1174 "parser_cocci_menhir.mly"
       ( (function dot_builder -> [dot_builder d])::r )
-# 5151 "parser_cocci_menhir.ml"
+# 5348 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5173,9 +5370,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = 
-# 1164 "parser_cocci_menhir.mly"
+# 1175 "parser_cocci_menhir.mly"
                                         ( r )
-# 5179 "parser_cocci_menhir.ml"
+# 5376 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5207,16 +5404,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5211 "parser_cocci_menhir.ml"
+# 5408 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let i : 'tv_initialize2 = Obj.magic i in
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = 
-# 1166 "parser_cocci_menhir.mly"
+# 1177 "parser_cocci_menhir.mly"
     ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
       r )
-# 5220 "parser_cocci_menhir.ml"
+# 5417 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5231,9 +5428,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ = 
-# 1170 "parser_cocci_menhir.mly"
+# 1181 "parser_cocci_menhir.mly"
               ( [] )
-# 5237 "parser_cocci_menhir.ml"
+# 5434 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5259,9 +5456,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ = 
-# 1171 "parser_cocci_menhir.mly"
+# 1182 "parser_cocci_menhir.mly"
                                         ( r )
-# 5265 "parser_cocci_menhir.ml"
+# 5462 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5293,16 +5490,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5297 "parser_cocci_menhir.ml"
+# 5494 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let i : 'tv_initialize2 = Obj.magic i in
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ = 
-# 1173 "parser_cocci_menhir.mly"
+# 1184 "parser_cocci_menhir.mly"
     ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
       r )
-# 5306 "parser_cocci_menhir.ml"
+# 5503 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5324,9 +5521,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_any_strict_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5330 "parser_cocci_menhir.ml"
+# 5527 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5348,9 +5545,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_ctype_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5354 "parser_cocci_menhir.ml"
+# 5551 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5372,9 +5569,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_d_ident_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5378 "parser_cocci_menhir.ml"
+# 5575 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5396,9 +5593,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_ident_or_const_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5402 "parser_cocci_menhir.ml"
+# 5599 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5420,9 +5617,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_meta_ident_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5426 "parser_cocci_menhir.ml"
+# 5623 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5444,9 +5641,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5450 "parser_cocci_menhir.ml"
+# 5647 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5468,9 +5665,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5474 "parser_cocci_menhir.ml"
+# 5671 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5492,9 +5689,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5498 "parser_cocci_menhir.ml"
+# 5695 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5516,9 +5713,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5522 "parser_cocci_menhir.ml"
+# 5719 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5540,9 +5737,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5546 "parser_cocci_menhir.ml"
+# 5743 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5564,9 +5761,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5570 "parser_cocci_menhir.ml"
+# 5767 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5588,9 +5785,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5594 "parser_cocci_menhir.ml"
+# 5791 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5612,9 +5809,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_x_eq_not_pos__ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5618 "parser_cocci_menhir.ml"
+# 5815 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5636,9 +5833,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_comma_list_typedef_ident_ = 
-# 1976 "parser_cocci_menhir.mly"
+# 1989 "parser_cocci_menhir.mly"
                                        ( _1 )
-# 5642 "parser_cocci_menhir.ml"
+# 5839 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5660,9 +5857,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cond_expr_eexpr_dot_expressions_ = 
-# 1297 "parser_cocci_menhir.mly"
+# 1308 "parser_cocci_menhir.mly"
                                              ( _1 )
-# 5666 "parser_cocci_menhir.ml"
+# 5863 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5704,22 +5901,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let dd : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5708 "parser_cocci_menhir.ml"
+# 5905 "parser_cocci_menhir.ml"
         ) = Obj.magic dd in
         let t : 'tv_option_eexpr_ = Obj.magic t in
         let w : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5714 "parser_cocci_menhir.ml"
+# 5911 "parser_cocci_menhir.ml"
         ) = Obj.magic w in
         let l : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic l in
         let _startpos = _startpos_l_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_cond_expr_eexpr_dot_expressions_ = 
-# 1299 "parser_cocci_menhir.mly"
+# 1310 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
                                 P.clt2mcode ":" dd, r)) )
-# 5723 "parser_cocci_menhir.ml"
+# 5920 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5741,9 +5938,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cond_expr_eexpr_nest_expressions_ = 
-# 1297 "parser_cocci_menhir.mly"
+# 1308 "parser_cocci_menhir.mly"
                                              ( _1 )
-# 5747 "parser_cocci_menhir.ml"
+# 5944 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5785,22 +5982,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let dd : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5789 "parser_cocci_menhir.ml"
+# 5986 "parser_cocci_menhir.ml"
         ) = Obj.magic dd in
         let t : 'tv_option_eexpr_ = Obj.magic t in
         let w : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5795 "parser_cocci_menhir.ml"
+# 5992 "parser_cocci_menhir.ml"
         ) = Obj.magic w in
         let l : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic l in
         let _startpos = _startpos_l_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_cond_expr_eexpr_nest_expressions_ = 
-# 1299 "parser_cocci_menhir.mly"
+# 1310 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
                                 P.clt2mcode ":" dd, r)) )
-# 5804 "parser_cocci_menhir.ml"
+# 6001 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5822,9 +6019,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_cond_expr_expr_invalid_ = 
-# 1297 "parser_cocci_menhir.mly"
+# 1308 "parser_cocci_menhir.mly"
                                              ( _1 )
-# 5828 "parser_cocci_menhir.ml"
+# 6025 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5866,22 +6063,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let dd : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5870 "parser_cocci_menhir.ml"
+# 6067 "parser_cocci_menhir.ml"
         ) = Obj.magic dd in
         let t : 'tv_option_eexpr_ = Obj.magic t in
         let w : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 5876 "parser_cocci_menhir.ml"
+# 6073 "parser_cocci_menhir.ml"
         ) = Obj.magic w in
         let l : 'tv_arith_expr_expr_invalid_ = Obj.magic l in
         let _startpos = _startpos_l_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_cond_expr_expr_invalid_ = 
-# 1299 "parser_cocci_menhir.mly"
+# 1310 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
                                 P.clt2mcode ":" dd, r)) )
-# 5885 "parser_cocci_menhir.ml"
+# 6082 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5902,14 +6099,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 56 "parser_cocci_menhir.mly"
       (Data.clt)
-# 5906 "parser_cocci_menhir.ml"
+# 6103 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_const_vol = 
-# 879 "parser_cocci_menhir.mly"
+# 888 "parser_cocci_menhir.mly"
                    ( P.clt2mcode Ast.Const _1 )
-# 5913 "parser_cocci_menhir.ml"
+# 6110 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5930,14 +6127,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 56 "parser_cocci_menhir.mly"
       (Data.clt)
-# 5934 "parser_cocci_menhir.ml"
+# 6131 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_const_vol = 
-# 880 "parser_cocci_menhir.mly"
+# 889 "parser_cocci_menhir.mly"
                    ( P.clt2mcode Ast.Volatile _1 )
-# 5941 "parser_cocci_menhir.ml"
+# 6138 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5952,9 +6149,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_continue_struct_decl_list = 
-# 629 "parser_cocci_menhir.mly"
+# 638 "parser_cocci_menhir.mly"
                                      ( [] )
-# 5958 "parser_cocci_menhir.ml"
+# 6155 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -5982,9 +6179,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_continue_struct_decl_list = 
-# 630 "parser_cocci_menhir.mly"
+# 639 "parser_cocci_menhir.mly"
                                      ( _1@_2 )
-# 5988 "parser_cocci_menhir.ml"
+# 6185 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6006,9 +6203,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_continue_struct_decl_list = 
-# 631 "parser_cocci_menhir.mly"
+# 640 "parser_cocci_menhir.mly"
                                      ( _1 )
-# 6012 "parser_cocci_menhir.ml"
+# 6209 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6040,12 +6237,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6044 "parser_cocci_menhir.ml"
+# 6241 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6049 "parser_cocci_menhir.ml"
+# 6246 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6055,28 +6252,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 6061 "parser_cocci_menhir.ml"
+# 6258 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6067 "parser_cocci_menhir.ml"
+# 6264 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6074 "parser_cocci_menhir.ml"
+# 6271 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6080 "parser_cocci_menhir.ml"
+# 6277 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6108,12 +6305,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6112 "parser_cocci_menhir.ml"
+# 6309 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6117 "parser_cocci_menhir.ml"
+# 6314 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6123,28 +6320,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 6129 "parser_cocci_menhir.ml"
+# 6326 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6135 "parser_cocci_menhir.ml"
+# 6332 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6142 "parser_cocci_menhir.ml"
+# 6339 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6148 "parser_cocci_menhir.ml"
+# 6345 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6176,12 +6373,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6180 "parser_cocci_menhir.ml"
+# 6377 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6185 "parser_cocci_menhir.ml"
+# 6382 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6191,28 +6388,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 6197 "parser_cocci_menhir.ml"
+# 6394 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6203 "parser_cocci_menhir.ml"
+# 6400 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6210 "parser_cocci_menhir.ml"
+# 6407 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6216 "parser_cocci_menhir.ml"
+# 6413 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6244,12 +6441,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 6248 "parser_cocci_menhir.ml"
+# 6445 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6253 "parser_cocci_menhir.ml"
+# 6450 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6259,29 +6456,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 6266 "parser_cocci_menhir.ml"
+# 6463 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6272 "parser_cocci_menhir.ml"
+# 6469 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6279 "parser_cocci_menhir.ml"
+# 6476 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6285 "parser_cocci_menhir.ml"
+# 6482 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6322,17 +6519,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 6326 "parser_cocci_menhir.ml"
+# 6523 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 6331 "parser_cocci_menhir.ml"
+# 6528 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6336 "parser_cocci_menhir.ml"
+# 6533 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let _startpos = _startpos_r1_ in
         let _endpos = _endpos_m_ in
@@ -6344,33 +6541,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 6355 "parser_cocci_menhir.ml"
+# 6552 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6361 "parser_cocci_menhir.ml"
+# 6558 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6368 "parser_cocci_menhir.ml"
+# 6565 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6374 "parser_cocci_menhir.ml"
+# 6571 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6402,12 +6599,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6406 "parser_cocci_menhir.ml"
+# 6603 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6411 "parser_cocci_menhir.ml"
+# 6608 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6417,28 +6614,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 6423 "parser_cocci_menhir.ml"
+# 6620 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6429 "parser_cocci_menhir.ml"
+# 6626 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6436 "parser_cocci_menhir.ml"
+# 6633 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6442 "parser_cocci_menhir.ml"
+# 6639 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6475,17 +6672,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6479 "parser_cocci_menhir.ml"
+# 6676 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6484 "parser_cocci_menhir.ml"
+# 6681 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6489 "parser_cocci_menhir.ml"
+# 6686 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6497,31 +6694,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 6506 "parser_cocci_menhir.ml"
+# 6703 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6512 "parser_cocci_menhir.ml"
+# 6709 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6519 "parser_cocci_menhir.ml"
+# 6716 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6525 "parser_cocci_menhir.ml"
+# 6722 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6553,12 +6750,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6557 "parser_cocci_menhir.ml"
+# 6754 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6562 "parser_cocci_menhir.ml"
+# 6759 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6568,28 +6765,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 6574 "parser_cocci_menhir.ml"
+# 6771 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6580 "parser_cocci_menhir.ml"
+# 6777 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6587 "parser_cocci_menhir.ml"
+# 6784 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6593 "parser_cocci_menhir.ml"
+# 6790 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6621,12 +6818,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6625 "parser_cocci_menhir.ml"
+# 6822 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6630 "parser_cocci_menhir.ml"
+# 6827 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6636,28 +6833,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 6642 "parser_cocci_menhir.ml"
+# 6839 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6648 "parser_cocci_menhir.ml"
+# 6845 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6655 "parser_cocci_menhir.ml"
+# 6852 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6661 "parser_cocci_menhir.ml"
+# 6858 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6689,12 +6886,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6693 "parser_cocci_menhir.ml"
+# 6890 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6698 "parser_cocci_menhir.ml"
+# 6895 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6704,28 +6901,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 6710 "parser_cocci_menhir.ml"
+# 6907 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6716 "parser_cocci_menhir.ml"
+# 6913 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6723 "parser_cocci_menhir.ml"
+# 6920 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6729 "parser_cocci_menhir.ml"
+# 6926 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6757,12 +6954,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 6761 "parser_cocci_menhir.ml"
+# 6958 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6766 "parser_cocci_menhir.ml"
+# 6963 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6772,29 +6969,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 6779 "parser_cocci_menhir.ml"
+# 6976 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6785 "parser_cocci_menhir.ml"
+# 6982 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6792 "parser_cocci_menhir.ml"
+# 6989 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6798 "parser_cocci_menhir.ml"
+# 6995 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6835,17 +7032,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 6839 "parser_cocci_menhir.ml"
+# 7036 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 6844 "parser_cocci_menhir.ml"
+# 7041 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6849 "parser_cocci_menhir.ml"
+# 7046 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let _startpos = _startpos_r1_ in
         let _endpos = _endpos_m_ in
@@ -6857,33 +7054,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 6868 "parser_cocci_menhir.ml"
+# 7065 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6874 "parser_cocci_menhir.ml"
+# 7071 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6881 "parser_cocci_menhir.ml"
+# 7078 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6887 "parser_cocci_menhir.ml"
+# 7084 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6915,12 +7112,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6919 "parser_cocci_menhir.ml"
+# 7116 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6924 "parser_cocci_menhir.ml"
+# 7121 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -6930,28 +7127,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 6936 "parser_cocci_menhir.ml"
+# 7133 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6942 "parser_cocci_menhir.ml"
+# 7139 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 6949 "parser_cocci_menhir.ml"
+# 7146 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 6955 "parser_cocci_menhir.ml"
+# 7152 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -6988,17 +7185,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6992 "parser_cocci_menhir.ml"
+# 7189 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 6997 "parser_cocci_menhir.ml"
+# 7194 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7002 "parser_cocci_menhir.ml"
+# 7199 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -7010,31 +7207,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 7019 "parser_cocci_menhir.ml"
+# 7216 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 7025 "parser_cocci_menhir.ml"
+# 7222 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7032 "parser_cocci_menhir.ml"
+# 7229 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7038 "parser_cocci_menhir.ml"
+# 7235 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7061,7 +7258,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7065 "parser_cocci_menhir.ml"
+# 7262 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7070,28 +7267,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 7076 "parser_cocci_menhir.ml"
+# 7273 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7082 "parser_cocci_menhir.ml"
+# 7279 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7089 "parser_cocci_menhir.ml"
+# 7286 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7095 "parser_cocci_menhir.ml"
+# 7292 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7118,7 +7315,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7122 "parser_cocci_menhir.ml"
+# 7319 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7127,28 +7324,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 7133 "parser_cocci_menhir.ml"
+# 7330 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7139 "parser_cocci_menhir.ml"
+# 7336 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7146 "parser_cocci_menhir.ml"
+# 7343 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7152 "parser_cocci_menhir.ml"
+# 7349 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7175,7 +7372,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7179 "parser_cocci_menhir.ml"
+# 7376 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7184,28 +7381,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 7190 "parser_cocci_menhir.ml"
+# 7387 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7196 "parser_cocci_menhir.ml"
+# 7393 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7203 "parser_cocci_menhir.ml"
+# 7400 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7209 "parser_cocci_menhir.ml"
+# 7406 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7232,7 +7429,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 7236 "parser_cocci_menhir.ml"
+# 7433 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let _startpos = _startpos_p00_ in
         let _endpos = _endpos_m_ in
@@ -7241,29 +7438,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 7248 "parser_cocci_menhir.ml"
+# 7445 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7254 "parser_cocci_menhir.ml"
+# 7451 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7261 "parser_cocci_menhir.ml"
+# 7458 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7267 "parser_cocci_menhir.ml"
+# 7464 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7299,12 +7496,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 7303 "parser_cocci_menhir.ml"
+# 7500 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 7308 "parser_cocci_menhir.ml"
+# 7505 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let _startpos = _startpos_r00_ in
         let _endpos = _endpos_m_ in
@@ -7315,33 +7512,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 7326 "parser_cocci_menhir.ml"
+# 7523 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7332 "parser_cocci_menhir.ml"
+# 7529 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7339 "parser_cocci_menhir.ml"
+# 7536 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7345 "parser_cocci_menhir.ml"
+# 7542 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7368,7 +7565,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7372 "parser_cocci_menhir.ml"
+# 7569 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7377,28 +7574,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 7383 "parser_cocci_menhir.ml"
+# 7580 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7389 "parser_cocci_menhir.ml"
+# 7586 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7396 "parser_cocci_menhir.ml"
+# 7593 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7402 "parser_cocci_menhir.ml"
+# 7599 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7430,12 +7627,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7434 "parser_cocci_menhir.ml"
+# 7631 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7439 "parser_cocci_menhir.ml"
+# 7636 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let _startpos = _startpos_ty100_ in
         let _endpos = _endpos_m_ in
@@ -7446,31 +7643,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 7455 "parser_cocci_menhir.ml"
+# 7652 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 7461 "parser_cocci_menhir.ml"
+# 7658 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7468 "parser_cocci_menhir.ml"
+# 7665 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7474 "parser_cocci_menhir.ml"
+# 7671 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7497,7 +7694,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7501 "parser_cocci_menhir.ml"
+# 7698 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7506,28 +7703,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 541 "parser_cocci_menhir.mly"
+# 549 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 7512 "parser_cocci_menhir.ml"
+# 7709 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7518 "parser_cocci_menhir.ml"
+# 7715 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7525 "parser_cocci_menhir.ml"
+# 7722 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7531 "parser_cocci_menhir.ml"
+# 7728 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7554,7 +7751,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7558 "parser_cocci_menhir.ml"
+# 7755 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7563,28 +7760,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 543 "parser_cocci_menhir.mly"
+# 551 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 7569 "parser_cocci_menhir.ml"
+# 7766 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7575 "parser_cocci_menhir.ml"
+# 7772 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7582 "parser_cocci_menhir.ml"
+# 7779 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7588 "parser_cocci_menhir.ml"
+# 7785 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7611,7 +7808,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7615 "parser_cocci_menhir.ml"
+# 7812 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -7620,28 +7817,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 545 "parser_cocci_menhir.mly"
+# 553 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 7626 "parser_cocci_menhir.ml"
+# 7823 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7632 "parser_cocci_menhir.ml"
+# 7829 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7639 "parser_cocci_menhir.ml"
+# 7836 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7645 "parser_cocci_menhir.ml"
+# 7842 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7674,7 +7871,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 7678 "parser_cocci_menhir.ml"
+# 7875 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
         let _endpos = _endpos_m_ in
@@ -7685,28 +7882,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 547 "parser_cocci_menhir.mly"
+# 555 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 7691 "parser_cocci_menhir.ml"
+# 7888 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7697 "parser_cocci_menhir.ml"
+# 7894 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7704 "parser_cocci_menhir.ml"
+# 7901 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7710 "parser_cocci_menhir.ml"
+# 7907 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7746,28 +7943,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 549 "parser_cocci_menhir.mly"
+# 557 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 7752 "parser_cocci_menhir.ml"
+# 7949 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7758 "parser_cocci_menhir.ml"
+# 7955 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7765 "parser_cocci_menhir.ml"
+# 7962 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7771 "parser_cocci_menhir.ml"
+# 7968 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7809,13 +8006,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 7813 "parser_cocci_menhir.ml"
+# 8010 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 7819 "parser_cocci_menhir.ml"
+# 8016 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
@@ -7834,36 +8031,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 39 "standard.mly"
     ( None )
-# 7838 "parser_cocci_menhir.ml"
+# 8035 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 7848 "parser_cocci_menhir.ml"
+# 8045 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7854 "parser_cocci_menhir.ml"
+# 8051 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7861 "parser_cocci_menhir.ml"
+# 8058 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7867 "parser_cocci_menhir.ml"
+# 8064 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -7910,13 +8107,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 7914 "parser_cocci_menhir.ml"
+# 8111 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 7920 "parser_cocci_menhir.ml"
+# 8117 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let x000 : 'tv_ident = Obj.magic x000 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
@@ -7939,36 +8136,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 41 "standard.mly"
     ( Some x )
-# 7943 "parser_cocci_menhir.ml"
+# 8140 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 7953 "parser_cocci_menhir.ml"
+# 8150 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 7959 "parser_cocci_menhir.ml"
+# 8156 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 7966 "parser_cocci_menhir.ml"
+# 8163 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 7972 "parser_cocci_menhir.ml"
+# 8169 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8010,18 +8207,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 8014 "parser_cocci_menhir.ml"
+# 8211 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 8020 "parser_cocci_menhir.ml"
+# 8217 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 8025 "parser_cocci_menhir.ml"
+# 8222 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
         let _endpos = _endpos_m_ in
@@ -8036,30 +8233,30 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let l = l0 in
             let s = s0 in
             
-# 558 "parser_cocci_menhir.mly"
+# 566 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = s in
     let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
     Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 8044 "parser_cocci_menhir.ml"
+# 8241 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 8050 "parser_cocci_menhir.ml"
+# 8247 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 8057 "parser_cocci_menhir.ml"
+# 8254 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8063 "parser_cocci_menhir.ml"
+# 8260 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8086,7 +8283,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 8090 "parser_cocci_menhir.ml"
+# 8287 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let _startpos = _startpos_p00_ in
         let _endpos = _endpos_m_ in
@@ -8095,28 +8292,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 562 "parser_cocci_menhir.mly"
+# 570 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 8101 "parser_cocci_menhir.ml"
+# 8298 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 8107 "parser_cocci_menhir.ml"
+# 8304 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 8114 "parser_cocci_menhir.ml"
+# 8311 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8120 "parser_cocci_menhir.ml"
+# 8317 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8153,12 +8350,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8157 "parser_cocci_menhir.ml"
+# 8354 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8162 "parser_cocci_menhir.ml"
+# 8359 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8169,15 +8366,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 8175 "parser_cocci_menhir.ml"
+# 8372 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8181 "parser_cocci_menhir.ml"
+# 8378 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8185,13 +8382,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8189 "parser_cocci_menhir.ml"
+# 8386 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8195 "parser_cocci_menhir.ml"
+# 8392 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8228,12 +8425,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8232 "parser_cocci_menhir.ml"
+# 8429 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8237 "parser_cocci_menhir.ml"
+# 8434 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8244,15 +8441,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 8250 "parser_cocci_menhir.ml"
+# 8447 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8256 "parser_cocci_menhir.ml"
+# 8453 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8260,13 +8457,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8264 "parser_cocci_menhir.ml"
+# 8461 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8270 "parser_cocci_menhir.ml"
+# 8467 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8303,12 +8500,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8307 "parser_cocci_menhir.ml"
+# 8504 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8312 "parser_cocci_menhir.ml"
+# 8509 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8319,15 +8516,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 8325 "parser_cocci_menhir.ml"
+# 8522 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8331 "parser_cocci_menhir.ml"
+# 8528 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8335,13 +8532,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8339 "parser_cocci_menhir.ml"
+# 8536 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8345 "parser_cocci_menhir.ml"
+# 8542 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8378,12 +8575,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 8382 "parser_cocci_menhir.ml"
+# 8579 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8387 "parser_cocci_menhir.ml"
+# 8584 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8394,16 +8591,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 8401 "parser_cocci_menhir.ml"
+# 8598 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8407 "parser_cocci_menhir.ml"
+# 8604 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8411,13 +8608,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8415 "parser_cocci_menhir.ml"
+# 8612 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8421 "parser_cocci_menhir.ml"
+# 8618 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8463,17 +8660,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 8467 "parser_cocci_menhir.ml"
+# 8664 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 8472 "parser_cocci_menhir.ml"
+# 8669 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8477 "parser_cocci_menhir.ml"
+# 8674 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8486,20 +8683,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 8497 "parser_cocci_menhir.ml"
+# 8694 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8503 "parser_cocci_menhir.ml"
+# 8700 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8507,13 +8704,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8511 "parser_cocci_menhir.ml"
+# 8708 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8517 "parser_cocci_menhir.ml"
+# 8714 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8550,12 +8747,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8554 "parser_cocci_menhir.ml"
+# 8751 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8559 "parser_cocci_menhir.ml"
+# 8756 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8566,15 +8763,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 8572 "parser_cocci_menhir.ml"
+# 8769 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8578 "parser_cocci_menhir.ml"
+# 8775 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8582,13 +8779,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8586 "parser_cocci_menhir.ml"
+# 8783 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8592 "parser_cocci_menhir.ml"
+# 8789 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8630,17 +8827,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8634 "parser_cocci_menhir.ml"
+# 8831 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8639 "parser_cocci_menhir.ml"
+# 8836 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8644 "parser_cocci_menhir.ml"
+# 8841 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8653,18 +8850,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 8662 "parser_cocci_menhir.ml"
+# 8859 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8668 "parser_cocci_menhir.ml"
+# 8865 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8672,13 +8869,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8676 "parser_cocci_menhir.ml"
+# 8873 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8682 "parser_cocci_menhir.ml"
+# 8879 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8715,12 +8912,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8719 "parser_cocci_menhir.ml"
+# 8916 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8724 "parser_cocci_menhir.ml"
+# 8921 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8731,15 +8928,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 8737 "parser_cocci_menhir.ml"
+# 8934 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8743 "parser_cocci_menhir.ml"
+# 8940 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8747,13 +8944,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8751 "parser_cocci_menhir.ml"
+# 8948 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8757 "parser_cocci_menhir.ml"
+# 8954 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8790,12 +8987,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8794 "parser_cocci_menhir.ml"
+# 8991 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8799 "parser_cocci_menhir.ml"
+# 8996 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8806,15 +9003,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 8812 "parser_cocci_menhir.ml"
+# 9009 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8818 "parser_cocci_menhir.ml"
+# 9015 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8822,13 +9019,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8826 "parser_cocci_menhir.ml"
+# 9023 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8832 "parser_cocci_menhir.ml"
+# 9029 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8865,12 +9062,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8869 "parser_cocci_menhir.ml"
+# 9066 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8874 "parser_cocci_menhir.ml"
+# 9071 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8881,15 +9078,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 8887 "parser_cocci_menhir.ml"
+# 9084 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8893 "parser_cocci_menhir.ml"
+# 9090 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8897,13 +9094,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8901 "parser_cocci_menhir.ml"
+# 9098 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8907 "parser_cocci_menhir.ml"
+# 9104 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -8940,12 +9137,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 8944 "parser_cocci_menhir.ml"
+# 9141 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 8949 "parser_cocci_menhir.ml"
+# 9146 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -8956,16 +9153,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 8963 "parser_cocci_menhir.ml"
+# 9160 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8969 "parser_cocci_menhir.ml"
+# 9166 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -8973,13 +9170,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 8977 "parser_cocci_menhir.ml"
+# 9174 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 8983 "parser_cocci_menhir.ml"
+# 9180 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9025,17 +9222,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 9029 "parser_cocci_menhir.ml"
+# 9226 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 9034 "parser_cocci_menhir.ml"
+# 9231 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9039 "parser_cocci_menhir.ml"
+# 9236 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9048,20 +9245,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 9059 "parser_cocci_menhir.ml"
+# 9256 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 9065 "parser_cocci_menhir.ml"
+# 9262 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9069,13 +9266,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9073 "parser_cocci_menhir.ml"
+# 9270 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9079 "parser_cocci_menhir.ml"
+# 9276 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9112,12 +9309,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9116 "parser_cocci_menhir.ml"
+# 9313 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9121 "parser_cocci_menhir.ml"
+# 9318 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9128,15 +9325,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 9134 "parser_cocci_menhir.ml"
+# 9331 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 9140 "parser_cocci_menhir.ml"
+# 9337 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9144,13 +9341,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9148 "parser_cocci_menhir.ml"
+# 9345 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9154 "parser_cocci_menhir.ml"
+# 9351 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9192,17 +9389,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9196 "parser_cocci_menhir.ml"
+# 9393 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9201 "parser_cocci_menhir.ml"
+# 9398 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9206 "parser_cocci_menhir.ml"
+# 9403 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9215,18 +9412,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 9224 "parser_cocci_menhir.ml"
+# 9421 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 9230 "parser_cocci_menhir.ml"
+# 9427 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9234,13 +9431,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9238 "parser_cocci_menhir.ml"
+# 9435 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9244 "parser_cocci_menhir.ml"
+# 9441 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9272,7 +9469,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9276 "parser_cocci_menhir.ml"
+# 9473 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9282,15 +9479,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 9288 "parser_cocci_menhir.ml"
+# 9485 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9294 "parser_cocci_menhir.ml"
+# 9491 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9298,13 +9495,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9302 "parser_cocci_menhir.ml"
+# 9499 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9308 "parser_cocci_menhir.ml"
+# 9505 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9336,7 +9533,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9340 "parser_cocci_menhir.ml"
+# 9537 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9346,15 +9543,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 9352 "parser_cocci_menhir.ml"
+# 9549 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9358 "parser_cocci_menhir.ml"
+# 9555 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9362,13 +9559,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9366 "parser_cocci_menhir.ml"
+# 9563 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9372 "parser_cocci_menhir.ml"
+# 9569 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9400,7 +9597,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9404 "parser_cocci_menhir.ml"
+# 9601 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9410,15 +9607,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 9416 "parser_cocci_menhir.ml"
+# 9613 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9422 "parser_cocci_menhir.ml"
+# 9619 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9426,13 +9623,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9430 "parser_cocci_menhir.ml"
+# 9627 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9436 "parser_cocci_menhir.ml"
+# 9633 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9464,7 +9661,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 9468 "parser_cocci_menhir.ml"
+# 9665 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9474,16 +9671,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 9481 "parser_cocci_menhir.ml"
+# 9678 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9487 "parser_cocci_menhir.ml"
+# 9684 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9491,13 +9688,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9495 "parser_cocci_menhir.ml"
+# 9692 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9501 "parser_cocci_menhir.ml"
+# 9698 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9538,12 +9735,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 9542 "parser_cocci_menhir.ml"
+# 9739 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 9547 "parser_cocci_menhir.ml"
+# 9744 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9555,20 +9752,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 9566 "parser_cocci_menhir.ml"
+# 9763 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9572 "parser_cocci_menhir.ml"
+# 9769 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9576,13 +9773,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9580 "parser_cocci_menhir.ml"
+# 9777 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9586 "parser_cocci_menhir.ml"
+# 9783 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9614,7 +9811,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9618 "parser_cocci_menhir.ml"
+# 9815 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9624,15 +9821,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 9630 "parser_cocci_menhir.ml"
+# 9827 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9636 "parser_cocci_menhir.ml"
+# 9833 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9640,13 +9837,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9644 "parser_cocci_menhir.ml"
+# 9841 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9650 "parser_cocci_menhir.ml"
+# 9847 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9683,12 +9880,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9687 "parser_cocci_menhir.ml"
+# 9884 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9692 "parser_cocci_menhir.ml"
+# 9889 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9700,18 +9897,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 9709 "parser_cocci_menhir.ml"
+# 9906 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 9715 "parser_cocci_menhir.ml"
+# 9912 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9719,13 +9916,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9723 "parser_cocci_menhir.ml"
+# 9920 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9729 "parser_cocci_menhir.ml"
+# 9926 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9757,7 +9954,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9761 "parser_cocci_menhir.ml"
+# 9958 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9767,15 +9964,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 541 "parser_cocci_menhir.mly"
+# 549 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 9773 "parser_cocci_menhir.ml"
+# 9970 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 9779 "parser_cocci_menhir.ml"
+# 9976 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9783,13 +9980,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9787 "parser_cocci_menhir.ml"
+# 9984 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9793 "parser_cocci_menhir.ml"
+# 9990 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9821,7 +10018,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9825 "parser_cocci_menhir.ml"
+# 10022 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9831,15 +10028,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 543 "parser_cocci_menhir.mly"
+# 551 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 9837 "parser_cocci_menhir.ml"
+# 10034 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 9843 "parser_cocci_menhir.ml"
+# 10040 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9847,13 +10044,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9851 "parser_cocci_menhir.ml"
+# 10048 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9857 "parser_cocci_menhir.ml"
+# 10054 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9885,7 +10082,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9889 "parser_cocci_menhir.ml"
+# 10086 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9895,15 +10092,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 545 "parser_cocci_menhir.mly"
+# 553 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 9901 "parser_cocci_menhir.ml"
+# 10098 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 9907 "parser_cocci_menhir.ml"
+# 10104 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9911,13 +10108,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9915 "parser_cocci_menhir.ml"
+# 10112 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9921 "parser_cocci_menhir.ml"
+# 10118 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -9955,7 +10152,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 9959 "parser_cocci_menhir.ml"
+# 10156 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -9967,15 +10164,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 547 "parser_cocci_menhir.mly"
+# 555 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 9973 "parser_cocci_menhir.ml"
+# 10170 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 9979 "parser_cocci_menhir.ml"
+# 10176 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -9983,13 +10180,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 9987 "parser_cocci_menhir.ml"
+# 10184 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 9993 "parser_cocci_menhir.ml"
+# 10190 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10035,15 +10232,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 549 "parser_cocci_menhir.mly"
+# 557 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 10041 "parser_cocci_menhir.ml"
+# 10238 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 10047 "parser_cocci_menhir.ml"
+# 10244 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -10051,13 +10248,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 10055 "parser_cocci_menhir.ml"
+# 10252 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 10061 "parser_cocci_menhir.ml"
+# 10258 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10104,13 +10301,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10108 "parser_cocci_menhir.ml"
+# 10305 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10114 "parser_cocci_menhir.ml"
+# 10311 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
@@ -10130,23 +10327,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 39 "standard.mly"
     ( None )
-# 10134 "parser_cocci_menhir.ml"
+# 10331 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 10144 "parser_cocci_menhir.ml"
+# 10341 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 10150 "parser_cocci_menhir.ml"
+# 10347 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -10154,13 +10351,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 10158 "parser_cocci_menhir.ml"
+# 10355 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 10164 "parser_cocci_menhir.ml"
+# 10361 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10212,13 +10409,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10216 "parser_cocci_menhir.ml"
+# 10413 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10222 "parser_cocci_menhir.ml"
+# 10419 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let x000 : 'tv_ident = Obj.magic x000 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
@@ -10242,23 +10439,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 41 "standard.mly"
     ( Some x )
-# 10246 "parser_cocci_menhir.ml"
+# 10443 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 10256 "parser_cocci_menhir.ml"
+# 10453 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 10262 "parser_cocci_menhir.ml"
+# 10459 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -10266,13 +10463,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 10270 "parser_cocci_menhir.ml"
+# 10467 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 10276 "parser_cocci_menhir.ml"
+# 10473 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10319,18 +10516,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10323 "parser_cocci_menhir.ml"
+# 10520 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10329 "parser_cocci_menhir.ml"
+# 10526 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 10334 "parser_cocci_menhir.ml"
+# 10531 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -10346,17 +10543,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let l = l0 in
             let s = s0 in
             
-# 558 "parser_cocci_menhir.mly"
+# 566 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = s in
     let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
     Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 10354 "parser_cocci_menhir.ml"
+# 10551 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 10360 "parser_cocci_menhir.ml"
+# 10557 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -10364,13 +10561,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 10368 "parser_cocci_menhir.ml"
+# 10565 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 10374 "parser_cocci_menhir.ml"
+# 10571 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10402,7 +10599,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 10406 "parser_cocci_menhir.ml"
+# 10603 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -10412,15 +10609,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 562 "parser_cocci_menhir.mly"
+# 570 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 10418 "parser_cocci_menhir.ml"
+# 10615 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 10424 "parser_cocci_menhir.ml"
+# 10621 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -10428,13 +10625,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 10432 "parser_cocci_menhir.ml"
+# 10629 "parser_cocci_menhir.ml"
           
         in
         
-# 575 "parser_cocci_menhir.mly"
+# 583 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 10438 "parser_cocci_menhir.ml"
+# 10635 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10455,14 +10652,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 10459 "parser_cocci_menhir.ml"
+# 10656 "parser_cocci_menhir.ml"
         ) = Obj.magic r in
         let _startpos = _startpos_r_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_ctype = 
-# 577 "parser_cocci_menhir.mly"
+# 585 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) )
-# 10466 "parser_cocci_menhir.ml"
+# 10663 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10483,14 +10680,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 10487 "parser_cocci_menhir.ml"
+# 10684 "parser_cocci_menhir.ml"
         ) = Obj.magic r in
         let _startpos = _startpos_r_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_ctype = 
-# 579 "parser_cocci_menhir.mly"
+# 587 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) )
-# 10494 "parser_cocci_menhir.ml"
+# 10691 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10521,22 +10718,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10525 "parser_cocci_menhir.ml"
+# 10722 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10531 "parser_cocci_menhir.ml"
+# 10728 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_ctype = 
-# 581 "parser_cocci_menhir.mly"
+# 589 "parser_cocci_menhir.mly"
     ( let (mids,code) = t in
       Ast0.wrap
        (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
-# 10540 "parser_cocci_menhir.ml"
+# 10737 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10564,7 +10761,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_d_ident = 
-# 1097 "parser_cocci_menhir.mly"
+# 1108 "parser_cocci_menhir.mly"
       ( (_1,
         function t ->
           List.fold_right
@@ -10573,7 +10770,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                 Ast0.wrap
                   (Ast0.Array(rest,P.clt2mcode "[" l,i,P.clt2mcode "]" r)))
             _2 t) )
-# 10577 "parser_cocci_menhir.ml"
+# 10774 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10601,9 +10798,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_decl = 
-# 853 "parser_cocci_menhir.mly"
+# 862 "parser_cocci_menhir.mly"
  ( Ast0.wrap(Ast0.Param(t, Some i)) )
-# 10607 "parser_cocci_menhir.ml"
+# 10804 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10625,9 +10822,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_decl = 
-# 854 "parser_cocci_menhir.mly"
+# 863 "parser_cocci_menhir.mly"
               ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) )
-# 10631 "parser_cocci_menhir.ml"
+# 10828 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10683,42 +10880,42 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10687 "parser_cocci_menhir.ml"
+# 10884 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10693 "parser_cocci_menhir.ml"
+# 10890 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10698 "parser_cocci_menhir.ml"
+# 10895 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let i : 'tv_ident = Obj.magic i in
         let s : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10704 "parser_cocci_menhir.ml"
+# 10901 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10709 "parser_cocci_menhir.ml"
+# 10906 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_rp1_ in
         let _v : 'tv_decl = 
-# 857 "parser_cocci_menhir.mly"
+# 866 "parser_cocci_menhir.mly"
         ( let fnptr =
          Ast0.wrap
            (Ast0.FunctionPointer
               (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
                P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
        Ast0.wrap(Ast0.Param(fnptr, Some i)) )
-# 10722 "parser_cocci_menhir.ml"
+# 10919 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10739,15 +10936,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 10743 "parser_cocci_menhir.ml"
+# 10940 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl = 
-# 864 "parser_cocci_menhir.mly"
+# 873 "parser_cocci_menhir.mly"
  ( let (nm,pure,clt) = _1 in
        Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) )
-# 10751 "parser_cocci_menhir.ml"
+# 10948 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10768,14 +10965,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 10772 "parser_cocci_menhir.ml"
+# 10969 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_ident = 
-# 1686 "parser_cocci_menhir.mly"
+# 1699 "parser_cocci_menhir.mly"
          ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 10779 "parser_cocci_menhir.ml"
+# 10976 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10796,15 +10993,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 65 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 10800 "parser_cocci_menhir.ml"
+# 10997 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_ident = 
-# 1688 "parser_cocci_menhir.mly"
+# 1701 "parser_cocci_menhir.mly"
          ( let (nm,constraints,pure,clt) = _1 in
          Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 10808 "parser_cocci_menhir.ml"
+# 11005 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10819,9 +11016,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_decl_list_decl_ = 
-# 1708 "parser_cocci_menhir.mly"
+# 1721 "parser_cocci_menhir.mly"
               ( Ast0.wrap(Ast0.DOTS([])) )
-# 10825 "parser_cocci_menhir.ml"
+# 11022 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10843,13 +11040,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_list_decl_ = 
-# 1710 "parser_cocci_menhir.mly"
+# 1723 "parser_cocci_menhir.mly"
      (let circle x =
        match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
      if List.exists circle _1
      then Ast0.wrap(Ast0.CIRCLES(_1))
      else Ast0.wrap(Ast0.DOTS(_1)) )
-# 10853 "parser_cocci_menhir.ml"
+# 11050 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10864,9 +11061,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_decl_list_name_opt_decl_ = 
-# 1708 "parser_cocci_menhir.mly"
+# 1721 "parser_cocci_menhir.mly"
               ( Ast0.wrap(Ast0.DOTS([])) )
-# 10870 "parser_cocci_menhir.ml"
+# 11067 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10888,13 +11085,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_list_name_opt_decl_ = 
-# 1710 "parser_cocci_menhir.mly"
+# 1723 "parser_cocci_menhir.mly"
      (let circle x =
        match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
      if List.exists circle _1
      then Ast0.wrap(Ast0.CIRCLES(_1))
      else Ast0.wrap(Ast0.DOTS(_1)) )
-# 10898 "parser_cocci_menhir.ml"
+# 11095 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10916,9 +11113,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_list_start_decl_ = 
-# 1717 "parser_cocci_menhir.mly"
+# 1730 "parser_cocci_menhir.mly"
                  ( [_1] )
-# 10922 "parser_cocci_menhir.ml"
+# 11119 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10950,15 +11147,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10954 "parser_cocci_menhir.ml"
+# 11151 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_decl_list_start_decl_ = 
-# 1719 "parser_cocci_menhir.mly"
+# 1732 "parser_cocci_menhir.mly"
     ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
-# 10962 "parser_cocci_menhir.ml"
+# 11159 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -10985,15 +11182,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 10989 "parser_cocci_menhir.ml"
+# 11186 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_decl_list_start_decl_ = 
-# 1721 "parser_cocci_menhir.mly"
+# 1734 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
       (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
-# 10997 "parser_cocci_menhir.ml"
+# 11194 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11015,9 +11212,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_list_start_name_opt_decl_ = 
-# 1717 "parser_cocci_menhir.mly"
+# 1730 "parser_cocci_menhir.mly"
                  ( [_1] )
-# 11021 "parser_cocci_menhir.ml"
+# 11218 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11049,15 +11246,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11053 "parser_cocci_menhir.ml"
+# 11250 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_decl_list_start_name_opt_decl_ = 
-# 1719 "parser_cocci_menhir.mly"
+# 1732 "parser_cocci_menhir.mly"
     ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
-# 11061 "parser_cocci_menhir.ml"
+# 11258 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11084,15 +11281,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11088 "parser_cocci_menhir.ml"
+# 11285 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_decl_list_start_name_opt_decl_ = 
-# 1721 "parser_cocci_menhir.mly"
+# 1734 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
       (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
-# 11096 "parser_cocci_menhir.ml"
+# 11293 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11113,15 +11310,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 11117 "parser_cocci_menhir.ml"
+# 11314 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement = 
-# 1179 "parser_cocci_menhir.mly"
+# 1190 "parser_cocci_menhir.mly"
       ( let (nm,pure,clt) = _1 in
       [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
-# 11125 "parser_cocci_menhir.ml"
+# 11322 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11143,13 +11340,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement = 
-# 1182 "parser_cocci_menhir.mly"
+# 1193 "parser_cocci_menhir.mly"
       ( List.map
          (function x ->
            Ast0.wrap
              (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
          _1 )
-# 11153 "parser_cocci_menhir.ml"
+# 11350 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11171,9 +11368,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement = 
-# 1187 "parser_cocci_menhir.mly"
+# 1198 "parser_cocci_menhir.mly"
               ( [_1] )
-# 11177 "parser_cocci_menhir.ml"
+# 11374 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11204,18 +11401,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11208 "parser_cocci_menhir.ml"
+# 11405 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11214 "parser_cocci_menhir.ml"
+# 11411 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_decl_statement = 
-# 1196 "parser_cocci_menhir.mly"
+# 1207 "parser_cocci_menhir.mly"
       ( let (mids,code) = t in
        if List.for_all
            (function x ->
@@ -11225,7 +11422,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       else
          [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, code, mids,
                               P.clt2mcode ")" _3))] )
-# 11229 "parser_cocci_menhir.ml"
+# 11426 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11246,15 +11443,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 11250 "parser_cocci_menhir.ml"
+# 11447 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement_expr = 
-# 1209 "parser_cocci_menhir.mly"
+# 1220 "parser_cocci_menhir.mly"
       ( let (nm,pure,clt) = _1 in
       [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
-# 11258 "parser_cocci_menhir.ml"
+# 11455 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11276,13 +11473,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement_expr = 
-# 1212 "parser_cocci_menhir.mly"
+# 1223 "parser_cocci_menhir.mly"
       ( List.map
          (function x ->
            Ast0.wrap
              (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
          _1 )
-# 11286 "parser_cocci_menhir.ml"
+# 11483 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11304,9 +11501,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_decl_statement_expr = 
-# 1217 "parser_cocci_menhir.mly"
+# 1228 "parser_cocci_menhir.mly"
               ( [_1] )
-# 11310 "parser_cocci_menhir.ml"
+# 11507 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11337,18 +11534,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11341 "parser_cocci_menhir.ml"
+# 11538 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let t : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ = Obj.magic t in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11347 "parser_cocci_menhir.ml"
+# 11544 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_decl_statement_expr = 
-# 1226 "parser_cocci_menhir.mly"
+# 1237 "parser_cocci_menhir.mly"
       ( let (mids,code) = t in
        if List.for_all (function [] -> true | _ -> false) code
       then []
@@ -11357,7 +11554,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
            List.map (function x -> Ast0.wrap(Ast0.DOTS x)) code in
          [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, dot_code, mids,
                               P.clt2mcode ")" _3))] )
-# 11361 "parser_cocci_menhir.ml"
+# 11558 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11383,15 +11580,43 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11387 "parser_cocci_menhir.ml"
+# 11584 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_pv_ in
         let _v : 'tv_decl_var = 
-# 985 "parser_cocci_menhir.mly"
+# 994 "parser_cocci_menhir.mly"
       ( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] )
-# 11395 "parser_cocci_menhir.ml"
+# 11592 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = _1;
+          MenhirLib.EngineTypes.startp = _startpos__1_;
+          MenhirLib.EngineTypes.endp = _endpos__1_;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          } = _menhir_stack in
+        let _1 : (
+# 68 "parser_cocci_menhir.mly"
+       (Parse_aux.info)
+# 11613 "parser_cocci_menhir.ml"
+        ) = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__1_ in
+        let _v : 'tv_decl_var = 
+# 995 "parser_cocci_menhir.mly"
+              ( [P.meta_decl _1] )
+# 11620 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11422,7 +11647,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11426 "parser_cocci_menhir.ml"
+# 11651 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -11432,16 +11657,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 11436 "parser_cocci_menhir.ml"
+# 11661 "parser_cocci_menhir.ml"
           
         in
         
-# 987 "parser_cocci_menhir.mly"
+# 997 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
          d )
-# 11445 "parser_cocci_menhir.ml"
+# 11670 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11477,7 +11702,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11481 "parser_cocci_menhir.ml"
+# 11706 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -11489,16 +11714,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11493 "parser_cocci_menhir.ml"
+# 11718 "parser_cocci_menhir.ml"
           
         in
         
-# 987 "parser_cocci_menhir.mly"
+# 997 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
          d )
-# 11502 "parser_cocci_menhir.ml"
+# 11727 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11520,9 +11745,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_f_ in
         let _v : 'tv_decl_var = 
-# 991 "parser_cocci_menhir.mly"
+# 1001 "parser_cocci_menhir.mly"
                ( [f] )
-# 11526 "parser_cocci_menhir.ml"
+# 11751 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11563,13 +11788,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11567 "parser_cocci_menhir.ml"
+# 11792 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11573 "parser_cocci_menhir.ml"
+# 11798 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -11579,14 +11804,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 11583 "parser_cocci_menhir.ml"
+# 11808 "parser_cocci_menhir.ml"
           
         in
         
-# 993 "parser_cocci_menhir.mly"
+# 1003 "parser_cocci_menhir.mly"
       (let (id,fn) = d in
       [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 11590 "parser_cocci_menhir.ml"
+# 11815 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11632,13 +11857,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11636 "parser_cocci_menhir.ml"
+# 11861 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11642 "parser_cocci_menhir.ml"
+# 11867 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -11650,14 +11875,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11654 "parser_cocci_menhir.ml"
+# 11879 "parser_cocci_menhir.ml"
           
         in
         
-# 993 "parser_cocci_menhir.mly"
+# 1003 "parser_cocci_menhir.mly"
       (let (id,fn) = d in
       [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 11661 "parser_cocci_menhir.ml"
+# 11886 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11688,7 +11913,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11692 "parser_cocci_menhir.ml"
+# 11917 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -11698,25 +11923,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 11702 "parser_cocci_menhir.ml"
+# 11927 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 11709 "parser_cocci_menhir.ml"
+# 11934 "parser_cocci_menhir.ml"
           
         in
         
-# 998 "parser_cocci_menhir.mly"
+# 1008 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            let idtype =
              P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
            Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
          d )
-# 11720 "parser_cocci_menhir.ml"
+# 11945 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11752,7 +11977,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11756 "parser_cocci_menhir.ml"
+# 11981 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -11764,25 +11989,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11768 "parser_cocci_menhir.ml"
+# 11993 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 11775 "parser_cocci_menhir.ml"
+# 12000 "parser_cocci_menhir.ml"
           
         in
         
-# 998 "parser_cocci_menhir.mly"
+# 1008 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            let idtype =
              P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
            Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
          d )
-# 11786 "parser_cocci_menhir.ml"
+# 12011 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11818,7 +12043,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11822 "parser_cocci_menhir.ml"
+# 12047 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -11829,7 +12054,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 11833 "parser_cocci_menhir.ml"
+# 12058 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -11837,18 +12062,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11841 "parser_cocci_menhir.ml"
+# 12066 "parser_cocci_menhir.ml"
           
         in
         
-# 998 "parser_cocci_menhir.mly"
+# 1008 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            let idtype =
              P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
            Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
          d )
-# 11852 "parser_cocci_menhir.ml"
+# 12077 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11889,7 +12114,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11893 "parser_cocci_menhir.ml"
+# 12118 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_comma_list_d_ident_ = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -11902,7 +12127,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11906 "parser_cocci_menhir.ml"
+# 12131 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -11910,18 +12135,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 11914 "parser_cocci_menhir.ml"
+# 12139 "parser_cocci_menhir.ml"
           
         in
         
-# 998 "parser_cocci_menhir.mly"
+# 1008 "parser_cocci_menhir.mly"
       ( List.map
          (function (id,fn) ->
            let idtype =
              P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
            Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
          d )
-# 11925 "parser_cocci_menhir.ml"
+# 12150 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -11962,13 +12187,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11966 "parser_cocci_menhir.ml"
+# 12191 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 11972 "parser_cocci_menhir.ml"
+# 12197 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -11978,24 +12203,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 11982 "parser_cocci_menhir.ml"
+# 12207 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 11989 "parser_cocci_menhir.ml"
+# 12214 "parser_cocci_menhir.ml"
           
         in
         
-# 1006 "parser_cocci_menhir.mly"
+# 1016 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv))] )
-# 11999 "parser_cocci_menhir.ml"
+# 12224 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12041,13 +12266,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12045 "parser_cocci_menhir.ml"
+# 12270 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12051 "parser_cocci_menhir.ml"
+# 12276 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -12059,24 +12284,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12063 "parser_cocci_menhir.ml"
+# 12288 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 12070 "parser_cocci_menhir.ml"
+# 12295 "parser_cocci_menhir.ml"
           
         in
         
-# 1006 "parser_cocci_menhir.mly"
+# 1016 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv))] )
-# 12080 "parser_cocci_menhir.ml"
+# 12305 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12122,13 +12347,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12126 "parser_cocci_menhir.ml"
+# 12351 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12132 "parser_cocci_menhir.ml"
+# 12357 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -12139,7 +12364,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 12143 "parser_cocci_menhir.ml"
+# 12368 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -12147,17 +12372,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12151 "parser_cocci_menhir.ml"
+# 12376 "parser_cocci_menhir.ml"
           
         in
         
-# 1006 "parser_cocci_menhir.mly"
+# 1016 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv))] )
-# 12161 "parser_cocci_menhir.ml"
+# 12386 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12208,13 +12433,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12212 "parser_cocci_menhir.ml"
+# 12437 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12218 "parser_cocci_menhir.ml"
+# 12443 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -12227,7 +12452,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12231 "parser_cocci_menhir.ml"
+# 12456 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -12235,17 +12460,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12239 "parser_cocci_menhir.ml"
+# 12464 "parser_cocci_menhir.ml"
           
         in
         
-# 1006 "parser_cocci_menhir.mly"
+# 1016 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv))] )
-# 12249 "parser_cocci_menhir.ml"
+# 12474 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12306,34 +12531,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12310 "parser_cocci_menhir.ml"
+# 12535 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12315 "parser_cocci_menhir.ml"
+# 12540 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12321 "parser_cocci_menhir.ml"
+# 12546 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12326 "parser_cocci_menhir.ml"
+# 12551 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12332 "parser_cocci_menhir.ml"
+# 12557 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12337 "parser_cocci_menhir.ml"
+# 12562 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
@@ -12342,11 +12567,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 12346 "parser_cocci_menhir.ml"
+# 12571 "parser_cocci_menhir.ml"
           
         in
         
-# 1016 "parser_cocci_menhir.mly"
+# 1026 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -12354,7 +12579,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
         [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
-# 12358 "parser_cocci_menhir.ml"
+# 12583 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12420,34 +12645,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12424 "parser_cocci_menhir.ml"
+# 12649 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12429 "parser_cocci_menhir.ml"
+# 12654 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12435 "parser_cocci_menhir.ml"
+# 12660 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12440 "parser_cocci_menhir.ml"
+# 12665 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12446 "parser_cocci_menhir.ml"
+# 12671 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12451 "parser_cocci_menhir.ml"
+# 12676 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let x0 : 'tv_storage = Obj.magic x0 in
@@ -12458,11 +12683,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12462 "parser_cocci_menhir.ml"
+# 12687 "parser_cocci_menhir.ml"
           
         in
         
-# 1016 "parser_cocci_menhir.mly"
+# 1026 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -12470,7 +12695,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
         [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
-# 12474 "parser_cocci_menhir.ml"
+# 12699 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12511,27 +12736,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _5 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12515 "parser_cocci_menhir.ml"
+# 12740 "parser_cocci_menhir.ml"
         ) = Obj.magic _5 in
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12520 "parser_cocci_menhir.ml"
+# 12745 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12526 "parser_cocci_menhir.ml"
+# 12751 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_decl_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_decl_var = 
-# 1024 "parser_cocci_menhir.mly"
+# 1034 "parser_cocci_menhir.mly"
       ( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
                                  P.clt2mcode ")" _4,P.clt2mcode ";" _5))] )
-# 12535 "parser_cocci_menhir.ml"
+# 12760 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12602,40 +12827,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12606 "parser_cocci_menhir.ml"
+# 12831 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12612 "parser_cocci_menhir.ml"
+# 12837 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12617 "parser_cocci_menhir.ml"
+# 12842 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12623 "parser_cocci_menhir.ml"
+# 12848 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12628 "parser_cocci_menhir.ml"
+# 12853 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12634 "parser_cocci_menhir.ml"
+# 12859 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12639 "parser_cocci_menhir.ml"
+# 12864 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
@@ -12644,11 +12869,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 12648 "parser_cocci_menhir.ml"
+# 12873 "parser_cocci_menhir.ml"
           
         in
         
-# 1030 "parser_cocci_menhir.mly"
+# 1040 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -12656,7 +12881,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
       [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 12660 "parser_cocci_menhir.ml"
+# 12885 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12732,40 +12957,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12736 "parser_cocci_menhir.ml"
+# 12961 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12742 "parser_cocci_menhir.ml"
+# 12967 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12747 "parser_cocci_menhir.ml"
+# 12972 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12753 "parser_cocci_menhir.ml"
+# 12978 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12758 "parser_cocci_menhir.ml"
+# 12983 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12764 "parser_cocci_menhir.ml"
+# 12989 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12769 "parser_cocci_menhir.ml"
+# 12994 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let x0 : 'tv_storage = Obj.magic x0 in
@@ -12776,11 +13001,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 12780 "parser_cocci_menhir.ml"
+# 13005 "parser_cocci_menhir.ml"
           
         in
         
-# 1030 "parser_cocci_menhir.mly"
+# 1040 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -12788,7 +13013,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
       [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 12792 "parser_cocci_menhir.ml"
+# 13017 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12824,25 +13049,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12828 "parser_cocci_menhir.ml"
+# 13053 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let id : 'tv_comma_list_typedef_ident_ = Obj.magic id in
         let t : 'tv_typedef_ctype = Obj.magic t in
         let s : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 12835 "parser_cocci_menhir.ml"
+# 13060 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_pv_ in
         let _v : 'tv_decl_var = 
-# 1038 "parser_cocci_menhir.mly"
+# 1048 "parser_cocci_menhir.mly"
       ( let s = P.clt2mcode "typedef" s in
         List.map
          (function id ->
            Ast0.wrap(Ast0.Typedef(s,t,id,P.clt2mcode ";" pv)))
          id )
-# 12846 "parser_cocci_menhir.ml"
+# 13071 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12864,13 +13089,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_define_param_list = 
-# 755 "parser_cocci_menhir.mly"
+# 764 "parser_cocci_menhir.mly"
      (let circle x =
        match Ast0.unwrap x with Ast0.DPcircles(_) -> true | _ -> false in
      if List.exists circle _1
      then Ast0.wrap(Ast0.CIRCLES(_1))
      else Ast0.wrap(Ast0.DOTS(_1)) )
-# 12874 "parser_cocci_menhir.ml"
+# 13099 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12892,9 +13117,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_define_param_list_option = 
-# 779 "parser_cocci_menhir.mly"
+# 788 "parser_cocci_menhir.mly"
                                             ( _1 )
-# 12898 "parser_cocci_menhir.ml"
+# 13123 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12909,9 +13134,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_define_param_list_option = 
-# 780 "parser_cocci_menhir.mly"
+# 789 "parser_cocci_menhir.mly"
                            ( Ast0.wrap(Ast0.DOTS([])) )
-# 12915 "parser_cocci_menhir.ml"
+# 13140 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12933,9 +13158,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_define_param_list_start = 
-# 762 "parser_cocci_menhir.mly"
+# 771 "parser_cocci_menhir.mly"
           ( [Ast0.wrap(Ast0.DParam _1)] )
-# 12939 "parser_cocci_menhir.ml"
+# 13164 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -12967,16 +13192,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 12971 "parser_cocci_menhir.ml"
+# 13196 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_define_param_list_start = 
-# 764 "parser_cocci_menhir.mly"
+# 773 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.DParam _1)::
        Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _2))::_3 )
-# 12980 "parser_cocci_menhir.ml"
+# 13205 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13003,15 +13228,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13007 "parser_cocci_menhir.ml"
+# 13232 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_define_param_list_start = 
-# 767 "parser_cocci_menhir.mly"
+# 776 "parser_cocci_menhir.mly"
       ( (P.mkdpdots "..." d)::
        (List.concat (List.map (function x -> x (P.mkdpdots "...")) r)) )
-# 13015 "parser_cocci_menhir.ml"
+# 13240 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13032,12 +13257,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 84 "parser_cocci_menhir.mly"
        (Data.clt * token)
-# 13036 "parser_cocci_menhir.ml"
+# 13261 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_defineop = 
-# 714 "parser_cocci_menhir.mly"
+# 723 "parser_cocci_menhir.mly"
     ( let (clt,ident) = _1 in
       function body ->
        Ast0.wrap
@@ -13054,7 +13279,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                       "unexpected name for a #define")),
              Ast0.wrap Ast0.NoParams,
              body)) )
-# 13058 "parser_cocci_menhir.ml"
+# 13283 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13085,18 +13310,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13089 "parser_cocci_menhir.ml"
+# 13314 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_define_param_list_option = Obj.magic _2 in
         let _1 : (
 # 85 "parser_cocci_menhir.mly"
        (Data.clt * token * int * int)
-# 13095 "parser_cocci_menhir.ml"
+# 13320 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_defineop = 
-# 731 "parser_cocci_menhir.mly"
+# 740 "parser_cocci_menhir.mly"
     ( let (clt,ident,parenoff,parencol) = _1 in
       (* clt is the start of the #define itself *)
       let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
@@ -13117,7 +13342,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                    (Semantic_cocci.Semantic
                       "unexpected name for a #define")),
              Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" _3)),body)) )
-# 13121 "parser_cocci_menhir.ml"
+# 13346 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13141,7 +13366,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_dep = 
 # 230 "parser_cocci_menhir.mly"
                    ( _1 )
-# 13145 "parser_cocci_menhir.ml"
+# 13370 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13175,7 +13400,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_dep = 
 # 231 "parser_cocci_menhir.mly"
                    ( Ast.AndDep(_1, _3) )
-# 13179 "parser_cocci_menhir.ml"
+# 13404 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13209,7 +13434,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_dep = 
 # 232 "parser_cocci_menhir.mly"
                    ( Ast.OrDep (_1, _3) )
-# 13213 "parser_cocci_menhir.ml"
+# 13438 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13226,7 +13451,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_depends = 
 # 226 "parser_cocci_menhir.mly"
                            ( Ast.NoDep )
-# 13230 "parser_cocci_menhir.ml"
+# 13455 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13258,7 +13483,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_depends = 
 # 227 "parser_cocci_menhir.mly"
                            ( parents )
-# 13262 "parser_cocci_menhir.ml"
+# 13487 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13285,14 +13510,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13289 "parser_cocci_menhir.ml"
+# 13514 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_designator = 
-# 1139 "parser_cocci_menhir.mly"
+# 1150 "parser_cocci_menhir.mly"
      ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) )
-# 13296 "parser_cocci_menhir.ml"
+# 13521 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13323,20 +13548,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13327 "parser_cocci_menhir.ml"
+# 13552 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13333 "parser_cocci_menhir.ml"
+# 13558 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_designator = 
-# 1141 "parser_cocci_menhir.mly"
+# 1152 "parser_cocci_menhir.mly"
      ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) )
-# 13340 "parser_cocci_menhir.ml"
+# 13565 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13377,27 +13602,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _5 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13381 "parser_cocci_menhir.ml"
+# 13606 "parser_cocci_menhir.ml"
         ) = Obj.magic _5 in
         let _4 : 'tv_eexpr = Obj.magic _4 in
         let _3 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13387 "parser_cocci_menhir.ml"
+# 13612 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13393 "parser_cocci_menhir.ml"
+# 13618 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_designator = 
-# 1143 "parser_cocci_menhir.mly"
+# 1154 "parser_cocci_menhir.mly"
      ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3,
                             _4,P.clt2mcode "]" _5) )
-# 13401 "parser_cocci_menhir.ml"
+# 13626 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13419,9 +13644,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_dexpr = 
-# 1246 "parser_cocci_menhir.mly"
+# 1257 "parser_cocci_menhir.mly"
                                           ( _1 )
-# 13425 "parser_cocci_menhir.ml"
+# 13650 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13449,7 +13674,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_disable = 
 # 245 "parser_cocci_menhir.mly"
                                                       ( List.map P.id2name _2 )
-# 13453 "parser_cocci_menhir.ml"
+# 13678 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13470,14 +13695,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13474 "parser_cocci_menhir.ml"
+# 13699 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_dot_expressions = 
-# 1255 "parser_cocci_menhir.mly"
+# 1266 "parser_cocci_menhir.mly"
             ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) )
-# 13481 "parser_cocci_menhir.ml"
+# 13706 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13499,9 +13724,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_dot_expressions = 
-# 1256 "parser_cocci_menhir.mly"
+# 1267 "parser_cocci_menhir.mly"
                    ( _1 )
-# 13505 "parser_cocci_menhir.ml"
+# 13730 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13527,20 +13752,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13531 "parser_cocci_menhir.ml"
+# 13756 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let c : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13536 "parser_cocci_menhir.ml"
+# 13761 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let _startpos = _startpos_c_ in
         let _endpos = _endpos_d_ in
         let _v : 'tv_dp_comma_args_TEllipsis_ = 
-# 772 "parser_cocci_menhir.mly"
+# 781 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," c)); dot_builder d] )
-# 13544 "parser_cocci_menhir.ml"
+# 13769 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13567,16 +13792,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13571 "parser_cocci_menhir.ml"
+# 13796 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_dp_comma_args_TEllipsis_ = 
-# 775 "parser_cocci_menhir.mly"
+# 784 "parser_cocci_menhir.mly"
     ( function dot_builder ->
       [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _1));
        Ast0.wrap(Ast0.DParam _2)] )
-# 13580 "parser_cocci_menhir.ml"
+# 13805 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13597,14 +13822,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13601 "parser_cocci_menhir.ml"
+# 13826 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_d_ in
         let _v : 'tv_edots_when_TEllipsis_eexpr_ = 
-# 1986 "parser_cocci_menhir.mly"
+# 1999 "parser_cocci_menhir.mly"
                                                   ( (d,None) )
-# 13608 "parser_cocci_menhir.ml"
+# 13833 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13643,14 +13868,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13647 "parser_cocci_menhir.ml"
+# 13872 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_edots_when_TEllipsis_eexpr_ = 
-# 1987 "parser_cocci_menhir.mly"
+# 2000 "parser_cocci_menhir.mly"
                                                   ( (d,Some w) )
-# 13654 "parser_cocci_menhir.ml"
+# 13879 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13671,14 +13896,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13675 "parser_cocci_menhir.ml"
+# 13900 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_d_ in
         let _v : 'tv_edots_when_TEllipsis_initialize_ = 
-# 1986 "parser_cocci_menhir.mly"
+# 1999 "parser_cocci_menhir.mly"
                                                   ( (d,None) )
-# 13682 "parser_cocci_menhir.ml"
+# 13907 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13717,14 +13942,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13721 "parser_cocci_menhir.ml"
+# 13946 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_edots_when_TEllipsis_initialize_ = 
-# 1987 "parser_cocci_menhir.mly"
+# 2000 "parser_cocci_menhir.mly"
                                                   ( (d,Some w) )
-# 13728 "parser_cocci_menhir.ml"
+# 13953 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13745,14 +13970,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13749 "parser_cocci_menhir.ml"
+# 13974 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_d_ in
         let _v : 'tv_edots_when_TEllipsis_struct_decl_ = 
-# 1986 "parser_cocci_menhir.mly"
+# 1999 "parser_cocci_menhir.mly"
                                                   ( (d,None) )
-# 13756 "parser_cocci_menhir.ml"
+# 13981 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13791,14 +14016,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let d : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13795 "parser_cocci_menhir.ml"
+# 14020 "parser_cocci_menhir.ml"
         ) = Obj.magic d in
         let _startpos = _startpos_d_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_edots_when_TEllipsis_struct_decl_ = 
-# 1987 "parser_cocci_menhir.mly"
+# 2000 "parser_cocci_menhir.mly"
                                                   ( (d,Some w) )
-# 13802 "parser_cocci_menhir.ml"
+# 14027 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13820,9 +14045,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_eexpr = 
-# 1244 "parser_cocci_menhir.mly"
+# 1255 "parser_cocci_menhir.mly"
                                          ( _1 )
-# 13826 "parser_cocci_menhir.ml"
+# 14051 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13844,7 +14069,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_eexpr_list = 
-# 1929 "parser_cocci_menhir.mly"
+# 1942 "parser_cocci_menhir.mly"
      (let circle x =
        match Ast0.unwrap x with Ast0.Ecircles(_) -> true | _ -> false in
      let star x =
@@ -13855,7 +14080,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
        if List.exists star _1
        then Ast0.wrap(Ast0.STARS(_1))
        else Ast0.wrap(Ast0.DOTS(_1)) )
-# 13859 "parser_cocci_menhir.ml"
+# 14084 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13877,9 +14102,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_eexpr_list_option = 
-# 1969 "parser_cocci_menhir.mly"
+# 1982 "parser_cocci_menhir.mly"
                               ( _1 )
-# 13883 "parser_cocci_menhir.ml"
+# 14108 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13894,9 +14119,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_eexpr_list_option = 
-# 1970 "parser_cocci_menhir.mly"
+# 1983 "parser_cocci_menhir.mly"
                            ( Ast0.wrap(Ast0.DOTS([])) )
-# 13900 "parser_cocci_menhir.ml"
+# 14125 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13918,9 +14143,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_eexpr_list_start = 
-# 1957 "parser_cocci_menhir.mly"
+# 1970 "parser_cocci_menhir.mly"
           ( [_1] )
-# 13924 "parser_cocci_menhir.ml"
+# 14149 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13952,15 +14177,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 13956 "parser_cocci_menhir.ml"
+# 14181 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_aexpr = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_eexpr_list_start = 
-# 1959 "parser_cocci_menhir.mly"
+# 1972 "parser_cocci_menhir.mly"
       ( _1::Ast0.wrap(Ast0.EComma(P.clt2mcode "," _2))::_3 )
-# 13964 "parser_cocci_menhir.ml"
+# 14189 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -13982,7 +14207,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_exists = 
 # 248 "parser_cocci_menhir.mly"
           ( Ast.Exists )
-# 13986 "parser_cocci_menhir.ml"
+# 14211 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14004,7 +14229,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_exists = 
 # 249 "parser_cocci_menhir.mly"
           ( Ast.Forall )
-# 14008 "parser_cocci_menhir.ml"
+# 14233 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14021,7 +14246,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_exists = 
 # 250 "parser_cocci_menhir.mly"
           ( Ast.Undetermined )
-# 14025 "parser_cocci_menhir.ml"
+# 14250 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14043,9 +14268,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_expr = 
-# 1242 "parser_cocci_menhir.mly"
+# 1253 "parser_cocci_menhir.mly"
                                 ( _1 )
-# 14049 "parser_cocci_menhir.ml"
+# 14274 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14067,9 +14292,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_r_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_expr_dots_TEllipsis_ = 
-# 1424 "parser_cocci_menhir.mly"
+# 1437 "parser_cocci_menhir.mly"
                                                        ( r )
-# 14073 "parser_cocci_menhir.ml"
+# 14298 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14086,7 +14311,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_extends = 
 # 221 "parser_cocci_menhir.mly"
                                                   ( () )
-# 14090 "parser_cocci_menhir.ml"
+# 14315 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14111,14 +14336,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let parent : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 14115 "parser_cocci_menhir.ml"
+# 14340 "parser_cocci_menhir.ml"
         ) = Obj.magic parent in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_parent_ in
         let _v : 'tv_extends = 
 # 223 "parser_cocci_menhir.mly"
     ( !Data.install_bindings (parent) )
-# 14122 "parser_cocci_menhir.ml"
+# 14347 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14144,21 +14369,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 86 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 14148 "parser_cocci_menhir.ml"
+# 14373 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 86 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 14153 "parser_cocci_menhir.ml"
+# 14378 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_filespec = 
-# 669 "parser_cocci_menhir.mly"
+# 678 "parser_cocci_menhir.mly"
     ( [Ast0.wrap
          (Ast0.FILEINFO(P.id2mcode _1,
                         P.id2mcode _2))] )
-# 14162 "parser_cocci_menhir.ml"
+# 14387 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14173,9 +14398,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fninfo = 
-# 808 "parser_cocci_menhir.mly"
+# 817 "parser_cocci_menhir.mly"
                 ( [] )
-# 14179 "parser_cocci_menhir.ml"
+# 14404 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14203,13 +14428,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo = 
-# 810 "parser_cocci_menhir.mly"
+# 819 "parser_cocci_menhir.mly"
       ( try
        let _ =
          List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "duplicate storage")
       with Not_found -> (Ast0.FStorage(_1))::_2 )
-# 14213 "parser_cocci_menhir.ml"
+# 14438 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14237,9 +14462,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_fninfo = 
-# 815 "parser_cocci_menhir.mly"
+# 824 "parser_cocci_menhir.mly"
                         ( (Ast0.FType(t))::r )
-# 14243 "parser_cocci_menhir.ml"
+# 14468 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14266,17 +14491,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 14270 "parser_cocci_menhir.ml"
+# 14495 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo = 
-# 817 "parser_cocci_menhir.mly"
+# 826 "parser_cocci_menhir.mly"
       ( try
        let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "duplicate inline")
       with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
-# 14280 "parser_cocci_menhir.ml"
+# 14505 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14303,17 +14528,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 57 "parser_cocci_menhir.mly"
       (string * Data.clt)
-# 14307 "parser_cocci_menhir.ml"
+# 14532 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo = 
-# 822 "parser_cocci_menhir.mly"
+# 831 "parser_cocci_menhir.mly"
       ( try
        let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "multiple attributes")
       with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
-# 14317 "parser_cocci_menhir.ml"
+# 14542 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14328,9 +14553,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fninfo_nt = 
-# 828 "parser_cocci_menhir.mly"
+# 837 "parser_cocci_menhir.mly"
                 ( [] )
-# 14334 "parser_cocci_menhir.ml"
+# 14559 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14358,13 +14583,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo_nt = 
-# 830 "parser_cocci_menhir.mly"
+# 839 "parser_cocci_menhir.mly"
       ( try
        let _ =
          List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "duplicate storage")
       with Not_found -> (Ast0.FStorage(_1))::_2 )
-# 14368 "parser_cocci_menhir.ml"
+# 14593 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14391,17 +14616,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 14395 "parser_cocci_menhir.ml"
+# 14620 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo_nt = 
-# 836 "parser_cocci_menhir.mly"
+# 845 "parser_cocci_menhir.mly"
       ( try
        let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "duplicate inline")
       with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
-# 14405 "parser_cocci_menhir.ml"
+# 14630 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14428,17 +14653,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 57 "parser_cocci_menhir.mly"
       (string * Data.clt)
-# 14432 "parser_cocci_menhir.ml"
+# 14657 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fninfo_nt = 
-# 841 "parser_cocci_menhir.mly"
+# 850 "parser_cocci_menhir.mly"
       ( try
        let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
        raise (Semantic_cocci.Semantic "duplicate init")
       with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
-# 14442 "parser_cocci_menhir.ml"
+# 14667 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14453,9 +14678,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fun_after_dots = 
-# 1877 "parser_cocci_menhir.mly"
+# 1890 "parser_cocci_menhir.mly"
                                ([])
-# 14459 "parser_cocci_menhir.ml"
+# 14684 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14481,9 +14706,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots = 
-# 1878 "parser_cocci_menhir.mly"
+# 1891 "parser_cocci_menhir.mly"
                                (_2)
-# 14487 "parser_cocci_menhir.ml"
+# 14712 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14511,9 +14736,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots = 
-# 1879 "parser_cocci_menhir.mly"
+# 1892 "parser_cocci_menhir.mly"
                                (Ast0.wrap(Ast0.Exp(_1))::_2)
-# 14517 "parser_cocci_menhir.ml"
+# 14742 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14541,9 +14766,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots = 
-# 1880 "parser_cocci_menhir.mly"
+# 1893 "parser_cocci_menhir.mly"
                                     (_1@_2)
-# 14547 "parser_cocci_menhir.ml"
+# 14772 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14558,9 +14783,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fun_after_dots_or = 
-# 1887 "parser_cocci_menhir.mly"
+# 1900 "parser_cocci_menhir.mly"
                                ([])
-# 14564 "parser_cocci_menhir.ml"
+# 14789 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14586,9 +14811,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots_or = 
-# 1888 "parser_cocci_menhir.mly"
+# 1901 "parser_cocci_menhir.mly"
                                (_2)
-# 14592 "parser_cocci_menhir.ml"
+# 14817 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14616,9 +14841,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots_or = 
-# 1889 "parser_cocci_menhir.mly"
+# 1902 "parser_cocci_menhir.mly"
                                (Ast0.wrap(Ast0.Exp(_1))::_2)
-# 14622 "parser_cocci_menhir.ml"
+# 14847 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14646,9 +14871,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_dots_or = 
-# 1890 "parser_cocci_menhir.mly"
+# 1903 "parser_cocci_menhir.mly"
                                     (_1@_2)
-# 14652 "parser_cocci_menhir.ml"
+# 14877 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14676,9 +14901,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_exp = 
-# 1883 "parser_cocci_menhir.mly"
+# 1896 "parser_cocci_menhir.mly"
                                (_1::_2)
-# 14682 "parser_cocci_menhir.ml"
+# 14907 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14693,9 +14918,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fun_after_exp_or = 
-# 1893 "parser_cocci_menhir.mly"
+# 1906 "parser_cocci_menhir.mly"
                                ([])
-# 14699 "parser_cocci_menhir.ml"
+# 14924 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14723,9 +14948,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_exp_or = 
-# 1894 "parser_cocci_menhir.mly"
+# 1907 "parser_cocci_menhir.mly"
                                (_1::_2)
-# 14729 "parser_cocci_menhir.ml"
+# 14954 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14740,9 +14965,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_fun_after_stm = 
-# 1872 "parser_cocci_menhir.mly"
+# 1885 "parser_cocci_menhir.mly"
                                ([])
-# 14746 "parser_cocci_menhir.ml"
+# 14971 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14770,9 +14995,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_stm = 
-# 1873 "parser_cocci_menhir.mly"
+# 1886 "parser_cocci_menhir.mly"
                                (_1::_2)
-# 14776 "parser_cocci_menhir.ml"
+# 15001 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14800,9 +15025,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_fun_after_stm = 
-# 1874 "parser_cocci_menhir.mly"
+# 1887 "parser_cocci_menhir.mly"
                                (_1@_2)
-# 14806 "parser_cocci_menhir.ml"
+# 15031 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14824,9 +15049,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_fun_start = 
-# 1869 "parser_cocci_menhir.mly"
+# 1882 "parser_cocci_menhir.mly"
                  ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 14830 "parser_cocci_menhir.ml"
+# 15055 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14848,9 +15073,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_func_ident = 
-# 1666 "parser_cocci_menhir.mly"
+# 1679 "parser_cocci_menhir.mly"
          ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 14854 "parser_cocci_menhir.ml"
+# 15079 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14871,15 +15096,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 14875 "parser_cocci_menhir.ml"
+# 15100 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_func_ident = 
-# 1668 "parser_cocci_menhir.mly"
+# 1681 "parser_cocci_menhir.mly"
          ( let (nm,constraints,pure,clt) = _1 in
         Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 14883 "parser_cocci_menhir.ml"
+# 15108 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14900,15 +15125,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 14904 "parser_cocci_menhir.ml"
+# 15129 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_func_ident = 
-# 1671 "parser_cocci_menhir.mly"
+# 1684 "parser_cocci_menhir.mly"
          ( let (nm,constraints,pure,clt) = _1 in
         Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
-# 14912 "parser_cocci_menhir.ml"
+# 15137 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14929,16 +15154,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 14933 "parser_cocci_menhir.ml"
+# 15158 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_func_ident = 
-# 1674 "parser_cocci_menhir.mly"
+# 1687 "parser_cocci_menhir.mly"
   ( let (nm,constraints,pure,clt) = _1 in
         Ast0.wrap
           (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
-# 14942 "parser_cocci_menhir.ml"
+# 15167 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -14998,31 +15223,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rb : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15002 "parser_cocci_menhir.ml"
+# 15227 "parser_cocci_menhir.ml"
         ) = Obj.magic rb in
         let b : 'tv_fun_start = Obj.magic b in
         let lb : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15008 "parser_cocci_menhir.ml"
+# 15233 "parser_cocci_menhir.ml"
         ) = Obj.magic lb in
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15013 "parser_cocci_menhir.ml"
+# 15238 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let d : 'tv_decl_list_decl_ = Obj.magic d in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15019 "parser_cocci_menhir.ml"
+# 15244 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let i : 'tv_func_ident = Obj.magic i in
         let f : 'tv_fninfo = Obj.magic f in
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_rb_ in
         let _v : 'tv_fundecl = 
-# 799 "parser_cocci_menhir.mly"
+# 808 "parser_cocci_menhir.mly"
       ( P.verify_parameter_declarations (Ast0.undots d);
        Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()),
                               f, i,
@@ -15030,7 +15255,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                               P.clt2mcode ")" rp,
                               P.clt2mcode "{" lb, b,
                               P.clt2mcode "}" rb)) )
-# 15034 "parser_cocci_menhir.ml"
+# 15259 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15076,18 +15301,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pt : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15080 "parser_cocci_menhir.ml"
+# 15305 "parser_cocci_menhir.ml"
         ) = Obj.magic pt in
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15085 "parser_cocci_menhir.ml"
+# 15310 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15091 "parser_cocci_menhir.ml"
+# 15316 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let id : 'tv_func_ident = Obj.magic id in
         let t : 'tv_ctype = Obj.magic t in
@@ -15097,11 +15322,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 15101 "parser_cocci_menhir.ml"
+# 15326 "parser_cocci_menhir.ml"
           
         in
         
-# 787 "parser_cocci_menhir.mly"
+# 796 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.UnInit
             (s,
@@ -15109,7 +15334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                (Ast0.FunctionType(Some t,
                                   P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
              id, P.clt2mcode ";" pt)) )
-# 15113 "parser_cocci_menhir.ml"
+# 15338 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15160,18 +15385,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pt : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15164 "parser_cocci_menhir.ml"
+# 15389 "parser_cocci_menhir.ml"
         ) = Obj.magic pt in
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15169 "parser_cocci_menhir.ml"
+# 15394 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15175 "parser_cocci_menhir.ml"
+# 15400 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let id : 'tv_func_ident = Obj.magic id in
         let t : 'tv_ctype = Obj.magic t in
@@ -15183,11 +15408,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 15187 "parser_cocci_menhir.ml"
+# 15412 "parser_cocci_menhir.ml"
           
         in
         
-# 787 "parser_cocci_menhir.mly"
+# 796 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.UnInit
             (s,
@@ -15195,7 +15420,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                (Ast0.FunctionType(Some t,
                                   P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
              id, P.clt2mcode ";" pt)) )
-# 15199 "parser_cocci_menhir.ml"
+# 15424 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15217,9 +15442,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_ident = 
-# 1679 "parser_cocci_menhir.mly"
+# 1692 "parser_cocci_menhir.mly"
          ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 15223 "parser_cocci_menhir.ml"
+# 15448 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15240,15 +15465,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 15244 "parser_cocci_menhir.ml"
+# 15469 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_ident = 
-# 1681 "parser_cocci_menhir.mly"
+# 1694 "parser_cocci_menhir.mly"
          ( let (nm,constraints,pure,clt) = _1 in
          Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 15252 "parser_cocci_menhir.ml"
+# 15477 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15270,9 +15495,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_ident_or_const = 
-# 1639 "parser_cocci_menhir.mly"
+# 1652 "parser_cocci_menhir.mly"
                     ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) )
-# 15276 "parser_cocci_menhir.ml"
+# 15501 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15293,15 +15518,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 15297 "parser_cocci_menhir.ml"
+# 15522 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_ident_or_const = 
-# 1641 "parser_cocci_menhir.mly"
+# 1654 "parser_cocci_menhir.mly"
   ( let (x,clt) = _1 in
         Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 15305 "parser_cocci_menhir.ml"
+# 15530 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15322,14 +15547,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 83 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 15326 "parser_cocci_menhir.ml"
+# 15551 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_incl = 
 # 261 "parser_cocci_menhir.mly"
                       ( let (x,_) = _1 in Data.Include(x) )
-# 15333 "parser_cocci_menhir.ml"
+# 15558 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15354,14 +15579,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 15358 "parser_cocci_menhir.ml"
+# 15583 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_incl = 
 # 262 "parser_cocci_menhir.mly"
                       ( Data.Iso(Common.Left(P.id2name _2)) )
-# 15365 "parser_cocci_menhir.ml"
+# 15590 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15386,14 +15611,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 82 "parser_cocci_menhir.mly"
        (string)
-# 15390 "parser_cocci_menhir.ml"
+# 15615 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_incl = 
 # 263 "parser_cocci_menhir.mly"
                       ( Data.Iso(Common.Right _2) )
-# 15397 "parser_cocci_menhir.ml"
+# 15622 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15426,7 +15651,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (function name -> Hashtbl.add Data.all_metadecls name [])
       names;
       Data.Virt(names) )
-# 15430 "parser_cocci_menhir.ml"
+# 15655 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15454,11 +15679,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 151 "parser_cocci_menhir.mly"
       (Data.incl_iso list)
-# 15458 "parser_cocci_menhir.ml"
+# 15683 "parser_cocci_menhir.ml"
         ) = 
 # 257 "parser_cocci_menhir.mly"
                        ( _1 )
-# 15462 "parser_cocci_menhir.ml"
+# 15687 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15486,11 +15711,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 151 "parser_cocci_menhir.mly"
       (Data.incl_iso list)
-# 15490 "parser_cocci_menhir.ml"
+# 15715 "parser_cocci_menhir.ml"
         ) = 
 # 258 "parser_cocci_menhir.mly"
                        ( _1 )
-# 15494 "parser_cocci_menhir.ml"
+# 15719 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15511,12 +15736,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 83 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 15515 "parser_cocci_menhir.ml"
+# 15740 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_includes = 
-# 675 "parser_cocci_menhir.mly"
+# 684 "parser_cocci_menhir.mly"
     ( Ast0.wrap
              (Ast0.Include(P.clt2mcode "#include"
                              (P.drop_pos (P.drop_aft (P.id2clt _1))),
@@ -15527,7 +15752,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                            P.clt2mcode
                              (Ast.Local (Parse_aux.str2inc (P.id2name _1)))
                              (P.drop_bef clt))) )
-# 15531 "parser_cocci_menhir.ml"
+# 15756 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15548,12 +15773,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 83 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 15552 "parser_cocci_menhir.ml"
+# 15777 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_includes = 
-# 686 "parser_cocci_menhir.mly"
+# 695 "parser_cocci_menhir.mly"
     ( Ast0.wrap
              (Ast0.Include(P.clt2mcode "#include"
                              (P.drop_pos (P.drop_aft (P.id2clt _1))),
@@ -15564,7 +15789,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                            P.clt2mcode
                              (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1)))
                              (P.drop_bef clt))) )
-# 15568 "parser_cocci_menhir.ml"
+# 15793 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15590,9 +15815,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_d_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_includes = 
-# 697 "parser_cocci_menhir.mly"
+# 706 "parser_cocci_menhir.mly"
     ( d (Ast0.wrap(Ast0.DOTS([]))) )
-# 15596 "parser_cocci_menhir.ml"
+# 15821 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15624,10 +15849,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_d_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_includes = 
-# 699 "parser_cocci_menhir.mly"
+# 708 "parser_cocci_menhir.mly"
     ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in
       d (Ast0.wrap(Ast0.DOTS([ty]))) )
-# 15631 "parser_cocci_menhir.ml"
+# 15856 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15659,7 +15884,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_includes = 
-# 702 "parser_cocci_menhir.mly"
+# 711 "parser_cocci_menhir.mly"
     ( let body =
        match b with
          [e] ->
@@ -15669,7 +15894,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
            | _ -> b)
        | _ -> b in
       _1 (Ast0.wrap(Ast0.DOTS(body))) )
-# 15673 "parser_cocci_menhir.ml"
+# 15898 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15691,9 +15916,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_initialize = 
-# 1110 "parser_cocci_menhir.mly"
+# 1121 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.InitExpr(_1)) )
-# 15697 "parser_cocci_menhir.ml"
+# 15922 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15724,20 +15949,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15728 "parser_cocci_menhir.ml"
+# 15953 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_initialize_list = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15734 "parser_cocci_menhir.ml"
+# 15959 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_initialize = 
-# 1112 "parser_cocci_menhir.mly"
+# 1123 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 15741 "parser_cocci_menhir.ml"
+# 15966 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15763,21 +15988,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15767 "parser_cocci_menhir.ml"
+# 15992 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15772 "parser_cocci_menhir.ml"
+# 15997 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_initialize = 
-# 1114 "parser_cocci_menhir.mly"
+# 1125 "parser_cocci_menhir.mly"
       ( Ast0.wrap
          (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
                         P.clt2mcode "}" _2)) )
-# 15781 "parser_cocci_menhir.ml"
+# 16006 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15798,15 +16023,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 68 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 15802 "parser_cocci_menhir.ml"
+# 16027 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_initialize = 
-# 1118 "parser_cocci_menhir.mly"
+# 1129 "parser_cocci_menhir.mly"
       (let (nm,pure,clt) = _1 in
       Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) )
-# 15810 "parser_cocci_menhir.ml"
+# 16035 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15828,9 +16053,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_initialize2 = 
-# 1124 "parser_cocci_menhir.mly"
+# 1135 "parser_cocci_menhir.mly"
                             ( Ast0.wrap(Ast0.InitExpr(_1)) )
-# 15834 "parser_cocci_menhir.ml"
+# 16059 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15861,20 +16086,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15865 "parser_cocci_menhir.ml"
+# 16090 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_initialize_list = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15871 "parser_cocci_menhir.ml"
+# 16096 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_initialize2 = 
-# 1126 "parser_cocci_menhir.mly"
+# 1137 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 15878 "parser_cocci_menhir.ml"
+# 16103 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15900,21 +16125,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15904 "parser_cocci_menhir.ml"
+# 16129 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15909 "parser_cocci_menhir.ml"
+# 16134 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_initialize2 = 
-# 1128 "parser_cocci_menhir.mly"
+# 1139 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
                       P.clt2mcode "}" _2)) )
-# 15918 "parser_cocci_menhir.ml"
+# 16143 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15946,15 +16171,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15950 "parser_cocci_menhir.ml"
+# 16175 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_list_designator_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_initialize2 = 
-# 1133 "parser_cocci_menhir.mly"
+# 1144 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) )
-# 15958 "parser_cocci_menhir.ml"
+# 16183 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -15986,15 +16211,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 15990 "parser_cocci_menhir.ml"
+# 16215 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_initialize2 = 
-# 1135 "parser_cocci_menhir.mly"
+# 1146 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) )
-# 15998 "parser_cocci_menhir.ml"
+# 16223 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16016,9 +16241,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_initialize_list = 
-# 1147 "parser_cocci_menhir.mly"
+# 1158 "parser_cocci_menhir.mly"
                          ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 16022 "parser_cocci_menhir.ml"
+# 16247 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16044,15 +16269,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 16048 "parser_cocci_menhir.ml"
+# 16273 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_initialize2 = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_initialize_list_start = 
-# 1150 "parser_cocci_menhir.mly"
+# 1161 "parser_cocci_menhir.mly"
                      ( [_1;Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))] )
-# 16056 "parser_cocci_menhir.ml"
+# 16281 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16084,15 +16309,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 16088 "parser_cocci_menhir.ml"
+# 16313 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_initialize2 = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_initialize_list_start = 
-# 1152 "parser_cocci_menhir.mly"
+# 1163 "parser_cocci_menhir.mly"
     ( _1::Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))::_3 )
-# 16096 "parser_cocci_menhir.ml"
+# 16321 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16118,9 +16343,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_initialize_list_start = 
-# 1154 "parser_cocci_menhir.mly"
+# 1165 "parser_cocci_menhir.mly"
     ( _2 )
-# 16124 "parser_cocci_menhir.ml"
+# 16349 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16148,10 +16373,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_initialize_list_start = 
-# 1157 "parser_cocci_menhir.mly"
+# 1168 "parser_cocci_menhir.mly"
     ( (P.mkidots "..." d)::
       (List.concat(List.map (function x -> x (P.mkidots "...")) r)) )
-# 16155 "parser_cocci_menhir.ml"
+# 16380 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16171,9 +16396,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_invalid = 
-# 1252 "parser_cocci_menhir.mly"
+# 1263 "parser_cocci_menhir.mly"
            ( raise (Semantic_cocci.Semantic "not matchable") )
-# 16177 "parser_cocci_menhir.ml"
+# 16402 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16190,7 +16415,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_is_expression = 
 # 253 "parser_cocci_menhir.mly"
               ( false )
-# 16194 "parser_cocci_menhir.ml"
+# 16419 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16212,7 +16437,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_is_expression = 
 # 254 "parser_cocci_menhir.mly"
               ( true )
-# 16216 "parser_cocci_menhir.ml"
+# 16441 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16238,9 +16463,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_ctype_ = 
-# 2042 "parser_cocci_menhir.mly"
+# 2055 "parser_cocci_menhir.mly"
                 ( Common.Left t )
-# 16244 "parser_cocci_menhir.ml"
+# 16469 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16266,9 +16491,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_ctype_ = 
-# 2043 "parser_cocci_menhir.mly"
+# 2056 "parser_cocci_menhir.mly"
                      ( Common.Right t )
-# 16272 "parser_cocci_menhir.ml"
+# 16497 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16294,9 +16519,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_decl_var_ = 
-# 2042 "parser_cocci_menhir.mly"
+# 2055 "parser_cocci_menhir.mly"
                 ( Common.Left t )
-# 16300 "parser_cocci_menhir.ml"
+# 16525 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16322,9 +16547,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_decl_var_ = 
-# 2043 "parser_cocci_menhir.mly"
+# 2056 "parser_cocci_menhir.mly"
                      ( Common.Right t )
-# 16328 "parser_cocci_menhir.ml"
+# 16553 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16350,9 +16575,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_eexpr_ = 
-# 2042 "parser_cocci_menhir.mly"
+# 2055 "parser_cocci_menhir.mly"
                 ( Common.Left t )
-# 16356 "parser_cocci_menhir.ml"
+# 16581 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16378,9 +16603,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_eexpr_ = 
-# 2043 "parser_cocci_menhir.mly"
+# 2056 "parser_cocci_menhir.mly"
                      ( Common.Right t )
-# 16384 "parser_cocci_menhir.ml"
+# 16609 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16406,9 +16631,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_nest_start_ = 
-# 2042 "parser_cocci_menhir.mly"
+# 2055 "parser_cocci_menhir.mly"
                 ( Common.Left t )
-# 16412 "parser_cocci_menhir.ml"
+# 16637 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16434,9 +16659,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_nest_start_ = 
-# 2043 "parser_cocci_menhir.mly"
+# 2056 "parser_cocci_menhir.mly"
                      ( Common.Right t )
-# 16440 "parser_cocci_menhir.ml"
+# 16665 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16462,9 +16687,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_single_statement_ = 
-# 2042 "parser_cocci_menhir.mly"
+# 2055 "parser_cocci_menhir.mly"
                 ( Common.Left t )
-# 16468 "parser_cocci_menhir.ml"
+# 16693 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16490,9 +16715,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_iso_single_statement_ = 
-# 2043 "parser_cocci_menhir.mly"
+# 2056 "parser_cocci_menhir.mly"
                      ( Common.Right t )
-# 16496 "parser_cocci_menhir.ml"
+# 16721 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16530,11 +16755,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16534 "parser_cocci_menhir.ml"
+# 16759 "parser_cocci_menhir.ml"
         ) = 
-# 2010 "parser_cocci_menhir.mly"
+# 2023 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.ExprTag x in P.iso_adjust fn fn e1 el )
-# 16538 "parser_cocci_menhir.ml"
+# 16763 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16572,11 +16797,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16576 "parser_cocci_menhir.ml"
+# 16801 "parser_cocci_menhir.ml"
         ) = 
-# 2012 "parser_cocci_menhir.mly"
+# 2025 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.ArgExprTag x in P.iso_adjust fn fn e1 el )
-# 16580 "parser_cocci_menhir.ml"
+# 16805 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16614,11 +16839,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16618 "parser_cocci_menhir.ml"
+# 16843 "parser_cocci_menhir.ml"
         ) = 
-# 2014 "parser_cocci_menhir.mly"
+# 2027 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.TestExprTag x in P.iso_adjust fn fn e1 el )
-# 16622 "parser_cocci_menhir.ml"
+# 16847 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16656,13 +16881,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16660 "parser_cocci_menhir.ml"
+# 16885 "parser_cocci_menhir.ml"
         ) = 
-# 2016 "parser_cocci_menhir.mly"
+# 2029 "parser_cocci_menhir.mly"
     ( let ffn x = Ast0.ExprTag x in
       let fn x =  Ast0.TestExprTag x in
       P.iso_adjust ffn fn e1 el )
-# 16666 "parser_cocci_menhir.ml"
+# 16891 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16700,11 +16925,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16704 "parser_cocci_menhir.ml"
+# 16929 "parser_cocci_menhir.ml"
         ) = 
-# 2020 "parser_cocci_menhir.mly"
+# 2033 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.StmtTag x in P.iso_adjust fn fn s1 sl )
-# 16708 "parser_cocci_menhir.ml"
+# 16933 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16742,11 +16967,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16746 "parser_cocci_menhir.ml"
+# 16971 "parser_cocci_menhir.ml"
         ) = 
-# 2022 "parser_cocci_menhir.mly"
+# 2035 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.TypeCTag x in P.iso_adjust fn fn t1 tl )
-# 16750 "parser_cocci_menhir.ml"
+# 16975 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16784,11 +17009,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16788 "parser_cocci_menhir.ml"
+# 17013 "parser_cocci_menhir.ml"
         ) = 
-# 2024 "parser_cocci_menhir.mly"
+# 2037 "parser_cocci_menhir.mly"
     ( let fn x = Ast0.DotsStmtTag x in P.iso_adjust fn fn e1 el )
-# 16792 "parser_cocci_menhir.ml"
+# 17017 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16826,9 +17051,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 16830 "parser_cocci_menhir.ml"
+# 17055 "parser_cocci_menhir.ml"
         ) = 
-# 2026 "parser_cocci_menhir.mly"
+# 2039 "parser_cocci_menhir.mly"
     ( let check_one = function
        [x] -> x
       | _ ->
@@ -16843,7 +17068,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
          | Common.Right x -> Common.Right(check_one x))
        dl in
     let fn x = Ast0.DeclTag x in P.iso_adjust fn fn d1 dl )
-# 16847 "parser_cocci_menhir.ml"
+# 17072 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16867,11 +17092,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 170 "parser_cocci_menhir.mly"
       ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 16871 "parser_cocci_menhir.ml"
+# 17096 "parser_cocci_menhir.ml"
         ) = 
 # 187 "parser_cocci_menhir.mly"
                          ( m "" )
-# 16875 "parser_cocci_menhir.ml"
+# 17100 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16899,11 +17124,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 154 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 16903 "parser_cocci_menhir.ml"
+# 17128 "parser_cocci_menhir.ml"
         ) = 
 # 202 "parser_cocci_menhir.mly"
                       ( P.make_iso_rule_name_result (P.id2name nm) )
-# 16907 "parser_cocci_menhir.ml"
+# 17132 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16924,14 +17149,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 16928 "parser_cocci_menhir.ml"
+# 17153 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_iter_ident = 
-# 1693 "parser_cocci_menhir.mly"
+# 1706 "parser_cocci_menhir.mly"
          ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 16935 "parser_cocci_menhir.ml"
+# 17160 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16952,15 +17177,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 65 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 16956 "parser_cocci_menhir.ml"
+# 17181 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_iter_ident = 
-# 1695 "parser_cocci_menhir.mly"
+# 1708 "parser_cocci_menhir.mly"
          ( let (nm,constraints,pure,clt) = _1 in
          Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 16964 "parser_cocci_menhir.ml"
+# 17189 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -16977,7 +17202,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_TMul_ = 
 # 114 "standard.mly"
     ( [] )
-# 16981 "parser_cocci_menhir.ml"
+# 17206 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17004,14 +17229,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let x : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 17008 "parser_cocci_menhir.ml"
+# 17233 "parser_cocci_menhir.ml"
         ) = Obj.magic x in
         let _startpos = _startpos_x_ in
         let _endpos = _endpos_xs_ in
         let _v : 'tv_list_TMul_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17015 "parser_cocci_menhir.ml"
+# 17240 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17028,7 +17253,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_array_dec_ = 
 # 114 "standard.mly"
     ( [] )
-# 17032 "parser_cocci_menhir.ml"
+# 17257 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17058,7 +17283,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_array_dec_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17062 "parser_cocci_menhir.ml"
+# 17287 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17075,7 +17300,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_case_line_ = 
 # 114 "standard.mly"
     ( [] )
-# 17079 "parser_cocci_menhir.ml"
+# 17304 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17105,7 +17330,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_case_line_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17109 "parser_cocci_menhir.ml"
+# 17334 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17122,7 +17347,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_comma_decls_TEllipsis_decl__ = 
 # 114 "standard.mly"
     ( [] )
-# 17126 "parser_cocci_menhir.ml"
+# 17351 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17152,7 +17377,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_comma_decls_TEllipsis_decl__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17156 "parser_cocci_menhir.ml"
+# 17381 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17169,7 +17394,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = 
 # 114 "standard.mly"
     ( [] )
-# 17173 "parser_cocci_menhir.ml"
+# 17398 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17199,7 +17424,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17203 "parser_cocci_menhir.ml"
+# 17428 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17216,7 +17441,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_decl_var_ = 
 # 114 "standard.mly"
     ( [] )
-# 17220 "parser_cocci_menhir.ml"
+# 17445 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17246,7 +17471,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_decl_var_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17250 "parser_cocci_menhir.ml"
+# 17475 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17263,7 +17488,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_designator_ = 
 # 114 "standard.mly"
     ( [] )
-# 17267 "parser_cocci_menhir.ml"
+# 17492 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17293,7 +17518,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_designator_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17297 "parser_cocci_menhir.ml"
+# 17522 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17310,7 +17535,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_dp_comma_args_TEllipsis__ = 
 # 114 "standard.mly"
     ( [] )
-# 17314 "parser_cocci_menhir.ml"
+# 17539 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17340,7 +17565,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_dp_comma_args_TEllipsis__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17344 "parser_cocci_menhir.ml"
+# 17569 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17357,7 +17582,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_incl_ = 
 # 114 "standard.mly"
     ( [] )
-# 17361 "parser_cocci_menhir.ml"
+# 17586 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17387,7 +17612,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_incl_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17391 "parser_cocci_menhir.ml"
+# 17616 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17404,7 +17629,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_ctype__ = 
 # 114 "standard.mly"
     ( [] )
-# 17408 "parser_cocci_menhir.ml"
+# 17633 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17434,7 +17659,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_ctype__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17438 "parser_cocci_menhir.ml"
+# 17663 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17451,7 +17676,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_decl_var__ = 
 # 114 "standard.mly"
     ( [] )
-# 17455 "parser_cocci_menhir.ml"
+# 17680 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17481,7 +17706,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_decl_var__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17485 "parser_cocci_menhir.ml"
+# 17710 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17498,7 +17723,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_eexpr__ = 
 # 114 "standard.mly"
     ( [] )
-# 17502 "parser_cocci_menhir.ml"
+# 17727 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17528,7 +17753,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_eexpr__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17532 "parser_cocci_menhir.ml"
+# 17757 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17545,7 +17770,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_nest_start__ = 
 # 114 "standard.mly"
     ( [] )
-# 17549 "parser_cocci_menhir.ml"
+# 17774 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17575,7 +17800,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_nest_start__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17579 "parser_cocci_menhir.ml"
+# 17804 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17592,7 +17817,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_single_statement__ = 
 # 114 "standard.mly"
     ( [] )
-# 17596 "parser_cocci_menhir.ml"
+# 17821 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17622,7 +17847,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_iso_single_statement__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17626 "parser_cocci_menhir.ml"
+# 17851 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17639,7 +17864,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_ctype__ = 
 # 114 "standard.mly"
     ( [] )
-# 17643 "parser_cocci_menhir.ml"
+# 17868 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17669,7 +17894,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_ctype__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17673 "parser_cocci_menhir.ml"
+# 17898 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17686,7 +17911,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_eexpr__ = 
 # 114 "standard.mly"
     ( [] )
-# 17690 "parser_cocci_menhir.ml"
+# 17915 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17716,7 +17941,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_eexpr__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17720 "parser_cocci_menhir.ml"
+# 17945 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17733,7 +17958,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_fun_after_dots_or__ = 
 # 114 "standard.mly"
     ( [] )
-# 17737 "parser_cocci_menhir.ml"
+# 17962 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17763,7 +17988,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_fun_after_dots_or__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17767 "parser_cocci_menhir.ml"
+# 17992 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17780,7 +18005,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_fun_start__ = 
 # 114 "standard.mly"
     ( [] )
-# 17784 "parser_cocci_menhir.ml"
+# 18009 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17810,7 +18035,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_fun_start__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17814 "parser_cocci_menhir.ml"
+# 18039 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17827,7 +18052,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_rule_elem_statement__ = 
 # 114 "standard.mly"
     ( [] )
-# 17831 "parser_cocci_menhir.ml"
+# 18056 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17857,7 +18082,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_rule_elem_statement__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17861 "parser_cocci_menhir.ml"
+# 18086 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17874,7 +18099,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_statement__ = 
 # 114 "standard.mly"
     ( [] )
-# 17878 "parser_cocci_menhir.ml"
+# 18103 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17904,7 +18129,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_mzl_statement__ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 17908 "parser_cocci_menhir.ml"
+# 18133 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17921,7 +18146,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = 
 # 114 "standard.mly"
     ( [] )
-# 17925 "parser_cocci_menhir.ml"
+# 18150 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17960,13 +18185,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 70 "standard.mly"
     ( (x, y) )
-# 17964 "parser_cocci_menhir.ml"
+# 18189 "parser_cocci_menhir.ml"
           
         in
         
 # 116 "standard.mly"
     ( x :: xs )
-# 17970 "parser_cocci_menhir.ml"
+# 18195 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -17983,7 +18208,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_whenppdecs_ = 
 # 114 "standard.mly"
     ( [] )
-# 17987 "parser_cocci_menhir.ml"
+# 18212 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18013,7 +18238,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_whenppdecs_ = 
 # 116 "standard.mly"
     ( x :: xs )
-# 18017 "parser_cocci_menhir.ml"
+# 18242 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18037,7 +18262,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_list_len = 
 # 334 "parser_cocci_menhir.mly"
                            ( Common.Left _1 )
-# 18041 "parser_cocci_menhir.ml"
+# 18266 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18058,14 +18283,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 18062 "parser_cocci_menhir.ml"
+# 18287 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_list_len = 
 # 335 "parser_cocci_menhir.mly"
        ( let (x,clt) = _1 in Common.Right (int_of_string x) )
-# 18069 "parser_cocci_menhir.ml"
+# 18294 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18082,7 +18307,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_choose_iso_ = 
 # 57 "standard.mly"
     ( [] )
-# 18086 "parser_cocci_menhir.ml"
+# 18311 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18106,7 +18331,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_choose_iso_ = 
 # 59 "standard.mly"
     ( x )
-# 18110 "parser_cocci_menhir.ml"
+# 18335 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18123,7 +18348,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_disable_ = 
 # 57 "standard.mly"
     ( [] )
-# 18127 "parser_cocci_menhir.ml"
+# 18352 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18147,7 +18372,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_disable_ = 
 # 59 "standard.mly"
     ( x )
-# 18151 "parser_cocci_menhir.ml"
+# 18376 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18164,7 +18389,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_filespec_ = 
 # 57 "standard.mly"
     ( [] )
-# 18168 "parser_cocci_menhir.ml"
+# 18393 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18188,7 +18413,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_filespec_ = 
 # 59 "standard.mly"
     ( x )
-# 18192 "parser_cocci_menhir.ml"
+# 18417 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18205,7 +18430,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_minus_start_ = 
 # 57 "standard.mly"
     ( [] )
-# 18209 "parser_cocci_menhir.ml"
+# 18434 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18229,7 +18454,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_minus_start_ = 
 # 59 "standard.mly"
     ( x )
-# 18233 "parser_cocci_menhir.ml"
+# 18458 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18246,7 +18471,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_not_pos_ = 
 # 57 "standard.mly"
     ( [] )
-# 18250 "parser_cocci_menhir.ml"
+# 18475 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18270,7 +18495,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_not_pos_ = 
 # 59 "standard.mly"
     ( x )
-# 18274 "parser_cocci_menhir.ml"
+# 18499 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18287,7 +18512,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_plus_start_ = 
 # 57 "standard.mly"
     ( [] )
-# 18291 "parser_cocci_menhir.ml"
+# 18516 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18311,7 +18536,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_loption_plus_start_ = 
 # 59 "standard.mly"
     ( x )
-# 18315 "parser_cocci_menhir.ml"
+# 18540 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18333,9 +18558,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_t_ in
         let _v : 'tv_meta_exp_type = 
-# 499 "parser_cocci_menhir.mly"
+# 507 "parser_cocci_menhir.mly"
     ( [Ast0_cocci.ast0_type_to_type t] )
-# 18339 "parser_cocci_menhir.ml"
+# 18564 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18371,11 +18596,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_m_ in
         let _v : 'tv_meta_exp_type = 
-# 501 "parser_cocci_menhir.mly"
+# 509 "parser_cocci_menhir.mly"
     ( List.map
        (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m)
        t )
-# 18379 "parser_cocci_menhir.ml"
+# 18604 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18406,14 +18631,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 18410 "parser_cocci_menhir.ml"
+# 18635 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_meta_ident = 
-# 1462 "parser_cocci_menhir.mly"
+# 1475 "parser_cocci_menhir.mly"
                                    ( (Some _1,P.id2name _3) )
-# 18417 "parser_cocci_menhir.ml"
+# 18642 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18444,14 +18669,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 18448 "parser_cocci_menhir.ml"
+# 18673 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_meta_ident = 
-# 1463 "parser_cocci_menhir.mly"
+# 1476 "parser_cocci_menhir.mly"
                                    ( (Some _1,_3) )
-# 18455 "parser_cocci_menhir.ml"
+# 18680 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18475,11 +18700,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 162 "parser_cocci_menhir.mly"
       ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 18479 "parser_cocci_menhir.ml"
+# 18704 "parser_cocci_menhir.ml"
         ) = 
 # 186 "parser_cocci_menhir.mly"
                        ( m (!Ast0.rule_name) )
-# 18483 "parser_cocci_menhir.ml"
+# 18708 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18526,13 +18751,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     ( (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaParamDecl(arity,name)) in
       !Data.add_param_meta name pure; tok) )
-# 18530 "parser_cocci_menhir.ml"
+# 18755 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18536 "parser_cocci_menhir.ml"
+# 18761 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18584,13 +18809,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       let len = Ast.AnyLen in
       let tok = check_meta(Ast.MetaParamListDecl(arity,name,len)) in
       !Data.add_paramlist_meta name len pure; tok) )
-# 18588 "parser_cocci_menhir.ml"
+# 18813 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18594 "parser_cocci_menhir.ml"
+# 18819 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18642,13 +18867,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       let len = Ast.AnyLen in
       let tok = check_meta(Ast.MetaExpListDecl(arity,name,len)) in
       !Data.add_explist_meta name len pure; tok) )
-# 18646 "parser_cocci_menhir.ml"
+# 18871 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18652 "parser_cocci_menhir.ml"
+# 18877 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18695,13 +18920,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     ( (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in
       !Data.add_type_meta name pure; tok) )
-# 18699 "parser_cocci_menhir.ml"
+# 18924 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18705 "parser_cocci_menhir.ml"
+# 18930 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18748,13 +18973,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     ( (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaInitDecl(arity,name)) in
       !Data.add_init_meta name pure; tok) )
-# 18752 "parser_cocci_menhir.ml"
+# 18977 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18758 "parser_cocci_menhir.ml"
+# 18983 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18801,13 +19026,119 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     ( (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
       !Data.add_stm_meta name pure; tok) )
-# 18805 "parser_cocci_menhir.ml"
+# 19030 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18811 "parser_cocci_menhir.ml"
+# 19036 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.startp = _startpos__5_;
+          MenhirLib.EngineTypes.endp = _endpos__5_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = ids;
+            MenhirLib.EngineTypes.startp = _startpos_ids_;
+            MenhirLib.EngineTypes.endp = _endpos_ids_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.startp = _startpos__3_;
+              MenhirLib.EngineTypes.endp = _endpos__3_;
+              MenhirLib.EngineTypes.next = {
+                MenhirLib.EngineTypes.semv = ispure;
+                MenhirLib.EngineTypes.startp = _startpos_ispure_;
+                MenhirLib.EngineTypes.endp = _endpos_ispure_;
+                MenhirLib.EngineTypes.next = {
+                  MenhirLib.EngineTypes.state = _menhir_s;
+                  MenhirLib.EngineTypes.semv = ar;
+                  MenhirLib.EngineTypes.startp = _startpos_ar_;
+                  MenhirLib.EngineTypes.endp = _endpos_ar_;
+                  MenhirLib.EngineTypes.next = _menhir_stack;
+                  };
+                };
+              };
+            };
+          } = _menhir_stack in
+        let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+        let ispure : 'tv_pure = Obj.magic ispure in
+        let ar : 'tv_arity = Obj.magic ar in
+        let _startpos = _startpos_ar_ in
+        let _endpos = _endpos__5_ in
+        let _v : 'tv_metadec = let kindfn =
+          
+# 372 "parser_cocci_menhir.mly"
+    ( (fun arity name pure check_meta ->
+      let tok = check_meta(Ast.MetaDeclDecl(arity,name)) in
+      !Data.add_decl_meta name pure; tok) )
+# 19083 "parser_cocci_menhir.ml"
+          
+        in
+        
+# 275 "parser_cocci_menhir.mly"
+    ( P.create_metadec ar ispure kindfn ids )
+# 19089 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.startp = _startpos__5_;
+          MenhirLib.EngineTypes.endp = _endpos__5_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = ids;
+            MenhirLib.EngineTypes.startp = _startpos_ids_;
+            MenhirLib.EngineTypes.endp = _endpos_ids_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.startp = _startpos__3_;
+              MenhirLib.EngineTypes.endp = _endpos__3_;
+              MenhirLib.EngineTypes.next = {
+                MenhirLib.EngineTypes.semv = ispure;
+                MenhirLib.EngineTypes.startp = _startpos_ispure_;
+                MenhirLib.EngineTypes.endp = _endpos_ispure_;
+                MenhirLib.EngineTypes.next = {
+                  MenhirLib.EngineTypes.state = _menhir_s;
+                  MenhirLib.EngineTypes.semv = ar;
+                  MenhirLib.EngineTypes.startp = _startpos_ar_;
+                  MenhirLib.EngineTypes.endp = _endpos_ar_;
+                  MenhirLib.EngineTypes.next = _menhir_stack;
+                  };
+                };
+              };
+            };
+          } = _menhir_stack in
+        let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+        let ispure : 'tv_pure = Obj.magic ispure in
+        let ar : 'tv_arity = Obj.magic ar in
+        let _startpos = _startpos_ar_ in
+        let _endpos = _endpos__5_ in
+        let _v : 'tv_metadec = let kindfn =
+          
+# 376 "parser_cocci_menhir.mly"
+    ( (fun arity name pure check_meta ->
+      let tok = check_meta(Ast.MetaFieldDecl(arity,name)) in
+      !Data.add_field_meta name pure; tok) )
+# 19136 "parser_cocci_menhir.ml"
+          
+        in
+        
+# 275 "parser_cocci_menhir.mly"
+    ( P.create_metadec ar ispure kindfn ids )
+# 19142 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18854,17 +19185,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__6_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 372 "parser_cocci_menhir.mly"
+# 380 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
       !Data.add_stmlist_meta name pure; tok) )
-# 18862 "parser_cocci_menhir.ml"
+# 19193 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18868 "parser_cocci_menhir.ml"
+# 19199 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18907,18 +19238,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 376 "parser_cocci_menhir.mly"
+# 384 "parser_cocci_menhir.mly"
     ( (fun arity (_,name) pure check_meta ->
       if arity = Ast.NONE && pure = Ast0.Impure
       then (!Data.add_type_name name; [])
       else raise (Semantic_cocci.Semantic "bad typedef")) )
-# 18916 "parser_cocci_menhir.ml"
+# 19247 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18922 "parser_cocci_menhir.ml"
+# 19253 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -18965,18 +19296,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__6_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 381 "parser_cocci_menhir.mly"
+# 389 "parser_cocci_menhir.mly"
     ( (fun arity (_,name) pure check_meta ->
       if arity = Ast.NONE && pure = Ast0.Impure
       then (!Data.add_declarer_name name; [])
       else raise (Semantic_cocci.Semantic "bad declarer")) )
-# 18974 "parser_cocci_menhir.ml"
+# 19305 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 18980 "parser_cocci_menhir.ml"
+# 19311 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19023,18 +19354,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__6_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 386 "parser_cocci_menhir.mly"
+# 394 "parser_cocci_menhir.mly"
     ( (fun arity (_,name) pure check_meta ->
       if arity = Ast.NONE && pure = Ast0.Impure
       then (!Data.add_iterator_name name; [])
       else raise (Semantic_cocci.Semantic "bad iterator")) )
-# 19032 "parser_cocci_menhir.ml"
+# 19363 "parser_cocci_menhir.ml"
           
         in
         
 # 275 "parser_cocci_menhir.mly"
     ( P.create_metadec ar ispure kindfn ids )
-# 19038 "parser_cocci_menhir.ml"
+# 19369 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19073,13 +19404,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     ( (fun name check_meta seed ->
       let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in
       !Data.add_fresh_id_meta name; tok) )
-# 19077 "parser_cocci_menhir.ml"
+# 19408 "parser_cocci_menhir.ml"
           
         in
         
 # 278 "parser_cocci_menhir.mly"
     ( P.create_fresh_metadec kindfn ids )
-# 19083 "parser_cocci_menhir.ml"
+# 19414 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19122,7 +19453,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 393 "parser_cocci_menhir.mly"
+# 401 "parser_cocci_menhir.mly"
     (
      let idfn arity name pure check_meta constraints =
        let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
@@ -19136,7 +19467,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
         !Data.add_virt_id_meta_not_found name pure; tok in
      (idfn,virtfn) )
-# 19140 "parser_cocci_menhir.ml"
+# 19471 "parser_cocci_menhir.ml"
           
         in
         
@@ -19146,7 +19477,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
     function cr ->
       (P.create_metadec_with_constraints ar ispure idfn normal cr) @
       (P.create_metadec_virt ar ispure virtfn virt cr) )
-# 19150 "parser_cocci_menhir.ml"
+# 19481 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19189,17 +19520,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 409 "parser_cocci_menhir.mly"
+# 417 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaFuncDecl(arity,name)) in
       !Data.add_func_meta name constraints pure; tok) )
-# 19197 "parser_cocci_menhir.ml"
+# 19528 "parser_cocci_menhir.ml"
           
         in
         
 # 293 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19203 "parser_cocci_menhir.ml"
+# 19534 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19246,18 +19577,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__6_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 413 "parser_cocci_menhir.mly"
+# 421 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaLocalFuncDecl(arity,name)) in
       !Data.add_local_func_meta name constraints pure;
       tok) )
-# 19255 "parser_cocci_menhir.ml"
+# 19586 "parser_cocci_menhir.ml"
           
         in
         
 # 293 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19261 "parser_cocci_menhir.ml"
+# 19592 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19300,17 +19631,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 418 "parser_cocci_menhir.mly"
+# 426 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaDeclarerDecl(arity,name)) in
       !Data.add_declarer_meta name constraints pure; tok) )
-# 19308 "parser_cocci_menhir.ml"
+# 19639 "parser_cocci_menhir.ml"
           
         in
         
 # 293 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19314 "parser_cocci_menhir.ml"
+# 19645 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19353,17 +19684,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 422 "parser_cocci_menhir.mly"
+# 430 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaIteratorDecl(arity,name)) in
       !Data.add_iterator_meta name constraints pure; tok) )
-# 19361 "parser_cocci_menhir.ml"
+# 19692 "parser_cocci_menhir.ml"
           
         in
         
 # 293 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19367 "parser_cocci_menhir.ml"
+# 19698 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19406,17 +19737,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 428 "parser_cocci_menhir.mly"
+# 436 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaErrDecl(arity,name)) in
       !Data.add_err_meta name constraints pure; tok) )
-# 19414 "parser_cocci_menhir.ml"
+# 19745 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19420 "parser_cocci_menhir.ml"
+# 19751 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19469,11 +19800,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             
 # 39 "standard.mly"
     ( None )
-# 19473 "parser_cocci_menhir.ml"
+# 19804 "parser_cocci_menhir.ml"
             
           in
           
-# 432 "parser_cocci_menhir.mly"
+# 440 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       match l with
        None ->
@@ -19482,13 +19813,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       | Some _ ->
          !Data.add_local_idexp_meta ty name constraints pure;
          check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19486 "parser_cocci_menhir.ml"
+# 19817 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19492 "parser_cocci_menhir.ml"
+# 19823 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19549,11 +19880,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             
 # 41 "standard.mly"
     ( Some x )
-# 19553 "parser_cocci_menhir.ml"
+# 19884 "parser_cocci_menhir.ml"
             
           in
           
-# 432 "parser_cocci_menhir.mly"
+# 440 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       match l with
        None ->
@@ -19562,13 +19893,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       | Some _ ->
          !Data.add_local_idexp_meta ty name constraints pure;
          check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19566 "parser_cocci_menhir.ml"
+# 19897 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19572 "parser_cocci_menhir.ml"
+# 19903 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19625,7 +19956,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let m = m0 in
           let l = l0 in
           
-# 441 "parser_cocci_menhir.mly"
+# 449 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
       match l with
@@ -19635,13 +19966,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       | Some _ ->
          !Data.add_local_idexp_meta ty name constraints pure;
          check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19639 "parser_cocci_menhir.ml"
+# 19970 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19645 "parser_cocci_menhir.ml"
+# 19976 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19691,18 +20022,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_metadec = let kindfn =
           let m = m0 in
           
-# 451 "parser_cocci_menhir.mly"
+# 459 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
       let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
       !Data.add_exp_meta ty name constraints pure; tok) )
-# 19700 "parser_cocci_menhir.ml"
+# 20031 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19706 "parser_cocci_menhir.ml"
+# 20037 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19756,18 +20087,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_metadec = let kindfn =
           let vl = vl0 in
           
-# 456 "parser_cocci_menhir.mly"
+# 464 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let ty = Some (List.map (function x -> Type_cocci.Array x) vl) in
       let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
       !Data.add_exp_meta ty name constraints pure; tok) )
-# 19765 "parser_cocci_menhir.ml"
+# 20096 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19771 "parser_cocci_menhir.ml"
+# 20102 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19813,21 +20144,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             
 # 39 "standard.mly"
     ( None )
-# 19817 "parser_cocci_menhir.ml"
+# 20148 "parser_cocci_menhir.ml"
             
           in
           
-# 461 "parser_cocci_menhir.mly"
+# 469 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
       !Data.add_const_meta ty name constraints pure; tok) )
-# 19825 "parser_cocci_menhir.ml"
+# 20156 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19831 "parser_cocci_menhir.ml"
+# 20162 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19881,21 +20212,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             
 # 41 "standard.mly"
     ( Some x )
-# 19885 "parser_cocci_menhir.ml"
+# 20216 "parser_cocci_menhir.ml"
             
           in
           
-# 461 "parser_cocci_menhir.mly"
+# 469 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
       !Data.add_const_meta ty name constraints pure; tok) )
-# 19893 "parser_cocci_menhir.ml"
+# 20224 "parser_cocci_menhir.ml"
           
         in
         
 # 298 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19899 "parser_cocci_menhir.ml"
+# 20230 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19938,17 +20269,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _endpos = _endpos__5_ in
         let _v : 'tv_metadec = let kindfn =
           
-# 467 "parser_cocci_menhir.mly"
+# 475 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let tok = check_meta(Ast.MetaExpDecl(arity,name,None)) in
       !Data.add_exp_meta None name constraints pure; tok) )
-# 19946 "parser_cocci_menhir.ml"
+# 20277 "parser_cocci_menhir.ml"
           
         in
         
 # 303 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 19952 "parser_cocci_menhir.ml"
+# 20283 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -19994,7 +20325,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_metadec = let kindfn =
           let vl = vl0 in
           
-# 471 "parser_cocci_menhir.mly"
+# 479 "parser_cocci_menhir.mly"
     ( (fun arity name pure check_meta constraints ->
       let ty = Some vl in
       (match constraints with
@@ -20019,13 +20350,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
       !Data.add_exp_meta ty name constraints pure; tok)
     )
-# 20023 "parser_cocci_menhir.ml"
+# 20354 "parser_cocci_menhir.ml"
           
         in
         
 # 303 "parser_cocci_menhir.mly"
     ( P.create_metadec_with_constraints ar ispure kindfn ids )
-# 20029 "parser_cocci_menhir.ml"
+# 20360 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20075,7 +20406,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       let any = match a with None -> Ast.PER | Some _ -> Ast.ALL in
       !Data.add_pos_meta name constraints any; tok in
     P.create_metadec_with_constraints ar false kindfn ids )
-# 20079 "parser_cocci_menhir.ml"
+# 20410 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20141,7 +20472,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
          let tok = check_meta(Ast.MetaParamListDecl(arity,name,lenname)) in
          !Data.add_paramlist_meta name lenname pure; tok)
        len ids )
-# 20145 "parser_cocci_menhir.ml"
+# 20476 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20207,7 +20538,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
          let tok = check_meta(Ast.MetaExpListDecl(arity,name,lenname)) in
          !Data.add_explist_meta name lenname pure; tok)
        len ids )
-# 20211 "parser_cocci_menhir.ml"
+# 20542 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20235,9 +20566,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_ctype_ctype_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20241 "parser_cocci_menhir.ml"
+# 20572 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20265,9 +20596,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_eexpr_eexpr_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20271 "parser_cocci_menhir.ml"
+# 20602 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20295,9 +20626,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_expr_eexpr_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20301 "parser_cocci_menhir.ml"
+# 20632 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20325,9 +20656,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20331 "parser_cocci_menhir.ml"
+# 20662 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20355,9 +20686,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_fun_start_fun_start_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20361 "parser_cocci_menhir.ml"
+# 20692 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20385,9 +20716,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20391 "parser_cocci_menhir.ml"
+# 20722 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20415,9 +20746,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_midzero_list_statement_statement_ = 
-# 1980 "parser_cocci_menhir.mly"
+# 1993 "parser_cocci_menhir.mly"
      ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20421 "parser_cocci_menhir.ml"
+# 20752 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20445,11 +20776,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_minus_body = 
-# 643 "parser_cocci_menhir.mly"
+# 652 "parser_cocci_menhir.mly"
     ( match f@b(*@ew*) with
       [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
     | code -> Top_level.top_level code )
-# 20453 "parser_cocci_menhir.ml"
+# 20784 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20477,11 +20808,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_minus_exp_body = 
-# 657 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
     ( match f@[b](*@ew*) with
       [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
     | code -> Top_level.top_level code )
-# 20485 "parser_cocci_menhir.ml"
+# 20816 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20509,11 +20840,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 142 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20513 "parser_cocci_menhir.ml"
+# 20844 "parser_cocci_menhir.ml"
         ) = 
 # 182 "parser_cocci_menhir.mly"
                                    ( _1 )
-# 20517 "parser_cocci_menhir.ml"
+# 20848 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20541,11 +20872,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 142 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20545 "parser_cocci_menhir.ml"
+# 20876 "parser_cocci_menhir.ml"
         ) = 
 # 182 "parser_cocci_menhir.mly"
                                                                        ( m )
-# 20549 "parser_cocci_menhir.ml"
+# 20880 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20573,11 +20904,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 142 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20577 "parser_cocci_menhir.ml"
+# 20908 "parser_cocci_menhir.ml"
         ) = 
 # 183 "parser_cocci_menhir.mly"
                          ( m )
-# 20581 "parser_cocci_menhir.ml"
+# 20912 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20605,11 +20936,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 139 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20609 "parser_cocci_menhir.ml"
+# 20940 "parser_cocci_menhir.ml"
         ) = 
 # 178 "parser_cocci_menhir.mly"
                            ( _1 )
-# 20613 "parser_cocci_menhir.ml"
+# 20944 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20637,11 +20968,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 139 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20641 "parser_cocci_menhir.ml"
+# 20972 "parser_cocci_menhir.ml"
         ) = 
 # 178 "parser_cocci_menhir.mly"
                                                            ( m )
-# 20645 "parser_cocci_menhir.ml"
+# 20976 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20669,11 +21000,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 139 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 20673 "parser_cocci_menhir.ml"
+# 21004 "parser_cocci_menhir.ml"
         ) = 
 # 179 "parser_cocci_menhir.mly"
                      ( m )
-# 20677 "parser_cocci_menhir.ml"
+# 21008 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20695,9 +21026,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_minus_start = 
-# 1788 "parser_cocci_menhir.mly"
+# 1801 "parser_cocci_menhir.mly"
                          ( [Ast0.wrap(Ast0.DECL(_1))] )
-# 20701 "parser_cocci_menhir.ml"
+# 21032 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20719,9 +21050,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_minus_start = 
-# 1789 "parser_cocci_menhir.mly"
+# 1802 "parser_cocci_menhir.mly"
                          ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
-# 20725 "parser_cocci_menhir.ml"
+# 21056 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20743,9 +21074,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_minus_start = 
-# 1790 "parser_cocci_menhir.mly"
+# 1803 "parser_cocci_menhir.mly"
                     ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
-# 20749 "parser_cocci_menhir.ml"
+# 21080 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20767,9 +21098,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_minus_start = 
-# 1792 "parser_cocci_menhir.mly"
+# 1805 "parser_cocci_menhir.mly"
     ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 )
-# 20773 "parser_cocci_menhir.ml"
+# 21104 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20796,14 +21127,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20800 "parser_cocci_menhir.ml"
+# 21131 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_ctype_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20807 "parser_cocci_menhir.ml"
+# 21138 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20830,14 +21161,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20834 "parser_cocci_menhir.ml"
+# 21165 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_eexpr_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20841 "parser_cocci_menhir.ml"
+# 21172 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20864,14 +21195,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20868 "parser_cocci_menhir.ml"
+# 21199 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_fun_after_dots_or_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20875 "parser_cocci_menhir.ml"
+# 21206 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20898,14 +21229,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20902 "parser_cocci_menhir.ml"
+# 21233 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_fun_start_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20909 "parser_cocci_menhir.ml"
+# 21240 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20932,14 +21263,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20936 "parser_cocci_menhir.ml"
+# 21267 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_rule_elem_statement_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20943 "parser_cocci_menhir.ml"
+# 21274 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20966,14 +21297,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 20970 "parser_cocci_menhir.ml"
+# 21301 "parser_cocci_menhir.ml"
         ) = Obj.magic a in
         let _startpos = _startpos_a_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_mzl_statement_ = 
-# 1983 "parser_cocci_menhir.mly"
+# 1996 "parser_cocci_menhir.mly"
                  ( (P.clt2mcode "|" a, b) )
-# 20977 "parser_cocci_menhir.ml"
+# 21308 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -20995,9 +21326,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_name_opt_decl = 
-# 868 "parser_cocci_menhir.mly"
+# 877 "parser_cocci_menhir.mly"
             ( _1 )
-# 21001 "parser_cocci_menhir.ml"
+# 21332 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21048,41 +21379,41 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21052 "parser_cocci_menhir.ml"
+# 21383 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21058 "parser_cocci_menhir.ml"
+# 21389 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21063 "parser_cocci_menhir.ml"
+# 21394 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let s : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21068 "parser_cocci_menhir.ml"
+# 21399 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21073 "parser_cocci_menhir.ml"
+# 21404 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_rp1_ in
         let _v : 'tv_name_opt_decl = 
-# 871 "parser_cocci_menhir.mly"
+# 880 "parser_cocci_menhir.mly"
         ( let fnptr =
          Ast0.wrap
            (Ast0.FunctionPointer
               (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
                P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
        Ast0.wrap(Ast0.Param(fnptr, None)) )
-# 21086 "parser_cocci_menhir.ml"
+# 21417 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21110,9 +21441,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_dots = 
-# 1903 "parser_cocci_menhir.mly"
+# 1916 "parser_cocci_menhir.mly"
                                      (_1@_2)
-# 21116 "parser_cocci_menhir.ml"
+# 21447 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21138,9 +21469,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_dots = 
-# 1904 "parser_cocci_menhir.mly"
+# 1917 "parser_cocci_menhir.mly"
                                 (_2)
-# 21144 "parser_cocci_menhir.ml"
+# 21475 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21168,9 +21499,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_dots = 
-# 1905 "parser_cocci_menhir.mly"
+# 1918 "parser_cocci_menhir.mly"
                                 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 21174 "parser_cocci_menhir.ml"
+# 21505 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21185,9 +21516,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_nest_after_exp = 
-# 1913 "parser_cocci_menhir.mly"
+# 1926 "parser_cocci_menhir.mly"
                                 ([])
-# 21191 "parser_cocci_menhir.ml"
+# 21522 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21215,9 +21546,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_exp = 
-# 1914 "parser_cocci_menhir.mly"
+# 1927 "parser_cocci_menhir.mly"
                                 (_1::_2)
-# 21221 "parser_cocci_menhir.ml"
+# 21552 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21232,9 +21563,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_nest_after_stm = 
-# 1908 "parser_cocci_menhir.mly"
+# 1921 "parser_cocci_menhir.mly"
                                 ([])
-# 21238 "parser_cocci_menhir.ml"
+# 21569 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21262,9 +21593,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_stm = 
-# 1909 "parser_cocci_menhir.mly"
+# 1922 "parser_cocci_menhir.mly"
                                 (_1::_2)
-# 21268 "parser_cocci_menhir.ml"
+# 21599 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21292,9 +21623,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_nest_after_stm = 
-# 1910 "parser_cocci_menhir.mly"
+# 1923 "parser_cocci_menhir.mly"
                                 (_1@_2)
-# 21298 "parser_cocci_menhir.ml"
+# 21629 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21325,22 +21656,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21329 "parser_cocci_menhir.ml"
+# 21660 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21335 "parser_cocci_menhir.ml"
+# 21666 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_nest_expressions = 
-# 1261 "parser_cocci_menhir.mly"
+# 1272 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
                              Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
                              P.clt2mcode "...>" c, None, false)) )
-# 21344 "parser_cocci_menhir.ml"
+# 21675 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21371,22 +21702,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21375 "parser_cocci_menhir.ml"
+# 21706 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21381 "parser_cocci_menhir.ml"
+# 21712 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_nest_expressions = 
-# 1265 "parser_cocci_menhir.mly"
+# 1276 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
                              Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
                              P.clt2mcode "...+>" c, None, true)) )
-# 21390 "parser_cocci_menhir.ml"
+# 21721 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21408,9 +21739,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_nest_start = 
-# 1900 "parser_cocci_menhir.mly"
+# 1913 "parser_cocci_menhir.mly"
                    ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 21414 "parser_cocci_menhir.ml"
+# 21745 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21432,11 +21763,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 173 "parser_cocci_menhir.mly"
       (unit)
-# 21436 "parser_cocci_menhir.ml"
+# 21767 "parser_cocci_menhir.ml"
         ) = 
-# 2050 "parser_cocci_menhir.mly"
+# 2063 "parser_cocci_menhir.mly"
                     ( () )
-# 21440 "parser_cocci_menhir.ml"
+# 21771 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21462,11 +21793,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 173 "parser_cocci_menhir.mly"
       (unit)
-# 21466 "parser_cocci_menhir.ml"
+# 21797 "parser_cocci_menhir.ml"
         ) = 
-# 2051 "parser_cocci_menhir.mly"
+# 2064 "parser_cocci_menhir.mly"
                     ( () )
-# 21470 "parser_cocci_menhir.ml"
+# 21801 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21488,11 +21819,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 173 "parser_cocci_menhir.mly"
       (unit)
-# 21492 "parser_cocci_menhir.ml"
+# 21823 "parser_cocci_menhir.ml"
         ) = 
-# 2052 "parser_cocci_menhir.mly"
+# 2065 "parser_cocci_menhir.mly"
                     ( () )
-# 21496 "parser_cocci_menhir.ml"
+# 21827 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21520,10 +21851,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_g_ in
         let _endpos = _endpos_dg_ in
         let _v : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ = 
-# 1429 "parser_cocci_menhir.mly"
+# 1442 "parser_cocci_menhir.mly"
   ( function dot_builder ->
       g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) )
-# 21527 "parser_cocci_menhir.ml"
+# 21858 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21544,14 +21875,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let x : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21548 "parser_cocci_menhir.ml"
+# 21879 "parser_cocci_menhir.ml"
         ) = Obj.magic x in
         let _startpos = _startpos_x_ in
         let _endpos = _endpos_x_ in
         let _v : 'tv_nonempty_list_TMul_ = 
 # 124 "standard.mly"
     ( [ x ] )
-# 21555 "parser_cocci_menhir.ml"
+# 21886 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21578,14 +21909,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let x : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 21582 "parser_cocci_menhir.ml"
+# 21913 "parser_cocci_menhir.ml"
         ) = Obj.magic x in
         let _startpos = _startpos_x_ in
         let _endpos = _endpos_xs_ in
         let _v : 'tv_nonempty_list_TMul_ = 
 # 126 "standard.mly"
     ( x :: xs )
-# 21589 "parser_cocci_menhir.ml"
+# 21920 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21611,13 +21942,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_not_ceq = 
-# 1602 "parser_cocci_menhir.mly"
+# 1615 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
           then failwith "constraints not allowed in a generated rule file");
           [i] )
-# 21621 "parser_cocci_menhir.ml"
+# 21952 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21651,13 +21982,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_not_ceq = 
-# 1608 "parser_cocci_menhir.mly"
+# 1621 "parser_cocci_menhir.mly"
   ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
           then failwith "constraints not allowed in a generated rule file");
           l )
-# 21661 "parser_cocci_menhir.ml"
+# 21992 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21679,9 +22010,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_ceq_ in
         let _endpos = _endpos_ceq_ in
         let _v : 'tv_not_ceq_or_sub = 
-# 1578 "parser_cocci_menhir.mly"
+# 1591 "parser_cocci_menhir.mly"
                   (Ast0.NotExpCstrt ceq)
-# 21685 "parser_cocci_menhir.ml"
+# 22016 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21703,9 +22034,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_not_ceq_or_sub = 
-# 1579 "parser_cocci_menhir.mly"
+# 1592 "parser_cocci_menhir.mly"
                   (Ast0.SubExpCstrt s)
-# 21709 "parser_cocci_menhir.ml"
+# 22040 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21731,14 +22062,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_not_eqe = 
-# 1583 "parser_cocci_menhir.mly"
+# 1596 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
           then failwith "constraints not allowed in a generated rule file");
           [Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))]
         )
-# 21742 "parser_cocci_menhir.ml"
+# 22073 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21772,7 +22103,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_not_eqe = 
-# 1590 "parser_cocci_menhir.mly"
+# 1603 "parser_cocci_menhir.mly"
   ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -21782,7 +22113,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))))
             l
         )
-# 21786 "parser_cocci_menhir.ml"
+# 22117 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21808,7 +22139,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_not_eqid = 
-# 1540 "parser_cocci_menhir.mly"
+# 1553 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -21822,7 +22153,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
                   (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in
               Ast.IdNegIdSet([],[i])
           | (None,i) -> Ast.IdNegIdSet([i],[])) )
-# 21826 "parser_cocci_menhir.ml"
+# 22157 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21856,7 +22187,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_not_eqid = 
-# 1554 "parser_cocci_menhir.mly"
+# 1567 "parser_cocci_menhir.mly"
   ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -21874,7 +22205,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               ([],[]) l in
           Ast.IdNegIdSet(str,meta)
         )
-# 21878 "parser_cocci_menhir.ml"
+# 22209 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21900,7 +22231,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_not_pos = 
-# 1646 "parser_cocci_menhir.mly"
+# 1659 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -21909,7 +22240,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             P.check_inherited_constraint i
               (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)) in
           [i] )
-# 21913 "parser_cocci_menhir.ml"
+# 22244 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21943,7 +22274,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_not_pos = 
-# 1655 "parser_cocci_menhir.mly"
+# 1668 "parser_cocci_menhir.mly"
   ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -21953,7 +22284,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               P.check_inherited_constraint i
                 (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)))
             l )
-# 21957 "parser_cocci_menhir.ml"
+# 22288 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21975,9 +22306,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_one_dec_decl_ = 
-# 1725 "parser_cocci_menhir.mly"
+# 1738 "parser_cocci_menhir.mly"
         ( _1 )
-# 21981 "parser_cocci_menhir.ml"
+# 22312 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -21998,12 +22329,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 69 "parser_cocci_menhir.mly"
        (Parse_aux.list_info)
-# 22002 "parser_cocci_menhir.ml"
+# 22333 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_one_dec_decl_ = 
-# 1727 "parser_cocci_menhir.mly"
+# 1740 "parser_cocci_menhir.mly"
     ( let (nm,lenname,pure,clt) = _1 in
     let nm = P.clt2mcode nm clt in
       let lenname =
@@ -22012,7 +22343,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
        | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
        | Ast.CstLen n -> Ast0.CstListLen n in
     Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
-# 22016 "parser_cocci_menhir.ml"
+# 22347 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22034,9 +22365,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_one_dec_name_opt_decl_ = 
-# 1725 "parser_cocci_menhir.mly"
+# 1738 "parser_cocci_menhir.mly"
         ( _1 )
-# 22040 "parser_cocci_menhir.ml"
+# 22371 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22057,12 +22388,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 69 "parser_cocci_menhir.mly"
        (Parse_aux.list_info)
-# 22061 "parser_cocci_menhir.ml"
+# 22392 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_one_dec_name_opt_decl_ = 
-# 1727 "parser_cocci_menhir.mly"
+# 1740 "parser_cocci_menhir.mly"
     ( let (nm,lenname,pure,clt) = _1 in
     let nm = P.clt2mcode nm clt in
       let lenname =
@@ -22071,7 +22402,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
        | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
        | Ast.CstLen n -> Ast0.CstListLen n in
     Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
-# 22075 "parser_cocci_menhir.ml"
+# 22406 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22097,15 +22428,43 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22101 "parser_cocci_menhir.ml"
+# 22432 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_pv_ in
         let _v : 'tv_one_decl_var = 
-# 1046 "parser_cocci_menhir.mly"
+# 1056 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) )
-# 22109 "parser_cocci_menhir.ml"
+# 22440 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = _1;
+          MenhirLib.EngineTypes.startp = _startpos__1_;
+          MenhirLib.EngineTypes.endp = _endpos__1_;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          } = _menhir_stack in
+        let _1 : (
+# 68 "parser_cocci_menhir.mly"
+       (Parse_aux.info)
+# 22461 "parser_cocci_menhir.ml"
+        ) = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__1_ in
+        let _v : 'tv_one_decl_var = 
+# 1057 "parser_cocci_menhir.mly"
+              ( P.meta_decl _1 )
+# 22468 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22136,7 +22495,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22140 "parser_cocci_menhir.ml"
+# 22499 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -22146,14 +22505,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22150 "parser_cocci_menhir.ml"
+# 22509 "parser_cocci_menhir.ml"
           
         in
         
-# 1048 "parser_cocci_menhir.mly"
+# 1059 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 22157 "parser_cocci_menhir.ml"
+# 22516 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22189,7 +22548,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22193 "parser_cocci_menhir.ml"
+# 22552 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -22201,14 +22560,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22205 "parser_cocci_menhir.ml"
+# 22564 "parser_cocci_menhir.ml"
           
         in
         
-# 1048 "parser_cocci_menhir.mly"
+# 1059 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 22212 "parser_cocci_menhir.ml"
+# 22571 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22230,9 +22589,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_f_ in
         let _v : 'tv_one_decl_var = 
-# 1050 "parser_cocci_menhir.mly"
+# 1061 "parser_cocci_menhir.mly"
                ( f )
-# 22236 "parser_cocci_menhir.ml"
+# 22595 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22273,13 +22632,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22277 "parser_cocci_menhir.ml"
+# 22636 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22283 "parser_cocci_menhir.ml"
+# 22642 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -22289,14 +22648,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22293 "parser_cocci_menhir.ml"
+# 22652 "parser_cocci_menhir.ml"
           
         in
         
-# 1052 "parser_cocci_menhir.mly"
+# 1063 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
-# 22300 "parser_cocci_menhir.ml"
+# 22659 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22342,13 +22701,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22346 "parser_cocci_menhir.ml"
+# 22705 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22352 "parser_cocci_menhir.ml"
+# 22711 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
@@ -22360,14 +22719,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22364 "parser_cocci_menhir.ml"
+# 22723 "parser_cocci_menhir.ml"
           
         in
         
-# 1052 "parser_cocci_menhir.mly"
+# 1063 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
-# 22371 "parser_cocci_menhir.ml"
+# 22730 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22398,7 +22757,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22402 "parser_cocci_menhir.ml"
+# 22761 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22408,22 +22767,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22412 "parser_cocci_menhir.ml"
+# 22771 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 22419 "parser_cocci_menhir.ml"
+# 22778 "parser_cocci_menhir.ml"
           
         in
         
-# 1057 "parser_cocci_menhir.mly"
+# 1068 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
        Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22427 "parser_cocci_menhir.ml"
+# 22786 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22459,7 +22818,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22463 "parser_cocci_menhir.ml"
+# 22822 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22471,22 +22830,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22475 "parser_cocci_menhir.ml"
+# 22834 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 22482 "parser_cocci_menhir.ml"
+# 22841 "parser_cocci_menhir.ml"
           
         in
         
-# 1057 "parser_cocci_menhir.mly"
+# 1068 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
        Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22490 "parser_cocci_menhir.ml"
+# 22849 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22522,7 +22881,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22526 "parser_cocci_menhir.ml"
+# 22885 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22533,7 +22892,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22537 "parser_cocci_menhir.ml"
+# 22896 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -22541,15 +22900,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22545 "parser_cocci_menhir.ml"
+# 22904 "parser_cocci_menhir.ml"
           
         in
         
-# 1057 "parser_cocci_menhir.mly"
+# 1068 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
        Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22553 "parser_cocci_menhir.ml"
+# 22912 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22590,7 +22949,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22594 "parser_cocci_menhir.ml"
+# 22953 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22603,7 +22962,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22607 "parser_cocci_menhir.ml"
+# 22966 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -22611,15 +22970,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22615 "parser_cocci_menhir.ml"
+# 22974 "parser_cocci_menhir.ml"
           
         in
         
-# 1057 "parser_cocci_menhir.mly"
+# 1068 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
        Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22623 "parser_cocci_menhir.ml"
+# 22982 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22660,13 +23019,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22664 "parser_cocci_menhir.ml"
+# 23023 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22670 "parser_cocci_menhir.ml"
+# 23029 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22676,24 +23035,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22680 "parser_cocci_menhir.ml"
+# 23039 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 22687 "parser_cocci_menhir.ml"
+# 23046 "parser_cocci_menhir.ml"
           
         in
         
-# 1062 "parser_cocci_menhir.mly"
+# 1073 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv)) )
-# 22697 "parser_cocci_menhir.ml"
+# 23056 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22739,13 +23098,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22743 "parser_cocci_menhir.ml"
+# 23102 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22749 "parser_cocci_menhir.ml"
+# 23108 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22757,24 +23116,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22761 "parser_cocci_menhir.ml"
+# 23120 "parser_cocci_menhir.ml"
           
         in
         let s =
           
 # 39 "standard.mly"
     ( None )
-# 22768 "parser_cocci_menhir.ml"
+# 23127 "parser_cocci_menhir.ml"
           
         in
         
-# 1062 "parser_cocci_menhir.mly"
+# 1073 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv)) )
-# 22778 "parser_cocci_menhir.ml"
+# 23137 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22820,13 +23179,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22824 "parser_cocci_menhir.ml"
+# 23183 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22830 "parser_cocci_menhir.ml"
+# 23189 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22837,7 +23196,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 22841 "parser_cocci_menhir.ml"
+# 23200 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -22845,17 +23204,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22849 "parser_cocci_menhir.ml"
+# 23208 "parser_cocci_menhir.ml"
           
         in
         
-# 1062 "parser_cocci_menhir.mly"
+# 1073 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv)) )
-# 22859 "parser_cocci_menhir.ml"
+# 23218 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -22906,13 +23265,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22910 "parser_cocci_menhir.ml"
+# 23269 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 22916 "parser_cocci_menhir.ml"
+# 23275 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -22925,7 +23284,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22929 "parser_cocci_menhir.ml"
+# 23288 "parser_cocci_menhir.ml"
           
         in
         let s =
@@ -22933,17 +23292,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 22937 "parser_cocci_menhir.ml"
+# 23296 "parser_cocci_menhir.ml"
           
         in
         
-# 1062 "parser_cocci_menhir.mly"
+# 1073 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
       !Data.add_type_name (P.id2name i);
       let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
       Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
                           P.clt2mcode ";" pv)) )
-# 22947 "parser_cocci_menhir.ml"
+# 23306 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23004,34 +23363,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23008 "parser_cocci_menhir.ml"
+# 23367 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23013 "parser_cocci_menhir.ml"
+# 23372 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23019 "parser_cocci_menhir.ml"
+# 23378 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23024 "parser_cocci_menhir.ml"
+# 23383 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23030 "parser_cocci_menhir.ml"
+# 23389 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23035 "parser_cocci_menhir.ml"
+# 23394 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
@@ -23040,11 +23399,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 23044 "parser_cocci_menhir.ml"
+# 23403 "parser_cocci_menhir.ml"
           
         in
         
-# 1072 "parser_cocci_menhir.mly"
+# 1083 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -23052,7 +23411,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
         Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 23056 "parser_cocci_menhir.ml"
+# 23415 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23118,34 +23477,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23122 "parser_cocci_menhir.ml"
+# 23481 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23127 "parser_cocci_menhir.ml"
+# 23486 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23133 "parser_cocci_menhir.ml"
+# 23492 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23138 "parser_cocci_menhir.ml"
+# 23497 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23144 "parser_cocci_menhir.ml"
+# 23503 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23149 "parser_cocci_menhir.ml"
+# 23508 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let x0 : 'tv_storage = Obj.magic x0 in
@@ -23156,11 +23515,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 23160 "parser_cocci_menhir.ml"
+# 23519 "parser_cocci_menhir.ml"
           
         in
         
-# 1072 "parser_cocci_menhir.mly"
+# 1083 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -23168,7 +23527,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
         Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 23172 "parser_cocci_menhir.ml"
+# 23531 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23209,27 +23568,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _5 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23213 "parser_cocci_menhir.ml"
+# 23572 "parser_cocci_menhir.ml"
         ) = Obj.magic _5 in
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23218 "parser_cocci_menhir.ml"
+# 23577 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23224 "parser_cocci_menhir.ml"
+# 23583 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_decl_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_one_decl_var = 
-# 1080 "parser_cocci_menhir.mly"
+# 1091 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
                                  P.clt2mcode ")" _4,P.clt2mcode ";" _5)) )
-# 23233 "parser_cocci_menhir.ml"
+# 23592 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23300,40 +23659,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23304 "parser_cocci_menhir.ml"
+# 23663 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23310 "parser_cocci_menhir.ml"
+# 23669 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23315 "parser_cocci_menhir.ml"
+# 23674 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23321 "parser_cocci_menhir.ml"
+# 23680 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23326 "parser_cocci_menhir.ml"
+# 23685 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23332 "parser_cocci_menhir.ml"
+# 23691 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23337 "parser_cocci_menhir.ml"
+# 23696 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
@@ -23342,11 +23701,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 23346 "parser_cocci_menhir.ml"
+# 23705 "parser_cocci_menhir.ml"
           
         in
         
-# 1086 "parser_cocci_menhir.mly"
+# 1097 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -23354,7 +23713,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
       Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
-# 23358 "parser_cocci_menhir.ml"
+# 23717 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23430,40 +23789,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23434 "parser_cocci_menhir.ml"
+# 23793 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let e : 'tv_initialize = Obj.magic e in
         let q : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23440 "parser_cocci_menhir.ml"
+# 23799 "parser_cocci_menhir.ml"
         ) = Obj.magic q in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23445 "parser_cocci_menhir.ml"
+# 23804 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23451 "parser_cocci_menhir.ml"
+# 23810 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23456 "parser_cocci_menhir.ml"
+# 23815 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23462 "parser_cocci_menhir.ml"
+# 23821 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 23467 "parser_cocci_menhir.ml"
+# 23826 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let x0 : 'tv_storage = Obj.magic x0 in
@@ -23474,11 +23833,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 23478 "parser_cocci_menhir.ml"
+# 23837 "parser_cocci_menhir.ml"
           
         in
         
-# 1086 "parser_cocci_menhir.mly"
+# 1097 "parser_cocci_menhir.mly"
       ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -23486,7 +23845,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
       Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
-# 23490 "parser_cocci_menhir.ml"
+# 23849 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23503,7 +23862,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_TLocal_ = 
 # 29 "standard.mly"
     ( None )
-# 23507 "parser_cocci_menhir.ml"
+# 23866 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23527,7 +23886,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_TLocal_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23531 "parser_cocci_menhir.ml"
+# 23890 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23544,7 +23903,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_TPosAny_ = 
 # 29 "standard.mly"
     ( None )
-# 23548 "parser_cocci_menhir.ml"
+# 23907 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23568,7 +23927,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_TPosAny_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23572 "parser_cocci_menhir.ml"
+# 23931 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23585,7 +23944,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_eexpr_ = 
 # 29 "standard.mly"
     ( None )
-# 23589 "parser_cocci_menhir.ml"
+# 23948 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23609,7 +23968,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_eexpr_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23613 "parser_cocci_menhir.ml"
+# 23972 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23626,7 +23985,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_not_ceq_or_sub_ = 
 # 29 "standard.mly"
     ( None )
-# 23630 "parser_cocci_menhir.ml"
+# 23989 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23650,7 +24009,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_not_ceq_or_sub_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23654 "parser_cocci_menhir.ml"
+# 24013 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23667,7 +24026,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_re_or_not_eqe_or_sub_ = 
 # 29 "standard.mly"
     ( None )
-# 23671 "parser_cocci_menhir.ml"
+# 24030 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23691,7 +24050,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_re_or_not_eqe_or_sub_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23695 "parser_cocci_menhir.ml"
+# 24054 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23708,7 +24067,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_re_or_not_eqid_ = 
 # 29 "standard.mly"
     ( None )
-# 23712 "parser_cocci_menhir.ml"
+# 24071 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23732,7 +24091,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_option_re_or_not_eqid_ = 
 # 31 "standard.mly"
     ( Some x )
-# 23736 "parser_cocci_menhir.ml"
+# 24095 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23747,9 +24106,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_plus_after_dots = 
-# 1850 "parser_cocci_menhir.mly"
+# 1863 "parser_cocci_menhir.mly"
                                                                          ([])
-# 23753 "parser_cocci_menhir.ml"
+# 24112 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23775,9 +24134,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_dots = 
-# 1851 "parser_cocci_menhir.mly"
+# 1864 "parser_cocci_menhir.mly"
                                                                          (_2)
-# 23781 "parser_cocci_menhir.ml"
+# 24140 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23805,9 +24164,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_dots = 
-# 1853 "parser_cocci_menhir.mly"
+# 1866 "parser_cocci_menhir.mly"
                      ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
-# 23811 "parser_cocci_menhir.ml"
+# 24170 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23835,9 +24194,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_dots = 
-# 1854 "parser_cocci_menhir.mly"
+# 1867 "parser_cocci_menhir.mly"
                                              ( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 23841 "parser_cocci_menhir.ml"
+# 24200 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23865,9 +24224,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_dots = 
-# 1856 "parser_cocci_menhir.mly"
+# 1869 "parser_cocci_menhir.mly"
                 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 23871 "parser_cocci_menhir.ml"
+# 24230 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23882,9 +24241,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_plus_after_exp = 
-# 1846 "parser_cocci_menhir.mly"
+# 1859 "parser_cocci_menhir.mly"
                                                                          ([])
-# 23888 "parser_cocci_menhir.ml"
+# 24247 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23912,9 +24271,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_exp = 
-# 1847 "parser_cocci_menhir.mly"
+# 1860 "parser_cocci_menhir.mly"
                                           ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 23918 "parser_cocci_menhir.ml"
+# 24277 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23929,9 +24288,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_plus_after_stm = 
-# 1859 "parser_cocci_menhir.mly"
+# 1872 "parser_cocci_menhir.mly"
                                                                          ([])
-# 23935 "parser_cocci_menhir.ml"
+# 24294 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23959,9 +24318,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_stm = 
-# 1860 "parser_cocci_menhir.mly"
+# 1873 "parser_cocci_menhir.mly"
                                           ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 23965 "parser_cocci_menhir.ml"
+# 24324 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -23989,9 +24348,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_stm = 
-# 1861 "parser_cocci_menhir.mly"
+# 1874 "parser_cocci_menhir.mly"
                                              ( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 23995 "parser_cocci_menhir.ml"
+# 24354 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24019,9 +24378,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_after_stm = 
-# 1863 "parser_cocci_menhir.mly"
+# 1876 "parser_cocci_menhir.mly"
                 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 24025 "parser_cocci_menhir.ml"
+# 24384 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24049,9 +24408,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_plus_body = 
-# 651 "parser_cocci_menhir.mly"
+# 660 "parser_cocci_menhir.mly"
     ( Top_level.top_level (f@b(*@ew*)) )
-# 24055 "parser_cocci_menhir.ml"
+# 24414 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24079,9 +24438,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_f_ in
         let _endpos = _endpos_b_ in
         let _v : 'tv_plus_exp_body = 
-# 665 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
     ( Top_level.top_level (f@[b](*@ew*)) )
-# 24085 "parser_cocci_menhir.ml"
+# 24444 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24109,11 +24468,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 148 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24113 "parser_cocci_menhir.ml"
+# 24472 "parser_cocci_menhir.ml"
         ) = 
 # 184 "parser_cocci_menhir.mly"
                                  ( _1 )
-# 24117 "parser_cocci_menhir.ml"
+# 24476 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24141,11 +24500,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 148 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24145 "parser_cocci_menhir.ml"
+# 24504 "parser_cocci_menhir.ml"
         ) = 
 # 184 "parser_cocci_menhir.mly"
                                                                     ( p )
-# 24149 "parser_cocci_menhir.ml"
+# 24508 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24173,11 +24532,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 148 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24177 "parser_cocci_menhir.ml"
+# 24536 "parser_cocci_menhir.ml"
         ) = 
 # 185 "parser_cocci_menhir.mly"
                         ( p )
-# 24181 "parser_cocci_menhir.ml"
+# 24540 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24205,11 +24564,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 145 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24209 "parser_cocci_menhir.ml"
+# 24568 "parser_cocci_menhir.ml"
         ) = 
 # 180 "parser_cocci_menhir.mly"
                          ( _1 )
-# 24213 "parser_cocci_menhir.ml"
+# 24572 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24237,11 +24596,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 145 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24241 "parser_cocci_menhir.ml"
+# 24600 "parser_cocci_menhir.ml"
         ) = 
 # 180 "parser_cocci_menhir.mly"
                                                         ( p )
-# 24245 "parser_cocci_menhir.ml"
+# 24604 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24269,11 +24628,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 145 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 24273 "parser_cocci_menhir.ml"
+# 24632 "parser_cocci_menhir.ml"
         ) = 
 # 181 "parser_cocci_menhir.mly"
                     ( p )
-# 24277 "parser_cocci_menhir.ml"
+# 24636 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24295,9 +24654,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_plus_start = 
-# 1835 "parser_cocci_menhir.mly"
+# 1848 "parser_cocci_menhir.mly"
                           ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
-# 24301 "parser_cocci_menhir.ml"
+# 24660 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24319,9 +24678,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_plus_start = 
-# 1836 "parser_cocci_menhir.mly"
+# 1849 "parser_cocci_menhir.mly"
                      ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
-# 24325 "parser_cocci_menhir.ml"
+# 24684 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24349,9 +24708,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_start = 
-# 1838 "parser_cocci_menhir.mly"
+# 1851 "parser_cocci_menhir.mly"
                                           ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 24355 "parser_cocci_menhir.ml"
+# 24714 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24379,9 +24738,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_start = 
-# 1840 "parser_cocci_menhir.mly"
+# 1853 "parser_cocci_menhir.mly"
                      ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
-# 24385 "parser_cocci_menhir.ml"
+# 24744 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24409,9 +24768,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_start = 
-# 1841 "parser_cocci_menhir.mly"
+# 1854 "parser_cocci_menhir.mly"
                                              ( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 24415 "parser_cocci_menhir.ml"
+# 24774 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24439,9 +24798,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_plus_start = 
-# 1843 "parser_cocci_menhir.mly"
+# 1856 "parser_cocci_menhir.mly"
                 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 24445 "parser_cocci_menhir.ml"
+# 24804 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24462,14 +24821,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 24466 "parser_cocci_menhir.ml"
+# 24825 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pnrule = 
 # 235 "parser_cocci_menhir.mly"
                    ( Ast.Dep      _1 )
-# 24473 "parser_cocci_menhir.ml"
+# 24832 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24494,14 +24853,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 24498 "parser_cocci_menhir.ml"
+# 24857 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_pnrule = 
 # 236 "parser_cocci_menhir.mly"
                    ( Ast.AntiDep  _2 )
-# 24505 "parser_cocci_menhir.ml"
+# 24864 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24526,14 +24885,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 24530 "parser_cocci_menhir.ml"
+# 24889 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_pnrule = 
 # 237 "parser_cocci_menhir.mly"
                    ( Ast.EverDep  _2 )
-# 24537 "parser_cocci_menhir.ml"
+# 24896 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24558,14 +24917,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 24562 "parser_cocci_menhir.ml"
+# 24921 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_pnrule = 
 # 238 "parser_cocci_menhir.mly"
                    ( Ast.NeverDep _2 )
-# 24569 "parser_cocci_menhir.ml"
+# 24928 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24597,7 +24956,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pnrule = 
 # 239 "parser_cocci_menhir.mly"
                    ( _2 )
-# 24601 "parser_cocci_menhir.ml"
+# 24960 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24619,9 +24978,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1362 "parser_cocci_menhir.mly"
+# 1375 "parser_cocci_menhir.mly"
                                                  ( _1 )
-# 24625 "parser_cocci_menhir.ml"
+# 24984 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24657,22 +25016,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24661 "parser_cocci_menhir.ml"
+# 25020 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24667 "parser_cocci_menhir.ml"
+# 25026 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1364 "parser_cocci_menhir.mly"
+# 1377 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
                                       P.clt2mcode "]" _4)) )
-# 24676 "parser_cocci_menhir.ml"
+# 25035 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24704,15 +25063,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24708 "parser_cocci_menhir.ml"
+# 25067 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1367 "parser_cocci_menhir.mly"
+# 1380 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 24716 "parser_cocci_menhir.ml"
+# 25075 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24744,16 +25103,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 107 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24748 "parser_cocci_menhir.ml"
+# 25107 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1369 "parser_cocci_menhir.mly"
+# 1382 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
                                     _3)) )
-# 24757 "parser_cocci_menhir.ml"
+# 25116 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24779,15 +25138,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24783 "parser_cocci_menhir.ml"
+# 25142 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1372 "parser_cocci_menhir.mly"
+# 1385 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 24791 "parser_cocci_menhir.ml"
+# 25150 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24813,15 +25172,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24817 "parser_cocci_menhir.ml"
+# 25176 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1374 "parser_cocci_menhir.mly"
+# 1387 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 24825 "parser_cocci_menhir.ml"
+# 25184 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24857,23 +25216,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24861 "parser_cocci_menhir.ml"
+# 25220 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24867 "parser_cocci_menhir.ml"
+# 25226 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_dot_expressions_ = 
-# 1376 "parser_cocci_menhir.mly"
+# 1389 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
                              _3,
                              P.clt2mcode ")" _4)) )
-# 24877 "parser_cocci_menhir.ml"
+# 25236 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24895,9 +25254,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1362 "parser_cocci_menhir.mly"
+# 1375 "parser_cocci_menhir.mly"
                                                  ( _1 )
-# 24901 "parser_cocci_menhir.ml"
+# 25260 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24933,22 +25292,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24937 "parser_cocci_menhir.ml"
+# 25296 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24943 "parser_cocci_menhir.ml"
+# 25302 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1364 "parser_cocci_menhir.mly"
+# 1377 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
                                       P.clt2mcode "]" _4)) )
-# 24952 "parser_cocci_menhir.ml"
+# 25311 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -24980,15 +25339,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 24984 "parser_cocci_menhir.ml"
+# 25343 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1367 "parser_cocci_menhir.mly"
+# 1380 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 24992 "parser_cocci_menhir.ml"
+# 25351 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25020,16 +25379,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 107 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25024 "parser_cocci_menhir.ml"
+# 25383 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1369 "parser_cocci_menhir.mly"
+# 1382 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
                                     _3)) )
-# 25033 "parser_cocci_menhir.ml"
+# 25392 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25055,15 +25414,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25059 "parser_cocci_menhir.ml"
+# 25418 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1372 "parser_cocci_menhir.mly"
+# 1385 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 25067 "parser_cocci_menhir.ml"
+# 25426 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25089,15 +25448,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25093 "parser_cocci_menhir.ml"
+# 25452 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1374 "parser_cocci_menhir.mly"
+# 1387 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 25101 "parser_cocci_menhir.ml"
+# 25460 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25133,23 +25492,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25137 "parser_cocci_menhir.ml"
+# 25496 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25143 "parser_cocci_menhir.ml"
+# 25502 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_invalid_ = 
-# 1376 "parser_cocci_menhir.mly"
+# 1389 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
                              _3,
                              P.clt2mcode ")" _4)) )
-# 25153 "parser_cocci_menhir.ml"
+# 25512 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25171,9 +25530,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1362 "parser_cocci_menhir.mly"
+# 1375 "parser_cocci_menhir.mly"
                                                  ( _1 )
-# 25177 "parser_cocci_menhir.ml"
+# 25536 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25209,22 +25568,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25213 "parser_cocci_menhir.ml"
+# 25572 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25219 "parser_cocci_menhir.ml"
+# 25578 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1364 "parser_cocci_menhir.mly"
+# 1377 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
                                       P.clt2mcode "]" _4)) )
-# 25228 "parser_cocci_menhir.ml"
+# 25587 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25256,15 +25615,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25260 "parser_cocci_menhir.ml"
+# 25619 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1367 "parser_cocci_menhir.mly"
+# 1380 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 25268 "parser_cocci_menhir.ml"
+# 25627 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25296,16 +25655,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 107 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25300 "parser_cocci_menhir.ml"
+# 25659 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1369 "parser_cocci_menhir.mly"
+# 1382 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
                                     _3)) )
-# 25309 "parser_cocci_menhir.ml"
+# 25668 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25331,15 +25690,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25335 "parser_cocci_menhir.ml"
+# 25694 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1372 "parser_cocci_menhir.mly"
+# 1385 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 25343 "parser_cocci_menhir.ml"
+# 25702 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25365,15 +25724,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25369 "parser_cocci_menhir.ml"
+# 25728 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1374 "parser_cocci_menhir.mly"
+# 1387 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 25377 "parser_cocci_menhir.ml"
+# 25736 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25409,23 +25768,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25413 "parser_cocci_menhir.ml"
+# 25772 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25419 "parser_cocci_menhir.ml"
+# 25778 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_eexpr_nest_expressions_ = 
-# 1376 "parser_cocci_menhir.mly"
+# 1389 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
                              _3,
                              P.clt2mcode ")" _4)) )
-# 25429 "parser_cocci_menhir.ml"
+# 25788 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25447,9 +25806,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1362 "parser_cocci_menhir.mly"
+# 1375 "parser_cocci_menhir.mly"
                                                  ( _1 )
-# 25453 "parser_cocci_menhir.ml"
+# 25812 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25485,22 +25844,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25489 "parser_cocci_menhir.ml"
+# 25848 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 105 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25495 "parser_cocci_menhir.ml"
+# 25854 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1364 "parser_cocci_menhir.mly"
+# 1377 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
                                       P.clt2mcode "]" _4)) )
-# 25504 "parser_cocci_menhir.ml"
+# 25863 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25532,15 +25891,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25536 "parser_cocci_menhir.ml"
+# 25895 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1367 "parser_cocci_menhir.mly"
+# 1380 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 25544 "parser_cocci_menhir.ml"
+# 25903 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25572,16 +25931,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 107 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25576 "parser_cocci_menhir.ml"
+# 25935 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1369 "parser_cocci_menhir.mly"
+# 1382 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
                                     _3)) )
-# 25585 "parser_cocci_menhir.ml"
+# 25944 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25607,15 +25966,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25611 "parser_cocci_menhir.ml"
+# 25970 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1372 "parser_cocci_menhir.mly"
+# 1385 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 25619 "parser_cocci_menhir.ml"
+# 25978 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25641,15 +26000,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25645 "parser_cocci_menhir.ml"
+# 26004 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1374 "parser_cocci_menhir.mly"
+# 1387 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 25653 "parser_cocci_menhir.ml"
+# 26012 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25685,23 +26044,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25689 "parser_cocci_menhir.ml"
+# 26048 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 25695 "parser_cocci_menhir.ml"
+# 26054 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_postfix_expr_expr_invalid_ = 
-# 1376 "parser_cocci_menhir.mly"
+# 1389 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
                              _3,
                              P.clt2mcode ")" _4)) )
-# 25705 "parser_cocci_menhir.ml"
+# 26064 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25723,9 +26082,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1381 "parser_cocci_menhir.mly"
+# 1394 "parser_cocci_menhir.mly"
                 ( Ast0.wrap(Ast0.Ident(_1)) )
-# 25729 "parser_cocci_menhir.ml"
+# 26088 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25746,15 +26105,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 25750 "parser_cocci_menhir.ml"
+# 26109 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1383 "parser_cocci_menhir.mly"
+# 1396 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 25758 "parser_cocci_menhir.ml"
+# 26117 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25775,15 +26134,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 25779 "parser_cocci_menhir.ml"
+# 26138 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1386 "parser_cocci_menhir.mly"
+# 1399 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 25787 "parser_cocci_menhir.ml"
+# 26146 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25804,15 +26163,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 25808 "parser_cocci_menhir.ml"
+# 26167 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1389 "parser_cocci_menhir.mly"
+# 1402 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 25816 "parser_cocci_menhir.ml"
+# 26175 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25833,15 +26192,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 25837 "parser_cocci_menhir.ml"
+# 26196 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1392 "parser_cocci_menhir.mly"
+# 1405 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 25845 "parser_cocci_menhir.ml"
+# 26204 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25862,16 +26221,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 25866 "parser_cocci_menhir.ml"
+# 26225 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1395 "parser_cocci_menhir.mly"
+# 1408 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 25875 "parser_cocci_menhir.ml"
+# 26234 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25892,15 +26251,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 66 "parser_cocci_menhir.mly"
        (Parse_aux.expinfo)
-# 25896 "parser_cocci_menhir.ml"
+# 26255 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1399 "parser_cocci_menhir.mly"
+# 1412 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,clt) = _1 in
      Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 25904 "parser_cocci_menhir.ml"
+# 26263 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25921,16 +26280,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 25925 "parser_cocci_menhir.ml"
+# 26284 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1402 "parser_cocci_menhir.mly"
+# 1415 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 25934 "parser_cocci_menhir.ml"
+# 26293 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25951,16 +26310,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 25955 "parser_cocci_menhir.ml"
+# 26314 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1406 "parser_cocci_menhir.mly"
+# 1419 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 25964 "parser_cocci_menhir.ml"
+# 26323 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -25981,16 +26340,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 25985 "parser_cocci_menhir.ml"
+# 26344 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1410 "parser_cocci_menhir.mly"
+# 1423 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 25994 "parser_cocci_menhir.ml"
+# 26353 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26021,21 +26380,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26025 "parser_cocci_menhir.ml"
+# 26384 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26031 "parser_cocci_menhir.ml"
+# 26390 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1414 "parser_cocci_menhir.mly"
+# 1427 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
                            P.clt2mcode ")" _3)) )
-# 26039 "parser_cocci_menhir.ml"
+# 26398 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26066,23 +26425,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26070 "parser_cocci_menhir.ml"
+# 26429 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26076 "parser_cocci_menhir.ml"
+# 26435 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1417 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
      ( let (mids,code) = _2 in
        Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
                               code, mids,
                               P.clt2mcode ")" _3)) )
-# 26086 "parser_cocci_menhir.ml"
+# 26445 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26104,9 +26463,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_dot_expressions_ = 
-# 1421 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
                  ( _1 )
-# 26110 "parser_cocci_menhir.ml"
+# 26469 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26128,9 +26487,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1381 "parser_cocci_menhir.mly"
+# 1394 "parser_cocci_menhir.mly"
                 ( Ast0.wrap(Ast0.Ident(_1)) )
-# 26134 "parser_cocci_menhir.ml"
+# 26493 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26151,15 +26510,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26155 "parser_cocci_menhir.ml"
+# 26514 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1383 "parser_cocci_menhir.mly"
+# 1396 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 26163 "parser_cocci_menhir.ml"
+# 26522 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26180,15 +26539,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26184 "parser_cocci_menhir.ml"
+# 26543 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1386 "parser_cocci_menhir.mly"
+# 1399 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 26192 "parser_cocci_menhir.ml"
+# 26551 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26209,15 +26568,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26213 "parser_cocci_menhir.ml"
+# 26572 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1389 "parser_cocci_menhir.mly"
+# 1402 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 26221 "parser_cocci_menhir.ml"
+# 26580 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26238,15 +26597,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26242 "parser_cocci_menhir.ml"
+# 26601 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1392 "parser_cocci_menhir.mly"
+# 1405 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 26250 "parser_cocci_menhir.ml"
+# 26609 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26267,16 +26626,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26271 "parser_cocci_menhir.ml"
+# 26630 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1395 "parser_cocci_menhir.mly"
+# 1408 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 26280 "parser_cocci_menhir.ml"
+# 26639 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26297,15 +26656,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 66 "parser_cocci_menhir.mly"
        (Parse_aux.expinfo)
-# 26301 "parser_cocci_menhir.ml"
+# 26660 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1399 "parser_cocci_menhir.mly"
+# 1412 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,clt) = _1 in
      Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 26309 "parser_cocci_menhir.ml"
+# 26668 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26326,16 +26685,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26330 "parser_cocci_menhir.ml"
+# 26689 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1402 "parser_cocci_menhir.mly"
+# 1415 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 26339 "parser_cocci_menhir.ml"
+# 26698 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26356,16 +26715,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26360 "parser_cocci_menhir.ml"
+# 26719 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1406 "parser_cocci_menhir.mly"
+# 1419 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 26369 "parser_cocci_menhir.ml"
+# 26728 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26386,16 +26745,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26390 "parser_cocci_menhir.ml"
+# 26749 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1410 "parser_cocci_menhir.mly"
+# 1423 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 26399 "parser_cocci_menhir.ml"
+# 26758 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26426,21 +26785,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26430 "parser_cocci_menhir.ml"
+# 26789 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26436 "parser_cocci_menhir.ml"
+# 26795 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1414 "parser_cocci_menhir.mly"
+# 1427 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
                            P.clt2mcode ")" _3)) )
-# 26444 "parser_cocci_menhir.ml"
+# 26803 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26471,23 +26830,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26475 "parser_cocci_menhir.ml"
+# 26834 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26481 "parser_cocci_menhir.ml"
+# 26840 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1417 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
      ( let (mids,code) = _2 in
        Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
                               code, mids,
                               P.clt2mcode ")" _3)) )
-# 26491 "parser_cocci_menhir.ml"
+# 26850 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26509,9 +26868,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_invalid_ = 
-# 1421 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
                  ( _1 )
-# 26515 "parser_cocci_menhir.ml"
+# 26874 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26533,9 +26892,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1381 "parser_cocci_menhir.mly"
+# 1394 "parser_cocci_menhir.mly"
                 ( Ast0.wrap(Ast0.Ident(_1)) )
-# 26539 "parser_cocci_menhir.ml"
+# 26898 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26556,15 +26915,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26560 "parser_cocci_menhir.ml"
+# 26919 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1383 "parser_cocci_menhir.mly"
+# 1396 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 26568 "parser_cocci_menhir.ml"
+# 26927 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26585,15 +26944,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26589 "parser_cocci_menhir.ml"
+# 26948 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1386 "parser_cocci_menhir.mly"
+# 1399 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 26597 "parser_cocci_menhir.ml"
+# 26956 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26614,15 +26973,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26618 "parser_cocci_menhir.ml"
+# 26977 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1389 "parser_cocci_menhir.mly"
+# 1402 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 26626 "parser_cocci_menhir.ml"
+# 26985 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26643,15 +27002,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26647 "parser_cocci_menhir.ml"
+# 27006 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1392 "parser_cocci_menhir.mly"
+# 1405 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 26655 "parser_cocci_menhir.ml"
+# 27014 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26672,16 +27031,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26676 "parser_cocci_menhir.ml"
+# 27035 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1395 "parser_cocci_menhir.mly"
+# 1408 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 26685 "parser_cocci_menhir.ml"
+# 27044 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26702,15 +27061,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 66 "parser_cocci_menhir.mly"
        (Parse_aux.expinfo)
-# 26706 "parser_cocci_menhir.ml"
+# 27065 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1399 "parser_cocci_menhir.mly"
+# 1412 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,clt) = _1 in
      Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 26714 "parser_cocci_menhir.ml"
+# 27073 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26731,16 +27090,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26735 "parser_cocci_menhir.ml"
+# 27094 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1402 "parser_cocci_menhir.mly"
+# 1415 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 26744 "parser_cocci_menhir.ml"
+# 27103 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26761,16 +27120,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26765 "parser_cocci_menhir.ml"
+# 27124 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1406 "parser_cocci_menhir.mly"
+# 1419 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 26774 "parser_cocci_menhir.ml"
+# 27133 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26791,16 +27150,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 26795 "parser_cocci_menhir.ml"
+# 27154 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1410 "parser_cocci_menhir.mly"
+# 1423 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 26804 "parser_cocci_menhir.ml"
+# 27163 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26831,21 +27190,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26835 "parser_cocci_menhir.ml"
+# 27194 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26841 "parser_cocci_menhir.ml"
+# 27200 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1414 "parser_cocci_menhir.mly"
+# 1427 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
                            P.clt2mcode ")" _3)) )
-# 26849 "parser_cocci_menhir.ml"
+# 27208 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26876,23 +27235,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26880 "parser_cocci_menhir.ml"
+# 27239 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 26886 "parser_cocci_menhir.ml"
+# 27245 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1417 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
      ( let (mids,code) = _2 in
        Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
                               code, mids,
                               P.clt2mcode ")" _3)) )
-# 26896 "parser_cocci_menhir.ml"
+# 27255 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26914,9 +27273,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_eexpr_nest_expressions_ = 
-# 1421 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
                  ( _1 )
-# 26920 "parser_cocci_menhir.ml"
+# 27279 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26938,9 +27297,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1381 "parser_cocci_menhir.mly"
+# 1394 "parser_cocci_menhir.mly"
                 ( Ast0.wrap(Ast0.Ident(_1)) )
-# 26944 "parser_cocci_menhir.ml"
+# 27303 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26961,15 +27320,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26965 "parser_cocci_menhir.ml"
+# 27324 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1383 "parser_cocci_menhir.mly"
+# 1396 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 26973 "parser_cocci_menhir.ml"
+# 27332 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -26990,15 +27349,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 26994 "parser_cocci_menhir.ml"
+# 27353 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1386 "parser_cocci_menhir.mly"
+# 1399 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 27002 "parser_cocci_menhir.ml"
+# 27361 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27019,15 +27378,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 27023 "parser_cocci_menhir.ml"
+# 27382 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1389 "parser_cocci_menhir.mly"
+# 1402 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 27031 "parser_cocci_menhir.ml"
+# 27390 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27048,15 +27407,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 27052 "parser_cocci_menhir.ml"
+# 27411 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1392 "parser_cocci_menhir.mly"
+# 1405 "parser_cocci_menhir.mly"
      ( let (x,clt) = _1 in
      Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 27060 "parser_cocci_menhir.ml"
+# 27419 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27077,16 +27436,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 27081 "parser_cocci_menhir.ml"
+# 27440 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1395 "parser_cocci_menhir.mly"
+# 1408 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 27090 "parser_cocci_menhir.ml"
+# 27449 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27107,15 +27466,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 66 "parser_cocci_menhir.mly"
        (Parse_aux.expinfo)
-# 27111 "parser_cocci_menhir.ml"
+# 27470 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1399 "parser_cocci_menhir.mly"
+# 1412 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,clt) = _1 in
      Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 27119 "parser_cocci_menhir.ml"
+# 27478 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27136,16 +27495,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 27140 "parser_cocci_menhir.ml"
+# 27499 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1402 "parser_cocci_menhir.mly"
+# 1415 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 27149 "parser_cocci_menhir.ml"
+# 27508 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27166,16 +27525,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 27170 "parser_cocci_menhir.ml"
+# 27529 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1406 "parser_cocci_menhir.mly"
+# 1419 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 27179 "parser_cocci_menhir.ml"
+# 27538 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27196,16 +27555,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 70 "parser_cocci_menhir.mly"
        (Parse_aux.typed_expinfo)
-# 27200 "parser_cocci_menhir.ml"
+# 27559 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1410 "parser_cocci_menhir.mly"
+# 1423 "parser_cocci_menhir.mly"
      ( let (nm,constraints,pure,ty,clt) = _1 in
      Ast0.wrap
        (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 27209 "parser_cocci_menhir.ml"
+# 27568 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27236,21 +27595,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 27240 "parser_cocci_menhir.ml"
+# 27599 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 27246 "parser_cocci_menhir.ml"
+# 27605 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1414 "parser_cocci_menhir.mly"
+# 1427 "parser_cocci_menhir.mly"
      ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
                            P.clt2mcode ")" _3)) )
-# 27254 "parser_cocci_menhir.ml"
+# 27613 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27281,23 +27640,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 27285 "parser_cocci_menhir.ml"
+# 27644 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 27291 "parser_cocci_menhir.ml"
+# 27650 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1417 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
      ( let (mids,code) = _2 in
        Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
                               code, mids,
                               P.clt2mcode ")" _3)) )
-# 27301 "parser_cocci_menhir.ml"
+# 27660 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27319,9 +27678,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_primary_expr_expr_invalid_ = 
-# 1421 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
                  ( _1 )
-# 27325 "parser_cocci_menhir.ml"
+# 27684 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27343,7 +27702,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pure = 
 # 195 "parser_cocci_menhir.mly"
                  ( Ast0.Pure )
-# 27347 "parser_cocci_menhir.ml"
+# 27706 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27365,7 +27724,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pure = 
 # 196 "parser_cocci_menhir.mly"
                  ( Ast0.Context )
-# 27369 "parser_cocci_menhir.ml"
+# 27728 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27391,7 +27750,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pure = 
 # 197 "parser_cocci_menhir.mly"
                  ( Ast0.PureContext )
-# 27395 "parser_cocci_menhir.ml"
+# 27754 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27417,7 +27776,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pure = 
 # 198 "parser_cocci_menhir.mly"
                  ( Ast0.PureContext )
-# 27421 "parser_cocci_menhir.ml"
+# 27780 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27434,7 +27793,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_pure = 
 # 199 "parser_cocci_menhir.mly"
                  ( Ast0.Impure )
-# 27438 "parser_cocci_menhir.ml"
+# 27797 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27455,14 +27814,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 27459 "parser_cocci_menhir.ml"
+# 27818 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident = 
-# 1435 "parser_cocci_menhir.mly"
+# 1448 "parser_cocci_menhir.mly"
             ( _1 )
-# 27466 "parser_cocci_menhir.ml"
+# 27825 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27482,9 +27841,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1438 "parser_cocci_menhir.mly"
+# 1451 "parser_cocci_menhir.mly"
                  ( "identifier" )
-# 27488 "parser_cocci_menhir.ml"
+# 27847 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27504,9 +27863,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1439 "parser_cocci_menhir.mly"
+# 1452 "parser_cocci_menhir.mly"
                  ( "expression" )
-# 27510 "parser_cocci_menhir.ml"
+# 27869 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27526,9 +27885,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1440 "parser_cocci_menhir.mly"
+# 1453 "parser_cocci_menhir.mly"
                 ( "statement" )
-# 27532 "parser_cocci_menhir.ml"
+# 27891 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27548,9 +27907,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1441 "parser_cocci_menhir.mly"
+# 1454 "parser_cocci_menhir.mly"
                ( "function" )
-# 27554 "parser_cocci_menhir.ml"
+# 27913 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27570,9 +27929,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1442 "parser_cocci_menhir.mly"
+# 1455 "parser_cocci_menhir.mly"
             ( "local" )
-# 27576 "parser_cocci_menhir.ml"
+# 27935 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27592,9 +27951,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1443 "parser_cocci_menhir.mly"
+# 1456 "parser_cocci_menhir.mly"
            ( "type" )
-# 27598 "parser_cocci_menhir.ml"
+# 27957 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27614,9 +27973,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1444 "parser_cocci_menhir.mly"
+# 1457 "parser_cocci_menhir.mly"
                 ( "parameter" )
-# 27620 "parser_cocci_menhir.ml"
+# 27979 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27636,9 +27995,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1445 "parser_cocci_menhir.mly"
+# 1458 "parser_cocci_menhir.mly"
                    ( "idexpression" )
-# 27642 "parser_cocci_menhir.ml"
+# 28001 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27658,9 +28017,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1446 "parser_cocci_menhir.mly"
+# 1459 "parser_cocci_menhir.mly"
                   ( "initialiser" )
-# 27664 "parser_cocci_menhir.ml"
+# 28023 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27680,9 +28039,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1447 "parser_cocci_menhir.mly"
+# 1460 "parser_cocci_menhir.mly"
            ( "list" )
-# 27686 "parser_cocci_menhir.ml"
+# 28045 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27702,9 +28061,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1448 "parser_cocci_menhir.mly"
+# 1461 "parser_cocci_menhir.mly"
             ( "fresh" )
-# 27708 "parser_cocci_menhir.ml"
+# 28067 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27724,9 +28083,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1449 "parser_cocci_menhir.mly"
+# 1462 "parser_cocci_menhir.mly"
                ( "constant" )
-# 27730 "parser_cocci_menhir.ml"
+# 28089 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27746,9 +28105,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1450 "parser_cocci_menhir.mly"
+# 1463 "parser_cocci_menhir.mly"
             ( "error" )
-# 27752 "parser_cocci_menhir.ml"
+# 28111 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27768,9 +28127,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1451 "parser_cocci_menhir.mly"
+# 1464 "parser_cocci_menhir.mly"
             ( "words" )
-# 27774 "parser_cocci_menhir.ml"
+# 28133 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27790,9 +28149,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1452 "parser_cocci_menhir.mly"
+# 1465 "parser_cocci_menhir.mly"
            ( "pure" )
-# 27796 "parser_cocci_menhir.ml"
+# 28155 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27812,9 +28171,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1453 "parser_cocci_menhir.mly"
+# 1466 "parser_cocci_menhir.mly"
               ( "context" )
-# 27818 "parser_cocci_menhir.ml"
+# 28177 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27834,9 +28193,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1454 "parser_cocci_menhir.mly"
+# 1467 "parser_cocci_menhir.mly"
                 ( "generated" )
-# 27840 "parser_cocci_menhir.ml"
+# 28199 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27856,9 +28215,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1455 "parser_cocci_menhir.mly"
+# 1468 "parser_cocci_menhir.mly"
               ( "typedef" )
-# 27862 "parser_cocci_menhir.ml"
+# 28221 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27878,9 +28237,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1456 "parser_cocci_menhir.mly"
+# 1469 "parser_cocci_menhir.mly"
                ( "declarer" )
-# 27884 "parser_cocci_menhir.ml"
+# 28243 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27900,9 +28259,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1457 "parser_cocci_menhir.mly"
+# 1470 "parser_cocci_menhir.mly"
                ( "iterator" )
-# 27906 "parser_cocci_menhir.ml"
+# 28265 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27922,9 +28281,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1458 "parser_cocci_menhir.mly"
+# 1471 "parser_cocci_menhir.mly"
            ( "name" )
-# 27928 "parser_cocci_menhir.ml"
+# 28287 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27944,9 +28303,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_kwd = 
-# 1459 "parser_cocci_menhir.mly"
+# 1472 "parser_cocci_menhir.mly"
                ( "position" )
-# 27950 "parser_cocci_menhir.ml"
+# 28309 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27968,9 +28327,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_or_meta_ident = 
-# 1466 "parser_cocci_menhir.mly"
+# 1479 "parser_cocci_menhir.mly"
                                  ( (None,P.id2name _1) )
-# 27974 "parser_cocci_menhir.ml"
+# 28333 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -27992,9 +28351,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_or_meta_ident = 
-# 1467 "parser_cocci_menhir.mly"
+# 1480 "parser_cocci_menhir.mly"
                                  ( (None,_1) )
-# 27998 "parser_cocci_menhir.ml"
+# 28357 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28016,9 +28375,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_or_meta_ident = 
-# 1468 "parser_cocci_menhir.mly"
+# 1481 "parser_cocci_menhir.mly"
                                  ( _1 )
-# 28022 "parser_cocci_menhir.ml"
+# 28381 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28046,13 +28405,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_optc_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ = 
-# 1494 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
     (
       match optc with
          None   -> (i, Ast0.NoConstraint)
        | Some c -> (i, c)
     )
-# 28056 "parser_cocci_menhir.ml"
+# 28415 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28080,13 +28439,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_optc_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ = 
-# 1494 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
     (
       match optc with
          None   -> (i, Ast0.NoConstraint)
        | Some c -> (i, c)
     )
-# 28090 "parser_cocci_menhir.ml"
+# 28449 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28114,13 +28473,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ = 
-# 1512 "parser_cocci_menhir.mly"
+# 1525 "parser_cocci_menhir.mly"
     (
       match c with
          None -> (i, Ast.IdNoConstraint)
        | Some constraint_ -> (i,constraint_)
     )
-# 28124 "parser_cocci_menhir.ml"
+# 28483 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28148,14 +28507,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = 
-# 1502 "parser_cocci_menhir.mly"
+# 1515 "parser_cocci_menhir.mly"
     (
       Common.Left
         (match c with
          None -> (i, Ast.IdNoConstraint)
        | Some constraint_ -> (i,constraint_))
     )
-# 28159 "parser_cocci_menhir.ml"
+# 28518 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28185,9 +28544,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = 
-# 1508 "parser_cocci_menhir.mly"
+# 1521 "parser_cocci_menhir.mly"
                            ( Common.Right (P.id2name _3) )
-# 28191 "parser_cocci_menhir.ml"
+# 28550 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28209,9 +28568,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_seed = 
-# 1471 "parser_cocci_menhir.mly"
+# 1484 "parser_cocci_menhir.mly"
                                 ( (_1,Ast.NoVal) )
-# 28215 "parser_cocci_menhir.ml"
+# 28574 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28243,11 +28602,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_seed = 
-# 1474 "parser_cocci_menhir.mly"
+# 1487 "parser_cocci_menhir.mly"
   ( match _3 with
           [Ast.SeedString s] -> (_1,Ast.StringSeed s)
         | _ -> (_1,Ast.ListSeed _3) )
-# 28251 "parser_cocci_menhir.ml"
+# 28610 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28275,11 +28634,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_i_ in
         let _endpos = _endpos_l_ in
         let _v : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ = 
-# 1488 "parser_cocci_menhir.mly"
+# 1501 "parser_cocci_menhir.mly"
     (
       (i, l)
     )
-# 28283 "parser_cocci_menhir.ml"
+# 28642 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28301,9 +28660,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_re_ in
         let _endpos = _endpos_re_ in
         let _v : 'tv_re_or_not_eqe_or_sub = 
-# 1573 "parser_cocci_menhir.mly"
+# 1586 "parser_cocci_menhir.mly"
                   (Ast0.NotIdCstrt  re)
-# 28307 "parser_cocci_menhir.ml"
+# 28666 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28325,9 +28684,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_ne_ in
         let _endpos = _endpos_ne_ in
         let _v : 'tv_re_or_not_eqe_or_sub = 
-# 1574 "parser_cocci_menhir.mly"
+# 1587 "parser_cocci_menhir.mly"
                   (Ast0.NotExpCstrt ne)
-# 28331 "parser_cocci_menhir.ml"
+# 28690 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28349,9 +28708,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_re_or_not_eqe_or_sub = 
-# 1575 "parser_cocci_menhir.mly"
+# 1588 "parser_cocci_menhir.mly"
                   (Ast0.SubExpCstrt s)
-# 28355 "parser_cocci_menhir.ml"
+# 28714 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28373,9 +28732,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_re_ in
         let _endpos = _endpos_re_ in
         let _v : 'tv_re_or_not_eqid = 
-# 1519 "parser_cocci_menhir.mly"
+# 1532 "parser_cocci_menhir.mly"
                   (Ast.IdRegExpConstraint re)
-# 28379 "parser_cocci_menhir.ml"
+# 28738 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28397,9 +28756,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_ne_ in
         let _endpos = _endpos_ne_ in
         let _v : 'tv_re_or_not_eqid = 
-# 1520 "parser_cocci_menhir.mly"
+# 1533 "parser_cocci_menhir.mly"
                   (ne)
-# 28403 "parser_cocci_menhir.ml"
+# 28762 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28424,19 +28783,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let re : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 28428 "parser_cocci_menhir.ml"
+# 28787 "parser_cocci_menhir.ml"
         ) = Obj.magic re in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_re_ in
         let _v : 'tv_regexp_eqid = 
-# 1524 "parser_cocci_menhir.mly"
+# 1537 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
            then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
            then failwith "constraints not allowed in a generated rule file");
           let (s,_) = re in Ast.IdRegExp (s,Str.regexp s)
         )
-# 28440 "parser_cocci_menhir.ml"
+# 28799 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28461,19 +28820,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let re : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 28465 "parser_cocci_menhir.ml"
+# 28824 "parser_cocci_menhir.ml"
         ) = Obj.magic re in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_re_ in
         let _v : 'tv_regexp_eqid = 
-# 1531 "parser_cocci_menhir.mly"
+# 1544 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
            then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
            then failwith "constraints not allowed in a generated rule file");
           let (s,_) = re in Ast.IdNotRegExp (s,Str.regexp s)
         )
-# 28477 "parser_cocci_menhir.ml"
+# 28836 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28490,11 +28849,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 136 "parser_cocci_menhir.mly"
       (unit)
-# 28494 "parser_cocci_menhir.ml"
+# 28853 "parser_cocci_menhir.ml"
         ) = 
 # 177 "parser_cocci_menhir.mly"
         ( )
-# 28498 "parser_cocci_menhir.ml"
+# 28857 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28516,9 +28875,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_rule_elem_statement = 
-# 943 "parser_cocci_menhir.mly"
+# 952 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) )
-# 28522 "parser_cocci_menhir.ml"
+# 28881 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28544,15 +28903,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28548 "parser_cocci_menhir.ml"
+# 28907 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_expr = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_rule_elem_statement = 
-# 944 "parser_cocci_menhir.mly"
+# 953 "parser_cocci_menhir.mly"
                ( P.exp_stm _1 _2 )
-# 28556 "parser_cocci_menhir.ml"
+# 28915 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28583,20 +28942,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28587 "parser_cocci_menhir.ml"
+# 28946 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28593 "parser_cocci_menhir.ml"
+# 28952 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_rule_elem_statement = 
-# 945 "parser_cocci_menhir.mly"
+# 954 "parser_cocci_menhir.mly"
                         ( P.ret_exp _1 _2 _3 )
-# 28600 "parser_cocci_menhir.ml"
+# 28959 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28622,19 +28981,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28626 "parser_cocci_menhir.ml"
+# 28985 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28631 "parser_cocci_menhir.ml"
+# 28990 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_rule_elem_statement = 
-# 946 "parser_cocci_menhir.mly"
+# 955 "parser_cocci_menhir.mly"
                   ( P.ret _1 _2 )
-# 28638 "parser_cocci_menhir.ml"
+# 28997 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28660,19 +29019,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28664 "parser_cocci_menhir.ml"
+# 29023 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28669 "parser_cocci_menhir.ml"
+# 29028 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_rule_elem_statement = 
-# 947 "parser_cocci_menhir.mly"
+# 956 "parser_cocci_menhir.mly"
                  ( P.break _1 _2 )
-# 28676 "parser_cocci_menhir.ml"
+# 29035 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28698,19 +29057,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28702 "parser_cocci_menhir.ml"
+# 29061 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28707 "parser_cocci_menhir.ml"
+# 29066 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_rule_elem_statement = 
-# 948 "parser_cocci_menhir.mly"
+# 957 "parser_cocci_menhir.mly"
                     ( P.cont _1 _2 )
-# 28714 "parser_cocci_menhir.ml"
+# 29073 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28741,24 +29100,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28745 "parser_cocci_menhir.ml"
+# 29104 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 28751 "parser_cocci_menhir.ml"
+# 29110 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_rule_elem_statement = 
-# 950 "parser_cocci_menhir.mly"
+# 959 "parser_cocci_menhir.mly"
     ( let (mids,code) = _2 in
     Ast0.wrap
       (Ast0.Disj(P.clt2mcode "(" _1,
                 List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
                 mids, P.clt2mcode ")" _3)) )
-# 28762 "parser_cocci_menhir.ml"
+# 29121 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28814,18 +29173,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 28818 "parser_cocci_menhir.ml"
+# 29177 "parser_cocci_menhir.ml"
         ) = let nm =
           
 # 39 "standard.mly"
     ( None )
-# 28823 "parser_cocci_menhir.ml"
+# 29182 "parser_cocci_menhir.ml"
           
         in
         
 # 207 "parser_cocci_menhir.mly"
       ( P.make_cocci_rule_name_result nm d i a e ee )
-# 28829 "parser_cocci_menhir.ml"
+# 29188 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28887,19 +29246,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 28891 "parser_cocci_menhir.ml"
+# 29250 "parser_cocci_menhir.ml"
         ) = let nm =
           let x = x0 in
           
 # 41 "standard.mly"
     ( Some x )
-# 28897 "parser_cocci_menhir.ml"
+# 29256 "parser_cocci_menhir.ml"
           
         in
         
 # 207 "parser_cocci_menhir.mly"
       ( P.make_cocci_rule_name_result nm d i a e ee )
-# 28903 "parser_cocci_menhir.ml"
+# 29262 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -28959,11 +29318,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 28963 "parser_cocci_menhir.ml"
+# 29322 "parser_cocci_menhir.ml"
         ) = 
 # 212 "parser_cocci_menhir.mly"
       ( P.make_generated_rule_name_result None d i a e ee )
-# 28967 "parser_cocci_menhir.ml"
+# 29326 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29005,11 +29364,78 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 29009 "parser_cocci_menhir.ml"
-        ) = 
+# 29368 "parser_cocci_menhir.ml"
+        ) = let nm =
+          
+# 39 "standard.mly"
+    ( None )
+# 29373 "parser_cocci_menhir.ml"
+          
+        in
+        
 # 214 "parser_cocci_menhir.mly"
-      ( P.make_script_rule_name_result lang d )
-# 29013 "parser_cocci_menhir.ml"
+      ( P.make_script_rule_name_result lang nm d )
+# 29379 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.startp = _startpos__6_;
+          MenhirLib.EngineTypes.endp = _endpos__6_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = d;
+            MenhirLib.EngineTypes.startp = _startpos_d_;
+            MenhirLib.EngineTypes.endp = _endpos_d_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.semv = x0;
+              MenhirLib.EngineTypes.startp = _startpos_x0_;
+              MenhirLib.EngineTypes.endp = _endpos_x0_;
+              MenhirLib.EngineTypes.next = {
+                MenhirLib.EngineTypes.semv = lang;
+                MenhirLib.EngineTypes.startp = _startpos_lang_;
+                MenhirLib.EngineTypes.endp = _endpos_lang_;
+                MenhirLib.EngineTypes.next = {
+                  MenhirLib.EngineTypes.startp = _startpos__2_;
+                  MenhirLib.EngineTypes.endp = _endpos__2_;
+                  MenhirLib.EngineTypes.next = {
+                    MenhirLib.EngineTypes.state = _menhir_s;
+                    MenhirLib.EngineTypes.startp = _startpos__1_;
+                    MenhirLib.EngineTypes.endp = _endpos__1_;
+                    MenhirLib.EngineTypes.next = _menhir_stack;
+                    };
+                  };
+                };
+              };
+            };
+          } = _menhir_stack in
+        let d : 'tv_depends = Obj.magic d in
+        let x0 : 'tv_pure_ident = Obj.magic x0 in
+        let lang : 'tv_pure_ident = Obj.magic lang in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__6_ in
+        let _v : (
+# 158 "parser_cocci_menhir.mly"
+      (Ast_cocci.rulename)
+# 29427 "parser_cocci_menhir.ml"
+        ) = let nm =
+          let x = x0 in
+          
+# 41 "standard.mly"
+    ( Some x )
+# 29433 "parser_cocci_menhir.ml"
+          
+        in
+        
+# 214 "parser_cocci_menhir.mly"
+      ( P.make_script_rule_name_result lang nm d )
+# 29439 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29051,11 +29477,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 29055 "parser_cocci_menhir.ml"
+# 29481 "parser_cocci_menhir.ml"
         ) = 
 # 216 "parser_cocci_menhir.mly"
       ( P.make_initial_script_rule_name_result lang d )
-# 29059 "parser_cocci_menhir.ml"
+# 29485 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29097,11 +29523,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 29101 "parser_cocci_menhir.ml"
+# 29527 "parser_cocci_menhir.ml"
         ) = 
 # 218 "parser_cocci_menhir.mly"
       ( P.make_final_script_rule_name_result lang d )
-# 29105 "parser_cocci_menhir.ml"
+# 29531 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29113,7 +29539,6 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.semv = _2;
           MenhirLib.EngineTypes.startp = _startpos__2_;
           MenhirLib.EngineTypes.endp = _endpos__2_;
           MenhirLib.EngineTypes.next = {
@@ -29124,19 +29549,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             MenhirLib.EngineTypes.next = _menhir_stack;
             };
           } = _menhir_stack in
-        let _2 : 'tv_script_name_decl = Obj.magic _2 in
         let py : 'tv_pure_ident = Obj.magic py in
         let _startpos = _startpos_py_ in
         let _endpos = _endpos__2_ in
         let _v : (
 # 164 "parser_cocci_menhir.mly"
-       ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
-# 29135 "parser_cocci_menhir.ml"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 29559 "parser_cocci_menhir.ml"
         ) = 
-# 2056 "parser_cocci_menhir.mly"
-  ( let (nm,mv) = _2 in
-    ((Some (P.id2name py), None), nm, mv) )
-# 29140 "parser_cocci_menhir.ml"
+# 2069 "parser_cocci_menhir.mly"
+  ( ((Some (P.id2name py), None), None) )
+# 29563 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29148,27 +29571,69 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.semv = _6;
-          MenhirLib.EngineTypes.startp = _startpos__6_;
-          MenhirLib.EngineTypes.endp = _endpos__6_;
+          MenhirLib.EngineTypes.startp = _startpos__3_;
+          MenhirLib.EngineTypes.endp = _endpos__3_;
+          MenhirLib.EngineTypes.next = {
+            MenhirLib.EngineTypes.semv = _2;
+            MenhirLib.EngineTypes.startp = _startpos__2_;
+            MenhirLib.EngineTypes.endp = _endpos__2_;
+            MenhirLib.EngineTypes.next = {
+              MenhirLib.EngineTypes.state = _menhir_s;
+              MenhirLib.EngineTypes.semv = py;
+              MenhirLib.EngineTypes.startp = _startpos_py_;
+              MenhirLib.EngineTypes.endp = _endpos_py_;
+              MenhirLib.EngineTypes.next = _menhir_stack;
+              };
+            };
+          } = _menhir_stack in
+        let _2 : 'tv_script_name_decl = Obj.magic _2 in
+        let py : 'tv_pure_ident = Obj.magic py in
+        let _startpos = _startpos_py_ in
+        let _endpos = _endpos__3_ in
+        let _v : (
+# 164 "parser_cocci_menhir.mly"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 29597 "parser_cocci_menhir.ml"
+        ) = 
+# 2071 "parser_cocci_menhir.mly"
+  ( ((Some (P.id2name py), None), Some _2) )
+# 29601 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.startp = _startpos__7_;
+          MenhirLib.EngineTypes.endp = _endpos__7_;
           MenhirLib.EngineTypes.next = {
-            MenhirLib.EngineTypes.startp = _startpos__5_;
-            MenhirLib.EngineTypes.endp = _endpos__5_;
+            MenhirLib.EngineTypes.semv = _6;
+            MenhirLib.EngineTypes.startp = _startpos__6_;
+            MenhirLib.EngineTypes.endp = _endpos__6_;
             MenhirLib.EngineTypes.next = {
-              MenhirLib.EngineTypes.semv = ast;
-              MenhirLib.EngineTypes.startp = _startpos_ast_;
-              MenhirLib.EngineTypes.endp = _endpos_ast_;
+              MenhirLib.EngineTypes.startp = _startpos__5_;
+              MenhirLib.EngineTypes.endp = _endpos__5_;
               MenhirLib.EngineTypes.next = {
-                MenhirLib.EngineTypes.startp = _startpos__3_;
-                MenhirLib.EngineTypes.endp = _endpos__3_;
+                MenhirLib.EngineTypes.semv = ast;
+                MenhirLib.EngineTypes.startp = _startpos_ast_;
+                MenhirLib.EngineTypes.endp = _endpos_ast_;
                 MenhirLib.EngineTypes.next = {
-                  MenhirLib.EngineTypes.startp = _startpos__2_;
-                  MenhirLib.EngineTypes.endp = _endpos__2_;
+                  MenhirLib.EngineTypes.startp = _startpos__3_;
+                  MenhirLib.EngineTypes.endp = _endpos__3_;
                   MenhirLib.EngineTypes.next = {
-                    MenhirLib.EngineTypes.state = _menhir_s;
-                    MenhirLib.EngineTypes.startp = _startpos__1_;
-                    MenhirLib.EngineTypes.endp = _endpos__1_;
-                    MenhirLib.EngineTypes.next = _menhir_stack;
+                    MenhirLib.EngineTypes.startp = _startpos__2_;
+                    MenhirLib.EngineTypes.endp = _endpos__2_;
+                    MenhirLib.EngineTypes.next = {
+                      MenhirLib.EngineTypes.state = _menhir_s;
+                      MenhirLib.EngineTypes.startp = _startpos__1_;
+                      MenhirLib.EngineTypes.endp = _endpos__1_;
+                      MenhirLib.EngineTypes.next = _menhir_stack;
+                      };
                     };
                   };
                 };
@@ -29178,16 +29643,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _6 : 'tv_script_name_decl = Obj.magic _6 in
         let ast : 'tv_pure_ident = Obj.magic ast in
         let _startpos = _startpos__1_ in
-        let _endpos = _endpos__6_ in
+        let _endpos = _endpos__7_ in
         let _v : (
 # 164 "parser_cocci_menhir.mly"
-       ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
-# 29186 "parser_cocci_menhir.ml"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 29651 "parser_cocci_menhir.ml"
         ) = 
-# 2059 "parser_cocci_menhir.mly"
-  ( let (nm,mv) = _6 in
-    ((None, Some (P.id2name ast)), nm, mv) )
-# 29191 "parser_cocci_menhir.ml"
+# 2073 "parser_cocci_menhir.mly"
+  ( ((None, Some (P.id2name ast)), Some _6) )
+# 29655 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29199,27 +29663,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.semv = _6;
-          MenhirLib.EngineTypes.startp = _startpos__6_;
-          MenhirLib.EngineTypes.endp = _endpos__6_;
+          MenhirLib.EngineTypes.startp = _startpos__7_;
+          MenhirLib.EngineTypes.endp = _endpos__7_;
           MenhirLib.EngineTypes.next = {
-            MenhirLib.EngineTypes.startp = _startpos__5_;
-            MenhirLib.EngineTypes.endp = _endpos__5_;
+            MenhirLib.EngineTypes.semv = _6;
+            MenhirLib.EngineTypes.startp = _startpos__6_;
+            MenhirLib.EngineTypes.endp = _endpos__6_;
             MenhirLib.EngineTypes.next = {
-              MenhirLib.EngineTypes.startp = _startpos__4_;
-              MenhirLib.EngineTypes.endp = _endpos__4_;
+              MenhirLib.EngineTypes.startp = _startpos__5_;
+              MenhirLib.EngineTypes.endp = _endpos__5_;
               MenhirLib.EngineTypes.next = {
-                MenhirLib.EngineTypes.startp = _startpos__3_;
-                MenhirLib.EngineTypes.endp = _endpos__3_;
+                MenhirLib.EngineTypes.startp = _startpos__4_;
+                MenhirLib.EngineTypes.endp = _endpos__4_;
                 MenhirLib.EngineTypes.next = {
-                  MenhirLib.EngineTypes.semv = str;
-                  MenhirLib.EngineTypes.startp = _startpos_str_;
-                  MenhirLib.EngineTypes.endp = _endpos_str_;
+                  MenhirLib.EngineTypes.startp = _startpos__3_;
+                  MenhirLib.EngineTypes.endp = _endpos__3_;
                   MenhirLib.EngineTypes.next = {
-                    MenhirLib.EngineTypes.state = _menhir_s;
-                    MenhirLib.EngineTypes.startp = _startpos__1_;
-                    MenhirLib.EngineTypes.endp = _endpos__1_;
-                    MenhirLib.EngineTypes.next = _menhir_stack;
+                    MenhirLib.EngineTypes.semv = str;
+                    MenhirLib.EngineTypes.startp = _startpos_str_;
+                    MenhirLib.EngineTypes.endp = _endpos_str_;
+                    MenhirLib.EngineTypes.next = {
+                      MenhirLib.EngineTypes.state = _menhir_s;
+                      MenhirLib.EngineTypes.startp = _startpos__1_;
+                      MenhirLib.EngineTypes.endp = _endpos__1_;
+                      MenhirLib.EngineTypes.next = _menhir_stack;
+                      };
                     };
                   };
                 };
@@ -29229,16 +29697,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _6 : 'tv_script_name_decl = Obj.magic _6 in
         let str : 'tv_pure_ident = Obj.magic str in
         let _startpos = _startpos__1_ in
-        let _endpos = _endpos__6_ in
+        let _endpos = _endpos__7_ in
         let _v : (
 # 164 "parser_cocci_menhir.mly"
-       ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
-# 29237 "parser_cocci_menhir.ml"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 29705 "parser_cocci_menhir.ml"
         ) = 
-# 2062 "parser_cocci_menhir.mly"
-  ( let (nm,mv) = _6 in
-    ((Some (P.id2name str), None), nm, mv) )
-# 29242 "parser_cocci_menhir.ml"
+# 2075 "parser_cocci_menhir.mly"
+  ( ((Some (P.id2name str), None), Some _6) )
+# 29709 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29250,28 +29717,32 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.semv = _6;
-          MenhirLib.EngineTypes.startp = _startpos__6_;
-          MenhirLib.EngineTypes.endp = _endpos__6_;
+          MenhirLib.EngineTypes.startp = _startpos__7_;
+          MenhirLib.EngineTypes.endp = _endpos__7_;
           MenhirLib.EngineTypes.next = {
-            MenhirLib.EngineTypes.startp = _startpos__5_;
-            MenhirLib.EngineTypes.endp = _endpos__5_;
+            MenhirLib.EngineTypes.semv = _6;
+            MenhirLib.EngineTypes.startp = _startpos__6_;
+            MenhirLib.EngineTypes.endp = _endpos__6_;
             MenhirLib.EngineTypes.next = {
-              MenhirLib.EngineTypes.semv = ast;
-              MenhirLib.EngineTypes.startp = _startpos_ast_;
-              MenhirLib.EngineTypes.endp = _endpos_ast_;
+              MenhirLib.EngineTypes.startp = _startpos__5_;
+              MenhirLib.EngineTypes.endp = _endpos__5_;
               MenhirLib.EngineTypes.next = {
-                MenhirLib.EngineTypes.startp = _startpos__3_;
-                MenhirLib.EngineTypes.endp = _endpos__3_;
+                MenhirLib.EngineTypes.semv = ast;
+                MenhirLib.EngineTypes.startp = _startpos_ast_;
+                MenhirLib.EngineTypes.endp = _endpos_ast_;
                 MenhirLib.EngineTypes.next = {
-                  MenhirLib.EngineTypes.semv = str;
-                  MenhirLib.EngineTypes.startp = _startpos_str_;
-                  MenhirLib.EngineTypes.endp = _endpos_str_;
+                  MenhirLib.EngineTypes.startp = _startpos__3_;
+                  MenhirLib.EngineTypes.endp = _endpos__3_;
                   MenhirLib.EngineTypes.next = {
-                    MenhirLib.EngineTypes.state = _menhir_s;
-                    MenhirLib.EngineTypes.startp = _startpos__1_;
-                    MenhirLib.EngineTypes.endp = _endpos__1_;
-                    MenhirLib.EngineTypes.next = _menhir_stack;
+                    MenhirLib.EngineTypes.semv = str;
+                    MenhirLib.EngineTypes.startp = _startpos_str_;
+                    MenhirLib.EngineTypes.endp = _endpos_str_;
+                    MenhirLib.EngineTypes.next = {
+                      MenhirLib.EngineTypes.state = _menhir_s;
+                      MenhirLib.EngineTypes.startp = _startpos__1_;
+                      MenhirLib.EngineTypes.endp = _endpos__1_;
+                      MenhirLib.EngineTypes.next = _menhir_stack;
+                      };
                     };
                   };
                 };
@@ -29282,16 +29753,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ast : 'tv_pure_ident = Obj.magic ast in
         let str : 'tv_pure_ident = Obj.magic str in
         let _startpos = _startpos__1_ in
-        let _endpos = _endpos__6_ in
+        let _endpos = _endpos__7_ in
         let _v : (
 # 164 "parser_cocci_menhir.mly"
-       ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
-# 29290 "parser_cocci_menhir.ml"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 29761 "parser_cocci_menhir.ml"
         ) = 
-# 2065 "parser_cocci_menhir.mly"
-  ( let (nm,mv) = _6 in
-    ((Some (P.id2name str), Some (P.id2name ast)), nm, mv) )
-# 29295 "parser_cocci_menhir.ml"
+# 2077 "parser_cocci_menhir.mly"
+  ( ((Some (P.id2name str), Some (P.id2name ast)), Some _6) )
+# 29765 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29303,25 +29773,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.startp = _startpos__5_;
-          MenhirLib.EngineTypes.endp = _endpos__5_;
+          MenhirLib.EngineTypes.semv = cocci;
+          MenhirLib.EngineTypes.startp = _startpos_cocci_;
+          MenhirLib.EngineTypes.endp = _endpos_cocci_;
           MenhirLib.EngineTypes.next = {
-            MenhirLib.EngineTypes.semv = cocci;
-            MenhirLib.EngineTypes.startp = _startpos_cocci_;
-            MenhirLib.EngineTypes.endp = _endpos_cocci_;
+            MenhirLib.EngineTypes.startp = _startpos__3_;
+            MenhirLib.EngineTypes.endp = _endpos__3_;
             MenhirLib.EngineTypes.next = {
-              MenhirLib.EngineTypes.startp = _startpos__3_;
-              MenhirLib.EngineTypes.endp = _endpos__3_;
+              MenhirLib.EngineTypes.semv = _2;
+              MenhirLib.EngineTypes.startp = _startpos__2_;
+              MenhirLib.EngineTypes.endp = _endpos__2_;
               MenhirLib.EngineTypes.next = {
-                MenhirLib.EngineTypes.semv = _2;
-                MenhirLib.EngineTypes.startp = _startpos__2_;
-                MenhirLib.EngineTypes.endp = _endpos__2_;
-                MenhirLib.EngineTypes.next = {
-                  MenhirLib.EngineTypes.state = _menhir_s;
-                  MenhirLib.EngineTypes.startp = _startpos__1_;
-                  MenhirLib.EngineTypes.endp = _endpos__1_;
-                  MenhirLib.EngineTypes.next = _menhir_stack;
-                  };
+                MenhirLib.EngineTypes.state = _menhir_s;
+                MenhirLib.EngineTypes.startp = _startpos__1_;
+                MenhirLib.EngineTypes.endp = _endpos__1_;
+                MenhirLib.EngineTypes.next = _menhir_stack;
                 };
               };
             };
@@ -29330,16 +29796,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 29334 "parser_cocci_menhir.ml"
+# 29800 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _startpos = _startpos__1_ in
-        let _endpos = _endpos__5_ in
+        let _endpos = _endpos_cocci_ in
         let _v : 'tv_script_name_decl = 
-# 2070 "parser_cocci_menhir.mly"
+# 2081 "parser_cocci_menhir.mly"
       ( let nm = P.id2name cocci in
         let mv = Parse_aux.lookup _2 nm in
         ((_2, nm), mv) )
-# 29343 "parser_cocci_menhir.ml"
+# 29809 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29351,38 +29817,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
       (fun _menhir_env ->
         let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
         let {
-          MenhirLib.EngineTypes.startp = _startpos__5_;
-          MenhirLib.EngineTypes.endp = _endpos__5_;
+          MenhirLib.EngineTypes.semv = cocci;
+          MenhirLib.EngineTypes.startp = _startpos_cocci_;
+          MenhirLib.EngineTypes.endp = _endpos_cocci_;
           MenhirLib.EngineTypes.next = {
-            MenhirLib.EngineTypes.semv = cocci;
-            MenhirLib.EngineTypes.startp = _startpos_cocci_;
-            MenhirLib.EngineTypes.endp = _endpos_cocci_;
+            MenhirLib.EngineTypes.startp = _startpos__3_;
+            MenhirLib.EngineTypes.endp = _endpos__3_;
             MenhirLib.EngineTypes.next = {
-              MenhirLib.EngineTypes.startp = _startpos__3_;
-              MenhirLib.EngineTypes.endp = _endpos__3_;
+              MenhirLib.EngineTypes.startp = _startpos__2_;
+              MenhirLib.EngineTypes.endp = _endpos__2_;
               MenhirLib.EngineTypes.next = {
-                MenhirLib.EngineTypes.startp = _startpos__2_;
-                MenhirLib.EngineTypes.endp = _endpos__2_;
-                MenhirLib.EngineTypes.next = {
-                  MenhirLib.EngineTypes.state = _menhir_s;
-                  MenhirLib.EngineTypes.startp = _startpos__1_;
-                  MenhirLib.EngineTypes.endp = _endpos__1_;
-                  MenhirLib.EngineTypes.next = _menhir_stack;
-                  };
+                MenhirLib.EngineTypes.state = _menhir_s;
+                MenhirLib.EngineTypes.startp = _startpos__1_;
+                MenhirLib.EngineTypes.endp = _endpos__1_;
+                MenhirLib.EngineTypes.next = _menhir_stack;
                 };
               };
             };
           } = _menhir_stack in
         let cocci : 'tv_pure_ident = Obj.magic cocci in
         let _startpos = _startpos__1_ in
-        let _endpos = _endpos__5_ in
+        let _endpos = _endpos_cocci_ in
         let _v : 'tv_script_name_decl = 
-# 2074 "parser_cocci_menhir.mly"
+# 2085 "parser_cocci_menhir.mly"
       ( let nm = P.id2name cocci in
         let name = ("virtual", nm) in
         let mv = Ast.MetaIdDecl(Ast.NONE,name) in
-       (name,mv) )
-# 29386 "parser_cocci_menhir.ml"
+        (name,mv) )
+# 29848 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29403,14 +29865,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 29407 "parser_cocci_menhir.ml"
+# 29869 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_seed_elem = 
-# 1479 "parser_cocci_menhir.mly"
+# 1492 "parser_cocci_menhir.mly"
           ( let (x,_) = _1 in Ast.SeedString x )
-# 29414 "parser_cocci_menhir.ml"
+# 29876 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29431,14 +29893,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 64 "parser_cocci_menhir.mly"
        (Parse_aux.idinfo)
-# 29435 "parser_cocci_menhir.ml"
+# 29897 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_seed_elem = 
-# 1480 "parser_cocci_menhir.mly"
+# 1493 "parser_cocci_menhir.mly"
           ( let (x,_,_,_) = _1 in Ast.SeedId x )
-# 29442 "parser_cocci_menhir.ml"
+# 29904 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29469,16 +29931,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 29473 "parser_cocci_menhir.ml"
+# 29935 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_seed_elem = 
-# 1482 "parser_cocci_menhir.mly"
+# 1495 "parser_cocci_menhir.mly"
     ( let nm = (_1,P.id2name _3) in
       P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm));
       Ast.SeedId nm )
-# 29482 "parser_cocci_menhir.ml"
+# 29944 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29499,14 +29961,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let x : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 29503 "parser_cocci_menhir.ml"
+# 29965 "parser_cocci_menhir.ml"
         ) = Obj.magic x in
         let _startpos = _startpos_x_ in
         let _endpos = _endpos_x_ in
         let _v : 'tv_separated_nonempty_list_TComma_TString_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29510 "parser_cocci_menhir.ml"
+# 29972 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29537,14 +29999,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let x : (
 # 90 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 29541 "parser_cocci_menhir.ml"
+# 30003 "parser_cocci_menhir.ml"
         ) = Obj.magic x in
         let _startpos = _startpos_x_ in
         let _endpos = _endpos_xs_ in
         let _v : 'tv_separated_nonempty_list_TComma_TString_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29548 "parser_cocci_menhir.ml"
+# 30010 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29568,7 +30030,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29572 "parser_cocci_menhir.ml"
+# 30034 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29602,7 +30064,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29606 "parser_cocci_menhir.ml"
+# 30068 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29626,7 +30088,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_ctype_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29630 "parser_cocci_menhir.ml"
+# 30092 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29660,7 +30122,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_ctype_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29664 "parser_cocci_menhir.ml"
+# 30126 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29684,7 +30146,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29688 "parser_cocci_menhir.ml"
+# 30150 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29718,7 +30180,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29722 "parser_cocci_menhir.ml"
+# 30184 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29742,7 +30204,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29746 "parser_cocci_menhir.ml"
+# 30208 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29776,7 +30238,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29780 "parser_cocci_menhir.ml"
+# 30242 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29800,7 +30262,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29804 "parser_cocci_menhir.ml"
+# 30266 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29834,7 +30296,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29838 "parser_cocci_menhir.ml"
+# 30300 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29858,7 +30320,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29862 "parser_cocci_menhir.ml"
+# 30324 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29892,7 +30354,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29896 "parser_cocci_menhir.ml"
+# 30358 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29916,7 +30378,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29920 "parser_cocci_menhir.ml"
+# 30382 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29950,7 +30412,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 29954 "parser_cocci_menhir.ml"
+# 30416 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -29974,7 +30436,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 29978 "parser_cocci_menhir.ml"
+# 30440 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30008,7 +30470,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30012 "parser_cocci_menhir.ml"
+# 30474 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30032,7 +30494,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30036 "parser_cocci_menhir.ml"
+# 30498 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30066,7 +30528,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30070 "parser_cocci_menhir.ml"
+# 30532 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30090,7 +30552,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30094 "parser_cocci_menhir.ml"
+# 30556 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30124,7 +30586,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30128 "parser_cocci_menhir.ml"
+# 30590 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30148,7 +30610,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30152 "parser_cocci_menhir.ml"
+# 30614 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30182,7 +30644,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30186 "parser_cocci_menhir.ml"
+# 30648 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30206,7 +30668,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30210 "parser_cocci_menhir.ml"
+# 30672 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30240,7 +30702,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30244 "parser_cocci_menhir.ml"
+# 30706 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30264,7 +30726,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30268 "parser_cocci_menhir.ml"
+# 30730 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30298,7 +30760,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30302 "parser_cocci_menhir.ml"
+# 30764 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30322,7 +30784,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30326 "parser_cocci_menhir.ml"
+# 30788 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30356,7 +30818,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30360 "parser_cocci_menhir.ml"
+# 30822 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30380,7 +30842,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = 
 # 144 "standard.mly"
     ( [ x ] )
-# 30384 "parser_cocci_menhir.ml"
+# 30846 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30414,7 +30876,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = 
 # 146 "standard.mly"
     ( x :: xs )
-# 30418 "parser_cocci_menhir.ml"
+# 30880 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30436,9 +30898,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_single_statement = 
-# 958 "parser_cocci_menhir.mly"
+# 967 "parser_cocci_menhir.mly"
                                       ( _1 )
-# 30442 "parser_cocci_menhir.ml"
+# 30904 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30469,24 +30931,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30473 "parser_cocci_menhir.ml"
+# 30935 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30479 "parser_cocci_menhir.ml"
+# 30941 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_single_statement = 
-# 962 "parser_cocci_menhir.mly"
+# 971 "parser_cocci_menhir.mly"
       ( let (mids,code) = _2 in
         Ast0.wrap
          (Ast0.Disj(P.clt2mcode "(" _1,
                     List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
                     mids, P.clt2mcode ")" _3)) )
-# 30490 "parser_cocci_menhir.ml"
+# 30952 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30508,9 +30970,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_statement = 
-# 885 "parser_cocci_menhir.mly"
+# 894 "parser_cocci_menhir.mly"
            ( _1 )
-# 30514 "parser_cocci_menhir.ml"
+# 30976 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30531,14 +30993,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 30535 "parser_cocci_menhir.ml"
+# 30997 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_statement = 
-# 887 "parser_cocci_menhir.mly"
+# 896 "parser_cocci_menhir.mly"
     ( P.meta_stm _1 )
-# 30542 "parser_cocci_menhir.ml"
+# 31004 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30564,15 +31026,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30568 "parser_cocci_menhir.ml"
+# 31030 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_expr = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_statement = 
-# 889 "parser_cocci_menhir.mly"
+# 898 "parser_cocci_menhir.mly"
     ( P.exp_stm _1 _2 )
-# 30576 "parser_cocci_menhir.ml"
+# 31038 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30614,25 +31076,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30618 "parser_cocci_menhir.ml"
+# 31080 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30624 "parser_cocci_menhir.ml"
+# 31086 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30629 "parser_cocci_menhir.ml"
+# 31091 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_statement = 
-# 891 "parser_cocci_menhir.mly"
+# 900 "parser_cocci_menhir.mly"
     ( P.ifthen _1 _2 _3 _4 _5 )
-# 30636 "parser_cocci_menhir.ml"
+# 31098 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30684,31 +31146,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _6 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30688 "parser_cocci_menhir.ml"
+# 31150 "parser_cocci_menhir.ml"
         ) = Obj.magic _6 in
         let _5 : 'tv_single_statement = Obj.magic _5 in
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30694 "parser_cocci_menhir.ml"
+# 31156 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30700 "parser_cocci_menhir.ml"
+# 31162 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30705 "parser_cocci_menhir.ml"
+# 31167 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__7_ in
         let _v : 'tv_statement = 
-# 893 "parser_cocci_menhir.mly"
+# 902 "parser_cocci_menhir.mly"
     ( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 )
-# 30712 "parser_cocci_menhir.ml"
+# 31174 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30770,37 +31232,37 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _8 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30774 "parser_cocci_menhir.ml"
+# 31236 "parser_cocci_menhir.ml"
         ) = Obj.magic _8 in
         let _7 : 'tv_option_eexpr_ = Obj.magic _7 in
         let _6 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30780 "parser_cocci_menhir.ml"
+# 31242 "parser_cocci_menhir.ml"
         ) = Obj.magic _6 in
         let _5 : 'tv_option_eexpr_ = Obj.magic _5 in
         let _4 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30786 "parser_cocci_menhir.ml"
+# 31248 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_option_eexpr_ = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30792 "parser_cocci_menhir.ml"
+# 31254 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30797 "parser_cocci_menhir.ml"
+# 31259 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__9_ in
         let _v : 'tv_statement = 
-# 896 "parser_cocci_menhir.mly"
+# 905 "parser_cocci_menhir.mly"
     ( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 )
-# 30804 "parser_cocci_menhir.ml"
+# 31266 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30842,25 +31304,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30846 "parser_cocci_menhir.ml"
+# 31308 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30852 "parser_cocci_menhir.ml"
+# 31314 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30857 "parser_cocci_menhir.ml"
+# 31319 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_statement = 
-# 898 "parser_cocci_menhir.mly"
+# 907 "parser_cocci_menhir.mly"
     ( P.whileloop _1 _2 _3 _4 _5 )
-# 30864 "parser_cocci_menhir.ml"
+# 31326 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30911,36 +31373,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _7 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30915 "parser_cocci_menhir.ml"
+# 31377 "parser_cocci_menhir.ml"
         ) = Obj.magic _7 in
         let _6 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30920 "parser_cocci_menhir.ml"
+# 31382 "parser_cocci_menhir.ml"
         ) = Obj.magic _6 in
         let _5 : 'tv_eexpr = Obj.magic _5 in
         let _4 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30926 "parser_cocci_menhir.ml"
+# 31388 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30931 "parser_cocci_menhir.ml"
+# 31393 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_single_statement = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30937 "parser_cocci_menhir.ml"
+# 31399 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__7_ in
         let _v : 'tv_statement = 
-# 900 "parser_cocci_menhir.mly"
+# 909 "parser_cocci_menhir.mly"
     ( P.doloop _1 _2 _3 _4 _5 _6 _7 )
-# 30944 "parser_cocci_menhir.ml"
+# 31406 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -30982,21 +31444,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30986 "parser_cocci_menhir.ml"
+# 31448 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 30992 "parser_cocci_menhir.ml"
+# 31454 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_iter_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__5_ in
         let _v : 'tv_statement = 
-# 902 "parser_cocci_menhir.mly"
+# 911 "parser_cocci_menhir.mly"
     ( P.iterator _1 _2 _3 _4 _5 )
-# 31000 "parser_cocci_menhir.ml"
+# 31462 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31052,37 +31514,37 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _8 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31056 "parser_cocci_menhir.ml"
+# 31518 "parser_cocci_menhir.ml"
         ) = Obj.magic _8 in
         let _7 : 'tv_list_case_line_ = Obj.magic _7 in
         let _6 : 'tv_list_decl_var_ = Obj.magic _6 in
         let _5 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31063 "parser_cocci_menhir.ml"
+# 31525 "parser_cocci_menhir.ml"
         ) = Obj.magic _5 in
         let _4 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31068 "parser_cocci_menhir.ml"
+# 31530 "parser_cocci_menhir.ml"
         ) = Obj.magic _4 in
         let _3 : 'tv_eexpr = Obj.magic _3 in
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31074 "parser_cocci_menhir.ml"
+# 31536 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31079 "parser_cocci_menhir.ml"
+# 31541 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__8_ in
         let _v : 'tv_statement = 
-# 904 "parser_cocci_menhir.mly"
+# 913 "parser_cocci_menhir.mly"
     ( P.switch _1 _2 _3 _4 _5 (List.concat _6) _7 _8 )
-# 31086 "parser_cocci_menhir.ml"
+# 31548 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31113,20 +31575,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31117 "parser_cocci_menhir.ml"
+# 31579 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_eexpr = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31123 "parser_cocci_menhir.ml"
+# 31585 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_statement = 
-# 905 "parser_cocci_menhir.mly"
+# 914 "parser_cocci_menhir.mly"
                         ( P.ret_exp _1 _2 _3 )
-# 31130 "parser_cocci_menhir.ml"
+# 31592 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31152,19 +31614,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31156 "parser_cocci_menhir.ml"
+# 31618 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 59 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31161 "parser_cocci_menhir.ml"
+# 31623 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_statement = 
-# 906 "parser_cocci_menhir.mly"
+# 915 "parser_cocci_menhir.mly"
                   ( P.ret _1 _2 )
-# 31168 "parser_cocci_menhir.ml"
+# 31630 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31190,19 +31652,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31194 "parser_cocci_menhir.ml"
+# 31656 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31199 "parser_cocci_menhir.ml"
+# 31661 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_statement = 
-# 907 "parser_cocci_menhir.mly"
+# 916 "parser_cocci_menhir.mly"
                  ( P.break _1 _2 )
-# 31206 "parser_cocci_menhir.ml"
+# 31668 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31228,19 +31690,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31232 "parser_cocci_menhir.ml"
+# 31694 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31237 "parser_cocci_menhir.ml"
+# 31699 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_statement = 
-# 908 "parser_cocci_menhir.mly"
+# 917 "parser_cocci_menhir.mly"
                     ( P.cont _1 _2 )
-# 31244 "parser_cocci_menhir.ml"
+# 31706 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31266,15 +31728,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31270 "parser_cocci_menhir.ml"
+# 31732 "parser_cocci_menhir.ml"
         ) = Obj.magic _2 in
         let _1 : 'tv_ident = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_statement = 
-# 909 "parser_cocci_menhir.mly"
+# 918 "parser_cocci_menhir.mly"
                 ( P.label _1 _2 )
-# 31278 "parser_cocci_menhir.ml"
+# 31740 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31305,20 +31767,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31309 "parser_cocci_menhir.ml"
+# 31771 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_ident = Obj.magic _2 in
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31315 "parser_cocci_menhir.ml"
+# 31777 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_statement = 
-# 910 "parser_cocci_menhir.mly"
+# 919 "parser_cocci_menhir.mly"
                       ( P.goto _1 _2 _3 )
-# 31322 "parser_cocci_menhir.ml"
+# 31784 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31349,20 +31811,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31353 "parser_cocci_menhir.ml"
+# 31815 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_fun_start = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31359 "parser_cocci_menhir.ml"
+# 31821 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_statement = 
-# 912 "parser_cocci_menhir.mly"
+# 921 "parser_cocci_menhir.mly"
     ( P.seq _1 _2 _3 )
-# 31366 "parser_cocci_menhir.ml"
+# 31828 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31389,14 +31851,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31393 "parser_cocci_menhir.ml"
+# 31855 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_w_ in
         let _v : 'tv_stm_dots = 
-# 916 "parser_cocci_menhir.mly"
+# 925 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) )
-# 31400 "parser_cocci_menhir.ml"
+# 31862 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31432,22 +31894,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31436 "parser_cocci_menhir.ml"
+# 31898 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let b : 'tv_nest_start = Obj.magic b in
         let w : 'tv_list_whenppdecs_ = Obj.magic w in
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31443 "parser_cocci_menhir.ml"
+# 31905 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_stm_dots = 
-# 918 "parser_cocci_menhir.mly"
+# 927 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b,
                          P.clt2mcode "...>" c, List.concat w, false)) )
-# 31451 "parser_cocci_menhir.ml"
+# 31913 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31483,22 +31945,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31487 "parser_cocci_menhir.ml"
+# 31949 "parser_cocci_menhir.ml"
         ) = Obj.magic c in
         let b : 'tv_nest_start = Obj.magic b in
         let w : 'tv_list_whenppdecs_ = Obj.magic w in
         let _1 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31494 "parser_cocci_menhir.ml"
+# 31956 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_c_ in
         let _v : 'tv_stm_dots = 
-# 921 "parser_cocci_menhir.mly"
+# 930 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b,
                          P.clt2mcode "...+>" c, List.concat w, true)) )
-# 31502 "parser_cocci_menhir.ml"
+# 31964 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31519,14 +31981,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 31523 "parser_cocci_menhir.ml"
+# 31985 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_storage = 
-# 847 "parser_cocci_menhir.mly"
+# 856 "parser_cocci_menhir.mly"
                         ( P.clt2mcode Ast.Static s )
-# 31530 "parser_cocci_menhir.ml"
+# 31992 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31547,14 +32009,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 31551 "parser_cocci_menhir.ml"
+# 32013 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_storage = 
-# 848 "parser_cocci_menhir.mly"
+# 857 "parser_cocci_menhir.mly"
                         ( P.clt2mcode Ast.Auto s )
-# 31558 "parser_cocci_menhir.ml"
+# 32020 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31575,14 +32037,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 31579 "parser_cocci_menhir.ml"
+# 32041 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_storage = 
-# 849 "parser_cocci_menhir.mly"
+# 858 "parser_cocci_menhir.mly"
                         ( P.clt2mcode Ast.Register s )
-# 31586 "parser_cocci_menhir.ml"
+# 32048 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31603,14 +32065,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s : (
 # 55 "parser_cocci_menhir.mly"
       (Data.clt)
-# 31607 "parser_cocci_menhir.ml"
+# 32069 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_storage = 
-# 850 "parser_cocci_menhir.mly"
+# 859 "parser_cocci_menhir.mly"
                         ( P.clt2mcode Ast.Extern s )
-# 31614 "parser_cocci_menhir.ml"
+# 32076 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31630,9 +32092,37 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_struct_decl = 
-# 601 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
                ( [] )
-# 31636 "parser_cocci_menhir.ml"
+# 32098 "parser_cocci_menhir.ml"
+         in
+        _menhir_env.MenhirLib.EngineTypes.stack <- {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = Obj.repr _v;
+          MenhirLib.EngineTypes.startp = _startpos;
+          MenhirLib.EngineTypes.endp = _endpos;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          });
+      (fun _menhir_env ->
+        let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+        let {
+          MenhirLib.EngineTypes.state = _menhir_s;
+          MenhirLib.EngineTypes.semv = _1;
+          MenhirLib.EngineTypes.startp = _startpos__1_;
+          MenhirLib.EngineTypes.endp = _endpos__1_;
+          MenhirLib.EngineTypes.next = _menhir_stack;
+          } = _menhir_stack in
+        let _1 : (
+# 68 "parser_cocci_menhir.mly"
+       (Parse_aux.info)
+# 32119 "parser_cocci_menhir.ml"
+        ) = Obj.magic _1 in
+        let _startpos = _startpos__1_ in
+        let _endpos = _endpos__1_ in
+        let _v : 'tv_struct_decl = 
+# 610 "parser_cocci_menhir.mly"
+                 ( [P.meta_field _1] )
+# 32126 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31663,17 +32153,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31667 "parser_cocci_menhir.ml"
+# 32157 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_pv_ in
         let _v : 'tv_struct_decl = 
-# 603 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
   ( let (id,fn) = d in
         [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
-# 31677 "parser_cocci_menhir.ml"
+# 32167 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31734,40 +32224,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31738 "parser_cocci_menhir.ml"
+# 32228 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let rp2 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31743 "parser_cocci_menhir.ml"
+# 32233 "parser_cocci_menhir.ml"
         ) = Obj.magic rp2 in
         let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
         let lp2 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31749 "parser_cocci_menhir.ml"
+# 32239 "parser_cocci_menhir.ml"
         ) = Obj.magic lp2 in
         let rp1 : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31754 "parser_cocci_menhir.ml"
+# 32244 "parser_cocci_menhir.ml"
         ) = Obj.magic rp1 in
         let d : 'tv_d_ident = Obj.magic d in
         let st : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31760 "parser_cocci_menhir.ml"
+# 32250 "parser_cocci_menhir.ml"
         ) = Obj.magic st in
         let lp1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31765 "parser_cocci_menhir.ml"
+# 32255 "parser_cocci_menhir.ml"
         ) = Obj.magic lp1 in
         let t : 'tv_ctype = Obj.magic t in
         let _startpos = _startpos_t_ in
         let _endpos = _endpos_pv_ in
         let _v : 'tv_struct_decl = 
-# 607 "parser_cocci_menhir.mly"
+# 616 "parser_cocci_menhir.mly"
         ( let (id,fn) = d in
         let t =
          Ast0.wrap
@@ -31775,7 +32265,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
                P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
         [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
-# 31779 "parser_cocci_menhir.ml"
+# 32269 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31806,7 +32296,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31810 "parser_cocci_menhir.ml"
+# 32300 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -31816,15 +32306,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 39 "standard.mly"
     ( None )
-# 31820 "parser_cocci_menhir.ml"
+# 32310 "parser_cocci_menhir.ml"
           
         in
         
-# 615 "parser_cocci_menhir.mly"
+# 624 "parser_cocci_menhir.mly"
   ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
         [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
-# 31828 "parser_cocci_menhir.ml"
+# 32318 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31860,7 +32350,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let pv : (
 # 110 "parser_cocci_menhir.mly"
        (Data.clt)
-# 31864 "parser_cocci_menhir.ml"
+# 32354 "parser_cocci_menhir.ml"
         ) = Obj.magic pv in
         let d : 'tv_d_ident = Obj.magic d in
         let i : 'tv_pure_ident = Obj.magic i in
@@ -31872,15 +32362,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 31876 "parser_cocci_menhir.ml"
+# 32366 "parser_cocci_menhir.ml"
           
         in
         
-# 615 "parser_cocci_menhir.mly"
+# 624 "parser_cocci_menhir.mly"
   ( let (id,fn) = d in
         let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
         [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
-# 31884 "parser_cocci_menhir.ml"
+# 32374 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31902,9 +32392,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_struct_decl_list = 
-# 620 "parser_cocci_menhir.mly"
+# 629 "parser_cocci_menhir.mly"
                           ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 31908 "parser_cocci_menhir.ml"
+# 32398 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31926,9 +32416,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_struct_decl_list_start = 
-# 623 "parser_cocci_menhir.mly"
+# 632 "parser_cocci_menhir.mly"
                                      ( _1 )
-# 31932 "parser_cocci_menhir.ml"
+# 32422 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31956,9 +32446,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_struct_decl_list_start = 
-# 624 "parser_cocci_menhir.mly"
+# 633 "parser_cocci_menhir.mly"
                                      ( _1@_2 )
-# 31962 "parser_cocci_menhir.ml"
+# 32452 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -31986,9 +32476,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_d_ in
         let _endpos = _endpos_r_ in
         let _v : 'tv_struct_decl_list_start = 
-# 626 "parser_cocci_menhir.mly"
+# 635 "parser_cocci_menhir.mly"
     ( (P.mkddots "..." d)::r )
-# 31992 "parser_cocci_menhir.ml"
+# 32482 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32009,14 +32499,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 32013 "parser_cocci_menhir.ml"
+# 32503 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_s_ in
         let _v : 'tv_struct_or_union = 
-# 597 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
                  ( P.clt2mcode Ast.Struct s )
-# 32020 "parser_cocci_menhir.ml"
+# 32510 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32037,14 +32527,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let u : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 32041 "parser_cocci_menhir.ml"
+# 32531 "parser_cocci_menhir.ml"
         ) = Obj.magic u in
         let _startpos = _startpos_u_ in
         let _endpos = _endpos_u_ in
         let _v : 'tv_struct_or_union = 
-# 598 "parser_cocci_menhir.mly"
+# 606 "parser_cocci_menhir.mly"
                  ( P.clt2mcode Ast.Union u )
-# 32048 "parser_cocci_menhir.ml"
+# 32538 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32070,7 +32560,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos_i_ in
         let _v : 'tv_sub = 
-# 1619 "parser_cocci_menhir.mly"
+# 1632 "parser_cocci_menhir.mly"
          ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -32079,7 +32569,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             P.check_inherited_constraint i
               (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)) in
           [i] )
-# 32083 "parser_cocci_menhir.ml"
+# 32573 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32113,7 +32603,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_sub = 
-# 1628 "parser_cocci_menhir.mly"
+# 1641 "parser_cocci_menhir.mly"
   ( (if !Data.in_iso
           then failwith "constraints not allowed in iso file");
           (if !Data.in_generating
@@ -32123,7 +32613,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               P.check_inherited_constraint i
                 (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)))
             l)
-# 32127 "parser_cocci_menhir.ml"
+# 32617 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32145,9 +32635,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_top_eexpr = 
-# 1249 "parser_cocci_menhir.mly"
+# 1260 "parser_cocci_menhir.mly"
         ( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) )
-# 32151 "parser_cocci_menhir.ml"
+# 32641 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32178,20 +32668,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _3 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32182 "parser_cocci_menhir.ml"
+# 32672 "parser_cocci_menhir.ml"
         ) = Obj.magic _3 in
         let _2 : 'tv_initialize_list = Obj.magic _2 in
         let _1 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32188 "parser_cocci_menhir.ml"
+# 32678 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_top_init = 
-# 1828 "parser_cocci_menhir.mly"
+# 1841 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 32195 "parser_cocci_menhir.ml"
+# 32685 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32206,9 +32696,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_toplevel_after_dots = 
-# 1816 "parser_cocci_menhir.mly"
+# 1829 "parser_cocci_menhir.mly"
                                      ([])
-# 32212 "parser_cocci_menhir.ml"
+# 32702 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32234,9 +32724,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots = 
-# 1817 "parser_cocci_menhir.mly"
+# 1830 "parser_cocci_menhir.mly"
                                      (_2)
-# 32240 "parser_cocci_menhir.ml"
+# 32730 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32264,9 +32754,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots = 
-# 1818 "parser_cocci_menhir.mly"
+# 1831 "parser_cocci_menhir.mly"
                                      ((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 32270 "parser_cocci_menhir.ml"
+# 32760 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32294,9 +32784,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots = 
-# 1819 "parser_cocci_menhir.mly"
+# 1832 "parser_cocci_menhir.mly"
                                           (_1@_2)
-# 32300 "parser_cocci_menhir.ml"
+# 32790 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32322,9 +32812,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots_init = 
-# 1807 "parser_cocci_menhir.mly"
+# 1820 "parser_cocci_menhir.mly"
                                      (_2)
-# 32328 "parser_cocci_menhir.ml"
+# 32818 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32352,9 +32842,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots_init = 
-# 1808 "parser_cocci_menhir.mly"
+# 1821 "parser_cocci_menhir.mly"
                                      ((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 32358 "parser_cocci_menhir.ml"
+# 32848 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32382,9 +32872,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_dots_init = 
-# 1809 "parser_cocci_menhir.mly"
+# 1822 "parser_cocci_menhir.mly"
                                           (_1@_2)
-# 32388 "parser_cocci_menhir.ml"
+# 32878 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32399,9 +32889,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_toplevel_after_exp = 
-# 1812 "parser_cocci_menhir.mly"
+# 1825 "parser_cocci_menhir.mly"
                                      ([])
-# 32405 "parser_cocci_menhir.ml"
+# 32895 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32429,9 +32919,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_exp = 
-# 1813 "parser_cocci_menhir.mly"
+# 1826 "parser_cocci_menhir.mly"
                                      (_1::_2)
-# 32435 "parser_cocci_menhir.ml"
+# 32925 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32446,9 +32936,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
         let _endpos = _startpos in
         let _v : 'tv_toplevel_after_stm = 
-# 1822 "parser_cocci_menhir.mly"
+# 1835 "parser_cocci_menhir.mly"
                                      ([])
-# 32452 "parser_cocci_menhir.ml"
+# 32942 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32476,9 +32966,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_stm = 
-# 1823 "parser_cocci_menhir.mly"
+# 1836 "parser_cocci_menhir.mly"
                                      (_1::_2)
-# 32482 "parser_cocci_menhir.ml"
+# 32972 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32506,9 +32996,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_after_stm = 
-# 1824 "parser_cocci_menhir.mly"
+# 1837 "parser_cocci_menhir.mly"
                                      (_1@_2)
-# 32512 "parser_cocci_menhir.ml"
+# 33002 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32536,9 +33026,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ = 
-# 1802 "parser_cocci_menhir.mly"
+# 1815 "parser_cocci_menhir.mly"
                                      ( _1::_2 )
-# 32542 "parser_cocci_menhir.ml"
+# 33032 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32566,9 +33056,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ = 
-# 1803 "parser_cocci_menhir.mly"
+# 1816 "parser_cocci_menhir.mly"
                                      ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
-# 32572 "parser_cocci_menhir.ml"
+# 33062 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32596,9 +33086,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ = 
-# 1804 "parser_cocci_menhir.mly"
+# 1817 "parser_cocci_menhir.mly"
                                           ( _1@_2 )
-# 32602 "parser_cocci_menhir.ml"
+# 33092 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32631,7 +33121,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let a0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32635 "parser_cocci_menhir.ml"
+# 33125 "parser_cocci_menhir.ml"
         ) = Obj.magic a0 in
         let _startpos = _startpos_a0_ in
         let _endpos = _endpos_b_ in
@@ -32639,15 +33129,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let w = w0 in
           let a = a0 in
           
-# 926 "parser_cocci_menhir.mly"
+# 935 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." a, List.concat w)) )
-# 32645 "parser_cocci_menhir.ml"
+# 33135 "parser_cocci_menhir.ml"
           
         in
         
-# 1795 "parser_cocci_menhir.mly"
+# 1808 "parser_cocci_menhir.mly"
                                              ( a::b )
-# 32651 "parser_cocci_menhir.ml"
+# 33141 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32689,14 +33179,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32693 "parser_cocci_menhir.ml"
+# 33183 "parser_cocci_menhir.ml"
         ) = Obj.magic c0 in
         let b0 : 'tv_nest_start = Obj.magic b0 in
         let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
         let a0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32700 "parser_cocci_menhir.ml"
+# 33190 "parser_cocci_menhir.ml"
         ) = Obj.magic a0 in
         let _startpos = _startpos_a0_ in
         let _endpos = _endpos_b_ in
@@ -32706,16 +33196,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let w = w0 in
           let a = a0 in
           
-# 930 "parser_cocci_menhir.mly"
+# 939 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
                          P.clt2mcode "...>" c, List.concat w, false)) )
-# 32713 "parser_cocci_menhir.ml"
+# 33203 "parser_cocci_menhir.ml"
           
         in
         
-# 1796 "parser_cocci_menhir.mly"
+# 1809 "parser_cocci_menhir.mly"
                                               ( a::b )
-# 32719 "parser_cocci_menhir.ml"
+# 33209 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32757,14 +33247,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32761 "parser_cocci_menhir.ml"
+# 33251 "parser_cocci_menhir.ml"
         ) = Obj.magic c0 in
         let b0 : 'tv_nest_start = Obj.magic b0 in
         let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
         let a0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32768 "parser_cocci_menhir.ml"
+# 33258 "parser_cocci_menhir.ml"
         ) = Obj.magic a0 in
         let _startpos = _startpos_a0_ in
         let _endpos = _endpos_b_ in
@@ -32774,16 +33264,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let w = w0 in
           let a = a0 in
           
-# 933 "parser_cocci_menhir.mly"
+# 942 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
                          P.clt2mcode "...+>" c, List.concat w, true)) )
-# 32781 "parser_cocci_menhir.ml"
+# 33271 "parser_cocci_menhir.ml"
           
         in
         
-# 1796 "parser_cocci_menhir.mly"
+# 1809 "parser_cocci_menhir.mly"
                                               ( a::b )
-# 32787 "parser_cocci_menhir.ml"
+# 33277 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32819,14 +33309,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32823 "parser_cocci_menhir.ml"
+# 33313 "parser_cocci_menhir.ml"
         ) = Obj.magic c0 in
         let b0 : 'tv_nest_start = Obj.magic b0 in
         let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
         let a0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32830 "parser_cocci_menhir.ml"
+# 33320 "parser_cocci_menhir.ml"
         ) = Obj.magic a0 in
         let _startpos = _startpos_a0_ in
         let _endpos = _endpos_c0_ in
@@ -32836,16 +33326,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let w = w0 in
           let a = a0 in
           
-# 930 "parser_cocci_menhir.mly"
+# 939 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
                          P.clt2mcode "...>" c, List.concat w, false)) )
-# 32843 "parser_cocci_menhir.ml"
+# 33333 "parser_cocci_menhir.ml"
           
         in
         
-# 1797 "parser_cocci_menhir.mly"
+# 1810 "parser_cocci_menhir.mly"
                                        ( [a] )
-# 32849 "parser_cocci_menhir.ml"
+# 33339 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32881,14 +33371,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let c0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32885 "parser_cocci_menhir.ml"
+# 33375 "parser_cocci_menhir.ml"
         ) = Obj.magic c0 in
         let b0 : 'tv_nest_start = Obj.magic b0 in
         let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
         let a0 : (
 # 76 "parser_cocci_menhir.mly"
        (Data.clt)
-# 32892 "parser_cocci_menhir.ml"
+# 33382 "parser_cocci_menhir.ml"
         ) = Obj.magic a0 in
         let _startpos = _startpos_a0_ in
         let _endpos = _endpos_c0_ in
@@ -32898,16 +33388,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let w = w0 in
           let a = a0 in
           
-# 933 "parser_cocci_menhir.mly"
+# 942 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
                          P.clt2mcode "...+>" c, List.concat w, true)) )
-# 32905 "parser_cocci_menhir.ml"
+# 33395 "parser_cocci_menhir.ml"
           
         in
         
-# 1797 "parser_cocci_menhir.mly"
+# 1810 "parser_cocci_menhir.mly"
                                        ( [a] )
-# 32911 "parser_cocci_menhir.ml"
+# 33401 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32935,9 +33425,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = 
-# 1798 "parser_cocci_menhir.mly"
+# 1811 "parser_cocci_menhir.mly"
                                      ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
-# 32941 "parser_cocci_menhir.ml"
+# 33431 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32965,9 +33455,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = 
-# 1799 "parser_cocci_menhir.mly"
+# 1812 "parser_cocci_menhir.mly"
                                           ( _1@_2 )
-# 32971 "parser_cocci_menhir.ml"
+# 33461 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -32999,12 +33489,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33003 "parser_cocci_menhir.ml"
+# 33493 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33008 "parser_cocci_menhir.ml"
+# 33498 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33014,28 +33504,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 33020 "parser_cocci_menhir.ml"
+# 33510 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33026 "parser_cocci_menhir.ml"
+# 33516 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33033 "parser_cocci_menhir.ml"
+# 33523 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33039 "parser_cocci_menhir.ml"
+# 33529 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33067,12 +33557,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33071 "parser_cocci_menhir.ml"
+# 33561 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33076 "parser_cocci_menhir.ml"
+# 33566 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33082,28 +33572,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 33088 "parser_cocci_menhir.ml"
+# 33578 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33094 "parser_cocci_menhir.ml"
+# 33584 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33101 "parser_cocci_menhir.ml"
+# 33591 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33107 "parser_cocci_menhir.ml"
+# 33597 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33135,12 +33625,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33139 "parser_cocci_menhir.ml"
+# 33629 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33144 "parser_cocci_menhir.ml"
+# 33634 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33150,28 +33640,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 33156 "parser_cocci_menhir.ml"
+# 33646 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33162 "parser_cocci_menhir.ml"
+# 33652 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33169 "parser_cocci_menhir.ml"
+# 33659 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33175 "parser_cocci_menhir.ml"
+# 33665 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33203,12 +33693,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 33207 "parser_cocci_menhir.ml"
+# 33697 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33212 "parser_cocci_menhir.ml"
+# 33702 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33218,29 +33708,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 33225 "parser_cocci_menhir.ml"
+# 33715 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33231 "parser_cocci_menhir.ml"
+# 33721 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33238 "parser_cocci_menhir.ml"
+# 33728 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33244 "parser_cocci_menhir.ml"
+# 33734 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33281,17 +33771,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 33285 "parser_cocci_menhir.ml"
+# 33775 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 33290 "parser_cocci_menhir.ml"
+# 33780 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33295 "parser_cocci_menhir.ml"
+# 33785 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let _startpos = _startpos_r1_ in
         let _endpos = _endpos_m_ in
@@ -33303,33 +33793,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 33314 "parser_cocci_menhir.ml"
+# 33804 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33320 "parser_cocci_menhir.ml"
+# 33810 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33327 "parser_cocci_menhir.ml"
+# 33817 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33333 "parser_cocci_menhir.ml"
+# 33823 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33361,12 +33851,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33365 "parser_cocci_menhir.ml"
+# 33855 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33370 "parser_cocci_menhir.ml"
+# 33860 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33376,28 +33866,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 33382 "parser_cocci_menhir.ml"
+# 33872 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33388 "parser_cocci_menhir.ml"
+# 33878 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33395 "parser_cocci_menhir.ml"
+# 33885 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33401 "parser_cocci_menhir.ml"
+# 33891 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33434,17 +33924,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33438 "parser_cocci_menhir.ml"
+# 33928 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33443 "parser_cocci_menhir.ml"
+# 33933 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33448 "parser_cocci_menhir.ml"
+# 33938 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33456,31 +33946,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 33465 "parser_cocci_menhir.ml"
+# 33955 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33471 "parser_cocci_menhir.ml"
+# 33961 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33478 "parser_cocci_menhir.ml"
+# 33968 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33484 "parser_cocci_menhir.ml"
+# 33974 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33512,12 +34002,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33516 "parser_cocci_menhir.ml"
+# 34006 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33521 "parser_cocci_menhir.ml"
+# 34011 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33527,28 +34017,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 33533 "parser_cocci_menhir.ml"
+# 34023 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33539 "parser_cocci_menhir.ml"
+# 34029 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33546 "parser_cocci_menhir.ml"
+# 34036 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33552 "parser_cocci_menhir.ml"
+# 34042 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33580,12 +34070,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33584 "parser_cocci_menhir.ml"
+# 34074 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33589 "parser_cocci_menhir.ml"
+# 34079 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33595,28 +34085,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 33601 "parser_cocci_menhir.ml"
+# 34091 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33607 "parser_cocci_menhir.ml"
+# 34097 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33614 "parser_cocci_menhir.ml"
+# 34104 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33620 "parser_cocci_menhir.ml"
+# 34110 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33648,12 +34138,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33652 "parser_cocci_menhir.ml"
+# 34142 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33657 "parser_cocci_menhir.ml"
+# 34147 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33663,28 +34153,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 33669 "parser_cocci_menhir.ml"
+# 34159 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33675 "parser_cocci_menhir.ml"
+# 34165 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33682 "parser_cocci_menhir.ml"
+# 34172 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33688 "parser_cocci_menhir.ml"
+# 34178 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33716,12 +34206,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 33720 "parser_cocci_menhir.ml"
+# 34210 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33725 "parser_cocci_menhir.ml"
+# 34215 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33731,29 +34221,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 33738 "parser_cocci_menhir.ml"
+# 34228 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33744 "parser_cocci_menhir.ml"
+# 34234 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33751 "parser_cocci_menhir.ml"
+# 34241 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33757 "parser_cocci_menhir.ml"
+# 34247 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33794,17 +34284,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 33798 "parser_cocci_menhir.ml"
+# 34288 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 33803 "parser_cocci_menhir.ml"
+# 34293 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33808 "parser_cocci_menhir.ml"
+# 34298 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let _startpos = _startpos_r1_ in
         let _endpos = _endpos_m_ in
@@ -33816,33 +34306,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 33827 "parser_cocci_menhir.ml"
+# 34317 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33833 "parser_cocci_menhir.ml"
+# 34323 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33840 "parser_cocci_menhir.ml"
+# 34330 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33846 "parser_cocci_menhir.ml"
+# 34336 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33874,12 +34364,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33878 "parser_cocci_menhir.ml"
+# 34368 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33883 "parser_cocci_menhir.ml"
+# 34373 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33889,28 +34379,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 33895 "parser_cocci_menhir.ml"
+# 34385 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33901 "parser_cocci_menhir.ml"
+# 34391 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33908 "parser_cocci_menhir.ml"
+# 34398 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33914 "parser_cocci_menhir.ml"
+# 34404 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -33947,17 +34437,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33951 "parser_cocci_menhir.ml"
+# 34441 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33956 "parser_cocci_menhir.ml"
+# 34446 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 33961 "parser_cocci_menhir.ml"
+# 34451 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let _startpos = _startpos_r0_ in
         let _endpos = _endpos_m_ in
@@ -33969,31 +34459,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 33978 "parser_cocci_menhir.ml"
+# 34468 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 33984 "parser_cocci_menhir.ml"
+# 34474 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 33991 "parser_cocci_menhir.ml"
+# 34481 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 33997 "parser_cocci_menhir.ml"
+# 34487 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34020,7 +34510,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34024 "parser_cocci_menhir.ml"
+# 34514 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34029,28 +34519,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 34035 "parser_cocci_menhir.ml"
+# 34525 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34041 "parser_cocci_menhir.ml"
+# 34531 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34048 "parser_cocci_menhir.ml"
+# 34538 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34054 "parser_cocci_menhir.ml"
+# 34544 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34077,7 +34567,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34081 "parser_cocci_menhir.ml"
+# 34571 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34086,28 +34576,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 34092 "parser_cocci_menhir.ml"
+# 34582 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34098 "parser_cocci_menhir.ml"
+# 34588 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34105 "parser_cocci_menhir.ml"
+# 34595 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34111 "parser_cocci_menhir.ml"
+# 34601 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34134,7 +34624,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34138 "parser_cocci_menhir.ml"
+# 34628 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34143,28 +34633,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 34149 "parser_cocci_menhir.ml"
+# 34639 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34155 "parser_cocci_menhir.ml"
+# 34645 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34162 "parser_cocci_menhir.ml"
+# 34652 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34168 "parser_cocci_menhir.ml"
+# 34658 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34191,7 +34681,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 34195 "parser_cocci_menhir.ml"
+# 34685 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let _startpos = _startpos_p00_ in
         let _endpos = _endpos_m_ in
@@ -34200,29 +34690,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 34207 "parser_cocci_menhir.ml"
+# 34697 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34213 "parser_cocci_menhir.ml"
+# 34703 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34220 "parser_cocci_menhir.ml"
+# 34710 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34226 "parser_cocci_menhir.ml"
+# 34716 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34258,12 +34748,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 34262 "parser_cocci_menhir.ml"
+# 34752 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 34267 "parser_cocci_menhir.ml"
+# 34757 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let _startpos = _startpos_r00_ in
         let _endpos = _endpos_m_ in
@@ -34274,33 +34764,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 34285 "parser_cocci_menhir.ml"
+# 34775 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34291 "parser_cocci_menhir.ml"
+# 34781 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34298 "parser_cocci_menhir.ml"
+# 34788 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34304 "parser_cocci_menhir.ml"
+# 34794 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34327,7 +34817,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34331 "parser_cocci_menhir.ml"
+# 34821 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34336,28 +34826,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 34342 "parser_cocci_menhir.ml"
+# 34832 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34348 "parser_cocci_menhir.ml"
+# 34838 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34355 "parser_cocci_menhir.ml"
+# 34845 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34361 "parser_cocci_menhir.ml"
+# 34851 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34389,12 +34879,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34393 "parser_cocci_menhir.ml"
+# 34883 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34398 "parser_cocci_menhir.ml"
+# 34888 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let _startpos = _startpos_ty100_ in
         let _endpos = _endpos_m_ in
@@ -34405,31 +34895,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 34414 "parser_cocci_menhir.ml"
+# 34904 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 34420 "parser_cocci_menhir.ml"
+# 34910 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34427 "parser_cocci_menhir.ml"
+# 34917 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34433 "parser_cocci_menhir.ml"
+# 34923 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34456,7 +34946,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34460 "parser_cocci_menhir.ml"
+# 34950 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34465,28 +34955,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 541 "parser_cocci_menhir.mly"
+# 549 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 34471 "parser_cocci_menhir.ml"
+# 34961 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34477 "parser_cocci_menhir.ml"
+# 34967 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34484 "parser_cocci_menhir.ml"
+# 34974 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34490 "parser_cocci_menhir.ml"
+# 34980 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34513,7 +35003,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34517 "parser_cocci_menhir.ml"
+# 35007 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34522,28 +35012,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 543 "parser_cocci_menhir.mly"
+# 551 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 34528 "parser_cocci_menhir.ml"
+# 35018 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34534 "parser_cocci_menhir.ml"
+# 35024 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34541 "parser_cocci_menhir.ml"
+# 35031 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34547 "parser_cocci_menhir.ml"
+# 35037 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34570,7 +35060,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34574 "parser_cocci_menhir.ml"
+# 35064 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let _startpos = _startpos_ty00_ in
         let _endpos = _endpos_m_ in
@@ -34579,28 +35069,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 545 "parser_cocci_menhir.mly"
+# 553 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 34585 "parser_cocci_menhir.ml"
+# 35075 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34591 "parser_cocci_menhir.ml"
+# 35081 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34598 "parser_cocci_menhir.ml"
+# 35088 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34604 "parser_cocci_menhir.ml"
+# 35094 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34633,7 +35123,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 34637 "parser_cocci_menhir.ml"
+# 35127 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
         let _endpos = _endpos_m_ in
@@ -34644,28 +35134,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 547 "parser_cocci_menhir.mly"
+# 555 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 34650 "parser_cocci_menhir.ml"
+# 35140 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34656 "parser_cocci_menhir.ml"
+# 35146 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34663 "parser_cocci_menhir.ml"
+# 35153 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34669 "parser_cocci_menhir.ml"
+# 35159 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34705,28 +35195,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 549 "parser_cocci_menhir.mly"
+# 557 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 34711 "parser_cocci_menhir.ml"
+# 35201 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34717 "parser_cocci_menhir.ml"
+# 35207 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34724 "parser_cocci_menhir.ml"
+# 35214 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34730 "parser_cocci_menhir.ml"
+# 35220 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34768,13 +35258,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34772 "parser_cocci_menhir.ml"
+# 35262 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34778 "parser_cocci_menhir.ml"
+# 35268 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
@@ -34793,36 +35283,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 39 "standard.mly"
     ( None )
-# 34797 "parser_cocci_menhir.ml"
+# 35287 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 34807 "parser_cocci_menhir.ml"
+# 35297 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34813 "parser_cocci_menhir.ml"
+# 35303 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34820 "parser_cocci_menhir.ml"
+# 35310 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34826 "parser_cocci_menhir.ml"
+# 35316 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34869,13 +35359,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34873 "parser_cocci_menhir.ml"
+# 35363 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34879 "parser_cocci_menhir.ml"
+# 35369 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let x000 : 'tv_ident = Obj.magic x000 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
@@ -34898,36 +35388,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 41 "standard.mly"
     ( Some x )
-# 34902 "parser_cocci_menhir.ml"
+# 35392 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 34912 "parser_cocci_menhir.ml"
+# 35402 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 34918 "parser_cocci_menhir.ml"
+# 35408 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 34925 "parser_cocci_menhir.ml"
+# 35415 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 34931 "parser_cocci_menhir.ml"
+# 35421 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -34969,18 +35459,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34973 "parser_cocci_menhir.ml"
+# 35463 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 34979 "parser_cocci_menhir.ml"
+# 35469 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 34984 "parser_cocci_menhir.ml"
+# 35474 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let _startpos = _startpos_s00_ in
         let _endpos = _endpos_m_ in
@@ -34995,30 +35485,30 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let l = l0 in
             let s = s0 in
             
-# 558 "parser_cocci_menhir.mly"
+# 566 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = s in
     let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
     Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 35003 "parser_cocci_menhir.ml"
+# 35493 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 35009 "parser_cocci_menhir.ml"
+# 35499 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 35016 "parser_cocci_menhir.ml"
+# 35506 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35022 "parser_cocci_menhir.ml"
+# 35512 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35045,7 +35535,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 35049 "parser_cocci_menhir.ml"
+# 35539 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let _startpos = _startpos_p00_ in
         let _endpos = _endpos_m_ in
@@ -35054,28 +35544,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 562 "parser_cocci_menhir.mly"
+# 570 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 35060 "parser_cocci_menhir.ml"
+# 35550 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 35066 "parser_cocci_menhir.ml"
+# 35556 "parser_cocci_menhir.ml"
           
         in
         let cv =
           
 # 39 "standard.mly"
     ( None )
-# 35073 "parser_cocci_menhir.ml"
+# 35563 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35079 "parser_cocci_menhir.ml"
+# 35569 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35112,12 +35602,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35116 "parser_cocci_menhir.ml"
+# 35606 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35121 "parser_cocci_menhir.ml"
+# 35611 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35128,15 +35618,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 35134 "parser_cocci_menhir.ml"
+# 35624 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35140 "parser_cocci_menhir.ml"
+# 35630 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35144,13 +35634,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35148 "parser_cocci_menhir.ml"
+# 35638 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35154 "parser_cocci_menhir.ml"
+# 35644 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35187,12 +35677,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35191 "parser_cocci_menhir.ml"
+# 35681 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35196 "parser_cocci_menhir.ml"
+# 35686 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35203,15 +35693,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 35209 "parser_cocci_menhir.ml"
+# 35699 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35215 "parser_cocci_menhir.ml"
+# 35705 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35219,13 +35709,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35223 "parser_cocci_menhir.ml"
+# 35713 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35229 "parser_cocci_menhir.ml"
+# 35719 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35262,12 +35752,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35266 "parser_cocci_menhir.ml"
+# 35756 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35271 "parser_cocci_menhir.ml"
+# 35761 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35278,15 +35768,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 35284 "parser_cocci_menhir.ml"
+# 35774 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35290 "parser_cocci_menhir.ml"
+# 35780 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35294,13 +35784,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35298 "parser_cocci_menhir.ml"
+# 35788 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35304 "parser_cocci_menhir.ml"
+# 35794 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35337,12 +35827,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 35341 "parser_cocci_menhir.ml"
+# 35831 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35346 "parser_cocci_menhir.ml"
+# 35836 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35353,16 +35843,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 35360 "parser_cocci_menhir.ml"
+# 35850 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35366 "parser_cocci_menhir.ml"
+# 35856 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35370,13 +35860,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35374 "parser_cocci_menhir.ml"
+# 35864 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35380 "parser_cocci_menhir.ml"
+# 35870 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35422,17 +35912,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 35426 "parser_cocci_menhir.ml"
+# 35916 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 35431 "parser_cocci_menhir.ml"
+# 35921 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35436 "parser_cocci_menhir.ml"
+# 35926 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35445,20 +35935,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 35456 "parser_cocci_menhir.ml"
+# 35946 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35462 "parser_cocci_menhir.ml"
+# 35952 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35466,13 +35956,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35470 "parser_cocci_menhir.ml"
+# 35960 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35476 "parser_cocci_menhir.ml"
+# 35966 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35509,12 +35999,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35513 "parser_cocci_menhir.ml"
+# 36003 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35518 "parser_cocci_menhir.ml"
+# 36008 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35525,15 +36015,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 35531 "parser_cocci_menhir.ml"
+# 36021 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35537 "parser_cocci_menhir.ml"
+# 36027 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35541,13 +36031,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35545 "parser_cocci_menhir.ml"
+# 36035 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35551 "parser_cocci_menhir.ml"
+# 36041 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35589,17 +36079,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35593 "parser_cocci_menhir.ml"
+# 36083 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35598 "parser_cocci_menhir.ml"
+# 36088 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35603 "parser_cocci_menhir.ml"
+# 36093 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35612,18 +36102,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 35621 "parser_cocci_menhir.ml"
+# 36111 "parser_cocci_menhir.ml"
             
           in
           
-# 567 "parser_cocci_menhir.mly"
+# 575 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 35627 "parser_cocci_menhir.ml"
+# 36117 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35631,13 +36121,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35635 "parser_cocci_menhir.ml"
+# 36125 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35641 "parser_cocci_menhir.ml"
+# 36131 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35674,12 +36164,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35678 "parser_cocci_menhir.ml"
+# 36168 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35683 "parser_cocci_menhir.ml"
+# 36173 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35690,15 +36180,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 35696 "parser_cocci_menhir.ml"
+# 36186 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 35702 "parser_cocci_menhir.ml"
+# 36192 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35706,13 +36196,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35710 "parser_cocci_menhir.ml"
+# 36200 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35716 "parser_cocci_menhir.ml"
+# 36206 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35749,12 +36239,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35753 "parser_cocci_menhir.ml"
+# 36243 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35758 "parser_cocci_menhir.ml"
+# 36248 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35765,15 +36255,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 35771 "parser_cocci_menhir.ml"
+# 36261 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 35777 "parser_cocci_menhir.ml"
+# 36267 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35781,13 +36271,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35785 "parser_cocci_menhir.ml"
+# 36275 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35791 "parser_cocci_menhir.ml"
+# 36281 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35824,12 +36314,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35828 "parser_cocci_menhir.ml"
+# 36318 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35833 "parser_cocci_menhir.ml"
+# 36323 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35840,15 +36330,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 35846 "parser_cocci_menhir.ml"
+# 36336 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 35852 "parser_cocci_menhir.ml"
+# 36342 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35856,13 +36346,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35860 "parser_cocci_menhir.ml"
+# 36350 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35866 "parser_cocci_menhir.ml"
+# 36356 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35899,12 +36389,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 35903 "parser_cocci_menhir.ml"
+# 36393 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35908 "parser_cocci_menhir.ml"
+# 36398 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -35915,16 +36405,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 35922 "parser_cocci_menhir.ml"
+# 36412 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 35928 "parser_cocci_menhir.ml"
+# 36418 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -35932,13 +36422,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 35936 "parser_cocci_menhir.ml"
+# 36426 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 35942 "parser_cocci_menhir.ml"
+# 36432 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -35984,17 +36474,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 35988 "parser_cocci_menhir.ml"
+# 36478 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 35993 "parser_cocci_menhir.ml"
+# 36483 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let r1 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 35998 "parser_cocci_menhir.ml"
+# 36488 "parser_cocci_menhir.ml"
         ) = Obj.magic r1 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36007,20 +36497,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 36018 "parser_cocci_menhir.ml"
+# 36508 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 36024 "parser_cocci_menhir.ml"
+# 36514 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36028,13 +36518,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36032 "parser_cocci_menhir.ml"
+# 36522 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36038 "parser_cocci_menhir.ml"
+# 36528 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36071,12 +36561,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36075 "parser_cocci_menhir.ml"
+# 36565 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36080 "parser_cocci_menhir.ml"
+# 36570 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36087,15 +36577,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 36093 "parser_cocci_menhir.ml"
+# 36583 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 36099 "parser_cocci_menhir.ml"
+# 36589 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36103,13 +36593,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36107 "parser_cocci_menhir.ml"
+# 36597 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36113 "parser_cocci_menhir.ml"
+# 36603 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36151,17 +36641,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36155 "parser_cocci_menhir.ml"
+# 36645 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36160 "parser_cocci_menhir.ml"
+# 36650 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let r0 : (
 # 53 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36165 "parser_cocci_menhir.ml"
+# 36655 "parser_cocci_menhir.ml"
         ) = Obj.magic r0 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36174,18 +36664,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 36183 "parser_cocci_menhir.ml"
+# 36673 "parser_cocci_menhir.ml"
             
           in
           
-# 569 "parser_cocci_menhir.mly"
+# 577 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 36189 "parser_cocci_menhir.ml"
+# 36679 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36193,13 +36683,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36197 "parser_cocci_menhir.ml"
+# 36687 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36203 "parser_cocci_menhir.ml"
+# 36693 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36231,7 +36721,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36235 "parser_cocci_menhir.ml"
+# 36725 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36241,15 +36731,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 515 "parser_cocci_menhir.mly"
+# 523 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 36247 "parser_cocci_menhir.ml"
+# 36737 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36253 "parser_cocci_menhir.ml"
+# 36743 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36257,13 +36747,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36261 "parser_cocci_menhir.ml"
+# 36751 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36267 "parser_cocci_menhir.ml"
+# 36757 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36295,7 +36785,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36299 "parser_cocci_menhir.ml"
+# 36789 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36305,15 +36795,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 517 "parser_cocci_menhir.mly"
+# 525 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 36311 "parser_cocci_menhir.ml"
+# 36801 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36317 "parser_cocci_menhir.ml"
+# 36807 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36321,13 +36811,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36325 "parser_cocci_menhir.ml"
+# 36815 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36331 "parser_cocci_menhir.ml"
+# 36821 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36359,7 +36849,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36363 "parser_cocci_menhir.ml"
+# 36853 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36369,15 +36859,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 519 "parser_cocci_menhir.mly"
+# 527 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 36375 "parser_cocci_menhir.ml"
+# 36865 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36381 "parser_cocci_menhir.ml"
+# 36871 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36385,13 +36875,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36389 "parser_cocci_menhir.ml"
+# 36879 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36395 "parser_cocci_menhir.ml"
+# 36885 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36423,7 +36913,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 36427 "parser_cocci_menhir.ml"
+# 36917 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36433,16 +36923,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 521 "parser_cocci_menhir.mly"
+# 529 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = p in
       Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 36440 "parser_cocci_menhir.ml"
+# 36930 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36446 "parser_cocci_menhir.ml"
+# 36936 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36450,13 +36940,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36454 "parser_cocci_menhir.ml"
+# 36944 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36460 "parser_cocci_menhir.ml"
+# 36950 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36497,12 +36987,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 36501 "parser_cocci_menhir.ml"
+# 36991 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let r00 : (
 # 49 "parser_cocci_menhir.mly"
       (string)
-# 36506 "parser_cocci_menhir.ml"
+# 36996 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36514,20 +37004,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let p = p0 in
             let r = r0 in
             
-# 524 "parser_cocci_menhir.mly"
+# 532 "parser_cocci_menhir.mly"
     ( let nm = (r,P.id2name p) in
     (* this is only possible when we are in a metavar decl.  Otherwise,
        it will be represented already as a MetaType *)
     let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
     Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
                            Ast0.Impure (*will be ignored*))) )
-# 36525 "parser_cocci_menhir.ml"
+# 37015 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36531 "parser_cocci_menhir.ml"
+# 37021 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36535,13 +37025,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36539 "parser_cocci_menhir.ml"
+# 37029 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36545 "parser_cocci_menhir.ml"
+# 37035 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36573,7 +37063,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36577 "parser_cocci_menhir.ml"
+# 37067 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36583,15 +37073,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 531 "parser_cocci_menhir.mly"
+# 539 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 36589 "parser_cocci_menhir.ml"
+# 37079 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36595 "parser_cocci_menhir.ml"
+# 37085 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36599,13 +37089,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36603 "parser_cocci_menhir.ml"
+# 37093 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36609 "parser_cocci_menhir.ml"
+# 37099 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36642,12 +37132,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty200 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36646 "parser_cocci_menhir.ml"
+# 37136 "parser_cocci_menhir.ml"
         ) = Obj.magic ty200 in
         let ty100 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36651 "parser_cocci_menhir.ml"
+# 37141 "parser_cocci_menhir.ml"
         ) = Obj.magic ty100 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36659,18 +37149,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let ty2 = ty20 in
             let ty1 = ty10 in
             
-# 533 "parser_cocci_menhir.mly"
+# 541 "parser_cocci_menhir.mly"
     ( Ast0.wrap
        (Ast0.BaseType
           (Ast.LongLongType,
            [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 36668 "parser_cocci_menhir.ml"
+# 37158 "parser_cocci_menhir.ml"
             
           in
           
-# 570 "parser_cocci_menhir.mly"
+# 578 "parser_cocci_menhir.mly"
                     ( ty )
-# 36674 "parser_cocci_menhir.ml"
+# 37164 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36678,13 +37168,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36682 "parser_cocci_menhir.ml"
+# 37172 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36688 "parser_cocci_menhir.ml"
+# 37178 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36716,7 +37206,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36720 "parser_cocci_menhir.ml"
+# 37210 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36726,15 +37216,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 541 "parser_cocci_menhir.mly"
+# 549 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 36732 "parser_cocci_menhir.ml"
+# 37222 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 36738 "parser_cocci_menhir.ml"
+# 37228 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36742,13 +37232,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36746 "parser_cocci_menhir.ml"
+# 37236 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36752 "parser_cocci_menhir.ml"
+# 37242 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36780,7 +37270,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36784 "parser_cocci_menhir.ml"
+# 37274 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36790,15 +37280,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 543 "parser_cocci_menhir.mly"
+# 551 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 36796 "parser_cocci_menhir.ml"
+# 37286 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 36802 "parser_cocci_menhir.ml"
+# 37292 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36806,13 +37296,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36810 "parser_cocci_menhir.ml"
+# 37300 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36816 "parser_cocci_menhir.ml"
+# 37306 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36844,7 +37334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let ty00 : (
 # 51 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36848 "parser_cocci_menhir.ml"
+# 37338 "parser_cocci_menhir.ml"
         ) = Obj.magic ty00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36854,15 +37344,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let ty = ty0 in
             
-# 545 "parser_cocci_menhir.mly"
+# 553 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 36860 "parser_cocci_menhir.ml"
+# 37350 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 36866 "parser_cocci_menhir.ml"
+# 37356 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36870,13 +37360,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36874 "parser_cocci_menhir.ml"
+# 37364 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36880 "parser_cocci_menhir.ml"
+# 37370 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36914,7 +37404,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let s00 : (
 # 52 "parser_cocci_menhir.mly"
       (Data.clt)
-# 36918 "parser_cocci_menhir.ml"
+# 37408 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -36926,15 +37416,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 547 "parser_cocci_menhir.mly"
+# 555 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 36932 "parser_cocci_menhir.ml"
+# 37422 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 36938 "parser_cocci_menhir.ml"
+# 37428 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -36942,13 +37432,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 36946 "parser_cocci_menhir.ml"
+# 37436 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 36952 "parser_cocci_menhir.ml"
+# 37442 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -36994,15 +37484,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let i = i0 in
             let s = s0 in
             
-# 549 "parser_cocci_menhir.mly"
+# 557 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 37000 "parser_cocci_menhir.ml"
+# 37490 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 37006 "parser_cocci_menhir.ml"
+# 37496 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -37010,13 +37500,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 37014 "parser_cocci_menhir.ml"
+# 37504 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 37020 "parser_cocci_menhir.ml"
+# 37510 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37063,13 +37553,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37067 "parser_cocci_menhir.ml"
+# 37557 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37073 "parser_cocci_menhir.ml"
+# 37563 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
@@ -37089,23 +37579,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 39 "standard.mly"
     ( None )
-# 37093 "parser_cocci_menhir.ml"
+# 37583 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 37103 "parser_cocci_menhir.ml"
+# 37593 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 37109 "parser_cocci_menhir.ml"
+# 37599 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -37113,13 +37603,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 37117 "parser_cocci_menhir.ml"
+# 37607 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 37123 "parser_cocci_menhir.ml"
+# 37613 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37171,13 +37661,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37175 "parser_cocci_menhir.ml"
+# 37665 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37181 "parser_cocci_menhir.ml"
+# 37671 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let x000 : 'tv_ident = Obj.magic x000 in
         let s00 : 'tv_struct_or_union = Obj.magic s00 in
@@ -37201,23 +37691,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
               
 # 41 "standard.mly"
     ( Some x )
-# 37205 "parser_cocci_menhir.ml"
+# 37695 "parser_cocci_menhir.ml"
               
             in
             
-# 552 "parser_cocci_menhir.mly"
+# 560 "parser_cocci_menhir.mly"
     ( (if i = None && !Data.in_iso
     then failwith "structures must be named in the iso file");
       Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
                                    P.clt2mcode "{" l,
                                    d, P.clt2mcode "}" r)) )
-# 37215 "parser_cocci_menhir.ml"
+# 37705 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 37221 "parser_cocci_menhir.ml"
+# 37711 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -37225,13 +37715,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 37229 "parser_cocci_menhir.ml"
+# 37719 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 37235 "parser_cocci_menhir.ml"
+# 37725 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37278,18 +37768,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let r00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37282 "parser_cocci_menhir.ml"
+# 37772 "parser_cocci_menhir.ml"
         ) = Obj.magic r00 in
         let d00 : 'tv_struct_decl_list = Obj.magic d00 in
         let l00 : (
 # 104 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37288 "parser_cocci_menhir.ml"
+# 37778 "parser_cocci_menhir.ml"
         ) = Obj.magic l00 in
         let s00 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 37293 "parser_cocci_menhir.ml"
+# 37783 "parser_cocci_menhir.ml"
         ) = Obj.magic s00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -37305,17 +37795,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
             let l = l0 in
             let s = s0 in
             
-# 558 "parser_cocci_menhir.mly"
+# 566 "parser_cocci_menhir.mly"
     ( let (nm,pure,clt) = s in
     let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
     Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 37313 "parser_cocci_menhir.ml"
+# 37803 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 37319 "parser_cocci_menhir.ml"
+# 37809 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -37323,13 +37813,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 37327 "parser_cocci_menhir.ml"
+# 37817 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 37333 "parser_cocci_menhir.ml"
+# 37823 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37361,7 +37851,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let p00 : (
 # 61 "parser_cocci_menhir.mly"
        (string * Data.clt)
-# 37365 "parser_cocci_menhir.ml"
+# 37855 "parser_cocci_menhir.ml"
         ) = Obj.magic p00 in
         let x0 : 'tv_const_vol = Obj.magic x0 in
         let _startpos = _startpos_x0_ in
@@ -37371,15 +37861,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           let ty =
             let p = p0 in
             
-# 562 "parser_cocci_menhir.mly"
+# 570 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 37377 "parser_cocci_menhir.ml"
+# 37867 "parser_cocci_menhir.ml"
             
           in
           
-# 571 "parser_cocci_menhir.mly"
+# 579 "parser_cocci_menhir.mly"
                         ( ty )
-# 37383 "parser_cocci_menhir.ml"
+# 37873 "parser_cocci_menhir.ml"
           
         in
         let cv =
@@ -37387,13 +37877,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
           
 # 41 "standard.mly"
     ( Some x )
-# 37391 "parser_cocci_menhir.ml"
+# 37881 "parser_cocci_menhir.ml"
           
         in
         
-# 588 "parser_cocci_menhir.mly"
+# 596 "parser_cocci_menhir.mly"
     ( P.pointerify (P.make_cv cv ty) m )
-# 37397 "parser_cocci_menhir.ml"
+# 37887 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37424,22 +37914,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37428 "parser_cocci_menhir.ml"
+# 37918 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37434 "parser_cocci_menhir.ml"
+# 37924 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let _startpos = _startpos_lp_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_typedef_ctype = 
-# 590 "parser_cocci_menhir.mly"
+# 598 "parser_cocci_menhir.mly"
     ( let (mids,code) = t in
       Ast0.wrap
        (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
-# 37443 "parser_cocci_menhir.ml"
+# 37933 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37461,9 +37951,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_typedef_ident = 
-# 1700 "parser_cocci_menhir.mly"
+# 1713 "parser_cocci_menhir.mly"
          ( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) )
-# 37467 "parser_cocci_menhir.ml"
+# 37957 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37484,15 +37974,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 67 "parser_cocci_menhir.mly"
        (Parse_aux.info)
-# 37488 "parser_cocci_menhir.ml"
+# 37978 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_typedef_ident = 
-# 1702 "parser_cocci_menhir.mly"
+# 1715 "parser_cocci_menhir.mly"
          ( let (nm,pure,clt) = _1 in
         Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 37496 "parser_cocci_menhir.ml"
+# 37986 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37514,9 +38004,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1338 "parser_cocci_menhir.mly"
+# 1351 "parser_cocci_menhir.mly"
                                          ( _1 )
-# 37520 "parser_cocci_menhir.ml"
+# 38010 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37543,14 +38033,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37547 "parser_cocci_menhir.ml"
+# 38037 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1340 "parser_cocci_menhir.mly"
+# 1353 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 37554 "parser_cocci_menhir.ml"
+# 38044 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37577,14 +38067,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37581 "parser_cocci_menhir.ml"
+# 38071 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1342 "parser_cocci_menhir.mly"
+# 1355 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 37588 "parser_cocci_menhir.ml"
+# 38078 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37612,9 +38102,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1344 "parser_cocci_menhir.mly"
+# 1357 "parser_cocci_menhir.mly"
       ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37618 "parser_cocci_menhir.ml"
+# 38108 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37641,15 +38131,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37645 "parser_cocci_menhir.ml"
+# 38135 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1346 "parser_cocci_menhir.mly"
+# 1359 "parser_cocci_menhir.mly"
       ( let mcode = P.clt2mcode Ast.Not _1 in
       Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37653 "parser_cocci_menhir.ml"
+# 38143 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37676,14 +38166,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37680 "parser_cocci_menhir.ml"
+# 38170 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1349 "parser_cocci_menhir.mly"
+# 1362 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 37687 "parser_cocci_menhir.ml"
+# 38177 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37719,27 +38209,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37723 "parser_cocci_menhir.ml"
+# 38213 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37729 "parser_cocci_menhir.ml"
+# 38219 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let s : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37734 "parser_cocci_menhir.ml"
+# 38224 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_unary_expr_eexpr_dot_expressions_ = 
-# 1351 "parser_cocci_menhir.mly"
+# 1364 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
                                    P.clt2mcode "(" lp,t,
                                    P.clt2mcode ")" rp)) )
-# 37743 "parser_cocci_menhir.ml"
+# 38233 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37761,9 +38251,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1338 "parser_cocci_menhir.mly"
+# 1351 "parser_cocci_menhir.mly"
                                          ( _1 )
-# 37767 "parser_cocci_menhir.ml"
+# 38257 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37790,14 +38280,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37794 "parser_cocci_menhir.ml"
+# 38284 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1340 "parser_cocci_menhir.mly"
+# 1353 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 37801 "parser_cocci_menhir.ml"
+# 38291 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37824,14 +38314,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37828 "parser_cocci_menhir.ml"
+# 38318 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1342 "parser_cocci_menhir.mly"
+# 1355 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 37835 "parser_cocci_menhir.ml"
+# 38325 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37859,9 +38349,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1344 "parser_cocci_menhir.mly"
+# 1357 "parser_cocci_menhir.mly"
       ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37865 "parser_cocci_menhir.ml"
+# 38355 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37888,15 +38378,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37892 "parser_cocci_menhir.ml"
+# 38382 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1346 "parser_cocci_menhir.mly"
+# 1359 "parser_cocci_menhir.mly"
       ( let mcode = P.clt2mcode Ast.Not _1 in
       Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37900 "parser_cocci_menhir.ml"
+# 38390 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37923,14 +38413,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37927 "parser_cocci_menhir.ml"
+# 38417 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1349 "parser_cocci_menhir.mly"
+# 1362 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 37934 "parser_cocci_menhir.ml"
+# 38424 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -37966,27 +38456,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37970 "parser_cocci_menhir.ml"
+# 38460 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37976 "parser_cocci_menhir.ml"
+# 38466 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let s : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 37981 "parser_cocci_menhir.ml"
+# 38471 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_unary_expr_eexpr_invalid_ = 
-# 1351 "parser_cocci_menhir.mly"
+# 1364 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
                                    P.clt2mcode "(" lp,t,
                                    P.clt2mcode ")" rp)) )
-# 37990 "parser_cocci_menhir.ml"
+# 38480 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38008,9 +38498,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1338 "parser_cocci_menhir.mly"
+# 1351 "parser_cocci_menhir.mly"
                                          ( _1 )
-# 38014 "parser_cocci_menhir.ml"
+# 38504 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38037,14 +38527,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38041 "parser_cocci_menhir.ml"
+# 38531 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1340 "parser_cocci_menhir.mly"
+# 1353 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 38048 "parser_cocci_menhir.ml"
+# 38538 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38071,14 +38561,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38075 "parser_cocci_menhir.ml"
+# 38565 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1342 "parser_cocci_menhir.mly"
+# 1355 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 38082 "parser_cocci_menhir.ml"
+# 38572 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38106,9 +38596,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1344 "parser_cocci_menhir.mly"
+# 1357 "parser_cocci_menhir.mly"
       ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 38112 "parser_cocci_menhir.ml"
+# 38602 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38135,15 +38625,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38139 "parser_cocci_menhir.ml"
+# 38629 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1346 "parser_cocci_menhir.mly"
+# 1359 "parser_cocci_menhir.mly"
       ( let mcode = P.clt2mcode Ast.Not _1 in
       Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 38147 "parser_cocci_menhir.ml"
+# 38637 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38170,14 +38660,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38174 "parser_cocci_menhir.ml"
+# 38664 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1349 "parser_cocci_menhir.mly"
+# 1362 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 38181 "parser_cocci_menhir.ml"
+# 38671 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38213,27 +38703,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38217 "parser_cocci_menhir.ml"
+# 38707 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38223 "parser_cocci_menhir.ml"
+# 38713 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let s : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38228 "parser_cocci_menhir.ml"
+# 38718 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_unary_expr_eexpr_nest_expressions_ = 
-# 1351 "parser_cocci_menhir.mly"
+# 1364 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
                                    P.clt2mcode "(" lp,t,
                                    P.clt2mcode ")" rp)) )
-# 38237 "parser_cocci_menhir.ml"
+# 38727 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38255,9 +38745,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1338 "parser_cocci_menhir.mly"
+# 1351 "parser_cocci_menhir.mly"
                                          ( _1 )
-# 38261 "parser_cocci_menhir.ml"
+# 38751 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38284,14 +38774,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38288 "parser_cocci_menhir.ml"
+# 38778 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1340 "parser_cocci_menhir.mly"
+# 1353 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 38295 "parser_cocci_menhir.ml"
+# 38785 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38318,14 +38808,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 88 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38322 "parser_cocci_menhir.ml"
+# 38812 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1342 "parser_cocci_menhir.mly"
+# 1355 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 38329 "parser_cocci_menhir.ml"
+# 38819 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38353,9 +38843,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1344 "parser_cocci_menhir.mly"
+# 1357 "parser_cocci_menhir.mly"
       ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 38359 "parser_cocci_menhir.ml"
+# 38849 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38382,15 +38872,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38386 "parser_cocci_menhir.ml"
+# 38876 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1346 "parser_cocci_menhir.mly"
+# 1359 "parser_cocci_menhir.mly"
       ( let mcode = P.clt2mcode Ast.Not _1 in
       Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 38394 "parser_cocci_menhir.ml"
+# 38884 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38417,14 +38907,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38421 "parser_cocci_menhir.ml"
+# 38911 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1349 "parser_cocci_menhir.mly"
+# 1362 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 38428 "parser_cocci_menhir.ml"
+# 38918 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38460,27 +38950,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let rp : (
 # 80 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38464 "parser_cocci_menhir.ml"
+# 38954 "parser_cocci_menhir.ml"
         ) = Obj.magic rp in
         let t : 'tv_ctype = Obj.magic t in
         let lp : (
 # 79 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38470 "parser_cocci_menhir.ml"
+# 38960 "parser_cocci_menhir.ml"
         ) = Obj.magic lp in
         let s : (
 # 60 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38475 "parser_cocci_menhir.ml"
+# 38965 "parser_cocci_menhir.ml"
         ) = Obj.magic s in
         let _startpos = _startpos_s_ in
         let _endpos = _endpos_rp_ in
         let _v : 'tv_unary_expr_expr_invalid_ = 
-# 1351 "parser_cocci_menhir.mly"
+# 1364 "parser_cocci_menhir.mly"
       ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
                                    P.clt2mcode "(" lp,t,
                                    P.clt2mcode ")" rp)) )
-# 38484 "parser_cocci_menhir.ml"
+# 38974 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38501,14 +38991,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 96 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38505 "parser_cocci_menhir.ml"
+# 38995 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_op = 
-# 1355 "parser_cocci_menhir.mly"
+# 1368 "parser_cocci_menhir.mly"
                   ( P.clt2mcode Ast.GetRef _1 )
-# 38512 "parser_cocci_menhir.ml"
+# 39002 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38529,14 +39019,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38533 "parser_cocci_menhir.ml"
+# 39023 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_op = 
-# 1356 "parser_cocci_menhir.mly"
+# 1369 "parser_cocci_menhir.mly"
            ( P.clt2mcode Ast.DeRef _1 )
-# 38540 "parser_cocci_menhir.ml"
+# 39030 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38557,14 +39047,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38561 "parser_cocci_menhir.ml"
+# 39051 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_op = 
-# 1357 "parser_cocci_menhir.mly"
+# 1370 "parser_cocci_menhir.mly"
            ( P.clt2mcode Ast.UnPlus _1 )
-# 38568 "parser_cocci_menhir.ml"
+# 39058 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38585,14 +39075,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 101 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38589 "parser_cocci_menhir.ml"
+# 39079 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_op = 
-# 1358 "parser_cocci_menhir.mly"
+# 1371 "parser_cocci_menhir.mly"
            ( P.clt2mcode Ast.UnMinus _1 )
-# 38596 "parser_cocci_menhir.ml"
+# 39086 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38613,14 +39103,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _1 : (
 # 102 "parser_cocci_menhir.mly"
        (Data.clt)
-# 38617 "parser_cocci_menhir.ml"
+# 39107 "parser_cocci_menhir.ml"
         ) = Obj.magic _1 in
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__1_ in
         let _v : 'tv_unary_op = 
-# 1359 "parser_cocci_menhir.mly"
+# 1372 "parser_cocci_menhir.mly"
            ( P.clt2mcode Ast.Tilde _1 )
-# 38624 "parser_cocci_menhir.ml"
+# 39114 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38648,9 +39138,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_when_start = 
-# 1921 "parser_cocci_menhir.mly"
+# 1934 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) )
-# 38654 "parser_cocci_menhir.ml"
+# 39144 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38678,9 +39168,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__2_ in
         let _v : 'tv_when_start = 
-# 1923 "parser_cocci_menhir.mly"
+# 1936 "parser_cocci_menhir.mly"
     ( Ast0.wrap(Ast0.DOTS(_1@_2)) )
-# 38684 "parser_cocci_menhir.ml"
+# 39174 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38702,9 +39192,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos_w_ in
         let _endpos = _endpos_w_ in
         let _v : 'tv_whenppdecs = 
-# 937 "parser_cocci_menhir.mly"
+# 946 "parser_cocci_menhir.mly"
     ( w )
-# 38708 "parser_cocci_menhir.ml"
+# 39198 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38738,9 +39228,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ = 
-# 1990 "parser_cocci_menhir.mly"
+# 2003 "parser_cocci_menhir.mly"
                                          ( [Ast0.WhenNot w] )
-# 38744 "parser_cocci_menhir.ml"
+# 39234 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38774,9 +39264,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ = 
-# 1991 "parser_cocci_menhir.mly"
+# 2004 "parser_cocci_menhir.mly"
                                              ( [Ast0.WhenAlways w] )
-# 38780 "parser_cocci_menhir.ml"
+# 39270 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38806,9 +39296,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__3_ in
         let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ = 
-# 1993 "parser_cocci_menhir.mly"
+# 2006 "parser_cocci_menhir.mly"
       ( List.map (function x -> Ast0.WhenModifier(x)) _2 )
-# 38812 "parser_cocci_menhir.ml"
+# 39302 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38842,9 +39332,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ = 
-# 1994 "parser_cocci_menhir.mly"
+# 2007 "parser_cocci_menhir.mly"
                                         ( [Ast0.WhenNotTrue e] )
-# 38848 "parser_cocci_menhir.ml"
+# 39338 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38878,9 +39368,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
         let _startpos = _startpos__1_ in
         let _endpos = _endpos__4_ in
         let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ = 
-# 1995 "parser_cocci_menhir.mly"
+# 2008 "parser_cocci_menhir.mly"
                                          ( [Ast0.WhenNotFalse e] )
-# 38884 "parser_cocci_menhir.ml"
+# 39374 "parser_cocci_menhir.ml"
          in
         _menhir_env.MenhirLib.EngineTypes.stack <- {
           MenhirLib.EngineTypes.state = _menhir_s;
@@ -38901,90 +39391,90 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
 
 let rec script_meta_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1828 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1848 lexer lexbuf) : (
 # 164 "parser_cocci_menhir.mly"
-       ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
-# 38908 "parser_cocci_menhir.ml"
+       ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 39398 "parser_cocci_menhir.ml"
     ))
 
 and rule_name =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1756 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1773 lexer lexbuf) : (
 # 158 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 38916 "parser_cocci_menhir.ml"
+# 39406 "parser_cocci_menhir.ml"
     ))
 
 and reinit =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1754 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1771 lexer lexbuf) : (
 # 136 "parser_cocci_menhir.mly"
       (unit)
-# 38924 "parser_cocci_menhir.ml"
+# 39414 "parser_cocci_menhir.ml"
     ))
 
 and plus_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1718 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1735 lexer lexbuf) : (
 # 145 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 38932 "parser_cocci_menhir.ml"
+# 39422 "parser_cocci_menhir.ml"
     ))
 
 and plus_exp_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1710 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1727 lexer lexbuf) : (
 # 148 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 38940 "parser_cocci_menhir.ml"
+# 39430 "parser_cocci_menhir.ml"
     ))
 
 and never_used =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1704 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1721 lexer lexbuf) : (
 # 173 "parser_cocci_menhir.mly"
       (unit)
-# 38948 "parser_cocci_menhir.ml"
+# 39438 "parser_cocci_menhir.ml"
     ))
 
 and minus_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1624 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1641 lexer lexbuf) : (
 # 139 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 38956 "parser_cocci_menhir.ml"
+# 39446 "parser_cocci_menhir.ml"
     ))
 
 and minus_exp_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1612 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1629 lexer lexbuf) : (
 # 142 "parser_cocci_menhir.mly"
       (Ast0_cocci.rule)
-# 38964 "parser_cocci_menhir.ml"
+# 39454 "parser_cocci_menhir.ml"
     ))
 
 and meta_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1609 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1626 lexer lexbuf) : (
 # 162 "parser_cocci_menhir.mly"
       ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 38972 "parser_cocci_menhir.ml"
+# 39462 "parser_cocci_menhir.ml"
     ))
 
 and iso_rule_name =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1605 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1622 lexer lexbuf) : (
 # 154 "parser_cocci_menhir.mly"
       (Ast_cocci.rulename)
-# 38980 "parser_cocci_menhir.ml"
+# 39470 "parser_cocci_menhir.ml"
     ))
 
 and iso_meta_main =
   fun lexer lexbuf ->
-    (Obj.magic (MenhirInterpreter.entry 1349 lexer lexbuf) : (
+    (Obj.magic (MenhirInterpreter.entry 1360 lexer lexbuf) : (
 # 170 "parser_cocci_menhir.mly"
       ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 38988 "parser_cocci_menhir.ml"
+# 39478 "parser_cocci_menhir.ml"
     ))
 
 and iso_main =
@@ -38992,7 +39482,7 @@ and iso_main =
     (Obj.magic (MenhirInterpreter.entry 18 lexer lexbuf) : (
 # 167 "parser_cocci_menhir.mly"
       (Ast0_cocci.anything list list)
-# 38996 "parser_cocci_menhir.ml"
+# 39486 "parser_cocci_menhir.ml"
     ))
 
 and include_main =
@@ -39000,7 +39490,7 @@ and include_main =
     (Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : (
 # 151 "parser_cocci_menhir.mly"
       (Data.incl_iso list)
-# 39004 "parser_cocci_menhir.ml"
+# 39494 "parser_cocci_menhir.ml"
     ))
 
 
index e4aac91..11e4ed2 100644 (file)
@@ -46,7 +46,8 @@ type token =
   | TStrict of (Data.clt)
   | TStatement
   | TSizeof of (Data.clt)
-  | TShOp of (Ast_cocci.arithOp * Data.clt)
+  | TShROp of (Ast_cocci.arithOp * Data.clt)
+  | TShLOp of (Ast_cocci.arithOp * Data.clt)
   | TScriptData of (string)
   | TScript
   | TRuleName of (string)
@@ -96,10 +97,12 @@ type token =
   | TMetaIdExp of (Parse_aux.typed_expinfo)
   | TMetaId of (Parse_aux.idinfo)
   | TMetaFunc of (Parse_aux.idinfo)
+  | TMetaField of (Parse_aux.info)
   | TMetaExpList of (Parse_aux.list_info)
   | TMetaExp of (Parse_aux.typed_expinfo)
   | TMetaErr of (Parse_aux.expinfo)
   | TMetaDeclarer of (Parse_aux.idinfo)
+  | TMetaDecl of (Parse_aux.info)
   | TMetaConst of (Parse_aux.typed_expinfo)
   | TMPtVirg
   | TLogOp of (Ast_cocci.logicalOp * Data.clt)
@@ -136,6 +139,7 @@ type token =
   | TFor of (Data.clt)
   | TFloat of (string * Data.clt)
   | TFinalize
+  | TField
   | TExtends
   | TExpression
   | TExists
@@ -156,6 +160,7 @@ type token =
   | TDefault of (Data.clt)
   | TDeclarerId of (string * Data.clt)
   | TDeclarer
+  | TDeclaration
   | TDec of (Data.clt)
   | TCppConcatOp
   | TContinue of (Data.clt)
@@ -181,7 +186,7 @@ type token =
   | EOF
 
 
-val script_meta_main: (Lexing.lexbuf -> token) -> Lexing.lexbuf -> ((string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar)
+val script_meta_main: (Lexing.lexbuf -> token) -> Lexing.lexbuf -> ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
 val rule_name: (Lexing.lexbuf -> token) -> Lexing.lexbuf -> (Ast_cocci.rulename)
 val reinit: (Lexing.lexbuf -> token) -> Lexing.lexbuf -> (unit)
 val plus_main: (Lexing.lexbuf -> token) -> Lexing.lexbuf -> (Ast0_cocci.rule)
index 24058d2..34770cf 100644 (file)
@@ -40,7 +40,7 @@ module P = Parse_aux
 %token EOF
 
 %token TIdentifier TExpression TStatement TFunction TLocal TType TParameter
-%token TIdExpression TInitialiser
+%token TIdExpression TInitialiser TDeclaration TField
 %token Tlist TFresh TConstant TError TWords TWhy0 TPlus0 TBang0
 %token TPure TContext TGenerated
 %token TTypedef TDeclarer TIterator TName TPosition TPosAny
@@ -65,7 +65,7 @@ module P = Parse_aux
 %token <Parse_aux.idinfo>        TMetaIterator TMetaDeclarer
 %token <Parse_aux.expinfo>       TMetaErr
 %token <Parse_aux.info>          TMetaParam TMetaStm TMetaStmList TMetaType
-%token <Parse_aux.info>          TMetaInit
+%token <Parse_aux.info>          TMetaInit TMetaDecl TMetaField
 %token <Parse_aux.list_info>     TMetaParamList TMetaExpList
 %token <Parse_aux.typed_expinfo> TMetaExp TMetaIdExp TMetaLocalIdExp TMetaConst
 %token <Parse_aux.pos_info>      TMetaPos
@@ -96,7 +96,7 @@ module P = Parse_aux
 %token <Data.clt> TAnd
 %token <Data.clt> TEqEq TNotEq TTildeEq TTildeExclEq TSub
 %token <Ast_cocci.logicalOp * Data.clt> TLogOp /* TInf TSup TInfEq TSupEq */
-%token <Ast_cocci.arithOp * Data.clt>   TShOp  /* TShl TShr */
+%token <Ast_cocci.arithOp * Data.clt>   TShLOp TShROp  /* TShl TShr */
 %token <Ast_cocci.arithOp * Data.clt>   TDmOp  /* TDiv TMod */
 %token <Data.clt> TPlus TMinus
 %token <Data.clt> TMul TTilde
@@ -128,7 +128,7 @@ module P = Parse_aux
 %left TAnd
 %left TEqEq TNotEq
 %left TLogOp /* TInf TSup TInfEq TSupEq */
-%left TShOp /* TShl TShr */
+%left TShLOp TShROp /* TShl TShr */
 %left TPlus TMinus
 %left TMul TDmOp /* TDiv TMod */
 
@@ -161,7 +161,7 @@ rule_name
 %start meta_main
 %type <(Ast_cocci.metavar,Ast_cocci.metavar) Common.either list> meta_main
 
-%start <(string option (*string*) * string option (*ast*)) * Ast_cocci.meta_name * Ast_cocci.metavar> script_meta_main
+%start <(string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option> script_meta_main
 
 %start iso_main
 %type <Ast0_cocci.anything list list> iso_main
@@ -210,8 +210,8 @@ rule_name:
       /* these rules have no name as a cheap way to ensure that no normal
       rule inherits their metavariables or depends on them */
       { P.make_generated_rule_name_result None d i a e ee }
-  | TScript TDotDot lang=pure_ident d=depends TArob
-      { P.make_script_rule_name_result lang d }
+  | TScript TDotDot lang=pure_ident nm=ioption(pure_ident) d=depends TArob
+      { P.make_script_rule_name_result lang nm d }
   | TInitialize TDotDot lang=pure_ident d=depends TArob
       { P.make_initial_script_rule_name_result lang d }
   | TFinalize TDotDot lang=pure_ident d=depends TArob
@@ -368,6 +368,14 @@ list_len:
     { (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
       !Data.add_stm_meta name pure; tok) }
+| TDeclaration
+    { (fun arity name pure check_meta ->
+      let tok = check_meta(Ast.MetaDeclDecl(arity,name)) in
+      !Data.add_decl_meta name pure; tok) }
+| TField
+    { (fun arity name pure check_meta ->
+      let tok = check_meta(Ast.MetaFieldDecl(arity,name)) in
+      !Data.add_field_meta name pure; tok) }
 | TStatement Tlist
     { (fun arity name pure check_meta ->
       let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
@@ -599,6 +607,7 @@ struct_or_union:
 
 struct_decl:
       TNothing { [] }
+    | TMetaField { [P.meta_field $1] }
     | t=ctype d=d_ident pv=TPtVirg
         { let (id,fn) = d in
         [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] }
@@ -983,6 +992,7 @@ a disjunction on a statement with a declaration in each branch */
 decl_var:
     t=ctype pv=TPtVirg
       { [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] }
+  | TMetaDecl { [P.meta_decl $1] }
   | s=ioption(storage) t=ctype d=comma_list(d_ident) pv=TPtVirg
       { List.map
          (function (id,fn) ->
@@ -1044,6 +1054,7 @@ decl_var:
 one_decl_var:
     t=ctype pv=TPtVirg
       { Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) }
+  | TMetaDecl { P.meta_decl $1 }
   | s=ioption(storage) t=ctype d=d_ident pv=TPtVirg
       { let (id,fn) = d in
         Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) }
@@ -1309,7 +1320,9 @@ arith_expr(r,pe):
       { P.arith_op Ast.Plus $1 $2 $3 }
   | arith_expr(r,pe) TMinus  arith_expr(r,pe)
       { P.arith_op Ast.Minus $1 $2 $3 }
-  | arith_expr(r,pe) TShOp    arith_expr(r,pe)
+  | arith_expr(r,pe) TShLOp    arith_expr(r,pe)
+      { let (op,clt) = $2 in P.arith_op op $1 clt $3 }
+  | arith_expr(r,pe) TShROp    arith_expr(r,pe)
       { let (op,clt) = $2 in P.arith_op op $1 clt $3 }
   | arith_expr(r,pe) TLogOp    arith_expr(r,pe)
       { let (op,clt) = $2 in P.logic_op op $1 clt $3 }
@@ -2052,26 +2065,24 @@ never_used: TPragma { () }
   | TScriptData     { () }
 
 script_meta_main:
-  py=pure_ident script_name_decl
-  { let (nm,mv) = $2 in
-    ((Some (P.id2name py), None), nm, mv) }
-  | TOPar TUnderscore TComma ast=pure_ident TCPar script_name_decl
-  { let (nm,mv) = $6 in
-    ((None, Some (P.id2name ast)), nm, mv) }
-  | TOPar str=pure_ident TComma TUnderscore TCPar script_name_decl
-  { let (nm,mv) = $6 in
-    ((Some (P.id2name str), None), nm, mv) }
-  | TOPar str=pure_ident TComma ast=pure_ident TCPar script_name_decl
-  { let (nm,mv) = $6 in
-    ((Some (P.id2name str), Some (P.id2name ast)), nm, mv) }
+    py=pure_ident TMPtVirg
+  { ((Some (P.id2name py), None), None) }
+  | py=pure_ident script_name_decl TMPtVirg
+  { ((Some (P.id2name py), None), Some $2) }
+  | TOPar TUnderscore TComma ast=pure_ident TCPar script_name_decl TMPtVirg
+  { ((None, Some (P.id2name ast)), Some $6) }
+  | TOPar str=pure_ident TComma TUnderscore TCPar script_name_decl TMPtVirg
+  { ((Some (P.id2name str), None), Some $6) }
+  | TOPar str=pure_ident TComma ast=pure_ident TCPar script_name_decl TMPtVirg
+  { ((Some (P.id2name str), Some (P.id2name ast)), Some $6) }
 
 script_name_decl:
-    TShOp TRuleName TDot cocci=pure_ident TMPtVirg
+    TShLOp TRuleName TDot cocci=pure_ident
       { let nm = P.id2name cocci in
         let mv = Parse_aux.lookup $2 nm in
         (($2, nm), mv) }
-  | TShOp TVirtual TDot cocci=pure_ident TMPtVirg
+  | TShLOp TVirtual TDot cocci=pure_ident
       { let nm = P.id2name cocci in
         let name = ("virtual", nm) in
         let mv = Ast.MetaIdDecl(Ast.NONE,name) in
-       (name,mv) }
+        (name,mv) }
index f8f6a13..bd80d6c 100644 (file)
@@ -442,7 +442,8 @@ and print_named_type ty id =
 
 and declaration d =
   match Ast.unwrap d with
-    Ast.Init(stg,ty,id,eq,ini,sem) ->
+    Ast.MetaDecl(name,_,_) | Ast.MetaField(name,_,_) -> mcode print_meta name
+  | Ast.Init(stg,ty,id,eq,ini,sem) ->
       print_option (mcode storage) stg; print_named_type ty id;
       print_string " "; mcode print_string eq;
       print_string " "; initialiser ini; mcode print_string sem
@@ -461,7 +462,6 @@ and declaration d =
   | Ast.Ddots(dots,Some whencode) ->
       mcode print_string dots; print_string "   when != "; declaration whencode
   | Ast.Ddots(dots,None) -> mcode print_string dots
-  | Ast.MetaDecl(name,_,_) -> mcode print_meta name
   | Ast.OptDecl(decl) -> print_string "?"; declaration decl
   | Ast.UniqueDecl(decl) -> print_string "!"; declaration decl
 
@@ -845,7 +845,7 @@ let unparse z =
       script_header "initialize" lang deps code
   | Ast.FinalScriptRule (name,lang,deps,code) ->
       script_header "finalize" lang deps code
-  | Ast.ScriptRule (name,lang,deps,bindings,code) ->
+  | Ast.ScriptRule (name,lang,deps,bindings,script_vars,code) ->
       script_header "script" lang deps code
   | Ast.CocciRule (nm, (deps, drops, exists), x, _, _) ->
       print_string "@@";
index 14ca82b..e0ae1e8 100644 (file)
@@ -27,6 +27,7 @@ val unparse_to_string : Ast_cocci.rule -> string
 val expression : Ast_cocci.expression -> unit
 val ident : Ast_cocci.ident -> unit
 val ident_to_string : Ast_cocci.ident -> string
+val declaration : Ast_cocci.declaration -> unit
 val statement : string -> Ast_cocci.statement -> unit
 val statement_dots : Ast_cocci.statement Ast_cocci.dots -> unit
 val rule_elem : string -> Ast_cocci.rule_elem -> unit
index f2a65db..94f5a16 100644 (file)
@@ -186,7 +186,8 @@ and left_typeC t =
 and left_declaration d =
   modif_before d or
   match Ast0.unwrap d with
-    Ast0.Init(Some stg,ty,id,eq,ini,sem) -> modif_before_mcode stg
+    Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) -> modif_before_mcode name
+  | Ast0.Init(Some stg,ty,id,eq,ini,sem) -> modif_before_mcode stg
   | Ast0.Init(None,ty,id,eq,ini,sem) -> left_typeC ty
   | Ast0.UnInit(Some stg,ty,id,sem) -> modif_before_mcode stg
   | Ast0.UnInit(None,ty,id,sem) -> left_typeC ty
@@ -201,7 +202,8 @@ and left_declaration d =
 and right_declaration d =
   modif_before d or
   match Ast0.unwrap d with
-    Ast0.Init(_,ty,id,eq,ini,sem) -> modif_after_mcode sem
+    Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) -> modif_before_mcode name
+  | Ast0.Init(_,ty,id,eq,ini,sem) -> modif_after_mcode sem
   | Ast0.UnInit(_,ty,id,sem) -> modif_after_mcode sem
   | Ast0.MacroDecl(name,lp,args,rp,sem) -> modif_after_mcode sem
   | Ast0.TyDecl(ty,sem) -> modif_after_mcode sem
index ad74514..588e0a4 100644 (file)
@@ -315,7 +315,8 @@ let rec propagate_types env =
 
   and process_decl env decl =
     match Ast0.unwrap decl with
-      Ast0.Init(_,ty,id,_,exp,_) ->
+      Ast0.MetaDecl(_,_) | Ast0.MetaField(_,_) -> []
+    | Ast0.Init(_,ty,id,_,exp,_) ->
        let _ =
          (propagate_types env).VT0.combiner_rec_initialiser exp in
        [(strip id,Ast0.ast0_type_to_type ty)]
index ebbe5d0..cb7adbd 100644 (file)
@@ -277,7 +277,9 @@ and unify_typeC t1 t2 =
 
 and unify_declaration d1 d2 =
   match (Ast.unwrap d1,Ast.unwrap d2) with
-    (Ast.Init(stg1,ft1,id1,eq1,i1,s1),Ast.Init(stg2,ft2,id2,eq2,i2,s2)) ->
+    (Ast.MetaDecl(_,_,_),_) | (_,Ast.MetaDecl(_,_,_)) -> return true
+  | (Ast.MetaField(_,_,_),_) | (_,Ast.MetaField(_,_,_)) -> return true
+  | (Ast.Init(stg1,ft1,id1,eq1,i1,s1),Ast.Init(stg2,ft2,id2,eq2,i2,s2)) ->
       if bool_unify_option unify_mcode stg1 stg2
       then
        conjunct_bindings (unify_fullType ft1 ft2)
index 99e4132..f5768f8 100644 (file)
@@ -113,7 +113,8 @@ let get_free checker t =
 
   let declaration r k d =
     match Ast0.unwrap d with
-      Ast0.DisjDecl(starter,decls,mids,ender) ->
+      Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) -> checker name
+    | Ast0.DisjDecl(starter,decls,mids,ender) ->
        detect_unitary_frees(List.map r.VT0.combiner_rec_declaration decls)
     | _ -> k d in
 
@@ -243,7 +244,7 @@ let do_unitary rules =
       [] -> ([],[])
     | (r::rules) ->
       match r with
-        Ast0.ScriptRule (_,_,_,_,_)
+        Ast0.ScriptRule (_,_,_,_,_,_)
       | Ast0.InitialScriptRule (_,_,_,_) | Ast0.FinalScriptRule (_,_,_,_) ->
           let (x,rules) = loop rules in
           (x, r::rules)
index 961c039..a157943 100644 (file)
@@ -324,7 +324,8 @@ and declaration d =
   print_context d
     (function _ ->
       match Ast0.unwrap d with
-       Ast0.Init(stg,ty,id,eq,ini,sem) ->
+       Ast0.MetaDecl(name,_) | Ast0.MetaField(name,_) -> mcode print_meta name
+      |        Ast0.Init(stg,ty,id,eq,ini,sem) ->
          print_option (mcode U.storage) stg;
          print_named_type ty id;
          print_string " ";
@@ -640,33 +641,24 @@ let unparse_anything x =
   | Ast0.DotsStmtTag(d) ->
       print_string "StmDots:"; force_newline();
       statement_dots d
-  | Ast0.DotsDeclTag(d) ->
-      declaration_dots d
-  | Ast0.DotsCaseTag(d) ->
-      case_dots d
-  | Ast0.IdentTag(d) ->
-      ident d
+  | Ast0.DotsDeclTag(d) -> declaration_dots d
+  | Ast0.DotsCaseTag(d) -> case_dots d
+  | Ast0.IdentTag(d)    -> ident d
   | Ast0.ExprTag(d) | Ast0.ArgExprTag(d) | Ast0.TestExprTag(d) ->
       print_string "Exp:"; force_newline();
       expression d
-  | Ast0.TypeCTag(d) ->
-      typeC d
-  | Ast0.ParamTag(d) ->
-      parameterTypeDef d
-  | Ast0.InitTag(d) ->
-      initialiser d
-  | Ast0.DeclTag(d) ->
-      declaration d
-  | Ast0.StmtTag(d) ->
+  | Ast0.TypeCTag(d) -> typeC d
+  | Ast0.ParamTag(d) -> parameterTypeDef d
+  | Ast0.InitTag(d)  -> initialiser d
+  | Ast0.DeclTag(d)  -> declaration d
+  | Ast0.StmtTag(d)  ->
       print_string "Stm:"; force_newline();
       statement "" d
-  | Ast0.CaseLineTag(d) ->
-      case_line "" d
-  | Ast0.TopTag(d) ->
-      top_level d
-  | Ast0.IsoWhenTag(x) -> U.print_when_modif x
-  | Ast0.IsoWhenTTag(e) -> expression e
-  | Ast0.IsoWhenFTag(e) -> expression e
+  | Ast0.CaseLineTag(d)  -> case_line "" d
+  | Ast0.TopTag(d)       -> top_level d
+  | Ast0.IsoWhenTag(x)   -> U.print_when_modif x
+  | Ast0.IsoWhenTTag(e)  -> expression e
+  | Ast0.IsoWhenFTag(e)  -> expression e
   | Ast0.MetaPosTag(var) -> meta_pos var);
   quiet := q;
   print_newline()
index 9822b67..041a621 100644 (file)
@@ -247,7 +247,8 @@ let combiner bind option_default
   and declaration d =
     let k d =
       match Ast.unwrap d with
-       Ast.Init(stg,ty,id,eq,ini,sem) ->
+       Ast.MetaDecl(name,_,_) | Ast.MetaField(name,_,_) -> meta_mcode name
+      |        Ast.Init(stg,ty,id,eq,ini,sem) ->
          bind (get_option storage_mcode stg)
            (bind (named_type ty id)
               (multibind
@@ -266,7 +267,6 @@ let combiner bind option_default
       | Ast.DisjDecl(decls) -> multibind (List.map declaration decls)
       |        Ast.Ddots(dots,whencode) ->
          bind (string_mcode dots) (get_option declaration whencode)
-      | Ast.MetaDecl(name,_,_) -> meta_mcode name
       | Ast.OptDecl(decl) -> declaration decl
       | Ast.UniqueDecl(decl) -> declaration decl in
     declfn all_functions k d
@@ -745,7 +745,11 @@ let rebuilder
     let k d =
       Ast.rewrap d
        (match Ast.unwrap d with
-         Ast.Init(stg,ty,id,eq,ini,sem) ->
+         Ast.MetaDecl(name,keep,inherited) ->
+           Ast.MetaDecl(meta_mcode name,keep,inherited)
+       | Ast.MetaField(name,keep,inherited) ->
+           Ast.MetaField(meta_mcode name,keep,inherited)
+       | Ast.Init(stg,ty,id,eq,ini,sem) ->
            Ast.Init(get_option storage_mcode stg, fullType ty, ident id,
                     string_mcode eq, initialiser ini, string_mcode sem)
        | Ast.UnInit(stg,ty,id,sem) ->
@@ -761,8 +765,6 @@ let rebuilder
        | Ast.DisjDecl(decls) -> Ast.DisjDecl(List.map declaration decls)
        | Ast.Ddots(dots,whencode) ->
            Ast.Ddots(string_mcode dots, get_option declaration whencode)
-       | Ast.MetaDecl(name,keep,inherited) ->
-           Ast.MetaDecl(meta_mcode name,keep,inherited)
        | Ast.OptDecl(decl) -> Ast.OptDecl(declaration decl)
        | Ast.UniqueDecl(decl) -> Ast.UniqueDecl(declaration decl)) in
     declfn all_functions k d
index e64ff94..4ef71c7 100644 (file)
@@ -392,7 +392,13 @@ let visitor mode bind option_default
     let k d =
       rewrap d
        (match Ast0.unwrap d with
-         Ast0.Init(stg,ty,id,eq,ini,sem) ->
+         Ast0.MetaDecl(name,pure) ->
+           let (n,name) = meta_mcode name in
+           (n,Ast0.MetaDecl(name,pure))
+       | Ast0.MetaField(name,pure) ->
+           let (n,name) = meta_mcode name in
+           (n,Ast0.MetaField(name,pure))
+       | Ast0.Init(stg,ty,id,eq,ini,sem) ->
            let (stg_n,stg) = get_option storage_mcode stg in
            let ((ty_id_n,ty),id) = named_type ty id in
            let (eq_n,eq) = string_mcode eq in
index bc442ab..68f9fd2 100644 (file)
@@ -398,7 +398,8 @@ let pyimport_importfrozenmodule = fmt5call (pnf ())
 (* 42 *)
 let pyeval_callobjectwithkeywords = fmt42call (pnf ())
 (* 17 *)
-let pyeval_callobject = fmt17call (pnf ())
+(* dropped in Python 2.7
+let pyeval_callobject = fmt17call (pnf ()) *)
 
 (* 29 *)
 let pyeval_getbuiltins = fmt29call (pnf ())
index 87342f5..935c05a 100644 (file)
@@ -744,7 +744,10 @@ DL_IMPORT(int) PyImport_ImportFrozenModule(char *);
 /* 42 */
 DL_IMPORT(PyObject *) PyEval_CallObjectWithKeywords(PyObject *, PyObject *, PyObject *);
 /* 17 */
+#if 0
+// dropped in Python 2.7
 DL_IMPORT(PyObject *) PyEval_CallObject(PyObject *, PyObject *);
+#endif
 
 /* 29 */
 DL_IMPORT(PyObject *) PyEval_GetBuiltins(void);
@@ -1203,7 +1206,10 @@ python_func_table the_python_func_table[] = {
 /* 42 */
 { (void *)PyEval_CallObjectWithKeywords, 42, "PyEval_CallObjectWithKeywords" },
 /* 17 */
+#if 0
+// dropped in Python 2.7
 { (void *)PyEval_CallObject, 17, "PyEval_CallObject" },
+#endif
 
 /* 29 */
 { (void *)PyEval_GetBuiltins, 29, "PyEval_GetBuiltins" },
index efad271..a4047e1 100644 (file)
@@ -32,12 +32,14 @@ TARGET=coccipython
 
 SOURCES= pycocci_aux.ml pycocci.ml
 
+INCLUDEDIRS_LOCAL = ../commons ../commons/ocamlextra ../globals \
+                   ../parsing_c ../parsing_cocci
+
 ifeq ("$(PYCAMLDIR)", "pycaml")
-INCLUDEDIRS = ../commons ../commons/ocamlextra ../globals ../$(PYCAMLDIR) \
-             ../parsing_c ../parsing_cocci
+INCLUDEDIRS_LOCAL += ../$(PYCAMLDIR)
+INCLUDEDIRS = $(INCLUDEDIRS_LOCAL)
 else
-INCLUDEDIRS = ../commons ../commons/ocamlextra ../globals $(PYCAMLDIR) \
-             ../parsing_c ../parsing_cocci
+INCLUDEDIRS = $(INCLUDEDIRS_LOCAL) $(PYCAMLDIR)
 endif
 
 SYSLIBS = str.cma unix.cma pycaml.cma
@@ -48,6 +50,7 @@ LIBS=../commons/commons.cma ../globals/globals.cma
 ##############################################################################
 
 INCLUDES=$(INCLUDEDIRS:%=-I %) $(INCLUDESEXTRA)
+INCLUDES_DEPEND=$(INCLUDEDIRS_LOCAL:%=-I %) $(INCLUDESEXTRA)
 
 ##############################################################################
 # Generic ocaml variables
@@ -57,7 +60,7 @@ INCLUDES=$(INCLUDEDIRS:%=-I %) $(INCLUDESEXTRA)
 OCAMLCFLAGS ?= -g -dtypes
 OCAMLC =ocamlc$(OPTBIN) $(OCAMLCFLAGS) $(INCLUDES)
 OCAMLOPT = ocamlopt$(OPTBIN) $(OPTFLAGS) $(INCLUDES)
-OCAMLDEP = ocamldep$(OPTBIN) $(INCLUDES)
+OCAMLDEP = ocamldep$(OPTBIN) $(INCLUDES_DEPEND)
 
 
 ##############################################################################
@@ -140,6 +143,7 @@ clean::
        rm -f *~ .*~ #*#
 
 distclean::
+       $(MAKE) -C coccilib $@
        rm -f .depend
 
 beforedepend:
diff --git a/python/Makefile.orig b/python/Makefile.orig
new file mode 100644 (file)
index 0000000..ddbce90
--- /dev/null
@@ -0,0 +1,132 @@
+#############################################################################
+# Configuration section
+#############################################################################
+-include ../Makefile.config
+
+##############################################################################
+# Variables
+##############################################################################
+TARGET=coccipython
+
+SOURCES= pycocci_aux.ml pycocci.ml
+
+ifeq ("$(PYCAMLDIR)", "pycaml")
+INCLUDEDIRS = ../commons ../commons/ocamlextra ../globals ../$(PYCAMLDIR) \
+             ../parsing_c ../parsing_cocci
+else
+INCLUDEDIRS = ../commons ../commons/ocamlextra ../globals $(PYCAMLDIR) \
+             ../parsing_c ../parsing_cocci
+endif
+
+SYSLIBS = str.cma unix.cma pycaml.cma
+LIBS=../commons/commons.cma ../globals/globals.cma
+
+##############################################################################
+# Generic variables
+##############################################################################
+
+INCLUDES=$(INCLUDEDIRS:%=-I %) $(INCLUDESEXTRA)
+
+##############################################################################
+# Generic ocaml variables
+##############################################################################
+
+# The Caml compilers.
+OCAMLCFLAGS ?= -g -dtypes
+OCAMLC =ocamlc$(OPTBIN) $(OCAMLCFLAGS) $(INCLUDES)
+OCAMLOPT = ocamlopt$(OPTBIN) $(OPTFLAGS) $(INCLUDES)
+OCAMLDEP = ocamldep$(OPTBIN) $(INCLUDES)
+
+
+##############################################################################
+# Top rules
+##############################################################################
+
+EXEC=$(TARGET).byte
+LIB=$(TARGET).cma
+OPTLIB=$(LIB:.cma=.cmxa)
+
+CTLEXEC=$(CTLTARGET)
+
+OBJS = $(SOURCES:.ml=.cmo)
+OPTOBJS = $(OBJS:.cmo=.cmx)
+
+CTLOBJS = $(CTLSOURCES:.ml=.cmo)
+CTLOPTOBJS = $(CTLOBJS:.cmo=.cmx)
+
+
+#all: $(EXEC) $(LIB)
+all: $(LIB)
+
+all.opt: $(OPTLIB)
+
+ctl: $(CTLEXEC)
+
+
+$(LIB): $(OBJS)
+       $(OCAMLC) -a -o $(LIB) $(OBJS)
+
+clean::
+       rm -f $(LIB)
+
+
+$(OPTLIB): $(OPTOBJS)
+       $(OCAMLOPT) -a -o $(OPTLIB) $(OPTOBJS)
+
+
+$(EXEC): $(OBJS) main.cmo $(LIBS)
+       $(OCAMLC) -o $(EXEC) $(SYSLIBS) $(LIBS) $(OBJS) main.cmo
+
+$(CTLEXEC): $(CTLOBJS) $(LIBS)
+       $(OCAMLC) -o $(CTLEXEC) $(SYSLIBS) $(LIBS) $(CTLOBJS)
+
+
+clean::
+       rm -f $(OPTLIB) $(LIB:.cma=.a)
+       rm -f $(TARGET) rm -f $(TARGET).byte
+       rm -f $(CTLTARGET)
+
+
+#pycocci.ml: ../pycaml/pycaml.ml ../pycaml/pycaml_ml.c
+#pycocci_aux.ml:  ../pycaml/pycaml.ml ../pycaml/pycaml_ml.c
+pycocci_aux.ml:
+       @echo "\n\n\t*** pycocci_aux.ml not found ! ***\n\n\tRun 'configure && make depend' first.\n\n"
+
+rmlinks:
+       rm -f pycocci.ml pycocci_aux.ml
+
+##############################################################################
+# Generic ocaml rules
+##############################################################################
+
+.SUFFIXES:
+.SUFFIXES: .ml .mli .cmo .cmi .cmx
+
+.ml.cmo:
+       $(OCAMLC) -c $<
+
+.mli.cmi:
+       $(OCAMLC) -c $<
+
+.ml.cmx:
+       $(OCAMLOPT) -c $<
+
+
+# clean rule for others files
+clean::
+       rm -f *.cm[iox] *.o  *.annot
+       rm -f *~ .*~ #*#
+
+distclean::
+       $(MAKE) -C coccilib $@
+       rm -f .depend
+
+beforedepend:
+
+depend: beforedepend
+       $(OCAMLDEP) *.mli *.ml > .depend
+
+.depend:
+       $(OCAMLDEP) *.mli *.ml > .depend
+
+-include .depend
diff --git a/python/coccilib/__init__.pyc b/python/coccilib/__init__.pyc
deleted file mode 100644 (file)
index 10b3b66..0000000
Binary files a/python/coccilib/__init__.pyc and /dev/null differ
diff --git a/python/coccilib/elems.pyc b/python/coccilib/elems.pyc
deleted file mode 100644 (file)
index f540d23..0000000
Binary files a/python/coccilib/elems.pyc and /dev/null differ
diff --git a/python/coccilib/org.pyc b/python/coccilib/org.pyc
deleted file mode 100644 (file)
index 333eeca..0000000
Binary files a/python/coccilib/org.pyc and /dev/null differ
diff --git a/python/coccilib/output.pyc b/python/coccilib/output.pyc
deleted file mode 100644 (file)
index 4f88925..0000000
Binary files a/python/coccilib/output.pyc and /dev/null differ
diff --git a/python/coccilib/report.pyc b/python/coccilib/report.pyc
deleted file mode 100644 (file)
index b738d33..0000000
Binary files a/python/coccilib/report.pyc and /dev/null differ
index 8658272..793ed33 100644 (file)
@@ -82,6 +82,9 @@ let contains_binding e (_,(r,m),_) = failwith "no python"
 
 let construct_variables mv e = failwith "no python"
 
+let construct_script_variables mv = failwith "no python"
+let retrieve_script_variables mv = failwith "no python"
+
 let set_coccifile cocci_file =
        cocci_file_name := cocci_file;
        ()
index f47db46..80b996b 100644 (file)
@@ -107,7 +107,8 @@ let pycocci_get_class_type fqn =
 
 let pycocci_instantiate_class fqn args =
   let class_type = pycocci_get_class_type fqn in
-  let obj = pyeval_callobject(class_type, args) in
+  let obj =
+    pyeval_callobjectwithkeywords(class_type, args, pynull()) in
   check_return_value obj;
   obj
 
@@ -224,6 +225,11 @@ let build_variable name value =
   check_int_return_value
     (pydict_setitemstring(pymodule_getdict mx, name, value))
 
+let get_variable name =
+  let mx = !coccinelle_module in
+  pystring_asstring
+    (pyobject_str(pydict_getitemstring(pymodule_getdict mx, name)))
+
 let contains_binding e (_,(r,m),_) =
   try
     let _ = List.find (function ((re, rm), _) -> r =*= re && m =$= rm) e in
@@ -276,12 +282,28 @@ let construct_variables mv e =
        let _ = build_variable py pylocs in
        ()
     | Some (_,binding) ->
-       let _ = build_variable py (pystring_fromstring (Pycocci_aux.stringrep binding))
-       in ()
+       let _ =
+        build_variable py
+          (pystring_fromstring (Pycocci_aux.stringrep binding)) in
+       ()
     ) mv;
 
   ()
 
+let construct_script_variables mv =
+  List.iter
+    (function (_,py) ->
+      let vl =
+       let str = pystring_fromstring "initial value" in
+       pycocci_instantiate_class "coccilib.elems.Identifier"
+         (pytuple_fromsingle (str)) in
+      let _ = build_variable py vl in
+      ())
+    mv
+
+let retrieve_script_variables mv =
+  List.map (function (_,py) -> get_variable py) mv
+
 let set_coccifile cocci_file =
        cocci_file_name := cocci_file;
        ()
index bac7745..5a19c3c 100644 (file)
@@ -40,14 +40,20 @@ let stringrep mvb = match mvb with
 | Ast_c.MetaFuncVal      s -> s
 | Ast_c.MetaLocalFuncVal s -> s
 | Ast_c.MetaExprVal      (expr,_) -> exprrep expr
-| Ast_c.MetaExprListVal  expr_list -> "TODO: <<exprlist>>"
+| Ast_c.MetaExprListVal  expr_list ->
+    call_pretty Pretty_print_c.pp_arg_list_gen expr_list
 | Ast_c.MetaTypeVal      typ -> call_pretty Pretty_print_c.pp_type_gen typ
 | Ast_c.MetaInitVal      ini -> call_pretty Pretty_print_c.pp_init_gen ini
+| Ast_c.MetaDeclVal      decl ->
+    call_pretty Pretty_print_c.pp_decl_gen decl
+| Ast_c.MetaFieldVal      field ->
+    call_pretty Pretty_print_c.pp_field_gen field
 | Ast_c.MetaStmtVal      statement ->
     call_pretty Pretty_print_c.pp_statement_gen statement
 | Ast_c.MetaParamVal     param ->
     call_pretty Pretty_print_c.pp_param_gen param
-| Ast_c.MetaParamListVal params -> "TODO: <<paramlist>>"
+| Ast_c.MetaParamListVal params ->
+    call_pretty Pretty_print_c.pp_param_list_gen params
 | Ast_c.MetaListlenVal n -> string_of_int n
 | Ast_c.MetaPosVal (pos1, pos2) ->
     let print_pos = function
diff --git a/test.ml b/test.ml
index b515d59..88f1e40 100644 (file)
--- a/test.ml
+++ b/test.ml
  *)
 
 
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
 (*
  * Copyright 2005-2010, Ecole des Mines de Nantes, University of Copenhagen
  * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
index dee8ff1..1d1cc43 100644 (file)
@@ -478,9 +478,11 @@ let test_parse_cocci file =
   match !Flag.scanner with
     Flag.NoScanner | Flag.Grep -> ()
   | Flag.Glimpse | Flag.Google _ ->
+      Printf.printf "%s tokens\n"
+       (if !Flag.scanner = Flag.Glimpse then "glimpse" else "google");
       (match query with
        None -> pr "No query"
-      | Some x -> pr (String.concat " || " x))
+      | Some x -> pr (String.concat " ||\n" x))
 
 
 
diff --git a/tests/camltococci.c b/tests/camltococci.c
new file mode 100644 (file)
index 0000000..e67463a
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  bar();
+}
diff --git a/tests/camltococci.cocci b/tests/camltococci.cocci
new file mode 100644 (file)
index 0000000..8cc110f
--- /dev/null
@@ -0,0 +1,23 @@
+@a@
+identifier x;
+@@
+
+foo(x);
+
+@script:ocaml b@
+x << a.x;
+y;
+z;
+@@
+
+y := x;
+z := "something"
+
+@c@
+identifier b.y;
+identifier b.z;
+identifier a.x;
+@@
+
+- bar();
++ matched_bar(y,z,x);
diff --git a/tests/camltococci.res b/tests/camltococci.res
new file mode 100644 (file)
index 0000000..d4eafc9
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  matched_bar(a0, something, a0);
+}
diff --git a/tests/pythontococci.c b/tests/pythontococci.c
new file mode 100644 (file)
index 0000000..e67463a
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  bar();
+}
diff --git a/tests/pythontococci.cocci b/tests/pythontococci.cocci
new file mode 100644 (file)
index 0000000..e09e278
--- /dev/null
@@ -0,0 +1,25 @@
+@a@
+identifier x;
+@@
+
+foo(x);
+
+@script:python b@
+x << a.x;
+y;
+z;
+@@
+
+print y
+coccinelle.y = x
+coccinelle.z = "something"
+print y
+
+@c@
+identifier b.y;
+identifier b.z;
+identifier a.x;
+@@
+
+- bar();
++ matched_bar(y,z,x);
diff --git a/tests/pythontococci.res b/tests/pythontococci.res
new file mode 100644 (file)
index 0000000..d4eafc9
--- /dev/null
@@ -0,0 +1,4 @@
+int main () {
+  foo(a0);
+  matched_bar(a0, something, a0);
+}
index f5fb408..535ad6a 100644 (file)
@@ -43,7 +43,7 @@ alloc_free: alloc_free.ml
 
 # more flexible version of alloc_free
 bridge: bridge.ml
-       ocamlopt -o bridge str.cmxa bridge.ml
+       ocamlopt -o bridge str.cmxa dumper.mli dumper.ml bridge.ml
 
 install_bridge: bridge
        cp -f bridge /usr/local/bin
index 60c29de..1e6b57f 100644 (file)
@@ -45,7 +45,7 @@ let parse_line fp l n =
                (match List.rev splitted with
                  new_tag::info ->
                    let rest = loop new_tag rest in
-                   (tag,String.concat "\\ " info)::rest
+                   (tag,String.concat "\\ " (List.rev info))::rest
                |       _ -> failwith "bad element")
            | _ -> failwith "no data" in
          Some (cocci,loop (drop_spaces first) others)
diff --git a/tools/dumper.ml b/tools/dumper.ml
new file mode 100644 (file)
index 0000000..8df6a32
--- /dev/null
@@ -0,0 +1,109 @@
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(* Dump an OCaml value into a printable string.
+ * By Richard W.M. Jones (rich@annexia.org).
+ * dumper.ml 1.2 2005/02/06 12:38:21 rich Exp
+ *)
+
+open Printf
+open Obj
+
+let rec dump r =
+  if is_int r then
+    string_of_int (magic r : int)
+  else (                               (* Block. *)
+    let rec get_fields acc = function
+      | 0 -> acc
+      | n -> let n = n-1 in get_fields (field r n :: acc) n
+    in
+    let rec is_list r =
+      if is_int r then (
+       if (magic r : int) = 0 then true (* [] *)
+       else false
+      ) else (
+       let s = size r and t = tag r in
+       if t = 0 && s = 2 then is_list (field r 1) (* h :: t *)
+       else false
+      )
+    in
+    let rec get_list r =
+      if is_int r then []
+      else let h = field r 0 and t = get_list (field r 1) in h :: t
+    in
+    let opaque name =
+      (* XXX In future, print the address of value 'r'.  Not possible in
+       * pure OCaml at the moment.
+       *)
+      "<" ^ name ^ ">"
+    in
+
+    let s = size r and t = tag r in
+
+    (* From the tag, determine the type of block. *)
+    if is_list r then ( (* List. *)
+      let fields = get_list r in
+      "[" ^ String.concat "; " (List.map dump fields) ^ "]"
+    )
+    else if t = 0 then (               (* Tuple, array, record. *)
+      let fields = get_fields [] s in
+      "(" ^ String.concat ", " (List.map dump fields) ^ ")"
+    )
+
+      (* Note that [lazy_tag .. forward_tag] are < no_scan_tag.  Not
+       * clear if very large constructed values could have the same
+       * tag. XXX *)
+    else if t = lazy_tag then opaque "lazy"
+    else if t = closure_tag then opaque "closure"
+    else if t = object_tag then (      (* Object. *)
+      let fields = get_fields [] s in
+      let clasz, id, slots =
+       match fields with h::h'::t -> h, h', t | _ -> assert false in
+      (* No information on decoding the class (first field).  So just print
+       * out the ID and the slots.
+       *)
+      "Object #" ^ dump id ^
+      " (" ^ String.concat ", " (List.map dump slots) ^ ")"
+    )
+    else if t = infix_tag then opaque "infix"
+    else if t = forward_tag then opaque "forward"
+
+    else if t < no_scan_tag then (     (* Constructed value. *)
+      let fields = get_fields [] s in
+      "Tag" ^ string_of_int t ^
+      " (" ^ String.concat ", " (List.map dump fields) ^ ")"
+    )
+    else if t = string_tag then (
+      "\"" ^ String.escaped (magic r : string) ^ "\""
+    )
+    else if t = double_tag then (
+      string_of_float (magic r : float)
+    )
+    else if t = abstract_tag then opaque "abstract"
+    else if t = custom_tag then opaque "custom"
+    else if t = final_tag then opaque "final"
+    else failwith ("dump: impossible tag (" ^ string_of_int t ^ ")")
+  )
+
+let dump v = dump (repr v)
diff --git a/tools/dumper.mli b/tools/dumper.mli
new file mode 100644 (file)
index 0000000..61c5e69
--- /dev/null
@@ -0,0 +1,30 @@
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
+(* Dump an OCaml value into a printable string.
+ * By Richard W.M. Jones (rich@annexia.org).
+ * dumper.mli 1.1 2005/02/03 23:07:47 rich Exp
+ *)
+
+val dump : 'a -> string