From 3a31414346dd7d7e8baa4cb8b804a2d5e1797962 Mon Sep 17 00:00:00 2001 From: Coccinelle Date: Mon, 10 Jan 2011 09:35:21 +0100 Subject: [PATCH] Release coccinelle-0.2.5-rc2 ** Language: - Make a very small attempt to parse C++ code, amounting to accepting identifiers containing ::, tilde, and template invocations. Use the option -c++. This is not likely to be very useful in practice. ** Features: - support transformations on variables (only) in declarations that declare multiple variables - allow #endif XXX in C code - relax_include_path now applied to non local includes too, in which case it tries to find a unique file with a suffix of the provided name. this is useful for directories that are intended to be symbolic links. - support matching and removing #undef - support for iteration in ocaml, requires use of -no_show_diff - calls to likely and unlikely propagate test expression status to their arguments ** Bugfix: - improved parsing of expressions to allow ... to the right of operators in more places --- Makefile.release | 4 +- changes.txt | 13 + cocci.ml | 190 +- commons/common.ml | 5 +- commons/common.mli | 5 +- configure | 30 +- ctl/.depend | 30 +- demos/iteration.cocci | 110 + dllpycaml_stubs.so | Bin 47376 -> 0 bytes docs/manual/main_grammar.pdf | Bin 335505 -> 335600 bytes docs/manual/manual.pdf | Bin 438728 -> 439141 bytes docs/manual/options.pdf | Bin 134990 -> 136077 bytes docs/manual/spatch_options.tex | 6 + engine/check_exhaustive_pattern.ml | 1 + engine/cocci_vs_c.ml | 14 +- globals/Makefile | 4 +- globals/config.ml.in | 2 +- globals/flag.ml | 2 + globals/iteration.ml | 81 + test.ml => globals/iteration.mli | 28 +- main.ml | 443 +- ocaml/prepare_ocamlcocci.mli | 2 +- ocaml/yes_prepare_ocamlcocci.ml | 90 +- output | 1481 ++++ parsing_c/ast_c.ml | 8 +- parsing_c/control_flow_c_build.ml | 5 +- parsing_c/lexer_c.mll | 26 +- parsing_c/parse_c.ml | 25 +- parsing_c/parser_c.mly | 8 +- parsing_c/parsing_hacks.ml | 17 +- parsing_c/parsing_stat.ml | 2 + parsing_c/pretty_print_c.ml | 4 +- parsing_c/token_helpers.ml | 4 +- parsing_c/type_annoter_c.ml | 18 +- parsing_c/unparse_c.ml | 2 - parsing_c/unparse_cocci.ml | 2 + parsing_c/visitor_c.ml | 6 +- parsing_cocci/.depend | 240 +- parsing_cocci/adjust_pragmas.ml | 4 + parsing_cocci/arity.ml | 5 + parsing_cocci/ast0_cocci.ml | 1 + parsing_cocci/ast0_cocci.mli | 1 + parsing_cocci/ast0toast.ml | 2 + parsing_cocci/ast_cocci.ml | 1 + parsing_cocci/ast_cocci.mli | 1 + parsing_cocci/check_meta.ml | 54 +- parsing_cocci/compute_lines.ml | 3 + parsing_cocci/context_neg.ml | 3 + parsing_cocci/disjdistr.ml | 1 + parsing_cocci/get_constants2.ml | 2 +- parsing_cocci/index.ml | 3 +- parsing_cocci/insert_plus.ml | 1 + parsing_cocci/lexer_cocci.mll | 11 + parsing_cocci/parse_cocci.ml | 15 +- parsing_cocci/parser_cocci_menhir.ml | 8956 ++++++++++++++----------- parsing_cocci/parser_cocci_menhir.mli | 1 + parsing_cocci/parser_cocci_menhir.mly | 133 +- parsing_cocci/pretty_print_cocci.ml | 2 + parsing_cocci/single_statement.ml | 13 + parsing_cocci/unify_ast.ml | 1 + parsing_cocci/unparse_ast0.ml | 2 + parsing_cocci/visitor_ast.ml | 4 + parsing_cocci/visitor_ast0.ml | 4 + popl09/.depend | 38 +- python/.depend | 16 +- standard.h | 4 +- testing.ml | 18 +- tests/undef.c | 17 + tests/undef.cocci | 5 + tests/undef1.c | 4 + tests/undef1.cocci | 5 + tests/undef2.c | 2 + tests/undef2.cocci | 4 + 73 files changed, 7628 insertions(+), 4617 deletions(-) create mode 100644 demos/iteration.cocci delete mode 100755 dllpycaml_stubs.so create mode 100644 globals/iteration.ml rename test.ml => globals/iteration.mli (51%) create mode 100644 output create mode 100644 tests/undef.c create mode 100644 tests/undef.cocci create mode 100644 tests/undef1.c create mode 100644 tests/undef1.cocci create mode 100644 tests/undef2.c create mode 100644 tests/undef2.cocci diff --git a/Makefile.release b/Makefile.release index 60b0322..15923b9 100644 --- a/Makefile.release +++ b/Makefile.release @@ -87,7 +87,7 @@ package-nopython: $(MAKE) docs $(MAKE) bintar $(MAKE) bytecodetar - $(MAKE) staticbintar +# $(MAKE) staticbintar package-python: $(MAKE) distclean # Clean project @@ -156,7 +156,7 @@ coccicheck: clean-packages:: rm -f $(TMP)/$(PACKAGE).tgz rm -f $(TMP)/$(PACKAGE)-bin-x86.tgz - rm -f $(TMP)/$(PACKAGE)-bin-x86-static.tgz +# rm -f $(TMP)/$(PACKAGE)-bin-x86-static.tgz rm -f $(TMP)/$(PACKAGE)-bin-bytecode-$(OCAMLVERSION).tgz rm -f $(TMP)/$(PACKAGE)-bin-x86-python.tgz rm -f $(TMP)/$(PACKAGE)-bin-bytecode-$(OCAMLVERSION)-python.tgz diff --git a/changes.txt b/changes.txt index acc177f..39fffbd 100644 --- a/changes.txt +++ b/changes.txt @@ -15,12 +15,25 @@ * 0.2.5 ** Language: +- Make a very small attempt to parse C++ code, amounting to accepting + identifiers containing ::, tilde, and template invocations. Use the + option -c++. This is not likely to be very useful in practice. ** Features: - support transformations on variables (only) in declarations that declare multiple variables +- allow #endif XXX in C code +- relax_include_path now applied to non local includes too, in which case + it tries to find a unique file with a suffix of the provided name. + this is useful for directories that are intended to be symbolic links. +- support matching and removing #undef +- support for iteration in ocaml, requires use of -no_show_diff +- calls to likely and unlikely propagate test expression status to their + arguments ** Bugfix: +- improved parsing of expressions to allow ... to the right of operators in + more places * 0.2.4 ** Language: diff --git a/cocci.ml b/cocci.ml index 16a4b88..dcab2cf 100644 --- a/cocci.ml +++ b/cocci.ml @@ -62,22 +62,43 @@ let cfile_of_program program2_with_ppmethod outf = (* for memoization, contains only one entry, the one for the SP *) let _hparse = Hashtbl.create 101 +let _h_ocaml_init = Hashtbl.create 101 let _hctl = Hashtbl.create 101 (* --------------------------------------------------------------------- *) (* Cocci related *) (* --------------------------------------------------------------------- *) -let sp_of_file2 file iso = - Common.memoized _hparse (file, iso) (fun () -> - let (_,xs,_,_,_,_,_) as res = Parse_cocci.process file iso false in - (match Prepare_ocamlcocci.prepare file xs with - None -> () - | Some ocaml_script_file -> - (* compile file *) - Prepare_ocamlcocci.load_file ocaml_script_file; - if not !Common.save_tmp_files - then Prepare_ocamlcocci.clean_file ocaml_script_file); - res) +(* for a given pair (file,iso), only keep an instance for the most recent +virtual rules and virtual_env *) + +let sp_of_file2 file iso = + let redo _ = + let new_code = + let (_,xs,_,_,_,_,_) as res = Parse_cocci.process file iso false in + (* if there is already a compiled ML code, do nothing and use that *) + try let _ = Hashtbl.find _h_ocaml_init (file,iso) in res + with Not_found -> + begin + Hashtbl.add _h_ocaml_init (file,iso) (); + match Prepare_ocamlcocci.prepare file xs with + None -> res + | Some ocaml_script_file -> + (* compile file *) + Prepare_ocamlcocci.load_file ocaml_script_file; + (if not !Common.save_tmp_files + then Prepare_ocamlcocci.clean_file ocaml_script_file); + res + end in + Hashtbl.add _hparse (file,iso) + (!Flag.defined_virtual_rules,!Flag.defined_virtual_env,new_code); + new_code in + try + let (rules,env,code) = Hashtbl.find _hparse (file,iso) in + if rules = !Flag.defined_virtual_rules && env = !Flag.defined_virtual_env + then code + else (Hashtbl.remove _hparse (file,iso); redo()) + with Not_found -> redo() + let sp_of_file file iso = Common.profile_code "parse cocci" (fun () -> sp_of_file2 file iso) @@ -551,23 +572,48 @@ let sp_contain_typed_metavar rules = * For the moment we base in part our heuristic on the name of the file, e.g. * serio.c is related we think to #include *) -let rec search_include_path searchlist relpath = - match searchlist with - [] -> Some relpath - | hd::tail -> - let file = Filename.concat hd relpath in - if Sys.file_exists file then - Some file - else - search_include_path tail relpath +let include_table = Hashtbl.create(100) let interpret_include_path relpath = + let maxdepth = List.length relpath in + let unique_file_exists dir f = + let cmd = + Printf.sprintf "find %s -maxdepth %d -mindepth %d -path \"*/%s\"" + dir maxdepth maxdepth f in + match Common.cmd_to_list cmd with + [x] -> Some x + | _ -> None in + let native_file_exists dir f = + let f = Filename.concat dir f in + if Sys.file_exists f + then Some f + else None in + let rec search_include_path exists searchlist relpath = + match searchlist with + [] -> None + | hd::tail -> + (match exists hd relpath with + Some x -> Some x + | None -> search_include_path exists tail relpath) in + let rec search_path exists searchlist = function + [] -> + let res = Common.concat "/" relpath in + Hashtbl.add include_table (searchlist,relpath) res; + Some res + | (hd::tail) as relpath1 -> + let relpath1 = Common.concat "/" relpath1 in + (match search_include_path exists searchlist relpath1 with + None -> search_path unique_file_exists searchlist tail + | Some f -> + Hashtbl.add include_table (searchlist,relpath) f; + Some f) in let searchlist = match !Flag_cocci.include_path with - [] -> ["include"] - | x -> List.rev x - in - search_include_path searchlist relpath + [] -> ["include"] + | x -> List.rev x in + try Some(Hashtbl.find include_table (searchlist,relpath)) + with Not_found -> + search_path native_file_exists searchlist relpath let (includes_to_parse: (Common.filename * Parse_c.program2) list -> @@ -590,7 +636,7 @@ let (includes_to_parse: (match x with | Ast_c.Local xs -> let relpath = Common.join "/" xs in - let f = Filename.concat dir (relpath) in + let f = Filename.concat dir relpath in if (Sys.file_exists f) then Some f else @@ -600,18 +646,17 @@ let (includes_to_parse: let attempt2 = Filename.concat dir (Common.last xs) in if not (Sys.file_exists attempt2) && all_includes then - interpret_include_path relpath + interpret_include_path xs else Some attempt2 else - if all_includes then interpret_include_path relpath + if all_includes then interpret_include_path xs else None | Ast_c.NonLocal xs -> - let relpath = Common.join "/" xs in if all_includes || Common.fileprefix (Common.last xs) =$= Common.fileprefix file then - interpret_include_path relpath + interpret_include_path xs else None | Ast_c.Weird _ -> None ) @@ -1043,7 +1088,7 @@ let rec prepare_h seen env hpath choose_includes : file_info list = if not (Common.lfile_exists hpath) then begin - pr2 ("TYPE: header " ^ hpath ^ " not found"); + pr2_once ("TYPE: header " ^ hpath ^ " not found"); [] end else @@ -1219,6 +1264,7 @@ let ocaml_application mv ve script_vars r = else None with e -> (pr2 ("Failure in " ^ r.scr_rule_info.rulename); raise e) +(* returns Left in case of dependency failure, Right otherwise *) 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 () -> @@ -1753,32 +1799,42 @@ let pre_engine2 (coccifile, isofile) = | _ -> languages) [] cocci_infos in + let runrule r = + let rlang = r.language in + let rname = r.scr_rule_info.rulename in + try + let _ = List.assoc (rlang,rname) !Iteration.initialization_stack in + () + with Not_found -> + begin + Iteration.initialization_stack := + ((rlang,rname),!Flag.defined_virtual_rules) :: + !Iteration.initialization_stack; + initial_final_bigloop Initial + (fun (x,_,_,y) -> fun deps -> + Ast_cocci.InitialScriptRule(rname,x,deps,y)) + r + end in + let initialized_languages = List.fold_left (function languages -> - function - InitialScriptRuleCocciInfo(r) -> - (if List.mem r.language languages - then - failwith - ("double initializer found for "^r.language)); - if interpret_dependencies [] [] r.scr_rule_info.dependencies - then - begin - initial_final_bigloop Initial - (fun (x,_,_,y) -> fun deps -> - Ast_cocci.InitialScriptRule(r.scr_rule_info.rulename,x,deps,y)) - r; - r.language::languages - end - else languages - | _ -> languages) + function + InitialScriptRuleCocciInfo(r) -> + let rlang = r.language in + (if List.mem rlang languages + then failwith ("double initializer found for "^rlang)); + if interpret_dependencies [] [] r.scr_rule_info.dependencies + then begin runrule r; rlang::languages end + else languages + | _ -> languages) [] cocci_infos in let uninitialized_languages = List.filter (fun used -> not (List.mem used initialized_languages)) used_languages in + List.iter (fun lgg -> let rule_info = @@ -1787,10 +1843,7 @@ let pre_engine2 (coccifile, isofile) = 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)) + runrule (make_init lgg "" rule_info)) uninitialized_languages; (cocci_infos,toks) @@ -1863,21 +1916,26 @@ let full_engine a b = (fun () -> let res = full_engine2 a b in (*Gc.print_stat stderr; *)res) let post_engine2 (cocci_infos,_) = - let _ = - List.fold_left - (function languages -> - function - FinalScriptRuleCocciInfo(r) -> - (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_rule_info.rulename,x,deps,y)) - r; - r.language::languages - | _ -> languages) - [] cocci_infos in - () + List.iter + (function ((language,_),virt_rules) -> + Flag.defined_virtual_rules := virt_rules; + let _ = + List.fold_left + (function languages -> + function + FinalScriptRuleCocciInfo(r) -> + (if r.language = language && 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_rule_info.rulename, + x,deps,y)) + r; + r.language::languages + | _ -> languages) + [] cocci_infos in + ()) + !Iteration.initialization_stack let post_engine a = Common.profile_code "post_engine" (fun () -> post_engine2 a) diff --git a/commons/common.ml b/commons/common.ml index f5640c0..a26986d 100644 --- a/commons/common.ml +++ b/commons/common.ml @@ -426,6 +426,8 @@ let xxx_once f s = let pr2_once s = xxx_once pr2 s +let clear_pr2_once _ = Hashtbl.clear _already_printed + (* ---------------------------------------------------------------------- *) let mk_pr2_wrappers aref = let fpr2 s = @@ -490,9 +492,10 @@ let redirect_stdin file f = let savein = Unix.dup Unix.stdin in Unix.dup2 descr Unix.stdin; - f(); + let res = f() in Unix.dup2 savein Unix.stdin; close_in chan; + res end let redirect_stdin_opt optfile f = diff --git a/commons/common.mli b/commons/common.mli index 2f81a64..4201eeb 100644 --- a/commons/common.mli +++ b/commons/common.mli @@ -142,14 +142,15 @@ val dump: 'a -> string (* see flag: val disable_pr2_once : bool ref *) val _already_printed : (string, bool) Hashtbl.t val pr2_once : string -> unit +val clear_pr2_once : unit -> unit val mk_pr2_wrappers: bool ref -> (string -> unit) * (string -> unit) val redirect_stdout_opt : filename option -> (unit -> 'a) -> 'a val redirect_stdout_stderr : filename -> (unit -> unit) -> unit -val redirect_stdin : filename -> (unit -> unit) -> unit -val redirect_stdin_opt : filename option -> (unit -> unit) -> unit +val redirect_stdin : filename -> (unit -> 'a) -> 'a +val redirect_stdin_opt : filename option -> (unit -> 'a) -> 'a val with_pr2_to_string: (unit -> unit) -> string list diff --git a/configure b/configure index b2d5f71..966e1fb 100755 --- a/configure +++ b/configure @@ -109,7 +109,7 @@ $error += "The program ocaml is missing or is not a good version. We need at least 3.09", ); -unless ($noocamlscripting) { +unless ($noocamlscripting) { $noocamlscripting = check_config("echo \"1;;\\n\" | ocaml |", "Objective(.*) 3.1[1-9]", "OCaml >= 3.11 is present. OCaml scripting activated.", @@ -186,7 +186,6 @@ $error += check_config( We need 3.XX", ); - #--------------------------------------------------------------------- # More developers tools #--------------------------------------------------------------------- @@ -195,6 +194,33 @@ We need 3.XX", # Librairies #--------------------------------------------------------------------- +# Python dev +if($python) { + if(check_config( + "python --version 2>&1 |", + "Python 2\.[567]\..*", + "python is present", + "python is missing or is not a good version." + )) + { + $python=0; + } + if($python) { + my $PY_PREFIX = `python pycaml/getprefix.py | tr -d '\n'`; + my $PY_VERSION = `python pycaml/getversion.py | tr -d '\n'`; + my $python_hdr = "$PY_PREFIX/include/python$PY_VERSION/Python.h"; + if(check_config( + "ls $python_hdr 2> /dev/null | ", + $python_hdr, + "Python.h found", + "Python.h missing - You need to install python-dev" + )) + { + $python=0 + } + } +} + # pycaml. Binding between Python and OCaml my $syspydir=`ocamlfind query pycaml 2> /dev/null | xargs echo -n`; diff --git a/ctl/.depend b/ctl/.depend index b892192..15a6701 100644 --- a/ctl/.depend +++ b/ctl/.depend @@ -1,25 +1,25 @@ -ctl_engine.cmi: ../commons/ograph_extended.cmi ast_ctl.cmo -pretty_print_ctl.cmi: ast_ctl.cmo -wrapper_ctl.cmi: ctl_engine.cmi ast_ctl.cmo -ast_ctl.cmo: -ast_ctl.cmx: +ctl_engine.cmi: ../commons/ograph_extended.cmi ast_ctl.cmo +pretty_print_ctl.cmi: ast_ctl.cmo +wrapper_ctl.cmi: ctl_engine.cmi ast_ctl.cmo +ast_ctl.cmo: +ast_ctl.cmx: ctl_engine.cmo: pretty_print_ctl.cmi ../commons/ograph_extended.cmi \ flag_ctl.cmo ../globals/flag.cmo ../commons/ocamlextra/dumper.cmi \ - ../commons/common.cmi ast_ctl.cmo ctl_engine.cmi + ../commons/common.cmi ast_ctl.cmo ctl_engine.cmi ctl_engine.cmx: pretty_print_ctl.cmx ../commons/ograph_extended.cmx \ flag_ctl.cmx ../globals/flag.cmx ../commons/ocamlextra/dumper.cmx \ - ../commons/common.cmx ast_ctl.cmx ctl_engine.cmi -flag_ctl.cmo: -flag_ctl.cmx: + ../commons/common.cmx ast_ctl.cmx ctl_engine.cmi +flag_ctl.cmo: +flag_ctl.cmx: pretty_print_ctl.cmo: flag_ctl.cmo ../commons/common.cmi ast_ctl.cmo \ - pretty_print_ctl.cmi + pretty_print_ctl.cmi pretty_print_ctl.cmx: flag_ctl.cmx ../commons/common.cmx ast_ctl.cmx \ - pretty_print_ctl.cmi + pretty_print_ctl.cmi test_ctl.cmo: wrapper_ctl.cmi ../commons/ograph_extended.cmi ctl_engine.cmi \ - ast_ctl.cmo + ast_ctl.cmo test_ctl.cmx: wrapper_ctl.cmx ../commons/ograph_extended.cmx ctl_engine.cmx \ - ast_ctl.cmx + ast_ctl.cmx wrapper_ctl.cmo: ../globals/flag.cmo ctl_engine.cmi ../commons/common.cmi \ - ast_ctl.cmo wrapper_ctl.cmi + ast_ctl.cmo wrapper_ctl.cmi wrapper_ctl.cmx: ../globals/flag.cmx ctl_engine.cmx ../commons/common.cmx \ - ast_ctl.cmx wrapper_ctl.cmi + ast_ctl.cmx wrapper_ctl.cmi diff --git a/demos/iteration.cocci b/demos/iteration.cocci new file mode 100644 index 0000000..4b62eb8 --- /dev/null +++ b/demos/iteration.cocci @@ -0,0 +1,110 @@ +// run with the options -no_show_diff and -dir {directory} + +virtual after_start + +@initialize:ocaml@ + +let tbl = Hashtbl.create(100) + +let add_if_not_present from f file = +try let _ = Hashtbl.find tbl (f,file) in () +with Not_found -> + Hashtbl.add tbl (f,file) file; + let it = new iteration() in + (match file with + Some fl -> it#set_files [fl] + | None -> ()); + it#add_virtual_rule After_start; + it#add_virtual_identifier Err_ptr_function f; + it#register() + +@r depends on !after_start exists@ +identifier fn; +position p; +@@ + +fn@p(...) { <+... return (ERR_PTR(...)); ...+> } + +@statfns@ +identifier r.fn; +position r.p; +@@ + +static fn@p(...) { ... } + +@script:ocaml depends on statfns@ +fn << r.fn; +p << r.p; +@@ + +add_if_not_present "ERR_PTR" fn (Some ((List.hd p).file)) + +@script:ocaml depends on !statfns@ +fn << r.fn; +p << r.p; +@@ + +add_if_not_present "ERR_PTR" fn None + +// ----------------------------------------------------------------------- +// iterate + +@s depends on after_start exists@ +identifier virtual.err_ptr_function, fn; +position p; +@@ + +fn@p(...) { <+... return err_ptr_function(...); ...+> } + +@statfns_call@ +identifier s.fn; +position s.p; +@@ + +static fn@p(...) { ... } + +@script:ocaml depends on statfns_call@ +fn << s.fn; +p << s.p; +err_ptr_function << virtual.err_ptr_function; +@@ + +add_if_not_present err_ptr_function fn (Some ((List.hd p).file)) + +@script:ocaml depends on !statfns_call@ +fn << s.fn; +p << s.p; +err_ptr_function << virtual.err_ptr_function; +@@ + +add_if_not_present err_ptr_function fn None + +// ----------------------------------------------------------------------- +// find bugs + +@e depends on after_start exists@ +identifier virtual.err_ptr_function; +expression x; +identifier fld; +position p1,p2; +@@ + +( +IS_ERR(x = err_ptr_function(...)) +| +x@p1 = err_ptr_function(...) +) +... when != IS_ERR(x) +( + (IS_ERR(x) ||...) +| +x@p2->fld +) + +@script:python@ +p1 << e.p1; +p2 << e.p2; +@@ + +cocci.print_main("def",p1) +cocci.print_secs("ref",p2) diff --git a/dllpycaml_stubs.so b/dllpycaml_stubs.so deleted file mode 100755 index 513bece0359b9c7890e84bdd1e4280e51ff886fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47376 zcmeHw3wTu3x%LhOM2Qj*l?o~?J+auct^keMW7lbK;M!Nj5_4XI#^ z;suM8T3V^4YAq@%MOq`I23u5AM6}qVVwn-DU}=lin*V**`u3hRE70~l?K%H>&clW; z@At0z`qsDBzVEr!S5%mlmF2iwXQ#8H*w-Cr7y`RB>6l?of2XT6(CO!VMaR1tfOk}B z>B6vFN5!wa#c@{NsinNTK&QBISA3WVf_B*4 z{8JHc)_*NJL}7mRjo2H~88UwI4CnHvzvHZ2y5W0+uQ;zu?7cZJ^*uAY{#T4g;so&5 zkW~=syQegG?3v5bz908{}t@yCK~2A(%$aZ%B-71N3>2Mi#@;AsIAQ!rUf;GUiAiIT61eQT= zh4g_;htxwt5N=_}S0O3L?U30Jcl*7o0NX`BR`9n*9MuO5z7+aS;XgLQU9|zqUxZ8n z9uN7eaKht|Z$WN`tcAGSy`p>**cmbu@_oqZ5N>lI--SE@84j5R`32-C2)BzhsJ{>6 z?Z3XTRgLSBdb8BzdoxA&l|cZq> z?W3%(ZY}V=xwpGhp7V0a&%X2QwF|nOTUK87^XC1>O*y*vF>J26{l;}H1afR%;)Irs ze3=#hBV*C&iTDLw-PAh&P{v2Zm!2GpF|H+qG?SUJ3TYqTg`b)mRs_$_t|1`^< z`;f=oSl=x!0kSFgSpB=)>ffbS`3H|n7r^o!w8mrq(V6k@TkQ>4_PE37Fx&H(Wxpq_ z^444NIad5!tNi1v_Md0P@3G4BTkXBXioe9lKh(0{6f6F>mj9h)+4l^~ezUCh&a=jI zyOqD6Ro~qfZ?$+&qdgqI_pJEyto~OT~pSFf6B6d+-m=;R{mFv{9F%)Snb(u`S*OQ{AaE94eFHc0NekTmHwbLo(apI zJRfm4`hO2=Jvz%O?{#au!d7{AvJlzWzk99rt+)JXrq$nXTkU<-Eey#1-EZapnPtBp z80}~M=UMg&TIr9r;`>?c*<;lgv&#R{%HPSd*Eoy+(yD*8;Sb9GmOZbr{Cl`zU)tjm ztGuLTzi(OoS8t8q<3@j2UM0lcSXHUj{;igOueIU}EPEYoweM!jzSmp+@pWtdF17mq zpw<3QE&G3B_2*NIA z!m7W`O82sW+;C)fPTi#cZ{`P>re#-oQ#7{@OPtwl@?pUm^5GM* zi1GrnaZMHNVtJ(q@1L))nUmKb|FW6-8WQ;rV2}M*;W!N8i@0L|KFf}b5VXB(zE<*#LvU{>=E8Zf5*j`d!+v7LD!Ad z#|2D(BEs`f|7c17G5U1?_ICLL2(LwYF5^s(raRlv--m=}TkRc(^2&|=k4Jm1pM(0v zUS|TQ6=1(A`P-5H7T9}=a3puud<}oF^}?0fu1J42(hpJ`liTkvtBgkcRf#}6;rBcK za3q{?{G|XymDB{N1}efgg&hCHdH$)PvT#)*6fdXV-Hu{60X zP*v{4YNN3#r!>O9vDzEsftXVgsI2f;L`wn{{&+N+sL}y}3IzE}s;d&wN~g3sQliqv zYO5pZOz}`enVr&jD5MHdsVY?|PGzXFBvz}-jZ0fIauwGWNQ(>O(aM?8 zaIiQLmv&UwpbKtvew7;;t3`t={QNT~Q1T5U&GgzB%u-zIpB#;ZrX}LlB?(=Wmo`>g z7K)HL!RnY(8jQw55vR1IB3h-}?k|bPYGM3%I8r99P}WFP$12Pe;Yeb{Fe#fkg3;{^@lY^&i15OSKpBUN>GLDCh2e^jnN)&&HD)?puAMX;nwfe+ z1bz`HNrdNxrbIFd&x|o^Fk*_L(U{pHE6U8}HP%dTHY+2%qghmlS)koT^32ZZ5Vu@^ zL9{Z4G?^yP4E4$nM9M<`$)OwF%u`i>a-H<-frk{r^Aq7{1cNl4qwg;$4=HccOfnGs z6RM_F&q>hv^u(GMsHmo{XN+cv@{m7Pn<&TJ=A7~;0@`8x6EMNUdPc)@3*FgWTxtB3i8di-#5?@WIq&RK_7zt;F;#Jz5s=kUqqBI(>lu`;X ziQ?h1a@AK9Bm)|k=&{w|ir|DuDQA)_7p`T5P7TGFSQs23O=d*GCD92VCWSHa{c`@xhPWY2M=`VLiNd1lq={8Q5n z92<>Rq$4oihiar0;I(~nb>*B;9R44Qm#|qGTzQUbCtV(r$kds}9gD~EtGps5z95R# zlby@p`H|qb5SuBXT*~d7g&1s=b6gm^C(J)2S1K$#ArYb@D2gtc6y=(@kXKN%N}= zf|4f%I6n$2q5++BoV&BoLHSi)z@%uf8V;kaBLoGoH7Fq+AhSIk!1XYqmjJyy=_0f) z9n~alZi)2l?Zr>42rIWyD2>rNGe?4mr9rtq!5ZAxrkOW2B-XPN`IM59>Ns|YlH46k zMiqtc2fgi7B10~FCES`vHkRl#==4wJe&x5!S1RmhXq10 zDlnlC9v1KzEFChb8it8ga1oL;69;PqjD}`E&)dqBNH@Z;GK~{Yyv4 zGAPN^YL||j5Gk$*l!P+uC1D-SCJ`O2ClR(0CHN4wlo-3WZU(E<5}eU@3Cl2ngk@Sn z_0JuvX`#8*IQ2*$4R`_WKG#d&?PJ{#9NdKTUe^stySi5lg1m*>O_tu7ddbpLzzagE z4mpvmLzvn@U;w?0ML72~d0`-v7euR-J9rsz_>h2ebJBZZ*r9~De>4J=;nIg1Zg1Q% za;-5b5R35?%RMl6xfs-?I6A@-?AU5rgFmsR3Gspyw-~;h^K+bG&pcgIC zXM>oh;nG?h`>WFdcdsw2mR?2u!t@SFkyvd6N7cv`;m#D9)d@!_4l8smZb%~Pa-L-S zdEQ#Bc9aF~&WXD$>^ow$Xb2A_c=|BQr=EZ58+D`SG%O zYyyvHc`nUETiAr>(y`i7tk^pE>QFo?!4=^-NRKm{3-d9;p`Je2(}t+4E&u=i;1ZCx;d0hL*wQJ@bf*3fGXEP<|NS)_zH!C{ z;EY6Bc+BTN{jan0IWEBQ8XUK()55r_o9&FiH9m&rhQqiF*x4B?yr<%woFZ^;EsOQD zQoO#&+W?ycHw$hN+%CxLu1weMZjHSK`wI>d93?nTuvqX~!E(WbV4dI{f=dNg3a%Dh zFSto?tKd$-y@Ce?v+vRE%oXe>I8bny;26Oo!C8Vq!I01A-17>Z4tA1p5dM5F9LcvEXHb(*RtVMzE)ZNSxLk0R;2Oae!Oeo(1$PPV z6Z}H38y?DKdwUD^7aSxwN^qQDvEa3W<$?*pI>9>xmkO>FTrId>aFgIx!JUG81rG{l zFOl&V>?b%-aG2m2!6Ly~f4LKbD+Fr<7YHsETrRjuaE)M#;AX+?g1ZFw34S5i?K?95g8c;t362sR zCs-_atzfxeLa2K5o{6MEVx~8m*76ZF9cWLg?D7In_EM~{rR=T6Y*>?@g(e5h)LWxBM!xW zg;<39X2h#;PnC#!Ok0WVcqfHej{ADVd3X+&h%wwn+<|vGh@aqjTjI;OKS_KA3lP@% ztZ!l6Bz_z9cM7{H9Yf7ycF+!5PRZ&BJp)R%SL=3?`RM|!#z*pK|Etg z#6!A^iGReqE5tm!dqdoZeiL`1pTvpi7qJieLB##qUBqY5PU25+&z*=vp>A03vudzz z63@haNaB;YS4PB*zEQ+Ac!r;t!aYnP{#{Glh5K~G5AiM#5%<;Wh;QP(7vcquvy|8i z@3Ro2ct3>*TdgPNV;qRL!tTVc!p_8juq$y3o=+zJ5JwPL=d;eo@dFVLeD@<_?hhpX z2G8abZ^AuS;>nIvL|lev`-qDiCrBKLcaw;?zdfHg8~2HcEAdVT5%)M(5MRYJpTzC( zBVrl+hPV}eLd1>79mF@_2gG5x-$|T=@y9x!H5cPgJQd?l9Eb5I1~LA`?_vCjKf?GE zacDT57{K@wD=_{<+_$VDj>7m8zm4%H=E5#mr-{qSL$D8QL0m=N06UQb*N~UMUgW?Q z@~7Y*#K++u#E;+~#C7lw;?Ln9#6tK7>$wyDLA(S0LEH`hATEc05R2g-L_E}AOf10d zV&W6<4`Mz1gBXT?5YK^s5XZtlhq^Du`uo+-hlBZHe&pVS7Q9JMq~}a_!GZ@@hAQm<4?R1<4>G|@h6^w@h2|D_!Da} z{={aCKXEF?pEv>IPwav5CmxS+Ctif{CJw?l69;2_i5Fsgi32dc#B(ve#018dI2z+i zti$-C?yQF~zQkW)e2KVsK8QFA<4e2*<4atH@g<&z@g+Wp@g<&y@g zzQhwSzQnI!e2GmMU*bZHFENhs72HXjhVdnChMyBl;olDce+s`QJ`H~+UWf4~Zo~K! z=VSbdD=_}Vw=n+1+c5sb4H$poFERdt3yG64{>1(mf8xa$f8u2rf8tRXf59z8tVuhF zV=(^2)fj)`S_cD!_gXNYvWa_PU*gg52ja14Ke0FLO*|3)LF|kE5c|RY#IxWpM7)48 zkO==BMEnE%hxm2$m*~Uz5U+qg5vQa7#2FYb;!OA#@haGZcn!vn=!d@%{|5UIVc%Ue-dwpJ&BMy;@$99;=Pz(#J|EHh_KOO;zO`E z@e%k3@lp6Q@hRA!_;dIR@j3W6@dbI_4yQ)ER$b=b-P`ytJ|XsceL`Kh%vGu(dw~=T&bP zI;ow=*8Wf~Iipis6vyB>`C`Q}DV_4cTr zK9GE|;w#Aqlh-M}ihLA#O!3Fa$B@rfd^P!H%HiUr#=pyuact zozv^8?bRP@;3RpHMC?mIjW$U4SRbdfX#eQXS_)0>uhyy!$(<* za+{pSmg>_bd>zBbWH-h7NWf1Jfc)*-P>pWgOe{71lXoDze&b8nsY}8-1i&&UHu-W` z-&{qjk6H_C-%}%@*LaCkql(-_7zk(2G%0C>4s}a9+f76(?#YvqdLneui;^Q7quyez*U`vlJ_q{t zHTm{&#AhH6)J49e)DC+fAlcA54(>s(VyoYT_t$Ui^`B|=;hVTwnt1$wt%>M(+Ii95 z0m-ved*@8jZst3HA!XNpt43G(P%f%yXdU47aX@lE2Csf&p30Mp@|fWmWWe|!yBI3B zX~uzu4cUueU3wIZi^-H6io&FdgJ)LGtgpe}EzXwAMIiyBvewE4EH{Ne+z z9bDvVQ8R))Izx@$YULo9B#e9v6|$&?n_EWoxGj~-5omc~XQ!qGeKx;|TDG_EZ1Syc z-_qt=#bna18M`1RwLGJuj=`-su`t=*{V8`)xv#|Z%3-H zkp@Ox^ulYOp&2@T5tdTr_g0?WH08}SNJ9&D9cI~@F&=Ui4QEJX2mOh=cN|pW=^DO)`d%Yv|ZKHzTC~gDBXUQ!1hgs#1 zc2^pwGj}7)K;^wvBc|&{G%aDA-ITv$g+)_z>yodcVNGyS-+dXwc3*1oaU3>y7@PmV zUzlfcMv}#;N+uC&iEZjQirQLiD6&Qn;#o*rOPPwRQa6~2D^t6&QBXDPj*Lp~NOfZ+ zlk||V$QNJxQrQ7V0m>qPgtj+oYk!SZ_EiNf%qVDK>iJ{YA?*P0Q>5#x2Bo7bHmUqu zo2t{bw!Ov?(mh&EW6a0OI%6ws%WAi|UME(qMG2{4tWcG~%1W7wNl9w|M0+mCXyJm? zDa;`DWLK4QTf`Pmnvj**gikq;Zjba3HOB0+7?Ap*QI===*_P=aVsYsX-Ur&Wgo!dtFZEQ| z^)Mhcn)UcrFKP_BWy>@f@0P6>s5Wna^K>7&!Q+&xEn!Znquj280jX^`-ZqCO-QxG@ z5tcoIb{Pyv-NQ0mAA3|e(t2>+IC$Yw6|@#>aILdWV_wV=|C*`o3mbT*ue8j9@vdSnHftX15z_liMz+j z=7BKRZM|ozXIYKI>}(83oyKfxhike~yBfK{b`A!l{@B$Wxp$p+`*HGN>`qlx46-vY zAjP-x(?hbAMRQ1yH+ht*XP}*p0jWl2^BG5ztmm1%?8*Q;0|Qdiy?XS7Gxwg?vm#l` z)V{D%71ZA@hykhYEXdd+vVY9anX8Ld`^XAC-?g9oo#To_f~F-5b{*s`Su*?C^)Mjy zP#4w1MUA{(rOK9Nc{K~mSUDbKNP6YCi_}~>SOV>H{~lmtAGYu=t2Bi4?3-pCHZ`!*G{*7Ti(3RSwdUmKK$)qW(KCN zV^zk8rHcx)DA&wvc1;oijeFT7^U#t3DZYE^7Nh*hwDV~w38xe46hfWDd8ZF&sUnkh zkqk&}M1$2~R}G_S1UY=(LI>1F5VQP}A#AyxnrQ1|2+>u#E{q*4t6jp<*qcXovp2i! zsu_^tW#06fI~!&3a+%tDwYrNFcGIma=fbonH14!ZV?YYGLp<9^7miIgm|ai{;(TUy zyP!hqbckLe-(fw80Xa=en2?QWTEYZwd)&ox2Q!)D!+<@t?$YH|w}9!~>deJ{E-GqT z!f00FE&H+-Z?}tQz@C%Uu63&&$AJ1)Ug^2!dcS+guXpl&)KI_iG~E7d!>GVI7-x0m zY$n{nySj<1ZM~Dvs-y=lQb}>Xp%6zL%%ZN5NzR-OId4`u*ZtF+@juvg7O0$cI_Dwk z>JQJ!Y-LZCWAb5hT;HLN-=n?t8~YipYx40zgnQ{vx;4B*RS&C-AB;*Hkoo7U7Ms^F&sX_x(E0l?KL)S2E~gL5!Jg;v#a*JBV;1*2 z^sIhkU!%AtUq2MnyUF)YOZ#LOJC`o4cXF{R?d6gG#46i9u&r{X%6K0#HZ`DBtQooR zdR&Ul0p#$?ENA__tG0O)EtzGRrgyTJDr5=^!S!-pMcsj-a22&5IqqHDOOBGb6HUH` zdT@dNsI^>>?MwRVlK2MHP`|N#1RDjb>kIj5b+cA^B#kThTUm@;$mf+%-*)$szpooc zNcpcj%~<^gRIk>*_kq5>?oy#H&F{^;G(TFk{^S0{VQ&r8^NCF-`7CnPZ#;lI@9F*@NUL()vU$c*nnGO(ZSyUsMU*L4N)zOs zMw>6G8sr+av4+M~ta%A_7E-6|sVg>AlF%r94$_hdKtc4jrr z*xA&yk9oIbwPbDK)!yuGIK2Cy$+uG-Of}jcg5Ws5EDHN?+GX&V_-+9}dyDaow`@N{$mXT+z)e!#y=ip0CQ_VF=3K zDH&REk-*B}?hTV)pjoQNEohHA%xdwH?p5vM*`M}*BvqF4?fjZ=M~^%H#=Qouyf(uZ z*Vebv1H8K^iR7bbRQ<-}(0|VtWMysABhhg4UZ?tGI0mlqxGpBQsZzN-ra{AC^~&F? zIg5n5=pGpj-IdynF#0oQ`k3iwAs!BpK-!%=XU#~vGxeO6whs3?nRW+GFEZ2aNZloA zxuR@^i|G|b)pIYoYtdVGx~)^60L-XyduoDJqti*(xD^*PGHcwLI)!P~ZJvvKduf*~ z9qh6tb&&bAU53MHb!nS%9W=AF&8b&)LbW1pvD#1Ww*UFxyQOUEVVANgwa6%?MU_&0 zQk$=}r=7BO&m3CZ01BoAZuqTKyLnYODaL$4T~imn*JApqR`?Ir#}fZjSDU~jDgpp*j>^%0B&cHJ3P+FIXA+jxE-OrDO8 z)o;8$@87dhb3>&%7C>$AF}7FkpEft#sv>q`BzXwKqt#~b#!b=@r`0W=qq>@O4|Uid ziv#*9BkLsrGt()#zdOt_~s6zOdZ&sO9tpb;Gw!AILOwBvyI8pbnxM(GNM8*)tbi z^+q>GPa1U5w-+^b#+1QC=*9U$zUaly)tE=Syz}EC8l;f($4jm5jpEj3G0s8EP@cCJ z=QQ~CVs7EE&Fk1j8+v@J7UQM|DfiFV*dO5+45i%yOD(5a^4+)48aYYEk#FW#qJ1i^0M6 z#8;Z1qT0OXt1yz&@NstgmZq+}FLWS1F5WYpvynA98-8>Zp5H81FU9IF4LE#3w>TQ+ zhj*O#dCuxzwYP6y)8779$f-}aw--QWLmEUzKil4Z9mM4upm$%}-aa4lQ%J9$qYlU_ z$PUQBb?xnoAqOC%o@;OaBV;Ceem~@8$eF)rZ=VYJCggDl>!&1s+1~yrh4%L6AYC`Kw@-j{+SuM+30VU=!WOWSWXRr`@h_5CYg{zNsr0dror(!O=Qf_^pi6Q?> zKdhuWpuWW=W?(-IRrNCSqgsfS4{03v98=mB|AEgjiB(Y&KZ>J2Nr3Ol9r-vDzp?ax z_v1|Nmn^(bG0Ep^G?x!izye;p_l*vIvgz=jYSQ1h)8B;RHF<7bi6?|dwj&leVu2$TIAVb#7C2&oBNjMffg=_;VgY4=c5GB!q|Q4{YjE$9 zxJhuk;0J>H1o^E-KKsxQk2UZX8h$q?^IToPx8uDoSrEsnX^aZZMu3mFZW2)P<^1LP*i?T}@V zM1 zA?HFyLncD5hTH(T335AR8RQYjI>@gf??66+v@FJVR4|S&;d?Qsj=^umL%5xokKbZO z_`kAoJXVzIl++(L^mU^1Ui6EG{)*`IhaHCgvFP-xcG2lmxn=l+tt;eALmy)3V-5XE zL$4J5DCDg(^u?mnzaBF5rw#o@L*HTODMSC<(7TkQFl;RIctbzK&@VLfe9`&5(-op~ z&Rj1#=S^62&b@h}bN<~XI$mgX?l<(6hW>=;oWC1H=RAB%bk4Vr4ZU4-&cEZs_=Ao5 znT9@Cbk5CuL!T--=X8nae0XWT=qEzIS9H$zM+|+P=zMs0v*>)n>0Qy;hCQO64E;0F z`$F%21O8y6-dFT~(1(c5KKevI1^Nsle75MUH!3>&b&KeyLT?uRH0aAjr_CQW^d}9y z#n4|Co$Y^HblU$z(P@*5odFpjI_)r2^fRH45q$vkNur+xeYWWA`&`l4 z&RayM-R?5<6{4Sw@TWy*J6|yLS41C(@ExL`1AVXP^usSiKNtG375IbgJjho>9|V1n z=(Oi3(XpI6g`(#{pD8-Ws8n>WC)J|k!6&C)^uf@ZMdx^ZS9G@jStI=`qO)zg4gF7| z(>FR*;tw{a=`A|#cDkVtHS~PZ|EqT9*cD6OA<)Z3zYuzz=ffz17g)5uNS) zNOamt{Wv{~19ZR67oFu_Zs^w=dd$%4Mdvzvx9G<~e^_+dd5!3_;Rew;kKQoC zcZog>;eR&t?ok9_WBBQ!v&>PVv&`{^KHbpq^FwN5ni@l2Xz1S+on!i_=*K}{XXu*^ z{db1GPjr^=#P~-am*g6He?vdt&_|2Tx(W?_nxW$t-_*wPV}`!K(7$Ks&lvj4hQ8a- zzclm{=BCR($Ivekoi-^Joi;Bu^cxNRHqm<`%>$xy9eC8xekQ*7@O}qgXkgJ;)2zMvzk@`mSQ| zyCLeAyiDRpTs&04^je8kB%D0{`hb&{2;p~{^3+cl=EbAx+x~f>a(}7%xtF{W{MJtu zD$sBPjLkv|l_t8f|cszJOg!?gf<9fsG zLI~F|rsMeqWgs%T@kB}<1YfL(G9Ax9DEyF_oo*E3yF-|c=OvWE7*N*1b(85izGEOf zCS^LF$543w;%-dK?J@|@MVOA~A(XBlZoLer%z*IRg*wk)C}W_T^@2J<2%4nw@cf6u z^B=c7BD$u2XWLE3^Cb$;qZrTrx#{LXXIpu^%=0zMVCe4VmdmN>rrU)ylw2A>Hm0M@ zhq&n+oGVZkeibMiZO83f5H}sq4=LPFx|>_?LIf}!?ZWd9%6rGUsnY#kY@}O=`9^We zU}{%iCh6Gpm3KmJ(e`2*Zf?3CKxe&7_ZZSWc9?XljC5;|ZVl48WgyDae+r#8W_dg> zT#IxEp?86BV;+v%GZ434eusMXt@!>X!rYDND9=IMbUaT!fOMPPM3RQ-T8(r(hij?B z_dDqrvh^4IHIVhQef+)GoZAm=msb(bdR-r3x--Gujd2uC1(xM*7a-ksmjIcD8b_fSZ`)|{5p{;RoOpy;QX_fqIyr|7KqV(>YPfsW^1Szm|IoM#^J zA@~uu&JOpO+FyvB)zukldh6`;@y3}U+4%inELCdWk!N9KPX=;+am#|&3uD2c>^<2(wV%)xcbEjud%0uukm9^rm01e(r)+dG+Nw_291kvT*f^T{r9h zE_kuno8>(L?rtpa7a;3VA4i7qZ9rZl;d)NK1$gQhoNEYw2gqwD`NH1=@*2u9!ao6i zdn|lP_-DYCEKF@V&X>T=;oqss^4-7sUyz7K?{MW%J8GIc0a)a~5uPp|j4Bl^I zI{!5A1qPo5o;3J%;DhKiYRhrvfWK$(GVqB->G%rp+YLS!oSz}oTaGgi{G>@~{!Q>g zgV%va4c-X;LxbNAUOqXUpRdP#-{ALwzh>|Uz&lMzr+*OqB7;8!euKgJQNE`P{!{S2 z#p(P{g5PfNXTgiENXPSapr0B11@O-e{v!A#Q`6~x1O69-^IM#OY3cYk!B-jl9q_*y z{P*DVrl-^I0&g{V3fyP-zxqA!yL9@jPW#)lv4p$pQC6oDou1&U-TB?Ar*kU!v+jD( zDaRQO?yh&te<`^6d+#&B-Hoeb3Ap)t?$zMt@2@vl>F>1oL*SkL>EDNc1iXK~-p}** z%bzgP_e6ay250@RTl{^C@3%O=|L<RL5u$k z{L(8OXAJ6M|6j1;U$gk{E&eBi_eU9>^e!42>%zS;5@eF)(d-y7Vx=OVIQS(|t};053xm&tf9`?K^1cavHp(9)e1VnzUW>1=_KiA;2$ITXBZ1Epk{Ar7CviMsT z-(~Sn!EX=XHw#pMalCRA6xrCGlP#WS@i7*kYVi__CoJA%@nsf&*y7JvybU}x3qFpv z(tqBt;&)m6fW@=BxxLlneWJw&8l2-b+~BlNzQw0nTzzf-TF1Eu>m=J3Mf`NM*C*|* zv(hiN_$rI9v-oC<|IXl?ZwC#|_8xOI_Wv{Wbqls<0Jys`{z8lATfErdw1?l|%zu-` z@3i<2EdI2`+bsT;#s6S%*8eAiv;J;4kllv;+e6UVzntPQWpG&Ox zV(@8LkG_e#EN`|IA2m4JGvDB>?{S(4*Wk$+i#5(-)iwUEWX>~{5_U^CAglBx;Y-X z;O@ruoMZ7zEI!fVGc6vpc(uiwEdGGSAF=p4i~q*rZyTKU{m9_#k2~ zeErRUt@y87e1^qKEqv3EU zo#mYZ?p|;0g{y35TIusFehK(8eAA@68yk*!SpFp{Y4X|P51l3#$~XH z1x8db>MyH^&Iwfb)qOI5pt{DvJ+N3sC=m+gjU0U85Qh=|aIl7KsH1MK`GeJ!m9=g? zzRBZMHHB02C;9v?V>Paxu0`FHQ?F@2k6Smlmq~z1|lC3M%SbL2^x7CdJRt8$x-SJ*m4{0c2+sTjL19Iptcs!Ny?kq-u)3n6Sa(l~FkjA` z6b)8axbI5yP3Vm8F-Uu6M8YM}p!@X$-BZ_=Ql|HI=d{`?7Ly+@o7bVyv!Zc~a9L$E zqJPMq6L8`@|I|=fxC$ShP~8oA%{M;`k=gkv@pRDz(NMf3q`t;bAk8g|M=NJW!@*)q zG)_5xprRsL;+M(lSvkMz%6K>t8jIxzUm=kf>G_H|TaZ~{+G4TV(m+KO997-GkJVO3 z=oj+>71cD4@xEViMW7_)z4NF>y#VddO}sLkD8D>Zdt)>nWM$$qzM4=;0qm^D1YL^N zmW3iE$b~d&L@NS`(rCQWY#$y!NSM7$RAU)L0P+ZIR8iyq7~H% zCJ`5xX{4t3WIlu8**!lP)M?T+*e}?M&&wPxtcV5@e!AJXX!RUrZm(rGDqnJ25iwqP zE{aCVFc93~R^aKxN1&4Mt<3$e1zXizbXM@L!lW zgxw9qV&O=cU%vo~0I?uUB(~<59%48dJf)v9O)7P$+q^vrwR*;uSpui$kki=pGyUY=!Wlbd6R`NIff%IQ~ZrMvl6 zQ$vBEOm4WpUPQf5Ke)@6eE&gbLUHyU#a&RP&4yEZ70Vh?IrgJu1h3Dh|h@ zI9^Np97E!$PE7*W^xpEqj^$UWZl!lE$nEZX@~hlEk2mqAhD*u|!=J?l8HW=v=}n=Cy;x0kj|FI8|AZ=juz~Kb8i+j~<`TV*rF)a3pga)w z_I#XbGvzThZ;|DS6T>^->iB?;K-O!2j2WzAj{VYRzs&8Wux zv=>dv^~>##G&4QXnIJz>+i{Uke|62xs~ZJ7VQEX`M}n9*sLh;KcC*zHuvD3zd6_O| zI1n9-N0-GoNe#Q_M7kZiWY;a!#L@F*7@8o%tv$~(2MTlNwLTCy)KaAjar_~52;{mO z9UVv5UUz8Gf{IW;9Rebf#~bl*Sve<|E?d{l4sg7K6C!x-+?aeAb=grdiPt}w;Rw?0 zpe@-SIX049UNfW{URjzWw<=pXWjs_Fofoq9;xYop3O_a)<=C-bsKl$lvmM4b5eP@B zoJ4uZkHeC3>^ z)7fe1NHtG1^_iu%t>-n|!|H?X4BvIV6vvEse%T*V4<0LtUf$ubyMvYG*=V8LJ_eaSt;7BPl9~X|*3_&{ zFN;I+hN601p}&xO92$zd7Y>BqUDUlPuXfegxu*9l>4RkD!0x#qN>MX6?U}BZgkp4a rZ*b@z{7{)0R)iB_j6wwG?2cbOFD|9&p)&1Yhy%g}h6tE5l12Zr%lMx3he_4;@wh?~cU(t_hWST>fIyVTA#K}4~Y+w-& z;s-lesMVZq#gf=2r5(?|cNL4&(W4nJkeBHakGfdLM-JbecYOEtJO0Y=-yh!He~`&8 z&Y6hQWcTp6i;I{^neMWzU~vgUr`=D{!$s{6BIVH!-N)~U`r1@oR~h>FnWy~oe?Cql zWo)B+8stnc2{ZBjzYpJ%n3$DmDo{)+SYD*NgD6;0#w6w6%BsrL7utR{db|=DIDVz; zy6IKhDrC8nk`O|D>`DV+) zNXK)~x@G%AQu62nx>%c=4V|_@#mWp|vJ|PCMIRmFgq2AGzs~n$;;eHPN6uRKeKO53 zsGdGX+w^B5?NIfn%AmTLh=!Q$(4uRTh;f%IKo^f1t{f!oNN| z_6d*tEExb>TJ<;_E+ED8YEEjcTGNy8s%^b`*Q+vhWhVxpxv|Vy%-6O;=;AU6kf<`A z=&IUiR1!a)E{zL0AcyLgJ-E@Y(tRL|-=+hD$$|KR7JI5WU&xXJ8ews?h$4&Zq}>bWLBidvGV(nPrh3 zotZEX3Q;oTy8@CSqr8V4C?ShDv29Kp2?HzgEUdWOV3M*JzWst)_Yjybxrmr0a^~Wc zQ$vj&N%HBuKu@C{6?z0te$X`JVg?DTFcWdgj_0$oLogom$?XU$fBULaLDyob1}~YA zv%ySZgt85VW5Kvc{>bj)P1ltyEk#)2471)MeWNc}Mwy%Nj3rnj-En8M6)TKL(&(zK zZH^RpS@hLmE-yF>!PgHI6NchE!#Jn9d3*4gTE1wfkfAIcB!~c5t{yU=9odx&-U#e|I&XO!$C&b|DHN2mJ1E>T$y~EMBuUBgB!)&MStfi_e~$Num~$R|bah3e9Nhe( z$=}3%ED~0T0@|ivX;BcbD->opuf1z%=x*Y5oBv=upHzMS{x2J86_;=%Q!4azJD$`h z=O9`fOIJo<59Un@SVQc`J!Jn)?s=g1rQ<rOOnM$F#~0W?B}npb7*)lCJ~(e_Jxa*jcYH z6MC(N%fr4Dk^aW&4;Tkip?F<~>`Qg{+?Zjk+Ks}K3Sz^Z*4^{ARfRe}DPasiFE@nFcEuRJIJN!9eNT z+ed9Ws(c$q>Cb30o{Cq`($=QA4xiRiU;4Y`EavfI6BH^4D%e@;lZU0E%;9>0;2o|T zuP?lD5JVu)=a%iTcnrp($`1&WFZM z^91Y{f4r>fpk*~ReL)H#xI*%zl~)U(a*(U)Ux=LcQ}1b;Q!_mKc2Bmgj>L)OvF~XT zju*}QGeZ1qVK%H##%N=Sb~qOoBLFb&asZI8X4P5}!QBsY^PhDBw5O zed`gnqIUqQd>9REG6;w7w(=3mOC}~j@z;%We=IPmrU1F5CdsM4{5jX%^oSVMC3ChKqNmDnB_mVpbmBkIrCq?tPVU9=van9)G ze-F)p<~SPb!#4rfm&N)Bo*FnV54{vSv%7%4+>h^eguKjZs@5GMH@4;T<%KreYBH;e z0bnPn>o0ehG*3usywpM=B2);!bSp>7VcIf-q^VoFHo{<#;y&Cx7ZU=s{m(vwq`93W zva6nnIC?I2JX-bZ2-daFYq1$!6=9^Jf1i`Osve+x?GqixFg~5bQ-p-cE%rqrGM*HW zlsH0)dCtG#0EP9TRStG1(T^8}Sxqw){md47o}Q&=eNxDwciMvl?Kit5Uao^^AB+Zg ze4=l6NAoIe)Q^NSG53$dKem8D!bCb9tiF1L54^*#H&?h&a(RcN2=BKcwoDV2f28Fa zVhazkzlVbDrFk2oHpcQDv^X@r`u-B6x8>G}wj9;;>T>dHd-?^tYh?)!kkEx9{vnBi%)KauOaigLj+MWP z*TK7}6=rmJ5+ezK!tK@rPiT)q6r`X41^Z_4re332&<3@DiA(ERmuvM{p+Q2c#x z1zOwL+W>8y|3ds-8enSY2(bS50bp!rYhv+FX-*7(v44b}07d{Od!Vt!UpJt;G0^@W6&=7H z=xAf%?3|pP zj2$iPodJKNDv3$_J5OhGBjR=k-`Hjrwy=!<%!;(FsU3is>ECh_ z7yJLvxdI*k)gY>WW`_E25=JI=w$>g16Mvv7ETe**^WTsFs{cEd8UFi7{%@f8zlGrc z7JC2R$o;Pz{Vy-^|LgnwU!f&jtgRJ{Z2k_wzjqAa?~*aH1^nGJ06D-vi^kf>@&D&z zWMg6N@qhCAuhtsCf2aF@0F!n$`r8&^TeH8^FflOwTWH}VVc`xmQL=D0HV2p*S%3fS z*}vp!wkAMFYYSW8UvB@^RscOS6VrdushV3DTiO0Y0{g#JKwFdlTESns{*^zYlA@xB ziY)E_X2Jf;Q0ea=IIDWt|IO`xR3mR^@;?v%z=(+0xdXiDnK`%s^ekM=f8W2q330Qq z`TTD}{tJltKhN?;&W;xD0G+>eGk-DvtNQ=(`_Gf!e}NIVHMTSPXLP#_2NC&YAq^)Z7FhuD`j zsTLRd*V^^^rHAiuR~f$7g)lTv@qBi8EdH_oIFO+^9PPujrtD1xUKZf{kbhG57ou!Z zbaB!i1~TfGA!M9sM0;H=$ZbPtb1_5Px&5eU0=QYCeP5DEd?CfFac;96F z3Hj>E=~TU#-KJ5ClBDM5iGTODWQX!a!xy3ZuE^dnBz?J_JBE|#S@ zQGkx8|{)RJU6X)*iOCyF|ikksHpmUd`@ ziIh4M7jlNOmU zKT+!3WH0y0SzmF&P^30(nu&O#rSr(|yzf%<+j@0=_N0rm2O`W18crYoYL+eCh4yF~ z){^SE04bM+5r|dD_kU$e(LVb?T=-Ep)Z9#`6Lq4yQ-zn^DUzDi8_BVk%uA33c)Vi6 z+@o+6R4YjRjS%V{X@xi+J5-MuI{Qv4^_aJ+8=7&NhR$&k& zKr8pXCbAgPoqzB}vBq-^2^wT1s|Bcu3bsLT?w+y`6qrfA!kRBcd)>ujq9T2M&5PK< zC7Ug)lYyaT!`)+ zUi+cgQP}NXMczuN_JTqOwJ73zW?#C#j4l@gW+lDt0DmvH-KhyP*@mXy7R>yL+3D4m z^sk^zu@BaI+2TKw7XeMj^G|&_>e?o#)lBcP0X^Zw72w!P8d+ddpGLZ|-Xun4zD^HZ z44So=AfhE(?`4vRrL^%o6iAg16`qc&^$9fCo>SD-mfOYIK6dPrRY^50YRsG*yoJ{r zogYH4aeuFFl4n^h1e2iDczsT+7|iP%e|#F{GQq*dA}sOgW^iy;uk%B^7yU>)SaI7w;dH%BYn znKI;%nE!Y^!z2H+aok znl+4>3&+X+UT5_jZ-CNRpgb;3LzO`wUsZVI(9fsY2Z)@{msd{YJC+6TmxoPZs6=iR z3{P>KINpM59)O5-GN>gHzv;_;_|3J;Y35)dDjzxMtr$wRB_4gTKMxCljJE}FupcIW zRezXA#AbMsd33>7w?ubdeK72Vhq$r}i_&GYmNH(-dI(Y-ua)%9@-qYs+|hjfAVMP^ z#Kc@8JrU@SCUBe;d0GO`Gr|bgCw`-cC_UySzOpfjysJM-MgO%Q`qtd+I|@O{B?Dpm z!$lx%3Lg%G-gH-LcPN}Ew?IpE*kohs$$vj>O5OjQe6@E?v?;@Uu0;(0ED={h!Yt9|z7J$?ZxV3@uq81{XohkgVs0c$Srx+t}{xJtHhYG7qJ zlptbN!NSjDY1CjfQKi|0a6;WB+C8wOwv^6?#&PtHS}+0gMXBQ za$@mi=Qnof86xhyMz%OM{SuozvKPsYHyUZPg|jZ0Ire7GwoOoEqlPO@J%{+)Uy7NT zn4EHKmeF8m%BRqrc3!F(j5!~H2N?G9J*vdgYGCljfY#GI& z>G)RKA!Z_%Sd429AMnnNUN)34o`18@pv$!JKs`5R5#vAtVvUyRi}&hWZ?PO2n-auJ z%0dn<%6>+%rK;i3ks><7F!?hDQ-}DiTN|ou{W&7deG*i<>*@4ney54r>k)n+@WEJ> zm=j#JbiF$gvsSy%7O3tJ)OWEivhjoZwqR2m z)BLi^Wh2_6mYyfe9k=53>oZEp0lm%x9P@tj-4WHG#M^gp)W&Y!s{*e&fBMfWajiA? z2c{=lt&9OVfc<)?rgnkO#{Batb$`bo^ zHjP=Jqh}T6Oi<+Q_vJ!oRrVU)LlVyi*oPXqfXGU2VzFth(Q(h z`13caD1>tEV6`Ky`>Hy;gIzpuk2p>_S0Z}BnqKN*QUSBLzOevBFX%2eZgNr!RY6gi zcKiJ85ykqGzH+;RX~=mQ&#jz4B4mO~Gj^!t#;b-s`saU=8Gp^CQAJ-PJ~e5~>g!qY zHwZpat_d(;vfr8qC=dgQ#6S9TxQtl44y5I^N41TU_qbjM-LYWX_)~&t6Mv;|GmO~V z=DCgL%c^7#eRR38&3V4&lXiG>cwbRkJL)(+?$Lz*6iUT@OY`1cEkd|7SC!U$g53LQ z&185yUNjRf>VK591o7rThvsKh)$DaMfuJB{n{@l*O)7G+pGv+a$^N@*Zh6SPZ1sHn zhja^N%Me}K#;t4PwM%DJny%*lS0E`-?S;4UK@$A4m}`b`rv)$b$MYd(^-X^AGQw~_ z2LV_J{(<(JlZf{^KGJgZZz1c5C;|BFwo7`eLZiDnKz{(SrhHSo+Jq(9E^9JiIh0Mz z01;coSGSuDBtyx~=0d3|@@f?&P*x=97wf3A;-d9{s4YlZaNCysYvQjDAt+*WarMYB zwF@7MW;y$6Q^nN4tH#@J<^KJiqlqTier7aD93T|zv5O!yhRbHO3YY3n2J?Ct1zet4 znFJxraDOP=EZlBs@a%+f3?d6N>``2BwF%nTJaN4vC3dFM6R`wZ;UL`H&C%uCSe#6t zE7X4m!j)#dake#tsK}hs;%$76A~Nbe2BCN)O-AxdX>32FM`~g{J~6F>1aKDgPFMKr zO`PgCxpRUtVpw1U8x7SCZDit_&e;yfFTratV zXoE9t3C#so$y>q7Q!H})8Ysb?L;vtBu9EI}z`pq(K-!VQ>#G&JYLv z(SOFt_uF~A-s1OBw*iVfu#Pq2rBQ}}xMI=@kI?j8V`Q=CGi+XMSQjDwi&)tMSjZ{mIQ0ii#{wx%gr@6c3Ke@fkJ*LD+M;Y0CK*C>oSzbQ}ty3XKp!G*H z5kH5LX{Ok~&DIxPL=yW3<|ItCSC>ucKbiinOp!*|@RFs_{`0`lC;X&;t38VQaewzn z{gjH(9KF!OBbY3KgF&Mk^AaF7{S8Lu{x@BZMlbm094n5)VGDBS?;rEksvQ0%*qE*Y z*2M6lx?cENkP^zI1tY1cH-rx~rQ(y}nkXICInaDZzvT-tt zWieNtJH|Yl2%JrH*6KN?0P~w*0(cDN^d{;z3I0g5Zt*v4U36<+a;c&KMRt7a--||T z54Is(*N=pq2{-0+5gJcc92EF4mDhO;?EXX=t-uQs?Gw}?+iXyqdVumGyMOd_uD8G) z6dn7Y2tc1K_+mlm)v#)Rxq){v__81Lv`5lT)&+##A5E;Um0d_`NYe>w+HXec6b+AP7rh)U)>SqR>S!F?;@QS%n|QrgN5{ef-$OM3;d>mI%7FLBroI zSJpeQLkaz%TDuXjH+x@0n1AXmE4OLGBpEnkU=&Bes!1toHxC}I3-$Wr=)_8E&G+|v z6X#X2i*^rA+7cD}IO;UWW-JD+Jh%(e-ozzTsdxqVsT|IDm3>HWP^}!k=4{tgDdO(o ziLWj!#64I70Y7qq$E;BzUu9T&cX;7RgV^7(EXHL;8X^l~#UJA+$bS`G8;F}&rlbQ) zcg){gQsK?n+NVd$rJ}~`xFXOWMKm6tn5;i8G$kqgZOKLHR64a%%=p^r!ja+NLe{zS zQ*g@HxoNz4U(I7mfAt>LFIvR-uP5&BQ%?`>HK84aILp>_Sn5wC>f4qh=PKJR3Uugc zF*qef$wTNSZ7!W>zkf|fyqDcSD!HA1Gs!qe(pF7=3EZcZ8;!~|uJXmZi#`Bk5l#`} zONVcKTsu8`oKWlM)dod(b+n>B?Q@o{VYzi<^m`d-h|;}Ml$<o97Pq9bj;jM-} zl9LJ#JvX*U_V%qYX_avt)#KGHCf~->a;V_U8j>KR+3l&=2!HQ$@51b8-yM6-3m-eb zWEIY(%;{U|EU2_=?szz}@#HE`sO#vFj0XevIb z=VDpynh!Ohk8kds;Wk->N7ufWv7Zbg@+GZXr!Ps8^hpMgu;KEoT!Y$)~T81 zZ~IP7LD#Un?$XrflGg-_hsaFW()@D*Iip@m-gR5z`X`T;rZCiFlmR4JO)01|nGh%r z4XqG9$G~D37Wy@7r=)ttng*6hS8jm%rPXUXH>!DJ_<#4QvzNN5))`1NC@KoX!Yf5M zxat-;1JIF-UnN(@SF@x&FAmJA%031ZUM_;Bzjb`|mik5S#Ikb}`=JFp`UhZL&(3qz z4A}bSwD>rqqg0nbr;L8w9EiIZ%;-A7Zgfu2b&DGbNgKhJL9luzuOm6UN;+CdD#nJY z1`2$48-JyPo?2DPd`KD}_kyFqZ;*Pt&JRp-(aim}EqldK&3Ss~!i>rUoI{Y`E>An2X18{aOnCr4uI9TW z3zYWJRt4j#Xv54N@8xYRXSg}Z%MTc|(6p2?Qh&K?qHLS^*Q3R&+lY#0d4W&$A%|qF?rYN>IT$tG4*Ve&G>AuEd(Ldx}7 zJQJ70yPI=_Ez&+CuEB~{t)M+x3wS2rd+O5WzrYQ#ii-o0XGbN{wo+cx`24O*k`MfFECTe*k~ zdcEl5P|Q2s6%yHcL=*+wX;~<+)R1YJdT`_RbmxL5lB|fXW(GoHr^i-)et$%H|HHDp zODRh!L`>VXThF2lP&z05Qc|7JaKV*&I~*o&O+hdj*vh8PklKC~ZQ9!_Jvh`%s9^Hm zlDMse^XFPxrgOA@<}2^9r$HjK^zho_!g(tK%ddsJaeE8efj5pv$Jv7ms-k4(t(fg0{9`5t%z8 zA>T-d95z7*?Ar3h+Wh;A=#SMo($_|wA}yK+XTo0O*)(Bwe^amCS!sIwFz4~Jh*GHNQ&St7q_TKTr`D6Bt_SibUz48>|S{UmG zORCMTD*A+1&X=HHHXe<0b}3ahbwvqOA9cXyq8N;>wI4gMxqr~wnyN3vtXI=;CJDiN zjONedESRdnckgKAO1#Mp4Qh)}DR^tlpZ3ndr*C}R7fbT<&9#xKos8|+KC-C>HtRK& zSt7L!OT5qFHM6&CQp_J-5r^=J~F6MgeyY-R8z}7!Xq|t84(o13`w-MEXb$N&` z1}mzAURgX7#fHdrIYyyO>jlbZwM$7Xt1FXf zOn(`=SN^zY8qM~{!?kx(N^xcjD&A%LOm-0B^2KjtuFqmC9Appske5l4qwRUD$dNSG zNdB~tpW9l7zZ4)T?gDj&6iOO`9iHAjkon3(tB4UCsyDo{a{1FbiSFSeZQKUrHKqG@ zkyBFT>rTx?B;Z8e#b71~f&){MdQdXN(tq_7(<-EI2Kzon134N zaUDH}qt@P|%5{_hNo}=$baDDXUOI*&#xVtA>1j;R&-Ev+4-7B-^&IRekxOm1&ydmI z?4gSoP3`jHw0I5^>0w%RS0b&8P&L2l%4GHG%HX-O$~~g^nt~30s1BXnlBf;P#h zY^)vK#gWmek$;jCjkH2!(lxeLlYh{&39jV$MXzS@t{Rnp6F%l`UTedW#T5-OY=nMcj0iQm_#MlxPrAE#Zoz6OHVc^m-|4Ga+Si<&<5n| zv>Z8jWE7_?QKfKrcK+v|MSsX(`aOup_Ya!95oCcGp$;2QJza=hxZn!x!#!^LMJt#b zJH?U=q6jJ3FU0O!i^#CB|4Ds=1mh`cr^ihcfqb=+%@VXh!D50&0P#r(6=6@ubnO}{W^7m& z+}qcjWggSfH~*P@!y@F&NfV~xY>bpUp+A2rmWZNIgZN44buU#&w}PhOBt6|PB7Qg| zj>sH~^2cW2Y{6XGY=4@75&4(DKGuA+>q8S>j{2hP0xMxg2QkNGTIsW9Oq}(YpNqM$ zAq?Wp27bLWoM1ttqAAlIVZ6~0c820A98e(#DsaSnR;4M&Ve2fHGn=o5$_5Un{h2LO!ygvy;G0pd1p>{>KWvKngJ7e;45?=!==+m1s&8oDLS%X1 zl+{F=Tx`r(>H%K2mztjOp1$IecBjQ_rpG2u@4q(Qn^KoRt=c7sZ*;M(A=M;Q{a#=X z)-E%I7vy7-bbr0P&J5*NF0-9i!r6U5$NUy;L=$~n0Upe&G2Rh}QnTQlqrf=?`fJ%= zF5~n^It?=0lId)c5ZsUEZA6gioX=`!P*xft;-ay4kZ5isNtE}6Py1N4*(~-F?_l2* zMT8eZmZAo=@WqmColiz@$a*uIIQ*?qoD*ziHQia~OMmni+&5-*9Y7qH--vc59UOtgCS0( z7Rw&1scH`rZuE}6Ns9&eFL~~fv{tr?WlyiD9i|98$X+%g_6(anL2V$xA%p3V+6j4dH39aQv*PHS~On>P#V@khf?e zJbEQhnUfkO3L`+?DonKIA*hpF(Ji3PY0!B-9h*Cw$0S(ts&eRu_PU&k(sBYHS(FpucdA?2yVD^fh z=6@RTx$MNFa7A6&ICgk7@RxO}XcG3#WymVm5=4q{BoOGbzC<#U&0i1csH5$k~VUfctRHPRm$g^QeHU2X@X@3-8Y@K6_9 z=1{Lsd>)89g--6jYdX0TaQ7ebF;BExzkhaynDiuG0W;5YESg8s*0NTrAvYl12i%V7 z@y6|Dng}k-o8Acu-naM=VyF4YCvyGJ6FA(9_62kBd+Q>}B~N3Abk-zY&K|nS$`k7kzo*W38M&Ma z@V}_!+0UWMb&Z7mN~Zq6omZM%^3l~ZLSAz%>|vSETtMRcjkl_vk44R}tF}_S(DBPU zo?GZijSF|$6n_q1(uKC>DSr=qhjlTGUnQ|6RHR}#$L8e)rq^F~r;MiVSU6)X2HIc! z=7xo@Wq%HU-;j>;E6_NCN#paYs&HC}P+#hl-?z>rD=EA!p>im7!Qmw$cXrryOuCwhsf zn_n_?%n&R-QUC9w@nyx+mi4qW_ccDP95uMgfMhETiJ9l2=jlQROGo!L#3Ygn7eiwN zc6dYKvmCLFE~G^p-KJI8lU#Abo8H8`6`@vJ8j0+MG|mBz?bT=%@$ltK3E&`9p63b* zs|X+8#0(k%WJjC_u7ACMAq?7K8tB#4!H-O98~gzMbX+AX@ZUsls@big!MWS^R~Zds zYnRbSJ?I%R=(h_yM%ZTgv4_Byv0C`1b)utyLg7TjADae|2~vAYBwi>^Buc;LD3RqS zgeP{=R&WsgJMNE|y_sdrQJDRs&8Nr56A|MSs5ttxOZCP#nSUNS8<*}H@Y0J}kT(y2 z9Dh!^LcCswGB>tcIU8%!$Z1uO@$6V1`96a$%@vd~JYl+@aen4Ms7t_>Jp#&{sW47<1cqrYG9Carcue?^K6D&J)kHc7v=Y@>JMJ^Mn66d*mU%W2!-8M zUtUDhlUls~*nc3izH_b`g`3!p#1CICqU$uutFsmcgXQa=ul5Ekku|b!t%C@0@{Z?! zZ(;CSwq6;jdz0Wi#Rp~EwScOv4Da0>w#up?;xJs8rSsaQJK;#vc|8lEqBqsl%XA0p zJV<(L)A`p+P}7>j8>_>c-;>-L)H#uI?|J6^P&4HmC4VwS!}kZZ=`@+pp@26fd=f!v z{y3DG4Em-wOlR_rEkuXs#PQiy+VH{h@ zRS0wIm|ececmc7HV6j0Y&PR~;%cQD=sT{Wec-l@Z4o>G09FpnVy*QG_kM`>O_MT{O zx^-fbw|{VwyK=!Xs0D6HbzF~2%Q2yL7|#n3rS#?d$P29Xvua6FqUH+Kb=R*RnwI?p zZ$TiZY_Nf)Y5<|z)J(l&yXUv#brYnWr4U@WhVh&9^K6q2^UTF!X6>Cv$DWaRH3*lx zQ|(6UEh9}nl3|SR3gKNU?PR=Xt%YCv9$!Ms;eQm>DlV6%MuS_fLZyit0-~aHO)qWR z;d{}B^(IJ1e#bd#3T4i}=gx~Y@fIW3EgMwV zj#J4fnvfP35Q~kc9->0R)SIS^zKZ2lB#J#fsR%&)h-~-Av35Qh%x2V}Dy&DB{) z=6~re&&}h&RDX9q{MK99w}URWQFj%;lxO^v(dQ8QYpGx-01k9W^+U?Gdn9QIjH*#) ztt|-orR8dah{n9peCq(MPva%59#Sk4>kC)?V1aTaU}gNrUDlBuE8MBhqM+JL==3E* z?r+5AO)+AyibuRu5 zxM62-$U!)Wz3{y3d}=0JUqW&78apV*T%uOqSdmg4>jfl#07tzt)Z*KV~S3CHqvx9(E1Nh^;EFpH_5#9K%9(__45?7tAC%E zkL~7tA-wDzu%I%^?}TSg(Tp8WbXEzVH+&eK~wOtF5*#rE|&@O>#^ z*{iB=qW!z&yZ5UZsMcIKsXguT%3dNgJ9?lj6-%OG=zSvkXO}F`jyCG`9Mb~)ZSoY} zh|qa_zN>~)%I*?BGk;ZmZWU&u z58P@9vO&Jf@b%IHnb?Pxhv+m|u2a}?2iuN45NTr`gY|)=d(&L6PABb6DpOAzg{HVj zsN&8yR6T-1O1V|7q7&z19XC7v&9x_(xuIvLmhaTp!T{YaV`F$h%K5FCIY;xPm#Harl;_jIT+3ln`=J%YJ7Pgl@EGaJ*0 zx3twp_4N9OA-$d_y*_-2tBm~!)8k^ot;r-5!H_RXC9k}_LKFgpi+|2fRTQr!E8_LB z#KjLJt;i19!v}QGIO@@}?^r z#|Z{z!tgMDJ1XIMp;|xe{Pr;IO6E4^c0*`iu`P|d@e5Q|%}4R;ezSi6x$7)!{2@>G z<#=3&Gy~RPa*U800e^5#Sg`B~9=Gx7i^X1*r$!@z_-08(-z|9HW%~T{Vi4vV+sM{! zT6-k&tz7j^;m=h!_{4g@bnQUB;_qOcb@EYoiSSn!Za-M}sKJ<6rl55mR!`_&A;#Ol zvBSBS2nLw1YFr1==x!f!gN{!oYYui|^6h@D3@8=-yodl45`U7e?+LnF5h&+LkwM@i zZ5H}AmVRkbmUKcM(@mgbWAjdo&m9@P>{K5aUNfo>2Ax^y-K;*P!Pz8yWRt#EGPh16 zGif@(_o|gZd+gnofwsLw@h{8TqU*Z&s%!hQti*iaz#tW|{xBXNMPbh2pGhob1zsw> zSij}00-xm}1Ao5{f1M5o?~TGJH~v94)lyQCCei7z<91EO$OAQ3@S#UsvzJXb8)dx^ z(06FQv(`Vfv6ChO-?A6&*gS@lVU&ygi9JE@bE~SX*uZ3lM+v4%b?)b+!=`Wc|E4lz|h7v40u*js$igt|=ARQ$zoeId6)9 zTJ&bi-G5AiT#U#i5vZr2Ph#K)o|M|}wa>(1^|Y4F`_S4hO?>XB-@FO(@QO|^pq*gk zEk7NsYR;fv6E|0*$-$4DASPf{hOZ~W$)*K6NkT~Csa+)PHA7s`aL~^-UVQ*J#NbTf zGa3)yy?+5km&j`|ef0y;Lyfslfq@cbW6MpECgTtiNhl8%vWnCIjkqe#dhOzFnT+?q z`*3ZMg*$GF^yp)bo$+`Z13`LC^Vs!SzHFVObV_}<w% z@+6E!hWEe{DntbdM=~Z*>5Ws#-t~P$1+7en!xEJS$XNd7*Prpb!6r5UvT~?_=yHzz zf`17=38ic58!sGhE=lS;d_y@e18h6k?YV-O%BkUvp+4Gg>XB}193sz9-PV{2;i#bD zZCz~OLpE+;8Igzl5n%?R4^nULcIZViS1)+|tBcPwO8lDf26<$uGObXWAhk)dCCf!i z8@Bs97a&u!*^4G&Iv*s)o)(PW_mIQ|7JmVF0mN>vUjVe9qRiTaWEBy_G*giDVvbkl z6se$!s$?yj)Tq{(XQbeFXjQ@+A*B5*l&Ov0sWx2}Zo=-xpCHRKM$Nm4%ldU?jurxE zjh|K7TA?r7g%MFQnT(ob$+6FaQCS=G#slI(IC(HgA13q$+9 zQxNimB8Kj8kp^f4U56Re5sJQ6$dPek#bC1Rt7x@+coQY(d(+8o$QB6hhTj0|pEbiC zY!yo?P^JQ1V@F7(JsYnXE`?CguYZmz2;JbI;dAnsKWqNDk(f(X$t14@>lh9+utxq4 z?%sF|cOw6CVaYlK!fE_#BE$5BzdJU&I+JN*t5QV;3PHtKm`*+JCRye~G;W zSMOQJt!9qCu)`@F?!YE-?Aa<5iQ&mN3TO(MRU>dvhJ1~@s;rQ*rm8wx-2Cosz4-I2 zWepSYURpMVdn4^+l%1r|q9oR>{w3r7M8N!1mJO|Uo}3W++r5u$w~2(jQE>@Fi4Im0Rlx7ju=NM zARAon@dGhz#z$e{b8t_!3DY9YYQzsk<Skd?L$+i>T2Ra z%Yiq04N&Zph@++~84?xqRhTz$;~Fo!l+~~RBj_=CD-uS1Lk6F%d@OpA&=j^(Wgc8G zhJRoF86#;A=RL)kvy@;_YEf!K%+lH*S`uEMkZc*i<>@c9(|@uG;itYXWnWE0gr2CU z`ndXMS!iw);#ZEph+KE|Du^s9!t?uobTPUfqEwjkTIR8exw7c{x;X-~hXw~z*jB-s zQ_su19rBciCulP$2JlJ8;eL&*6nB3$qf>Jofz96riXX6wTGxokA#@nB?7DnIokg#y zO^XIktIiD7IDg%=w!+2^H6=_B()78?k^t^UimlqYBi1!mG!1HuBk{GAI%Ar~KG)U; z%H(J;GjjNP<~al*_~>MtQW^@&feLN+rlwP3dq$qR1~^VTmEpdm_BxCCz zyRD=(6>B=-T6}O5UmS<`5{KOe#aAR^=$SZ@$KN0$=!pDq(hkG|qt+}mp_zU9!JV6& zFN8qxJ^2$v00~W=gzFS(H}-mygtw8wT=xr~nSW=u`3kO*H4if^5PTebU+yqf;}#8q zCIKd?eDmSc7zs%Mu8a~;W@!wB zWq)v}0J(6gD1m)JAfp z(iL;!kSa@f&UQupk0h!Hcf z_m)bChK43K#Wg}uD~MxMHAWC**uF-@juB!eF(Q;$Nktl4{obc_Z{qXZ*X!4Ryk5^a z_c_n!+3S-|*f=q$OX;Xv_fv{pGWDZ*Px`opGzn(H~x0jz_-VwDymmJC=^h z4DVRFzxStmr;j`s+h*6tYO}w|d01^;5r@X(+CP}@ImgLkq+^|3^5-o}+Fy5YdY?S? z;Hwg*!%NmaaZ1-p6@5H?z=jKbW~ea>8-4azG*{BsG}H@amzLHK59+d2p6l5lHKO<* z%l?-)A+yZgb7eS>Esjqs9N1I3ti`vz-}RI}I~T2MGrr~XAOAe+?zifXR|5*i43(nC zPD^bao8mO)(cYx8B@!BScl=FD?HIB4V7GPOJ}%wi=J3P!5>oF6?{6Mh`Id*@nG*A> zt>OoJcTpW3#vX0*St;JJboz*@fsP#x^>YsOFS%jQ6z?k|I_|t2mfN)7 zzVY*&rw`5^*>~DUbyCqm!{6O~Go$*&C866AN*yb|%v5vNszO=KQ!gd0F15T=)9xz< zE;dd1SqhR4FCE`8t?cCKj)zP2x&O@lmOR!Jw)6ZyE!yBDZbNQq|MOu66L8(8==C@GaGXHzmG)xVBqq@mBhtU)P-b z)9Xs=A}^=s{;!tq|8?~L>J_Qj;l-j}Q+C&xf1-2KVWUcTZt8Mi%%!$IOPZAny3(P+ zpVI3$k?WPEx5rf(du8i4Wwsn$V_CB(u>3Bc&d+L3K7S`UjnD43B7Ik_`X3#S^hquA z!b6C7p0)P;!R&Rl;^hsSuEuVS8dNSmc1iAy0Sh+F9Z)PI^yK=w<;we%4{TTC#rw}5 z?ztWl4lYgdE!yZLW$UzvVpidW%zSN6r%|Mm5#VWoz38x->DX!*IV%9Tqza45D{ za;wgkT5oq)Zn}OrKhxpXFEw0F53SYY?y%#(xt~nlv*-BR^Tf$*NUyV<5>~{mp8Iiq=j`$gs&&iAx)v}aa(16hJ6qnouND8N$~o_?zk9U# zJZ@jd^i^FKxgL7vuu`i!=2pkWKYAAlec!n4r13Sc7t0OIp7_y{YW{g`VyfS!Hv!{Y zk2&wYDXZqe8Uq*9AK!3lV#|{CtAEN$i2l5|L*Cs}kJc1w9D3*2n4ZmNOzslAuztg& zX5-zaZs?vc?!?}UJ=?XL-?4LxdozM#qMT18u~7ImyYxM?b?&v8Z`& zyJ`;f+j1gq@O*<0#&A_O{&^Ph^zFY2(8zlYY*S%M{BO#|v8xI{) z&#eiX)v$+0$mNwQ(+9U0=VY1mlXtys)dIF8ZW+63aF?By8!M+f?nntfeEHnOQy(6U zZ`9X$&Ak3c&))wtdw8YCtJfY~S!u+9;4_x%-rGwY4!d#lN%beaeVjMl?zN!g1E1!8 z^Z)36s`ReywIgeWK3LP?&gL_Pu6EjZwW<^uRP)o-e|pCZ=~hvn*z2!&ZJAo_$*=cL zEm`yWT+|7Fe~;uA7oz5T=RL}DvHR|dC0@0<_Uw6fiPU>@H(!=lKXVH0U@CU*-s(N`Mt#=HmGrfJk_m!f4 zSpL7>kLDCAlIF>`O*HNJb<~e3e#A6ENS{mXg9($to*x7sY48Isy9S<`8ap+y zSefC@+tTV>e_X$1$l^|FQacvR!HhkQ*LHnOXCd_`r z#WZwnwJ|n(=D1FGlETlRUj zbf~fGsAJRqs#x3o$=t`K2Cn=5%F$CJjx}*u5$3&V^FOupgvEW5I~L7;Q|lwwCUg4P z#VZ%ZZ0srAbRIvU*Zc71XZu(VuXy#-9}8QDUul@6HR<*C#;ccUTFTR5XSQp<`8jrT zi%*>65mK#>-!F*=M)a?`qD)RbA-;7b@6*{sW7fb(^Sj&9cJTCZXL z-F&Kl-|A_VhRai$4eC13G`{gl&%fH0uRkK-Rign9R-EqpEO6?gJB=5lRde%gROk6E z-g0|a%$Pk5=LL`97Wu@V&K#Z5>eX7`vRi~9 zc2L7aPp{Y-b)r6xYkj9-&1!u*+;0=T{G8mN)3TpxZd~}F_PA9?-#;n-V_s@X^3W*1 ztU*P;TT#z_=IDrLS*}A`mK*xf?|R;`;Y-Daieu$|?(;3rD@;ji_VL%25hDXmL{^E} z>)(3Cgdeuga63`sQStdFkJLS_eW;eyakfR;IQ5M4hN;n+!#_>GIkUq$ z`SaQPHXdn|lg&k6UjA@ESoidu>5E>Sn^X4Za*HN6^L&(cKqxg^yuEAWp6^}zy0o}H z^y=NfTk-pcHm~|2~C0UUrtN>gD`+nELb6sa~c8_Q}tM8TS6H3l$U;pokMRMCeDOzaEr0r=x z_sfpWbDDp8)xphcnh#To^bcKV+HEQ6H)%l6 zw*A06gclWK&p*qmlCD^u4A|eO!kDe@^C#vxXVqls@yp8Ort+bn3_2}tp56Xm}{RS-xUsT&^x+%ROo?_-S>N(%+_B7R_|f)AAYLE zn08(pmP{%YdUWj5B_$fP4frnmnyy3*`nFwk_^oH{@2`G+^2nif8OfZ_hMP(Y%b;Wb zSR8tpc76!2aVTlox&5^kO|E~bNSoH(0%A^YPMK{EU^7rCpOFb-3yGJa;Uw@i3{npJbyUkB~#-5rP)$x~h zk#)Y`rk`I`?(vFcPg5$+A6M_-g$n_tu4lQtpZ=~_$d#G_%|?##iJ86fYQ|Al`O@3< zo4ExaRs|of+H>YW_vx9}>*u^*d%jci$|FVwIrWO;f-h!unS4zVAM`D^V9(YoZ^n=F zTKN2tU)hnX-+Xvq-%^Obm{a%G{mMtZ=6qXw#o17^R5!WGB#(Y>g})CfbS7@elK7(0 zEuEX1Yd0->vsbe^KTmD+c1+QxKMTQIZXZyCx1E6Za3=M=3nNFI29N5>SOX>-Cy|6uOCo8 zWWg4{+>0%{q^$4fU1Mc;m%KhhRvrwwRwO(oPJI8&Ewby@#8PcIvw=NZuj(F@fptl+flG$mo|tMsy%(1-m2rmf2tN++68 zN40aKXP&)Qum87a;`D_({rCU=yXTs)4fjgA9CW(jUHRML7Y=wNE>)J~xMhkrGIos1 z9G2TSZD!uk`bS1tTKj&dY(4AT<+p%o@>Z{Na_%N!>7&Hnmiv*Pl` z!XJ5g_wTsPavJ^fs0_dO8m8M5lS0lmo4GM-cJdDwTc(Mb*E_F&bk^h6*^iZ*42-F= zW8C@Nsjn9fZ#jCg!<1H`|J=yCvZQq0-hI_A+Ye26uz5JYyndaP)wAWkdxnJ+8NrW? zDW19M{T!#m3BBZ3n=6iWE?w=%+~U=ep1b|FcZ6>07V>;qcJzef>rQq(+}!bk*2!~Q zWxriM>nES^|FfRvao|KR$3Z=_-xupODe~peUq(fK_7yu7+9|r5-)-q3%&R!xoDnpA6I!0+FEH{ks3d#lamdkno3(O~ko;YUTWk*Q?nLq+`+!H zWwmwZ+K=mYsk(UJ#IDDx?Vc1k(va3-QPJh-Rtxe_pG$jC(7P=*seidtF&65 zet8~$dF$=LF}dD<*V;M!^Hx2_%Tz)4s%UaA+Pz!1);&Avzf?4BbLe=Wb|sUKRJcjU z19Li=e2RT}cp$ThKoSElXCUDS!FZgO&O$F8_aqM|GJtEaq-kme6W{u$tj8kGX z$S_Dv(<2hW8S+U^&{#%t9Av?wNoEuRFkWGZFq>sTlUd}v z$k9WI5(5Jfiu{G$K2`}E!jTzugT#2&>zFwKCiV4)p&KgeT+MsUH-^^&vdA$E zH*>Nq5^a}Nf#|5hDFm$|P(@TkS=C)G*>MV-Vv~hc6lPA*%q-71)hzM4FHjJtz(Gj~ zwW_Exx@_iDSs?sT6(TuK)ri?}@F!nR@0?GkCTM2eAqg}Qay8XVxT*37ZCf;@p7lIIXu83p1wnPbJtL$xJ62WMVs-U4q4J_; zX0?QuVB-IgnJ;~081U!Z6+70+OH}*d*A&*kc}WvFeU@DmGOrMB$&x_iBg?9yCmSdT zc7+qki4|TW98^S=*WHrAT%r*QY=M=JYF5do;Qt9)RkE5)K66!>O@okzYSI^c1(>UW zc0IwMi9Lc@6NrYxIt2DTIBGUzBa(0eahrmuvRvf^N&Lc#e404q1*-0Q)efIHL9v5Z zA?D5rs>DbYfk$Mm6EKCON`hdv!t!Yn1Q@dJfLyUTD?34e)-tj~>|(!f76jFZ1qKS1 z4G8{3{DKHeV$q65po%b1u$lqpl2`}Ai0=_39+g9mfr3>eL6T)w3E>Zj5%lke$ylWcv!F@D1_fRgI6c8Y!SYE^ zk>s#PP!)~Xg{sPC-Q^ZIL#T!X$?F=-gGH-Jtj9o*R$2dUq@W}Yh%$8SKYaO|5oJk| z^f=H&@=YXPY{G69AzU_WiVBAu%OQno8eSJkZi(PYDijflrszEk6fAS$<*dqWGXfED zgHQoE!kGXCQ9C$lQV1YilfqQgIAZRiCRmgH{Ldp1XN842-A?mHmOvVaM8F*MgvD z00mKZ*~sGC1_31i1w9tJY~)x1N18;EKzlF}S}=rzs2|AZQ4f6aN(GJu%|Hg20i_`d zg0hI!I|*qwp;He=m82iffYK1@8o3@TE|f)-UX9~)hX>#;ahxKGmakDD73PUyYAU*k zdJh8y`$ZL91D0x7EGYzKbhzM63>56aWkn=O21%+lC zi6{X)A3{wC708GfUf^|=7!c}i;^t+IV=GTH!oIbsWYd0GLuC7pq!3MTJI8LBaF}!=cCYAZ7(#lvP3nnF1?FBr7U9C2W=c;hItjy5aA*}`#tvF;Y1`5{PR7~L5FQO(SZW~UK7xfIgRKOdv%th%#@+qUw z$LZWtdsLt*A_w8&%NPfP)CN9xmVttN5h0h=2-WDsu_(~!LT}bUL9Bxpt+kX*`e;27 zqmxnVi@Mu0pkRrHwzIhl2AnEYDws0T6axi&MmQESx>PvM>cni6DOfZ>VPl|Rd7+^7 z$?^hyXW|q*Rxm_xdm@}+XkUz8RL@36ZfUkjqC^$MNtj6MHl4vN<6GYnO!GTQQVGJfFUw&J_Zh1jd^&T%MXN(mNk{2PG2&@o{78P11 zKtbZ33dXSHLLZ2`Hi|L&9?c^FQCOCsI<~ev^N*#X3_~|I3&$cxuOY`~1g@bSMPVqF z^e_VjOB!Z03d;phMtU0>2JvW_7${g3(~JQDO9h9ThQMUBC%9}oI-_9%M5sVRo|QX# zf~36D&_-wVP2(lf2-0}lXd$1u8n1D(o(!6ZqelKl!WD`P()LI0fi|1lU-md7AO~f+ zAYv*^V1|5x4HQH^SXUv;MIVwd_ut)_1iL6C)Q0RAB{cpC408_M<)u9;j7<{ub(AaY zLE!1pxbZbm5YNKXQ8-dMf)+*zFB=CG)C5J2G;UOp<|Tj;hozz|#hd_M0sSa)DqB;m zfR=!C)IT{m7JZ+NWi-@3~QB`J#%D_x0)E z2BA5+=PPQ0c%-p?IAd#rO^N{{(?GzGBD0@@ycrF{dp4JAV=jOiM$#FeiB*0q5Wxmn zyhbiSVBomU@ez z&OzjZi57iNL?_iH&z{<0&Ox+Pfm>#&z}$eG0BakJZ^RCnZKPw(x&Xt%9N`SchMFE{ z(8PS-Xj+niCX9)t$qc<^RU9zvB7RM~0kej6D@}lD*6PM4En^A^3-9ro@(GVHN@wvR zY%;9IdkB5xJz_?953z~7hwjLKu!1y6X3Ud8lRo@~scc2e6509%G>17kmUjg4hIe@b z@);6Pjibf+_2-OE6Fd6^3~dAQ9tnX)bVesfr4c< zT((GGM=PG7K$)bwy@OzTJ2;kgfb06lRK6)T9xC*tIVsDzP0Xz>p^}`p6^pvEl)Y#6CE8s}|YBgUuDhzVHY~nve2!LLXp6 zi?A8XtKm5~6cG+D5xwD&B2r?}S|x{4*d_*th5?)NA-LK`W(5z0TMBv@7)`QlW4Vg=H>AQH0?#N6HUlIQ)h50?b9?jm~Wmd(6e)iI|s+)hY6Q?EC7$KtXi| zc_cjodYA+SMim66vb`BBuGq$D`CP?_j~)vXCpa0CyRY!pKTF(o3WG?g12} zaDeRDUKd`sEfweU7~?*|1WhK{6G{#exB;^U?gDCuHWa4K#<3_DG$FxHaUBOtpbfm=XNgS95Wi2udj1NFZEqV~uDO~h3}E~NGVj5uHcvk`P# zirEo3{3Sb$LA0ac0xJ|ox5YrgsvVMBs}HaV7ch2(0yTkvHO*w8Ah`$11>yqmHVI^a zv0Z1NwQVgH_&gc{jO`0Zf4`8PuQS*H7X>{S6#)s^xQjswR*05e5#RvB?pFd(5L3W9 z2~lytNN$SJ2vKps*m*TRMV6@nv!z-3x?EEUM*y&N;adVnV$DFnGA`>3z-^f1}3=iG-S!i03W1(M6sx9m|ks?9F<|?iw0tGQt|segGrI55@$l#kUd|lKt(6Q5pmT@HOd|1_>g$iIKM@9~Z_4kM}cFYNN5xaC_Tuvmt8^B2K z1{eKEq9G!5vt9=4)m4*1(po1|DNm2l# zE(0!`*E4{EcpVW-l0*pwaw{KeD|XZbZ7;?a0?EWOS4!mAV`Jm5MLtEADO2FuLBgU zrC}?Pc5^Y6BpqH%!q`6_fD#C8GM2622=S~KpHfeVlmqMk(_DzjC6b98c9zBM-Z^#lTgmm)AMA+azh8l&OH-C#-#!hmdHer)Im`w_G> zShEAG$oLvCvX}xG2|x%8oGtOOSpSF)2Au5F2rpurl_d}f0DC$(Z%Q+W@ zg9SjcrGth9S#B|I7_fCWU|8E{3B>G(RXFH0+W|vKi)Ny$1=TS!3L6(-7_2;T4T<#* z_%RwD?1v@Zn!)GeL(C!g&<(Wx*7D_V7#SBlStZnD{OuI>BUmCQBEgO!VKwe_5SU_% ziZ%i*Xvnb1J@ONBN6E-p*wG9&M@X{~Fi3?Z8hgWp3o8C%hO7Bs{@bYecLLA;n0B#v z+>K&`7+~nfk>8R(hJyUDpqMQG{s}1nZL@bPF@WJu5`2viFsLRA!zhbUIA|*QYb1b? z?OefZ!Nov^HAZua?Gyrr%a!bhd9rYd_sE|&K@*Ei2LSsoKQ#ECe_|B%613n3MajB#+jVPS^8WxKP=`7I delta 42819 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 BaR~qb diff --git a/docs/manual/manual.pdf b/docs/manual/manual.pdf index f111888bf9a65594acbc917414c8f7824a4d4964..394920d3348525ae874d9ba9830c1ccb031c9954 100644 GIT binary patch delta 75421 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
u6Hy4*+bn#3eFMhuC2 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 diff --git a/docs/manual/options.pdf b/docs/manual/options.pdf index 021ceadcede7d36629788ab8e30cc4442e41b813..3448bae3514c874fc68cb72095befab028c84c7d 100644 GIT binary patch delta 27279 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 Nn&$4u-R9SG^92K_&-4HQ diff --git a/docs/manual/spatch_options.tex b/docs/manual/spatch_options.tex index 8163480..8247ed2 100644 --- a/docs/manual/spatch_options.tex +++ b/docs/manual/spatch_options.tex @@ -321,6 +321,12 @@ other \#ifdef.} patch specifies a subdirectory. This is really only useful for testing, eg with the option {\bf -testall}} +\rare{-c++}{Make an extremely minimal effort to parse C++ code. Currently, + this is limited to allowing identifiers to contain ``::'', tilde, and + template invocations. Consider testing your code first with spatch + -type\_c to see if there are any type annotations in the code you are + interested in processing. If not, then it was probably not parsed.} + \section{Application of the semantic patch to the C code} \subsection{Feedback at the rule level during the application of the diff --git a/engine/check_exhaustive_pattern.ml b/engine/check_exhaustive_pattern.ml index d1272ae..1619532 100644 --- a/engine/check_exhaustive_pattern.ml +++ b/engine/check_exhaustive_pattern.ml @@ -65,6 +65,7 @@ let dumb_astcocci_rule_elem = function | A.Return _ -> () | A.ReturnExpr (_, ea, _) -> () | A.DefineHeader _ -> () + | A.Undef _ -> () | A.Include _ -> () | A.Default _ -> () | A.Case _ -> () diff --git a/engine/cocci_vs_c.ml b/engine/cocci_vs_c.ml index d09bd4c..1e9249e 100644 --- a/engine/cocci_vs_c.ml +++ b/engine/cocci_vs_c.ml @@ -1744,7 +1744,7 @@ and (declaration: (A.mcodekind * bool * A.declaration,B.declaration) matcher) = )))) tin)) fail else - failwith "More that one variable in decl. Have to split to transform." + failwith "More that one variable in decl. Have to split to transform. Check that there is no transformation on the type or the ;" | A.MacroDecl (sa,lpa,eas,rpa,enda), B.MacroDecl ((sb,ebs),ii) -> let (iisb, lpb, rpb, iiendb, iifakestart, iistob) = @@ -3974,6 +3974,15 @@ let rec (rule_elem_node: (A.rule_elem, Control_flow_c.node) matcher) = ))) else fail + | A.Undef(undefa,ida), F.DefineHeader ((idb, ii), B.Undef) -> + let (defineb, iidb, ieol) = tuple_of_list3 ii in + ident DontKnow ida (idb, iidb) >>= (fun ida (idb, iidb) -> + tokenf undefa defineb >>= (fun undefa defineb -> + return ( + A.Undef(undefa,ida), + F.DefineHeader ((idb,[defineb;iidb;ieol]),B.Undef) + )) + ) | A.DefineHeader(definea,ida,params), F.DefineHeader ((idb, ii), defkind) -> @@ -4073,7 +4082,8 @@ let rec (rule_elem_node: (A.rule_elem, Control_flow_c.node) matcher) = (F.Label (_, _, _)|F.Break (_, _)|F.Continue (_, _)|F.Default (_, _)| F.Case (_, _)|F.Include _|F.Goto _|F.ExprStatement _| F.DefineType _|F.DefineExpr _|F.DefineTodo| - F.DefineHeader (_, _)|F.ReturnExpr (_, _)|F.Return (_, _)|F.MacroIterHeader (_, _)| + F.DefineHeader (_, _)|F.ReturnExpr (_, _)|F.Return (_, _)| + F.MacroIterHeader (_, _)| F.SwitchHeader (_, _)|F.ForHeader (_, _)|F.DoWhileTail _|F.DoHeader (_, _)| F.WhileHeader (_, _)|F.Else _|F.IfHeader (_, _)| F.SeqEnd (_, _)|F.SeqStart (_, _, _)| diff --git a/globals/Makefile b/globals/Makefile index b292746..838ceea 100644 --- a/globals/Makefile +++ b/globals/Makefile @@ -28,10 +28,10 @@ ############################################################################## TARGET=globals -SRC= flag.ml config.ml +SRC= flag.ml config.ml iteration.ml LIBS= -INCLUDES= +INCLUDES= -I ../commons ############################################################################## # Generic variables diff --git a/globals/config.ml.in b/globals/config.ml.in index 3fcb65a..9820475 100644 --- a/globals/config.ml.in +++ b/globals/config.ml.in @@ -1,4 +1,4 @@ -let version = "0.2.5-rc1" +let version = "0.2.5-rc2" let path = try (Sys.getenv "COCCINELLE_HOME") diff --git a/globals/flag.ml b/globals/flag.ml index 45451d1..9300545 100644 --- a/globals/flag.ml +++ b/globals/flag.ml @@ -60,3 +60,5 @@ let set_defined_virtual_rules s = match Str.split (Str.regexp "=") s with [name;vl] -> defined_virtual_env := (name,vl) :: !defined_virtual_env | _ -> defined_virtual_rules := s :: !defined_virtual_rules + +let c_plus_plus = ref false diff --git a/globals/iteration.ml b/globals/iteration.ml new file mode 100644 index 0000000..0dc76b8 --- /dev/null +++ b/globals/iteration.ml @@ -0,0 +1,81 @@ +(* + * 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 . + * + * The authors reserve the right to distribute this or future versions of + * Coccinelle under other licenses. + *) + + +type init_info = (string (* language *) * string (* rule name *)) * + string list (* defined virtual rules *) + +let initialization_stack = ref ([] : init_info list) + +(* ----------------------------------------------------------------------- *) + +let base_file_list = ref ([] : string list) +let parsed_virtual_rules = ref ([] : string list) +let parsed_virtual_identifiers = ref ([] : string list) + +(* ----------------------------------------------------------------------- *) + +type pending_info = string list (* files to treat *) * + string list * (* defined virtual rules *) + (string * string) list (* virtual identifiers *) + +let pending_instances_file = ref ([] : pending_info list) +let pending_instances_dir = ref ([] : pending_info list) + +let add_pending_instance (files,a,b) = + match files with + None -> + pending_instances_dir := (!base_file_list,a,b) :: !pending_instances_dir + | Some f -> + (* if one specifies a file, it is assumed to be the current one *) + pending_instances_file := (f,a,b) :: !pending_instances_file + +let get_pending_instance _ = + (if (List.length !pending_instances_file) > 0 or + (List.length !pending_instances_dir) > 0 + then + Common.pr2 + (Printf.sprintf + "%d pending new file instances\n%d pending original file instances\n" + (List.length !pending_instances_file) + (List.length !pending_instances_dir))); + match !pending_instances_file with + [] -> + (match !pending_instances_dir with + [] -> None + | x::xs -> + pending_instances_dir := xs; + Some x) + | x::xs -> + pending_instances_file := xs; + Some x + +(* ----------------------------------------------------------------------- *) + +let check_virtual_rule r = + if not (List.mem r !parsed_virtual_rules) + then failwith ("unknown virtual rule "^r) + +let check_virtual_ident i = + if not (List.mem i !parsed_virtual_identifiers) + then failwith ("unknown virtual rule "^i) diff --git a/test.ml b/globals/iteration.mli similarity index 51% rename from test.ml rename to globals/iteration.mli index 795d0fa..8e0d0ea 100644 --- a/test.ml +++ b/globals/iteration.mli @@ -22,4 +22,30 @@ *) -let foo_ctl () = failwith "there is no foo_ctl formula" +type init_info = (string (* language *) * string (* rule name *)) * + string list (* defined virtual rules *) + +val initialization_stack : init_info list ref + +(* ----------------------------------------------------------------------- *) + +val base_file_list : string list ref +val parsed_virtual_rules : string list ref +val parsed_virtual_identifiers : string list ref + +(* ----------------------------------------------------------------------- *) + +type pending_info = string list (* files to treat *) * + string list * (* defined virtual rules *) + (string * string) list (* virtual identifiers *) + +val add_pending_instance : + (* input is like pending_info, but with an extra option on files *) + (string list option * string list * (string * string) list) -> unit + +val get_pending_instance : unit -> pending_info option + +(* ----------------------------------------------------------------------- *) + +val check_virtual_rule : string -> unit +val check_virtual_ident : string -> unit diff --git a/main.ml b/main.ml index b2cedc3..286db18 100644 --- a/main.ml +++ b/main.ml @@ -345,7 +345,7 @@ let short_options = [ " guess what"; "-date", Arg.Unit (fun () -> - pr2 "version: $Date: 2010/11/13 21:06:27 $"; + pr2 "version: $Date: 2010/12/29 13:42:18 $"; raise (Common.UnixExit 0) ), " guess what"; @@ -582,6 +582,8 @@ let other_options = [ " spacing of + code follows the semantic patch"; "-D", Arg.String Flag.set_defined_virtual_rules, " indicate that a virtual rule should be considered to be matched"; + "-c++", Arg.Set Flag.c_plus_plus, + " make a small attempt to parse C++ files" ]; "misc options", @@ -727,20 +729,20 @@ let _ = long_usage_func := long_usage (* Helpers *) (*****************************************************************************) -let adjust_stdin cfile k = - if !dir - then k() - else - let newin = - try - let (dir, base, ext) = Common.dbe_of_filename cfile in - let varfile = Common.filename_of_dbe (dir, base, "var") in - if ext =$= "c" && Common.lfile_exists varfile - then Some varfile - else None - with Invalid_argument("Filename.chop_extension") -> None - in - Common.redirect_stdin_opt newin k +(* for fresh identifier information *) +let adjust_stdin cfiles k = + match cfiles with + [] -> failwith "not possible" + | cfile::_ -> + let newin = + try + let (dir, base, ext) = Common.dbe_of_filename cfile in + let varfile = Common.filename_of_dbe (dir, base, "var") in + if ext =$= "c" && Common.lfile_exists varfile + then Some varfile + else None + with Invalid_argument("Filename.chop_extension") -> None in + Common.redirect_stdin_opt newin k let glimpse_filter (coccifile, isofile) dir = let (_metavars,astcocci,_free_var_lists,_negated_positions, @@ -785,255 +787,265 @@ let idutils_filter (coccifile, isofile) dir = (*****************************************************************************) let main_action xs = - match xs with - | x::xs -> - + Iteration.base_file_list := xs; + let rec toploop = function + [] -> raise Impossible + | x::xs -> (* a more general solution would be to use * Common.files_of_dir_or_files (x::xs) * as some elements in xs may also be directories, or individual * files. *) - if Common.is_directory x - then dir := true; - - adjust_stdin x (fun () -> - if !cocci_file =$= "" - then failwith "I need a cocci file, use -sp_file "; - - if !dir && !Flag.patch =*= None - then - (match xs with - | [] -> Flag.patch := Some (Cocci.normalize_path x) - | _ -> - pr2 - ("warning: patch output can only be created when only one\n"^ - "directory is specified or when the -patch flag is used") - ); - Flag.dir := x; - - let infiles = - Common.profile_code "Main.infiles computation" (fun () -> - match !dir, !kbuild_info, !Flag.scanner with + dir := (Common.is_directory x); + + if !cocci_file =$= "" + then failwith "I need a cocci file, use -sp_file "; + + if !dir && !Flag.patch =*= None + then + (match xs with + | [] -> Flag.patch := Some (Cocci.normalize_path x) + | _ -> + pr2 + ("warning: patch output can only be created when only one\n"^ + "directory is specified or when the -patch flag is used") + ); + Flag.dir := x; + + let infiles = + Common.profile_code "Main.infiles computation" (fun () -> + match !dir, !kbuild_info, !Flag.scanner with (* glimpse *) - | false, _, (Flag.Glimpse|Flag.IdUtils) -> - failwith "-use_glimpse or -id_utils works only with -dir" - | true, s, (Flag.Glimpse|Flag.IdUtils) when s <> "" -> - failwith "-use_glimpse or -id_utils does not work with -kbuild" - | true, "", Flag.Glimpse -> - (if not (null xs) - then failwith "-use_glimpse can accept only one dir"); - - let files = - match glimpse_filter (!cocci_file, !Config.std_iso) x with - None -> - Common.cmd_to_list (* same as "true, "", _" case *) - (if !include_headers + | false, _, (Flag.Glimpse|Flag.IdUtils) -> [x::xs] + | true, s, (Flag.Glimpse|Flag.IdUtils) when s <> "" -> + failwith + "-use_glimpse or -id_utils does not work with -kbuild" + | true, "", Flag.Glimpse -> + (if not (null xs) + then failwith "-use_glimpse can accept only one dir"); + + let files = + match glimpse_filter (!cocci_file, !Config.std_iso) x with + None -> + Common.cmd_to_list (* same as "true, "", _" case *) + (if !include_headers (* FIXME : Could we remove xs ? -use_glimpse requires a singleton. This is checked some lines before. then ("find "^(join " " (x::xs))^" -name \"*.[ch]\"") - else ("find "^(join " " (x::xs))^" -name \"*.c\"")) + else ("find "^(join " " (x::xs))^" -name \"*.c\"") *) - then ("find "^ x ^" -name \"*.[ch]\"") - else ("find "^ x ^" -name \"*.c\"")) - | Some files -> files in - files +> List.map (fun x -> [x]) - | true, "", Flag.IdUtils -> - (if not (null xs) - then failwith "-id_utils can accept only one dir"); - - let files = - match idutils_filter (!cocci_file, !Config.std_iso) x with - None -> - Common.cmd_to_list (* same as "true, "", _" case *) - (if !include_headers + then ("find "^ x ^" -name \"*.[ch]\"") + else ("find "^ x ^" -name \"*.c\"")) + | Some files -> files in + files +> List.map (fun x -> [x]) + | true, "", Flag.IdUtils -> + (if not (null xs) + then failwith "-id_utils can accept only one dir"); + + let files = + match idutils_filter (!cocci_file, !Config.std_iso) x with + None -> + Common.cmd_to_list (* same as "true, "", _" case *) + (if !include_headers (* FIXME : Could we remove xs ? -use_glimpse requires a singleton. This is checked some lines before. then ("find "^(join " " (x::xs))^" -name \"*.[ch]\"") - else ("find "^(join " " (x::xs))^" -name \"*.c\"")) + else ("find "^(join " " (x::xs))^" -name \"*.c\"") *) - then ("find "^ x ^" -name \"*.[ch]\"") - else ("find "^ x ^" -name \"*.c\"")) - | Some files -> files in - files +> List.map (fun x -> [x]) + then ("find "^ x ^" -name \"*.[ch]\"") + else ("find "^ x ^" -name \"*.c\"")) + | Some files -> files in + files +> List.map (fun x -> [x]) (* normal *) - | false, _, _ -> [x::xs] - | true, "", _ -> - Common.cmd_to_list - (if !include_headers - then ("find "^(join " " (x::xs))^" -name \"*.[ch]\"") + | false, _, _ -> [x::xs] + | true, "", _ -> + Common.cmd_to_list + (if !include_headers + then ("find "^(join " " (x::xs))^" -name \"*.[ch]\"") else ("find "^(join " " (x::xs))^" -name \"*.c\"")) - +> List.map (fun x -> [x]) - + +> List.map (fun x -> [x]) + (* kbuild *) - | true, kbuild_info_file,_ -> - let dirs = - Common.cmd_to_list ("find "^(join " " (x::xs))^" -type d") - in - let info = Kbuild.parse_kbuild_info kbuild_info_file in - let groups = Kbuild.files_in_dirs dirs info in - - groups +> List.map (function Kbuild.Group xs -> xs) - ) - in - - let infiles = - match (!distrib_index,!distrib_max) with - (None,None) -> infiles - | (Some index,Some max) -> - (if index >= max - then - failwith "index starts at 0, and so must be less than max"); - if !mod_distrib - then - let rec loop ct = function - [] -> [] - | x::xs -> - if (ct mod max) =|= index - then x::(loop (ct+1) xs) - else loop (ct+1) xs in - loop 0 infiles - else - begin - let all_files = List.length infiles in - let regions = (all_files + (max - 1)) / max in - let this_min = index * regions in - let this_max = (index+1) * regions in + | true, kbuild_info_file,_ -> + let dirs = + Common.cmd_to_list ("find "^(join " " (x::xs))^" -type d") + in + let info = Kbuild.parse_kbuild_info kbuild_info_file in + let groups = Kbuild.files_in_dirs dirs info in + + groups +> List.map (function Kbuild.Group xs -> xs) + ) + in + + let infiles = + match (!distrib_index,!distrib_max) with + (None,None) -> infiles + | (Some index,Some max) -> + (if index >= max + then + failwith "index starts at 0, and so must be less than max"); + if !mod_distrib + then let rec loop ct = function - [] -> [] + [] -> [] | x::xs -> - if this_min <= ct && ct < this_max + if (ct mod max) =|= index then x::(loop (ct+1) xs) else loop (ct+1) xs in loop 0 infiles - end - | _ -> failwith "inconsistent distribution information" in - - let outfiles = - Common.profile_code "Main.outfiles computation" (fun () -> - let cocci_infos = - Cocci.pre_engine (!cocci_file, !Config.std_iso) in - let res = - infiles +> List.map (fun cfiles -> - pr2 ("HANDLING: " ^ (join " " cfiles)); - Common.timeout_function_opt !FC.timeout (fun () -> - Common.report_if_take_time 10 (join " " cfiles) (fun () -> - (*let s = profile_diagnostic() in*) - (* Unix.sleep 1; *) - try - let optfile = - if !output_file <> "" && !compat_mode then - Some !output_file - else - None - in - Common.redirect_stdout_opt optfile (fun () -> + else + begin + let all_files = List.length infiles in + let regions = (all_files + (max - 1)) / max in + let this_min = index * regions in + let this_max = (index+1) * regions in + let rec loop ct = function + [] -> [] + | x::xs -> + if this_min <= ct && ct < this_max + then x::(loop (ct+1) xs) + else loop (ct+1) xs in + loop 0 infiles + end + | _ -> failwith "inconsistent distribution information" in + + let (cocci_infos,outfiles) = + Common.profile_code "Main.outfiles computation" (fun () -> + let cocci_infos = + Cocci.pre_engine (!cocci_file, !Config.std_iso) in + let res = + infiles +> List.map (fun cfiles -> + pr2 ("HANDLING: " ^ (join " " cfiles)); + Common.timeout_function_opt !FC.timeout (fun () -> + Common.report_if_take_time 10 (join " " cfiles) (fun () -> + try + let optfile = + if !output_file <> "" && !compat_mode then + Some !output_file + else + None + in + adjust_stdin cfiles (fun () -> + Common.redirect_stdout_opt optfile (fun () -> (* this is the main call *) - Cocci.full_engine cocci_infos cfiles - ) - with + Cocci.full_engine cocci_infos cfiles + )) + with | Common.UnixExit x -> raise (Common.UnixExit x) | Pycocci.Pycocciexception -> raise Pycocci.Pycocciexception | e -> - (*pr2 "previous"; - pr2 s; - pr2 "new"; - pr2(profile_diagnostic());*) if !dir then begin pr2 ("EXN:" ^ Printexc.to_string e); [] (* *) end else raise e))) in - Cocci.post_engine cocci_infos; - res - ) +> List.concat - in - - Common.profile_code "Main.result analysis" (fun () -> - Ctlcocci_integration.print_bench(); - let outfiles = Cocci.check_duplicate_modif outfiles in - outfiles +> List.iter (fun (infile, outopt) -> - outopt +> Common.do_option (fun outfile -> - if !inplace_modif - then begin - (match !backup_suffix with - Some backup_suffix -> - Common.command2 ("cp "^infile^" "^infile^backup_suffix) - | None -> ()); - Common.command2 ("cp "^outfile^" "^infile); - end; - - if !outplace_modif - then Common.command2 ("cp "^outfile^" "^infile^".cocci_res"); - + (cocci_infos,res)) in + let outfiles = List.concat outfiles in + (match Iteration.get_pending_instance() with + None -> (x,xs,cocci_infos,outfiles) + | Some (files,virt_rules,virt_ids) -> + if outfiles = [] or outfiles = [] or not !FC.show_diff + then + begin + Flag.defined_virtual_rules := virt_rules; + Flag.defined_virtual_env := virt_ids; + Common.erase_temp_files(); + Common.clear_pr2_once(); + toploop files + end + else + begin + Common.pr2 + "Transformation not compatible with iteration. Aborting."; + (x,xs,cocci_infos,outfiles) + end) in + let (x,xs,cocci_infos,outfiles) = toploop xs in + + Cocci.post_engine cocci_infos; + Common.profile_code "Main.result analysis" (fun () -> + Ctlcocci_integration.print_bench(); + let outfiles = Cocci.check_duplicate_modif outfiles in + outfiles +> List.iter (fun (infile, outopt) -> + outopt +> Common.do_option (fun outfile -> + if !inplace_modif + then begin + (match !backup_suffix with + Some backup_suffix -> + Common.command2 ("cp "^infile^" "^infile^backup_suffix) + | None -> ()); + Common.command2 ("cp "^outfile^" "^infile); + end; + + if !outplace_modif + then Common.command2 ("cp "^outfile^" "^infile^".cocci_res"); + (* potential source of security pb if the /tmp/ file is - * a symlink, so simpler to not produce any regular file - * (files created by Common.new_temp_file are still ok) - * anymore in /tmp. - *) + * a symlink, so simpler to not produce any regular file + * (files created by Common.new_temp_file are still ok) + * anymore in /tmp. + *) (* - if !output_file =$= "" - then begin - let tmpfile = "/tmp/"^Common.basename infile in - pr2 (spf "One file modified. Result is here: %s" tmpfile); - Common.command2 ("cp "^outfile^" "^tmpfile); + if !output_file =$= "" + then begin + let tmpfile = "/tmp/"^Common.basename infile in + pr2 (spf "One file modified. Result is here: %s" tmpfile); + Common.command2 ("cp "^outfile^" "^tmpfile); end *) )); - if !output_file <> "" && not !compat_mode then - (match outfiles with - | [infile, Some outfile] when infile =$= x && null xs -> - Common.command2 ("cp " ^outfile^ " " ^ !output_file); - | [infile, None] when infile =$= x && null xs -> - Common.command2 ("cp " ^infile^ " " ^ !output_file); - | _ -> - failwith - ("-o can not be applied because there is multiple " ^ - "modified files"); - ); - if !compare_with_expected - then Testing.compare_with_expected outfiles)) - - | [] -> raise Impossible - - + if !output_file <> "" && not !compat_mode then + (match outfiles with + | [infile, Some outfile] when infile =$= x && null xs -> + Common.command2 ("cp " ^outfile^ " " ^ !output_file); + | [infile, None] when infile =$= x && null xs -> + Common.command2 ("cp " ^infile^ " " ^ !output_file); + | _ -> + failwith + ("-o can not be applied because there are multiple " ^ + "modified files"); + ); + if !compare_with_expected + then Testing.compare_with_expected outfiles) + + (*****************************************************************************) (* The coccinelle main entry point *) (*****************************************************************************) let main () = begin let arglist = Array.to_list Sys.argv in - + if not (null (Common.inter_set arglist - ["-cocci_file";"-sp_file";"-sp";"-test";"-testall"; + ["-cocci_file";"-sp_file";"-sp";"-test";"-testall"; "-test_okfailed";"-test_regression_okfailed"])) then run_profile quiet_profile; - + let args = ref [] in - + (* Gc.set {(Gc.get ()) with Gc.stack_limit = 1024 * 1024};*) - + (* this call can set up many global flag variables via the cmd line *) arg_parse2 (Arg.align all_options) (fun x -> args := x::!args) usage_msg; - + (* julia hack so that one can override directories specified on - * the command line. *) + * the command line. *) (if !dir then let chosen_dir = - if List.length !args > 1 - then - begin - let chosen = List.hd !args in - Flag.dir := chosen; - pr2 ("ignoring all but the last specified directory: "^chosen); - args := [chosen]; - chosen - end - else List.hd !args in + if List.length !args > 1 + then + begin + let chosen = List.hd !args in + Flag.dir := chosen; + pr2 ("ignoring all but the last specified directory: "^chosen); + args := [chosen]; + chosen + end + else List.hd !args in if !FC.include_path =*= [] then FC.include_path := [Filename.concat chosen_dir "include"]); @@ -1071,13 +1083,15 @@ let main () = let testfile = x ^ ".cocci" in if Sys.file_exists (prefix ^ testfile) then begin - FC.include_path := [prefix^"include"]; + (if !FC.include_path = [] + then FC.include_path := [prefix^"include"]); Testing.testone prefix x !compare_with_expected end else if Sys.file_exists testfile then begin - FC.include_path := ["include"]; + (if !FC.include_path = [] + then FC.include_path := ["include"]); Testing.testone "" x !compare_with_expected end else @@ -1085,7 +1099,8 @@ let main () = end | [] when !test_all -> - FC.include_path := ["tests/include"]; + (if !FC.include_path = [] + then FC.include_path := ["tests/include"]); if !expected_score_file <> "" then Testing.testall ~expected_score_file:!expected_score_file () else Testing.testall () @@ -1093,11 +1108,11 @@ let main () = | [] when !test_regression_okfailed -> Testing.test_regression_okfailed () - | x::xs when !test_okfailed -> + | ((x::xs) as cfiles) when !test_okfailed -> (* do its own timeout on FC.timeout internally *) FC.relax_include_path := true; - adjust_stdin x (fun () -> - Testing.test_okfailed !cocci_file (x::xs) + adjust_stdin cfiles (fun () -> + Testing.test_okfailed !cocci_file cfiles ) (* --------------------------------------------------------- *) @@ -1108,7 +1123,7 @@ let main () = Common.do_action !action xs all_actions | [file] when !action =$= "-parse_cocci" -> - Testing.test_parse_cocci file + Testing.test_parse_cocci file (* I think this is used by some scripts in some Makefile for our * big-tests. So dont remove. diff --git a/ocaml/prepare_ocamlcocci.mli b/ocaml/prepare_ocamlcocci.mli index b0fd387..ff4264f 100644 --- a/ocaml/prepare_ocamlcocci.mli +++ b/ocaml/prepare_ocamlcocci.mli @@ -2,7 +2,7 @@ exception CompileFailure of string exception LinkFailure of string -val prepare : string -> Ast_cocci.rule list -> string option (* filename *) +val prepare : string -> Ast_cocci.rule list -> string option val load_file : string -> unit val clean_file : string -> unit val test : unit -> unit diff --git a/ocaml/yes_prepare_ocamlcocci.ml b/ocaml/yes_prepare_ocamlcocci.ml index 8498189..629edad 100644 --- a/ocaml/yes_prepare_ocamlcocci.ml +++ b/ocaml/yes_prepare_ocamlcocci.ml @@ -96,6 +96,54 @@ let manage_script_vars script_vars = (loop (n+1) xs) in loop 0 script_vars +(* ---------------------------------------------------------------------- *) +(* Iteration management *) + +let print_iteration_code o = + let translator l = + String.concat "\n | " + (List.map + (function x -> Printf.sprintf "%s -> \"%s\"" + (String.capitalize x) x) + l) in + let add_virt_rules_method = + match !Iteration.parsed_virtual_rules with + [] -> "" + | l -> + Printf.sprintf " + method add_virtual_rule r = + let r = match r with %s in + virtual_rules <- Common.union_set [r] virtual_rules\n" + (translator l) in + let add_virt_ids_method = + match !Iteration.parsed_virtual_identifiers with + [] -> "" + | l -> + Printf.sprintf " + method add_virtual_identifier i v = + let i = match i with %s in + try + let v1 = List.assoc i virtual_identifiers in + if not (v = v1) + then failwith (\"multiple values specified for \"^i) + with Not_found -> + virtual_identifiers <- (i,v) :: virtual_identifiers" + (translator l) in + Printf.fprintf o " +class iteration () = + object + val mutable files = None + val mutable files_changed = false + val mutable virtual_rules = ([] : string list) + val mutable virtual_identifiers = ([] : (string * string) list) + method set_files f = files <- Some f + %s%s + method register () = + Iteration.add_pending_instance (files,virtual_rules,virtual_identifiers) + end\n\n" add_virt_rules_method add_virt_ids_method + +(* ---------------------------------------------------------------------- *) + let prepare_rule (name, metavars, script_vars, code) = let fname = String.concat "_" (Str.split (Str.regexp " ") name) in (* function header *) @@ -147,20 +195,37 @@ let prepare coccifile code = if init_rules = [] && other_rules = [] then None else - let basefile = Filename.basename (Filename.chop_extension coccifile) in - let basefile = - String.concat "_" (Str.split (Str.regexp "-") basefile) in - let (file,o) = Filename.open_temp_file basefile ".ml" in + begin + let basefile = Filename.basename (Filename.chop_extension coccifile) in + let basefile = + String.concat "_" (Str.split (Str.regexp "-") basefile) in + let (file,o) = Filename.open_temp_file basefile ".ml" in (* Global initialization *) - Printf.fprintf o "%s" (init_ocamlcocci()); + Printf.fprintf o "%s\n" (init_ocamlcocci()); + (* virtual rules and identifiers *) + (if !Iteration.parsed_virtual_rules != [] + then + Printf.fprintf o "type __virtual_rules__ = %s\n\n" + (String.concat " | " + (List.map String.capitalize !Iteration.parsed_virtual_rules))); + (if !Iteration.parsed_virtual_identifiers != [] + then + Printf.fprintf o "type __virtual_identifiers__ = %s\n\n" + (String.concat " | " + (List.map + (function x -> Printf.sprintf "%s" x) + (List.map String.capitalize + !Iteration.parsed_virtual_identifiers)))); + print_iteration_code o; (* Semantic patch specific initialization *) Printf.fprintf o "%s" (String.concat "\n\n" init_rules); (* Semantic patch rules and finalizer *) let rule_code = List.map prepare_rule other_rules in - Printf.fprintf o "%s" (String.concat "\n\n" rule_code); - close_out o; - check_runtime (); - Some file + Printf.fprintf o "%s" (String.concat "\n\n" rule_code); + close_out o; + check_runtime (); + Some file + end let filter_dep (accld, accinc) dep = match dep with @@ -182,7 +247,8 @@ let filter_dep (accld, accinc) dep = | "Weak" (* Coccilib is filtered out too *) - | "Coccilib" | "Common" | "Ast_c" | "Visitor_c" | "Lib_parsing_c" -> + | "Coccilib" | "Common" | "Ast_c" | "Visitor_c" | "Lib_parsing_c" + | "Iteration" -> (accld, accinc) | "Dbm" -> ("dbm"::accld, accinc) @@ -295,8 +361,8 @@ let load_file mlfile = (* let linklibs = link_libs lklibs in *) let flags = Printf.sprintf - "-thread -g -dtypes -I %s %s -I %s/ocaml -I %s/parsing_c -I %s/commons " - sysdir inc Config.path Config.path Config.path in + "-thread -g -dtypes -I %s %s -I %s/globals -I %s/ocaml -I %s/parsing_c -I %s/commons " + sysdir inc Config.path Config.path Config.path Config.path in let (obj, cmd) = if Dynlink.is_native then compile_native_cmd flags mlfile diff --git a/output b/output new file mode 100644 index 0000000..a0abdff --- /dev/null +++ b/output @@ -0,0 +1,1481 @@ +Script started on 2011-01-09T21:02:36 CET +hadrien:~/coccinelle-release: make package +Makefile.config is missing. Have you run ./configure? +make package-src +make[1]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +make distclean # Clean project +make[2]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +if [ -d tools ] ; then make -C tools distclean ; fi +make[3]: Entering directory `/home/jll/coccinelle-release/tools' +rm -f spp gitgrep splitpatch extract_c_and_res +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/tools' +make -C docs distclean +make[3]: Entering directory `/home/jll/coccinelle-release/docs' +rm -f spatch.1 +make -C manual distclean +make[4]: Entering directory `/home/jll/coccinelle-release/docs/manual' +rm -f *.aux *.dvi *.haux *.htoc *.log *.out *~ +rm -f main-diff.* +rm -f *.aux \ + *.bbl \ + *.blg \ + *.dvi \ + *.log \ + *.out \ + *.toc +rm -f manual.pdf cocci_syntax.pdf options.pdf +rm -f *.pdf *.html *.gif *.css +make[4]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[3]: Leaving directory `/home/jll/coccinelle-release/docs' +set -e; for i in pycaml ocamlsexp commons globals menhirlib ctl parsing_cocci parsing_c engine popl09 extra python ocaml; do make -C $i clean; done +make[3]: Entering directory `/home/jll/coccinelle-release/pycaml' +rm -f pycaml.customtop +rm -f *.cm[aiox] *.a +rm -f pycaml pycaml.top pycaml.cmi pycaml.cmo pycaml.cmx pycaml.asm pycaml.s pycaml.o pycaml_ml.o pycaml.cma pycaml.cmxa pycaml.a pycaml.cmi pycaml.cmo pycaml.cmi pycaml.cmx pycaml.o libpycaml_stubs.a pycaml.annot .cmi .cmo .cmx .o dllpycaml_stubs.so +rm -rf ._bcdi ._ncdi ._d +make[3]: Leaving directory `/home/jll/coccinelle-release/pycaml' +make[3]: Entering directory `/home/jll/coccinelle-release/ocamlsexp' +rm -f sexplib.top +rm -f lexer.ml +rm -f parser.ml parser.mli parser.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/ocamlsexp' +make[3]: Entering directory `/home/jll/coccinelle-release/commons' +rm -f commons.top +rm -f dllcommons_backtrace.so +rm -f gmon.out +rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot +rm -f *~ .*~ #*# +for i in ocamlextra ocollection; do (cd $i; \ + rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot *~ .*~ ; \ + cd ..; ) \ + done +make[3]: Leaving directory `/home/jll/coccinelle-release/commons' +make[3]: Entering directory `/home/jll/coccinelle-release/globals' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/globals' +make[3]: Entering directory `/home/jll/coccinelle-release/menhirlib' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/menhirlib' +make[3]: Entering directory `/home/jll/coccinelle-release/ctl' +rm -f ctl.cma ctl.cmxa ctl.a ctl.top +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[3]: Entering directory `/home/jll/coccinelle-release/parsing_cocci' +rm -f cocci_parser.cma +rm -f cocci_parser.cmxa cocci_parser.a +rm -f cocci_parser +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/parsing_cocci' +make[3]: Entering directory `/home/jll/coccinelle-release/parsing_c' +rm -f parsing_c.top +rm -f lexer_c.ml +rm -f parser_c.ml parser_c.mli parser_c.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/parsing_c' +make[3]: Entering directory `/home/jll/coccinelle-release/engine' +rm -f cocciengine.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/engine' +make[3]: Entering directory `/home/jll/coccinelle-release/popl09' +rm -f popl.cma popl.top +rm -f popl.cmxa popl.a +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[3]: Entering directory `/home/jll/coccinelle-release/extra' +rm -f extra.byte extra.opt rm -f extra.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/extra' +make[3]: Entering directory `/home/jll/coccinelle-release/python' +rm -f coccipython.cma +rm -f coccipython.cmxa coccipython.a +rm -f coccipython +rm -f coccipython.byte +rm -f +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/python' +make[3]: Entering directory `/home/jll/coccinelle-release/ocaml' +rm -f cocciocaml.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[3]: Leaving directory `/home/jll/coccinelle-release/ocaml' +make -C demos/spp clean +make[3]: Entering directory `/home/jll/coccinelle-release/demos/spp' +rm -f test.o test.c.i test2.o test2.c.i +make[3]: Leaving directory `/home/jll/coccinelle-release/demos/spp' +rm -f spatch spatch.opt spatch.top +make -C docs clean +make[3]: Entering directory `/home/jll/coccinelle-release/docs' +rm -f spatch.1 +make -C manual clean +make[4]: Entering directory `/home/jll/coccinelle-release/docs/manual' +rm -f *.aux *.dvi *.haux *.htoc *.log *.out *~ +rm -f main-diff.* +rm -f *.aux \ + *.bbl \ + *.blg \ + *.dvi \ + *.log \ + *.out \ + *.toc +make[4]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[3]: Leaving directory `/home/jll/coccinelle-release/docs' +rm -f scripts/spatch scripts/spatch.byte scripts/spatch.opt +rm -f gmon.out +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ *.exe #*# +set -e; for i in commons globals ctl parsing_cocci parsing_c engine popl09 extra python ocaml; do make -C $i distclean; done +make[3]: Entering directory `/home/jll/coccinelle-release/commons' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/commons' +make[3]: Entering directory `/home/jll/coccinelle-release/globals' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/globals' +make[3]: Entering directory `/home/jll/coccinelle-release/ctl' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[3]: Entering directory `/home/jll/coccinelle-release/parsing_cocci' +rm -f lexer_cocci.ml lexer_script.ml parser_cocci_menhir.ml parser_cocci_menhir.mli +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/parsing_cocci' +make[3]: Entering directory `/home/jll/coccinelle-release/parsing_c' +rm -f .depend +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/parsing_c' +make[3]: Entering directory `/home/jll/coccinelle-release/engine' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/engine' +make[3]: Entering directory `/home/jll/coccinelle-release/popl09' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[3]: Entering directory `/home/jll/coccinelle-release/extra' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/extra' +make[3]: Entering directory `/home/jll/coccinelle-release/python' +make -C coccilib distclean +make[4]: Entering directory `/home/jll/coccinelle-release/python/coccilib' +set -e; for i in coccigui; do make -C $i clean; done +make[5]: Entering directory `/home/jll/coccinelle-release/python/coccilib/coccigui' +rm -f *.pyc +make[5]: Leaving directory `/home/jll/coccinelle-release/python/coccilib/coccigui' +rm -f *.pyc +make[4]: Leaving directory `/home/jll/coccinelle-release/python/coccilib' +rm -f .depend +rm -f pycocci.ml +make[3]: Leaving directory `/home/jll/coccinelle-release/python' +make[3]: Entering directory `/home/jll/coccinelle-release/ocaml' +rm -f .depend +make[3]: Leaving directory `/home/jll/coccinelle-release/ocaml' +rm -f .depend +rm -f Makefile.config +rm -f globals/config.ml +rm -f TAGS +rm -f tests/SCORE_actual.sexp +rm -f tests/SCORE_best_of_both.sexp +find -name ".#*1.*" | xargs rm -f +make[2]: Leaving directory `/home/jll/coccinelle-release' +make srctar +make[2]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +make distclean +make[3]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +if [ -d tools ] ; then make -C tools distclean ; fi +make[4]: Entering directory `/home/jll/coccinelle-release/tools' +rm -f spp gitgrep splitpatch extract_c_and_res +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/tools' +make -C docs distclean +make[4]: Entering directory `/home/jll/coccinelle-release/docs' +rm -f spatch.1 +make -C manual distclean +make[5]: Entering directory `/home/jll/coccinelle-release/docs/manual' +rm -f *.aux *.dvi *.haux *.htoc *.log *.out *~ +rm -f main-diff.* +rm -f *.aux \ + *.bbl \ + *.blg \ + *.dvi \ + *.log \ + *.out \ + *.toc +rm -f manual.pdf cocci_syntax.pdf options.pdf +rm -f *.pdf *.html *.gif *.css +make[5]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[4]: Leaving directory `/home/jll/coccinelle-release/docs' +set -e; for i in pycaml ocamlsexp commons globals menhirlib ctl parsing_cocci parsing_c engine popl09 extra python ocaml; do make -C $i clean; done +make[4]: Entering directory `/home/jll/coccinelle-release/pycaml' +rm -f pycaml.customtop +rm -f *.cm[aiox] *.a +rm -f pycaml pycaml.top pycaml.cmi pycaml.cmo pycaml.cmx pycaml.asm pycaml.s pycaml.o pycaml_ml.o pycaml.cma pycaml.cmxa pycaml.a pycaml.cmi pycaml.cmo pycaml.cmi pycaml.cmx pycaml.o libpycaml_stubs.a pycaml.annot .cmi .cmo .cmx .o dllpycaml_stubs.so +rm -rf ._bcdi ._ncdi ._d +make[4]: Leaving directory `/home/jll/coccinelle-release/pycaml' +make[4]: Entering directory `/home/jll/coccinelle-release/ocamlsexp' +rm -f sexplib.top +rm -f lexer.ml +rm -f parser.ml parser.mli parser.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ocamlsexp' +make[4]: Entering directory `/home/jll/coccinelle-release/commons' +rm -f commons.top +rm -f dllcommons_backtrace.so +rm -f gmon.out +rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot +rm -f *~ .*~ #*# +for i in ocamlextra ocollection; do (cd $i; \ + rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot *~ .*~ ; \ + cd ..; ) \ + done +make[4]: Leaving directory `/home/jll/coccinelle-release/commons' +make[4]: Entering directory `/home/jll/coccinelle-release/globals' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/globals' +make[4]: Entering directory `/home/jll/coccinelle-release/menhirlib' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/menhirlib' +make[4]: Entering directory `/home/jll/coccinelle-release/ctl' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[4]: Entering directory `/home/jll/coccinelle-release/ctl' +rm -f ctl.cma ctl.cmxa ctl.a ctl.top +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_cocci' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals -I *.mli *.ml > .depend +Bad -I option: adjacency.mli: Not a directory +rm -f cocci_parser.cma +rm -f cocci_parser.cmxa cocci_parser.a +rm -f cocci_parser +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_cocci' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_c' +rm -f parsing_c.top +rm -f lexer_c.ml +rm -f parser_c.ml parser_c.mli parser_c.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_c' +make[4]: Entering directory `/home/jll/coccinelle-release/engine' +rm -f cocciengine.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/engine' +make[4]: Entering directory `/home/jll/coccinelle-release/popl09' +ocamldep.opt -I ../commons -I ../globals -I ../ctl -I ../parsing_cocci -I ../parsing_c -I ../engine *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[4]: Entering directory `/home/jll/coccinelle-release/popl09' +rm -f popl.cma popl.top +rm -f popl.cmxa popl.a +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[4]: Entering directory `/home/jll/coccinelle-release/extra' +rm -f extra.byte extra.opt rm -f extra.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/extra' +make[4]: Entering directory `/home/jll/coccinelle-release/python' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals -I ../parsing_c -I ../parsing_cocci *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/python' +make[4]: Entering directory `/home/jll/coccinelle-release/python' +rm -f coccipython.cma +rm -f coccipython.cmxa coccipython.a +rm -f coccipython +rm -f coccipython.byte +rm -f +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/python' +make[4]: Entering directory `/home/jll/coccinelle-release/ocaml' +rm -f cocciocaml.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ocaml' +make -C demos/spp clean +make[4]: Entering directory `/home/jll/coccinelle-release/demos/spp' +rm -f test.o test.c.i test2.o test2.c.i +make[4]: Leaving directory `/home/jll/coccinelle-release/demos/spp' +rm -f spatch spatch.opt spatch.top +make -C docs clean +make[4]: Entering directory `/home/jll/coccinelle-release/docs' +rm -f spatch.1 +make -C manual clean +make[5]: Entering directory `/home/jll/coccinelle-release/docs/manual' +rm -f *.aux *.dvi *.haux *.htoc *.log *.out *~ +rm -f main-diff.* +rm -f *.aux \ + *.bbl \ + *.blg \ + *.dvi \ + *.log \ + *.out \ + *.toc +make[5]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[4]: Leaving directory `/home/jll/coccinelle-release/docs' +rm -f scripts/spatch scripts/spatch.byte scripts/spatch.opt +rm -f gmon.out +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ *.exe #*# +set -e; for i in commons globals ctl parsing_cocci parsing_c engine popl09 extra python ocaml; do make -C $i distclean; done +make[4]: Entering directory `/home/jll/coccinelle-release/commons' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/commons' +make[4]: Entering directory `/home/jll/coccinelle-release/globals' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/globals' +make[4]: Entering directory `/home/jll/coccinelle-release/ctl' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_cocci' +rm -f lexer_cocci.ml lexer_script.ml parser_cocci_menhir.ml parser_cocci_menhir.mli +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_cocci' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_c' +rm -f .depend +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_c' +make[4]: Entering directory `/home/jll/coccinelle-release/engine' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/engine' +make[4]: Entering directory `/home/jll/coccinelle-release/popl09' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[4]: Entering directory `/home/jll/coccinelle-release/extra' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/extra' +make[4]: Entering directory `/home/jll/coccinelle-release/python' +make -C coccilib distclean +make[5]: Entering directory `/home/jll/coccinelle-release/python/coccilib' +set -e; for i in coccigui; do make -C $i clean; done +make[6]: Entering directory `/home/jll/coccinelle-release/python/coccilib/coccigui' +rm -f *.pyc +make[6]: Leaving directory `/home/jll/coccinelle-release/python/coccilib/coccigui' +rm -f *.pyc +make[5]: Leaving directory `/home/jll/coccinelle-release/python/coccilib' +rm -f .depend +rm -f pycocci.ml +make[4]: Leaving directory `/home/jll/coccinelle-release/python' +make[4]: Entering directory `/home/jll/coccinelle-release/ocaml' +rm -f .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/ocaml' +rm -f .depend +rm -f Makefile.config +rm -f globals/config.ml +rm -f TAGS +rm -f tests/SCORE_actual.sexp +rm -f tests/SCORE_best_of_both.sexp +find -name ".#*1.*" | xargs rm -f +make[3]: Leaving directory `/home/jll/coccinelle-release' +make docs +make[3]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +make -C docs +make[4]: Entering directory `/home/jll/coccinelle-release/docs' +sed "s|SHAREDIR||g" spatch.1.in > spatch.1 +make -C manual all +make[5]: Entering directory `/home/jll/coccinelle-release/docs/manual' +pdflatex main.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/report.cls +Document Class: report 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) (./hevea.sty +(/usr/share/texmf-texlive/tex/latex/comment/comment.sty +Excluding comment 'comment') Excluding comment 'rawhtml' +Excluding comment 'htmlonly') +(/usr/share/texmf-texlive/tex/latex/psnfss/times.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsmath.sty +For additional information on amsmath, use the `?' option. +(/usr/share/texmf-texlive/tex/latex/amsmath/amstext.sty +(/usr/share/texmf-texlive/tex/latex/amsmath/amsgen.sty)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsbsy.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsopn.sty)) +(/usr/share/texmf-texlive/tex/latex/amsfonts/amssymb.sty +(/usr/share/texmf-texlive/tex/latex/amsfonts/amsfonts.sty)) +(/usr/share/texmf-texlive/tex/latex/ifsym/ifsym.sty +(/usr/share/texmf-texlive/tex/latex/tools/calc.sty)) +(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty +(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty) +(/etc/texmf/tex/latex/config/graphics.cfg) +(/usr/share/texmf-texlive/tex/latex/pdftex-def/pdftex.def)) +(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty +(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)) +(/usr/share/texmf-texlive/tex/latex/graphics/epsfig.sty) +(/usr/share/texmf-texlive/tex/latex/subfigure/subfigure.sty +**************************************** +* Local config file subfigure.cfg used * +**************************************** +(/usr/share/texmf-texlive/tex/latex/subfigure/subfigure.cfg)) +(/usr/share/texmf-texlive/tex/latex/wrapfig/wrapfig.sty) +(/usr/share/texmf-texlive/tex/generic/xypic/xy.sty +(/usr/share/texmf-texlive/tex/generic/xypic/xy.tex Bootstrap'ing: catcodes, +docmode, (/usr/share/texmf-texlive/tex/generic/xypic/xyrecat.tex) +(/usr/share/texmf-texlive/tex/generic/xypic/xyidioms.tex) + + Xy-pic version 3.7 <1999/02/16> + Copyright (c) 1991-1998 by Kristoffer H. Rose + Xy-pic is free software: see the User's Guide for details. + +Loading kernel: messages; fonts; allocations: state, direction, +utility macros; pictures: \xy, positions, objects, decorations; +kernel objects: directionals, circles, text; options; algorithms: directions, +edges, connections; Xy-pic loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyall.tex + Xy-pic option: All features v.3.3 +(/usr/share/texmf-texlive/tex/generic/xypic/xycurve.tex + Xy-pic option: Curve and Spline extension v.3.7 curve, circles, loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyframe.tex + Xy-pic option: Frame and Bracket extension v.3.7 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xycmtip.tex + Xy-pic option: Computer Modern tip extension v.3.3 +(/usr/share/texmf-texlive/tex/generic/xypic/xytips.tex + Xy-pic option: More Tips extension v.3.3 loaded) loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyline.tex + Xy-pic option: Line styles extension v.3.6 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyrotate.tex + Xy-pic option: Rotate and Scale extension v.3.3 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xycolor.tex + Xy-pic option: Colour extension v.3.3 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xymatrix.tex + Xy-pic option: Matrix feature v.3.4 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyarrow.tex + Xy-pic option: Arrow and Path feature v.3.5 path, \ar, loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xygraph.tex + Xy-pic option: Graph feature v.3.7 loaded) loaded)) +(/usr/share/texmf-texlive/tex/latex/fancyvrb/fancyvrb.sty +Style option: `fancyvrb' v2.7a, with DG/SPQR fixes, and firstline=lastline fix +<2008/02/07> (tvz)) (/usr/share/texmf-texlive/tex/latex/moreverb/moreverb.sty +(/usr/share/texmf-texlive/tex/latex/tools/verbatim.sty)) +(/usr/share/texmf-texlive/tex/latex/base/alltt.sty) +(/usr/share/texmf-texlive/tex/latex/ltxmisc/boxedminipage.sty) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/ltxmisc/endnotes.sty) +(/usr/share/texmf-texlive/tex/latex/multirow/multirow.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.sty +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.cfg)) +(/usr/share/texmf-texlive/tex/latex/hyperref/hyperref.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifpdf.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifvtex.sty) +(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty) +(/usr/share/texmf-texlive/tex/latex/oberdiek/hycolor.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/xcolor-patch.sty)) +(/usr/share/texmf-texlive/tex/latex/hyperref/pd1enc.def) +(/usr/share/texmf-texlive/tex/generic/oberdiek/etexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/infwarerr.sty)) +(/etc/texmf/tex/latex/config/hyperref.cfg) +(/usr/share/texmf-texlive/tex/latex/oberdiek/kvoptions.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/kvsetkeys.sty)) +Implicit mode ON; LaTeX internals redefined +(/usr/share/texmf-texlive/tex/latex/ltxmisc/url.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bitset.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/intcalc.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bigintcalc.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/pdftexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifluatex.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ltxcmds.sty)))) +(/usr/share/texmf-texlive/tex/generic/oberdiek/atbegshi.sty)) +*hyperref using default driver hpdftex* +(/usr/share/texmf-texlive/tex/latex/hyperref/hpdftex.def) +(/usr/share/texmf-texlive/tex/latex/graphics/color.sty +(/etc/texmf/tex/latex/config/color.cfg) +(/usr/share/texmf-texlive/tex/latex/graphics/dvipsnam.def)) +(./macros_common.tex) (./macros_options.tex) (./macros_listing_cocci.tex +(/usr/share/texmf-texlive/tex/latex/listings/lstlang1.sty) +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty)) +(./macros_grammar.tex) (./macros.tex) +No file main.aux. +(/usr/share/texmf-texlive/tex/latex/psnfss/t1ptm.fd) +(/usr/share/texmf-texlive/tex/context/base/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +) (/usr/share/texmf-texlive/tex/latex/hyperref/nameref.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/refcount.sty)) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsa.fd) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsb.fd) [1{/var/lib/texmf/fonts/m +ap/pdftex/updmap/pdftex.map}]pdfTeX warning (ext4): destination with the same i +dentifier (name{page.1}) has been already used, duplicate ignored + + \relax +l.116 \chapter + *{Foreword} [1] +(/usr/share/texmf-texlive/tex/latex/psnfss/omsptm.fd) + +LaTeX Warning: Reference `part:usermanual' on page 2 undefined on input line 12 +1. + + +LaTeX Warning: Reference `part:refmanual' on page 2 undefined on input line 122 +. + +(/usr/share/texmf-texlive/tex/latex/psnfss/t1pcr.fd) +Underfull \hbox (badness 10000) in paragraph at lines 135--138 + +[2] [3] (./introduction.tex +Chapter 1. +) (./installing.tex [4] +Chapter 2. +) (./tutorial.tex [5] +Chapter 3. +) [6] +Chapter 4. +(./examples.tex +Underfull \hbox (badness 10000) in paragraph at lines 11--16 + + +Overfull \hbox (4.02878pt too wide) in paragraph at lines 17--73 +[][] +[7] +Underfull \hbox (badness 10000) in paragraph at lines 77--83 + +[8] +Underfull \hbox (badness 10000) in paragraph at lines 142--146 + + +Underfull \hbox (badness 10000) in paragraph at lines 147--153 + + +Underfull \hbox (badness 10000) in paragraph at lines 154--175 + + +Underfull \hbox (badness 10000) in paragraph at lines 178--194 + +[9] +Underfull \hbox (badness 10000) in paragraph at lines 205--212 + + +Underfull \hbox (badness 10000) in paragraph at lines 213--238 + +[10] +Underfull \hbox (badness 10000) in paragraph at lines 262--265 + +[11] +Overfull \hbox (565.25523pt too wide) in paragraph at lines 341--381 +[][] +[12] +Underfull \hbox (badness 10000) in paragraph at lines 385--394 + + +Underfull \hbox (badness 10000) in paragraph at lines 411--422 + +[13] +Underfull \hbox (badness 10000) in paragraph at lines 436--487 + +) (./tips.tex +Overfull \hbox (6.12321pt too wide) in paragraph at lines 14--18 +[]\T1/ptm/m/n/10 However, if for some rea-son your code looks like []\T1/pcr/m/ +n/10 bar = *(foo)\T1/ptm/m/n/10 , you will end up with []\T1/pcr/m/n/10 bar = r +eadb((foo)) +[14]) (./isomorphisms.tex [15] +Chapter 5. +) (./parsing.tex [16] +Chapter 6. +) (./workflow.tex [17] +Chapter 7. +) (./advanced.tex [18] +Chapter 8. +) [19] [20] +Chapter 9. +(./cocci_syntax.tex (/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) +Overfull \hbox (6.40387pt too wide) in paragraph at lines 75--109 + [] +[21] [22] [23] + +LaTeX Warning: Reference `types' on page 24 undefined on input line 242. + +[24]pdfTeX warning (ext4): destination with the same identifier (name{script\\p +rotect\040\\T1\\textunderscore\040metadecl}) has been already used, duplicate i +gnored + + \relax +l.296 ...},\T{id}) <{}< \T{rulename\_id}.\T{id} ;} + [25] [26] [27] +Overfull \hbox (2.84467pt too wide) in paragraph at lines 709--751 + [] +[28] [29] [30]) [31] +Chapter 10. +(./spatch_options.tex +Overfull \hbox (40.85385pt too wide) in paragraph at lines 39--42 +[]\T1/pcr/m/n/10 spatch -sp_file foo.cocci -dir foodir -include_headers\T1/ptm/ +m/n/10 : Ap-ply the se-man-tic patch \T1/pcr/m/n/10 foo.cocci +(/usr/share/texmf-texlive/tex/latex/ifsym/uifgeo.fd) [32] [33] +Overfull \hbox (53.96228pt too wide) in paragraph at lines 175--176 +\T1/ptm/m/n/10 that a di-rec-tory is spec-i-fied. The in-dex may be cre-ated us +-ing the script \T1/pcr/m/n/10 coccinelle/scripts/ glimpseindex_cocci.sh\T1/ptm +/m/n/10 . +[34] [35] [36] [37] [38] +Overfull \hbox (4.86494pt too wide) in paragraph at lines 490--491 +\T1/pcr/m/n/10 foo.cocci -dir /var/linuxes/linux-next/drivers -patch /var/linux +es/linux-next\T1/ptm/m/n/10 . A +[39]) [40] [41] (./license.txt [42] [43] [44] [45]) +No file main.bbl. +[46] (./main.aux) + +LaTeX Warning: There were undefined references. + + +LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. + + ) +(see the transcript file for additional information) {/usr/share/texmf-texlive/fonts/enc/dvips/base/8r.en +c} +Output written on main.pdf (47 pages, 411318 bytes). +Transcript written on main.log. +pdflatex main.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/report.cls +Document Class: report 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) (./hevea.sty +(/usr/share/texmf-texlive/tex/latex/comment/comment.sty +Excluding comment 'comment') Excluding comment 'rawhtml' +Excluding comment 'htmlonly') +(/usr/share/texmf-texlive/tex/latex/psnfss/times.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsmath.sty +For additional information on amsmath, use the `?' option. +(/usr/share/texmf-texlive/tex/latex/amsmath/amstext.sty +(/usr/share/texmf-texlive/tex/latex/amsmath/amsgen.sty)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsbsy.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsopn.sty)) +(/usr/share/texmf-texlive/tex/latex/amsfonts/amssymb.sty +(/usr/share/texmf-texlive/tex/latex/amsfonts/amsfonts.sty)) +(/usr/share/texmf-texlive/tex/latex/ifsym/ifsym.sty +(/usr/share/texmf-texlive/tex/latex/tools/calc.sty)) +(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty +(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty) +(/etc/texmf/tex/latex/config/graphics.cfg) +(/usr/share/texmf-texlive/tex/latex/pdftex-def/pdftex.def)) +(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty +(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)) +(/usr/share/texmf-texlive/tex/latex/graphics/epsfig.sty) +(/usr/share/texmf-texlive/tex/latex/subfigure/subfigure.sty +**************************************** +* Local config file subfigure.cfg used * +**************************************** +(/usr/share/texmf-texlive/tex/latex/subfigure/subfigure.cfg)) +(/usr/share/texmf-texlive/tex/latex/wrapfig/wrapfig.sty) +(/usr/share/texmf-texlive/tex/generic/xypic/xy.sty +(/usr/share/texmf-texlive/tex/generic/xypic/xy.tex Bootstrap'ing: catcodes, +docmode, (/usr/share/texmf-texlive/tex/generic/xypic/xyrecat.tex) +(/usr/share/texmf-texlive/tex/generic/xypic/xyidioms.tex) + + Xy-pic version 3.7 <1999/02/16> + Copyright (c) 1991-1998 by Kristoffer H. Rose + Xy-pic is free software: see the User's Guide for details. + +Loading kernel: messages; fonts; allocations: state, direction, +utility macros; pictures: \xy, positions, objects, decorations; +kernel objects: directionals, circles, text; options; algorithms: directions, +edges, connections; Xy-pic loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyall.tex + Xy-pic option: All features v.3.3 +(/usr/share/texmf-texlive/tex/generic/xypic/xycurve.tex + Xy-pic option: Curve and Spline extension v.3.7 curve, circles, loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyframe.tex + Xy-pic option: Frame and Bracket extension v.3.7 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xycmtip.tex + Xy-pic option: Computer Modern tip extension v.3.3 +(/usr/share/texmf-texlive/tex/generic/xypic/xytips.tex + Xy-pic option: More Tips extension v.3.3 loaded) loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyline.tex + Xy-pic option: Line styles extension v.3.6 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyrotate.tex + Xy-pic option: Rotate and Scale extension v.3.3 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xycolor.tex + Xy-pic option: Colour extension v.3.3 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xymatrix.tex + Xy-pic option: Matrix feature v.3.4 loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xyarrow.tex + Xy-pic option: Arrow and Path feature v.3.5 path, \ar, loaded) +(/usr/share/texmf-texlive/tex/generic/xypic/xygraph.tex + Xy-pic option: Graph feature v.3.7 loaded) loaded)) +(/usr/share/texmf-texlive/tex/latex/fancyvrb/fancyvrb.sty +Style option: `fancyvrb' v2.7a, with DG/SPQR fixes, and firstline=lastline fix +<2008/02/07> (tvz)) (/usr/share/texmf-texlive/tex/latex/moreverb/moreverb.sty +(/usr/share/texmf-texlive/tex/latex/tools/verbatim.sty)) +(/usr/share/texmf-texlive/tex/latex/base/alltt.sty) +(/usr/share/texmf-texlive/tex/latex/ltxmisc/boxedminipage.sty) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/ltxmisc/endnotes.sty) +(/usr/share/texmf-texlive/tex/latex/multirow/multirow.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.sty +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.cfg)) +(/usr/share/texmf-texlive/tex/latex/hyperref/hyperref.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifpdf.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifvtex.sty) +(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty) +(/usr/share/texmf-texlive/tex/latex/oberdiek/hycolor.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/xcolor-patch.sty)) +(/usr/share/texmf-texlive/tex/latex/hyperref/pd1enc.def) +(/usr/share/texmf-texlive/tex/generic/oberdiek/etexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/infwarerr.sty)) +(/etc/texmf/tex/latex/config/hyperref.cfg) +(/usr/share/texmf-texlive/tex/latex/oberdiek/kvoptions.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/kvsetkeys.sty)) +Implicit mode ON; LaTeX internals redefined +(/usr/share/texmf-texlive/tex/latex/ltxmisc/url.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bitset.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/intcalc.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bigintcalc.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/pdftexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifluatex.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ltxcmds.sty)))) +(/usr/share/texmf-texlive/tex/generic/oberdiek/atbegshi.sty)) +*hyperref using default driver hpdftex* +(/usr/share/texmf-texlive/tex/latex/hyperref/hpdftex.def) +(/usr/share/texmf-texlive/tex/latex/graphics/color.sty +(/etc/texmf/tex/latex/config/color.cfg) +(/usr/share/texmf-texlive/tex/latex/graphics/dvipsnam.def)) +(./macros_common.tex) (./macros_options.tex) (./macros_listing_cocci.tex +(/usr/share/texmf-texlive/tex/latex/listings/lstlang1.sty) +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty)) +(./macros_grammar.tex) (./macros.tex) (./main.aux) +(/usr/share/texmf-texlive/tex/latex/psnfss/t1ptm.fd) +(/usr/share/texmf-texlive/tex/context/base/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +) (/usr/share/texmf-texlive/tex/latex/hyperref/nameref.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/refcount.sty)) (./main.out) +(./main.out) (/usr/share/texmf-texlive/tex/latex/amsfonts/umsa.fd) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsb.fd) [1{/var/lib/texmf/fonts/m +ap/pdftex/updmap/pdftex.map}] (./main.toc +(/usr/share/texmf-texlive/tex/latex/psnfss/t1pcr.fd)pdfTeX warning (ext4): dest +ination with the same identifier (name{page.1}) has been already used, duplicat +e ignored + + \relax +l.33 ...berline {9.9}Expressions}{30}{section.9.9} + [1]) [2] +(/usr/share/texmf-texlive/tex/latex/psnfss/omsptm.fd) +Underfull \hbox (badness 10000) in paragraph at lines 135--138 + +[3] [4] (./introduction.tex +Chapter 1. +) (./installing.tex [5] +Chapter 2. +) (./tutorial.tex [6] +Chapter 3. +) [7] +Chapter 4. +(./examples.tex +Underfull \hbox (badness 10000) in paragraph at lines 11--16 + + +Overfull \hbox (4.02878pt too wide) in paragraph at lines 17--73 +[][] +[8] +Underfull \hbox (badness 10000) in paragraph at lines 77--83 + +[9] +Underfull \hbox (badness 10000) in paragraph at lines 142--146 + + +Underfull \hbox (badness 10000) in paragraph at lines 147--153 + + +Underfull \hbox (badness 10000) in paragraph at lines 154--175 + + +Underfull \hbox (badness 10000) in paragraph at lines 178--194 + +[10] +Underfull \hbox (badness 10000) in paragraph at lines 205--212 + + +Underfull \hbox (badness 10000) in paragraph at lines 213--238 + +[11] +Underfull \hbox (badness 10000) in paragraph at lines 262--265 + +[12] +Overfull \hbox (565.25523pt too wide) in paragraph at lines 341--381 +[][] +[13] +Underfull \hbox (badness 10000) in paragraph at lines 385--394 + + +Underfull \hbox (badness 10000) in paragraph at lines 411--422 + +[14] +Underfull \hbox (badness 10000) in paragraph at lines 436--487 + +) (./tips.tex +Overfull \hbox (6.12321pt too wide) in paragraph at lines 14--18 +[]\T1/ptm/m/n/10 However, if for some rea-son your code looks like []\T1/pcr/m/ +n/10 bar = *(foo)\T1/ptm/m/n/10 , you will end up with []\T1/pcr/m/n/10 bar = r +eadb((foo)) +[15]) (./isomorphisms.tex [16] +Chapter 5. +) (./parsing.tex [17] +Chapter 6. +) (./workflow.tex [18] +Chapter 7. +) (./advanced.tex [19] +Chapter 8. +) [20] [21] +Chapter 9. +(./cocci_syntax.tex (/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) +Overfull \hbox (6.40387pt too wide) in paragraph at lines 75--109 + [] +[22] [23] [24] [25]pdfTeX warning (ext4): destination with the same identifier +(name{script\\protect\040\\T1\\textunderscore\040metadecl}) has been already us +ed, duplicate ignored + + \relax +l.296 ...},\T{id}) <{}< \T{rulename\_id}.\T{id} ;} + [26] [27] [28] +Overfull \hbox (2.84467pt too wide) in paragraph at lines 709--751 + [] +[29] [30] [31]) [32] +Chapter 10. +(./spatch_options.tex +Overfull \hbox (40.85385pt too wide) in paragraph at lines 39--42 +[]\T1/pcr/m/n/10 spatch -sp_file foo.cocci -dir foodir -include_headers\T1/ptm/ +m/n/10 : Ap-ply the se-man-tic patch \T1/pcr/m/n/10 foo.cocci +(/usr/share/texmf-texlive/tex/latex/ifsym/uifgeo.fd) [33] [34] +Overfull \hbox (53.96228pt too wide) in paragraph at lines 175--176 +\T1/ptm/m/n/10 that a di-rec-tory is spec-i-fied. The in-dex may be cre-ated us +-ing the script \T1/pcr/m/n/10 coccinelle/scripts/ glimpseindex_cocci.sh\T1/ptm +/m/n/10 . +[35] [36] [37] [38] [39] +Overfull \hbox (4.86494pt too wide) in paragraph at lines 490--491 +\T1/pcr/m/n/10 foo.cocci -dir /var/linuxes/linux-next/drivers -patch /var/linux +es/linux-next\T1/ptm/m/n/10 . A +[40]) [41] [42] (./license.txt [43] [44] [45] [46]) +No file main.bbl. +[47] (./main.aux) + +LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. + + ) +(see the transcript file for additional information) {/usr/share/texmf-texlive/fonts/enc/dvips/base/8r.en +c} +Output written on main.pdf (48 pages, 439141 bytes). +Transcript written on main.log. +mv main.pdf manual.pdf +pdflatex main_grammar.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main_grammar.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/article.cls +Document Class: article 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/psnfss/times.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) (./hevea.sty +(/usr/share/texmf-texlive/tex/latex/comment/comment.sty +Excluding comment 'comment') Excluding comment 'rawhtml' +Excluding comment 'htmlonly') +(/usr/share/texmf-texlive/tex/latex/base/alltt.sty) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/hyperref/hyperref.sty +(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifpdf.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifvtex.sty) +(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty) +(/usr/share/texmf-texlive/tex/latex/oberdiek/hycolor.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/xcolor-patch.sty)) +(/usr/share/texmf-texlive/tex/latex/hyperref/pd1enc.def) +(/usr/share/texmf-texlive/tex/generic/oberdiek/etexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/infwarerr.sty)) +(/etc/texmf/tex/latex/config/hyperref.cfg) +(/usr/share/texmf-texlive/tex/latex/oberdiek/kvoptions.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/kvsetkeys.sty)) +Implicit mode ON; LaTeX internals redefined +(/usr/share/texmf-texlive/tex/latex/ltxmisc/url.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bitset.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/intcalc.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bigintcalc.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/pdftexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifluatex.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ltxcmds.sty)))) +(/usr/share/texmf-texlive/tex/generic/oberdiek/atbegshi.sty)) +*hyperref using default driver hpdftex* +(/usr/share/texmf-texlive/tex/latex/hyperref/hpdftex.def) +(/usr/share/texmf-texlive/tex/latex/listings/listings.sty +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.cfg)) +(/usr/share/texmf-texlive/tex/latex/graphics/color.sty +(/etc/texmf/tex/latex/config/color.cfg) +(/usr/share/texmf-texlive/tex/latex/pdftex-def/pdftex.def) +(/usr/share/texmf-texlive/tex/latex/graphics/dvipsnam.def)) +(/usr/share/texmf-texlive/tex/latex/multirow/multirow.sty) +(./macros_listing_cocci.tex +(/usr/share/texmf-texlive/tex/latex/listings/lstlang1.sty) +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty)) +(./macros_grammar.tex) (./macros_common.tex) (./macros.tex) +No file main_grammar.aux. +(/usr/share/texmf-texlive/tex/latex/psnfss/t1ptm.fd) +(/usr/share/texmf-texlive/tex/latex/hyperref/nameref.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/refcount.sty)) +(/usr/share/texmf-texlive/tex/context/base/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +) (./cocci_syntax.tex (/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) +(/usr/share/texmf-texlive/tex/latex/psnfss/t1pcr.fd) +Overfull \hbox (6.40143pt too wide) in paragraph at lines 75--109 + [] +[1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] +(/usr/share/texmf-texlive/tex/latex/psnfss/omsptm.fd) [2] [3] + +LaTeX Warning: Reference `types' on page 4 undefined on input line 242. + +[4]pdfTeX warning (ext4): destination with the same identifier (name{script\\pr +otect\040\\T1\\textunderscore\040metadecl}) has been already used, duplicate ig +nored + + \relax +l.296 ...},\T{id}) <{}< \T{rulename\_id}.\T{id} ;} + [5] [6] [7] +Overfull \hbox (2.84222pt too wide) in paragraph at lines 709--751 + [] +[8] [9] [10]) [11] (./examples.tex +Underfull \hbox (badness 10000) in paragraph at lines 11--16 + + +Overfull \hbox (4.02878pt too wide) in paragraph at lines 17--73 +[][] +[12] +Underfull \hbox (badness 10000) in paragraph at lines 77--83 + +[13] +Underfull \hbox (badness 10000) in paragraph at lines 142--146 + + +Underfull \hbox (badness 10000) in paragraph at lines 147--153 + + +Underfull \hbox (badness 10000) in paragraph at lines 154--175 + + +Underfull \hbox (badness 10000) in paragraph at lines 178--194 + +[14] +Underfull \hbox (badness 10000) in paragraph at lines 205--212 + + +Underfull \hbox (badness 10000) in paragraph at lines 213--238 + +[15] +Underfull \hbox (badness 10000) in paragraph at lines 262--265 + +[16] +Overfull \hbox (565.25523pt too wide) in paragraph at lines 341--381 +[][] +[17] +Underfull \hbox (badness 10000) in paragraph at lines 385--394 + + +Underfull \hbox (badness 10000) in paragraph at lines 411--422 + +[18] +Underfull \hbox (badness 10000) in paragraph at lines 436--487 + +) [19] (./tips.tex +Overfull \hbox (6.12321pt too wide) in paragraph at lines 14--18 +[]\T1/ptm/m/n/10 However, if for some rea-son your code looks like []\T1/pcr/m/ +n/10 bar = *(foo)\T1/ptm/m/n/10 , you will end up with []\T1/pcr/m/n/10 bar = r +eadb((foo)) +) [20] (./main_grammar.aux (./examples.aux) (./tips.aux)) + +LaTeX Warning: There were undefined references. + + +LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. + + ) +(see the transcript file for additional information){/usr/share/texmf-texlive/f +onts/enc/dvips/base/8r.enc}< +/usr/share/texmf-texlive/fonts/type1/urw/helvetic/uhvr8a.pfb> +Output written on main_grammar.pdf (20 pages, 330431 bytes). +Transcript written on main_grammar.log. +pdflatex main_grammar.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main_grammar.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/article.cls +Document Class: article 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/psnfss/times.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) (./hevea.sty +(/usr/share/texmf-texlive/tex/latex/comment/comment.sty +Excluding comment 'comment') Excluding comment 'rawhtml' +Excluding comment 'htmlonly') +(/usr/share/texmf-texlive/tex/latex/base/alltt.sty) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/hyperref/hyperref.sty +(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifpdf.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifvtex.sty) +(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty) +(/usr/share/texmf-texlive/tex/latex/oberdiek/hycolor.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/xcolor-patch.sty)) +(/usr/share/texmf-texlive/tex/latex/hyperref/pd1enc.def) +(/usr/share/texmf-texlive/tex/generic/oberdiek/etexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/infwarerr.sty)) +(/etc/texmf/tex/latex/config/hyperref.cfg) +(/usr/share/texmf-texlive/tex/latex/oberdiek/kvoptions.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/kvsetkeys.sty)) +Implicit mode ON; LaTeX internals redefined +(/usr/share/texmf-texlive/tex/latex/ltxmisc/url.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bitset.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/intcalc.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/bigintcalc.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/pdftexcmds.sty +(/usr/share/texmf-texlive/tex/generic/oberdiek/ifluatex.sty) +(/usr/share/texmf-texlive/tex/generic/oberdiek/ltxcmds.sty)))) +(/usr/share/texmf-texlive/tex/generic/oberdiek/atbegshi.sty)) +*hyperref using default driver hpdftex* +(/usr/share/texmf-texlive/tex/latex/hyperref/hpdftex.def) +(/usr/share/texmf-texlive/tex/latex/listings/listings.sty +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty) +(/usr/share/texmf-texlive/tex/latex/listings/listings.cfg)) +(/usr/share/texmf-texlive/tex/latex/graphics/color.sty +(/etc/texmf/tex/latex/config/color.cfg) +(/usr/share/texmf-texlive/tex/latex/pdftex-def/pdftex.def) +(/usr/share/texmf-texlive/tex/latex/graphics/dvipsnam.def)) +(/usr/share/texmf-texlive/tex/latex/multirow/multirow.sty) +(./macros_listing_cocci.tex +(/usr/share/texmf-texlive/tex/latex/listings/lstlang1.sty) +(/usr/share/texmf-texlive/tex/latex/listings/lstmisc.sty)) +(./macros_grammar.tex) (./macros_common.tex) (./macros.tex) (./main_grammar.aux +(./examples.aux) (./tips.aux)) +(/usr/share/texmf-texlive/tex/latex/psnfss/t1ptm.fd) +(/usr/share/texmf-texlive/tex/latex/hyperref/nameref.sty +(/usr/share/texmf-texlive/tex/latex/oberdiek/refcount.sty)) (./main_grammar.out +) (./main_grammar.out) (/usr/share/texmf-texlive/tex/context/base/supp-pdf.mkii + +[Loading MPS to PDF converter (version 2006.09.02).] +) (./cocci_syntax.tex (/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) +(/usr/share/texmf-texlive/tex/latex/psnfss/t1pcr.fd) +Overfull \hbox (6.40143pt too wide) in paragraph at lines 75--109 + [] +[1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] +(/usr/share/texmf-texlive/tex/latex/psnfss/omsptm.fd) [2] [3] [4]pdfTeX warning + (ext4): destination with the same identifier (name{script\\protect\040\\T1\\te +xtunderscore\040metadecl}) has been already used, duplicate ignored + + \relax +l.296 ...},\T{id}) <{}< \T{rulename\_id}.\T{id} ;} + [5] [6] [7] +Overfull \hbox (2.84222pt too wide) in paragraph at lines 709--751 + [] +[8] [9] [10]) [11] (./examples.tex +Underfull \hbox (badness 10000) in paragraph at lines 11--16 + + +Overfull \hbox (4.02878pt too wide) in paragraph at lines 17--73 +[][] +[12] +Underfull \hbox (badness 10000) in paragraph at lines 77--83 + +[13] +Underfull \hbox (badness 10000) in paragraph at lines 142--146 + + +Underfull \hbox (badness 10000) in paragraph at lines 147--153 + + +Underfull \hbox (badness 10000) in paragraph at lines 154--175 + + +Underfull \hbox (badness 10000) in paragraph at lines 178--194 + +[14] +Underfull \hbox (badness 10000) in paragraph at lines 205--212 + + +Underfull \hbox (badness 10000) in paragraph at lines 213--238 + +[15] +Underfull \hbox (badness 10000) in paragraph at lines 262--265 + +[16] +Overfull \hbox (565.25523pt too wide) in paragraph at lines 341--381 +[][] +[17] +Underfull \hbox (badness 10000) in paragraph at lines 385--394 + + +Underfull \hbox (badness 10000) in paragraph at lines 411--422 + +[18] +Underfull \hbox (badness 10000) in paragraph at lines 436--487 + +) [19] (./tips.tex +Overfull \hbox (6.12321pt too wide) in paragraph at lines 14--18 +[]\T1/ptm/m/n/10 However, if for some rea-son your code looks like []\T1/pcr/m/ +n/10 bar = *(foo)\T1/ptm/m/n/10 , you will end up with []\T1/pcr/m/n/10 bar = r +eadb((foo)) +) [20] (./main_grammar.aux (./examples.aux) (./tips.aux)) ) +(see the transcript file for additional information){/usr/share/texmf-texlive/f +onts/enc/dvips/base/8r.enc}< +/usr/share/texmf-texlive/fonts/type1/urw/helvetic/uhvr8a.pfb> +Output written on main_grammar.pdf (20 pages, 335600 bytes). +Transcript written on main_grammar.log. +pdflatex main_options.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main_options.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/article.cls +Document Class: article 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsmath.sty +For additional information on amsmath, use the `?' option. +(/usr/share/texmf-texlive/tex/latex/amsmath/amstext.sty +(/usr/share/texmf-texlive/tex/latex/amsmath/amsgen.sty)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsbsy.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsopn.sty)) +(/usr/share/texmf-texlive/tex/latex/amsfonts/amssymb.sty +(/usr/share/texmf-texlive/tex/latex/amsfonts/amsfonts.sty)) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/ifsym/ifsym.sty +(/usr/share/texmf-texlive/tex/latex/tools/calc.sty)) (./macros_options.tex) +(./macros.tex) +No file main_options.aux. +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsa.fd) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsb.fd) + +LaTeX Warning: No \author given. + +(./spatch_options.tex (/usr/share/texmf-texlive/tex/latex/base/t1cmtt.fd) +(/usr/share/texmf-texlive/tex/latex/base/omscmr.fd) +Overfull \hbox (4.27425pt too wide) in paragraph at lines 39--42 +[]\T1/cmtt/m/n/10 spatch -sp_file foo.cocci -dir foodir -include_headers\T1/cmr +/m/n/10 : Ap-ply the se-man-tic patch \T1/cmtt/m/n/10 foo.cocci +(/usr/share/texmf-texlive/tex/latex/ifsym/uifgeo.fd) [1{/var/lib/texmf/fonts/ma +p/pdftex/updmap/pdftex.map}] [2] [3] [4] [5] [6] +(/usr/share/texmf-texlive/tex/latex/base/t1cmss.fd) [7] [8]) [9] +(./main_options.aux) ) +(see the transcript file for additional information) +Output written on main_options.pdf (9 pages, 136077 bytes). +Transcript written on main_options.log. +pdflatex main_options.tex +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) + restricted \write18 enabled. +entering extended mode +(./main_options.tex +LaTeX2e <2009/09/24> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, loaded. +(/usr/share/texmf-texlive/tex/latex/base/article.cls +Document Class: article 2007/10/19 v1.4h Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo)) +(/usr/share/texmf-texlive/tex/latex/base/inputenc.sty +(/usr/share/texmf-texlive/tex/latex/base/utf8.def +(/usr/share/texmf-texlive/tex/latex/base/t1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/ot1enc.dfu) +(/usr/share/texmf-texlive/tex/latex/base/omsenc.dfu))) +(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty +(/usr/share/texmf-texlive/tex/latex/base/t1enc.def)) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty) +(/usr/share/texmf-texlive/tex/latex/preprint/fullpage.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsmath.sty +For additional information on amsmath, use the `?' option. +(/usr/share/texmf-texlive/tex/latex/amsmath/amstext.sty +(/usr/share/texmf-texlive/tex/latex/amsmath/amsgen.sty)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsbsy.sty) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsopn.sty)) +(/usr/share/texmf-texlive/tex/latex/amsfonts/amssymb.sty +(/usr/share/texmf-texlive/tex/latex/amsfonts/amsfonts.sty)) +(/usr/share/texmf-texlive/tex/latex/tools/xspace.sty) +(/usr/share/texmf-texlive/tex/latex/ifsym/ifsym.sty +(/usr/share/texmf-texlive/tex/latex/tools/calc.sty)) (./macros_options.tex) +(./macros.tex) (./main_options.aux) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsa.fd) +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsb.fd) + +LaTeX Warning: No \author given. + +(./spatch_options.tex (/usr/share/texmf-texlive/tex/latex/base/t1cmtt.fd) +(/usr/share/texmf-texlive/tex/latex/base/omscmr.fd) +Overfull \hbox (4.27425pt too wide) in paragraph at lines 39--42 +[]\T1/cmtt/m/n/10 spatch -sp_file foo.cocci -dir foodir -include_headers\T1/cmr +/m/n/10 : Ap-ply the se-man-tic patch \T1/cmtt/m/n/10 foo.cocci +(/usr/share/texmf-texlive/tex/latex/ifsym/uifgeo.fd) [1{/var/lib/texmf/fonts/ma +p/pdftex/updmap/pdftex.map}] [2] [3] [4] [5] [6] +(/usr/share/texmf-texlive/tex/latex/base/t1cmss.fd) [7] [8]) [9] +(./main_options.aux) ) +(see the transcript file for additional information) +Output written on main_options.pdf (9 pages, 136077 bytes). +Transcript written on main_options.log. +mv main_options.pdf options.pdf +make[5]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[4]: Leaving directory `/home/jll/coccinelle-release/docs' +make[3]: Leaving directory `/home/jll/coccinelle-release' +make clean +make[3]: Entering directory `/home/jll/coccinelle-release' +Makefile.config is missing. Have you run ./configure? +set -e; for i in pycaml ocamlsexp commons globals menhirlib ctl parsing_cocci parsing_c engine popl09 extra python ocaml; do make -C $i clean; done +make[4]: Entering directory `/home/jll/coccinelle-release/pycaml' +rm -f pycaml.customtop +rm -f *.cm[aiox] *.a +rm -f pycaml pycaml.top pycaml.cmi pycaml.cmo pycaml.cmx pycaml.asm pycaml.s pycaml.o pycaml_ml.o pycaml.cma pycaml.cmxa pycaml.a pycaml.cmi pycaml.cmo pycaml.cmi pycaml.cmx pycaml.o libpycaml_stubs.a pycaml.annot .cmi .cmo .cmx .o dllpycaml_stubs.so +rm -rf ._bcdi ._ncdi ._d +make[4]: Leaving directory `/home/jll/coccinelle-release/pycaml' +make[4]: Entering directory `/home/jll/coccinelle-release/ocamlsexp' +rm -f sexplib.top +rm -f lexer.ml +rm -f parser.ml parser.mli parser.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ocamlsexp' +make[4]: Entering directory `/home/jll/coccinelle-release/commons' +rm -f commons.top +rm -f dllcommons_backtrace.so +rm -f gmon.out +rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot +rm -f *~ .*~ #*# +for i in ocamlextra ocollection; do (cd $i; \ + rm -f *.cm[iox] *.o *.a *.cma *.cmxa *.annot *~ .*~ ; \ + cd ..; ) \ + done +make[4]: Leaving directory `/home/jll/coccinelle-release/commons' +make[4]: Entering directory `/home/jll/coccinelle-release/globals' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/globals' +make[4]: Entering directory `/home/jll/coccinelle-release/menhirlib' +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/menhirlib' +make[4]: Entering directory `/home/jll/coccinelle-release/ctl' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[4]: Entering directory `/home/jll/coccinelle-release/ctl' +rm -f ctl.cma ctl.cmxa ctl.a ctl.top +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ctl' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_cocci' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals -I *.mli *.ml > .depend +Bad -I option: adjacency.mli: Not a directory +rm -f cocci_parser.cma +rm -f cocci_parser.cmxa cocci_parser.a +rm -f cocci_parser +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_cocci' +make[4]: Entering directory `/home/jll/coccinelle-release/parsing_c' +rm -f parsing_c.top +rm -f lexer_c.ml +rm -f parser_c.ml parser_c.mli parser_c.output +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/parsing_c' +make[4]: Entering directory `/home/jll/coccinelle-release/engine' +rm -f cocciengine.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/engine' +make[4]: Entering directory `/home/jll/coccinelle-release/popl09' +ocamldep.opt -I ../commons -I ../globals -I ../ctl -I ../parsing_cocci -I ../parsing_c -I ../engine *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[4]: Entering directory `/home/jll/coccinelle-release/popl09' +rm -f popl.cma popl.top +rm -f popl.cmxa popl.a +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/popl09' +make[4]: Entering directory `/home/jll/coccinelle-release/extra' +rm -f extra.byte extra.opt rm -f extra.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/extra' +make[4]: Entering directory `/home/jll/coccinelle-release/python' +ocamldep.opt -I ../commons -I ../commons/ocamlextra -I ../globals -I ../parsing_c -I ../parsing_cocci *.mli *.ml > .depend +make[4]: Leaving directory `/home/jll/coccinelle-release/python' +make[4]: Entering directory `/home/jll/coccinelle-release/python' +rm -f coccipython.cma +rm -f coccipython.cmxa coccipython.a +rm -f coccipython +rm -f coccipython.byte +rm -f +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/python' +make[4]: Entering directory `/home/jll/coccinelle-release/ocaml' +rm -f cocciocaml.top +rm -f *.cm[ioxa] *.o *.a *.cmxa *.annot +rm -f *~ .*~ gmon.out #*# +make[4]: Leaving directory `/home/jll/coccinelle-release/ocaml' +make -C demos/spp clean +make[4]: Entering directory `/home/jll/coccinelle-release/demos/spp' +rm -f test.o test.c.i test2.o test2.c.i +make[4]: Leaving directory `/home/jll/coccinelle-release/demos/spp' +rm -f spatch spatch.opt spatch.top +make -C docs clean +make[4]: Entering directory `/home/jll/coccinelle-release/docs' +rm -f spatch.1 +make -C manual clean +make[5]: Entering directory `/home/jll/coccinelle-release/docs/manual' +rm -f *.aux *.dvi *.haux *.htoc *.log *.out *~ +rm -f main-diff.* +rm -f *.aux \ + *.bbl \ + *.blg \ + *.dvi \ + *.log \ + *.out \ + *.toc +make[5]: Leaving directory `/home/jll/coccinelle-release/docs/manual' +make[4]: Leaving directory `/home/jll/coccinelle-release/docs' +rm -f scripts/spatch scripts/spatch.byte scripts/spatch.opt +rm -f gmon.out +rm -f *.cm[iox] *.o *.annot +rm -f *~ .*~ *.exe #*# +make[3]: Leaving directory `/home/jll/coccinelle-release' +cp -a . /tmp/coccinelle-0.2.5-rc2 +cp: `.' and `/tmp/coccinelle-0.2.5-rc2/.' are the same file +make[2]: *** [srctar] Error 1 +make[2]: Leaving directory `/home/jll/coccinelle-release' +make[1]: *** [package-src] Error 2 +make[1]: Leaving directory `/home/jll/coccinelle-release' +make: *** [package] Error 2 +hadrien:~/coccinelle-release: ^Dexit + +Script done on 2011-01-09T21:02:47 CET diff --git a/parsing_c/ast_c.ml b/parsing_c/ast_c.ml index 9cfd69a..d2776d5 100644 --- a/parsing_c/ast_c.ml +++ b/parsing_c/ast_c.ml @@ -65,7 +65,7 @@ open Common * *) -(* forunparser: *) +(* for unparser: *) type posl = int * int (* line-col, for MetaPosValList, for position variables *) (* with sexp *) @@ -186,7 +186,7 @@ and fullType = typeQualifier * typeC | TypeName of name * fullType option (* semantic: filled later *) - | ParenType of fullType (* forunparser: *) + | ParenType of fullType (* for unparser: *) (* gccext: TypeOfType below may seems useless; Why declare a * __typeof__(int) x; ? @@ -331,7 +331,7 @@ and expression = (expressionbis * exp_info ref (* semantic: *)) wrap3 | StatementExpr of compound wrap (* ( ) new scope *) | Constructor of fullType * initialiser wrap2 (* , *) list - (* forunparser: *) + (* for unparser: *) | ParenExpr of expression (* cppext: IfdefExpr TODO *) @@ -578,7 +578,6 @@ and definition = definitionbis wrap (* ( ) { } fakestart sto *) and cpp_directive = | Define of define | Include of includ - | Undef of string wrap | PragmaAndCo of il (*| Ifdef ? no, ifdefs are handled differently, cf ifdef_directive below *) @@ -586,6 +585,7 @@ and define = string wrap (* #define s eol *) * (define_kind * define_val) and define_kind = | DefineVar | DefineFunc of ((string wrap) wrap2 list) wrap (* () *) + | Undef and define_val = (* most common case; e.g. to define int constant *) | DefineExpr of expression diff --git a/parsing_c/control_flow_c_build.ml b/parsing_c/control_flow_c_build.ml index aeaabd0..a911d45 100644 --- a/parsing_c/control_flow_c_build.ml +++ b/parsing_c/control_flow_c_build.ml @@ -1189,7 +1189,10 @@ let ast_to_control_flow e = Some !g | Ast_c.CppTop (Ast_c.Define ((id,ii), (defkind, defval))) -> - let s = ("#define " ^ id) in + let s = + match defkind with + Ast_c.Undef -> "#undef " ^ id + | _ -> "#define " ^ id in let headeri = !g+>add_node (DefineHeader ((id, ii), defkind)) lbl_0 s in !g#add_arc ((topi, headeri),Direct); diff --git a/parsing_c/lexer_c.mll b/parsing_c/lexer_c.mll index 1d5e464..da6a291 100644 --- a/parsing_c/lexer_c.mll +++ b/parsing_c/lexer_c.mll @@ -229,6 +229,7 @@ let ulong = (UnSigned,CLong) (*****************************************************************************) let letter = ['A'-'Z' 'a'-'z' '_'] +let extended_letter = ['A'-'Z' 'a'-'z' '_' ':' '<' '>' '~'](*for c++, not used*) let digit = ['0'-'9'] (* not used for the moment *) @@ -371,12 +372,7 @@ rule token = parse (* note: in some cases can have stuff after the ident as in #undef XXX 50, * but I currently don't handle it cos I think it's bad code. *) - | (("#" [' ' '\t']* "undef" [' ' '\t']+) as _undef) (id as id) - { let info = tokinfo lexbuf in - TUndef (id, info) - (*+> tok_add_s (cpp_eat_until_nl lexbuf))*) - } - + | "#" [' ' '\t']* "undef" { TUndef (tokinfo lexbuf) } (* ---------------------- *) (* #include *) @@ -508,6 +504,8 @@ rule token = parse } + | "#" [' ''\t']* "endif" [' ''\t']+ (letter|digit) ((letter|digit)*) [' ''\t']* + { TEndif (no_ifdef_mark(), tokinfo lexbuf) } (* bugfix: can have #endif LINUX but at the same time if I eat everything * until next line, I may miss some TComment which for some tools * are important such as aComment @@ -676,6 +674,22 @@ rule token = parse pr2 ("LEXER: identifier with dollar: " ^ s); TIdent (s, info) } + | (letter | '$') (letter | digit | '$' | '~') * + ("::" (letter | '$' | '~') (letter | digit | '$' | '~') * + ('<' (letter | '$' | '~') (letter | digit | '$' | '~') * '>') ?) * + + { + if !Flag.c_plus_plus + then + begin + let info = tokinfo lexbuf in + let s = tok lexbuf in + TIdent (s, info) + end + else + raise + (Lexical "~ and :: not allowed in C identifiers, try -c++ option") + } (* ----------------------------------------------------------------------- *) diff --git a/parsing_c/parse_c.ml b/parsing_c/parse_c.ml index b9f6dac..7cfa502 100644 --- a/parsing_c/parse_c.ml +++ b/parsing_c/parse_c.ml @@ -519,7 +519,28 @@ let rec lexer_function ~pass tr = fun lexbuf -> then begin incr Stat.nDefinePassing; pr2_once ("CPP-DEFINE: inside function, I treat it as comment"); - let v' = Parser_c.TCommentCpp (Token_c.CppDirective,TH.info_of_tok v) + let v' = + Parser_c.TCommentCpp (Token_c.CppDirective,TH.info_of_tok v) + in + tr.passed <- v'::tr.passed; + tr.rest <- Parsing_hacks.comment_until_defeol tr.rest; + tr.rest_clean <- Parsing_hacks.drop_until_defeol tr.rest_clean; + lexer_function ~pass tr lexbuf + end + else begin + tr.passed <- v::tr.passed; + tr.passed_clean <- v::tr.passed_clean; + v + end + + | Parser_c.TUndef (tok) -> + if not (LP.current_context () =*= LP.InTopLevel) && + (!Flag_parsing_c.cpp_directive_passing || (pass >= 2)) + then begin + incr Stat.nUndefPassing; + pr2_once ("CPP-UNDEF: inside function, I treat it as comment"); + let v' = + Parser_c.TCommentCpp (Token_c.CppDirective,TH.info_of_tok v) in tr.passed <- v'::tr.passed; tr.rest <- Parsing_hacks.comment_until_defeol tr.rest; @@ -544,7 +565,7 @@ let rec lexer_function ~pass tr = fun lexbuf -> end else begin let (v,new_tokens) = - Parsing_hacks.tokens_include (info, includes, filename, inifdef) in + Parsing_hacks.tokens_include(info, includes, filename, inifdef) in let new_tokens_clean = new_tokens +> List.filter TH.is_not_comment in diff --git a/parsing_c/parser_c.mly b/parsing_c/parser_c.mly index b604160..0d599db 100644 --- a/parsing_c/parser_c.mly +++ b/parsing_c/parser_c.mly @@ -503,8 +503,7 @@ let mk_string_wrap (s,info) = (s, [info]) /*(* other *)*/ /*(*---------------*)*/ - -%token TUndef +%token TUndef %token TCppDirectiveOther @@ -1673,11 +1672,12 @@ cpp_directive: *)*/ | TDefine TIdentDefine TOParDefine param_define_list TCPar define_val TDefEOL { Define - ((fst $2, [$1; snd $2;$7]), + ((fst $2, [$1; snd $2; $7]), (DefineFunc ($4, [$3;$5]), $6)) } - | TUndef { Undef (fst $1, [snd $1]) } + | TUndef TIdentDefine TDefEOL + { Define((fst $2, [$1; snd $2; $3]), (Undef,DefineEmpty)) } | TCppDirectiveOther { PragmaAndCo ([$1]) } diff --git a/parsing_c/parsing_hacks.ml b/parsing_c/parsing_hacks.ml index c2ba571..c1f32c6 100644 --- a/parsing_c/parsing_hacks.ml +++ b/parsing_c/parsing_hacks.ml @@ -419,6 +419,10 @@ let rec define_line_1 acc xs = let line = Ast_c.line_of_info ii in let acc = (TDefine ii) :: acc in define_line_2 acc line ii xs + | TUndef ii::xs -> + let line = Ast_c.line_of_info ii in + let acc = (TUndef ii) :: acc in + define_line_2 acc line ii xs | TCppEscapedNewline ii::xs -> pr2 ("SUSPICIOUS: a \\ character appears outside of a #define at"); pr2 (Ast_c.strloc_of_info ii); @@ -460,6 +464,17 @@ and define_line_2 acc line lastinfo xs = let rec define_ident acc xs = match xs with | [] -> List.rev acc + | TUndef ii::xs -> + let acc = TUndef ii :: acc in + (match xs with + TCommentSpace i1::TIdent (s,i2)::xs -> + let acc = (TCommentSpace i1) :: acc in + let acc = (TIdentDefine (s,i2)) :: acc in + define_ident acc xs + | _ -> + pr2 "WEIRD: weird #define body"; + define_ident acc xs + ) | TDefine ii::xs -> let acc = TDefine ii :: acc in (match xs with @@ -2027,7 +2042,7 @@ let lookahead2 ~pass next before = end else x - | (TUndef (id, ii) as x)::_, _ + | (TUndef (ii) as x)::_, _ -> if (pass >= 2) then begin diff --git a/parsing_c/parsing_stat.ml b/parsing_c/parsing_stat.ml index ab663c5..8723eea 100644 --- a/parsing_c/parsing_stat.ml +++ b/parsing_c/parsing_stat.ml @@ -214,6 +214,7 @@ let nIfdefExprPassing = ref 0 let nIfdefPassing = ref 0 let nIncludePassing = ref 0 +let nUndefPassing = ref 0 let nDefinePassing = ref 0 let nIfdefZero = ref 0 @@ -293,6 +294,7 @@ let assoc_stat_number = "nIncludePassing", nIncludePassing; "nDefinePassing", nDefinePassing; + "nUndefPassing", nUndefPassing; "nMacroExpand", nMacroExpand; "nMacroHint", nMacroHint; diff --git a/parsing_c/pretty_print_c.ml b/parsing_c/pretty_print_c.ml index 812e7a8..1aa988d 100644 --- a/parsing_c/pretty_print_c.ml +++ b/parsing_c/pretty_print_c.ml @@ -1069,7 +1069,7 @@ and pp_init (init, iinit) = | DefineTodo -> pr2 "DefineTodo" in (match defkind with - | DefineVar -> () + | DefineVar | Undef -> () | DefineFunc (params, ii) -> let (i1,i2) = tuple_of_list2 ii in pr_elem i1; @@ -1083,8 +1083,6 @@ and pp_init (init, iinit) = define_val defval; pr_elem ieol - | Undef (s, ii) -> - List.iter pr_elem ii | PragmaAndCo (ii) -> List.iter pr_elem ii in diff --git a/parsing_c/token_helpers.ml b/parsing_c/token_helpers.ml index bbb9dba..e333cb1 100644 --- a/parsing_c/token_helpers.ml +++ b/parsing_c/token_helpers.ml @@ -229,7 +229,7 @@ let info_of_tok = function | TDefine (ii) -> ii | TInclude (includes, filename, inifdef, i1) -> i1 - | TUndef (s, ii) -> ii + | TUndef (ii) -> ii | TCppDirectiveOther (ii) -> ii | TIncludeStart (i1, inifdef) -> i1 @@ -376,7 +376,7 @@ let visitor_info_of_tok f = function | TDefine (i1) -> TDefine(f i1) - | TUndef (s,i1) -> TUndef(s, f i1) + | TUndef (i1) -> TUndef(f i1) | TCppDirectiveOther (i1) -> TCppDirectiveOther(f i1) | TInclude (includes, filename, inifdef, i1) -> diff --git a/parsing_c/type_annoter_c.ml b/parsing_c/type_annoter_c.ml index 5e6ffba..3591aeb 100644 --- a/parsing_c/type_annoter_c.ml +++ b/parsing_c/type_annoter_c.ml @@ -647,7 +647,6 @@ let annotater_expr_visitor_subpart = (fun (k,bigf) expr -> | FunCall (e1, args) -> (match Ast_c.unwrap_expr e1 with | Ident (ident) -> - (* recurse *) args +> List.iter (fun (e,ii) -> (* could typecheck if arguments agree with prototype *) @@ -701,8 +700,11 @@ let annotater_expr_visitor_subpart = (fun (k,bigf) expr -> | DefineVar, _ -> pr2 ("Type_annoter: not a macro-func: " ^ s); Type_c.noTypeHere + | Undef, _ -> + pr2 ("Type_annoter: not a macro-func: " ^ s); + Type_c.noTypeHere | DefineFunc _, _ -> - (* normally the FunCall case should have catch it *) + (* normally the FunCall case should have caught it *) pr2 ("Type_annoter: not a macro-func-expr: " ^ s); Type_c.noTypeHere ) @@ -750,6 +752,9 @@ let annotater_expr_visitor_subpart = (fun (k,bigf) expr -> (* normally the FunCall case should have catch it *) pr2 ("Type_annoter: not a macro-var: " ^ s); Type_c.noTypeHere + | Undef, _ -> + pr2 ("Type_annoter: not a expression: " ^ s); + Type_c.noTypeHere ) | None -> (match lookup_opt_env lookup_enum s with @@ -1027,7 +1032,6 @@ let rec visit_toplevel ~just_add_in_env ~depth elem = add_binding (Macro (s, (defkind, defval) )) true; - | Undef _ | PragmaAndCo _ -> () ); @@ -1258,6 +1262,14 @@ let annotate_test_expressions prog = | Binary(e1,Logical(OrLog),e2) -> propagate_test e1; propagate_test e2 | Unary(e1,Not) -> propagate_test e1 | ParenExpr(e) -> propagate_test e + | FunCall(e,args) -> (* not very nice, but so painful otherwise *) + (match (unwrap e,args) with + ((Ident(i),_),[(Left a,_)]) -> + let nm = str_of_name i in + if List.mem nm ["likely";"unlikely"] + then propagate_test a + else () + | _ -> ()) | _ -> () in let bigf = { Visitor_c.default_visitor_c with diff --git a/parsing_c/unparse_c.ml b/parsing_c/unparse_c.ml index 5f3301f..3d9257a 100644 --- a/parsing_c/unparse_c.ml +++ b/parsing_c/unparse_c.ml @@ -1140,7 +1140,6 @@ let pp_program2 xs outfile = match ppmethod with | PPnormal -> (* now work on tokens *) - (* phase1: just get all the tokens, all the information *) assert(toks_e +> List.for_all (fun t -> TH.is_origin t or TH.is_expanded t @@ -1153,7 +1152,6 @@ let pp_program2 xs outfile = (* assert Origin;ExpandedTok; + Cocci + C (was AbstractLineTok) * and no tag information, just NOTHING. *) - let toks = if !Flag.sgrep_mode2 then diff --git a/parsing_c/unparse_cocci.ml b/parsing_c/unparse_cocci.ml index 4a75d68..5cc451c 100644 --- a/parsing_c/unparse_cocci.ml +++ b/parsing_c/unparse_cocci.ml @@ -794,6 +794,8 @@ and rule_elem arity re = | Ast.TopInit(init) -> initialiser false init | Ast.Include(inc,s) -> mcode print_string inc; print_text " "; mcode inc_file s + | Ast.Undef(def,id) -> + mcode print_string def; pr_space(); ident id | Ast.DefineHeader(def,id,params) -> mcode print_string def; pr_space(); ident id; print_define_parameters params diff --git a/parsing_c/visitor_c.ml b/parsing_c/visitor_c.ml index 05adfa4..4f36a5a 100644 --- a/parsing_c/visitor_c.ml +++ b/parsing_c/visitor_c.ml @@ -705,8 +705,6 @@ and vk_cpp_directive bigf directive = iif ii; vk_define_kind bigf defkind; vk_define_val bigf defval - | Undef (s, ii) -> - iif ii | PragmaAndCo (ii) -> iif ii in f (k, bigf) directive @@ -721,6 +719,7 @@ and vk_define_kind bigf defkind = vk_ii bigf iis; vk_ii bigf iicomma; ) + | Undef -> () and vk_define_val bigf defval = let f = bigf.kdefineval in @@ -816,7 +815,6 @@ and vk_node = fun bigf node -> pr2_once "DefineTodo"; () - | F.Include {i_include = (s, ii);} -> iif ii; | F.MacroTop (s, args, ii) -> @@ -1483,7 +1481,6 @@ and vk_cpp_directive_s = fun bigf top -> | Define ((s,ii), (defkind, defval)) -> Define ((s, iif ii), (vk_define_kind_s bigf defkind, vk_define_val_s bigf defval)) - | Undef (s, ii) -> Undef (s, iif ii) | PragmaAndCo (ii) -> PragmaAndCo (iif ii) in f (k, bigf) top @@ -1505,6 +1502,7 @@ and vk_define_kind_s = fun bigf defkind -> ), vk_ii_s bigf ii ) + | Undef -> Undef and vk_define_val_s = fun bigf x -> diff --git a/parsing_cocci/.depend b/parsing_cocci/.depend index ddd635a..7f80f29 100644 --- a/parsing_cocci/.depend +++ b/parsing_cocci/.depend @@ -1,135 +1,135 @@ -adjust_pragmas.cmi: ast0_cocci.cmi -arity.cmi: ast0_cocci.cmi -ast0_cocci.cmi: type_cocci.cmi ast_cocci.cmi -ast0toast.cmi: ast_cocci.cmi ast0_cocci.cmi -ast_cocci.cmi: type_cocci.cmi -check_meta.cmi: ast_cocci.cmi ast0_cocci.cmi -comm_assoc.cmi: ast0_cocci.cmi -compute_lines.cmi: ast0_cocci.cmi -context_neg.cmi: ../commons/common.cmi ast0_cocci.cmi -data.cmi: type_cocci.cmi ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi -disjdistr.cmi: ast_cocci.cmi -free_vars.cmi: ast_cocci.cmi -function_prototypes.cmi: ast_cocci.cmi ast0_cocci.cmi -get_constants.cmi: ast_cocci.cmi -get_constants2.cmi: ast_cocci.cmi -id_utils.cmi: get_constants2.cmi -index.cmi: ast0_cocci.cmi -insert_plus.cmi: ast0_cocci.cmi -iso_compile.cmi: iso_pattern.cmi -iso_pattern.cmi: visitor_ast0_types.cmo ast_cocci.cmi ast0_cocci.cmi -merge.cmi: ast_cocci.cmi ast0_cocci.cmi -parse_cocci.cmi: get_constants2.cmi ast_cocci.cmi -plus.cmi: ast_cocci.cmi -pretty_print_cocci.cmi: ast_cocci.cmi -safe_for_multi_decls.cmi: ast_cocci.cmi -simple_assignments.cmi: ast0_cocci.cmi -single_statement.cmi: ast0_cocci.cmi -test_exps.cmi: ast0_cocci.cmi -top_level.cmi: ast0_cocci.cmi -type_cocci.cmi: -type_infer.cmi: ast0_cocci.cmi -unify_ast.cmi: ast_cocci.cmi -unitary_ast0.cmi: ast0_cocci.cmi -unparse_ast0.cmi: ast0_cocci.cmi -visitor_ast.cmi: ast_cocci.cmi -visitor_ast0.cmi: visitor_ast0_types.cmo ast_cocci.cmi ast0_cocci.cmi +adjust_pragmas.cmi: ast0_cocci.cmi +arity.cmi: ast0_cocci.cmi +ast0_cocci.cmi: type_cocci.cmi ast_cocci.cmi +ast0toast.cmi: ast_cocci.cmi ast0_cocci.cmi +ast_cocci.cmi: type_cocci.cmi +check_meta.cmi: ast_cocci.cmi ast0_cocci.cmi +comm_assoc.cmi: ast0_cocci.cmi +compute_lines.cmi: ast0_cocci.cmi +context_neg.cmi: ../commons/common.cmi ast0_cocci.cmi +data.cmi: type_cocci.cmi ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi +disjdistr.cmi: ast_cocci.cmi +free_vars.cmi: ast_cocci.cmi +function_prototypes.cmi: ast_cocci.cmi ast0_cocci.cmi +get_constants.cmi: ast_cocci.cmi +get_constants2.cmi: ast_cocci.cmi +id_utils.cmi: get_constants2.cmi +index.cmi: ast0_cocci.cmi +insert_plus.cmi: ast0_cocci.cmi +iso_compile.cmi: iso_pattern.cmi +iso_pattern.cmi: visitor_ast0_types.cmo ast_cocci.cmi ast0_cocci.cmi +merge.cmi: ast_cocci.cmi ast0_cocci.cmi +parse_cocci.cmi: get_constants2.cmi ast_cocci.cmi +plus.cmi: ast_cocci.cmi +pretty_print_cocci.cmi: ast_cocci.cmi +safe_for_multi_decls.cmi: ast_cocci.cmi +simple_assignments.cmi: ast0_cocci.cmi +single_statement.cmi: ast0_cocci.cmi +test_exps.cmi: ast0_cocci.cmi +top_level.cmi: ast0_cocci.cmi +type_cocci.cmi: +type_infer.cmi: ast0_cocci.cmi +unify_ast.cmi: ast_cocci.cmi +unitary_ast0.cmi: ast0_cocci.cmi +unparse_ast0.cmi: ast0_cocci.cmi +visitor_ast.cmi: ast_cocci.cmi +visitor_ast0.cmi: visitor_ast0_types.cmo ast_cocci.cmi ast0_cocci.cmi adjacency.cmo: visitor_ast0_types.cmo visitor_ast0.cmi ast0_cocci.cmi \ - adjacency.cmi + adjacency.cmi adjacency.cmx: visitor_ast0_types.cmx visitor_ast0.cmx ast0_cocci.cmx \ - adjacency.cmi + adjacency.cmi adjust_pragmas.cmo: visitor_ast0_types.cmo visitor_ast0.cmi ast_cocci.cmi \ - ast0_cocci.cmi adjust_pragmas.cmi + ast0_cocci.cmi adjust_pragmas.cmi adjust_pragmas.cmx: visitor_ast0_types.cmx visitor_ast0.cmx ast_cocci.cmx \ - ast0_cocci.cmx adjust_pragmas.cmi -arity.cmo: ast_cocci.cmi ast0_cocci.cmi arity.cmi -arity.cmx: ast_cocci.cmx ast0_cocci.cmx arity.cmi + ast0_cocci.cmx adjust_pragmas.cmi +arity.cmo: ast_cocci.cmi ast0_cocci.cmi arity.cmi +arity.cmx: ast_cocci.cmx ast0_cocci.cmx arity.cmi ast0_cocci.cmo: type_cocci.cmi ../globals/flag.cmo ../commons/common.cmi \ - ast_cocci.cmi ast0_cocci.cmi + ast_cocci.cmi ast0_cocci.cmi ast0_cocci.cmx: type_cocci.cmx ../globals/flag.cmx ../commons/common.cmx \ - ast_cocci.cmx ast0_cocci.cmi + ast_cocci.cmx ast0_cocci.cmi ast0toast.cmo: visitor_ast0_types.cmo visitor_ast0.cmi type_cocci.cmi \ ../globals/flag.cmo ../commons/ocamlextra/dumper.cmi ast_cocci.cmi \ - ast0_cocci.cmi ast0toast.cmi + ast0_cocci.cmi ast0toast.cmi ast0toast.cmx: visitor_ast0_types.cmx visitor_ast0.cmx type_cocci.cmx \ ../globals/flag.cmx ../commons/ocamlextra/dumper.cmx ast_cocci.cmx \ - ast0_cocci.cmx ast0toast.cmi -ast_cocci.cmo: type_cocci.cmi ../commons/common.cmi ast_cocci.cmi -ast_cocci.cmx: type_cocci.cmx ../commons/common.cmx ast_cocci.cmi + ast0_cocci.cmx ast0toast.cmi +ast_cocci.cmo: type_cocci.cmi ../commons/common.cmi ast_cocci.cmi +ast_cocci.cmx: type_cocci.cmx ../commons/common.cmx ast_cocci.cmi check_meta.cmo: visitor_ast0_types.cmo visitor_ast0.cmi type_cocci.cmi \ - ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi check_meta.cmi + ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi check_meta.cmi check_meta.cmx: visitor_ast0_types.cmx visitor_ast0.cmx type_cocci.cmx \ - ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx check_meta.cmi + ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx check_meta.cmi comm_assoc.cmo: visitor_ast0_types.cmo visitor_ast0.cmi unparse_ast0.cmi \ - ../globals/flag.cmo ast_cocci.cmi ast0_cocci.cmi comm_assoc.cmi + ../globals/flag.cmo ast_cocci.cmi ast0_cocci.cmi comm_assoc.cmi comm_assoc.cmx: visitor_ast0_types.cmx visitor_ast0.cmx unparse_ast0.cmx \ - ../globals/flag.cmx ast_cocci.cmx ast0_cocci.cmx comm_assoc.cmi -compute_lines.cmo: ast_cocci.cmi ast0_cocci.cmi compute_lines.cmi -compute_lines.cmx: ast_cocci.cmx ast0_cocci.cmx compute_lines.cmi + ../globals/flag.cmx ast_cocci.cmx ast0_cocci.cmx comm_assoc.cmi +compute_lines.cmo: ast_cocci.cmi ast0_cocci.cmi compute_lines.cmi +compute_lines.cmx: ast_cocci.cmx ast0_cocci.cmx compute_lines.cmi context_neg.cmo: visitor_ast0_types.cmo visitor_ast0.cmi unparse_ast0.cmi \ index.cmi ../globals/flag.cmo compute_lines.cmi ../commons/common.cmi \ - ast_cocci.cmi ast0_cocci.cmi context_neg.cmi + ast_cocci.cmi ast0_cocci.cmi context_neg.cmi context_neg.cmx: visitor_ast0_types.cmx visitor_ast0.cmx unparse_ast0.cmx \ index.cmx ../globals/flag.cmx compute_lines.cmx ../commons/common.cmx \ - ast_cocci.cmx ast0_cocci.cmx context_neg.cmi + ast_cocci.cmx ast0_cocci.cmx context_neg.cmi data.cmo: type_cocci.cmi ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi \ - data.cmi + data.cmi data.cmx: type_cocci.cmx ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx \ - data.cmi + data.cmi disjdistr.cmo: visitor_ast.cmi ../globals/flag.cmo ../commons/common.cmi \ - ast_cocci.cmi disjdistr.cmi + ast_cocci.cmi disjdistr.cmi disjdistr.cmx: visitor_ast.cmx ../globals/flag.cmx ../commons/common.cmx \ - ast_cocci.cmx disjdistr.cmi -flag_parsing_cocci.cmo: -flag_parsing_cocci.cmx: + ast_cocci.cmx disjdistr.cmi +flag_parsing_cocci.cmo: +flag_parsing_cocci.cmx: free_vars.cmo: visitor_ast.cmi type_cocci.cmi ../commons/common.cmi \ - ast_cocci.cmi free_vars.cmi + ast_cocci.cmi free_vars.cmi free_vars.cmx: visitor_ast.cmx type_cocci.cmx ../commons/common.cmx \ - ast_cocci.cmx free_vars.cmi + ast_cocci.cmx free_vars.cmi function_prototypes.cmo: visitor_ast0_types.cmo visitor_ast0.cmi \ iso_pattern.cmi insert_plus.cmi context_neg.cmi compute_lines.cmi \ - ast_cocci.cmi ast0toast.cmi ast0_cocci.cmi function_prototypes.cmi + ast_cocci.cmi ast0toast.cmi ast0_cocci.cmi function_prototypes.cmi function_prototypes.cmx: visitor_ast0_types.cmx visitor_ast0.cmx \ iso_pattern.cmx insert_plus.cmx context_neg.cmx compute_lines.cmx \ - ast_cocci.cmx ast0toast.cmx ast0_cocci.cmx function_prototypes.cmi + ast_cocci.cmx ast0toast.cmx ast0_cocci.cmx function_prototypes.cmi get_constants.cmo: visitor_ast.cmi type_cocci.cmi ../globals/flag.cmo \ - ../commons/common.cmi ast_cocci.cmi get_constants.cmi + ../commons/common.cmi ast_cocci.cmi get_constants.cmi get_constants.cmx: visitor_ast.cmx type_cocci.cmx ../globals/flag.cmx \ - ../commons/common.cmx ast_cocci.cmx get_constants.cmi + ../commons/common.cmx ast_cocci.cmx get_constants.cmi get_constants2.cmo: visitor_ast.cmi type_cocci.cmi ../globals/flag.cmo \ - ../commons/common.cmi ast_cocci.cmi get_constants2.cmi + ../commons/common.cmi ast_cocci.cmi get_constants2.cmi get_constants2.cmx: visitor_ast.cmx type_cocci.cmx ../globals/flag.cmx \ - ../commons/common.cmx ast_cocci.cmx get_constants2.cmi -id_utils.cmo: get_constants2.cmi ../commons/common.cmi id_utils.cmi -id_utils.cmx: get_constants2.cmx ../commons/common.cmx id_utils.cmi -index.cmo: ast_cocci.cmi ast0_cocci.cmi index.cmi -index.cmx: ast_cocci.cmx ast0_cocci.cmx index.cmi + ../commons/common.cmx ast_cocci.cmx get_constants2.cmi +id_utils.cmo: get_constants2.cmi ../commons/common.cmi id_utils.cmi +id_utils.cmx: get_constants2.cmx ../commons/common.cmx id_utils.cmi +index.cmo: ast_cocci.cmi ast0_cocci.cmi index.cmi +index.cmx: ast_cocci.cmx ast0_cocci.cmx index.cmi insert_plus.cmo: visitor_ast0_types.cmo visitor_ast0.cmi \ pretty_print_cocci.cmi context_neg.cmi ast_cocci.cmi ast0toast.cmi \ - ast0_cocci.cmi insert_plus.cmi + ast0_cocci.cmi insert_plus.cmi insert_plus.cmx: visitor_ast0_types.cmx visitor_ast0.cmx \ pretty_print_cocci.cmx context_neg.cmx ast_cocci.cmx ast0toast.cmx \ - ast0_cocci.cmx insert_plus.cmi + ast0_cocci.cmx insert_plus.cmi iso_compile.cmo: visitor_ast0_types.cmo visitor_ast0.cmi \ - ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi iso_compile.cmi + ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi iso_compile.cmi iso_compile.cmx: visitor_ast0_types.cmx visitor_ast0.cmx \ - ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx iso_compile.cmi + ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx iso_compile.cmi iso_pattern.cmo: visitor_ast0_types.cmo visitor_ast0.cmi unparse_ast0.cmi \ type_cocci.cmi flag_parsing_cocci.cmo ../globals/flag.cmo \ ../commons/ocamlextra/dumper.cmi compute_lines.cmi ../commons/common.cmi \ - ast_cocci.cmi ast0_cocci.cmi iso_pattern.cmi + ast_cocci.cmi ast0_cocci.cmi iso_pattern.cmi iso_pattern.cmx: visitor_ast0_types.cmx visitor_ast0.cmx unparse_ast0.cmx \ type_cocci.cmx flag_parsing_cocci.cmx ../globals/flag.cmx \ ../commons/ocamlextra/dumper.cmx compute_lines.cmx ../commons/common.cmx \ - ast_cocci.cmx ast0_cocci.cmx iso_pattern.cmi -main.cmo: parse_cocci.cmi -main.cmx: parse_cocci.cmx -merge.cmo: visitor_ast0.cmi ast_cocci.cmi ast0_cocci.cmi merge.cmi -merge.cmx: visitor_ast0.cmx ast_cocci.cmx ast0_cocci.cmx merge.cmi + ast_cocci.cmx ast0_cocci.cmx iso_pattern.cmi +main.cmo: parse_cocci.cmi +main.cmx: parse_cocci.cmx +merge.cmo: visitor_ast0.cmi ast_cocci.cmi ast0_cocci.cmi merge.cmi +merge.cmx: visitor_ast0.cmx ast_cocci.cmx ast0_cocci.cmx merge.cmi parse_aux.cmo: type_cocci.cmi semantic_cocci.cmo ../globals/flag.cmo data.cmi \ - ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi + ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi parse_aux.cmx: type_cocci.cmx semantic_cocci.cmx ../globals/flag.cmx data.cmx \ - ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx + ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx parse_cocci.cmo: visitor_ast0_types.cmo visitor_ast0.cmi unitary_ast0.cmi \ type_infer.cmi test_exps.cmi single_statement.cmi simple_assignments.cmi \ semantic_cocci.cmo safe_for_multi_decls.cmi pretty_print_cocci.cmi \ @@ -138,7 +138,7 @@ parse_cocci.cmo: visitor_ast0_types.cmo visitor_ast0.cmi unitary_ast0.cmi \ flag_parsing_cocci.cmo ../globals/flag.cmo disjdistr.cmi data.cmi \ context_neg.cmi compute_lines.cmi ../commons/common.cmi comm_assoc.cmi \ check_meta.cmi ast_cocci.cmi ast0toast.cmi ast0_cocci.cmi arity.cmi \ - adjust_pragmas.cmi adjacency.cmi parse_cocci.cmi + adjust_pragmas.cmi adjacency.cmi parse_cocci.cmi parse_cocci.cmx: visitor_ast0_types.cmx visitor_ast0.cmx unitary_ast0.cmx \ type_infer.cmx test_exps.cmx single_statement.cmx simple_assignments.cmx \ semantic_cocci.cmx safe_for_multi_decls.cmx pretty_print_cocci.cmx \ @@ -147,58 +147,58 @@ parse_cocci.cmx: visitor_ast0_types.cmx visitor_ast0.cmx unitary_ast0.cmx \ flag_parsing_cocci.cmx ../globals/flag.cmx disjdistr.cmx data.cmx \ context_neg.cmx compute_lines.cmx ../commons/common.cmx comm_assoc.cmx \ check_meta.cmx ast_cocci.cmx ast0toast.cmx ast0_cocci.cmx arity.cmx \ - adjust_pragmas.cmx adjacency.cmx parse_cocci.cmi -plus.cmo: visitor_ast.cmi ast_cocci.cmi plus.cmi -plus.cmx: visitor_ast.cmx ast_cocci.cmx plus.cmi + adjust_pragmas.cmx adjacency.cmx parse_cocci.cmi +plus.cmo: visitor_ast.cmi ast_cocci.cmi plus.cmi +plus.cmx: visitor_ast.cmx ast_cocci.cmx plus.cmi pretty_print_cocci.cmo: type_cocci.cmi ../globals/flag.cmo \ - ../commons/common.cmi ast_cocci.cmi pretty_print_cocci.cmi + ../commons/common.cmi ast_cocci.cmi pretty_print_cocci.cmi pretty_print_cocci.cmx: type_cocci.cmx ../globals/flag.cmx \ - ../commons/common.cmx ast_cocci.cmx pretty_print_cocci.cmi + ../commons/common.cmx ast_cocci.cmx pretty_print_cocci.cmi safe_for_multi_decls.cmo: visitor_ast.cmi ast_cocci.cmi \ - safe_for_multi_decls.cmi + safe_for_multi_decls.cmi safe_for_multi_decls.cmx: visitor_ast.cmx ast_cocci.cmx \ - safe_for_multi_decls.cmi -semantic_cocci.cmo: -semantic_cocci.cmx: + safe_for_multi_decls.cmi +semantic_cocci.cmo: +semantic_cocci.cmx: simple_assignments.cmo: visitor_ast0_types.cmo visitor_ast0.cmi \ ../globals/flag.cmo ../commons/common.cmi ast_cocci.cmi ast0_cocci.cmi \ - simple_assignments.cmi + simple_assignments.cmi simple_assignments.cmx: visitor_ast0_types.cmx visitor_ast0.cmx \ ../globals/flag.cmx ../commons/common.cmx ast_cocci.cmx ast0_cocci.cmx \ - simple_assignments.cmi + simple_assignments.cmi single_statement.cmo: visitor_ast0_types.cmo visitor_ast0.cmi iso_pattern.cmi \ flag_parsing_cocci.cmo compute_lines.cmi ast_cocci.cmi ast0_cocci.cmi \ - single_statement.cmi + single_statement.cmi single_statement.cmx: visitor_ast0_types.cmx visitor_ast0.cmx iso_pattern.cmx \ flag_parsing_cocci.cmx compute_lines.cmx ast_cocci.cmx ast0_cocci.cmx \ - single_statement.cmi + single_statement.cmi test_exps.cmo: visitor_ast0_types.cmo visitor_ast0.cmi ast_cocci.cmi \ - ast0_cocci.cmi test_exps.cmi + ast0_cocci.cmi test_exps.cmi test_exps.cmx: visitor_ast0_types.cmx visitor_ast0.cmx ast_cocci.cmx \ - ast0_cocci.cmx test_exps.cmi -top_level.cmo: ast0_cocci.cmi top_level.cmi -top_level.cmx: ast0_cocci.cmx top_level.cmi -type_cocci.cmo: type_cocci.cmi -type_cocci.cmx: type_cocci.cmi + ast0_cocci.cmx test_exps.cmi +top_level.cmo: ast0_cocci.cmi top_level.cmi +top_level.cmx: ast0_cocci.cmx top_level.cmi +type_cocci.cmo: type_cocci.cmi +type_cocci.cmx: type_cocci.cmi type_infer.cmo: visitor_ast0_types.cmo visitor_ast0.cmi type_cocci.cmi \ - ast_cocci.cmi ast0_cocci.cmi type_infer.cmi + ast_cocci.cmi ast0_cocci.cmi type_infer.cmi type_infer.cmx: visitor_ast0_types.cmx visitor_ast0.cmx type_cocci.cmx \ - ast_cocci.cmx ast0_cocci.cmx type_infer.cmi -unify_ast.cmo: visitor_ast.cmi ast_cocci.cmi unify_ast.cmi -unify_ast.cmx: visitor_ast.cmx ast_cocci.cmx unify_ast.cmi + ast_cocci.cmx ast0_cocci.cmx type_infer.cmi +unify_ast.cmo: visitor_ast.cmi ast_cocci.cmi unify_ast.cmi +unify_ast.cmx: visitor_ast.cmx ast_cocci.cmx unify_ast.cmi unitary_ast0.cmo: visitor_ast0_types.cmo visitor_ast0.cmi ../globals/flag.cmo \ - ast_cocci.cmi ast0_cocci.cmi unitary_ast0.cmi + ast_cocci.cmi ast0_cocci.cmi unitary_ast0.cmi unitary_ast0.cmx: visitor_ast0_types.cmx visitor_ast0.cmx ../globals/flag.cmx \ - ast_cocci.cmx ast0_cocci.cmx unitary_ast0.cmi + ast_cocci.cmx ast0_cocci.cmx unitary_ast0.cmi unparse_ast0.cmo: type_cocci.cmi pretty_print_cocci.cmi ../commons/common.cmi \ - ast_cocci.cmi ast0_cocci.cmi unparse_ast0.cmi + ast_cocci.cmi ast0_cocci.cmi unparse_ast0.cmi unparse_ast0.cmx: type_cocci.cmx pretty_print_cocci.cmx ../commons/common.cmx \ - ast_cocci.cmx ast0_cocci.cmx unparse_ast0.cmi -visitor_ast.cmo: ast_cocci.cmi ast0_cocci.cmi visitor_ast.cmi -visitor_ast.cmx: ast_cocci.cmx ast0_cocci.cmx visitor_ast.cmi + ast_cocci.cmx ast0_cocci.cmx unparse_ast0.cmi +visitor_ast.cmo: ast_cocci.cmi ast0_cocci.cmi visitor_ast.cmi +visitor_ast.cmx: ast_cocci.cmx ast0_cocci.cmx visitor_ast.cmi visitor_ast0.cmo: visitor_ast0_types.cmo ast_cocci.cmi ast0_cocci.cmi \ - visitor_ast0.cmi + visitor_ast0.cmi visitor_ast0.cmx: visitor_ast0_types.cmx ast_cocci.cmx ast0_cocci.cmx \ - visitor_ast0.cmi -visitor_ast0_types.cmo: ast_cocci.cmi ast0_cocci.cmi -visitor_ast0_types.cmx: ast_cocci.cmx ast0_cocci.cmx + visitor_ast0.cmi +visitor_ast0_types.cmo: ast_cocci.cmi ast0_cocci.cmi +visitor_ast0_types.cmx: ast_cocci.cmx ast0_cocci.cmx diff --git a/parsing_cocci/adjust_pragmas.ml b/parsing_cocci/adjust_pragmas.ml index 93b1fa8..43e09bd 100644 --- a/parsing_cocci/adjust_pragmas.ml +++ b/parsing_cocci/adjust_pragmas.ml @@ -149,6 +149,10 @@ let rec right_statement s = | Ast0.Include(inc,name) -> call_right right_mcode name s (function name -> Ast0.Include(inc,name)) + | Ast0.Undef(def,id) -> + (* nothing available for ident, and not sure code can appear + here anyway *) + None | Ast0.Define(def,id,params,body) -> call_right right_statement_dots body s (function body -> Ast0.Define(def,id,params,body)) diff --git a/parsing_cocci/arity.ml b/parsing_cocci/arity.ml index ed17892..88e4808 100644 --- a/parsing_cocci/arity.ml +++ b/parsing_cocci/arity.ml @@ -963,6 +963,11 @@ and statement tgt stm = let inc = mcode inc in let s = mcode s in make_rule_elem stm tgt arity (Ast0.Include(inc,s)) + | Ast0.Undef(def,id) -> + let arity = all_same true tgt (mcode2line def) [mcode2arity def] in + let def = mcode def in + let id = ident false arity id in + make_rule_elem stm tgt arity (Ast0.Undef(def,id)) | Ast0.Define(def,id,params,body) -> let arity = all_same true tgt (mcode2line def) [mcode2arity def] in let def = mcode def in diff --git a/parsing_cocci/ast0_cocci.ml b/parsing_cocci/ast0_cocci.ml index 553fc0366..f38cb00 100644 --- a/parsing_cocci/ast0_cocci.ml +++ b/parsing_cocci/ast0_cocci.ml @@ -358,6 +358,7 @@ and base_statement = string mcode (* { *) * statement dots * string mcode (* } *) | Include of string mcode (* #include *) * Ast.inc_file mcode (* file *) + | Undef of string mcode (* #define *) * ident (* name *) | Define of string mcode (* #define *) * ident (* name *) * define_parameters (*params*) * statement dots | OptStm of statement diff --git a/parsing_cocci/ast0_cocci.mli b/parsing_cocci/ast0_cocci.mli index 5d54968..ce7c7b9 100644 --- a/parsing_cocci/ast0_cocci.mli +++ b/parsing_cocci/ast0_cocci.mli @@ -344,6 +344,7 @@ and base_statement = string mcode (* { *) * statement dots * string mcode (* } *) | Include of string mcode (* #include *) * Ast_cocci.inc_file mcode(* file *) + | Undef of string mcode (* #define *) * ident (* name *) | Define of string mcode (* #define *) * ident (* name *) * define_parameters (*params*) * statement dots | OptStm of statement diff --git a/parsing_cocci/ast0toast.ml b/parsing_cocci/ast0toast.ml index f1f9d2d..f0c1ece 100644 --- a/parsing_cocci/ast0toast.ml +++ b/parsing_cocci/ast0toast.ml @@ -845,6 +845,8 @@ and statement s = tokenwrap rbrace s (Ast.SeqEnd(rbrace))) | Ast0.Include(inc,str) -> Ast.Atomic(rewrap_rule_elem s (Ast.Include(mcode inc,mcode str))) + | Ast0.Undef(def,id) -> + Ast.Atomic(rewrap_rule_elem s (Ast.Undef(mcode def,ident id))) | Ast0.Define(def,id,params,body) -> Ast.Define (rewrap_rule_elem s diff --git a/parsing_cocci/ast_cocci.ml b/parsing_cocci/ast_cocci.ml index 272b1a2..5d3f26d 100644 --- a/parsing_cocci/ast_cocci.ml +++ b/parsing_cocci/ast_cocci.ml @@ -466,6 +466,7 @@ and base_rule_elem = | Ty of fullType (* only at SP top level, matches a subterm *) | TopInit of initialiser (* only at top level *) | Include of string mcode (*#include*) * inc_file mcode (*file *) + | Undef of string mcode (* #define *) * ident (* name *) | DefineHeader of string mcode (* #define *) * ident (* name *) * define_parameters (*params*) | Case of string mcode (* case *) * expression * string mcode (*:*) diff --git a/parsing_cocci/ast_cocci.mli b/parsing_cocci/ast_cocci.mli index 4794739..55021b4 100644 --- a/parsing_cocci/ast_cocci.mli +++ b/parsing_cocci/ast_cocci.mli @@ -443,6 +443,7 @@ and base_rule_elem = | Ty of fullType (* only at top level *) | TopInit of initialiser (* only at top level *) | Include of string mcode (*#include*) * inc_file mcode (*file *) + | Undef of string mcode (* #define *) * ident (* name *) | DefineHeader of string mcode (* #define *) * ident (* name *) * define_parameters (*params*) | Case of string mcode (* case *) * expression * string mcode (*:*) diff --git a/parsing_cocci/check_meta.ml b/parsing_cocci/check_meta.ml index 6fbf9c9..8ba53b6 100644 --- a/parsing_cocci/check_meta.ml +++ b/parsing_cocci/check_meta.ml @@ -85,34 +85,34 @@ let is_ifdef name = let ident context old_metas table minus i = match Ast0.unwrap i with - Ast0.Id((name,_,info,_,_,_) : string Ast0.mcode) -> - let rl = info.Ast0.pos_info.Ast0.line_start in - let is_plus i = - match Ast0.get_mcodekind i with Ast0.PLUS _ -> true | _ -> false in - let err = - if List.exists (function x -> x = name) old_metas + Ast0.Id((name,_,info,_,_,_) : string Ast0.mcode) -> + let rl = info.Ast0.pos_info.Ast0.line_start in + let is_plus i = + match Ast0.get_mcodekind i with Ast0.PLUS _ -> true | _ -> false in + let err = + if List.exists (function x -> x = name) old_metas && (minus || is_plus i) + then + begin + warning + (Printf.sprintf + "line %d: %s, previously declared as a metavariable, is used as an identifier" rl name); + true + end + else false in + (match context with + ID -> + if not (is_ifdef name) && minus && not err(* warn only once per id *) then - begin - warning - (Printf.sprintf - "line %d: %s, previously declared as a metavariable, is used as an identifier" rl name); - true - end - else false in - (match context with - ID -> - if not (is_ifdef name) && minus && not err(* warn only once per id *) - then - warning - (Printf.sprintf "line %d: should %s be a metavariable?" rl name) - | _ -> ()) - | Ast0.MetaId(name,_,_) -> check_table table minus name - | Ast0.MetaFunc(name,_,_) -> check_table table minus name - | Ast0.MetaLocalFunc(name,_,_) -> check_table table minus name - | Ast0.OptIdent(_) | Ast0.UniqueIdent(_) -> - failwith "unexpected code" - + warning + (Printf.sprintf "line %d: should %s be a metavariable?" rl name) + | _ -> ()) + | Ast0.MetaId(name,_,_) -> check_table table minus name + | Ast0.MetaFunc(name,_,_) -> check_table table minus name + | Ast0.MetaLocalFunc(name,_,_) -> check_table table minus name + | Ast0.OptIdent(_) | Ast0.UniqueIdent(_) -> + failwith "unexpected code" + (* --------------------------------------------------------------------- *) (* Expression *) @@ -375,6 +375,8 @@ and statement old_metas table minus s = parameter_list old_metas table minus params; dots (statement old_metas table minus) body | Ast0.Include(inc,s) -> () (* no metavariables possible *) + | Ast0.Undef(def,id) -> + ident GLOBAL old_metas table minus id | Ast0.Define(def,id,params,body) -> ident GLOBAL old_metas table minus id; define_parameters old_metas table minus params; diff --git a/parsing_cocci/compute_lines.ml b/parsing_cocci/compute_lines.ml index d1187e1..13b778f 100644 --- a/parsing_cocci/compute_lines.ml +++ b/parsing_cocci/compute_lines.ml @@ -839,6 +839,9 @@ let rec statement s = | Ast0.Include(inc,stm) -> mkres s (Ast0.Include(inc,stm)) (promote_mcode inc) (promote_mcode stm) + | Ast0.Undef(def,id) -> + let (id,right) = full_ident id in + mkres s (Ast0.Undef(def,id)) (promote_mcode def) id | Ast0.Define(def,id,params,body) -> let (id,right) = full_ident id in let (params,prev) = define_parameters params right in diff --git a/parsing_cocci/context_neg.ml b/parsing_cocci/context_neg.ml index 823af30..c7ca7f0 100644 --- a/parsing_cocci/context_neg.ml +++ b/parsing_cocci/context_neg.ml @@ -694,6 +694,8 @@ let rec equal_statement s1 s2 = | (Ast0.Stars(d1,_),Ast0.Stars(d2,_)) -> equal_mcode d1 d2 | (Ast0.Include(inc1,name1),Ast0.Include(inc2,name2)) -> equal_mcode inc1 inc2 && equal_mcode name1 name2 + | (Ast0.Undef(def1,_),Ast0.Undef(def2,_)) -> + equal_mcode def1 def2 | (Ast0.Define(def1,_,_,_),Ast0.Define(def2,_,_,_)) -> equal_mcode def1 def2 | (Ast0.OptStm(_),Ast0.OptStm(_)) -> true @@ -947,6 +949,7 @@ let rec is_toplevel s = Ast0.FunCall(_,_,_,_) -> true | _ -> false) | Ast0.Include(_,_) -> true + | Ast0.Undef(_,_) -> true | Ast0.Define(_,_,_,_) -> true | _ -> false diff --git a/parsing_cocci/disjdistr.ml b/parsing_cocci/disjdistr.ml index 21d45da..bb49e90 100644 --- a/parsing_cocci/disjdistr.ml +++ b/parsing_cocci/disjdistr.ml @@ -346,6 +346,7 @@ let rec disj_rule_elem r k re = orify_rule_elem_ini re init (function init -> Ast.rewrap init (Ast.TopInit(init))) | Ast.Include(inc,s) -> re + | Ast.Undef(def,id) -> re | Ast.DefineHeader(def,id,params) -> re | Ast.Default(def,colon) -> re | Ast.Case(case,exp,colon) -> diff --git a/parsing_cocci/get_constants2.ml b/parsing_cocci/get_constants2.ml index a98463d..b73706c 100644 --- a/parsing_cocci/get_constants2.ml +++ b/parsing_cocci/get_constants2.ml @@ -657,7 +657,7 @@ let get_constants rules neg_pos_vars = | Flag.Google _ -> let res = run rules neg_pos_vars in (interpret_grep true res,interpret_google true res,None) - | Flag.IdUtils _ -> + | Flag.IdUtils -> let res = run rules neg_pos_vars in (interpret_grep true res,None,Some res) diff --git a/parsing_cocci/index.ml b/parsing_cocci/index.ml index b864abe..961c67c 100644 --- a/parsing_cocci/index.ml +++ b/parsing_cocci/index.ml @@ -23,7 +23,7 @@ (* create an index for each constructor *) -(* current max is 150 *) +(* current max is 151 *) (* doesn't really work - requires that identical terms with no token subterms (eg dots) not appear on the same line *) @@ -205,6 +205,7 @@ let statement s = | Ast0.Circles(d,whencode) -> [85] | Ast0.Stars(d,whencode) -> [86] | Ast0.Include(inc,name) -> [118] + | Ast0.Undef(def,id) -> [151] | Ast0.Define(def,id,params,body) -> [119] | Ast0.OptStm(re) -> [87] | Ast0.UniqueStm(re) -> [88] diff --git a/parsing_cocci/insert_plus.ml b/parsing_cocci/insert_plus.ml index 2bf3cdf..e19ab82 100644 --- a/parsing_cocci/insert_plus.ml +++ b/parsing_cocci/insert_plus.ml @@ -402,6 +402,7 @@ let verify l = l let process_minus minus = + Hashtbl.clear root_token_table; create_root_token_table minus; List.concat (List.map diff --git a/parsing_cocci/lexer_cocci.mll b/parsing_cocci/lexer_cocci.mll index b76ec4b..dcb2c3f 100644 --- a/parsing_cocci/lexer_cocci.mll +++ b/parsing_cocci/lexer_cocci.mll @@ -675,6 +675,17 @@ rule token = parse | "^" { start_line true; TXor(get_current_line_type lexbuf) } | "##" { start_line true; TCppConcatOp } + | (( ("#" [' ' '\t']* "undef" [' ' '\t']+)) as def) + ( (letter (letter |digit)*) as ident) + { start_line true; + let (arity,line,lline,offset,col,strbef,straft,pos) as lt = + get_current_line_type lexbuf in + let off = String.length def in + (* -1 in the code below because the ident is not at the line start *) + TUndef + (lt, + check_var ident + (arity,line,lline,offset+off,col+off,[],[],Ast0.NoMetaPos)) } | (( ("#" [' ' '\t']* "define" [' ' '\t']+)) as def) ( (letter (letter |digit)*) as ident) { start_line true; diff --git a/parsing_cocci/parse_cocci.ml b/parsing_cocci/parse_cocci.ml index ecced50..aa88189 100644 --- a/parsing_cocci/parse_cocci.ml +++ b/parsing_cocci/parse_cocci.ml @@ -126,6 +126,7 @@ let token2c (tok,_) = | PC.TPragma(Ast.Indent s,_) -> s | PC.TIncludeL(s,clt) -> (pr "#include \"%s\"" s)^(line_type2c clt) | PC.TIncludeNL(s,clt) -> (pr "#include <%s>" s)^(line_type2c clt) + | PC.TUndef(clt,_) -> "#undef"^(line_type2c clt) | PC.TDefine(clt,_) -> "#define"^(line_type2c clt) | PC.TDefineParam(clt,_,_,_) -> "#define_param"^(line_type2c clt) | PC.TMinusFile(s,clt) -> (pr "--- %s" s)^(line_type2c clt) @@ -303,7 +304,8 @@ let plus_attachable only_plus (tok,_) = | PC.Tauto(clt) | PC.Tregister(clt) | PC.Textern(clt) | PC.Tconst(clt) | PC.Tvolatile(clt) - | PC.TIncludeL(_,clt) | PC.TIncludeNL(_,clt) | PC.TDefine(clt,_) + | PC.TIncludeL(_,clt) | PC.TIncludeNL(_,clt) | PC.TUndef(clt,_) + | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) | PC.TMinusFile(_,clt) | PC.TPlusFile(_,clt) | PC.TInc(clt) | PC.TDec(clt) @@ -373,7 +375,8 @@ let get_clt (tok,_) = | PC.Tinline(clt) | PC.Tattr(_,clt) | PC.Tauto(clt) | PC.Tregister(clt) | PC.Textern(clt) | PC.Tconst(clt) | PC.Tvolatile(clt) - | PC.TIncludeL(_,clt) | PC.TIncludeNL(_,clt) | PC.TDefine(clt,_) + | PC.TIncludeL(_,clt) | PC.TIncludeNL(_,clt) | PC.TUndef(clt,_) + | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) | PC.TMinusFile(_,clt) | PC.TPlusFile(_,clt) | PC.TInc(clt) | PC.TDec(clt) @@ -456,6 +459,7 @@ let update_clt (tok,x) clt = | PC.TIncludeL(s,_) -> (PC.TIncludeL(s,clt),x) | PC.TIncludeNL(s,_) -> (PC.TIncludeNL(s,clt),x) + | PC.TUndef(_,a) -> (PC.TUndef(clt,a),x) | PC.TDefine(_,a) -> (PC.TDefine(clt,a),x) | PC.TDefineParam(_,a,b,c) -> (PC.TDefineParam(clt,a,b,c),x) | PC.TMinusFile(s,_) -> (PC.TMinusFile(s,clt),x) @@ -651,7 +655,8 @@ let split_token ((tok,_) as t) = | PC.TPlusFile(s,clt) | PC.TMinusFile(s,clt) | PC.TIncludeL(s,clt) | PC.TIncludeNL(s,clt) -> split t clt - | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) -> split t clt + | PC.TUndef(clt,_) | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) -> + split t clt | PC.TIf(clt) | PC.TElse(clt) | PC.TWhile(clt) | PC.TFor(clt) | PC.TDo(clt) | PC.TSwitch(clt) | PC.TCase(clt) | PC.TDefault(clt) @@ -935,7 +940,7 @@ let token2line (tok,_) = | PC.TPtrOp(clt) - | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) + | PC.TUndef(clt,_) | PC.TDefine(clt,_) | PC.TDefineParam(clt,_,_,_) | PC.TIncludeL(_,clt) | PC.TIncludeNL(_,clt) | PC.TEq(clt) | PC.TAssign(_,clt) | PC.TDot(clt) | PC.TComma(clt) @@ -948,6 +953,7 @@ let rec insert_line_end = function [] -> [] | (((PC.TWhen(clt),q) as x)::xs) -> x::(find_line_end true (token2line x) clt q xs) + | (((PC.TUndef(clt,_),q) as x)::xs) | (((PC.TDefine(clt,_),q) as x)::xs) | (((PC.TDefineParam(clt,_,_,_),q) as x)::xs) -> x::(find_line_end false (token2line x) clt q xs) @@ -1933,6 +1939,7 @@ let process file isofile verbose = | Some mv_fp -> [(extra_meta @ metavars, minus_ast); mv_fp]) (* Ast0.CocciRule ((minus, metavarsm, (iso, dropiso, dependencies, rule_name, exists)), (plus, metavars))*) rules in + let parsed = List.concat parsed in let parsed = Safe_for_multi_decls.safe_for_multi_decls parsed in let disjd = Disjdistr.disj parsed in diff --git a/parsing_cocci/parser_cocci_menhir.ml b/parsing_cocci/parser_cocci_menhir.ml index 09a1fe0..637d759 100644 --- a/parsing_cocci/parser_cocci_menhir.ml +++ b/parsing_cocci/parser_cocci_menhir.ml @@ -157,312 +157,317 @@ type token = | TVirtual | TUsing | TUnderscore + | TUndef of ( +# 85 "parser_cocci_menhir.mly" + (Data.clt * token) +# 164 "parser_cocci_menhir.ml" +) | TTypedef | TTypeId of ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 165 "parser_cocci_menhir.ml" +# 170 "parser_cocci_menhir.ml" ) | TType | TTildeExclEq of ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 171 "parser_cocci_menhir.ml" +# 176 "parser_cocci_menhir.ml" ) | TTildeEq of ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 176 "parser_cocci_menhir.ml" +# 181 "parser_cocci_menhir.ml" ) | TTilde of ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 181 "parser_cocci_menhir.ml" +# 186 "parser_cocci_menhir.ml" ) | TSwitch of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 186 "parser_cocci_menhir.ml" +# 191 "parser_cocci_menhir.ml" ) | TSub of ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 191 "parser_cocci_menhir.ml" +# 196 "parser_cocci_menhir.ml" ) | TString of ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 196 "parser_cocci_menhir.ml" +# 201 "parser_cocci_menhir.ml" ) | TStrict of ( # 78 "parser_cocci_menhir.mly" (Data.clt) -# 201 "parser_cocci_menhir.ml" +# 206 "parser_cocci_menhir.ml" ) | TStatement | TSizeof of ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 207 "parser_cocci_menhir.ml" +# 212 "parser_cocci_menhir.ml" ) | TShROp of ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 212 "parser_cocci_menhir.ml" +# 217 "parser_cocci_menhir.ml" ) | TShLOp of ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 217 "parser_cocci_menhir.ml" +# 222 "parser_cocci_menhir.ml" ) | TScriptData of ( # 75 "parser_cocci_menhir.mly" (string) -# 222 "parser_cocci_menhir.ml" +# 227 "parser_cocci_menhir.ml" ) | TScript | TRuleName of ( # 49 "parser_cocci_menhir.mly" (string) -# 228 "parser_cocci_menhir.ml" +# 233 "parser_cocci_menhir.ml" ) | TRightIso | TReturn of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 234 "parser_cocci_menhir.ml" +# 239 "parser_cocci_menhir.ml" ) | TPure | TPtrOp of ( # 108 "parser_cocci_menhir.mly" (Data.clt) -# 240 "parser_cocci_menhir.ml" +# 245 "parser_cocci_menhir.ml" ) | TPtVirg of ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 245 "parser_cocci_menhir.ml" +# 250 "parser_cocci_menhir.ml" ) | TPragma of ( # 63 "parser_cocci_menhir.mly" (Ast_cocci.added_string * Data.clt) -# 250 "parser_cocci_menhir.ml" +# 255 "parser_cocci_menhir.ml" ) | TPosition | TPosAny | TPlusFile of ( # 87 "parser_cocci_menhir.mly" (string * Data.clt) -# 257 "parser_cocci_menhir.ml" +# 262 "parser_cocci_menhir.ml" ) | TPlus0 | TPlus of ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 263 "parser_cocci_menhir.ml" +# 268 "parser_cocci_menhir.ml" ) | TPathIsoFile of ( # 83 "parser_cocci_menhir.mly" (string) -# 268 "parser_cocci_menhir.ml" +# 273 "parser_cocci_menhir.ml" ) | TParameter | TPOEllipsis of ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 274 "parser_cocci_menhir.ml" +# 279 "parser_cocci_menhir.ml" ) | TPCEllipsis of ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 279 "parser_cocci_menhir.ml" +# 284 "parser_cocci_menhir.ml" ) | TPArob | TOrLog of ( # 93 "parser_cocci_menhir.mly" (Data.clt) -# 285 "parser_cocci_menhir.ml" +# 290 "parser_cocci_menhir.ml" ) | TOr of ( # 95 "parser_cocci_menhir.mly" (Data.clt) -# 290 "parser_cocci_menhir.ml" +# 295 "parser_cocci_menhir.ml" ) | TOn | TOPar0 of ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 296 "parser_cocci_menhir.ml" +# 301 "parser_cocci_menhir.ml" ) | TOPar of ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 301 "parser_cocci_menhir.ml" +# 306 "parser_cocci_menhir.ml" ) | TOInit of ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 306 "parser_cocci_menhir.ml" +# 311 "parser_cocci_menhir.ml" ) | TOEllipsis of ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 311 "parser_cocci_menhir.ml" +# 316 "parser_cocci_menhir.ml" ) | TOCro of ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 316 "parser_cocci_menhir.ml" +# 321 "parser_cocci_menhir.ml" ) | TOBrace of ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 321 "parser_cocci_menhir.ml" +# 326 "parser_cocci_menhir.ml" ) | TNothing | TNotEq of ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 327 "parser_cocci_menhir.ml" +# 332 "parser_cocci_menhir.ml" ) | TNever | TName | TMul of ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 334 "parser_cocci_menhir.ml" +# 339 "parser_cocci_menhir.ml" ) | TMinusFile of ( # 87 "parser_cocci_menhir.mly" (string * Data.clt) -# 339 "parser_cocci_menhir.ml" +# 344 "parser_cocci_menhir.ml" ) | TMinus of ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 344 "parser_cocci_menhir.ml" +# 349 "parser_cocci_menhir.ml" ) | TMid0 of ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 349 "parser_cocci_menhir.ml" +# 354 "parser_cocci_menhir.ml" ) | TMetaType of ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 354 "parser_cocci_menhir.ml" +# 359 "parser_cocci_menhir.ml" ) | TMetaStmList of ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 359 "parser_cocci_menhir.ml" +# 364 "parser_cocci_menhir.ml" ) | TMetaStm of ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 364 "parser_cocci_menhir.ml" +# 369 "parser_cocci_menhir.ml" ) | TMetaPos of ( # 72 "parser_cocci_menhir.mly" (Parse_aux.pos_info) -# 369 "parser_cocci_menhir.ml" +# 374 "parser_cocci_menhir.ml" ) | TMetaParamList of ( # 70 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 374 "parser_cocci_menhir.ml" +# 379 "parser_cocci_menhir.ml" ) | TMetaParam of ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 379 "parser_cocci_menhir.ml" +# 384 "parser_cocci_menhir.ml" ) | TMetaLocalIdExp of ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 384 "parser_cocci_menhir.ml" +# 389 "parser_cocci_menhir.ml" ) | TMetaLocalFunc of ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 389 "parser_cocci_menhir.ml" +# 394 "parser_cocci_menhir.ml" ) | TMetaIterator of ( # 66 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 394 "parser_cocci_menhir.ml" +# 399 "parser_cocci_menhir.ml" ) | TMetaInit of ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 399 "parser_cocci_menhir.ml" +# 404 "parser_cocci_menhir.ml" ) | TMetaIdExp of ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 404 "parser_cocci_menhir.ml" +# 409 "parser_cocci_menhir.ml" ) | TMetaId of ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 409 "parser_cocci_menhir.ml" +# 414 "parser_cocci_menhir.ml" ) | TMetaFunc of ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 414 "parser_cocci_menhir.ml" +# 419 "parser_cocci_menhir.ml" ) | TMetaField of ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 419 "parser_cocci_menhir.ml" +# 424 "parser_cocci_menhir.ml" ) | TMetaExpList of ( # 70 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 424 "parser_cocci_menhir.ml" +# 429 "parser_cocci_menhir.ml" ) | TMetaExp of ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 429 "parser_cocci_menhir.ml" +# 434 "parser_cocci_menhir.ml" ) | TMetaErr of ( # 67 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 434 "parser_cocci_menhir.ml" +# 439 "parser_cocci_menhir.ml" ) | TMetaDeclarer of ( # 66 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 439 "parser_cocci_menhir.ml" +# 444 "parser_cocci_menhir.ml" ) | TMetaDecl of ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 444 "parser_cocci_menhir.ml" +# 449 "parser_cocci_menhir.ml" ) | TMetaConst of ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 449 "parser_cocci_menhir.ml" +# 454 "parser_cocci_menhir.ml" ) | TMPtVirg | TLogOp of ( # 99 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) -# 455 "parser_cocci_menhir.ml" +# 460 "parser_cocci_menhir.ml" ) | TLocal | TLineEnd of ( # 78 "parser_cocci_menhir.mly" (Data.clt) -# 461 "parser_cocci_menhir.ml" +# 466 "parser_cocci_menhir.ml" ) | TIteratorId of ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 466 "parser_cocci_menhir.ml" +# 471 "parser_cocci_menhir.ml" ) | TIterator | TIsoType @@ -478,60 +483,60 @@ type token = | TInt of ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 482 "parser_cocci_menhir.ml" +# 487 "parser_cocci_menhir.ml" ) | TInitialize | TInitialiser | TIncludeNL of ( # 84 "parser_cocci_menhir.mly" (string * Data.clt) -# 489 "parser_cocci_menhir.ml" +# 494 "parser_cocci_menhir.ml" ) | TIncludeL of ( # 84 "parser_cocci_menhir.mly" (string * Data.clt) -# 494 "parser_cocci_menhir.ml" +# 499 "parser_cocci_menhir.ml" ) | TInc of ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 499 "parser_cocci_menhir.ml" +# 504 "parser_cocci_menhir.ml" ) | TIf of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 504 "parser_cocci_menhir.ml" +# 509 "parser_cocci_menhir.ml" ) | TIdentifier | TIdent of ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 510 "parser_cocci_menhir.ml" +# 515 "parser_cocci_menhir.ml" ) | TIdExpression | TGoto of ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 516 "parser_cocci_menhir.ml" +# 521 "parser_cocci_menhir.ml" ) | TGenerated | TFunction | TFunDecl of ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 523 "parser_cocci_menhir.ml" +# 528 "parser_cocci_menhir.ml" ) | TFresh | TForall | TFor of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 530 "parser_cocci_menhir.ml" +# 535 "parser_cocci_menhir.ml" ) | TFloat of ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 535 "parser_cocci_menhir.ml" +# 540 "parser_cocci_menhir.ml" ) | TFinalize | TField @@ -543,152 +548,152 @@ type token = | TEqEq of ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 547 "parser_cocci_menhir.ml" +# 552 "parser_cocci_menhir.ml" ) | TEq of ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 552 "parser_cocci_menhir.ml" +# 557 "parser_cocci_menhir.ml" ) | TElse of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 557 "parser_cocci_menhir.ml" +# 562 "parser_cocci_menhir.ml" ) | TEllipsis of ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 562 "parser_cocci_menhir.ml" +# 567 "parser_cocci_menhir.ml" ) | TDotDot of ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 567 "parser_cocci_menhir.ml" +# 572 "parser_cocci_menhir.ml" ) | TDot of ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 572 "parser_cocci_menhir.ml" +# 577 "parser_cocci_menhir.ml" ) | TDo of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 577 "parser_cocci_menhir.ml" +# 582 "parser_cocci_menhir.ml" ) | TDmOp of ( # 101 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 582 "parser_cocci_menhir.ml" +# 587 "parser_cocci_menhir.ml" ) | TDisable | TDepends | TDefineParam of ( # 86 "parser_cocci_menhir.mly" (Data.clt * token * int * int) -# 589 "parser_cocci_menhir.ml" +# 594 "parser_cocci_menhir.ml" ) | TDefine of ( # 85 "parser_cocci_menhir.mly" (Data.clt * token) -# 594 "parser_cocci_menhir.ml" +# 599 "parser_cocci_menhir.ml" ) | TDefault of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 599 "parser_cocci_menhir.ml" +# 604 "parser_cocci_menhir.ml" ) | TDeclarerId of ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 604 "parser_cocci_menhir.ml" +# 609 "parser_cocci_menhir.ml" ) | TDeclarer | TDeclaration | TDec of ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 611 "parser_cocci_menhir.ml" +# 616 "parser_cocci_menhir.ml" ) | TCppConcatOp | TContinue of ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 617 "parser_cocci_menhir.ml" +# 622 "parser_cocci_menhir.ml" ) | TContext | TConstant | TComma of ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 624 "parser_cocci_menhir.ml" +# 629 "parser_cocci_menhir.ml" ) | TChar of ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 629 "parser_cocci_menhir.ml" +# 634 "parser_cocci_menhir.ml" ) | TCase of ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 634 "parser_cocci_menhir.ml" +# 639 "parser_cocci_menhir.ml" ) | TCPar0 of ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 639 "parser_cocci_menhir.ml" +# 644 "parser_cocci_menhir.ml" ) | TCPar of ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 644 "parser_cocci_menhir.ml" +# 649 "parser_cocci_menhir.ml" ) | TCEllipsis of ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 649 "parser_cocci_menhir.ml" +# 654 "parser_cocci_menhir.ml" ) | TCCro of ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 654 "parser_cocci_menhir.ml" +# 659 "parser_cocci_menhir.ml" ) | TCBrace of ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 659 "parser_cocci_menhir.ml" +# 664 "parser_cocci_menhir.ml" ) | TBreak of ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 664 "parser_cocci_menhir.ml" +# 669 "parser_cocci_menhir.ml" ) | TBang0 | TBang of ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 670 "parser_cocci_menhir.ml" +# 675 "parser_cocci_menhir.ml" ) | TAssign of ( # 112 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) -# 675 "parser_cocci_menhir.ml" +# 680 "parser_cocci_menhir.ml" ) | TArobArob | TArob | TAny of ( # 78 "parser_cocci_menhir.mly" (Data.clt) -# 682 "parser_cocci_menhir.ml" +# 687 "parser_cocci_menhir.ml" ) | TAndLog of ( # 94 "parser_cocci_menhir.mly" (Data.clt) -# 687 "parser_cocci_menhir.ml" +# 692 "parser_cocci_menhir.ml" ) | TAnd of ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 692 "parser_cocci_menhir.ml" +# 697 "parser_cocci_menhir.ml" ) | EOF @@ -710,7 +715,7 @@ module Ast0 = Ast0_cocci module Ast = Ast_cocci module P = Parse_aux -# 714 "parser_cocci_menhir.ml" +# 719 "parser_cocci_menhir.ml" let _eRR = Error @@ -724,304 +729,306 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct fun _tok -> match _tok with | EOF -> - 186 + 187 | TAnd _ -> - 185 + 186 | TAndLog _ -> - 184 + 185 | TAny _ -> - 183 + 184 | TArob -> - 182 + 183 | TArobArob -> - 181 + 182 | TAssign _ -> - 180 + 181 | TBang _ -> - 179 + 180 | TBang0 -> - 178 + 179 | TBreak _ -> - 177 + 178 | TCBrace _ -> - 176 + 177 | TCCro _ -> - 175 + 176 | TCEllipsis _ -> - 174 + 175 | TCPar _ -> - 173 + 174 | TCPar0 _ -> - 172 + 173 | TCase _ -> - 171 + 172 | TChar _ -> - 170 + 171 | TComma _ -> - 169 + 170 | TConstant -> - 168 + 169 | TContext -> - 167 + 168 | TContinue _ -> - 166 + 167 | TCppConcatOp -> - 165 + 166 | TDec _ -> - 164 + 165 | TDeclaration -> - 163 + 164 | TDeclarer -> - 162 + 163 | TDeclarerId _ -> - 161 + 162 | TDefault _ -> - 160 + 161 | TDefine _ -> - 159 + 160 | TDefineParam _ -> - 158 + 159 | TDepends -> - 157 + 158 | TDisable -> - 156 + 157 | TDmOp _ -> - 155 + 156 | TDo _ -> - 154 + 155 | TDot _ -> - 153 + 154 | TDotDot _ -> - 152 + 153 | TEllipsis _ -> - 151 + 152 | TElse _ -> - 150 + 151 | TEq _ -> - 149 + 150 | TEqEq _ -> - 148 + 149 | TError -> - 147 + 148 | TEver -> - 146 + 147 | TExists -> - 145 + 146 | TExpression -> - 144 + 145 | TExtends -> - 143 + 144 | TField -> - 142 + 143 | TFinalize -> - 141 + 142 | TFloat _ -> - 140 + 141 | TFor _ -> - 139 + 140 | TForall -> - 138 + 139 | TFresh -> - 137 + 138 | TFunDecl _ -> - 136 + 137 | TFunction -> - 135 + 136 | TGenerated -> - 134 + 135 | TGoto _ -> - 133 + 134 | TIdExpression -> - 132 + 133 | TIdent _ -> - 131 + 132 | TIdentifier -> - 130 + 131 | TIf _ -> - 129 + 130 | TInc _ -> - 128 + 129 | TIncludeL _ -> - 127 + 128 | TIncludeNL _ -> - 126 + 127 | TInitialiser -> - 125 + 126 | TInitialize -> - 124 + 125 | TInt _ -> - 123 + 124 | TInvalid -> - 122 + 123 | TIso -> - 121 + 122 | TIsoArgExpression -> - 120 + 121 | TIsoDeclaration -> - 119 + 120 | TIsoExpression -> - 118 + 119 | TIsoStatement -> - 117 + 118 | TIsoTestExpression -> - 116 + 117 | TIsoToTestExpression -> - 115 + 116 | TIsoTopLevel -> - 114 + 115 | TIsoType -> - 113 + 114 | TIterator -> - 112 + 113 | TIteratorId _ -> - 111 + 112 | TLineEnd _ -> - 110 + 111 | TLocal -> - 109 + 110 | TLogOp _ -> - 108 + 109 | TMPtVirg -> - 107 + 108 | TMetaConst _ -> - 106 + 107 | TMetaDecl _ -> - 105 + 106 | TMetaDeclarer _ -> - 104 + 105 | TMetaErr _ -> - 103 + 104 | TMetaExp _ -> - 102 + 103 | TMetaExpList _ -> - 101 + 102 | TMetaField _ -> - 100 + 101 | TMetaFunc _ -> - 99 + 100 | TMetaId _ -> - 98 + 99 | TMetaIdExp _ -> - 97 + 98 | TMetaInit _ -> - 96 + 97 | TMetaIterator _ -> - 95 + 96 | TMetaLocalFunc _ -> - 94 + 95 | TMetaLocalIdExp _ -> - 93 + 94 | TMetaParam _ -> - 92 + 93 | TMetaParamList _ -> - 91 + 92 | TMetaPos _ -> - 90 + 91 | TMetaStm _ -> - 89 + 90 | TMetaStmList _ -> - 88 + 89 | TMetaType _ -> - 87 + 88 | TMid0 _ -> - 86 + 87 | TMinus _ -> - 85 + 86 | TMinusFile _ -> - 84 + 85 | TMul _ -> - 83 + 84 | TName -> - 82 + 83 | TNever -> - 81 + 82 | TNotEq _ -> - 80 + 81 | TNothing -> - 79 + 80 | TOBrace _ -> - 78 + 79 | TOCro _ -> - 77 + 78 | TOEllipsis _ -> - 76 + 77 | TOInit _ -> - 75 + 76 | TOPar _ -> - 74 + 75 | TOPar0 _ -> - 73 + 74 | TOn -> - 72 + 73 | TOr _ -> - 71 + 72 | TOrLog _ -> - 70 + 71 | TPArob -> - 69 + 70 | TPCEllipsis _ -> - 68 + 69 | TPOEllipsis _ -> - 67 + 68 | TParameter -> - 66 + 67 | TPathIsoFile _ -> - 65 + 66 | TPlus _ -> - 64 + 65 | TPlus0 -> - 63 + 64 | TPlusFile _ -> - 62 + 63 | TPosAny -> - 61 + 62 | TPosition -> - 60 + 61 | TPragma _ -> - 59 + 60 | TPtVirg _ -> - 58 + 59 | TPtrOp _ -> - 57 + 58 | TPure -> - 56 + 57 | TReturn _ -> - 55 + 56 | TRightIso -> - 54 + 55 | TRuleName _ -> - 53 + 54 | TScript -> - 52 + 53 | TScriptData _ -> - 51 + 52 | TShLOp _ -> - 50 + 51 | TShROp _ -> - 49 + 50 | TSizeof _ -> - 48 + 49 | TStatement -> - 47 + 48 | TStrict _ -> - 46 + 47 | TString _ -> - 45 + 46 | TSub _ -> - 44 + 45 | TSwitch _ -> - 43 + 44 | TTilde _ -> - 42 + 43 | TTildeEq _ -> - 41 + 42 | TTildeExclEq _ -> - 40 + 41 | TType -> - 39 + 40 | TTypeId _ -> - 38 + 39 | TTypedef -> + 38 + | TUndef _ -> 37 | TUnderscore -> 36 @@ -1402,6 +1409,8 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Obj.repr _v | TTypedef -> Obj.repr () + | TUndef _v -> + Obj.repr _v | TUnderscore -> Obj.repr () | TUsing -> @@ -1476,19 +1485,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Obj.repr _v let default_reduction = - (16, "\000\000\000\000\002\230\000u\000\000\000\000\0035\001n\000\000\001l\001m\001k\000\000\001p\001o\000\001\000\000\001\162\000\000\000\000\000\133\000\000\000\000\001\152\000\182\000\000\000\000\000\169\000\000\000\000\000\174\000\173\000\000\000\170\000\000\000\168\000\000\000\000\000\000\000\172\000\000\000\171\003n\003m\000\000\000\186\000\000\000\185\000\000\000\000\000\162\000\000\000\000\000\167\000\166\000\000\000\163\000\000\000\161\000\000\000\000\000\000\000\165\000\000\000\164\000\000\000\176\000\000\000\187\000\000\000\000\000\181\000\180\000\000\000\177\000\000\000\184\000\000\000\000\000\000\001h\000\000\000\000\000\000\001g\000\000\000\000\001;\001:\0019\0018\0017\0016\000\000\001#\002,\000\000\000\000\002+\000\000\000\000\000\000\000\145\000\000\000\000\000\144\002/\0014\000\000\000\000\000\189\000\000\000\000\000\000\000\000\000\190\000\188\000\000\000\183\000\132\000\000\000\175\000\000\000\195\000\000\000\000\000\000\000\179\000\000\000\000\000\000\003b\003h\000\000\000\000\000\000\000\000\000\000\003c\003d\000\000\000\000\000\192\000\000\003f\000\000\000\000\000\000\003\242\002\176\000\000\003\240\000\000\002\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\239\003\241\002\182\001c\002\181\001a\001b\002\180\002\179\002\178\002\174\000\000\000\000\002\175\001\029\000\000\002\177\000\000\003\238\000\000\000g\001`\002\145\000\000\000\000\002\148\000\000\000\000\000\000\000\000\000\000\000\000\001\030\002\173\002\185\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\127\002l\000V\001(\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000X\000\000\000W\000\000\002\210\000\000\000\233\000\000\000\000\002\003\000\000\001\176\001\240\000\000\000\000\002\002\000\000\000\000\000\217\000\000\000\000\000\204\000\000\000\000\000\209\000\208\000\000\000\205\000\000\000\203\000\000\000\000\000\000\000\207\000\000\000\206\000\000\000\221\000\000\000\220\000\000\000\000\000\197\000\000\000\000\000\202\000\201\000\000\000\198\000\000\000\196\000\000\000\000\000\000\000\200\000\000\000\199\000\000\000\211\000\000\000\222\000\000\000\000\000\216\000\215\000\000\000\212\000\000\000\219\000\000\000\000\000\000\000\000\000\224\000\000\000\000\000\000\000\000\000\225\000\223\000\000\000\218\000\000\000\210\000\000\000\230\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\159\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002R\000\238\000\000\000\000\000\000\000\000\000\000\002@\002Q\002\b\000\000\000\000\000\000\000\000\000\000\0013\000\242\000\000\002\t\000\000\000\000\000\000\000\000\000\237\000\235\000\157\000\000\000\000\000\156\002D\002A\000\000\000\000\003j\000\000\003i\000\000\000\000\000\000\000\000\000\000\000\227\000\000\000\000\000\000\000\000\000\228\000\226\000\000\000\000\003l\003g\000\213\000\000\001\174\001\239\000\000\002\208\002\207\000\015\002\206\002\205\002\204\002\200\000\000\000\000\000\000\002\209\002\201\000\000\002\203\000\000\000\000\000k\002\159\000\000\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000[\000\000\000Z\000\137\002\211\002\199\000\014\000\016\000Y\0003\001\027\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\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\029\002!\000\000\000\000\000\136\001+\001)\000\000\002\165\000\000\000\000\002\160\002\163\000\000\002\161\002\164\003\227\003\228\003\226\003\225\002\030\000\000\002\151\000\000\000\000\002\146\002\149\000\000\002\147\002\150\003\213\003\214\003\212\000\000\002\183\003\211\000\000\000\000\000l\001@\000\000\002\018\000\000\000\000\000\000\000\000\000\000\001!\002\024\000\000\000\000\001\186\000\000\002\184\000\000\000\000\000h\000\000\000\000\003\230\003\229\000\000\002\019\000\000\000\000\003\216\003\215\000\000\000U\000\234\000\000\001\154\000\000\003k\000\000\000\000\000\000\000\000\000\193\000\191\000\000\001'\000\000\000\000\000\194\000\178\000\000\000\000\001\130\000\000\001\129\000\000\001\144\000\000\001\164\000\000\000\000\000\000\003\158\000\000\000\000\003\145\000\000\000\000\003\150\003\149\000\000\003\146\000\000\003\144\000\000\000\000\000\000\003\148\000\000\003\147\000\000\003\162\000\000\003\161\000\000\000\000\003\138\000\000\000\000\003\143\003\142\000\000\003\139\000\000\003\137\000\000\000\000\000\000\003\141\000\000\003\140\000\000\003\152\000\000\003\163\000\000\000\000\003\157\003\156\000\000\003\153\000\000\003\160\000\000\000\000\000\000\000\000\003\165\000\000\000\000\000\000\000\000\003\166\003\164\000\000\003\159\000\000\003\151\000\000\003\171\000\000\000\000\000\000\003\155\000\000\000\000\003\207\000\000\000\000\000\000\000\000\003\170\003\154\000\000\003\209\000\000\000\000\003E\003\208\000}\000\000\001\015\000\000\000\000\000\000\000\000\003\168\000\000\000\000\000\000\000\000\003\169\003\167\000\000\000\000\003\193\000\000\000\000\003\180\000\000\000\000\003\185\003\184\000\000\003\181\000\000\003\179\000\000\000\000\000\000\003\183\000\000\003\182\000\000\003\197\000\000\003\196\000\000\000\000\003\173\000\000\000\000\003\178\003\177\000\000\003\174\000\000\003\172\000\000\000\000\000\000\003\176\000\000\003\175\000\000\003\187\000\000\003\198\000\000\000\000\003\192\003\191\000\000\003\188\000\000\003\195\000\000\000\000\000\000\000\000\003\200\000\000\000\000\000\000\000\000\003\201\003\199\000\000\003\194\000\000\003\186\000\000\003\206\000\000\000\000\000\000\003\190\000\000\000\000\000\000\000\000\003\205\003\189\000\000\000\000\000\000\000\000\003\203\000\000\000\000\000\000\000\000\003\204\003\202\003^\003`\003a\003_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\240\000\252\000\239\000\000\000\000\000r\000\000\000\000\000\000\002\189\000\000\000\000\000\000\002\197\000\000\000\000\002\196\000\000\003\223\002\195\002\194\002\193\002\192\002\191\001~\002\187\000\000\000\000\002\188\000\000\002\190\000\000\000\000\000\000\000\000\000\000\000i\002\152\000\000\000\000\002\155\000\000\000\000\002\158\000\000\000\000\002\153\002\156\000\000\002\154\002\157\002\198\002\186\000j\003\220\003\221\003\219\003\218\003\222\000\000\000\000\000\000\000\000\001\026\001\025\000\000\000\000\000\000\000\000\000\000\000\000\001x\000\000\001%\001v\000\000\001\024\000\000\0023\000\000\000\000\001{\000\000\000\000\001|\000\000\001\160\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\000\000\000&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0022\000\000\000\000\000\000\000\149\000\000\000\000\000\148\0026\001/\000\000\001z\001}\000\000\001w\000\000\001\b\000\000\003/\000\000\000\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\011\000\000\000\000\001\014\000\000\000\000\000\000\000\000\000\000\000\000\001f\000\000\000\000\000\000\001\001\000\000\000\254\000\000\000\000\000\000\000\000\000\000\001\t\000\000\001\005\000\000\000\000\000\000\000\000\001\006\000\000\001\002\000\000\000\000\000\000\002\215\000\000\000\000\000\000\000\000\002\222\000\000\000\000\002\221\002\220\002\219\002\218\002\217\002\213\000\000\000\000\002\214\000\000\002\216\000\000\000\000\000m\002\166\000\000\000\000\002\169\000\000\000\000\002\172\000\000\000\000\002\167\002\170\000\000\002\168\002\171\002\224\002\212\003\234\003\235\003\233\003\232\000n\000\000\000\000\000^\000\000\000]\000\000\002\223\000\000\001\241\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\131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\237\003\236\000\000\003U\000\000\003T\000\000\000\000\000\000\000\000\003\249\000\000\000\000\000\000\003\250\000\000\000\018\000\000\000\000\000\000\003\245\000\000\001\188\000\000\000\000\000\000\000\243\003K\001\150\001\149\001r\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003Y\000\000\000\000\000\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\001\031\000\000\000\000\002$\000\000\000\000\000\140\002(\002%\001-\001\016\000\000\001\018\001\017\000\000\003W\000\000\003V\003H\000\000\000\000\000\000\000\000\000\000\003Q\000\000\000\000\000\000\000\000\003R\003J\000\000\003X\000\000\003L\000\000\000\247\001s\000\000\003[\000\000\001u\000\000\000\000\003t\000\000\003{\000\249\000\000\000\255\000\000\003u\000\248\000\000\003v\000\000\003}\000\000\000\000\000\000\000\000\001\012\000\000\000\251\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\n\000\000\000\000\001\r\000\000\000\000\000\000\000\000\001e\000\000\000\000\000\000\001\000\000\000\000\253\000\000\000\000\000\000\000\000\000\000\001\007\000\000\001\003\000\245\000\244\000\000\003~\003\127\000\000\003\128\000\000\003\129\000\000\001t\003O\000\000\000\000\002\007\000\000\001\184\001\245\000\000\003I\000\000\000\000\000\000\003N\000\000\000\000\000\000\001Y\000\000\001S\000\000\001T\000\000\001^\001R\001]\000\000\003Z\001_\000\000\000\250\000\000\000\000\000\000\000\000\001[\001V\002\004\000\000\001W\000\000\001X\000\000\001\178\001\242\000\000\000\000\000\000\002\014\000\000\002\012\000\000\000\000\002\016\002\n\000\000\002\017\002\011\000\000\003\\\002\020\000\000\000\246\000\000\000\000\002\005\000\000\001\180\001\243\000\000\003\246\000\000\003\243\000\000\003\244\000\019\000\020\000\000\000\000\003\019\000\000\003\018\000\000\002T\000\000\003\021\000\000\003\020\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\002c\000\000\000\000\002f\000\000\002V\000\000\000\000\002Y\000\000\000\000\000\000\002]\000\000\000\000\002a\000\000\000\000\002\006\000\000\000\000\002Z\000\000\000\000\002^\003\016\002W\000\000\003\017\000\000\000\000\000\000\000\000\002d\000\000\002S\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002e\000\000\002U\000\000\000\000\002X\000\000\000\000\000\000\002[\000\000\000\000\002_\000\000\001\182\001\244\000\000\003\022\000\000\000\000\000\000\003\247\000\017\000p\000\000\003\248\000\000\000\000\003+\000\000\000\000\003]\000e\000\000\000\000\000\000\000f\000\000\003S\000\000\001\156\000\000\001\158\003P\000\000\000\000\001\136\000\000\001\135\000\000\001\145\000\000\001\170\000\000\000\000\000\000\001\134\000\000\001\133\000\000\001\142\000\000\001\168\000\000\000\000\000\000\001\141\000\000\000\000\000\000\001\138\000\000\001\137\000\000\001\143\000\000\001\172\000\000\000\000\000\000\001\139\000\000\000\000\000\000\001\132\000\000\001\131\000\000\001\146\000\000\001\166\000\000\000\000\000\000\001\140\000\002\000\000\000R\000S\000\000\000\000\002\240\002\244\002\248\002\236\002\233\000\000\000\000\002\245\002\252\002\237\002\251\002\235\002\250\002\239\002\231\002\238\002\247\002\234\002\241\002\232\002\243\002\249\002\246\002\242\001\207\001\206\000{\000\000\000\000\003A\000\000\000\000\003%\000\000\000\000\003'\003&\003\006\000\000\000\000\003G\002\254\002\253\002\255\000\000\001\221\000Q\001\147\000\003\000\000\000\000\002\227\000\000\002j\000\000\000|\000\000\000\000\003C\000\000\000\000\000\000\000t\000\000\000\000\0033\000\000\002N\002M\001\200\003\007\000\000\001\236\000\000\002\228\000\000\000\000\000v\000\000\000\000\0037\000\000\001\218\000\000\000\000\001\212\000\000\000\000\000\000\001\217\000\000\001\214\000\000\000\000\000\000\001\190\001\189\000\000\000\000\000\000\001\237\000\000\001\210\000\000\001\209\000\000\000q\000\000\000\000\003-\000\000\000\000\001\205\000\000\000\000\000y\000\000\000\000\003=\000\000\000\000\003\014\000\000\003\r\000\000\000\000\000\000\002L\002K\003\011\002r\003\002\003\012\000\000\001\224\000\000\000\000\000\000\001\220\000\000\001\226\000\000\000\000\001\213\000\000\000\000\000\000\003\004\000z\000\000\000\000\003?\000\000\003\003\000\000\001\222\000\000\000\000\001\223\000\000\000\000\001\216\000\000\000\000\001D\000\000\001C\000\000\000\000\000\000\000\000\000\000\001\238\000\000\001\211\000\000\001B\000\000\002\026\000w\000\000\000\000\0039\000\000\000\000\000\000\000\000\003p\003o\000\000\000\000\001j\000s\001i\000\000\000\000\0031\000\000\002F\002E\002H\003\000\002n\002G\001A\000\000\000x\000\000\000\000\003;\000\000\000\000\000\000\000\000\002J\002I\003\n\003\b\002p\003\001\003\t\000\000\001\231\000\000\001\234\000\000\000\000\001\227\000\000\000\000\000\000\001\219\000\000\001\225\000\000\000\000\001\215\000\000\000\000\000\000\000\000\000\000\000\000\001\204\000\000\000\000\001\233\000\000\001\232\000\000\000\000\000\000\000\000\001\230\000\000\000\000\001\229\000\000\001\228\000\000\000\000\001\235\000\000\000\000\001\148\000\004\000\000\001\208\000\005\000\000\000\000\001G\000\006\000\000\001\249\001\250\001\248\000\000\001\247\003q\001\196\000\000\000\007\000\000\001\252\001\253\001\251\000\000\000\000\000\000\000\000\001I\000\000\000\000\000\000\000\000\001N\001P\001O\001J\001L\001K\000\000\000\000\000\000\000\000\000\000\003w\003\132\000\000\003x\000\000\003y\000\000\000\000\003r\000\000\000\000\000\000\000\000\003\131\000\000\000\000\003\130\002\001\002\000\000\000\000\000\001\198\001\246\001\254\000\000\000\000\000\000\000\000\000\000\002P\000\000\000\000\000\000\000\000\000\000\0029\002O\000\000\000\000\000\000\000\153\000\000\000\000\000\152\002=\002:\0011\000\241\000\000\000\000\000\000\000\000\001d\000\000\003\135\000\000\003\136\000\000\000\000\002\023\002\021\000\000\002\022\000\b\000\000\000\t\000\000\002\129\002\130\002\128\000\000\002\127\000\000\000\n\000\000\002\132\002\133\002\131\000\000\002\135\000\000\000\000\000\000\002y\000\000\000\000\002{\000\000\002u\000\000\002w\000\000\002|\000\000\002}\000\000\002v\002t\002\136\001\202\002~\000\000\002\138\000\000\002\137\000\000\002\139\000\000\003\015\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002\140\000\000\000\000\002\143\000\000\002\142\000\000\002\141\001\019\000\000\000\000\000\000\000\000\001\020\002\144\000\000\000\000\000\000\003\027\000\000\003\026\000\000\000\000\000\000\000\000\003\028\000\000\000\000\001F\000\000\000\000\000\000\000\000\000\000\003)\000o\000\000\000\000\001\028\000\000\001=\001<\000\000\001\128\000\000\003\025\001\194\001\192\000\000\000\000\000\000\000\000\003\029\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\024\000\000\000\000\000\000\000\000\000\000\000\000\003\023\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003$\000\000\000\000\003#\000\000\003 \000\000\000\000\000\000\000\000\000\000\003!\000\000\000\000\000\000\003\"\000\r\000\000\003\030\000\000\003\031") + (16, "\000\000\000\000\002\245\000\131\000\000\000\000\003D\001|\000\000\001z\001{\001y\000\000\001~\001}\000\001\000\000\001\177\000\000\000\000\000\147\000\000\000\000\001\167\000\196\000\000\000\000\000\183\000\000\000\000\000\188\000\187\000\000\000\184\000\000\000\182\000\000\000\000\000\000\000\186\000\000\000\185\003}\003|\000\000\000\200\000\000\000\199\000\000\000\000\000\176\000\000\000\000\000\181\000\180\000\000\000\177\000\000\000\175\000\000\000\000\000\000\000\179\000\000\000\178\000\000\000\190\000\000\000\201\000\000\000\000\000\195\000\194\000\000\000\191\000\000\000\198\000\000\000\000\000\000\001v\000\000\000\000\000\000\001u\000\000\000\000\001I\001H\001G\001F\001E\001D\000\000\0011\002;\000\000\000\000\002:\000\000\000\000\000\000\000\159\000\000\000\000\000\158\002>\001B\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\204\000\202\000\000\000\197\000\146\000\000\000\189\000\000\000\209\000\000\000\000\000\000\000\193\000\000\000\000\000\000\003q\003w\000\000\000\000\000\000\000\000\000\000\003r\003s\000\000\000\000\000\206\000\000\003u\000\000\000\000\000\000\004\b\002\191\000\000\000\000\004\006\000\000\002\217\000\000\000\000\000\000\000\000\000\000\000\000\004\005\004\007\002\197\001q\002\196\001o\001p\002\195\002\194\002\193\002\189\000\000\000\000\002\190\001+\000\000\000\000\000\000\002\192\000\000\004\004\000\000\000\000\003\229\001n\002\160\000\000\000\000\002\163\000\000\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\001,\002\188\002\200\000m\000\021\000o\000\000\000\000\000Q\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\000\000S\000\000\000\000\000\000\000\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\000d\0016\000p\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\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000n\000f\000\000\000e\000\000\002\161\002\164\000\000\002\162\002\165\003\228\000\000\002\225\000\000\000\247\000\000\000\000\002\018\000\000\001\191\001\255\000\000\000\000\002\017\000\000\000\000\000\231\000\000\000\000\000\218\000\000\000\000\000\223\000\222\000\000\000\219\000\000\000\217\000\000\000\000\000\000\000\221\000\000\000\220\000\000\000\235\000\000\000\234\000\000\000\000\000\211\000\000\000\000\000\216\000\215\000\000\000\212\000\000\000\210\000\000\000\000\000\000\000\214\000\000\000\213\000\000\000\225\000\000\000\236\000\000\000\000\000\230\000\229\000\000\000\226\000\000\000\233\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\239\000\237\000\000\000\232\000\000\000\224\000\000\000\244\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\243\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002a\000\252\000\000\000\000\000\000\000\000\000\000\002O\002`\002\023\000\000\000\000\000\000\000\000\000\000\001A\001\000\000\000\002\024\000\000\000\000\000\000\000\000\000\251\000\249\000\171\000\000\000\000\000\170\002S\002P\000\000\000\000\003y\000\000\003x\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\242\000\240\000\000\000\000\003{\003v\000\227\000\000\001\189\001\254\000\000\000\000\002\224\000\000\000\000\002\223\002\222\002\221\002\220\002\219\002\215\000\000\003\240\002\216\000\000\003\241\002\218\000\000\003\243\000\000\000y\002\174\000\000\000\000\002\177\000\000\000\000\000\015\000\000\000\000\000\000\000\000\000\000\000i\000\000\000h\000\151\002\226\002\214\000\014\000\016\000g\0003\001)\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005\000\000\000\000\000\000\000\000\000\000\000\000\002,\0020\000\000\000\000\000\150\002-\0019\0017\000\000\002\180\000\000\000\000\002\175\002\178\000\000\002\176\002\179\003\242\000z\000\000\002\166\004\000\004\001\003\255\003\254\003\227\000\000\002\198\003\226\001N\000\000\002!\000\000\000\000\000\000\000\000\000\000\001/\002'\000\000\000\000\001\201\000\000\002\199\000\000\000\000\000v\000\000\000\000\003\245\003\244\000\000\002\"\000\000\000\000\004\003\004\002\000\000\000\000\003\231\003\230\000\000\000c\000\248\000\000\001\169\000\000\003z\000\000\000\000\000\000\000\000\000\207\000\205\000\000\0015\000\000\000\000\000\208\000\192\000\000\000\000\001\145\000\000\001\144\000\000\001\159\000\000\001\179\000\000\000\000\000\000\003\173\000\000\000\000\003\160\000\000\000\000\003\165\003\164\000\000\003\161\000\000\003\159\000\000\000\000\000\000\003\163\000\000\003\162\000\000\003\177\000\000\003\176\000\000\000\000\003\153\000\000\000\000\003\158\003\157\000\000\003\154\000\000\003\152\000\000\000\000\000\000\003\156\000\000\003\155\000\000\003\167\000\000\003\178\000\000\000\000\003\172\003\171\000\000\003\168\000\000\003\175\000\000\000\000\000\000\000\000\003\180\000\000\000\000\000\000\000\000\003\181\003\179\000\000\003\174\000\000\003\166\000\000\003\186\000\000\000\000\000\000\003\170\000\000\000\000\003\222\000\000\000\000\000\000\000\000\003\185\003\169\000\000\003\224\000\000\000\000\003T\003\223\000\139\000\000\001\029\000\000\000\000\000\000\000\000\003\183\000\000\000\000\000\000\000\000\003\184\003\182\000\000\000\000\003\208\000\000\000\000\003\195\000\000\000\000\003\200\003\199\000\000\003\196\000\000\003\194\000\000\000\000\000\000\003\198\000\000\003\197\000\000\003\212\000\000\003\211\000\000\000\000\003\188\000\000\000\000\003\193\003\192\000\000\003\189\000\000\003\187\000\000\000\000\000\000\003\191\000\000\003\190\000\000\003\202\000\000\003\213\000\000\000\000\003\207\003\206\000\000\003\203\000\000\003\210\000\000\000\000\000\000\000\000\003\215\000\000\000\000\000\000\000\000\003\216\003\214\000\000\003\209\000\000\003\201\000\000\003\221\000\000\000\000\000\000\003\205\000\000\000\000\000\000\000\000\003\220\003\204\000\000\000\000\000\000\000\000\003\218\000\000\000\000\000\000\000\000\003\219\003\217\003m\003o\003p\003n\000\000\000\000\000\000\000\000\000\000\001\129\000\000\000\000\000\000\000\000\000\000\000\254\001\n\000\253\000\000\000\000\000\128\000\000\000\000\000\000\002\204\000\000\000\000\000\000\003\238\003\237\000\000\000\000\002\212\000\000\000\000\002\211\000\000\000\000\002\210\002\209\002\208\002\207\002\206\001\141\002\202\000\000\003\233\002\203\000\000\003\234\002\205\000\000\003\236\000\000\000w\002\167\000\000\000\000\002\170\000\000\000\000\002\173\000\000\000\000\002\168\002\171\000\000\002\169\002\172\002\213\002\201\003\235\000x\000\000\000\000\000\000\000\000\001(\001'\000\000\000\000\000\000\000\000\000\000\000\000\001\135\000\000\0013\001\133\000\000\001&\000\000\002B\000\000\000\000\001\138\000\000\000\000\001\139\000\000\001\175\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&\000\000\000\000\000\000\000\000\000\000\000\000\002A\000\000\000\000\000\000\000\163\000\000\000\000\000\162\002E\001=\000\000\001\137\001\140\000\000\001\134\000\000\001\022\000\000\003>\000\000\000\000\001\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\000\000\001\028\000\000\000\000\000\000\000\000\000\000\000\000\001t\000\000\000\000\000\000\001\015\000\000\001\012\000\000\000\000\000\000\000\000\000\000\001\023\000\000\001\019\000\000\000\000\000\000\000\000\001\020\000\000\001\016\000\000\000\000\000\000\002\230\000\000\000\000\000\000\003\252\003\251\000\000\003d\000\000\003c\000\000\000\000\000\000\000\000\004\015\000\000\000\000\000\000\004\016\000\000\000\018\000\000\000\000\000\000\000\000\002\237\000\000\000\000\000\000\002\236\002\235\002\234\002\233\002\232\002\228\000\000\003\247\002\229\000\000\003\248\002\231\000\000\003\250\000\000\000{\002\181\000\000\000\000\002\184\000\000\000\000\002\187\000\000\000\000\002\182\002\185\000\000\002\183\002\186\002\239\002\227\003\249\000\000\000\000\000l\000\000\000k\000\000\002\238\000\000\002\000\000j\000B\001M\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\145\000\000\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\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\004\011\000\000\001\203\000\000\000\000\000\000\001\001\003Z\001\165\001\164\001\128\001\127\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003h\000\000\000\000\000\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\001-\000\000\000\000\0023\000\000\000\000\000\154\0027\0024\001;\001\030\000\000\001 \001\031\000\000\003f\000\000\003e\003W\000\000\000\000\000\000\000\000\000\000\003`\000\000\000\000\000\000\000\000\003a\003Y\000\000\003g\000\000\003[\000\000\001\005\001\130\000\000\003j\000\000\001\132\000\000\000\000\003\131\000\000\003\138\001\007\000\000\001\r\000\000\003\132\001\006\000\000\003\133\000\000\003\140\000\000\000\000\000\000\000\000\001\026\000\000\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\024\000\000\000\000\001\027\000\000\000\000\000\000\000\000\001s\000\000\000\000\000\000\001\014\000\000\001\011\000\000\000\000\000\000\000\000\000\000\001\021\000\000\001\017\001\003\001\002\000\000\003\141\003\142\000\000\003\143\000\000\003\144\000\000\001\131\003^\000\000\000\000\002\022\000\000\001\199\002\004\000\000\003X\000\000\000\000\000\000\003]\000\000\000\000\000\000\001g\000\000\001a\000\000\001b\000\000\001l\001`\001k\000\000\003i\001m\000\000\001\b\000\000\000\000\000\000\000\000\001i\001d\002\019\000\000\001e\000\000\001f\000\000\001\193\002\001\000\000\000\000\000\000\002\029\000\000\002\027\000\000\000\000\002\031\002\025\000\000\002 \002\026\000\000\003k\002#\000\000\001\004\000\000\000\000\002\020\000\000\001\195\002\002\000\000\004\012\000\000\004\t\000\000\004\n\000\019\000\020\000\000\000\000\003\"\000\000\003!\000\000\002c\000\000\003$\000\000\003#\000\000\000\000\000\000\002k\000\000\000\000\002o\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002r\000\000\000\000\002u\000\000\002e\000\000\000\000\002h\000\000\000\000\000\000\002l\000\000\000\000\002p\000\000\000\000\002\021\000\000\000\000\002i\000\000\000\000\002m\003\031\002f\000\000\003 \000\000\000\000\000\000\000\000\002s\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002q\000\000\000\000\002t\000\000\002d\000\000\000\000\002g\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\001\197\002\003\000\000\003%\000\000\000\000\000\000\004\r\000\017\000~\000\000\004\014\000\000\000\000\003:\000\000\000\000\003l\000s\000\000\000\000\000\000\000t\000\000\003b\000\000\001\171\000\000\001\173\003_\000\000\000\000\001\151\000\000\001\150\000\000\001\160\000\000\001\185\000\000\000\000\000\000\001\149\000\000\001\148\000\000\001\157\000\000\001\183\000\000\000\000\000\000\001\156\000\000\000\000\000\000\001\153\000\000\001\152\000\000\001\158\000\000\001\187\000\000\000\000\000\000\001\154\000\000\000\000\000\000\001\147\000\000\001\146\000\000\001\161\000\000\001\181\000\000\000\000\000\000\001\155\000\002\000\000\000`\000a\000\000\000\000\002\255\003\003\003\007\002\251\002\248\000\000\000\000\003\004\003\011\002\252\003\n\002\250\003\t\002\254\002\246\002\253\003\006\002\249\003\000\002\247\003\002\003\b\003\005\003\001\001\222\001\221\000\137\000\000\000\000\003P\000\000\000\000\0034\000\000\000\000\0036\0035\003\021\000\000\000\000\003V\003\r\003\012\003\014\000\000\001\236\000_\001\162\000\003\000\000\000\000\002\242\000\000\002y\000\000\000\138\000\000\000\000\003R\000\000\000\000\000\000\000\130\000\000\000\000\003B\000\000\002]\002\\\001\215\003\022\000\000\001\251\000\000\002\243\000\000\000\000\000\132\000\000\000\000\003F\000\000\001\233\000\000\000\000\001\227\000\000\000\000\000\000\001\232\000\000\001\229\000\000\000\000\000\000\001\205\001\204\000\000\000\000\000\000\001\252\000\000\001\225\000\000\001\224\000\000\000\127\000\000\000\000\003<\000\000\000\000\001\220\000\000\000\000\000\135\000\000\000\000\003L\000\000\000\000\003\029\000\000\003\028\000\000\000\000\000\000\002[\002Z\003\026\002\129\003\017\003\027\000\000\001\239\000\000\000\000\000\000\001\235\000\000\001\241\000\000\000\000\001\228\000\000\000\000\000\000\003\019\000\136\000\000\000\000\003N\000\000\003\018\000\000\001\237\000\000\000\000\001\238\000\000\000\000\001\231\000\000\000\000\001R\000\000\001Q\000\000\000\000\000\000\000\000\000\000\001\253\000\000\001\226\000\000\001P\000\000\002)\000\133\000\000\000\000\003H\000\000\000\000\000\000\000\000\003\127\003~\000\000\000\000\001x\000\129\001w\000\000\000\000\003@\000\000\002U\002T\002W\003\015\002}\002V\001O\000\000\000\134\000\000\000\000\003J\000\000\000\000\000\000\000\000\002Y\002X\003\025\003\023\002\127\003\016\003\024\000\000\001\246\000\000\001\249\000\000\000\000\001\242\000\000\000\000\000\000\001\234\000\000\001\240\000\000\000\000\001\230\000\000\000\000\000\000\000\000\000\000\000\000\001\219\000\000\000\000\001\248\000\000\001\247\000\000\000\000\000\000\000\000\001\245\000\000\000\000\001\244\000\000\001\243\000\000\000\000\001\250\000\000\000\000\001\163\000\004\000\000\001\223\000\005\000\000\000\000\001U\000\006\000\000\002\b\002\t\002\007\000\000\002\006\003\128\001\211\000\000\000\007\000\000\002\011\002\012\002\n\000\000\000\000\000\000\000\000\001W\000\000\000\000\000\000\000\000\001\\\001^\001]\001X\001Z\001Y\000\000\000\000\000\000\000\000\000\000\003\134\003\147\000\000\003\135\000\000\003\136\000\000\000\000\003\129\000\000\000\000\000\000\000\000\003\146\000\000\000\000\003\145\002\016\002\015\000\000\000\000\001\213\002\005\002\r\000\000\000\000\000\000\000\000\000\000\002_\000\000\000\000\000\000\000\000\000\000\002H\002^\000\000\000\000\000\000\000\167\000\000\000\000\000\166\002L\002I\001?\000\255\000\000\000\000\000\000\000\000\001r\000\000\003\150\000\000\003\151\000\000\000\000\002&\002$\000\000\002%\000\b\000\000\000\t\000\000\002\144\002\145\002\143\000\000\002\142\000\000\000\n\000\000\002\147\002\148\002\146\000\000\002\150\000\000\000\000\000\000\002\136\000\000\000\000\002\138\000\000\002\132\000\000\002\134\000\000\002\139\000\000\002\140\000\000\002\133\002\131\002\151\001\217\002\141\000\000\002\153\000\000\002\152\000\000\002\154\000\000\003\030\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002\155\000\000\000\000\002\158\000\000\002\157\000\000\002\156\001!\000\000\000\000\000\000\000\000\001\"\002\159\000\000\000\000\000\000\003*\000\000\003)\000\000\000\000\000\000\000\000\003+\000\000\000\000\001T\000\000\000\000\000\000\000\000\000\000\0038\000}\000\000\000\000\001*\000\000\001K\001J\000\000\001\143\000\000\003(\001\209\001\207\000\000\000\000\000\000\000\000\003,\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003'\000\000\000\000\000\000\000\000\000\000\000\000\003&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0033\000\000\000\000\0032\000\000\003/\000\000\000\000\000\000\000\000\000\000\0030\000\000\000\000\000\000\0031\000\r\000\000\003-\000\000\003.") let error = - (187, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\006\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\003\000\000\000\000\000\000\000\000\000\000\000\016\002\012\000\000\004\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\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\0000\000\000\000\000\000\000\000\000\000\000\001\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\001\254\000\000\000\000\000\000\000\000={W\128\001\000\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\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\000\000\000\153\012@BT4\001@A\170\b\t\012\192\140\001\160\017\014\240$\000\bs!\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#Z8\000\000\000\196\000\004\000`F\000@\b\002\016\000\000\000\t\144\196\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\016\165\012\000\000\000\"\000\002\001 #\000 \004\001\b\000\000\000\004\200b\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\000\000\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\000\000\000\016\133\012\000\000\000\"\000\002\001 #\000 \004\001\b\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\026\209\192\000\000\006 \000 \003\0020\002\000@\016\128\000\000\000L\134 !\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\133(`\000\000\001\016\000\016\t\001\024\001\000 \b@\000\000\000&C\016\016\133\012\000\000\000\"\000\002\001 #\000 \004\001\b\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\000\000\bB\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!\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\bB\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!\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\132(`\000\000\001\016\000\016\t\001\024\001\000 \b@\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\002\020\161\128\000\000\004@\000@$\004`\004\000\128!\000\000\000\000\153\012@B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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!\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\132(`\000\000\001\016\000\016\t\001\024\001\000 \b@\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\004\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\004\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\b\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\016\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\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\004\000\000\000\000\b\000\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\024\136\000\004\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\128\000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\002\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\001\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\002\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\002\004\000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\016\000\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\bB\134\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\016\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\000\000\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\000\000\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\000z\246\175\000\002\000\004\000\000@\001\000\000\000\000\000\000\000\000\000\000\000\000\000!\n\024\000\000\000D\000\004B@F\000@\b\002\016\000\000\000\t\144\197\235\218\188\000\b\000\016\000\001\004\004\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\245\237^\000\132\000\b\000\000\130\002\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\003\215\181x\000\016\000 \000\002\000\b\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\016\000\000\000\000\000\000\015^\213\224\000@\000\128\000\b \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\b\000\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\003\215\181x\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\000\004\000\000\000\002\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\016\000\001\016\000\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\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$\128\000\144h\020\006s \000\016\144\b\000\000\b \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\146\000\002A\160P\025\204\128\000B@ \000\000 \128A\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\245\237^\000\004I\b\001 \208*\012\230@\000! \016\002\000\016@ \158\189\171\192\000\137!\000$\026\005A\156\200\000\004$\002\000@\002\b\004\016\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130z\246\175\000\002$\132\000\144h\021\006s \000\016\144\b\001\000\b \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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\000\000\000\000\000I\000\001 \208(\012\230@\000! \016\002\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$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\146\000\002A\160P\025\204\128\000B@ \004\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\002H\000\t\006\129@g2\000\001\t\000\128\016\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\000b`\155,\150\000\000\n\000@\128\000\r\208\bO\014\224\000\000\000\000\000\000\000\000\000\000\000\004\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={W\128\001\018B\000H4\138\131;\144\000\bH\004\000\128\004\018\b'\175j\240\000\"H@\t\006\129Pg2\000\001\t\000\128\016\000\130\001\004\000\000\000H\000\000\196A\006\001,\000\000\020\000\128\000\000\027 \000\026\029\192\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \016@\000\000\004\128\000\012D\019a\018\192\000\001@\b\000\000\0012\000\t\224\220\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \004\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\019 \000\158\r\192\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\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$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\146\000\002A\160P\025\204\128\000B@ \004\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\019 \000\158\r\192\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \016@\000\000\004\128\000\012D\019a\018\192\000\001@\b\000\000\0012\000\t\224\220\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \004\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\019 \000\158\r\192\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000`\002\b\004\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$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \016@\000\000\004\128\000\012D\019a\018\192\000\001@\b\000\000\0012\000\t\224\220\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \004\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\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\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\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\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\004\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\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\002\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\000\000\000\000\000\000\004\000\007\175j\240\000 \000@\000\004\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\014\189\171@\000\128\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\bB\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\002P \000\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\016\165\012\000\000\000\"\000\002\001 #\000 \004\001\b\000\000\000\004\200b\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\000\000\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\016\133\012\000\000\000\"\000\002\001 #\000 \004\001\b\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\004\160@\000\000\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\bB\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!J\024\000\000\000D\000\004\002@F\000@\b\002\016\000\000\000\t\144\196\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\000\000\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\bB\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\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\132(`\000\000\001\016\000\016\t\001\024\001\000 \b@\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\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\bB\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!\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\133(`\000\000\001\016\000\016\t\001\024\001\000 \b@\000\000\000&C\016\016\133\012\000\000\000\"\000\002\001 #\000 \004\001\b\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\000\000\bB\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!\n\024\000\000\000D\000\004\002@F\000@\b\002\016\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\001\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\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\001\000\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\bP\192\000\000\002 \000\"\018\0020\002\000@\016\128\000\000\000L\134 \000\000\000\000\000\000\000\000\000 \000\004\000\000\000\002\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\132(`\000\000\001\016\000\016\t\001\024\001\000 \b@\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\bP\192\000\000\002 \000 \018\0020\002\000@\016\128\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\004!C\000\000\000\b\128\000\128H\b\192\b\001\000B\000\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\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\000B\0200\000\000\000\136\000\b\004\128\140\000\128\016\004 \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\001\bP\192\000\000\002 \000\"\018\0020\002\000@\016\128\000\000\000L\134/^\213\224\000@\000\128\000\b \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\002\000\000\132(`\000\000\001\016\000\016\t\001\024\001\000 \b@\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\245\237^\000\004\000\b\000\000\130\002\000\016\000\000\000 \000\000\000\000\001\000\030\189\171\192\000\128\001\000\000\016@@\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\016\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\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\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\000\245\237^\000\004\000\b\000\000\130\0020\000\000\000\000\000\000\002\000\000\b\000\030\189\171\192\000\128\001\000\000\016@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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\001\235\218\188\000\b\000\016\000\001\004\004`\000\000\000\000\000\000\000\000\000\016\000={W\128\001\000\002\000\000 \128\140\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\004@\000\245\237^\000\004\000\b\000\000\130\0020\000\000\000\000\000\000\002\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\004\000\000\004\000\000\000\002\000\000\000\000\b\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\016\000\000\000\b\000\000\000\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\000\245\237^\000\004\000\b\000\000\130\0020\000\000\000\000\000\000\002\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\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\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000 \000@\000\004\016\017\128\000\000\000\000\000\000\016\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\128\001\235\218\188\000\b\000\016\000\001\004\004`\000\000\000\000\000\000\004\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\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\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\029{V\128\001\000\002\000\000\000\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\001\000\000\000\000\000\000\000\245\237^\000\004\000\b\000\000\130\002\000\016\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\bB\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!\n\024\000\000\000D\000\004B@F\000@\b\002\016\000\000\000\t\144\197\235\218\188\000\b\000\016\000\001\004\004\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\016\133\012\000\000\000\"\000\002\001 #\000 \004\001\b\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\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\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\003\215\181x\000\017$ \004\131H\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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$\128\000\144h\020\006s \000\016\144\b\001\000\b \016@\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\002H\000\t\006\129@g2\000\001\t\000\128\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\t \000$\026\005\001\156\200\000\004$\002\000\000\002\b\004\016\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\144\000\001\129\002,\146P\000\000 \000\002\000\0005@!\024#\000\000\000\000\000\000\000\000\000\000\000\000\016\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\245\237^\000\004I\b\001 \210*\012\238@\000! \016\002\000\016H \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\003\215\181x\000\017$ \004\131H\1683\185\000\000\132\128@\000\000A \130z\246\175\000\002$\132\000\144i\021\006w \000\016\144\b\001\000\b \016@\000\000\004\128\000\012\000\017`\018\128\000\001\000\000\000\000\001\162\000\b\193\024\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \004\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\002H\000\t\006\129@g2\000\001\t\000\128\016\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\0020\006\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\000\000\b \016@\000\000\004\128\000\012\000\017`\018\128\000\001\000\000\000\000\001\"\000\b\192\024\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \000\000 \128A\000\000\000\018\000\0000\000E\128J\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\000\000\130\001\004\000\000\000H\000\000\192\001\022\001(\000\000\016\000\000\000\000\018 \000\140\001\128\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000\000\002\b\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$\128\000\144h\020\006s \000\016\144\b\000\000\b \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\146\000\002A\160P\025\204\128\000B@ \000\000 \128A\000\000\000\018\000\0000\000E\128J\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\000\000\130\001\004\000\000\000H\000\000\192\001\022\001(\000\000\016\000\000\000\000\018 \000\140\001\128\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000\000\002\b\004\016\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\000\000\b \016@\000\000\004\128\000\012\000\017`\018\128\000\001\000\000\000\000\001\"\000\b\192\024\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \000\000 \128A\000\000\000\018\000\0000\000E\128J\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\000\000\130\001\004\000\000\000H\000\000\192\001\022\001(\000\000\016\000\000\000\000\018 \000\140\001\128\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000`\002\b\004\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$\128\000\144h\020\006s \000\016\144\b\000\000\b \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\146\000\002A\160P\025\204\128\000B@ \000\000 \128A\000\000\000\018\000\0000\000E\128J\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\000\000\130\001\004\000\000\000H\000\000\192\001\022\001(\000\000\016\000\000\000\000\018 \000\140\001\128\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000\000\002\b\004\016\000\000\001 \000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\015^\213\224\000D\144\128\018\r\"\160\206\228\000\002\018\001\000 \001\004\130\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\004@\000\245\237^\000\004I\b\001 \210*\012\238@\000! \016\002\000\016H \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\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\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\004\144\000\018\r\002\128\206d\000\002\018\001\000 \001\004\002\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\016\000\000 \000\000\000\000\000\128I\000\001 \208(\012\230@\000! \016\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\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\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\018@\000H4\n\0039\144\000\bH\004\000\000\004\016\b \000\000\000\000\000\000\000\000\128\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\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\004\000\000\000\000\000\000\004\144\000\018\r\002\128\206d\000\002\018\001\000 \001\004\002\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000={W\128\001\018B\000H4\n\1319\144\000\bH\004\000\128\004\016\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\015^\213\224\000D\144\128\018\r\002\160\206d\000\002\018\001\000 \001\004\002\b\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\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\004\000\000\000\000\000\000\000\000\004\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\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\016\133\012\000\000\000\"\000\002! #\000 \004\001\b\000\000\000\004\200b\245\237^\000\004\000\b\000\000\130\002\000\016\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\bB\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\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\b\000\002\016\161\128\000\000\004@\000@$\004`\004\000\128!\000\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\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000/^\213\224\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={W\128\001\000\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\000\000\000@\000\000\000\000\000\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\015\255\215\240@F\144\160\016\012b\184\238| \006z\131\000\004iD\n\t\235\218\188\000\b\000\016\000\001\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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%\002\000\000\000\b\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\003\000\016\005\001\004\136 \0041\000\000\004\128\004;@\144\000!\128\000\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016H\130\000C\016\000\000H\000C\180\t\000\002\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@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\002\000\000\000\000\000\000\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\016\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\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@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\001\000\016\005\001\004\136 \0041\000\000\004\128\004;@\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\000J\004\000\000\000\016\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\006\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\000@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\128\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\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 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\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\001\000\016\005\001\004\136 \0041\000\000\004\128\004;@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\016\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\016\001\000P\016H\130\000c\016\000\000H\000C\180\t\000\002\024\000\000\000\000\000\000\000\000\000\000\000\002\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\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\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\016\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\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@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\002\000\000\000\000\000\000\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\007\175j\240\000 \000@\000\004\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\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\b\000\128(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\246\175\000\002\000\004\000\000A\001\000\b\000\000\000\016\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\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\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\001\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\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\128\000\b\000\000\000\004\000\000\000\000\000\000\003\215\181x\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\128\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\003\024\128\000\002@\002\029\160H\000\016\192\000\007\175j\240\000 \000@\000\004\016\016\000\128\000\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\001\000\000\000@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\007^\213\160\000@\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\001(\016\000\000\000@\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\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\001\000\016\005\001\004\136 \0041\000\000\004\128\004;@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\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\002P \000\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\0000\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\024\000\000\000\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\136 \0041\000\000\004\128\004;@\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\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\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\001@A\"\b\001\012@\000\001 \001\014\208$\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\001\000\016\005\001\004\136 \0041\000\000\004\128\004;@\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\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\016\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\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\192\004\001@A\"\b\001\012@\000\001 \001\014\208$\000\b`\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\000\004\000@\020\004\018 \128\016\196\000\000\018\000\016\237\002@\000\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\016\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\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\128\000\b\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\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\128\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\003\024\128\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\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\001\000\000\000@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\002\000 \n\002\t\016@\bb\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\003\024\128\000\002@\002\029\160H\000\016\192\000\007\175j\240\000 \000@\000\004\016\016\000\128\000\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\001\000\000\000@\004\001@A\"\b\001\012@\000\001 \001\014\208$\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\004\000\000\000\002\000\000\000\000\000\000\001\235\218\188\000\b\000\016\000\001\004\004\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\001\000P\016H\130\000C\016\000\000H\000C\180\t\000\002\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@\004\001@A\"\b\001\140@\000\001 \001\014\208$\000\b`\000\003\215\181x\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\128\000\000 \002\000\160 \145\004\000\134 \000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018\r\002\128\206d\000\002\018\001\000 \001\004\002\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\026@\128@1\n#\185\144\128\025\234\012\000\017\133\016( \000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\001 \208(\012\230@\000! \016\002\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\002\000\004\000\000@\001\000\000\192\000\000\016\000\000\000\192\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\007\175j\240\000 \000@\000\004\000\016\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000$\128\000\144j\020\006\243 \000\016\144\b\001\000\b \016@\000\000\000\000\004\144\000\016\012\226\128\206d\000\006\018\001\000\168\001\004\018\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\018@\000@0\n\0039\144\000\024H\004\000\000\004\016\b \000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\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\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\003\215\181x\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@0\n\0039\144\000\024H\004\000\000\004\016\b \000\000\000\000\002H\000\t\006\129@g2\000\001\t\000\128\016\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\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\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$\128\000\128`\020\006s \0000\144\b\000\000\b \016@\000\000\000\000\004\144\000\016\012\002\128\206d\000\006\018\001\000\000\001\004\002\t\235\218\188\000\b\146\016\002A\160T\025\204\128\000B@ \004\000 \128A\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\002H\000\b\006\001@g2\000\003\t\000\128\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\001\000\000\003\002\004\025$\160\000\000@\000\004\000\000B\128B\004\006\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\235\218\188\000\b\146\016\002A\164T\025\220\128\000B@ \004\000 \144A\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\000I\000\001 \208(\012\230@\000! \016\002\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\004\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\000\000\000\000\000\000\000\000\000\000\000\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\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\002\000\000\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\004\016\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\146\000\002\001\156P\025\204\128\000\194@ \021\000 \130A\000\000\000\000\000\018@\000@3\138\0039\144\000\024H\004\002\160\004\016\b \000\000\002@\000\006&\t\178\201`\000\000\160\004\b\000\000\221\000\132\168\238\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\t\000\000\024\024 \201%\128\000\002\000\000 \000\0034\002\018\"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\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\004\144\000\016\012\194\128\206d\000\006\018\001\000\136\001\004\002\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\002H\000\b\006a@g2\000\003\t\000\128D\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\001\000\000\000\000\000\000\000\000\001\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\012\000\016`\018\128\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\016\000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000@\000\000\192\001\006\001(\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \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\146\000\002\001\128P\025\204\128\000\194@ \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\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000@\000\000\192\001\006\001(\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \016@\000\000\004\000\000\012\000\016`\018\128\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\016\000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000@\000\000\192\001\006\001(\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001\000\000\003\000\004\024\004\160\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \016@\000\000\004\000\000\012\000\016`\018\128\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\016\000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000@\000\000\192\001\006\001(\000\000\016\000\000\000\000\016 \000\129\001\128\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\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\b\016\000\000\000\000\000\000\146\000\002\001\156P\025\204\128\000\194@ \017\000 \130A\000\000\000\000\000\018@\000@3\138\0039\144\000\024H\004\002\160\004\016\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\129\000\000\000\000\000\000\t \000 \025\197\001\156\200\000\012$\002\001P\002\b$\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\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\000\000\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\140\000\000\000\004\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\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={W\128\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\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\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\016\000\001\000\000\000\000\000\000\000\000\000\016\000\018\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\000\000\000\000\000\000\000\000\000\000\000\245\237^\000\004\000\b\000\000\130\0020\000\000\000\000\000\000\002\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\001\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\b\000\000\000\000\000\000\000\146\000\002A\168P\027\204\128\000B@ \004\000 \128A\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\001\215\181h\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\000 \000\000\000\016\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\128\000\b\000\000\000\000\000\000\000\146\000\002A\168P\027\204\128\000B@ \004\000 \128A\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\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\004\000\000@\000\000\000\000\000\000\004\144\000\018\rB\128\222d\000\002\018\001\000 \001\004\002\b\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\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 \004 \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\254\191\130\0024\133\000\144j\021\199s\225\0003\212\024\001#\2020\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\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\000\000\018@\000@0\n\0039\144\000\024H\004\000\000\004\016\b'\175j\240\000\"H@\t\006\129Pg2\000\001\t\000\128\016\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \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\001$\000\004\003\000\1603\153\000\001\132\128@\000\000A\000\130\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\146\000\002\001\128P\025\204\128\000\194@ \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\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000\000\000I\000\001\000\192(\012\230@\000a \016\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\000\000\000\000$\000\000b`\155,\150\000\000\n\000@\128\000\rP\b\n\014\224\000\000\000\000\000\000\000\000\000\000\000\004\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={W\128\001\018B\000H4\138\131;\144\000\bH\004\000\128\004\018\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\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002@\000\006\"\t\176\137`\000\000\160\004\000\000\000\209\000\000\160\238\000\000\000\000\000I\000\001 \208(\012\230@\000! \016\002\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\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\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\001\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\004\128\000\012D\019a\018\192\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\136\000\005\003p\000\000\000\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \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\146\000\002\001\128P\025\204\128\000\194@ \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\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \016@\000\000\004\128\000\012D\019a\018\192\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000\146\000\002\001\128P\025\204\128\000\194@ \000\000 \128A\000\000\000\018\000\0001\016M\132K\000\000\005\000 \000\000\004\136\000\005\003p\000\000\000\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\128\b \016@\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\146\000\002\001\128P\025\204\128\000\194@ \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\000\002H\000\b\006\001@g2\000\003\t\000\128\000\000\130\001\004\000\000\000H\000\000\196A6\017,\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\t \000 \024\005\001\156\200\000\012$\002\000\000\002\b\004\016\000\000\001 \000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000$\128\000\128`\020\006s \0000\144\b\000\000\b \016@\000\000\004\128\000\012D\019a\018\192\000\001@\b\000\000\001\"\000\001@\221\235\218\188\000\b\146\016\002A\160T\025\204\128\000B@ \004\000 \128A\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\t \b$\026\005\001\156\200\000\004$\002\000@\002\b\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\001\255\250\254\015\b\210\020\002\001\140W\029\207\132\000\207P`\000\141(\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\002H\000\t\006\129@g2\000\001\t\000\128\016\000\130\001\004\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \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\001\000\000\000\000@\000\000\000\000\000\000\016\"\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\253\127\004\004i\n\001\000\196+\142\231\194\000g\1680\000F\148@\160\159\255\175\224\128\141!@$\026\133\241\220\248@\012\245\006\000H\210\138\020\019\255\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\015\255\223\248xF\144\160\016\012b\248\238|`\006z\147\000\004yG\026\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\255_\193\001\026B\128@1\138\227\185\240\128\025\234\012\000\017\165\016('\255\235\248 #HP\t\006\161|w>\016\003=A\128\0184\162\133\004\255\253\127\004\004i\n\001 \212+\142\231\194\000g\1680\002F\148A\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000I\000\001 \208(\012\230@\000! \016\002\000\016@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\016\001\164\b\004\003\016\162;\153\b\001\158\160\192\001\024Q\002\130\000\000\000\002\0004\129\000\128b\020Gs!\0003\212\024\000#\n P@\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\002\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\000I\000A \208(\012\230@\000! \016\002\000\016@ \128\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\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\004\144\000\018\r\002\128\206d\000\002\018\001\000 \001\004\130\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\001\000\026@\128@1\n#\185\144\128\025\234\012\000\017\133\016( \000\000\000 \003H\016\b\006!Dw2\016\003=A\128\0020\162\005\004\000\000\000\000\000\000\000\000\000\002\000\000@\000\000\000 \000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000@\000\b\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\002 \000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\016\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000 \000\004\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\004@\000\000\000\000\000\000\000\000\000\000\002\000\000@\000\000\000 \000\002\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\002 \000\000\000\000\000\000\000\000\000\000\001\000\000 \000\000\000\016\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\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\128\000\144h\020\006s \000\016\144\b\001\000\b \016@\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\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\245\237^\000\004I\b\001 \210*\012\238@\000! \016\002\000\016H \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\016\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\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\255\175\224\128\141!@$\026\133q\220\248\192\012\245\006\000H\210\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\255\223\248xF\144\160\016\012b\248\238|`\006z\147\000\004yG\026\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\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\255\253\127\004\004i\n\001\000\198+\142\231\198\000g\1680\000F\148@\160\128\000\000\000\000\000\000\000\004\002\000\000\000\000\128\000\000\000\000@\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\127\254\191\130\0024\133\000\128c\021\199s\227\0003\212\024\000#J 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\000\000\000\000\000\000\018\000\00010M\150K\000\016\005\000 H\000\006\232\004\005\007p\000\000\000\000\000\000\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\002\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\0024\133\000\144j\021\199s\227\0003\212\024\001#J V`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\b\210\020\002\001\140W\029\207\140\000\207P`\000\141(\129Y\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\237^\000\004I\b\001 \210*\012\238@\000! \016\002\000\016H \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\000F\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\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\002\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\b\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\003\215\181x\000\016\000 \000\002\b\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\004\000\000\000\000\000\000\000\000\004\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\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\003\215\181x\000\016\000 \000\002\b\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\004\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\016\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\002H\000\t\006\161@o2\000\001\t\000\128\016\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\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\007^\213\160\000@\000\128\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\128\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\002H\000\t\006\161@o2\000\001\t\000\128\016\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\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?\255_\193\001\026B\128H5\n\227\185\241\128\025\234\012\000\145\165\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\000\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\004\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\000\000\000\000\000\000\000\000\000\000\127\254\191\130\0024\133\000\144j\021\199s\227\0003\212\024\001#J 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\128\000\128\000\b\192\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\004\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\128\r @ \024\133\017\220\200@\012\245\006\000\b\194\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\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\016\000\031\255\191\240\128\141!\192&\026\133\241\220\248\192\028\245&\000\200\242\142\181\152\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\015\255\215\240@F\144\160\016\012b\248\238| \006z\131\000\004yG\026\b\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\000\004\000\000\000\000?\255_\193\001\026B\128@1\139\227\185\240\128\025\234\012\000\017\229\028h \000\000\000\000\000\000\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\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\003\255\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\015\255\215\240@F\144\160\018\rB\248\238| \006z\131\000$yG\026\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\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\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\b\000\000\000\000\000\000\000\000\000\000 \000?\255_\193\001\026B\128@1\139\227\185\240\128\025\234\012\000\017\165\020( \000\000\000\000\000\000\000\001\000\128 \000\000\000\000\000\000\000\016\000\000\128\000\255\253\127\004\004i\n\001\000\198/\142\231\194\000g\1680\000F\148P\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\004\002\001\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?\255_\193\001\026B\128H5\011\227\185\240\128\025\234\012\000\145\165\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\004\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 \002\0020\000\000\000\016\000\000\000\000\b\000\000\000\000\000\000\000\000@\003\001\000\000\000\000\000\b\000\000\000 \000\000@\005\255\250\254\b\b\210\020\002\001\140W\029\207\132\000\207P`\000\141(\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\"\001\128\128\000\000\000\000\004\000\000\000\016\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\031\255\175\224\128\141!\192&\026\133q\220\248@\028\245\006\000H\210\136\148\027\255\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\001\255\250\254\b\b\210\028\002a\168W\029\207\132\001\207P`\004\141(\137A\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\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\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\b\000\000\000\000\000\000\000\000\000\000 \000?\255_\193\001\026B\128H5\011\227\185\240\128\025\234\012\000\145\165\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\004\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128@ \000\000\000\b\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\007\255\235\248 #HP\t\006\161\\w>0\003=A\128\0184\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\254\191\128\002$\133\000\128`\021\006s\224\0000\144\b\000\000J P@\000\000\000\000\004\144\004\018\r\002\128\206d\000\002\018\001\000 \001\004\002\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\253\127\000\004I\n\001\000\192*\012\231\192\000a \016\000\000\148@\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\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\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={W\128\001\000\002\000\000 \000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\192\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\002\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\b\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\003\215\181x\000\016\000 \000\002\b\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\004\000\000\000\000\000\000\000\000\004\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\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\b\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$\128\000\144j\020\006\243 \000\016\144\b\001\000\b \016@\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\029{V\128\001\000\002\000\000\000\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\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\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=\255_\192\001\018B\128@0\n\1319\240\000\024H\004\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\000H\000\000\192\193\006I,\000@\016\000\001 \000\024\160\016\016\017\128\000\000\000\000\000\000\b\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$\128\000\144j\020\006\243 \000\016\144\b\001\000\b \016@\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\002$\132\000\144i\021\006w \000\016\144\b\001\000\b$\016@\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\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\002\000\002\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\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\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\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\001\235\218\188\000\b\000\016\000\001\004\004`\000\000\000\000\000\000\004\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\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\t \000$\026\133\001\188\200\000\004$\002\000@\002\b\004\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\004\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\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\014\189\171@\000\128\001\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\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\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\146\000\002A\168P\027\204\128\000B@ \004\000 \128A\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\004\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\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\128\000\000\b\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\016\000\016\001\001\024\000\000\000\b\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\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\b\000\000\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\016 \000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\253\127\004\004i\n\001\000\198+\142\231\194\000g\1680\000F\148@\160\128\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\004\144\000\018\r\002\128\206d\000\002\018\001\000 \001\004\002\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000?\255_\193\001\026B\128H5\n\227\185\240\128\025\234\012\000\145\229\024h \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\015\255\215\240\000@\000\128\000\b\000 \000\024\000\000\002\000\000\000\024\002\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\004\000\000\000\000\000\000\000\002\255\253\127\004\004i\n\001\000\198+\142\231\194\000g\1680\000F\148@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\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\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\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\000I\000\001 \208(\012\230@\000! \016\002\000\016@ \128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\b\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\004\144\000\018\r\002\128\206d\000\002\018\001\000 \001\004\002\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\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\004\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\001$\000\004\131@\1603\153\000\000\132\128@\b\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\026@\128@1\n#\185\144\128\025\234\012\000\017\133\016( \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\004\000i\002\001\000\196(\142\230B\000g\1680\000F\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\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\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\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\000I\000\001 \208(\012\230@\000! \016\002\000\016@ \128\000\000\000\000\000\000\128\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\255\215\240\000@\000\128\000\b\000 \000\024\000\000\002\000\000\000\b\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\191\255_\192\001\000\002\000\000 \000\128\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\255\253\127\000\004\000\b\000\000\128\002\000\001\128\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\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\b\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000 \000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\b\007\001\004\137 B\001\000\000\004\128\004)B\144\0001\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\016\000\000\000\000\000\000\000\000\016\001\000P\016H\130\000\002\000\000\000H\000C\180\t\000\002\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\b\002\128\128D\016\000\016\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000@\000\000\000 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002 \000\000\000\000\000\000\000@@\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\030\189\171\192\001\192A\"\b\016\128@\000\001 \001\n@\164\000\012`\000\003\215\181x\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\000 \002\000\160 \145\132\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\b\002\128\130D\016\000\016\000\000\002@\002\029\160H\000\016\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\128\000\000\000@\004\001@A\"\b\000\b\000\000\001 \001\014\208$\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\128\000\000\016\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\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\004\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\030\189\171\192\001\192A \b\016\128@\000\001 \001\n@\164\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\000z\246\175\000\007\001\004\000 B\001\000\000\004\128\004)\002\144\0000\128\000\000\000 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\001\000P\016H\130\000\002\000\000\000H\000C\180\t\000\002\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\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\001\000\016\005\001\004\136 \000 \000\000\004\128\004;@\144\000!\128\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\128\b\002\128\130D\016\000\016\000\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000P\016H\130\000\002\000\000\001H\000C\180\t\000\002\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\020\004\018 \128\016\128\000\000R\000\016\237\002@\000\135\000\000\000\000\128\b\002\128\130D\016\000\016\000\000\002@\n\029\160H\000\016\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\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\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\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\030\189\171\192\000\128\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\000\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\015^\213\224\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\016\001\000P\016H\130\000\003\000\000\000H\000C\180\t\000\002\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\002@\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\002\000\000\000\000\000\000\000\b\000\000\000\004\000@\020\004\018 \128\000\128\000\000\018\000\016\237\002@\000\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\012\000\000\000\000\b\000\000\001\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\000\160 \145\004\000D\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\020\004\018 \128\000\128\000\000\018\000\016\237\002@\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\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\016H\130\000\002\000\000\000H\000C\180\t\000\002\024\000\000\000\002\000 \011\130\t\016@\001@\000\000)\000\bv\129 \000C\128\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\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\004\000@\020\004\018 \128\000\128\000\000\018\000\016\237\002@\000\134\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\002\000 J\002\t\016@\000@\000\000\t\000\bv\129 \000C\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\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\001\000\000\000\000\128\b\018\128\130D\016\000\016\000\000\002@\002\029\160H\000\016\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\001\128\000\000\000\001\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\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 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\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\016H\130\000\002\000\000\000H\000C\180\t\000\002\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\000P\b@\128(\b$A\000\001\128\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\005\001\004\136 \0000\000\000\004\128\004;@\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\000\004\000@\020\004\018 \128\000\192\000\000\018\000\016\237\002@\000\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\016\001\000P\144H\130\000J\000\000\001H\000C\180\t\000\002\028\000\000\000\002\000 \n\002\t\016@\000@\000\000\t\000(v\129 \000C\000\000\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\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\016\001\000P\016H\130\000\003\000\000\000H\000C\180\t\000\002\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@\004\001@A\"\b\000\012\000\000\001 \001\014\208$\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\002\000\000\000\000\000\000\000\b\000\000\000\004\000@\020\004\018 \128\000\128\000\000\018\000\016\237\002@\000\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\128\000\000\000\b\000\000\001\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\b\000\000\004\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\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\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\b\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018 \128\000\128\000\000\018\000\016\237\002@\000\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\001\000\000\000\000\000\000\000\004\000\000\000\002\000 \n\002\t\016@\000@\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\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\002\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\004\001@A\"\b\000\b\000\000\001 \001\014\208$\000\b`\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 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\023\004\018 \128\002\128\000\000R\000\016\237\002@\000\135\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\235\222\188@\028\004\018 \129\b\132\000\000\018\000\016\237\002@\000\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\016\001\000P\016\b\130\000\002\000\000\000H\000C\180\t\000\002\024\000\000\000\002\000 \011\146\t\016@\t`\000\000)\000\bv\129 \000C\128\000\000\000@\004\001@A\"\b\001\b\000\000\001 \001\014\208$\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\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 \002\000\160 \145\004\000\004\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\003\215\189x\1288\b$A\002\017\136\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\005\001\004\136 \000 \000\000\004\128\004;@\144\000!\128\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\128\b\002\128\130D\016\000\016\000\000\002@\002\029\160H\000\016\192\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\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\001\000\016\005\001\004\136 \000 \000\000\004\128\004;@\144\000!\128\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\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\003\215\181x@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\146\000\002A\160p\025\204\128\000B@ \004\000 \128A\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\002A\160P\025\204\128\000B@ \004\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\000\000\000\000\000\031\255\191\240\128\141!@$\030\135q\220\248@\012\245&\000H\210\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\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\007\255\239\252 #HP\t\007\161\\w>\016\003=I\128\0184\162\005f\247\253\255\128\004\000\b\000\000\128\002\000\000\000\000\000\001\000\000\000\000\000\000\030\255\191\240\000\128\001\000\000\016\000@\000\000\000\000\000 \000\000\000\000\000\003\223\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\000!\n\024\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\004!C\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\132(`\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\016\133\012\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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_\193\225\026B\128@1\138\227\185\240\128\025\234\012\000\017\165\016('\255\235\248 #HP\b\0061\\w>\016\003=A\128\0024\162\005\004\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\128\141!@ \024\197q\220\248@\012\245\006\000\b\210\136\021\152\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\000\000\128@ \000\000\000\000\000\000\000\000\004\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\007\255\235\248 #HP\t\006\161\\w>\016\003=A\128\0184\162\005f\000\000\000\000\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 \025\197\001\156\200\000\012$\002\001P\002\b$\016\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\015\255\215\240xF\144\160\016\012b\184\238| \006z\131\000\004iD\n\t\255\250\254\b\b\210\020\002\001\140W\029\207\132\000\207P`\000\141(\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\007\255\235\248 #HP\b\0061\\w>\016\003=A\128\0024\162\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\240\141!@ \024\197q\220\248@\012\245\006\000\b\210\136\020\019\255\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=\255\127\224\001\000\002\000\000 \000\128\000\000\000\000\b@\000\000\000\000\000\000\016\133\012\000\000\000\000\000\002\000\000#\000\000\000\001\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000F\000\000\000\002\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={W\128\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\000\002\000\007\175j\240\000 \000@\000\004\016\017\128\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\003\215\181x\000\016\000 \000\002\b\b\192\000\000\000\000\000\000\000\000\000 \000z\246\175\000\002\000\004\000\000A\001\024\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\b\128\001\235\218\188\000\b\000\016\000\001\004\004`\000\000\000\000\000\000\004\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\136\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\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\b\128\001\235\218\188\000\b\000\016\000\001\004\004`\000\000\000\000\000\000\004\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\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\001\255\250\254\b\b\210\020\002A\168W\029\207\132\000\207P`\004\141(\131A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\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\002\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\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!\n\024\000\000\000\004\000\004\000\000F\000\000\000\002\016\000\000\000\000\000\196\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\000\000\000\000\000\000\000$\128\000\144h\028\006s \000\016\144\b\001\000\b \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\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\000\000\000\000\000\000\000\000\t \000$\026\005\001\156\200\000\004$\002\000@\002\b\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\127\254\255\194\0024\133\000\144z\029\199s\225\0003\212\152\001#J 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\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\000\000\000\031\255\191\240\128\141!@$\030\133q\220\248@\012\245&\000H\210\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\127\254\255\194\0024\133\000\128c\021\199s\225\0003\212\152\000#J V`\000\000\000\000\000\000\000\002\001\000\000\000\000\000\000\000\000\000 \000\000\000\197\255\251\255\b\b\210\020\002\001\140W\029\207\132\000\207R`\000\141(\129Y\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 #HP\t\006\161\\w>\016\003=I\128\0184\162\005f\255\253\255\132\004i\n\001\000\198+\142\231\194\000g\1690\000F\148@\172\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\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\015\255\223\248@F\144\160\018\rB\184\238| \006z\147\000$iD\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?\255\127\225\001\026B\128H5\n\227\185\240\128\025\234L\000\145\165\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\255\253\255\132\004i\n\001 \212+\142\231\194\000g\1690\002F\148@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bB\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\000\000\255\253\255\132\004i\n\001 \212+\142\231\194\000g\1690\002F\148@\172\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\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\015\255\223\248@F\144\160\018\rB\184\238| \006z\147\000$iD\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\132(`\000\000\000\016\000\016\000\001\024\000\000\000\b@\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\000\000\000\000\000\000\004\000\002\000\000\000\000\000\000\000\000\002\004\137p\003\000\000\000\128\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\016\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\128\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\002\000\000\016 \000\000\000\000\000\000\000\016\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\b\000\000@\128\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\001\000\000\000\000\000\000\001\000\000\b\016\000\000\000\000\000\000\000\b\000\000\000\004\000\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\004\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\b\000\000\000\001\000\000\000\000\000\000\000\000\016`\004\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\004\000\000\000\000\000\000\000\000\000\000\000\000\bp\003\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\004\024\001\128\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\131\000 \000\000\b\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\012\000\128\004\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 \192\b\000\000\002\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\016`\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\135\0000\000\000\b\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\016`\006\000\000\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\002\012\000\128\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\128\016\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b0\000\000\000\000\128\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\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\131\0000\000\000\b\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\016`\004\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\012\000\128\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\128\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\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\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\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\016\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\000\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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") + (188, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\003\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\0000\000\000\000\000\000\000\000\000\000\000\000\128\016`\000\000 C\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\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\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\192\000\000\000\000\000\000\000\007\175j\240\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\016\133\012\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\tP\208\002\128\131T\016\018\025\129\024\003@\"\029\224H\000\016\230C\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\017\173\028\000\000\0001\000\001\000\024\017\128\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\nP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\000\000\000&C\016\016\133\012\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\128\000\000\000\000\000\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\026\209\192\000\000\003\016\000\016\001\129\024\001\000 \b@\000\000\000&C\016\016\133\012\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\016\165\012\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\016\133\012\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\016\133\012\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\002\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\016\133\012\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\016\133\012\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\016\133\012\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\016\133\012\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\016\165\012\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\016\133\012\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\016\133\012\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\016\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\016\000\000\000\b\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\b\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\004\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\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\016\000\000\000\000 \000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\0001\016\000\b\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\000\001\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\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\b\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\b\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\002\004\000\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\b\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\016\133\012\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\016\133\012\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\b\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\004\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\016\133\012\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\128\000\000\000\000\000\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\000z\246\175\000\001\000\002\000\000 \000\128\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\007\175j\240\004\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\000@\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\016\000 \000\002\000\b\000@\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\016\000\000\000\b\000\000\000\000\000\000\007\175j\240\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\000\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\133\012\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\007\175j\240\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\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\002\000\000\"\000\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\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\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\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b'\175j\240\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\n\1319\144\000\bH\004\000\128\004\016\b \000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\002@\000\003\019\004\217d\176\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\000\000\000\000\000\000\000\016\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\000z\246\175\000\001\018B\000H4\138\131;\144\000\bH\004\000\128\004\018\b'\175j\240\000\017$ \004\131@\1683\153\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\00010M\150K\000\000\005\000 @\000\006\232\004'\199p\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\005\000 \000\000\006\200\000'\135p\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\005\000 \000\000\006\200\000'\135p\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\0001\016M\132K\000\000\005\000 \000\000\004\200\000'\131p\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\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\192\004\016\b \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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\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\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\016\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\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\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\000\000\000\000\000\000\004\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\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\001\000\000\000\000\000\000\000\000\000\000\004\000\007\175j\240\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\003\175j\208\000\016\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\018\129\000\000\000\002\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\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\016\165\012\000\000\000\017\000\001\000\144\017\128\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\016\133\012\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\016\133\012\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\002\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\016\133\012\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\016\133\012\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\016\133\012\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\016\133\012\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\001(\016\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\nP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\000\000\000&C\016\016\133\012\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\128\000\000\000\000\000\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\nP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\000\000\000&C\016\016\133\012\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\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\016\133\012\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\016\133\012\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\b\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\004\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\016\133\012\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\016\133\012\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\016\133\012\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\002\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\016\133\012\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\016\133\012\000\000\000\017\000\001\016\144\017\128\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\000\000\000\000\000@\007\175j\240\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\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\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\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\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\246\175\000\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\000\002\000\007\175j\240\000\016\000 \000\002\b\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\007\175j\240\000\016\000 \000\002\b\b\192\000\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\002\000\000 \128\140\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\002 \000z\246\175\000\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\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\016\000\000\016\000\000\000\b\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\016\000\000\000\b\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\246\175\000\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\016\000 \000\002\b\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\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\007\175j\240\000\016\000 \000\002\b\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\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\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:\246\173\000\001\000\002\000\000\000\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\001\bP\192\000\000\001\016\000\016\t\001\024\001\000 \b@\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\001\bP\192\000\000\001\016\000\017\t\001\024\001\000 \b@\000\000\000&C\023\175j\240\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\016\133\012\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\b\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\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\000z\246\175\000\001\018B\000H4\n\1319\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\000\004\016\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\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\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\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\0000 E\146J\000\000\004\000\000@\000\006\168\004#\004`\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\007\175j\240\000\017$ \004\131H\1683\185\000\000\132\128@\b\000A \130z\246\175\000\001\018B\000H4\138\131;\144\000\bH\004\000\128\004\016\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\007\175j\240\000\017$ \004\131H\1683\185\000\000\132\128@\000\000A \130z\246\175\000\001\018B\000H4\138\131;\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\192\004\016\b \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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\000\004X\004\160\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\175j\240\000\017$ \004\131H\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\175j\240\000\017$ \004\131H\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\004\000\000\000\000\000\000\000\000\000\000\128\000\001\000\000\000\000\000\004\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@\b\000A\000\130\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\001$\000\004\131@\1603\153\000\000\132\128@\000\000A\000\130\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\128\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\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\002\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\007\175j\240\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\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\007\175j\240\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\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\007\175j\240\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\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\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\016\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\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\001\bP\192\000\000\001\016\000\017\t\001\024\001\000 \b@\000\000\000&C\023\175j\240\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\016\133\012\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\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\016\133\012\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\001\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\023\175j\240\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\007\175j\240\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\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\007\255\235\248 Q\164(\004\003\024\174;\159\b\001\158\160\192\001\026Q\002\130z\246\175\000\001\000\002\000\000 \000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\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\001(\016\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\003\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000(\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\128\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\018\129\000\000\000\002\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\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\0000\001\000(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\016\001\000(\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\016\001\000(\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\002\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\016\001\000(\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\016\001\000(\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\016\001\000(\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\016\001\000(\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\0000\001\000(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\016\001\000(\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\016\001\000(\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\016\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\016\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\003\024\128\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\b\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\016\001\000(\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\128\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\000z\246\175\000\001\000\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\000\000\000\000\016\001\000(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\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\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\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\016\000\000\000\b\000\000\000\000\000\000\007\175j\240\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\016\001\000(\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\016\001\000(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\003\175j\208\000\016\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\018\129\000\000\000\002\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\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\0000\001\000(\b$A\000!\136\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\016\001\000(\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\016\001\000(\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\002\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\016\001\000(\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\016\001\000(\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\016\001\000(\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\016\001\000(\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\001(\016\000\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\003\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000(\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\128\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\003\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000(\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\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\016\001\000(\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\016\001\000(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\128\000\016\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\016\001\000(\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\016\001\000(\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\016\001\000(\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\002\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\016\001\000(\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\016\001\000(\b$A\0001\136\000\000$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\016\000\001\000\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128\128\004\000\000\000\b\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\004\000\000\001\000\016\002\128\130D\016\002\024\128\000\002@\002\029\160H\000\016\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\001\000\016\002\128\130D\016\003\024\128\000\002@\002\029\160H\000\016\192\000\007\175j\240\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\016\001\000(\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\000\000\000\000\016\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\002\000\000\000\000\000 A\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\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\016\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\002\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\254\191\128\001\000\002\000\000 \000\128\000`\000\000\b\000\000\000`\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\246\175\000\001\000\002\000\000 \000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\000\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\n\1319\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\007\175j\240\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\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\002\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\000\000\000\000\000\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\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\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\0000 A\146J\000\000\004\000\000@\000\004(\004 @`\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\007\175j\240\000\017$ \004\131H\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\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\128\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\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$\000\004\0038\1603\153\000\001\132\128@*\000A\004\130\000\000\000\000\000\018@\000@3\138\0039\144\000\024H\004\002\160\004\016\b \000\000\002@\000\003\019\004\217d\176\000\000P\002\004\000\000n\128BTw\000\000\000\000@\000\000\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\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\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\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\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\002@\000\003\003\004\025$\176\000\000@\000\004\000\000f\128BDF\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@3\n\0039\144\000\024H\004\002 \004\016\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\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\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\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\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\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\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\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\0000\000A\128J\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130\000\000\000 \000\0000\000A\128J\000\000\004\000\000\000\000\004\b\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\018@\000@3\138\0039\144\000\024H\004\002\160\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\000\000 @\000\000\000\000\000\001$\000\004\0038\1603\153\000\001\132\128@\"\000A\004\130\000\000\000\000\000\018@\000@3\138\0039\144\000\024H\004\002\160\004\016\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\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\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\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\016\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\017\128\000\000\000\128\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\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\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\246\175\000\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\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\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\001\000\001 \000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\016\000\018\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128\140\000\000\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\002\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\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\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:\246\173\000\001\000\002\000\000\000\000\128\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\001$\000\004\131P\1607\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\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\016\000\000\000\b\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\000\018@\000H5\n\003y\144\000\bH\004\000\128\004\016\b \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\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\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\007\255\235\248 Q\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\001$\000\004\131@\1603\153\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\n\1319\144\000\bH\004\000\128\004\016\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\018@\016H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\254\191\131\197\026B\128@1\138\227\185\240\128\025\234\012\000\017\165\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \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\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\007\255\235\248 Q\164(\004\003\016\174;\159\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128H5\011\227\185\240\128\025\234\012\000\145\165\020('\175j\240\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\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\002\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\018@\000@0\n\0039\144\000\024H\004\000\000\004\016\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\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\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\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\00010M\150K\000\000\005\000 @\000\006\168\004\005\007p\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\007\175j\240\000\017$ \004\131H\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\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\0001\016M\132K\000\000\005\000 \000\000\006\136\000\005\007p\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\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\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\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\192\004\016\b \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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\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\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\000\000\000\000\000\018@\000H4\n\0039\144\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000P\002\000\000\000H\128\000P7\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\235\248N\204\000\000\000\000\000\000\004\178\007\130\000\015\007\182N\158\000\000\000\000\006\246\000\000\007\b\007\216N\158\007L\000\000\000\000\000\000\001rO\134\000\000\000\000\000\000\007V\b`\000\000\bd\000\000\027\142\002\218KH\007\154\019\194\000\000O\182KH\007\158\019\194\000\000\000\000\000\127\b\154\000\000\000\000\000\000\0008\000\000\000\000\0216\000\000\000\000\000\000\000\000\000\000\000\000\000\000P\0066\234\007\184\000\000\000\000P\006\000\000P\006K&\000\000\000\000C~\000\127\000\000\0216\003F\025n\0216\"\1386\234\000\0006\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000Q\176K&Z\182K&[HK&[\182K&\000\000K&\000\000K&\\\030K&\\\140K&\\\246K&]dK&]\204K&^:6\234\007\228K&\000\000K&^\164K&_\018K&_z\003t\022\158\000\000\000\000\003\138\024\006\000\000\000\000\000\000\007\190\000\0006\234\007\188\000\000\000\000\000\127\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\196\000\0006\234\007\200\000\000\000\000\000\127\000\000\000\000\000\000\000\000\000\000\007\208\000\000\000\000\007\212K&\000\000\000\000\007\214\000\000\000zH(\b\1486\234\b\\\000\000\000\000K&\000z\000\000\007\226\000\000\007\2326\234\000\000\026x\007\234\000\000\000\000\b\190\000\000\026x\007\250\000\000\000\000\007\248\000\000\000\000\005\172\000\000\b\234\000\000P\182KH\b\n\019\194\000\000\000\000\b\144\000\000\b\022\019\194\000\000\000\000\002\2040\244\000\0000\244\000\000\b\n\000\000\002\204\000\000\017n%B\019\156\000\000\006$\019\156\000\000\019\156\019\156\000\000\000\000\019\156\000\000\019\156\000\000\bN\b\134\019\156\000\000\019\156\000\000\019\156\000\000\019\156\000\000\006\210\019\156\000\000\019\188\019\156\000\000\000\000\019\156\000\000\019\156\000\000\b^\b\140\019\156\000\000\019\156\000\000\019\156\000\000\019\156\000\000\019\194\019\156\000\000\000\000\019\156\000\000\019\156\000\000\002\236\000*\b8\019\156\000\000\019\188\000*\b<\019\156\000\000\000\000\019\156\000\000\019\156\000\000\019\156\000\000\bl\b\154\019\156\000\0000\244\bJ\000\000\019\194KH\bD\019\156\000\000\000\000\000\015\000\000\001D\000\015\000\000\000\000\000\000\t2\000\000\0040KH\bN\019\156\000\0002\242KH\bP\019\156\000\000\000\000G \019\156\000\000\007\142\019\156\000\000\019\198\019\156\000\000\000\000\019\156\000\000\019\156\000\000\b\136\b\184\019\156\000\000\019\156\000\000\019\156\000\000\019\156\000\000\b@\019\156\000\0002\242\019\156\000\000\000\000\019\156\000\000\019\156\000\000\b\146\b\192\019\156\000\000\019\156\000\000\019\156\000\000\019\156\000\000D\030\019\156\000\000\000\000\019\156\000\000\019\156\000\000\004~\000*\bh\019\156\000\000D\030\000*\bj\019\156\000\000\000\000\019\156\000\000\019\156\000\000\019\156\000\000\b\158\b\204\019\156\000\000D:KH\bt\019\156\000\000\000\000\006ZKH\bv\019\156\000\000DdKH\bx\019\156\000\000\000\000\000\000\000\000\000\000\000\000\tH6\234\b\132\029\220\tL6\234\b\140\tL0\244\000\000\000\000\000\0000\244\000\127\000\000\002\2066\2340\218\000\000SN6\234\b\150\000\000\026x\b\150\000\000\b\156\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000S\2466\234\000\000S\246\000\000S\246T\128\026x\b\160T\128\000\000\000\000ZR\000\127\000\000\0216\b\162\000\0006\234\b\162\000\000\000\000\000\127\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0006\234\000\b6\234\b\166\000\000\000\0000\2180\218 \248\001\228\tf6\234\000\000\t,\000\000\000\000\000\127\000\000\"\014\000\000\b\2260\218\000\000\b\2220\218\000\000\000\180\000\000\000\000\028\018T\128\029TT\128!\172T\1284\164T\128\000\000T\128\000\000T\128U\180T\128_\232T\128`\224Ub?@Ub@T\026x\t\"\000\000\000\000B\210\000\000\n\014\000\000\001r\t\2306\234\t\172\000\000\t\2366\234\t\178\000\000\000\003\000\000\007B\007B\001r\000\000\001r\000\000\017n\007B\007B\000\000\000\000\000\000\000\000\000\000\000\000\t\2526\234\t8\029\220\030\180\000\127\n\"\000\000\n\006E&\n(E&\n*6\234\tF\029\220\029\220\006\244\006\220\005\198\000\020\006\220\000\000\000\000\006d\007X\000\000\006x\bh\000\000\000\000\000\000\000\000\000\000\tH\000\000\000\000\n0\000\000\n2\000\000\000\000\nl\n\0246\234\tT\n>\000\000\n \0216\t\\\029\220\000\000\000\000\t\136\000\000\000C\000\000\005\206\000\000\000\000\001r\000\000\t\222\000\000\r\018\0016\000\000\r\018\000\000\000\000\"\014\000\000\0016\000\000\000\000\n*\000\000\r\018\000\000\n,\0216\tj\nT\000\000\001\166\000\000\n$\000\127\tr\n:N\158\tx\004\158\000\0006\234\nb\000\000\nJN\158\t\134\nn\000\000\00506\234\nv\000\000\n~\000\000\027\142\000\127\005\1786\234\n\128\000\000\n\140\000\000\000\000\000\000\n*\000\000\000\000\0016\000\000\007B\000\000\001\200\000\000\000\000\001`\030\180\000\000\001`\000\000\000\000\t\170\000\000\002\170\000\003\029\220\000\000\004Z\000Q\004Z\000\000\000C\000\000\007B\000\000\007B\000\000\000\000\000\000\t\164\000\000\000\000\t\178\000\000\001~\005\206\000I\004Z\000\000\000\000\000\000\000\150\000\000\007B\000\000\001~\000\000\000\000\007 \000Q\017n\000\000\018\006\000\000\b\182\017n\000\000\000\000\b\182\000\000\000\000\t\176\000\000\000\000\t\182\000\000\002x\007B\000\000\002x\000\000\000\000\n4\000\000\0016\000\000\007B\000\000\000\000\000\000\018\214E\164\000\000\n\158\000\000\018\214\000\000\n\160\000\000\n\162\000\0000\244\000\127\004\216\000\0006\234\n\164\000\000\006\002\nt\000\127\t\194\n\142N\158\t\202\005\250\000\0006\234\n\186\000\000\006f\000\0006\234\n\190\000\000\027\142\000\127\006\154\000\0006\234\n\194\000\000\004\148\018\214\000\000\"\014\007R\000\0006\234\n\196\000\000\000\000\000\000\003\128\000\000\n\166\0216\t\226\n\202\000\000\003\018\000\000\n\158\000\127\t\236\n\180N\158\t\240\007v\000\0006\234\n\216\000\000\007\190\000\0006\234\n\218\000\000\027\142\000\127\007\192\000\0006\234\n\220\000\000\004\148\000\000\000\000\t\250\000\000\003\128\b\148\nx\000\000\000\000\000\000\nz\000\000\0044\000\003\000\000\017n\n\216\000\000\000\0006\234\n2\007B\000\000\n\004\000\000\002\244\000\0000\244\000\000\000\000\003\202\017n\000\000\017n\000\000\t\246\000\000\003\202\000\0006\234\003\2086\234\000\0006\234\000\000\t\250\000\000\003\208\000\0006\234\003\208\t\252\000\000\029\220\004\162\029\220\000\000\029\220\000\000\n\000\000\000\004\162\000\0006\234\003\208\n\004\000\0000\244\005@0\244\000\0000\244\000\000\n\006\000\000\005@\000\0006\234\003\208\n\b\000\000\000\000\0290\000\000\000\000\n|\023\222\000\000\000\000\000\000\000\000\000\000\nP\004Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\023\222\000\000\000\n\007f\000\000\nR\000\127\000\000\000\000\000\000\006T\007f\000\000\000\000\000\000\000\000\n\176\000\000\000\000\000\000\000\000 \162#\130\000\000\022v\000\000\023\222\000\000\006\176\023\222\000\000\006\220\001\246\001\246\000\000\006\218\001\246\000\000\n(\000\000\000\000\000\000\000\000\n\180\000\000#\252\000\000%B\023\222\000\000\004,\023\222\000\000\n\184\000\000\023\222\n\188\000\000W\238A\154\n\194\000\000\n\196\000\000X>H\194@\212\000\000\000\000\n^\023\222\n\252\000\000\n\254\000\000\011\000\000\0000\244\000\000\006\2440\244\000\000\nx\019\156\000\000\000\205\023\222\000\000\006\210\023\222\000\000\001\136\011\130\000\000\011\132\000\000\023\222\023\222\n\128\000\000\000\000\000\000\000\000\000\000\000\000\011\012\000\000Y\004@\212\011\014\000\000\011\016\000\000\023\222\011\018\000\000@\212\n\186\000\127\000\000\000\000\007\158@\212\000\000\001\136\000\000\011\024\000\000\023\222\011\026\000\000\023\222\011 \000\000Fv\019\156\000\000\019\156\000\000A\154@\212\n\156\023\222\011&\000\000\011*\000\000\019\156\000\000VT\000\000\000\000\007\164\023\222\000\000\002\242\003\166\001\246\n\162\000\000\000\000\003\156\002~\000\000\000\000\000\000\007>\002~\000\000\n\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\222\000\000\007\178\023\222\000\000\001\250\006\220\000\127\n\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0114\000\000\0118\000\000\023\222\011:\000\000YT@\212\011<\000\000\011@\000\000\023\222\011B\000\000\027\224\n\232Z\0262\242V\178\n\190\000\000\023\222\011J\000\000\011L\000\000\011\028\027\224\023\222\011P\000\000\023\222\011R\000\000\011V\000\000\023\222\011X\000\000\000\127\n\200\000\000\000\000\0290\000\000\000\000\002\150\011\194\000\000\000\000\000\235\000\000\000\000\000\0006\234\000\000\000\000\000\000\002\230\000\000\005\168\000\000\000\000\000\000\004ZB\236B\236B\236\000\000\003\236\003\236\003\236\003\236\000\000\000\000\000\000\000\000\000\000\000\000\001r\017n\011\184\014\134\000\150\000\000\000\000\000\150\000\000\n*\000\0000\218\n\226\000\000\001r\017n\n\234\015\250\000\000\001r\014\134\000\000\000\000\000\000B\236\006&\000\000\000\000\000\000\011:\005\172\011\190Q\174Q\174\000\000\006\134X\002Q\174\007\154Rf\000\000\000\000\b\136\011\174\000\127\000\000\007\166R\148\000\000\000\000\000\000\000\000\000\000\n\252\011\194\007B\011\006\000\000\000\150\000\000\n*\000\000\028\246\001@\000\000\000\000\011\192\000\000\000\000\002\150\000\000\006\254\000\000\000\000\000\0006\234\000\000\002\230\000\000\007(\000\000\000\000\000\000\005\206\000\000\011\158\004J\011\158\000\000\007B\011\158\000\000\004J\000\000\007B\000\000\007B\000\000\007B\000\000\021b\000\000\000\000\000\000\000\000\000\000\007B\000\000\004J\000\000\007B\000\000$\030\000\000\000\000\000\220\011H\000\127\007\246\011\234\001V\000\000\001V\012\020\000\000\012\026\000\000\012\028\000\000\000\000\003:\001V\003z\001V\000\000\000\000\005\132\004\002\011\028\000\000\011\030\000\000\011\\\000\127\004\002\011\"\000\000\000\220\012&\000\000\004\016\006b\012<\005\n\012<\000\000\000\000\006\248\000\127\000\000\004\242\000\000\000\000\000\232\000\000\011,\000\000\000\000\000\000\011r\000\127\004\002\011:\000\000\000\000\000\220\004\016\006b\006\248\004\242\000\232\011>\000\000\004\016\006b\006\248\004\242\000\232\011@\000\000\003@\002\232\011^\000\127\011X\006\\\b\"\011\134\000\127\000\000\011\136\000\127\000\000\011\230\000\000\011l\003\006\011f\006\\\011\236\000\000\011j\006\\\011\240\000\000\000\000\006\\\000\000\011\242\000\000"), (16, "\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\b1\r1\r1\r1\r1\r1\r1\r1\r1\r1\r1\017\214\000&\016\138\b1\r1\t\157\016\138\005\157\024\158\016\138\001B\016\190\r1\0007\000;\016\190\r1\r1\016\190\r1\016\178\000*\r1\005\129\014z\005e\005\157\r1\r1\r1\000N\b\230\022\022\022>\022N\022v\022\134\022\174\r1\027\031\027#\r1\r1\000\n\027'\003\218\004\n\r1\r1\004\018\r1\004\"\r1\001J\016\182\n:\b1\r1\004*\r1\r1\r1\r1\r1\017F\001^\001B\r1\r1\r1\001b\r1\r1\r1\001f\001>\r1\r1\r1\r1\r1\012\253\005F\001B\r1\r1\017\230\012\017\0042\003\242\017\230\001j\000\150\017\230\001B\r1\r1\r1\005\157\000\n\r1\r1\r1\r1\006\225\r1\001B\r1\017\214\b1\r1\005e\020\026\r1\r1\014~\000\n\016\138\005\157\020\030\005\017\b1\004B\020\"\019\030\r1\016\190\000\n\r1\023R\r\026\006\185\r1\r1\r1\r1\005e\029^\r1\000\n\r1\005\146\r\018\023F\r1\r1\r1\001F\r1\012\017\r1\r1\000\154\r1\r&\r1\r1\021\154\b\153\r1\r1\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\177\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\006\233\028\143\b\022\017\214\004\133\006\233\016\142\016\158\016\174\028\147\r\r\004\133\016\138\006\233\029r\001\134\017\230\006\233\006\233\028\150\006\233\016\190\b\161\006\233\029\198\006\225\024\182\024\190\006\233\006y\006\233\000\n\005j\rR\029\218\029v\t\005\005e\005\017\006\233\000\242\0302\029z\029\222\005\017\005\017\r\229\r\229\006\233\006\233\030\030\r\229\018\250\006\233\006\233\r\229\005\017\005\017\006\233\018J\006\233\006\233\006\233\006\233\006\233\r:\024\198\019n\006\233\006\233\006\233\004\209\006\233\006\233\006\233\018N\018J\006\233\006\233\006\233\006\233\006\233\005\017\024\182\024\190\006\233\006\233\025\182\005\249\001:\001\150\000\246\018N\t\193\022\234\002\146\017\230\006\233\006\233\014\138\002\158\006\233\006\233\006\233\006\233\002&\006\233\029\130\006\233\001B\001Z\006\233\002\146\001\146\006\233\006\233\014\138\002\158\005v\023\202\b\177\nB\b\245\026\"\001>\001B\r\229\r\229\018\238\006\233\004\209\r\229\000\n\006\233\006\233\006\233\006\233\004\209\006\217\006\233\029\138\006\233\000\n\001B\005\202\006\233\006\233\006\233\002e\000\n\t\185\006\233\006\233\006\193\006\233\t\193\006\233\006\233\000\n\001N\006\233\006\233\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\000\n\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\007\t\b\181\007\t\017\214\004\210\007\t\019\238\001\162\007\t\007\t\001F\007\t\030\142\007\t\0025\004\141\b\198\007\t\007\t\027\014\007\t\012\181\004\141\007\t\001B\025\182\t\185\030\202\007\t\007\t\007\t\003\218\007\t\007\t\007\t\b\165\012\181\007\t\007\t\007\t\004^\007\t\007\t\004f\012\181\004v\025\210\005\246\007\t\007\t\007\t\007\t\004~\007\t\000\n\021\022\t\194\000\n\007\t\027\014\007\t\025\202\007\t\007\t\007\t\014^\007\t\001B\007\t\007\t\007\t\021\026\007\t\007\t\007\t\007\t\001B\007\t\007\t\007\t\007\t\007\t\004\134\b\206\004Q\002\146\007\t\029\154\t\177\014\138\002\158\002\146\006\201\001z\030\138\014\138\002\158\007\t\007\t\007\t\000\n\007\t\007\t\007\t\007\t\007\t\007\t\000\n\007\t\000\n\020\250\007\t\012B\011\242\007\t\007\t\004\150\006\185\011\246\004Q\007\t\005\153\000\n\027j\022\234\011\250\007\t\014\170\000\n\007\t\011\254\027n\014F\007\t\007\t\014\202\007\t\005}\003\218\007\t\005\153\007\t\014\254\021\246\025\206\007\t\022\030\014F\006\137\025\186\t\177\000\n\007\t\021\198\007\t\014F\007\t\007\t\006i\004U\007\t\007\t\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\022\214\001&\027V\001.\011\250\0016\001\214\001\222\001\226\011\254\027Z\004Q\022\218\025\210\029\170\012\002\006\158\004Q\004Q\r\254\by\000\n\022\222\001\234\022\226\029\162\b\189\002R\012\018\004Q\015\006\001\182\022\230\015\n\021\254\017\214\005\153\022&\001\242\007f\016z\022\242\n^\bi\016\138\022\246\004Q\001\202\006\185\002^\007v\022\250\027\142\016\190\002\021\004Q\005\153\029\162\016\210\015\018\027\186\027\198\001B\016\214\019*\001\246\0051\022\254\002\134\012\213\002\138\005A\002\006\017\222\016\222\022V\012\165\018j\015&\002\146\016\226\011^\015*\r2\002\158\001\250\004U\015.\0152\012&\012*\0156\004U\004U\023\002\000\n\016\230\023\006\029j\006\161\020\206\001B\006\153\005\138\004U\029j\020Z\012\134\015:\012\181\023\n\016\234\016\238\015>\016\242\023\014\000\n\023\018\017\006\023\022\023\026\005\029\023\030\004U\017\018\015F\014\n\001B\017\230\023\"\004U\024\018\023&\b\205\000\n\021\174\027\218\002\030\012\213\0172\000\006\000\"\022^\0176\017\130\005A\012.\023*\0026\015J\012\181\017\134\023.\0232\022\142\015N\005A\005A\t\221\t\221\000\n\005A\017\142\t\221\015R\003\130\007\017\007\017\018n\004Y\002\206\007\017\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\006\209\001&\027V\001.\011\250\0016\001\214\001\222\001\226\011\254\027Z\020^\003\173\030\018\014\230\012\002\003\173\014\026\029\154\004\245\030\022\006\169\003\202\001\234\002E\012\157\006a\002R\012\018\012\181\015\006\012\157\012\157\015\n\014F\022\150\011\242\003\210\001\242\b\250\016z\011\246\t\002\012\157\t\018\002N\027j\000.\011\250\002^\0046\t\026\016\138\011\254\027n\018\146\029\246\004\245\016\210\015\018\027\186\016\190\002\146\016\214\019r\020\138\002\154\002\158\002\134\012\157\002\138\005Q\002\006\017\222\016\222\014F\004:\004\138\015&\002\146\016\226\t\"\015*\r2\002\158\020n\004Y\015.\0152\012&\012*\0156\004Y\004Y\029\238\017\226\016\230\004\142\004\218\000\n\006\145\006\129\006\129\014^\004Y\002\146\030\158\012\134\015:\014\138\002\158\016\234\016\238\015>\016\242\t2\000\n\006a\017\006\020\158\018\178\005\029\004\238\002\146\017\018\015F\tN\014\138\002\158\tV\004Y\tf\029\162\011\202\001>\005\022\017\230\006a\tn\0172\014F\006a\000\n\0176\017\130\020\186\012.\027G\027K\015J\017B\017\134\027O\001B\b\149\015N\020\142\005Q\005\026\r\021\000\n\005.\017\142\030\243\015R\0051\007!\007!\tv\005J\002\206\007!\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\n\001&\027V\001.\011\250\0016\001\214\001\222\001\226\011\254\027Z\006\249\026&\017:\023\198\012\002\t\134\006\249\006\249\r\005\001F\005R\005V\001\234\020\162\017:\018J\002R\012\018\006\249\015\006\023r\001B\015\n\n\150\r\021\012\237\n\158\001\242\n\174\016z\007\025\018N\017V\001B\0029\n\182\b\133\023V\002^\020\190\020\222\016\138\017b\003\242\006\249\023Z\002%\016\186\015\018\028\030\016\190\002\146\016\214\b\233\000\n\014\138\002\158\002\134\0216\002\138\005m\002\006\016\218\016\222\017:\n\190\000\n\015&\002\146\016\226\023\186\015*\r2\002\158\017>\007\001\015.\0152\012&\012*\0156\007\001\007\001\001B\r\237\016\230\017>\024\170\000\n\005\142\023f\023\214\007\025\030\006\021J\021f\012\134\015:\012\197\n\206\016\234\016\238\015>\016\242\024\134\000\n\005\150\017\006\004\173\005\166\005\029\012\173\n\234\017\018\015F\n\242\000\n\011\002\005\174\007\001\030\162\028\175\028\179\005\178\011\n\017\230\028\183\012\245\0172\006\177\012\221\020\226\0176\017\130\005m\012.\017>\012\229\015J\030\174\017\134\025\226\028\207\028\211\015N\005m\005m\028\215\012\189\021:\005m\017\142\005\186\015R\011\018\t\229\t\229\005\222\b\137\002\206\t\229\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\005\226\001&\005\234\001.\011\250\0016\001\214\001\222\001\226\011\254\021N\021j\028*\011\"\025.\012\002\b\217\025\170\028J\005\254\000\n\006\018\002U\001\234\026\022\017:\021\022\002R\012\018\006&\015\006\006j\007B\015\n\007\138\007\150\028:\007\194\001\242\b9\016z\007\206\021\026\007\242\001B\007\254\029j\b\014\b\030\002^\b&\b>\016\138\b9\003\242\bF\bV\bb\016\186\015\018\001B\016\190\002\146\016\214\bn\bz\014\138\002\158\002\134\b\142\002\138\004U\002\006\016\218\016\222\b\158\b\174\000\n\015&\002\146\016\226\b\182\015*\r2\002\158\b\219\t&\015.\0152\012&\012*\0156\t*\000\n\tz\t~\016\230\017>\t\202\000\n\t\222\n\006\n\n\n\026\n*\nV\b9\012\134\015:\nf\nz\016\234\016\238\015>\016\242\n\194\000\n\n\198\017\006\002)\011\022\011\026\011f\011z\017\018\015F\011\162\011\166\011\186\011\210\011\230\003\173\012\006\012\014\012\022\003\173\017\230\012\030\012\"\0172\006\177\012Z\012f\0176\017\130\012n\012.\012\178\012\210\015J\012\222\017\134\r\"\r>\rJ\015N\rf\rr\014.\b9\014:\014B\017\142\014V\015R\014b\014j\014n\014v\014\134\002\206\b9\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\014\150\001&\014\158\001.\011\250\0016\001\214\001\222\001\226\011\254\014\162\014\178\014\186\014\210\014\218\012\002\014\238\014\246\015\002\015\026\015\"\015v\015\130\001\234\015\202\016J\016r\002R\012\018\016\134\015\006\016\146\016\154\015\n\016\162\016\170\016\246\016\254\001\242\017\014\016z\017\022\017\030\017&\017.\017~\017\138\017\146\017\158\002^\017\162\017\170\016\138\017\174\017\182\017\190\017\206\017\242\016\186\015\018\0186\016\190\018>\016\214\018B\018R\018Z\018^\002\134\018f\002\138\018v\002\006\016\218\016\222\018~\018\134\018\138\015&\002\146\016\226\018\154\015*\r2\002\158\018\162\018\186\015.\0152\012&\012*\0156\018\194\019\018\019Z\r\237\016\230\019f\019\218\019\230\020\006\0202\020B\020J\020f\020r\020z\012\134\015:\020~\020\134\016\234\016\238\015>\016\242\020\150\000\n\020\170\017\006\020\198\020\234\021\002\021\n\021\014\017\018\015F\021\030\021&\021*\0212\021B\021V\021r\021\134\021\150\021\166\017\230\012\205\012\205\0172\021\190\021\206\021\218\0176\017\130\022\011\012.\0223\022K\015J\022k\017\134\022\131\022\163\022\187\015N\022\210\022\238\023^\023\139\023\226\023\247\017\142\024\031\015R\024+\r\237\r\237\024;\024C\002\206\r\237\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\024^\001&\027V\001.\011\250\0016\001\214\001\222\001\226\011\254\027Z\024g\024o\024w\024\146\012\002\024\186\024\194\024\210\024\239\024\255\025\007\025\019\001\234\025\030\025C\025O\002R\012\018\025[\015\006\025~\025\135\015\n\025\143\025\194\025\238\026.\001\242\026O\016z\026W\026c\026s\012\205\026{\026\135\026\146\026\162\002^\026\175\026\183\026\190\026\203\026\215\012\205\026\223\026\235\016\210\015\018\026\247\012\205\012\205\016\214\028\230\027\018\027\154\027\194\002\134\027\210\002\138\028\006\002\006\017\222\016\222\028\014\028>\028f\015&\002\146\016\226\028j\015*\r2\002\158\028r\000\022\015.\0152\012&\012*\0156\028\155\012\205\029b\029n\016\230\029~\012\205\012\205\029\134\029\142\029\187\029\195\029\202\029\215\029\226\012\134\015:\029\242\030'\016\234\016\238\015>\016\242\0306\000\n\030C\017\006\030g\030\131\005\029\030\146\030\154\017\018\015F\030\166\030\178\030\191\030\198\030\206\030\215\030\222\030\231\030\251\000\000\000\000\000\000\000\000\0172\000\000\000\000\000\000\0176\017\130\000\000\012.\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\t\201\t\201\000\000\000\000\002\206\t\201\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\000\000\001.\011\250\0016\001\214\001\222\001\226\011\254\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\001\234\000\000\000\000\000\000\002R\012\018\000\000\015\006\000\000\000\000\015\n\000\000\000\000\000\000\000\000\001\242\000\000\016z\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\016\210\015\018\000\000\000\000\000\000\016\214\017\250\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\017\222\016\222\000\000\000\000\000\000\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\000\015.\0152\012&\012*\0156\000\000\000\000\000\000\r\201\016\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\000\000\000\n\000\000\017\006\000\000\000\000\000\000\000\000\000\000\017\018\015F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0172\000\000\000\000\000\000\0176\017\130\000\000\012.\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\r\201\r\201\000\000\000\000\002\206\r\201\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\000\000\001.\011\250\0016\001\214\001\222\001\226\011\254\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\001\234\000\000\000\000\000\000\002R\012\018\000\000\015\006\000\000\000\000\015\n\000\000\000\000\000\000\000\000\001\242\000\000\016z\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\016\210\015\018\000\000\000\000\000\000\016\214\027\158\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\017\222\016\222\000\000\000\000\000\000\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\000\015.\0152\012&\012*\0156\000\000\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\000\000\000\n\000\000\017\006\000\000\000\000\000\000\000\000\000\000\017\018\015F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0172\000\000\000\000\000\000\0176\017\130\000\000\012.\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\014\021\014\021\000\000\000\000\002\206\014\021\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\000\000\001.\011\250\0016\001\214\001\222\001\226\011\254\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\001\234\000\000\000\000\000\000\002R\012\018\000\000\015\006\000\000\000\000\015\n\000\000\000\000\000\000\000\000\001\242\000\000\016z\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\016\210\015\018\000\000\000\000\000\000\016\214\027\158\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\017\222\016\222\000\000\000\000\000\000\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\000\015.\0152\012&\012*\0156\000\000\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\000\000\000\n\000\000\017\006\000\000\000\000\000\000\000\000\000\000\017\018\015F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0172\000\000\000\000\000\000\0176\017\130\000\000\012.\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\014\017\014\017\000\000\000\000\002\206\014\017\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\000\000\001.\011\250\0016\001\214\001\222\001\226\011\254\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\001\234\000\000\000\000\000\000\002R\012\018\000\000\015\006\000\000\000\000\015\n\000\000\000\000\000\000\000\000\001\242\000\000\016z\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\016\210\015\018\000\000\000\000\000\000\016\214\019\166\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\017\222\016\222\000\000\000\000\000\000\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\000\015.\0152\012&\012*\0156\000\000\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\b1\000\n\000\000\017\006\017\214\000\000\000\000\000\000\000\000\017\018\015F\000\000\000\000\016\138\b1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\190\000\000\0172\000\000\000\000\000\000\0176\017\130\000\000\012.\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\000R\000V\000f\000\170\002\206\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\b1\001.\011\250\0016\001\214\001\222\001\226\011\254\003\254\004\006\000\170\000\000\000\174\000\000\004J\004R\004Z\004\158\000\000\004\166\004\174\001\234\004\190\000\000\004\198\002R\004\206\004\250\015\006\005\002\017\230\015\n\000\000\000\000\000\000\000\000\001\242\000\000\020&\000\000\000\000\000\000\000\000\000\000\005\n\000\000\000\000\002^\000\000\000\000\000\000\000\000\000\000\b1\000\000\000\000\0206\015\018\000\000\005\018\000\000\000\000\000\000\000\000\000\000\b1\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\015&\002\146\000\000\000\000\015*\002\154\002\158\000\000\000\000\015.\0152\012&\020:\0156\000\000\000\000\000\000\005\"\000\000\000\000\t\006\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\006Y\006Y\000\000\015>\tZ\006Y\000\n\t\162\006Y\n\162\006Y\006Y\006Y\006Y\000\000\015F\000\000\006Y\006Y\000\000\006Y\006Y\006Y\000\000\000\000\000\000\000\000\006Y\000\000\006Y\006Y\000\000\006Y\000\000\006Y\000\000\012.\006Y\000\000\015J\006Y\020>\006Y\006Y\000\000\015N\006Y\006Y\006Y\006Y\006Y\006Y\020F\006Y\015R\006Y\006Y\000Z\000\000\006Y\002\206\006Y\000\000\000\000\000\000\000\000\000\000\006Y\t\214\000\000\006Y\n\"\006Y\000Z\000\000\006Y\000Z\006Y\000Z\006Y\006Y\000\000\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\006Y\006Y\006Y\006Y\006Y\006Y\000\000\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\000\000\006Y\006Y\006Y\006Y\006Y\006Y\006Y\006Y\006Y\006Y\006Y\000\000\006Y\000\000\006Y\000\000\006Y\006Y\000\000\006Y\006Y\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\000\000\006Y\006Y\000\000\006Y\006Y\006Y\006Y\000\000\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\011\242\000\000\000\000\000\000\000\000\011\246\000\000\000\000\000\000\001\234\027j\000\000\011\250\002R\000\000\000\000\002f\011\254\027n\002j\000\000\000\000\000\000\000\000\001\242\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\002b\000\000\000\000\000\000\000\000\000\000\002\242\002\130\000\000\002~\000\000\000\000\006>\018J\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006B\002\146\000\000\018N\006F\002\154\002\158\000\000\006J\006N\006R\000\000\000\000\006V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\000\000\014\138\002\158\000\000\006Z\000\000\000\000\000\000\000\000\006^\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\154\000\000\000\n\000\000\000\000\000\000\000\000\0051\000\000\000\000\000\000\000\000\000\000\006r\000\000\000\000\000\000\000\000\000\000\006v\000\000\000\000\004\165\000\000\t\161\000\000\000\000\000\000\006z\000\000\000R\000V\000f\000\170\002\206\000\174\t\161\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\t\161\001.\t\161\0016\001\214\001\222\001\226\000\000\000\000\000\000\t\161\000\000\000\000\000\000\000\000\000\000\t\161\000\000\000\000\t\161\000\000\001\234\000\000\t\161\023\170\002R\000\000\000\000\002f\t\161\000\000\002j\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\161\000\000\002^\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\002\242\002\130\000\000\002~\000\000\000\000\006>\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\t\161\000\000\000\000\t\161\006B\002\146\000\000\000\000\006F\002\154\002\158\000\000\006J\006N\006R\000\000\t\161\006V\000\000\000\000\000\000\t\161\t\161\t\161\000\000\t\161\t\161\000\000\t\161\000\000\000\000\000\000\000\000\000\000\006Z\t\161\000\000\000\000\t\161\006^\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006n\000\000\t\161\000\000\000\000\000\000\000\000\t\161\t\161\000\000\000\000\006\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\006r\000\000\000\000\000\000\000\000\000\000\006v\000\000\000\000\bm\000\000\022\214\000\000\000\000\000\000\006z\000\000\000R\000V\000f\000\170\002\206\000\174\022\218\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\022\222\001.\022\226\0016\001\214\001\222\001\226\000\000\000\000\000\000\022\230\000\000\000\000\000\000\000\000\000\000\022\234\000\000\000\000\022\242\000\000\001\234\000\000\022\246\000\000\002R\000\000\000\000\002f\022\250\000\000\002j\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\024\202\000\000\000\000\000\000\022\254\000\000\002^\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\002\242\002\130\000\000\002~\000\000\000\000\006>\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\023\002\000\000\000\000\023\006\006B\002\146\000\000\000\000\006F\002\154\002\158\000\000\006J\006N\006R\000\000\023\n\006V\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\000\000\023\030\000\000\000\000\000\000\000\000\000\000\006Z\023\"\000\000\000\000\023&\006^\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006n\000\000\023*\000\000\000\000\000\000\000\000\023.\0232\000\000\000\000\006\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\006r\000\000\000\000\000\000\000\000\000\000\006v\000\000\000\000\002\025\000\000\000\000\000\000\000\000\000\000\006z\000\000\000R\000V\000f\000\170\002\206\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\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\002R\000\000\000\000\002f\000\000\000\000\002j\000\000\000\000\000\000\000\000\001\242\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\002b\000\000\000\000\000\000\000\000\000\000\002\242\002\130\000\000\002~\000\000\000\000\006\162\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006B\002\146\000\000\000\000\006F\002\154\002\158\000\000\006J\006N\006R\000\000\000\000\006V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\000\000\000\006^\000\000\000\000\000\n\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\006n\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006r\000\000\000\000\000\000\000\000\000\000\006v\001\234\000\000\b}\000\000\002R\000\000\000\000\002V\006z\000\000\002Z\000\000\000\000\000\000\002\206\001\242\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\002b\000\000\000\000\000\000\000\000\000\000\002z\002v\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\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\000\000\000\000\000\000\000\000\002\174\000\000\000\000\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\186\003\254\004\006\000\170\000\000\000\174\000\000\004J\004R\004Z\004\158\002\190\004\166\004\174\000\000\004\190\000\000\004\198\000\000\004\206\004\250\000\000\005\002\000\000\002\194\000\000\000\000\000\000\000\000\000\000\002\198\000\000\000\000\000\000\000\000\000\000\000\000\005\n\000\000\002\202\000\000\000R\b\238\b\246\000\170\002\206\000\174\000\000\t:\tB\tJ\t\142\005\018\t\150\t\158\022\214\t\174\000\000\t\182\000\000\t\190\t\234\001\222\t\242\000\000\000\000\000\000\022\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\222\t\250\022\226\000\000\000\000\000\000\000\000\000\000\000\000\005\"\022\230\000\000\000\000\000\000\r\138\000\000\026\142\000\000\000\000\022\242\000\000\000\000\000\000\022\246\000\000\000\000\000\000\000\000\000\000\022\250\000\000\000\000\000\000\000\000\000\000\000\000\n\018\r\146\r\186\000\000\000\000\024z\000\000\000\000\000\000\022\254\025\154\000\000\000\000\000\000\n\030\000\000\r\154\000\n\000\000\000\000\000\000\000\000\r\226\r\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\194\000\000\000\000\r\162\023\002\r\178\000\000\023\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\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\r\202\023\022\023\026\000\000\023\030\000\000\000\000\000\000\000\000\000\000\000\000\023\"\000\000\011\242\023&\000\000\000\000\000\000\011\246\000\000\000\000\000\000\000\000\027j\000\000\011\250\000\000\000\000\000\000\023*\011\254\027n\000\000\000\000\023.\0232\001M\001M\001M\001M\r\210\001M\000\000\001M\001M\001M\001M\r\170\001M\001M\000\000\001M\000\000\001M\000\000\001M\001M\001M\001M\000\000\000\000\005\225\000\000\022\198\018J\000\000\000\000\000\000\005\225\000\000\000\000\000\000\001M\001M\001M\000\000\r\242\r\218\000\000\000\189\018N\000\000\001M\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\022\202\000\000\002\146\001M\r\146\r\186\014\138\002\158\000\000\000\000\001M\000\000\000\000\000\000\000\000\001M\000\000\000\000\000\000\r\154\000\000\000\000\000\000\000\000\001M\000\189\000\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\194\000\000\000\000\r\162\000\n\r\178\000\000\000\000\000\000\0051\000\000\001M\000\000\000\000\001M\000\000\000\000\000\000\012\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\r\202\000\000\002R\012\018\001M\015\006\001M\000\000\015\n\001M\000\000\022\206\000\000\000\000\000\000\016z\001M\000\000\001M\000\000\000\000\001M\000\000\000\000\002^\000\000\007\249\007\249\000\000\000\000\000\000\007\249\000\000\017\002\015\018\000\000\001M\001M\016\214\000\000\r\210\001M\001M\002\134\000\000\002\138\000\000\r\170\000\000\016\222\000\000\000\000\023\142\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\189\015.\0152\000\000\000\000\0156\000\000\000\189\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\189\r\218\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\000\000\000\n\000\000\017\006\000\000\000\000\000\000\000\000\012\002\017\018\015F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002R\012\018\000\000\015\006\0172\000\000\015\n\000\000\0176\017\130\000\000\000\000\000\000\016z\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\002^\000\000\000\000\000\000\000\000\017\142\000\000\015R\000\000\015\014\015\018\000\000\000\000\002\206\016\214\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\016\222\000\000\000\000\000\000\015&\002\146\016\226\000\000\015*\r2\002\158\000\000\000\000\015.\0152\000\000\000\000\0156\000\000\000\000\000\000\000\000\016\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\015:\000\000\000\000\016\234\016\238\015>\016\242\000\000\000\n\000\000\017\006\000\000\000\000\000\000\000\000\000\000\017\018\015F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015E\000\000\000\000\015E\0172\000\000\000\000\000\000\0176\017\130\000\000\000\000\000\000\000\000\015J\000\000\017\134\000\000\000\000\000\000\015N\000\000\000\000\015E\015E\000\000\000\000\017\142\015E\015R\000\000\002\230\015E\000\000\000\000\002\206\000\000\000\000\015E\000\000\000\000\015E\015E\000\000\015E\015E\000\000\000\000\002\238\000\000\015E\007\198\000\000\000\000\015E\000\000\000\000\015E\000\000\015E\015E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015E\000\000\015E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015E\000\000\000\000\011\145\011\145\011\145\011\145\007\210\011\145\000\000\011\145\011\145\011\145\011\145\000\000\011\145\011\145\000\000\011\145\000\000\011\145\000\000\011\145\011\145\011\145\011\145\000\000\015E\015E\000\000\015E\015E\007\214\000\000\015E\000\000\000\000\000\000\000\000\011\145\011\145\011\145\000\000\007\222\000\000\000\000\000\000\000\000\015E\011\145\000\000\015E\015E\015E\015E\011\145\000\000\000\000\023\158\015E\015E\015E\023\166\015E\015E\015E\000\000\000\000\011\145\000\000\000\000\005\129\000\000\000\000\005\129\011\145\000\000\000\000\000\000\000\000\011\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\145\000\000\000\000\000\000\000\000\005\129\005\129\000\000\000\000\000\000\005\129\000\000\000\000\005\129\005\129\000\000\000\000\000\000\000\000\000\000\005\129\000\000\011\145\005\129\005\129\011\145\005\129\005\129\000\000\000\000\005\129\000\000\005\129\005\129\000\000\000\000\005\129\000\000\011\145\005\129\000\000\005\129\005\129\011\145\000\000\011\145\000\000\000\000\011\145\000\000\000\000\000\000\000\000\000\000\000\000\011\145\000\000\011\145\000\000\000\000\011\145\000\000\000\000\000\000\005\129\000\000\005\129\000\000\000\000\000\000\000\000\000\000\000\165\000\000\000\000\011\145\011\145\005\129\000\000\000\000\023\250\011\145\000\000\000\000\005\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\165\000\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\129\005\129\000\000\005\129\005\157\005\129\r\154\005\129\000\000\000\000\000\000\000\000\000\165\000\165\000\000\000\000\005\129\005}\000\000\000\000\005}\005\129\000\165\000\000\005\129\r\162\005\129\r\178\005\129\000\000\000\000\000\000\005\129\005\129\005\129\000\000\005\129\005\129\005\129\000\000\005}\005}\000\000\000\000\000\000\005}\000\000\000\000\005}\005}\000\165\000\000\000\000\000\000\000\000\005}\000\000\000\000\005}\005}\000\000\005}\005}\000\000\000\000\005}\000\000\005}\005}\000\000\000\000\005}\000\000\000\000\005}\000\000\005}\005}\000\000\001\169\000\000\000\000\001\169\000\000\000\000\000\000\000\000\000\000\000\000\001B\000\165\000\000\000\000\000\000\000\000\000\000\000\000\r\170\000\000\005}\000\000\005}\001\169\001\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\165\005}\000\000\000\000\000\000\000\000\001\169\000\165\005}\000\000\001\169\000\n\001\169\001\169\000\000\000\165\000\165\000\000\000\000\000\000\000\000\000\000\001\169\000\000\000\000\001\169\000\000\001\169\005}\005}\000\000\005}\005\153\005}\000\000\005}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005}\000\000\000\000\000\000\000\000\005}\001\169\000\000\005}\000\000\005}\000\000\005}\000\000\000\000\000\000\005}\005}\005}\000\000\005}\005}\005}\011\129\011\129\011\129\011\129\000\000\011\129\000\000\011\129\011\129\011\129\011\129\000\000\011\129\011\129\000\000\011\129\000\000\011\129\000\000\011\129\011\129\011\129\011\129\001\169\006\170\000\000\001\169\000\000\000\000\000\000\001\169\000\000\000\000\000\000\000\000\000\000\011\129\011\129\011\129\000\000\000\000\000\000\000\000\000\000\001\169\000\000\011\129\000\000\001\169\001\169\000\000\000\000\011\129\000\000\000\000\006\178\000\000\000\000\000\000\001\169\001\169\011\133\011\133\011\133\011\133\011\129\011\133\000\000\011\133\011\133\011\133\011\133\011\129\011\133\011\133\000\000\011\133\011\129\011\133\000\000\011\133\011\133\011\133\011\133\011\242\000\000\011\129\000\000\000\000\011\246\000\000\000\000\000\000\000\000\027j\000\000\011\250\011\133\011\133\011\133\000\000\011\254\027n\000\000\000\000\000\000\000\000\011\133\011\129\000\000\000\000\011\129\000\000\011\133\000\000\000\000\023\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\129\000\000\011\133\000\000\000\000\011\129\000\000\011\129\000\000\011\133\011\129\018J\000\000\000\000\011\133\000\000\000\000\011\129\000\000\011\129\000\000\000\000\011\129\011\133\000\000\000\000\000\000\018N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\129\011\129\000\000\000\000\000\000\023\162\011\129\000\000\011\133\000\000\002\146\011\133\000\000\000\000\014\138\002\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\133\000\000\000\000\000\000\000\000\011\133\000\000\011\133\000\000\000\000\011\133\000\000\000\000\000\000\000\000\000\000\000\000\011\133\000\000\011\133\000\000\000\000\011\133\000\n\000\000\000\000\000\000\000\000\0051\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\133\011\133\000R\b\238\b\246\000\170\011\133\000\174\000\000\t:\tB\tJ\t\142\000\000\t\150\t\158\000\000\t\174\000\000\t\182\000\000\t\190\t\234\001\222\t\242\000\000\000\000\015\153\000\000\000\000\015\153\000\000\000\000\000\000\000\000\000\000\n\021\n\021\024\006\t\250\024\"\n\021\000\000\000\000\000\000\000\000\000\000\000\000\024.\000\000\015\153\015\153\000\000\000\000\n\002\015\153\000\000\000\000\015f\015\153\000\000\000\000\000\000\000\000\000\000\015\153\000\000\024F\015\153\015\153\000\000\015\153\015\153\000\000\n\018\015n\000\000\015\153\015z\024z\000\000\015\153\000\000\000\000\015\153\000\000\015\153\015\153\n\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\153\024\154\015\153\000\000\024\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\153\000\000\000\000\000\000\025\n\000\000\000\000\015\134\000\000\025\022\000\000\t\153\000\000\000\000\025F\000\000\000\000\000\000\000\000\000\000\000\000\025R\000\000\025^\000\000\000\000\026Z\015\153\015\153\000\000\015\153\000\000\015\138\000\000\015\153\000\000\000\000\000\000\000\000\000\000\000\000\026f\026~\015\146\000\000\001\153\000\000\026\138\001\153\000\000\000\000\015\153\000\000\015\153\000\000\000\000\000\000\000\000\000\000\015\153\015\153\015\153\000\000\015\153\015\153\015\153\000\000\000\000\001\153\001\153\000\000\000\000\000\000\001\153\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\001\153\001\153\000\000\001\153\001\153\000\000\000\000\000\000\003\"\001\153\000\000\003z\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\000\000\000\000\000\000\000\000\000\000\003*\003R\000\000\000\000\000\000\001\245\000\000\000\000\000\000\001\245\001\153\000\000\001\153\000\000\000\000\0032\000\000\000\000\001\245\001\245\000\000\003\154\003\162\001\153\000\000\000\000\000\000\001\245\000\000\000\000\000\000\003Z\000\000\000\000\003:\000\000\003J\001\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\003\002\000\000\001\153\001\153\000\000\000\000\001\153\000\000\003b\000\000\001\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\001\245\000\000\001\153\001\153\001\153\001\153\000\000\000\000\000\000\000\000\003\178\001\153\001\153\000\000\001\153\001\153\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001\245\001\245\000\000\000\000\003B\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\001\245\000\000\000\000\001\245\001\245\001\245\001\245\000\000\000\000\000\000\000\000\000\000\001\245\001\245\000\000\003\170\003r\001\245\003*\003R\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\0032\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\003Z\000\000\000\000\003:\000\000\003J\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\003b\000\000\000\129\000\000\000\000\0032\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\003:\000\000\003J\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\003j\000\000\000\000\000\129\000\129\000\000\000\000\003B\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\003r\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\003B\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\003:\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\003:\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\003B\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\003B\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\0032\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\003:\000\000\003J\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\003R\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\000e\000\000\000e\000\000\000\000\0032\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\003:\000\000\003J\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\003B\000\000\003b\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\003B\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\003*\003R\000\000\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\0032\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\003:\000\000\003J\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\003R\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000m\000\000\000m\000\000\000\000\0032\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\003:\000\000\003J\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\003B\000\000\003b\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\003B\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\003*\003R\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\000\003\"\000y\000\000\000\137\000\000\003Z\000\000\000\000\003:\000\000\003J\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\003R\000\000\000\000\000\000\000\137\000\000\000\000\000\000\000\137\003b\000\000\000y\000\000\000\000\0032\000\000\000\000\000\137\000\137\000\000\000\137\003\162\000y\000\000\000\000\000\000\000\137\000\000\000\000\000\000\003Z\000\000\000\000\003:\000\000\003J\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\003j\000\000\000\000\000y\000y\000\000\000\000\003B\000\000\003b\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\003j\000\000\000\000\000\137\000\137\000\000\000\000\003B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\"\000\000\000\000\000}\000\000\000\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\170\003r\000\137\003*\003R\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\000}\000}\000\000\000}\000}\000\000\000\000\000\000\003\"\000}\000\000\000\133\000\000\003Z\000\000\000\000\003:\000\000\003J\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\003R\000\000\000\000\000\000\000\133\000\000\000\000\000\000\000\133\003b\000\000\000}\000\000\000\000\0032\000\000\000\000\000\133\000\133\000\000\000\133\003\162\000}\000\000\000\000\000\000\000\133\000\000\000\000\000\000\003Z\000\000\000\000\003:\000\000\003J\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\003j\000\000\000\000\000}\000}\000\000\000\000\003B\000\000\003b\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}\003r\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\133\000\133\000\000\000\000\003B\000\000\000\000\000\000\000\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\133\000\133\000\133\000\133\000\000\000\000\000\000\000\000\000\000\000\133\000\133\000\000\000\133\003r\000\133\000R\000V\000f\000\170\b\234\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\000\000\001.\011\250\0016\001\214\001\222\001\226\011\254\000\000\000\000\000\000\000\000\002R\000\000\000\000\012J\000\000\000\000\012N\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002^\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\012R\012\170\000\000\000\000\r\018\r*\r.\000\000\000\000\000\000\002\134\000\000\002\138\002\002\000\000\000\000\000\000\000\000\000\000\000\000\012r\002\146\000\000\000\000\012v\r2\002\158\002\006\000\000\012z\012~\000\000\000\000\012\130\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\012&\012*\000\000\000\000\000\000\012\134\012\138\000\000\000\000\002R\000\000\012\142\012J\000\000\000\n\012N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\150\000\000\000\000\000\000\000\n\000\000\000\000\000\000\002^\006y\000\000\r6\000\000\rR\000\000\000\000\000\000\012R\012\170\000\000\000\000\r\018\r*\r.\012\154\000\000\000\000\002\134\000\000\002\138\012\158\000\000\000\000\006q\012.\000\000\004\181\012r\002\146\012\162\000\000\012v\r2\002\158\006q\002\206\012z\012~\000\000\006q\012\130\000\000\000\000\000\000\000\000\002R\000\000\000\000\012J\000\000\000\000\012N\000\000\000\000\000\000\000\000\012\134\012\138\000\000\000\000\000\000\000\000\012\142\000\000\000\000\000\n\000\000\002^\000\000\000\000\000\000\000\000\000\000\000\000\012\150\000\000\012R\012\170\000\000\000\000\r\018\r*\r.\006y\000\000\r6\002\134\rR\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012r\002\146\012\154\000\000\012v\r2\002\158\000\000\012\158\012z\012~\000\000\000\000\012\130\b\193\000\000\000\000\012\162\000\000\000\000\000\000\000\000\000\000\002\206\000\000\000\000\000\000\000\000\000\000\012\134\012\138\000\000\000\000\000\000\000\000\012\142\n\246\006Y\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\150\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\006y\000\000\r6\006Y\rR\006Y\011\149\011\149\000\000\000\000\011\149\000\000\000\000\006Y\000\000\012\154\000\000\000\000\000\000\006Y\000\000\012\158\006Y\000\000\000\000\002R\006Y\002I\012J\000\000\012\162\012N\006Y\000\000\000\000\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\006Y\nr\000\000\011\149\002^\006Y\000Z\000\000\000\000\000\000\006Y\000\000\000\000\012R\012\170\000\000\000\000\r\018\r*\014\014\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\011\149\000\000\006Y\012r\002\146\006Y\000\000\012v\r2\002\158\000\000\000\000\012z\012~\000\000\000\000\012\130\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\006Y\000\000\006Y\006Y\000\000\006Y\000\000\012\134\012\138\000\000\000\000\000\000\006Y\012\142\000\000\006Y\000\n\000\000\001\177\000\000\000\000\001\177\000\000\000\000\000\000\012\150\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\006y\006Y\006Y\011\149\rR\000\000\000\000\001\177\001\177\000\000\000\000\000\000\001\177\000\000\000\000\012\154\001\177\000\000\000\000\000\000\000\000\012\158\001\177\000\000\000\000\001\177\001\177\b\209\001\177\001\177\012\162\000\000\000\000\000\000\001\177\000\000\002\206\000\000\001\177\000\000\000\000\001\177\000\000\001\177\001\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\000\000\000\000\000\000\000\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\153\003\157\001\177\000\000\000\000\000j\003\157\000\000\000r\000\000\000\130\003\157\000\000\003\157\000\000\000\000\000\000\000\138\003\157\003\157\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\000\001\177\015\182\000\000\001\177\000\000\000\000\000\000\001\177\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\146\003\157\000\000\000\000\000\000\003\157\001\177\000\153\001\177\000\000\r\162\000\000\000\153\000\000\015\190\001\177\001\177\000\000\001\177\001\177\001\177\003\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\157\000\162\000\153\000\000\000\000\000\000\000\000\000\000\003\157\000\000\000\000\000\000\003\157\003\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\153\000\000\003\157\000\000\000\198\003\153\000\000\000\206\000\000\000\222\003\153\000\000\003\153\003\157\000\000\000\000\000\230\003\153\003\153\000\000\000\153\000\000\000\000\003\157\000\000\000\000\000\000\r\170\003\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\238\003\153\000\153\000\000\000\000\003\153\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\003\157\000\000\000\000\003\157\003\157\001\153\003\153\003\157\001\153\000\000\000\000\000\000\003\157\003\157\000\000\000\000\000\000\003\157\003\153\000\254\000\000\000\000\000\000\000\000\000\000\000\000\003\153\000\000\001\153\001\153\003\153\003\153\000\000\001\153\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\003\153\001\153\000\000\000\000\000\000\000\000\000\000\001\153\001\153\000\000\000\000\003\153\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\001\153\003\153\001\153\001\153\000\000\000\000\003\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\003\153\000\000\000\000\003\153\003\153\000\000\000\000\003\153\000\000\000\000\000\000\000\000\003\153\003\153\000\000\000\000\000\000\003\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\002\250\000\000\001\153\001\153\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002R\000\000\000\000\002V\000\000\000\000\002Z\001\153\001\153\000\000\001\153\000\000\000\000\000\000\000\000\003\190\001\153\001\153\000\000\001\153\001\153\001\153\002^\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\002r\002v\000\000\002~\000\000\012F\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\rB\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\234\000\000\000\000\016B\000\000\000\000\000\000\000\000\002\174\000\000\000\000\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\015\242\016\026\002\186\000\000\000\000\002\005\000\000\000\000\000\000\002\005\000\000\000\000\000\000\002\190\t\169\015\250\000\000\000\000\002\005\002\005\000\000\016R\016Z\000\000\000\000\0015\002\194\002\005\0015\000\000\000\000\016\"\002\198\000\000\016\002\t\169\016\018\002\005\000\000\000\000\000\000\002\202\000\000\000\000\000\000\000\000\000\000\002\206\015\242\016\026\000\000\000\000\000\000\0015\000\000\000\000\000\000\0015\000\000\016*\000\000\002\005\000\000\015\250\000\000\000\000\0015\0015\000\000\0015\0015\000\000\002\005\000\000\000\000\0015\000\000\000\000\000\000\016\"\000\000\000\000\016\002\000\000\016\018\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\0162\000\000\000\000\002\005\000\000\000\000\000\000\016\n\016*\000\000\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0015\000\000\000\000\002\005\000\000\002\005\000\000\000\000\000\000\000\000\000\000\000\000\002\005\002\005\000\000\016b\016:\002\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0162\000\000\000\000\0015\000\000\000\000\000\000\016\n\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\000\000\0015\000\000\0015\000\000\000\000\000\000\000\000\000\000\000\000\0015\0015\000\000\0015\016:\0015\001\029\001\029\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001\029\000\000\000\000\000\000\000\000\000\000\015\250\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\016\002\000\000\016\018\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\000\000\000\000\001\017\000\000\000\000\000\000\001\017\000\000\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\000\000\000\000\001\017\000\000\000\000\016\002\000\000\001\017\001\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\001\029\000\000\000\000\001\029\000\000\000\000\000\000\016\n\001\017\000\000\001\017\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\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\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\000\000\016\n\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\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\001\021\001\021\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\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\016\002\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\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\001\021\000\000\001\021\000\000\015\250\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\000\000\000\000\001\025\000\000\000\000\016\002\000\000\016\018\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\021\000\000\000\000\001\021\000\000\000\000\000\000\016\n\001\025\000\000\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\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\000\000\000\000\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\016\n\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\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\025\015\242\016\026\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\000\000\000\000\000\000\015\250\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\016\002\000\000\016\018\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\242\016\026\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\016*\000\000\001)\000\000\015\250\000\000\000\000\001!\001!\000\000\001!\001!\000\000\001)\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\000\000\016\002\000\000\016\018\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\001)\000\000\000\000\000\000\016\n\001!\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\001)\000\000\001)\000\000\000\000\000\000\000\000\000\000\000\000\001)\001)\000\000\001)\001)\001)\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\016\n\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\001!\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\000\001!\001!\000\000\001!\001!\001!\015\242\016\026\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\015\250\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\016\002\000\000\016\018\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\242\016\026\000\000\000\000\000\000\001-\000\000\000\000\000\000\001-\000\000\016*\000\000\001%\000\000\015\250\000\000\000\000\001-\001-\000\000\001-\001-\000\000\001%\000\000\000\000\001-\000\000\000\000\000\000\016\"\000\000\000\000\016\002\000\000\016\018\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\001%\000\000\000\000\000\000\016\n\016*\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\001%\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\001%\001%\000\000\001%\001%\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0162\000\000\000\000\001-\000\000\000\000\000\000\016\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\234\000\000\000\000\001=\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-\000\000\001-\001-\001-\015\242\016\026\000\000\000\000\000\000\001=\000\000\000\000\000\000\001=\000\000\000\000\000\000\000\000\000\000\015\250\000\000\000\000\001=\001=\000\000\001=\016Z\000\000\000\000\015\234\000\000\001=\0011\000\000\000\000\016\"\000\000\000\000\016\002\000\000\016\018\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\242\016\026\000\000\000\000\000\000\0011\000\000\000\000\000\000\0011\000\000\016*\000\000\001=\000\000\015\250\000\000\000\000\0011\0011\000\000\0011\0011\000\000\001=\000\000\000\000\0011\000\000\000\000\000\000\016\"\000\000\000\000\016\002\000\000\016\018\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0162\000\000\000\000\001=\000\000\000\000\000\000\016\n\016*\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\016b\016:\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0162\000\000\000\000\0011\000\000\000\000\000\000\016\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\234\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\016:\0011\015\242\016\026\000\000\000\000\000\000\0019\000\000\000\000\000\000\0019\000\000\000\000\000\000\000\000\000\000\015\250\000\000\000\000\0019\0019\000\000\0019\016Z\000\000\000\000\000\000\000\000\0019\000\000\000\000\022\214\016\"\000\000\000\000\016\002\000\000\016\018\0019\000\000\000\000\000\000\000\000\022\218\000\000\000\000\000\000\000\000\000\000\000\000\025\026\000\000\000\000\022\222\000\000\022\226\011\233\011\233\000\000\000\000\016*\000\000\0019\022\230\000\000\000\000\000\000\000\000\000\000\022\234\000\000\000\000\022\242\0019\000\000\000\000\022\246\000\000\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\000\000\000\000\000\000\000\000\000\000\011\233\000\000\022\254\000\000\0162\000\000\000\000\0019\000\000\000\000\000\000\016\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\000\000\011\233\0019\023\002\0019\000\000\023\006\000\000\022\214\000\000\000\000\0019\0019\000\000\0019\016:\0019\024R\000\000\023\n\022\218\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\022\222\023\030\022\226\000\000\000\000\000\000\000\000\011\189\023\"\000\000\022\230\023&\000\000\000\000\000\000\000\000\022\234\000\000\000\000\022\242\000\000\000\000\000\000\022\246\000\000\000\000\023*\000\000\000\000\022\250\000\000\023.\0232\011\233\000\000\000\000\000\000\000\000\000\000\000\000\025v\000\000\000\000\011\189\000\000\022\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\189\000\000\023\002\000\000\000\000\023\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\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\000\000\023\030\000\000\000\000\000\000\000\000\000\000\000\000\023\"\000\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\023*\000\000\000\000\000\000\000\000\023.\0232\011\189\000R\000V\000f\000\170\000\000\000\174\011\242\000\178\000\186\000\194\001\006\011\246\001\014\001\022\000\000\001&\027V\001.\011\250\0016\001\214\001\222\001\226\011\254\027Z\000\000\000\000\000\000\002R\000\000\000\000\002V\000\000\000\000\002Z\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\016~\000\000\000\000\000\000\000\000\000\000\002^\000\000\001\242\002b\000\000\000\000\000\000\000\000\000\000\002r\002v\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002\002\000\000\000\000\000\000\000\000\000\000\002\014\002\142\002\146\000\000\000\000\002\150\002\154\002\158\002\006\000\000\002\162\002\166\000\000\000\000\002\170\000\000\000\000\000\000\000\000\000\000\015}\002\018\000\000\015}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\174\000\000\000\000\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\015}\015}\000\000\000\000\000\000\002\186\000\000\000\000\006\142\000\n\000\000\000\000\000\000\000\000\005\029\015}\002\190\000\000\000\000\015}\000\000\015}\015}\000\000\000\000\006\150\000\000\000\000\007\142\002\194\000\000\015}\000\000\000\000\015}\002\198\015}\000\000\000\000\000\000\t\169\000\000\000\000\000\000\002\202\011>\006Y\000\000\000\000\000\000\002\206\000\000\000\000\000\000\002u\000\000\000\000\000\000\006Y\015}\006Y\000\000\000\000\000\000\000\000\000\000\006Y\000\000\006Y\000\000\006Y\006Y\006Y\000v\000\000\000\000\006Y\000\000\006Y\007\154\000\000\006Y\006Y\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\006Y\006Y\006Y\000\000\000\000\000\000\006Y\006Y\015}\015}\006Y\015}\006Y\007\158\006Y\015}\000\000\006Y\011r\000\000\006Y\000\000\006Y\000Z\007\166\000\000\006Y\006Y\006Y\015}\000\000\006Y\011\178\015}\015}\006Y\006Y\000Z\000\000\000\000\015}\006Y\006Y\000\000\015}\015}\001\194\000\000\000\000\006Y\000\000\000Z\006Y\011\222\006Y\000\000\000\000\006Y\000Z\000\000\000\000\000\000\006Y\006Y\000\000\006Y\006Y\006Y\000\000\000\000\006Y\006Y\006Y\000\000\006Y\006Y\000\000\006Y\006Y\006Y\000\000\000\000\000\000\000\000\006Y\006Y\006Y\006Y\006Y\006Y\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\006Y\006Y\006Y\006Y\006Y\000\000\006Y\006Y\006Y\006Y\006Y\006Y\006Y\000\000\006Y\000\000\002R\000\000\006Y\002V\000\000\006Y\002Z\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\169\000\000\000\000\000\000\000\000\000\000\002^\006Y\000\000\002b\006Y\006Y\006Y\006Y\006Y\002r\002v\000\000\002~\006Y\006Y\000\000\000\000\000\000\006Y\002\134\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\002R\002\170\000\000\002V\000\000\000\000\002Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020*\000\000\002\174\000\000\000\000\000\000\002^\002\178\000\000\002b\000\n\000\000\000\000\000\000\000\000\002r\002v\000\000\002~\002\186\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\002\190\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\002\194\002\162\002\166\000\000\000\000\002\170\002\198\000\000\025b\000\000\025j\000\000\000\000\000\000\000\000\002\202\000\000\000\000\000\000\025r\000\000\002\206\002\174\000\000\025\146\000\000\000\000\002\178\000\000\000\000\000\n\022\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\186\000\000\022\222\000\000\022\226\000\000\000\000\000\000\000\000\000\000\000\000\002\190\022\230\000\000\000\000\000\000\000\000\000\000\022\234\000\000\000\000\022\242\000\000\000\000\002\194\022\246\000\000\000\000\000\000\000\000\002\198\022\250\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\002\206\000\000\022\254\025\154\000\000\000\000\000\000\n\138\n\146\000\170\000\000\000\174\000\000\n\214\n\222\n\230\011*\000\000\0112\011:\000\000\011J\000\000\011R\000\000\011Z\011\134\000\000\011\142\023\002\000\000\000\000\023\006\000\000\002R\000\000\000\000\002V\000\000\000\000\002Z\000\000\000\000\011\150\000\000\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\002^\023\030\011\158\002b\000\000\000\000\000\000\000\000\023\"\002r\bf\023&\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002R\000\000\000\000\002V\023*\000\000\002Z\002\142\002\146\023.\0232\002\150\002\154\002\158\011\174\000\000\002\162\002\166\000\000\000\000\002\170\000\000\002^\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\002r\002\182\000\000\002~\000\000\000\000\002\174\000\000\000\000\000\000\002\134\002\178\002\138\000\000\000\n\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\002\186\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\002\170\002\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\002\194\000\000\000\000\002\174\000\000\000\000\002\198\000\000\002\178\000\000\000\000\000\n\000\000\000\000\b\026\002\202\000\000\000\000\000\000\000\000\002\186\002\206\000\000\004}\000\000\000\000\004}\000\000\000\000\004}\000\000\002\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\002\194\004}\000\000\000\000\004}\000\000\002\198\000\000\000\000\000\000\004}\004}\000\000\004}\000\000\002\202\000\000\000\000\000\000\000\000\004}\002\206\004}\000\000\000\000\000\000\000\000\000\000\000\000\022\214\004}\004}\000\000\000\000\004}\004}\004}\000\000\000\000\004}\004}\022\218\000\000\004}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\222\000\000\022\226\000\000\000\000\000\000\000\000\000\000\000\000\004}\022\230\000\000\000\000\000\000\004}\000\000\022\234\004}\000\000\022\242\000\000\000\000\000\000\022\246\000\000\000\000\004}\000\000\000\000\022\250\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\024N\006Y\000\000\000\210\000\000\022\254\006Y\000\000\006Y\000\000\004}\000\000\000\000\006Y\006Y\000\000\004}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004}\000\000\000\000\000\000\006Y\011\189\004}\023\002\000\000\006Y\023\006\001\026\000\000\000\000\006Y\000\000\006Y\000\000\006Y\000\000\000\000\006Y\006Y\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\000\000\023\030\000\000\000\000\006Y\000\000\000\000\000\000\023\"\000\000\000\000\023&\000\000\000Z\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\006Y\000\000\023*\000\000\006Y\006Y\000\000\023.\0232\011\189\000\000\000\000\000\000\006Y\000\000\000\000\006Y\002\n\000\000\000\000\000\000\000\000\000Z\000\000\000\000\006Y\000\000\006Y\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\004\149\004\149\004\149\004\149\000\000\004\149\000\000\004\149\004\149\004\149\004\149\000\000\004\149\004\149\000\000\004\149\000\000\004\149\000\000\004\149\004\149\004\149\004\149\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\004\149\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\004\149\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\002R\000\000\000\000\002f\000\000\000\000\002j\000\000\000\000\000\000\004\149\000\000\000\000\001\234\000\000\000\000\004\149\000\000\000\000\000\000\000\000\000\000\002^\000\000\004\149\002b\000\000\000\000\001\242\000\000\000\000\002n\002\130\000\000\002~\000\000\000\000\004\149\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\002\002\000\000\000\000\006B\002\146\000\000\002\014\006F\002\154\002\158\000\000\000\000\006N\006R\002\006\000\000\006V\000\000\000\000\000\000\004\149\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\000\000\000\006^\000\000\000\000\000\n\000\000\000\000\000\000\002R\000\000\000\000\002f\000\000\006n\002j\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\004\149\000\000\002^\000\000\000\000\002b\000\000\000\000\000\000\006r\000\000\002n\bN\002\022\002~\006v\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\006z\000\000\000\000\000\000\000\000\000\000\002\206\006B\002\146\000\000\000\000\006F\002\154\002\158\r\145\000\000\006N\006R\006Y\000\000\006V\000\000\006Y\006Y\000\000\004\022\000\000\006Y\006Y\004j\006Y\000\000\006Y\000\000\006Y\006Y\006Y\006Z\000\000\006Y\006Y\000\000\006^\000\000\006Y\000\n\004\178\000\000\000\000\006Y\000\000\006Y\000\000\006Y\006n\000\000\006Y\006Y\006Y\000\000\000\000\000\000\000\000\006Y\000\000\006Y\000\000\000\000\006Y\006Y\006Y\006Y\000\000\006Y\000\000\006Y\000\000\000\000\006r\000\000\006Y\006Y\000\000\000\000\006v\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006z\000Z\000\000\000\000\006Y\000Z\002\206\006Y\006Y\000\000\000\000\006Y\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\006Y\000Z\000\000\000\000\006Y\000\000\006Y\006Y\000\000\000\000\004\230\006Y\006Y\000\000\000\000\000Z\006Y\006Y\006Y\000\000\005&\000\000\006Y\000\000\000\000\000Z\006Y\000\000\006Y\000\000\006Y\006Y\006Y\006Y\000\000\000\000\006Y\006Y\000\000\006Y\006Y\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\000\000\006Y\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\006Y\000\000\000\000\006Y\006Y\000\000\000\000\006Y\000\000\000\000\006Y\000\000\006Y\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000R\000V\000f\000\170\000\000\000\174\001\242\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\002\002\000\000\000\000\001\242\000\000\000\000\002\014\000\000\000\000\000\000\000\000\001\234\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\001\242\002\018\000\000\005Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\005^\005b\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\005Z\000\000\000\000\000\000\000\000\000\000\000\n\000\000\002\006\000\000\000\000\000\000\005^\005b\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\002\022\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\005f\006Y\002}\001\234\000\000\000\000\006Y\000\000\006Y\000\000\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\001\242\000\000\000\000\000\000\004\197\005f\000\000\000\000\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\002\000\000\000\000\000\000\000\000\006Y\005Z\b\249\000\000\006Y\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\005^\005b\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\006\n\000\000\000\000\000\000\002R\000Z\000\000\002f\006Y\000\000\002j\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\000\000\002^\000\000\000\000\002b\000\000\000\000\006Y\000\000\000\000\002n\006b\000\000\002~\000\000\000\000\000\000\000\000\006Y\000\000\002\134\000\000\002\138\000\000\005f\000\000\000\000\000\000\006Y\000\000\006B\002\146\006Y\006Y\006F\002\154\002\158\006Y\000\000\006N\006R\000\000\006Y\006V\006Y\000\000\002i\000\000\000\000\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Z\000\000\000\000\000\000\000\000\006^\006Y\000\000\000\n\006Y\006Y\000\000\000\000\006Y\000\000\000\000\000\000\006n\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\006r\000\000\b\150\000\000\000\000\000\000\006v\000Z\000\000\000\000\006Y\000\000\000\000\000\000\000\000\006z\000\000\000\000\006Y\000\000\000\000\002\206\006Y\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\006Y\000\178\000\186\000\194\001\006\006Y\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\006\226\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\006Y\000\000\000\000\006Y\006Y\006\234\007\018\006Y\001\242\000\000\000\000\000\000\006Y\006Y\000\000\000\000\000\000\006Y\000\000\000\000\006\242\000\000\000\000\000\000\001\253\000\000\007J\007R\002\002\000\000\000\000\000\000\000\000\000\000\028\018\000\000\007\026\000\000\000\000\006\250\000\000\007\n\002\006\000\000\000\000\000\000\028\022\005b\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\007\"\001.\000\000\0016\001\214\001\222\001\226\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\007*\000\000\028\026\001\253\001\234\000\000\000\000\007\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\001\242\000\000\001\253\028\018\000\000\004\189\001\253\001\253\000\000\000\000\000\000\002\006\000\000\000\000\000\000\028\022\005b\007Z\0072\000\000\002\002\000\000\000\000\000\000\000\000\000\000\028\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\028\022\005b\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\028\026\000\000\001\234\000\000\000\000\000\000\000\000\002R\000\000\000\000\012J\000\000\000\000\012N\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\b\221\028\026\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\002\002\012R\012^\000\000\000\000\000\000\005n\000\000\002Y\000\000\000\000\002\134\000\000\002\138\002\006\000\000\000\000\000\000\005^\005b\000\000\012r\002\146\000\000\000\000\012v\002\154\002\158\000\000\000\000\012z\012~\000\000\000\000\012\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\012\134\012\138\000\000\000\000\002R\000\000\012\142\012J\000\000\000\n\012N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\150\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\012R\012\146\000\000\000\000\000\000\000\000\000\000\012\154\000\000\000\000\002\134\000\000\002\138\012\158\000\000\t\t\000\000\000\000\000\000\000\000\012r\002\146\012\162\000\000\012v\002\154\002\158\000\000\002\206\012z\012~\000\000\000\000\012\130\000\000\000\000\000\000\000\000\002R\000\000\000\000\012J\000\000\000\000\012N\000\000\000\000\000\000\000\000\012\134\012\138\000\000\000\000\000\000\000\000\012\142\000\000\000\000\000\n\000\000\002^\000\000\000\000\000\000\000\000\000\000\000\000\012\150\000\000\012R\012\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002R\000\000\000\000\015\006\000\000\000\000\015\n\012r\002\146\012\154\000\000\012v\002\154\002\158\000\000\012\158\012z\012~\000\000\000\000\012\130\000\000\002^\000\000\012\162\000\000\000\000\000\000\000\000\000\000\002\206\015\014\016j\000\000\000\000\000\000\012\134\012\138\000\000\000\000\000\000\002\134\012\142\002\138\000\000\000\n\000\000\000\000\000\000\000\000\000\000\015&\002\146\000\000\012\150\015*\002\154\002\158\000\000\000\000\015.\0152\000\000\000\000\0156\000\000\000\000\000\000\000\000\002R\000\000\000\000\015\006\000\000\000\000\015\n\000\000\000\000\012\154\000\000\012\134\015:\000\000\000\000\012\158\000\000\015>\000\000\000\000\000\n\000\000\002^\000\000\012\162\000\157\000\000\000\000\000\000\015F\002\206\015\014\015\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002R\000\000\000\000\015\006\000\157\000\157\015\n\015&\002\146\015J\000\000\015*\002\154\002\158\000\000\015N\015.\0152\000\000\000\157\0156\000\000\002^\000\000\015R\000\157\000\157\000\000\000\000\000\000\002\206\015\014\015B\000\000\000\000\000\157\012\134\015:\r\162\000\000\000\157\002\134\015>\002\138\000\000\000\n\000\000\000\000\000\000\000\000\ba\015&\002\146\000\000\015F\015*\002\154\002\158\000\000\000\000\015.\0152\ba\000\157\0156\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ba\000\000\ba\000\000\000\000\000\000\015J\000\000\012\134\015:\ba\000\000\015N\000\000\015>\000\000\ba\000\n\000\000\ba\000\000\015R\000\000\ba\000\000\007)\015F\002\206\000\000\ba\000\000\000\157\000\000\000\000\000\000\000\000\000\000\007)\r\170\000\000\000\000\000\000\000\000\000\000\000\000\ba\025\154\007)\000\000\007)\015J\000\000\000\157\000\000\000\000\000\000\015N\007)\000\000\000\157\000\000\000\000\000\000\007)\000\000\015R\007)\000\157\000\157\000\000\007)\002\206\ba\000\000\000\000\ba\007)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026\158\ba\000\000\000\000\000\000\007)\ba\ba\ba\000\000\ba\ba\000\000\ba\000\000\000\000\000\000\000\000\000\000\000\000\ba\000\000\000\000\ba\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007)\000\000\000\000\007)\000\000\000\000\ba\000\000\000\000\000\000\000\000\ba\ba\000\000\000\000\000\000\007)\000\000\000\000\000\000\000\000\007)\007)\007)\000\000\007)\007)\000\000\007)\000\000\000\000\000\000\000\000\000\000\000\000\007)\000\000\000\000\007)\000\000\000\000\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)\000\000\000\000\000\000\000\000\007)\007)\000R\000V\000f\000\170\0242\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\022\218\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\022\222\000\000\022\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\230\001\234\000\000\000\000\000\000\000\000\022\234\000\000\024J\022\242\000\000\000\000\000\000\022\246\000\000\000\000\001\242\000\000\000\000\022\250\022\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\222\000\000\022\226\000\000\000\000\022\254\002\002\000\000\000\000\000\000\022\230\000\000\028\"\000\000\000\000\000\000\022\234\000\000\000\000\022\242\002\006\000\000\000\000\022\246\028\022\005b\000\000\000\000\000\000\022\250\000\000\000\000\023\002\000\000\000\000\023\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\254\000\000\000\000\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\000\000\023\030\000\000\000\000\000\000\000\000\000\000\000\000\023\"\000\000\000\000\023&\000\000\023\002\000\000\000\000\023\006\000\000\022\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023*\000\000\000\000\023\n\022\218\023.\0232\000\000\023\014\000\n\023\018\000\000\023\022\023\026\022\222\023\030\022\226\000\000\000\000\000\000\000\000\b\237\023\"\000\000\022\230\023&\000\000\000\000\000\000\000\000\022\234\000\000\022\214\022\242\000\000\000\000\000\000\022\246\000\000\000\000\023*\000\000\000\000\022\250\022\218\023.\0232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\222\000\000\022\226\000\000\000\000\024\246\000\000\000\000\000\000\000\000\022\230\000\000\000\000\000\000\000\000\000\000\022\234\000\000\000\000\022\242\000\000\000\000\000\000\022\246\000\000\000\000\000\000\000\000\000\000\022\250\000\000\000\000\023\002\000\000\000\000\023\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026j\000\000\000\000\023\n\000\000\000\000\000\000\000\000\023\014\000\n\023\018\000\000\023\022\023\026\000\000\023\030\000\000\000\000\000\000\000\000\000\000\000\000\023\"\000\000\000\000\023&\000\000\023\002\000\000\000\000\023\006\000\000\022\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023*\000\000\000\000\023\n\022\218\023.\0232\000\000\023\014\000\n\023\018\000\000\023\022\023\026\022\222\023\030\022\226\000\000\000\000\000\000\000\000\000\000\023\"\000\000\022\230\023&\000\000\000\000\000\000\000\000\000\000\015a\000\000\022\242\000\000\000\000\000\000\022\246\000\000\000\000\023*\000\000\000\000\022\250\000\000\023.\0232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015a\015a\000\000\000\000\000\000\022\254\000\000\000\000\012\194\000\000\000\000\000\000\000\000\000\000\000\000\015a\000\000\000\000\000\000\000\000\000\000\015a\015a\000\000\000\000\012\202\000\000\000\249\012\214\000\000\000\249\015a\023\002\000\000\015a\023\006\015a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\n\000\000\006\234\007\018\000\000\023\014\026\150\023\018\000\000\023\022\023\026\015a\023\030\000\000\000\000\000\000\000\000\006\242\000\000\023\"\000\000\000\249\023&\000\249\000\249\000\000\000\000\000\000\000\000\000\000\000\000\012\226\000\000\007\026\000\000\000\000\006\250\023*\007\n\000\000\000\000\000\000\023.\0232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015a\000\225\000\000\000\000\000\225\012\230\000\000\015a\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\012\238\000\000\000\000\000\000\000\000\015a\000\000\000\000\000\225\000\225\000\000\000\000\015a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015a\015a\000\000\006\242\000\000\000\000\000\000\000\225\000\000\000\225\000\225\000\000\000\000\000\000\007*\000\000\000\000\000\249\000\000\000\225\000\213\007\002\006\250\000\213\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\249\000\000\000\000\000\000\000\249\000\249\000\000\000\000\000\213\000\213\000\000\000\000\000\225\000\000\000\000\000\249\0072\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\213\000\217\000\000\006\250\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\225\000\000\000\000\000\000\007\002\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\225\000\000\000\217\000\000\000\225\000\225\000\217\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\225\000\225\000\000\000\217\000\221\000\000\006\250\000\221\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\213\000\000\000\000\000\000\007\002\000\221\000\221\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\006\242\000\000\000\213\000\213\000\221\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000\213\000\213\000\237\000\221\000\000\000\237\006\250\000\000\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\000\000\000\007\002\000\000\006\234\007\018\000\000\000\000\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\006\242\000\217\000\217\000\000\000\237\000\000\000\237\000\237\000\000\000\000\000\000\000\000\000\217\000\217\000\000\000\000\000\237\000\229\000\000\006\250\000\229\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\000\000\221\000\000\000\000\000\000\007\002\000\000\006\234\007\018\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\000\006\242\000\221\000\221\000\000\000\229\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\221\000\221\000\233\000\000\000\229\000\233\000\000\006\250\000\000\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\000\000\000\000\237\000\000\000\000\000\000\007\002\006\234\007\018\000\000\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\237\000\000\006\242\000\000\000\237\000\237\000\233\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\000\237\000\237\000\000\000\233\000\241\000\000\006\250\000\241\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\229\000\000\000\000\000\000\007\002\006\234\007\018\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\229\000\000\006\242\000\000\000\229\000\229\000\241\000\000\000\241\000\241\000\000\000\000\000\000\000\000\000\000\000\229\000\229\006\226\007\026\000\000\001\001\006\250\000\000\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\000\233\000\000\000\000\000\000\007\002\000\000\006\234\007\018\000\000\000\000\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\006\242\000\233\000\233\000\000\001\001\000\000\001\001\007R\000\000\000\000\000\000\000\000\000\233\000\233\000\000\000\000\007\026\006\226\000\000\006\250\000\245\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007*\000\000\000\000\000\241\000\000\000\000\000\000\007\002\000\000\006\234\007\018\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\006\242\000\241\000\241\000\000\000\245\000\000\000\245\000\245\000\000\000\000\000\000\000\000\000\241\000\241\006\226\000\000\007\026\000\253\000\000\006\250\000\000\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007*\000\000\000\000\001\001\000\000\000\000\000\000\007\002\006\234\007\018\000\000\000\000\000\000\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\001\001\000\000\006\242\000\000\001\001\001\001\000\253\000\000\000\253\007R\000\000\000\000\000\000\000\000\000\000\007Z\0072\000\000\007\026\000\161\000\000\006\250\000\000\007\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007*\000\000\000\000\000\245\000\000\000\000\000\000\007\002\000\161\000\161\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\245\000\000\r\154\000\000\000\245\000\245\000\177\000\000\000\161\000\161\000\000\000\000\000\000\000\000\000\000\000\245\0072\000\169\000\161\000\000\000\000\r\162\000\000\r\178\000\000\000\000\000\000\000\000\000\000\r\146\r\186\007*\000\000\000\000\000\253\000\000\000\000\000\000\007\002\000\000\r\146\r\186\000\000\000\000\r\154\000\000\000\161\000\000\000\000\000\000\000\177\000\177\000\253\000\000\000\000\r\154\000\253\000\253\000\173\000\000\000\177\000\169\000\169\r\162\000\000\r\178\000\000\000\253\0072\000\000\000\000\000\169\000\000\000\000\r\162\000\000\r\178\000\000\000\000\000\000\000\000\r\146\r\186\000\000\000\000\000\000\000\161\000\000\r\202\000\000\000\000\000\000\000\000\r\170\000\000\000\000\r\154\000\000\000\000\000\169\000\000\000\000\000\173\000\173\000\000\000\000\000\000\000\161\000\000\000\181\000\000\000\000\000\173\000\000\000\161\r\162\000\000\r\178\000\000\000\000\000\000\000\000\000\161\000\161\000\000\000\000\000\000\000\000\000\177\000\000\000\000\000\000\r\146\r\186\000\000\r\170\000\000\000\000\000\000\000\169\r\202\000\000\000\000\000\000\000\000\000\000\r\170\r\154\r\138\000\177\000\000\000\000\000\000\000\181\000\181\000\000\000\177\000\000\000\000\000\000\000\169\000\000\000\000\r\194\000\177\000\177\r\162\000\169\r\178\000\000\000\000\r\146\r\186\000\000\000\000\000\169\000\169\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\r\154\r\170\000\000\r\138\000\000\r\202\000\197\r\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\r\194\000\000\000\000\r\162\000\000\r\178\000\173\000\000\000\000\000\000\r\146\r\186\000\000\000\000\000\173\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\154\000\000\000\000\r\202\r\210\000\000\000\185\000\185\000\000\000\000\000\000\r\170\000\000\r\138\000\000\000\000\r\194\000\000\000\000\r\162\000\000\r\178\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\r\146\r\186\000\000\000\000\000\181\000\181\000\000\r\210\r\202\000\000\000\000\000\000\000\000\000\000\r\170\r\154\000\000\000\000\000\000\000\000\000\000\000\193\r\234\000\000\000\000\000\000\000\000\000\000\000\197\000\000\000\000\r\194\000\000\000\000\r\162\000\197\r\178\000\000\000\000\000\000\000\000\000\000\000\000\r\242\r\218\000\000\000\000\000\000\r\210\000\000\000\000\000\000\000\000\000\000\000\000\r\170\000\000\000\000\000\000\r\202\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\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\r\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\210\000\000\000\000\000\000\000\000\000\000\000\000\r\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\193\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\193\r\218")) + ((16, "\001d\000\237\000\000\000\000\000\236\000\237\000\000\000\000\000F\000\000\000\000\000\000\001\t\000\000\000\000\000\000\001d\000\000\000u\030\002\000\000\019\220\019\220\000\000\000\000>\004\019\220\000\000\027\204\019\220\000\000\000\000\019\220\000\000\019\220\000\000\000K\000h\019\220\000\000\019\220\000\000\000\000\000\000\019\220\000\000\019\220\000\000>\186\019\220\000\000S\012\019\220\000\000\000\000\019\220\000\000\019\220\000\000\000\154\001\016\019\220\000\000\019\220\000\000\019\220\000\000\019\220\000\000S&\019\220\000\000\000\000\019\220\000\000\019\220\000\000\000k\004x\004x\000\000\000r\001\170\000k\000\000\000f\001\"\000\000\000\000\000\000\000\000\000\000\000\000\001\220\000\000\000\000\001\212\005\186\000\000\002n\001\188\004x\000\000\002\170\007&\000\000\000\000\000\000\001\206\019\220\000\000S\012\004x\001\230\019\220\000\000\000\000\019\220\000\000\000\000\019\220\000\000\019\220\000\000\002\022\002\\\019\220\000\000\030\002S$J\244\000\000\000\000T\156\002\232:\232\001\220J\244\000\000\000\000\002,\019\220\000\000J\244\000\000\000k\0005J\210\000\000\000\000N\180On\000\000Tz\000\000O\236?4\026\160\026\160Tz?4\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000PD?4\000\000\000\000PDPDPD\000\000PD\000\000?4PD\000\000\000\000\000\000\031\216\000k\000\000\021R\026\160?4\000\000 \236?4(\150?4(\174?4\000\000\000\000\000\000\000\000\000\000\000\0001\026?4\000\0002\028?4)\196?4*&?4\000\000?4\000\000?4+(?4+\138?4,\140?4,\238?4-\240?4.R?4\003(?4\000\000\000\000\000\000\000\000\000\000?42~?43\128?43\226?44\228?4/T?4/\182?40\184?45F?46H?4\000\000?46\170?47\172?48\014?4\000\000?49\016?49r?4\000\000\000\000?4\000\000\003D\000\000\000\000\000k\000\000\000\000\000\000\003Z\000\000\003\168\000\000\000y?4\000\000\000y\000\000\000\000\002,\030\002\000\000\019 \019\220\000\000\000z\019\220\000\000UH\019\220\000\000\000\000\019\220\000\000\019\220\000\000\004\016\004\164\019\220\000\000\019\220\000\000\019\220\000\000\019\220\000\000\006 \019\220\000\000UT\019\220\000\000\000\000\019\220\000\000\019\220\000\000\004\146\004\200\019\220\000\000\019\220\000\000\019\220\000\000\019\220\000\000Up\019\220\000\000\000\000\019\220\000\000\019\220\000\000\002\000\004x\004\168\019\220\000\000S&\004x\005N\019\220\000\000\000\000\019\220\000\000\019\220\000\000\019\220\000\000\005\192\006>\019\220\000\000UTJ\244\006<\019\220\000\000[ZVj\000\000\001\"\007\\\000k\006\178\007\168W&W&\000\000\000\000\000\170[\138W&\0014W\224\000\000\000\000\000\000\004\184\007\180\000\018\007\228W&\000\000\000\000\007\"\000\000\0078\b\bW&\007D\000\000\000\000\000\000\003FX\016\000\000\000\000\000\000\007L\b4\000\000\b@\000\000\021\130\002\220J\244\007Z\019\220\000\000X(J\244\007~\019\220\000\000\000\000\000k\bn\000\000\000\000\000\000\002,\000\000\000\000\026\160\007\152\000\000\007\154Tz\000\000\000\000\000\000\000\000\000\000\000\000PD\000\000\000\000PD\000\000\000\000PD\000\000Tz\000\000\000\000K~\000k\000\000\021R\021R\000\000\004\186\025\144\021R$\000?4\000\000?4\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%V?4=\214?4\007\200?4\000\000?4`d?4aP?4a\192?4b\018?4bR?4b\210?4\000\000?4c\018?4cd?4c\212?4\000\000?4d&?4df\004\198\022\188\000\000\000\000\005\144\024&\000\000\000\000\000\000\000\000\007\160\000\000?4\007\160\000\000\000\000\000k\000\000\000\000\000\000\000\000\007\178\000\000\000\000\000\000\000\000\000\000\000\000\007\182\000\000\000\000\000\000\007\182\000\000\000\174P\194\bt?4\bB\000\000\000\000Tz\000\174\000\000\007\200\000\000\007\204?4\000\000\026\160\007\206\000\000\000\000\b\170\000\000\026\160\007\222\000\000\000\000\026\160\007\224\000\000\000\000\007\222\000\000\000\000\0005\000\000\b\208\000\000X@J\244\007\230\019\220\000\000\000\000\bp\000\000\007\242\019\220\000\000\000\000\002.\030\002\000\000\030\002\000\000\007\228\000\000\002.\000\000\017\134'\148\019\182\000\000\0066\019\182\000\000\019\182\019\182\000\000\000\000\019\182\000\000\019\182\000\000\b.\b\\\019\182\000\000\019\182\000\000\019\182\000\000\019\182\000\000\006\220\019\182\000\000\019\198\019\182\000\000\000\000\019\182\000\000\019\182\000\000\b2\b`\019\182\000\000\019\182\000\000\019\182\000\000\019\182\000\000L&\019\182\000\000\000\000\019\182\000\000\019\182\000\000\004\002\004x\b\n\019\182\000\000\019\214\004x\b\014\019\182\000\000\000\000\019\182\000\000\019\182\000\000\019\182\000\000\bD\br\019\182\000\000\030\002\b\"\000\000\019\220J\244\b\"\019\182\000\000\000\000\000k\000\000\001F\000k\000\000\000\000\000\000\t\022\000\000\004>J\244\b,\019\182\000\000L&J\244\b8\019\182\000\000\000\000\022\236\019\182\000\000\007\150\019\182\000\000LP\019\182\000\000\000\000\019\182\000\000\019\182\000\000\bh\b\150\019\182\000\000\019\182\000\000\019\182\000\000\019\182\000\000\bR\019\182\000\000L\158\019\182\000\000\000\000\019\182\000\000\019\182\000\000\bp\b\158\019\182\000\000\019\182\000\000\019\182\000\000\019\182\000\000L\198\019\182\000\000\000\000\019\182\000\000\019\182\000\000\005\178\004x\bF\019\182\000\000L\158\004x\bH\019\182\000\000\000\000\019\182\000\000\019\182\000\000\019\182\000\000\bz\b\168\019\182\000\000L\214J\244\bP\019\182\000\000\000\000\006bJ\244\bR\019\182\000\000L\228J\244\b\\\019\182\000\000\000\000\000\000\000\000\000\000\000\000\t6?4\bv\030\b\b\246\000\000\t@?4\b\132\tL:\232\000\000\000\000\000\000!\164\000k\000\000\000\172?4:\206\000\000Q\026\026\160\b\144\000\000\000\000?4\b\148\000\000\026\160\b\148\000\000\b\154[\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000PD\000\000\000\000PD\000\000\000\000PD\000\000[\170\000\000\000\000`\204\000k\000\000\021R\b\158\000\000?4\b\164\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\000\000\000?4\002@?4\b\168\000\000\000\000:\206:\206\"b\003\138\th?4\000\000\t0\000\000\000\000\000k\000\000#\132\000\000\b\230:\206\000\000\b\226:\206\000\000\000\174\000\000\000\000d\230?4e&?4e\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\000=*?4\000\000?4\000\000\tF\000\000\000y\000\000\000\000\000\000\000\000\000\000?\230?4@H?4\tp?4\000\000?4AJ?4A\172?4B\174?4C\016?4D\018?4Dt?4\000\000?4Ev?4E\216?4F\218?4\000\000?4G\000\000\001t\000\000\001t\000\000\017\134\007L\007L\000\000\000\000\000\000\000\000\000\000\000\000\n\022?4\tR\030\b\030\224\000k\n:\000\000\n\028J\210\nBJ\210\nF?4\tb\030\b\030\b\006b\006b\005\206\002\202\006b\000\000\000\000\005\218\007\016\000\000\005\228\b\152\000\000\000\000\000\000\000\000\000\000\tf\000\000\000\000\nN\000\000\nP\000\000\000\000\n\140\n4?4\tt\n^\000\000\nB\021R\t~\030\b\000\000\000\000\t\170\000\000\000.\000\000\005\214\000\000\000\000\001t\000\000\n\000\000\000\r$\000Q\000\000\r$\000\000\000\000#\132\000\000\0018\000\000\000\000\n8\000\000\r$\000\000\nL\021R\t\138\nx\000\000\001\168\000\000\nH\000k\t\150\nlW&\t\168\006T\000\000?4\n\154\000\000\n|W&\t\184\n\166\000\000\002\248?4\n\168\000\000\n\170\000\000\021\130\000k\003\000?4\n\172\000\000\n\174\000\000\000\000\000\000\n8\000\000\000\000\000.\000\000\007L\000\000\003\022\000\000\000\000\003`\030\224\000\000\003`\000\000\000\000\t\204\000\000\003\144\000\003\030\b\000\000\004`\000Q\004`\000\000\000.\000\000\007L\000\000\007L\000\000\000\000\000\000\t\198\000\000\000\000\t\208\000\000\005\184\005\214\000M\004`\000\000\000\000\000\000\002\014\000\000\007L\000\000\005\184\000\000\000\000\005\180\b\184\017\134\000\000\018D\000\000\b\194\017\134\000\000\000\000\b\194\000\000\000\000\t\206\000\000\000\000\t\216\000\000\006P\007L\000\000\006P\000\000\000\000\nV\000\000\000.\000\000\007L\000\000\000\000\000\000\018\240M\184\000\000\n\200\000\000\018\240\000\000\n\208\000\000\n\210\000\000!\164\000k\006\142\000\000?4\n\216\000\000\001\204\n\172\000k\t\250\n\194W&\t\254\007\014\000\000?4\n\230\000\000\007\016\000\000?4\n\232\000\000\021\130\000k\007&\000\000?4\n\234\000\000\006Z\018\240\000\000#\132\007L\000\000?4\n\236\000\000\000\000\000\000\005F\000\000\n\206\021R\n\n\n\244\000\000\007*\000\000\n\196\000k\n\020\n\220W&\n\024\007Z\000\000?4\011\004\000\000\007f\000\000?4\011\b\000\000\021\130\000k\007\128\000\000?4\011\n\000\000\006Z\000\000\000\000\n*\000\000\005F\007*\n\170\000\000\000\000\000\000\n\172\000\000\000\016\000\198\000\000\017\134\011\006\000\000\000\000?4\n`\007L\000\000\n2\000\000\000\t\000\000:\232\000\000\000\000\002>\017\134\000\000\017\134\000\000\n\"\000\000\002>\000\000?4\003\180?4\000\000?4\000\000\n$\000\000\003\180\000\000?4\003\180\n(\000\000\030\b\004&\030\b\000\000\030\b\000\000\n,\000\000\004&\000\000?4\003\180\n2\000\000:\232\004\222:\232\000\000:\232\000\000\n4\000\000\004\222\000\000?4\003\180\nV\000\000\000\000\029\\\000\000\000\000\n\220H\178\000\000\000\000\000\000\000\000\000\000\n\176\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\222H\178\000\000\002\240\004\238\000\000\n\178\000\237\000\000\000\000\000\000\000\149\004\238\000\000\000\000\000\000\000\000\011\016\000\000\000\000\000\000\000\000\"b$\250\000\000\\\182\000\000H\178\000\000\006@H\178\000\000\003^\005,\005,\000\000\0066\005,\000\000\n\138\000\000\000\000\000\000\000\000\011\022\000\000&L\000\000'\148H\178\000\000\000{H\178\000\000\011\028\000\000H\178\011\030\000\000^\142I\160\011&\000\000\011(\000\000^\250R^I\160\000\000\000\000\n\162H\178\0110\000\000\0114\000\000\0116\000\000\030\002\000\000\006\194\030\002\000\000\n\176\019\182\000\000\0032H\178\000\000\006\244H\178\000\000\003r\011\184\000\000\011\186\000\000H\178H\178\n\182\000\000\000\000\000\000\000\000\000\000\000\000\011D\000\000_\200H\178\011H\000\000\011J\000\000H\178\011L\000\000H\178\n\242\000\237\000\000\000\000\007\012H\178\000\000\003r\000\000\011P\000\000H\178\011R\000\000H\178\011T\000\000N\140\019\182\000\000\019\182\000\000I\160I\160\n\206H\178\011Z\000\000\011\\\000\000\019\182\000\000]\014\000\000\000\000\007\022H\178\000\000\004>\006B\005,\n\212\000\000\000\000\005 \000>\000\000\000\000\000\000\006\210\000>\000\000\n\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\178\000\000\007^H\178\000\000\000\003\007h\000\237\n\216\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011d\000\000\011f\000\000H\178\011h\000\000`\026H\178\011n\000\000\011p\000\000H\178\011r\000\000\028\n\011\028\031\216\019\198]\220\n\242\000\000H\178\011|\000\000\011\128\000\000\011R\028\nH\178\011\140\000\000H\178\011\142\000\000\011\144\000\000H\178\011\152\000\000\000\237\011\n\000\000\000\000\029\\\000\000\000\000\002\144\011\252\000\000\000\000\000\235\000\000\000\000\000\000?4\000\000\000\000\000\000\002\234\000\000\004\030\000\000\000\000\000\000\004`&\242&\242&\242\000\000\000\226\000\226\000\226\000\226\000\000\000\000\000\000\000\000\000\000\000\000\001t\017\134\011\252\014\154\000Q\000\000\000\000\0018\000\000\n8\000\000:\206\011&\000\000\001t\017\134\011,\016\016\000\000\001t\014\154\000\000\000\000\000\000J\244\014\230\000\000\000\000\000\000\011z\003\016\011\250Y\182Y\182\000\000\006v^\134Y\182\006\220Y\230\000\000\000\000\005\202\011\234\000k\000\000\007\006Z\160\000\000\000\000\000\000\000\000\000\000\0118\011\248\007L\0116\000\000\0018\000\000\n8\000\000\n\132\005\014\000\000\000\000\011\228\000\000\000\000\002\144\000\000\005R\000\000\000\000\000\000?4\000\000\002\234\000\000\005\198\000\000\000\000\000\000\005\214\000\000\011\174\002\218\011\174\000\000\007L\011\174\000\000\002\218\000\000\007L\000\000\007L\000\000\007L\000\000\n\132\000\000\000\000\000\000\000\000\000\000\007L\000\000\002\218\000\000\007L\000\000\rp\000\000\000\000\b\194\011j\000\237\005 \012\012\001X\000\000\001X\0124\000\000\0126\000\000\012<\000\000\000\000\001l\001X\006l\001X\000\000\000\000\002\n\004\022\011<\000\000\011F\000\000\011\134\000\237\004\022\011N\000\000\003\180\012R\000\000\004\022\007\226\012f\005\162\012f\000\000\000\000\004\250\000\237\000\000\000\229\000\000\000\000\003\218\000\000\011V\000\000\000\000\000\000\011\152\000\237\004\022\011^\000\000\000\000\003\180\004\022\007\226\004\250\000\229\003\218\011`\000\000\004\022\007\226\004\250\000\229\003\218\011b\000\000\005\144\000\164\011~\000\237\011x\b2\b0\011\162\000\237\000\000\011\164\000\237\000\000\012\002\000\000\011\136\b.\011\130\b2\012\b\000\000\011\134\b2\012\014\000\000\000\000\b2\000\000\012\016\000\000"), (16, "\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\000\n\rm\rm\rm\rm\rm\rm\rm\rm\rm\rm\030\178\001:\004~\015\210\rm\015\210\005-\030\182\006\157\rQ\n\218\rm\017^\rm\017^\025V\025^\rm\rm\026V\rm\001B\r\017\rm\005\157\0007\000;\002N\rm\rm\rm\000N\t\134\022\182\022\222\022\238\023\022\023&\023N\rm\027\191\027\195\rm\rm\005-\027\199\014!\004\174\rm\rm\004\182\rm\004\198\rm\000\n\026\194\000&\018v\rm\004\206\rm\rm\rm\rm\rm\001J\015\210\024\018\rm\rm\rm\rQ\rm\rm\rm\017^\000*\rm\rm\rm\rm\rm\t\245\001B\024\178\rm\rm\018\134\006\245\018\134\004\214\r\017\000\150\031.\012\225\012\146\rm\rm\rm\006\157\012\150\rm\rm\rm\rm\028\n\rm\012\154\rm\014!\005\157\rm\012\158\028\014\rm\rm\000\n\014!\014!\006\157\012\241\015\250\014!\006\157\004\230\019\190\rm\r\t\r\t\rm\026r\007\029\015\162\rm\rm\rm\rm\005\t\000\n\rm\r\182\rm\012\241\022f\t\245\rm\rm\rm\006\165\rm\018\134\rm\rm\022N\rm\015\254\rm\rm\0066\000\154\rm\rm\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\001Z\007%\007%\007%\007%\007%\007%\007%\007%\007%\007%\000\006\000\"\000\n\018v\007%\015\214\015\230\015\246\005\234\005\t\rI\007%\015\210\007%\030\018\004\189\005\t\007%\007%\000\242\007%\017^\004\189\007%\012\234\006\181\020\186\b\166\007%\r\246\007%\001^\001B\020\190\r\t\030\022\001b\020\194\005i\007%\001f\030:\030\026\006\014\014\234\r\t\015N\tA\007%\007%\007\029\r\t\r\t\007%\007%\014!\000\246\001j\007%\018\234\007%\007%\007%\007%\007%\000\n\014\234\015\002\007%\007%\007%\022:\007%\007%\007%\018\238\000\022\007%\007%\007%\007%\007%\001N\r\t\004\145\007%\007%\002\146\r\t\r\t\001\150\015.\002\158\021\014\000.\002\146\018\134\007%\007%\015.\002\158\007%\007%\007%\007%\002&\007%\030\"\007%\001B\018v\007%\006\026\002\146\007%\007%\t1\015.\002\158\015\210\030:\n\226\tf\005v\000\n\001B\014!\014!\017^\007%\022\150\014!\000\n\007%\007%\007%\007%\001z\005\157\007%\030*\007%\000\n\001B\030J\007%\007%\007%\006\189\006\189\000\n\007%\007%\004\150\007%\030B\007%\007%\000\n\007E\007%\007%\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\000\n\007E\007E\007E\007E\007E\007E\007E\007E\007E\007E\b\241\004\145\tn\007E\007E\001\134\007E\004\145\004\145\001\182\022\158\007E\b\221\007E\027\174\007E\018\134\007E\007E\004\145\007E\001\202\001\246\007E\007E\018v\012\241\007E\007E\007E\007E\012\241\007E\007E\015\210\001\250\007E\005\157\017\230\007E\012\241\r\190\007E\017^\012\241\004\145\006\154\030B\007E\007E\007E\007E\006\237\007E\002\030\018\234\0026\001B\007E\027\174\007E\007E\007E\007E\007E\r\202\001B\006\197\007E\007E\007E\018\238\007E\007E\007E\006\221\r9\007E\007E\007E\007E\007E\001\146\025V\025^\012M\007E\r\222\002\146\b\237\000\n\002\146\002\154\002\158\007E\015.\002\158\007E\007E\000\n\007E\007E\007E\007E\007E\005\213\007E\019\142\007E\007E\005I\007E\001\162\024f\007E\007E\018v\015n\018\134\002m\019\154\005\185\015\138\025f\005\213\000\n\007E\023\242\000\n\007E\022\190\0192\b\213\007E\007E\019R\007E\014\234\023\230\007E\007U\007E\014\234\t\217\004~\007E\025>\012M\n\025\n\025\t\253\014\234\007E\n\025\007E\014\234\007E\007E\003\162\004\141\007E\007E\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\023v\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\022\246\023z\026V\006n\012\162\005\209\nb\002\157\004R\005\213\022\198\012\178\023~\001\234\023\130\007U\004n\002R\012\186\007\021\015\170\005\181\023\134\015\174\005\209\t\253\001B\005I\001\242\005\213\015\194\023\146\030~\005I\005I\023\150\n\254\004\197\026j\002b\014\162\023\154\028.\006\245\004\197\005I\005I\b\249\017r\016\006\028Z\028f\030\190\017v\019\202\004v\001B\023\158\002\134\000\n\002\138\005y\002\006\018~\017~\t\237\001>\022\254\016\030\002\146\017\130\005I\016\"\r\214\002\158\006\213\004\141\016&\016*\012\206\012\210\016.\004\141\004\141\023\162\001B\017\134\023\166\004\218\000\n\0065\023\246\023.\006.\004\141\030\n\005\209\r>\0162\023\250\023\170\017\138\017\142\0166\017\146\023\174\000\n\023\178\017\166\023\182\023\186\005U\023\190\029/\017\178\016>\005\209\001B\000\n\023\194\004\141\0293\023\198\027\231\027\235\015\030\028z\t\237\027\239\017\210\023\138\0296\006\229\017\214\018\"\005y\012\214\023\202\001F\016B\004\222\018&\023\206\023\210\024\006\016J\005y\005y\021\154\026n\000\n\005y\018.\005.\016N\024j\007M\007M\0052\0236\002\214\007M\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\004~\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\005~\003\229\007V\007=\012\162\003\229\b\181\026r\b\030\007=\007=\012\178\b\165\001\234\031*\000\n\018\234\002R\012\186\014\174\015\170\030\166\005\002\015\174\014\190\005\n\t\t\005\026\001\242\015\"\015\194\002}\018\238\t\154\005\"\011\254\t\162\006\205\t\178\002b\001>\030\n\015\210\028\218\004\150\t\186\020\014\007=\017r\016\006\028Z\017^\002\146\017v\020\018\001B\015.\002\158\002\134\001B\002\138\005\137\002\006\018~\017~\005*\004\141\001B\016\030\002\146\017\130\000\n\016\"\r\214\002\158\006\245\t\194\016&\016*\012\206\012\210\016.\023\138\005\146\004\137\018\130\017\134\012\217\000\n\000\n\029O\029S\000\n\012\217\012\217\029W\019\n\r>\0162\005:\000\n\017\138\017\142\0166\017\146\012\217\000\n\026Z\017\166\b.\t\210\005U\001F\002M\017\178\016>\t\238\005\186\030\150\t\246\004\137\n\006\020\142\012j\017\218\020\250\018\134\021n\n\014\017\210\006\237\012\217\006\253\017\214\018\"\rA\012\214\b\225\003\229\016B\017\226\018&\003\229\001B\b\209\016J\017\246\005\137\029o\029s\b\193\018\002\018.\029w\016N\002]\007]\007]\005\190\n\022\002\214\007]\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\n\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\019\014\004\137\021*\021>\012\162\024v\n&\004\137\004\137\017\222\024Z\012\178\r\001\001\234\021Z\005\210\021\182\002R\012\186\004\137\015\170\007\005\0116\015\174\017\218\011>\007\r\011N\001\242\020\254\015\194\004\229\021\186\021~\011V\001>\004\137\028\190\r)\002b\021\214\t%\015\210\001B\004\150\004\137\021\234\030B\016\002\016\006\r1\017^\002\146\017v\001B\r\025\015.\002\158\002\134\022\006\002\138\005\165\002\006\017z\017~\011^\005\238\026\198\016\030\002\146\017\130\005\246\016\"\r\214\002\158\025&\000\n\016&\016*\012\206\012\210\016.\012\233\026\130\030\142\014)\017\134\000\n\028\202\000\n\012\249\r!\t\021\021.\021B\005\250\017\222\r>\0162\011n\025J\017\138\017\142\0166\017\146\021^\000\n\001F\017\166\028\234\0062\005U\025\206\002\141\017\178\016>\011\138\026J\b\197\011\146\000\n\011\162\031B\031j\021\130\006:\018\134\006J\011\170\017\210\006\237\021\218\002q\017\214\018\"\005\165\012\214\021\238\006R\016B\031>\018&\031N\006V\006^\016J\005\165\005\165\006\130\006\134\022\n\005\165\018.\026\182\016N\006\142\n!\n!\006\162\011\178\002\214\n!\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\006\182\001&\006\202\001.\012\154\0016\001\214\001\222\001\226\012\158\006\234\006\242\0075\007\170\bF\012\162\bR\011\194\0075\0075\005I\031\147\012\178\br\001\234\b\142\b\158\b\174\002R\012\186\0075\015\170\b\182\b\206\015\174\bm\b\214\b\230\029\254\001\242\bu\015\194\b\242\000\n\017\218\b\254\t\014\t\026\015\210\bm\002b\t.\t>\015\210\bu\tN\0075\017^\tV\016\002\016\006\t{\017^\001B\017v\t\198\t\202\n\026\n\030\002\134\nj\002\138\n~\002\006\017z\017~\n\166\n\170\n\186\016\030\002\146\017\130\n\202\016\"\r\214\002\158\n\246\011\006\016&\016*\012\206\012\210\016.\011\026\011b\011f\000\n\017\134\011\182\011\186\012\006\012\026\bm\012B\012F\012Z\012r\bu\r>\0162\030f\012\134\017\138\017\142\0166\017\146\017\222\000\n\012\166\017\166\030z\012\174\012\182\012\190\005I\017\178\016>\030\210\012\198\030~\005I\005I\018\134\012\202\r\002\r\018\r\030\018\134\002a\r&\017\210\r\134\005I\005I\017\214\018\"\r\146\012\214\r\198\r\226\016B\r\238\018&\014\n\014\022\bm\016J\014\210\014\222\014\230\bu\014\250\015\006\018.\015\014\016N\015\018\bm\005I\015\026\015*\002\214\bu\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\015:\001&\015B\001.\012\154\0016\001\214\001\222\001\226\012\158\015F\015V\015^\015v\015~\012\162\015\146\015\154\015\166\015\186\015\206\015\218\012\178\015\226\001\234\015\234\015\242\016\014\002R\012\186\012\146\015\170\016\022\016v\015\174\012\150\016\130\016\186\016\234\001\242\028\n\015\194\012\154\017\150\017\158\017\174\017\182\012\158\028\014\017\190\002b\017\198\017\206\015\210\018\030\018*\0182\018>\018B\016\002\016\006\018J\017^\018N\017v\018V\018^\018n\018\146\002\134\018\214\002\138\018\222\002\006\017z\017~\018\226\018\242\018\250\016\030\002\146\017\130\018\234\016\"\r\214\002\158\018\254\019\006\016&\016*\012\206\012\210\016.\019\022\019\030\019&\014)\017\134\018\238\019*\019:\019B\019Z\019b\019\178\019\250\020\006\020z\r>\0162\020\134\020\166\017\138\017\142\0166\017\146\020\210\000\n\002\146\017\166\020\226\020\234\015.\002\158\021\006\017\178\016>\021\018\021\026\021\030\021&\0216\021J\021f\021\138\021\162\021\170\018\134\021\174\021\190\017\210\021\198\021\202\021\210\017\214\018\"\021\226\012\214\021\246\022\018\016B\022&\018&\0226\022F\000\n\016J\022^\022n\022z\005i\022\171\022\211\018.\022\235\016N\023\011\014)\014)\023#\023C\002\214\014)\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\023[\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\023r\023\142\023\254\024+\012\162\024\130\024\151\b5\b5\024\191\024\203\012\178\b5\001\234\024\219\024\227\024\254\002R\012\186\025\007\015\170\025\015\025\023\015\174\0252\025Z\025b\025r\001\242\025\143\015\194\025\159\025\167\025\179\025\190\025\227\025\239\025\251\026\030\002b\026'\026/\026b\026\142\026\206\026\239\026\247\027\003\017r\016\006\027\019\027\027\027'\017v\029\134\0272\027B\027O\002\134\027W\002\138\027^\002\006\018~\017~\027k\027w\027\127\016\030\002\146\017\130\027\139\016\"\r\214\002\158\027\151\027\178\016&\016*\012\206\012\210\016.\028:\028b\028r\028\166\017\134\028\174\028\222\029\006\029\n\029\018\029;\030\002\030\014\030\030\030&\r>\0162\030.\030[\017\138\017\142\0166\017\146\030c\000\n\030j\017\166\030w\030\130\005U\030\146\030\199\017\178\016>\030\214\030\227\031\007\031#\0312\031:\031F\031R\031_\031f\031n\031w\031~\017\210\031\135\031\155\000\000\017\214\018\"\000\000\012\214\000\000\000\000\016B\000\000\018&\000\000\000\000\000\000\016J\000\000\000\000\000\000\000\000\000\000\000\000\018.\000\000\016N\000\000\n\005\n\005\000\000\000\000\002\214\n\005\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\000\000\000\000\000\000\000\000\012\162\000\000\000\000\000\000\000\000\000\000\000\000\012\178\000\000\001\234\000\000\000\000\000\000\002R\012\186\012\146\015\170\000\000\000\000\015\174\012\150\000\000\000\000\000\000\001\242\028\n\015\194\012\154\000\000\000\000\000\000\000\000\012\158\028\014\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017r\016\006\000\000\000\000\000\000\017v\018\154\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\018~\017~\000\000\000\000\000\000\016\030\002\146\017\130\018\234\016\"\r\214\002\158\000\000\000\000\016&\016*\012\206\012\210\016.\000\000\000\000\000\000\014\005\017\134\018\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\002\146\017\166\000\000\000\000\015.\002\158\000\000\017\178\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\017\210\000\000\000\000\000\000\017\214\018\"\000\000\012\214\000\000\000\000\016B\000\000\018&\000\000\000\000\000\n\016J\000\000\000\000\000\000\005i\000\000\000\000\018.\000\000\016N\000\000\014\005\014\005\000\000\000\000\002\214\014\005\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\000\000\000\000\000\000\000\000\012\162\000\000\000\000\nQ\nQ\000\000\000\000\012\178\nQ\001\234\000\000\000\000\000\000\002R\012\186\012\146\015\170\000\000\000\000\015\174\012\150\000\000\000\000\000\000\001\242\028\n\015\194\012\154\000\000\000\000\000\000\000\000\012\158\028\014\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017r\016\006\000\000\000\000\000\000\017v\028>\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\018~\017~\000\000\000\000\000\000\016\030\002\146\017\130\000\000\016\"\r\214\002\158\000\000\000\000\016&\016*\012\206\012\210\016.\000\000\000\000\000\000\000\000\017\134\015\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\002\146\017\166\000\000\000\000\015.\002\158\000\000\017\178\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\017\210\000\000\000\000\000\000\017\214\018\"\000\000\012\214\000\000\000\000\016B\000\000\018&\000\000\000\000\000\n\016J\000\000\000\000\000\000\005i\000\000\000\000\018.\000\000\016N\000\000\014Q\014Q\000\000\000\000\002\214\014Q\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\000\000\000\000\000\000\000\000\012\162\000\000\000\000\000\000\000\000\000\000\000\000\012\178\000\000\001\234\000\000\000\000\000\000\002R\012\186\000\000\015\170\000\000\000\000\015\174\000\000\000\000\000\000\000\000\001\242\000\000\015\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017r\016\006\000\000\000\000\000\000\017v\028>\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\018~\017~\000\000\000\000\000\000\016\030\002\146\017\130\000\000\016\"\r\214\002\158\000\000\000\000\016&\016*\012\206\012\210\016.\000\000\000\000\000\000\000\000\017\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\000\000\017\166\000\000\000\000\000\000\000\000\000\000\017\178\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\017\210\000\000\000\000\000\000\017\214\018\"\000\000\012\214\000\000\000\000\016B\000\000\018&\000\000\000\000\000\000\016J\000\000\000\000\000\000\000\000\000\000\000\000\018.\000\000\016N\000\000\014M\014M\000\000\000\000\002\214\014M\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\000\000\000\000\000\000\000\000\012\162\000\000\000\000\000\000\000\000\000\000\000\000\012\178\000\000\001\234\000\000\000\000\000\000\002R\012\186\000\000\015\170\000\000\000\000\015\174\000\000\000\000\000\000\000\000\001\242\000\000\015\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017r\016\006\000\000\000\000\000\000\017v\020F\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\018~\017~\000\000\000\000\000\000\016\030\002\146\017\130\000\000\016\"\r\214\002\158\000\000\000\000\016&\016*\012\206\012\210\016.\000\000\000\000\000\000\000\000\017\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\000\000\017\166\000\000\000\000\000\000\000\000\000\000\017\178\016>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bm\000\000\000\000\000\000\018v\017\210\000\000\000\000\000\000\017\214\018\"\000\000\012\214\015\210\bm\016B\000\000\018&\000\000\000\000\000\000\016J\017^\000\000\000\000\000\000\000\000\000\000\018.\000\000\016N\000\000\000R\000V\000f\000\170\002\214\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\004\162\004\170\000\170\000\000\000\174\000\000\004\238\004\246\004\254\005B\bm\005J\005R\001\234\005b\000\000\005j\002R\005r\005\158\015\170\005\166\000\000\015\174\000\000\000\000\000\000\000\000\001\242\000\000\020\198\000\000\000\000\000\000\000\000\000\000\000\000\005\174\000\000\002b\018\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\214\016\006\000\000\000\000\005\182\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\bm\000\000\000\000\000\000\000\000\016\030\002\146\000\000\000\000\016\"\002\154\002\158\bm\000\000\016&\016*\012\206\020\218\016.\000\000\000\000\000\000\000\000\005\198\t\166\006\149\000\000\000\000\000\000\000\000\000\000\000\000\t\250\006\149\r>\0162\006\149\006\149\000\000\000\000\0166\006\149\000\000\000\n\006\149\006\149\006\149\000\000\006\149\000\000\006\149\000\000\016>\006\149\006\149\000\000\006\149\000\000\006\149\011\209\011\209\000\000\000\000\011\209\006\149\000\000\006\149\006\149\000\000\006\149\000\000\006\149\006\149\012\214\006\149\006\149\016B\006\149\020\222\006\149\006\149\000\000\016J\006\149\006\149\006\149\006\149\006\149\006\149\020\230\006\149\016N\000\000\006\149\000Z\000\000\006\149\002\214\006\149\011\209\000\000\006\149\000Z\000\000\006\149\nv\006\149\006\149\n\194\006\149\000Z\000\000\006\149\000Z\006\149\000\000\006\149\006\149\000\000\000\000\006\149\000\000\000\000\006\149\006\149\000\000\011\209\000\000\006\149\006\149\000\000\006\149\000\000\000\000\000\000\000\000\006\149\000\000\000\000\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\000\000\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\000\000\000\000\000\000\006\149\000\000\006\149\006\149\000\000\000\000\006\149\006\149\006\149\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\011\209\006\149\000\000\000\000\006\149\000\000\006\149\006\149\000\000\006\149\006\149\006\149\000\000\000\000\006\149\006\149\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\004\162\004\170\000\170\000\000\000\174\000\000\004\238\004\246\004\254\005B\000\000\005J\005R\001\234\005b\000\000\005j\002R\005r\005\158\002j\005\166\000\000\002n\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\174\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002\254\006\226\000\000\002~\005\182\000\000\007J\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006\246\002\146\000\000\000\000\006\250\002\154\002\158\000\000\007N\006\254\007\002\000\000\000\000\007\006\000\000\000\000\000\000\000\000\005\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\n\000\000\000\000\000\000\000\000\007\014\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007R\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\026\000\000\000\000\000\000\000\000\000\000\007\"\000\000\000\000\004\221\000\000\000\000\000\000\000\000\000\000\007&\000\000\000R\000V\000f\000\170\002\214\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\011*\0112\000\170\000\000\000\174\000\000\011v\011~\011\134\011\202\000\000\011\210\011\218\001\234\011\234\000\000\011\242\002R\011\250\012&\002j\012.\000\000\002n\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0126\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002\254\006\226\000\000\002~\012>\000\000\007J\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006\246\002\146\000\000\000\000\006\250\002\154\002\158\000\000\007N\006\254\007\002\000\000\000\000\007\006\000\000\000\000\000\000\000\000\012N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\n\000\000\000\000\000\000\000\000\007\014\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007R\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\026\000\000\000\000\000\000\000\000\000\000\007\"\000\000\000\000\b\169\000\000\000\000\000\000\000\000\000\000\007&\000\000\000R\000V\000f\000\170\002\214\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\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\002R\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002\254\006\226\000\000\002~\000\000\000\000\007J\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006\246\002\146\000\000\000\000\006\250\002\154\002\158\000\000\007N\006\254\007\002\000\000\000\000\007\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\007\n\000\000\000\000\000\000\000\000\007\014\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007R\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\026\000\000\000\000\000\000\000\000\000\000\007\"\000\000\000\000\002Q\000\000\000\000\000\000\000\000\000\000\007&\000\000\000R\000V\000f\000\170\002\214\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\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\002R\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002\254\006\226\000\000\002~\000\000\000\000\007Z\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\006\246\002\146\000\000\000\000\006\250\002\154\002\158\000\000\007N\006\254\007\002\000\000\000\000\007\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\007\n\000\000\000\000\000\000\000\000\007\014\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\007\022\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\007\026\000\000\000\000\000\000\000\000\000\000\007\"\000\000\000\000\b\185\001\234\000\000\000\000\000\000\002R\007&\000\000\002V\000\000\000\000\002Z\002\214\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002z\002v\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\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\000\000\000\000\000\000\000\000\002\174\000\000\000\000\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\186\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\006\149\000\000\000\000\000\000\000\000\006\149\000\000\000v\002\194\000\000\006\149\000\000\006\149\000\000\002\206\000\000\000\000\006\149\006\149\000\000\000\000\000\000\000\000\002\222\000\000\000R\t\142\t\150\000\170\002\214\000\174\000\000\t\218\t\226\t\234\n.\000\000\n6\n>\023v\nN\000\000\nV\000\000\n^\n\138\001\222\n\146\006\149\000\000\000\000\023z\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023~\n\154\023\130\000\000\000\000\000\000\006\149\000\000\000\000\000\000\023\134\000\000\000\000\000\000\000\000\000Z\027.\000\000\006\149\023\146\000\000\000\000\000\000\023\150\000\000\000\000\006\149\000\000\000\000\023\154\006\149\006\149\000\000\000\000\000\000\000\000\n\178\000\000\000\000\000\000\000\000\025\026\006\149\000\000\000\000\023\158\026:\000\000\000\000\000\000\n\190\000\000\000\000\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\000\000\000\000\000\000\023\162\000\000\000\000\023\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\023\170\000\000\000\000\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\006\149\000\000\000\000\006\149\006\149\000\000\023\194\006\149\000\000\023\198\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\000\000\000\000\000\000\000\000\000\000\000\000\023\202\000\000\000\000\000\000\000\000\023\206\023\210\001\133\001\133\001\133\001\133\000\000\001\133\000\000\001\133\001\133\001\133\001\133\000\000\001\133\001\133\000\000\001\133\000\000\001\133\000\000\001\133\001\133\001\133\001\133\000\000\000\000\000\000\000\000\023f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\133\001\133\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\000\000\001\133\000\000\000\000\023j\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\001\133\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\001\133\000\000\000\000\001\133\000\000\000\000\012\162\000\000\000\000\000\000\000\000\000\000\001\234\012\178\000\000\000\000\001\133\000\000\000\000\002R\012\186\001\133\015\170\001\133\000\000\015\174\001\133\001\242\023n\000\000\000\000\000\000\015\194\001\133\000\000\001\133\000\000\000\000\001\133\000\000\000\000\002b\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\017\162\016\006\000\000\001\133\001\133\017v\000\000\000\000\001\133\001\133\002\134\002\006\002\138\000\000\000\000\000\000\017~\000\000\000\000\024.\016\030\002\146\017\130\000\000\016\"\r\214\002\158\000\000\000\000\016&\016*\000\000\000\000\016.\000\000\000\000\000\000\000\000\017\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\000\000\017\166\000\000\000\000\000\000\012\162\000\000\017\178\016>\000\000\000\000\000\000\012\178\000\000\000\000\000\000\000\000\000\000\002R\012\186\000\000\015\170\017\210\000\000\015\174\000\000\017\214\018\"\000\000\000\000\000\000\015\194\016B\000\000\018&\000\000\000\000\000\000\016J\000\000\002b\000\000\000\000\000\000\000\000\018.\000\000\016N\000\000\016\026\016\006\000\000\000\000\002\214\017v\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\017~\000\000\000\000\000\000\016\030\002\146\017\130\000\000\016\"\r\214\002\158\000\000\000\000\016&\016*\000\000\000\000\016.\000\000\000\000\000\000\000\000\017\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r>\0162\000\000\000\000\017\138\017\142\0166\017\146\000\000\000\n\000\000\017\166\000\000\000\000\000\000\000\000\023v\017\178\016>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\241\023z\000\000\015\241\000\000\017\210\000\000\000\000\000\000\017\214\018\"\000\000\023~\000\000\023\130\016B\000\000\018&\000\000\000\000\000\000\016J\023\134\000\000\015\241\015\241\000\000\000\000\018.\015\241\016N\023\146\002\242\015\241\000\000\023\150\002\214\000\000\000\000\015\241\000\000\023\154\015\241\015\241\000\000\015\241\015\241\000\000\000\000\002\250\000\000\015\241\003\014\000\000\000\000\015\241\000\000\023\158\015\241\000\000\015\241\015\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\241\023\162\015\241\000\000\023\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\241\000\000\000\000\000\000\023\170\000\000\000\000\004V\000\000\023\174\0276\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\000\000\000\000\000\000\000\000\023\194\000\000\000\000\023\198\015\241\015\241\000\000\015\241\015\241\004Z\000\000\015\241\000\000\000\000\000\000\000\000\000\000\000\000\023\202\015\129\004b\000\000\015\129\023\206\023\210\015\241\000\000\000\000\015\241\015\241\015\241\015\241\015\241\000\000\000\000\000\000\015\241\015\241\015\241\000\000\015\241\015\241\015\241\015\129\015\129\000\000\000\000\000\000\015\129\000\000\000\000\002\242\015\129\000\000\000\000\000\000\000\000\000\000\015\129\000\000\000\000\015\129\015\129\000\000\015\129\015\129\000\000\000\000\002\250\000\000\015\129\003\014\000\000\000\000\015\129\000\000\000\000\015\129\000\000\015\129\015\129\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\015\129\001.\015\129\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\015\129\000\000\000\000\000\000\000\000\000\000\000\000\004V\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\015\129\015\129\000\000\015\129\015\129\004Z\000\000\015\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004b\002\002\000\000\000\000\000\000\015\129\000\000\000\000\015\129\015\129\015\129\015\129\015\129\000\000\000\000\002\006\015\129\015\129\015\129\000\000\015\129\015\129\015\129\011\205\011\205\011\205\011\205\000\000\011\205\000\000\011\205\011\205\011\205\011\205\000\000\011\205\011\205\000\000\011\205\000\000\011\205\000\000\011\205\011\205\011\205\011\205\000\000\000\000\005\185\000\000\000\000\005\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\011\205\011\205\011\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\205\000\000\005\185\005\185\000\000\000\000\011\205\005\185\000\000\024>\005\185\005\185\000\000\024F\000\000\000\000\000\000\005\185\000\000\011\205\005\185\005\185\000\000\005\185\005\185\000\000\011\205\005\185\000\000\005\185\005\185\011\205\000\000\005\185\000\000\000\000\005\185\000\000\005\185\005\185\011\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\185\011\205\005\185\000\000\011\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\185\000\000\000\000\000\000\011\205\000\000\000\000\005\185\000\000\011\205\000\000\011\205\000\000\000\000\011\205\000\000\000\000\000\000\000\000\000\000\000\000\011\205\000\000\011\205\000\000\000\000\011\205\005\185\005\185\000\000\005\185\005\213\005\185\000\000\005\185\000\000\000\000\000\000\000\000\000\000\000\000\011\205\011\205\005\185\000\000\000\000\024\154\011\205\005\185\005\181\000\000\005\185\005\181\005\185\000\000\005\185\000\000\000\000\000\000\005\185\005\185\005\185\000\000\005\185\005\185\005\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\181\005\181\000\000\000\000\000\000\005\181\000\000\000\000\005\181\005\181\000\000\000\000\000\000\000\000\000\000\005\181\000\000\000\000\005\181\005\181\000\000\005\181\005\181\000\000\000\000\005\181\000\000\005\181\005\181\000\000\000\000\005\181\000\000\000\000\005\181\000\000\005\181\005\181\001\225\000\000\000\000\001\225\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\000\000\005\181\000\000\005\181\001\225\001\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\181\000\000\000\000\000\000\000\000\001\225\000\000\005\181\000\000\001\225\000\n\001\225\001\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\000\000\001\225\000\000\001\225\005\181\005\181\000\000\005\181\005\209\005\181\000\000\005\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\181\000\000\000\000\000\000\000\000\005\181\001\225\000\000\005\181\000\000\005\181\000\000\005\181\000\000\000\000\000\000\005\181\005\181\005\181\000\000\005\181\005\181\005\181\011\189\011\189\011\189\011\189\000\000\011\189\000\000\011\189\011\189\011\189\011\189\000\000\011\189\011\189\000\000\011\189\000\000\011\189\000\000\011\189\011\189\011\189\011\189\001\225\007b\000\000\001\225\000\000\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\000\000\011\189\011\189\011\189\000\000\000\000\000\000\000\000\001\225\000\000\000\000\011\189\001\225\001\225\000\000\000\000\000\000\011\189\000\000\007j\000\000\000\000\000\000\001\225\001\225\000\000\000\000\000\000\000\000\000\000\011\189\000\000\000\000\000\000\000\000\007\154\000\000\011\189\007\162\000\000\000\000\000\000\011\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\178\007\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\011\189\007\194\000\000\011\189\000\000\0025\000\000\007\202\007\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\189\007\218\000\000\000\000\007\226\011\189\007\234\011\189\000\000\000\000\011\189\000\000\000\000\000\000\000\000\000\000\000\000\011\189\000\000\011\189\000\000\000\000\011\189\000\000\000\000\000\000\000\000\000\000\000\000\007\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\189\011\189\000\000\000\000\000\000\024B\011\189\011\193\011\193\011\193\011\193\000\000\011\193\000\000\011\193\011\193\011\193\011\193\000\000\011\193\011\193\000\000\011\193\000\000\011\193\000\000\011\193\011\193\011\193\011\193\000\000\000\000\007\250\000\000\000\000\0025\000\000\000\000\000\000\b\002\000\000\000\000\000\000\000\000\011\193\011\193\011\193\000\000\000\000\000\000\000\000\000\000\000\000\0025\011\193\000\000\000\000\0025\0025\000\000\011\193\000\000\000\000\024\158\000\000\000\000\000\000\000\000\b\n\b\018\000\000\000\000\000\000\011\193\000\000\000\000\000\000\000\000\000\000\000\000\011\193\000\000\000\000\000\000\000\000\011\193\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\011\193\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\000\000\011\193\000\000\000\000\011\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\000\000\000\000\011\193\000\000\000\000\000\000\000\000\011\193\000\000\011\193\000\000\000\000\011\193\001\242\000\000\000\000\000\000\000\000\000\000\011\193\000\000\011\193\000\000\000\000\011\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\011\193\011\193\000R\t\142\t\150\000\170\011\193\000\174\002\006\t\218\t\226\t\234\n.\000\000\n6\n>\000\000\nN\000\000\nV\000\000\n^\n\138\001\222\n\146\000\000\000\000\015\213\000\000\000\000\015\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\166\n\154\024\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\206\000\000\015\213\015\213\000\000\000\000\n\162\015\213\005U\000\000\016f\015\213\000\000\000\000\000\000\000\000\000\000\015\213\000\000\024\230\015\213\015\213\000\000\015\213\015\213\000\000\n\178\016n\000\000\015\213\016z\025\026\000\000\015\213\000\000\000\000\015\213\000\000\015\213\015\213\n\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\000\000\000\000\000\000\000\000\000\000\000\000\015\213\025:\015\213\000\000\025\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\213\000\000\000\000\000\000\025\170\000\000\000\000\016\134\000\000\025\182\000\000\t\213\000\000\000\000\025\230\000\000\000\000\000\000\000\000\000\000\000\000\025\242\000\000\025\254\000\000\000\000\026\250\015\213\015\213\000\000\015\213\000\000\016\138\001\209\015\213\000\000\001\209\000\000\000\000\000\000\000\000\027\006\027\030\016\146\000\000\001\209\000\000\027*\001\209\000\000\000\000\015\213\000\000\015\213\000\000\000\000\000\000\001\209\001\209\015\213\015\213\015\213\001\209\015\213\015\213\015\213\001\209\000\000\000\000\001\209\001\209\000\000\001\209\000\000\001\209\001\209\001\209\000\000\001\209\001\209\000\000\000\000\000\000\000\000\001\209\000\000\000\000\001\209\001\209\000\000\001\209\001\209\000\000\001\209\001\209\000\000\001\209\000\000\000\000\000\000\001\209\000\000\000\000\001\209\000\000\001\209\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\000\000\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\001\209\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\003\022\000\000\001\209\001\209\000\000\000\000\001\209\000\000\000\000\000\000\000\000\001\209\003\030\000\000\001\209\001\209\000\000\000\000\001\209\000\000\001\209\000\000\000\000\001\209\001\209\001\209\001\209\001Y\000\000\000\000\001Y\004F\001\209\001\209\000\000\001\209\001\209\001\209\001\209\000\000\000\000\000\000\000\000\004:\001\209\001\209\000\000\001\209\001\209\001\209\000\000\001Y\001Y\000\000\000\000\000\000\001Y\000\000\000\000\000\000\001Y\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001Y\001Y\000\000\001Y\001Y\000\000\000\000\001M\000\000\001Y\001M\000\000\000\000\001Y\000\000\000\000\003Z\000\000\003j\001Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\001M\000\000\000\000\000\000\001M\000\000\000\000\000\000\001M\001Y\000\000\001Y\000\000\000\000\001M\000\000\000\000\001M\001M\000\000\001M\001M\001Y\000\000\000\000\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\003Z\000\000\001M\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\001Y\000\000\000\000\001Y\001Y\000\000\000\000\003b\000\000\001M\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Y\001M\000\000\001Y\001Y\001Y\001Y\001Y\000\000\000\000\000\000\000\000\001Y\001Y\000\000\001Y\001Y\001Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\001M\000\000\001Q\003b\000\000\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\001M\001M\001M\001M\000\000\001Q\001Q\000\000\001M\001M\001Q\001M\001M\001M\001Q\000\000\000\000\000\000\000\000\000\000\001Q\000\000\000\000\001Q\001Q\000\000\001Q\001Q\000\000\000\000\001U\000\000\001Q\001U\000\000\000\000\001Q\000\000\000\000\003Z\000\000\001Q\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\001U\000\000\000\000\000\000\001U\000\000\000\000\000\000\001U\001Q\000\000\001Q\000\000\000\000\003R\000\000\000\000\001U\001U\000\000\001U\001U\001Q\000\000\000\000\000\000\001U\000\000\000\000\000\000\001U\000\000\000\000\003Z\000\000\003j\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Q\000\000\000\000\001Q\001Q\000\000\000\000\003b\000\000\001U\000\000\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Q\001U\000\000\001Q\001Q\001Q\001Q\001Q\000\000\000\000\000\000\000\000\001Q\001Q\000\000\001Q\001Q\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\000\000\000\000\001U\001U\000\000\001e\003b\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\000\000\000\000\001U\001U\001U\001U\001U\000\000\003J\003r\000\000\001U\001U\001e\001U\001U\001U\001e\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001e\001e\000\000\001e\001e\000\000\000\000\001]\000\000\001e\001]\000\000\000\000\001e\000\000\000\000\003Z\000\000\003j\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\003\130\000\000\001e\000\000\000\000\003R\000\000\000\000\001]\001]\000\000\001]\001]\001e\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\000\000\000\000\003Z\000\000\003j\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\001e\000\000\000\000\001e\001e\000\000\000\000\003b\000\000\001]\000\000\001]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001e\001]\000\000\001e\001e\001e\001e\001e\000\000\000\000\000\000\000\000\001e\001e\000\000\001e\001e\001e\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]\001]\000\000\001a\003b\000\000\001a\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]\001]\001]\001]\001]\000\000\003J\003r\000\000\001]\001]\001a\001]\001]\001]\001a\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001a\001a\000\000\001a\001a\000\000\000\000\001i\000\000\001a\001i\000\000\000\000\001a\000\000\000\000\003Z\000\000\003j\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\001i\000\000\000\000\000\000\001i\003\130\000\000\001a\000\000\000\000\003R\000\000\000\000\001i\001i\000\000\001i\001i\001a\000\000\000\000\000\000\001i\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\000\000\000\000\001a\001a\000\000\000\000\003b\000\000\003\130\000\000\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\001i\000\000\001a\001a\001a\001a\001a\000\000\000\000\000\000\000\000\001a\001a\000\000\001a\001a\001a\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\001i\001i\000\000\001q\003b\000\000\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001i\000\000\000\000\001i\001i\001i\001i\001i\000\000\003J\003r\000\000\001i\001i\001q\001i\001i\001i\001q\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001q\001q\000\000\001q\001q\000\000\000\000\003\218\000\000\001q\001m\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\001m\000\000\000\000\000\000\001m\003\130\000\000\001q\000\000\000\000\003R\000\000\000\000\001m\001m\000\000\001m\001m\001q\000\000\000\000\000\000\001m\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\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\003\138\000\000\000\000\001q\001q\000\000\000\000\003b\000\000\003\130\000\000\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001q\001m\000\000\001q\001q\001q\001q\001q\000\000\000\000\000\000\000\000\001q\001q\000\000\001q\003\146\001q\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\001m\001m\000\000\003\218\003b\000\000\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001m\000\000\000\000\001m\001m\001m\001m\001m\000\000\003J\003r\000\000\001m\001m\001u\001m\003\146\001m\001u\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001u\001u\000\000\001u\003\226\000\000\000\000\003>\000\000\001u\003\154\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\186\003\194\000\000\000\000\000\000\002-\000\000\000\000\000\000\002-\003\130\000\000\001u\000\000\000\000\003\202\000\000\000\000\002-\002-\000\000\003\210\003\242\001u\000\000\000\000\000\000\002-\000\000\000\000\000\000\003\250\000\000\000\000\004\002\000\000\004\n\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\003\138\000\000\000\000\001u\001u\000\000\000\000\003b\000\000\004\018\000\000\002-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001u\002-\000\000\001u\001u\001u\001u\001u\000\000\000\000\000\000\000\000\001u\001u\000\000\001u\003\146\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\026\000\000\000\000\002-\002-\000\000\000\129\004\"\000\000\000\129\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\002-\002-\002-\002-\000\000\000\000\003J\003r\000\000\002-\002-\000\129\004*\0042\002-\000\129\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\129\000\129\000\000\000\129\000\129\000\000\000\000\000i\000\000\000\129\000i\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\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\003\130\000\000\000\129\000\000\000\000\003R\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\003Z\000\000\003j\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\003\138\000\000\000\000\000\129\000\129\000\000\000\000\003b\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\003\146\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\000e\003b\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\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000e\000e\000\000\000i\000i\000e\000i\000i\000i\000e\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000\000\000]\000\000\000e\000]\000\000\000\000\000e\000\000\000\000\003Z\000\000\003j\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\000\000]\000\000\000\000\000\000\000]\000e\000\000\000e\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\003Z\000\000\000]\000]\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\003b\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\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\000]\000\000\000\000\000]\000]\000\000\003\218\003b\000\000\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\000\000\000\000]\000]\000]\000]\000\000\000\000\003J\003r\000\000\000]\000]\000\137\000]\000]\000]\000\137\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\137\000\137\000\000\000\137\003\226\000\000\000\000\003\218\000\000\000\137\000}\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\003\130\000\000\000\137\000\000\000\000\003R\000\000\000\000\000}\000}\000\000\000}\000}\000\137\000\000\000\000\000\000\000}\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\000}\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\000\137\000\137\000\000\000\000\003b\000\000\003\130\000\000\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\137\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\234\003\146\000\137\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\000}\000}\000\000\000u\003b\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\000\000\000}\000}\000}\000}\000\000\000\000\003J\003r\000\000\000}\000}\000u\000}\003\146\000}\000u\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000u\000u\000\000\000u\000u\000\000\000\000\000a\000\000\000u\000a\000\000\000\000\000u\000\000\000\000\003Z\000\000\003j\000u\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\003\130\000\000\000u\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000a\000a\000u\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\003Z\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\000u\000\000\000\000\000u\000u\000\000\000\000\003b\000\000\000a\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000a\000\000\000u\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\000u\000u\000\000\000u\000u\000u\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\000m\003b\000\000\000m\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\000a\000a\000\000\000\000\003J\003r\000\000\000a\000a\000m\000a\000a\000a\000m\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000m\000m\000\000\000m\000m\000\000\000\000\000q\000\000\000m\000q\000\000\000\000\000m\000\000\000\000\003Z\000\000\003j\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000m\000\000\000m\000\000\000\000\003R\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\003Z\000\000\003j\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\003b\000\000\003\130\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\003\218\003b\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\000\000q\000\000\000\000\000q\000q\000q\000q\000\000\000\000\003J\003r\000\000\000q\000q\000\133\000q\000q\000q\000\133\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\133\000\133\000\000\000\133\003\226\000\000\000\000\000y\000\000\000\133\000y\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\003\130\000\000\000\133\000\000\000\000\003R\000\000\000\000\000y\000y\000\000\000y\000y\000\133\000\000\000\000\000\000\000y\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\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\003\138\000\000\000\000\000\133\000\133\000\000\000\000\003b\000\000\003\130\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\000y\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\000\133\003\146\000\133\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\000y\000y\000\000\000\000\003b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000y\000y\000y\000R\000V\000f\000\170\t\138\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\000\000\001.\012\154\0016\001\214\001\222\001\226\012\158\000\000\000\000\000\000\000\000\000\000\002R\000\000\000\000\012\242\000\000\000\000\012\246\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\r\n\r\022\000\000\000\000\r\182\r\206\r\210\000\000\000\000\000\000\002\134\000\000\002\138\002\002\000\000\000\000\000\000\000\000\000\000\000\000\r*\002\146\000\000\000\000\r.\r\214\002\158\002\006\000\000\r2\r6\000\000\000\000\r:\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\012\206\012\210\000\000\000\000\000\000\r>\rB\000\000\000\000\002R\000\000\rF\012\242\000\000\000\n\012\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rN\000\000\000\000\000\000\000\n\000\000\000\000\000\000\002b\006\181\000\000\r\218\000\000\r\246\000\000\000\000\000\000\r\n\r\022\000\000\000\000\r\182\r\206\r\210\rR\000\000\000\000\002\134\000\000\002\138\rZ\000\000\000\000\006\173\012\214\000\000\004\237\r*\002\146\r^\000\000\r.\r\214\002\158\006\173\002\214\r2\r6\000\000\006\173\r:\000\000\000\000\000\000\000\000\002R\000\000\000\000\012\242\000\000\000\000\012\246\000\000\000\000\000\000\000\000\r>\rB\000\000\000\000\000\000\000\000\rF\000\000\000\000\000\n\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\rN\000\000\r\n\r\022\000\000\000\000\r\182\r\206\r\210\006\181\000\000\r\218\002\134\r\246\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r*\002\146\rR\000\000\r.\r\214\002\158\000\000\rZ\r2\r6\000\000\000\000\r:\b\253\000\000\000\000\r^\002R\000\000\000\000\012\242\000\000\002\214\012\246\000\000\000\000\000\000\000\000\r>\rB\000\000\000\000\000\000\000\000\rF\000\000\000\000\000\n\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\rN\000\000\r\n\r\022\000\000\000\000\r\182\r\206\014\178\006\181\000\000\r\218\002\134\r\246\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r*\002\146\rR\000\000\r.\r\214\002\158\000\000\rZ\r2\r6\000\000\001\233\r:\002\129\001\233\000\000\r^\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\000\000\000\000\000\000\r>\rB\000\000\000\000\000\000\000\000\rF\001\233\001\233\000\n\000\000\000\000\001\233\000\000\000\000\000\000\001\233\000\000\rN\000\000\000\000\000\000\001\233\000\000\000\000\001\233\001\233\006\181\001\233\001\233\000\000\r\246\000\000\000\000\001\233\000\000\000\000\000\000\001\233\000\000\000\000\001\233\rR\001\233\001\233\000\000\000\000\000\000\rZ\000\000\000\000\000\000\000\000\000\000\t\r\000\000\000\000\r^\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\001\233\000\000\001\233\000\249\000\000\000\000\000\249\003\213\000\000\000\000\000\000\000j\003\213\001\233\000r\000\000\000\130\003\213\000\000\003\213\000\000\000\000\000\000\000\138\003\213\003\213\000\000\003J\003r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\233\016\166\003R\001\233\000\000\000\000\000\249\001\233\000\249\000\249\000\000\000\000\000\000\000\000\000\146\003\213\000\000\000\000\003z\003\213\000\000\003Z\000\000\003j\001\233\000\000\001\233\000\000\000\000\000\000\000\000\000\000\016\174\001\233\001\233\003\213\001\233\001\233\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\130\003\213\000\162\000\000\000\000\000\000\000\000\000\000\000\000\003\213\000\000\000\000\003\209\003\213\003\213\000\000\000\198\003\209\000\000\000\206\000\000\000\222\003\209\000\000\003\209\003\213\000\000\000\000\000\230\003\209\003\209\000\000\000\000\000\000\000\000\000\000\003\213\000\000\000\000\000\000\003\138\000\000\000\000\000\249\000\000\000\000\003\213\003b\000\000\000\000\000\000\003\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\003\209\000\249\000\000\000\000\003\209\000\249\000\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\249\003\146\000\000\000\000\003\209\000\000\000\000\000\000\003\213\000\000\000\000\003\213\003\213\000\000\000\000\003\213\003\209\000\254\000\000\000\000\003\213\003\213\000\000\000\000\003\209\003\213\000\000\000\000\003\209\003\209\000\000\000\000\000\000\002R\000\000\000\000\002V\000\000\000\000\002Z\003\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\198\000\000\003\209\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\003\209\000\000\000\000\002r\002v\003\209\002~\000\000\012\238\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\r\230\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\002\170\000\000\003\209\000\000\000\000\003\209\003\209\000\000\016\218\003\209\000\000\016\226\000\000\000\000\003\209\003\209\000\000\002\174\000\000\003\209\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\016\242\016\250\002\186\000\000\000\000\002=\000\000\000\000\000\000\002=\000\000\000\000\000\000\002\190\t\229\017\002\000\000\000\000\002=\002=\000\000\017\n\017\018\000\000\000\000\0015\002\194\002=\0015\000\000\000\000\017\026\002\206\000\000\017\"\t\229\017*\002=\000\000\000\000\000\000\002\222\000\000\000\000\000\000\000\000\000\000\002\214\000\000\003J\003r\000\000\000\000\000\000\0015\000\000\000\000\000\000\0015\0172\000\000\002=\000\000\000\000\003R\000\000\000\000\0015\0015\000\000\0015\0015\002=\000\000\000\000\000\000\0015\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\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\017:\000\000\000\000\002=\000\000\000\000\000\000\017B\000\000\003\130\000\000\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0015\000\000\002=\000\000\002=\000\000\000\000\000\000\000\000\000\000\000\000\002=\002=\000\000\017J\017R\002=\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\0015\000\000\000\000\001\029\003b\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0015\000\000\0015\000\000\000\000\000\000\001\029\001\029\000\000\0015\0015\001\029\0015\003\146\0015\001\029\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001\029\001\029\000\000\001\029\001\029\000\000\000\000\001\025\000\000\001\029\001\025\000\000\000\000\001\029\000\000\000\000\003Z\000\000\003j\001\029\000\000\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\000\000\000\000\001\025\000\000\000\000\000\000\001\025\001\029\000\000\001\029\000\000\000\000\003R\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\029\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\003Z\000\000\003j\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\001\029\000\000\000\000\001\029\000\000\000\000\000\000\003b\000\000\001\025\000\000\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\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\000\000\000\000\000\000\001\025\000\000\000\000\001\025\000\000\000\000\001\017\003b\000\000\001\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\001\025\000\000\001\025\000\000\000\000\000\000\001\017\001\017\000\000\001\025\001\025\001\017\001\025\001\025\001\025\001\017\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\001\017\000\000\001\017\001\017\000\000\000\000\003\218\000\000\001\017\001=\000\000\000\000\001\017\000\000\000\000\003Z\000\000\001\017\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\001=\000\000\000\000\000\000\001=\001\017\000\000\001\017\000\000\000\000\003R\000\000\000\000\001=\001=\000\000\001=\003\226\001\017\000\000\000\000\000\000\001=\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\000\000\003b\000\000\003\130\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\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\000\000\000\000\000\000\003\138\000\000\000\000\001=\000\000\000\000\003\218\003b\000\000\0011\000\000\000\000\000\000\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\000\000\003J\003r\000\000\001=\001=\0011\003\234\003\146\001=\0011\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\0011\0011\000\000\0011\0011\000\000\000\000\001)\000\000\0011\001)\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\003\130\000\000\0011\000\000\000\000\003R\000\000\000\000\001)\001)\000\000\001)\001)\0011\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\003Z\000\000\003j\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\003\138\000\000\000\000\0011\000\000\000\000\000\000\003b\000\000\003\130\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\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\0011\0011\000\000\0011\003\146\0011\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\001\021\003b\000\000\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\000\000\001)\000\000\001)\000\000\000\000\000\000\001\021\001\021\000\000\001)\001)\001\021\001)\001)\001)\001\021\000\000\000\000\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!\000\000\001\021\001!\000\000\000\000\001\021\000\000\000\000\003Z\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\000\000\003J\003r\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\001\021\000\000\001\021\000\000\000\000\003R\000\000\000\000\001!\001!\000\000\001!\001!\001\021\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\000\000\003Z\000\000\003j\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\000\001\021\000\000\000\000\000\000\003b\000\000\001!\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\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\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\001%\003b\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\001!\000\000\001!\000\000\000\000\000\000\003J\003r\000\000\001!\001!\001%\001!\001!\001!\001%\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\003\218\000\000\001%\0019\000\000\000\000\001%\000\000\000\000\003Z\000\000\003j\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\0019\000\000\000\000\000\000\0019\003\130\000\000\001%\000\000\000\000\003R\000\000\000\000\0019\0019\000\000\0019\003\226\001%\000\000\000\000\000\000\0019\000\000\000\000\000\000\003z\000\000\000\000\003Z\000\000\003j\0019\000\000\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\003b\000\000\003\130\000\000\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\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\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\0019\000\000\000\000\001-\003b\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\0019\000\000\0019\000\000\000\000\000\000\003J\003r\000\000\0019\0019\001-\0019\003\146\0019\001-\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\001-\001-\000\000\001-\001-\023v\000\000\000\000\000\000\001-\000\000\000\000\000\000\003z\000\000\000\000\003Z\023z\003j\001-\000\000\000\000\000\000\000\000\025\186\000\000\000\000\000\000\023~\000\000\023\130\012%\012%\000\000\000\000\000\000\000\000\000\000\023\134\000\000\000\000\003\130\000\000\001-\023\138\000\000\000\000\023\146\000\000\000\000\000\000\023\150\000\000\000\000\001-\000\000\000\000\023\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025j\000\000\012%\000\000\023\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\138\000\000\000\000\001-\000\000\000\000\000\000\003b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012%\000\000\023\162\000\000\000\000\023\166\000\000\001-\000\000\001-\000\000\000\000\000\000\000\000\000\000\000\000\001-\001-\023\170\001-\001-\001-\000\000\023\174\000\n\023\178\023v\023\182\023\186\000\000\023\190\000\000\000\000\000\000\000\000\000\000\000\000\023\194\023z\000\000\023\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023~\000\000\023\130\000\000\000\000\000\000\023\202\011\249\000\000\000\000\023\134\023\206\023\210\012%\000\000\000\000\023\138\000\000\000\000\023\146\000\000\000\000\000\000\023\150\000\000\000\000\000\000\000\000\000\000\023\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026\022\000\000\000\000\011\249\000\000\023\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\023\162\000\000\000\000\023\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\242\000\000\023\170\000\000\000\000\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\000\000\000\000\000\000\000\000\023\194\000\000\000\000\023\198\000\000\000\000\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\202\000\000\000\000\000\000\000\000\023\206\023\210\011\249\000R\000V\000f\000\170\000\000\000\174\012\146\000\178\000\186\000\194\001\006\012\150\001\014\001\022\000\000\001&\027\246\001.\012\154\0016\001\214\001\222\001\226\012\158\027\250\002R\000\000\000\000\002V\000\000\000\000\002Z\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\000\000\t\229\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\001\242\000\000\000\000\002r\002v\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\142\002\146\000\000\002\014\002\150\002\154\002\158\000\000\000\000\002\162\002\166\002\006\000\000\002\170\000\000\000\000\000\000\000\000\015\185\000\000\000\000\015\185\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\002\174\000\000\000\000\000\000\000\000\002\178\000\000\000\000\000\n\000\000\000\000\000\000\015\185\015\185\000\000\000\000\000\000\002\186\000\000\000\000\007>\000\000\000\000\000\000\000\000\000\n\000\000\015\185\002\190\000\000\005U\015\185\000\000\015\185\015\185\000\000\000\000\007F\000\000\000\000\bJ\002\194\000\000\015\185\000\000\002\022\015\185\002\206\015\185\000\000\000\000\000\000\t\229\000\000\000\000\000\000\002\222\000\000\000\000\000\000\nB\006\149\002\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\205\015\185\000\000\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011B\006\149\000\000\006\149\000\000\006\149\000\000\000\000\000\000\000\000\bV\000\000\000\000\006\149\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\006\149\000\000\006\149\000\000\006\149\000\000\000\000\000\000\015\185\015\185\006\149\015\185\006\149\bZ\000\000\015\185\000\000\011\150\006\149\000\000\000\000\006\149\011\018\000\000\bb\006\149\006\149\000Z\000\000\015\185\006\149\006\149\000\000\015\185\015\185\000\000\000\000\011\222\006\149\000\000\015\185\006\149\006\149\006\149\015\185\015\185\006\149\006\149\000Z\000\000\006\149\006\149\006\149\006\149\000\000\000\000\006\149\006\149\006\149\000\000\006\149\006\149\000\000\006\149\006\149\006\149\000\000\000\000\000\000\006\149\006\149\006\149\000\000\000\000\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\012\018\000\000\006\149\006\149\006\149\000Z\006\149\000\000\006\149\006\149\006\149\000\000\000\000\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\000\000\000\000\006\149\006\149\000Z\000\000\006\149\012R\006\149\006\149\006\149\006\149\000Z\006\149\012~\000\000\006\149\000\000\006\149\000Z\000\000\000\000\000\000\006\149\006\149\000\000\006\149\000\000\000\000\006\149\006\149\006\149\006\149\006\149\000\000\006\149\006\149\000\000\006\149\000\000\000\000\006\149\000\000\000\000\000\000\006\149\006\149\000\000\006\149\000\000\000\000\006\149\006\149\006\149\006\149\006\149\006\149\000\000\006\149\006\149\006\149\006\149\000\000\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\006\149\000\000\006\149\000\000\000\000\006\149\000\000\000\000\000\000\006\149\000\000\000\000\006\149\002R\000\000\000\000\002V\006\149\006\149\002Z\006\149\000\000\000\000\000\000\000\000\006\149\006\149\006\149\000\000\020\202\000\000\000\000\006\149\006\149\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002r\002v\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\000\000\002\170\000\000\000\000\026\002\000\000\026\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026\018\000\000\000\000\002\174\000\000\0262\000\000\000\000\002\178\000\000\000\000\000\n\023z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\186\000\000\000\000\023~\000\000\023\130\000\000\000\000\000\000\000\000\000\000\002\190\000\000\023\134\000\000\000\000\000\000\000\000\000\000\023\138\000\000\000\000\023\146\000\000\002\194\000\000\023\150\000\000\002R\000\000\002\206\002V\023\154\000\000\002^\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\023\158\026:\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\002r\t\006\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\023\162\000\000\000\000\023\166\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\023\170\002\170\000\000\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\000\000\000\000\000\000\002\174\023\194\000\000\000\000\023\198\002\198\000\000\000\000\000\n\000\000\000\000\000\000\002R\000\000\000\000\002V\000\000\002\186\002^\023\202\000\000\000\000\000\000\000\000\023\206\023\210\000\000\000\000\002\190\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\000\000\002\202\000\000\002r\b\246\000\000\002~\002\206\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002\210\000\000\000\000\000\000\000\000\000\000\002\214\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\002R\002\170\000\000\002V\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\002\174\000\000\000\000\000\000\002b\002\198\000\000\002f\000\n\000\000\000\000\000\000\000\000\002r\b\222\000\000\002~\002\186\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002R\000\000\002\190\002V\000\000\000\000\002^\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\002\202\002\162\002\166\000\000\000\000\002\170\002\206\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\002\210\002r\002\182\000\000\002~\000\000\002\214\002\174\000\000\000\000\000\000\002\134\002\198\002\138\000\000\000\n\000\000\000\000\000\000\000\000\000\000\002\142\002\146\b\170\002\186\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\004\181\002\170\002\190\004\181\000\000\000\000\004\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\202\000\000\000\000\002\174\000\000\000\000\002\206\004\181\002\198\000\000\004\181\000\n\000\000\000\000\000\000\002\210\004\181\004\181\000\000\004\181\002\186\002\214\000\000\000\000\000\000\000\000\004\181\000\000\004\181\002R\000\000\002\190\002V\000\000\000\000\002^\004\181\004\181\000\000\000\000\004\181\004\181\004\181\000\000\002\202\004\181\004\181\000\000\000\000\004\181\002\206\002b\000\000\000\000\002f\000\000\000\000\000\000\000\000\002\210\002r\012\250\000\000\002~\000\000\002\214\004\181\000\000\000\000\000\000\002\134\004\181\002\138\000\000\004\181\000\000\000\000\000\000\000\000\000\000\002\142\002\146\000\000\004\181\002\150\002\154\002\158\000\000\000\000\002\162\002\166\000\000\002R\002\170\000\000\002V\000\000\000\000\002^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\181\000\000\000\000\002\174\000\000\000\000\004\181\002b\002\198\000\000\002f\000\n\000\000\000\000\000\000\004\181\002r\015\178\000\000\002~\002\186\004\181\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\002\190\000\000\000\000\000\000\000\000\002\142\002\146\000\000\000\000\002\150\002\154\002\158\000\000\002\202\002\162\002\166\000\000\000\000\002\170\002\206\000\000\000\000\000\000\000\000\000\000\023v\000\000\000\000\002\210\000\000\000\000\000\000\000\000\000\000\002\214\002\174\000\000\023z\000\000\000\000\002\198\000\000\000\000\000\n\000\000\000\000\000\000\000\000\023~\000\000\023\130\000\000\002\186\000\000\000\000\000\000\000\000\000\000\023\134\000\000\000\000\000\000\000\000\002\190\023\138\000\000\000\000\023\146\000\000\000\000\000\000\023\150\000\000\000\000\000\000\000\000\002\202\023\154\000\000\000\000\000\000\000\000\002\206\000\000\000\000\000\000\000\000\000\000\024\238\000\000\000\000\002\210\000\000\023\158\000\000\000\000\000\000\002\214\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\000\000\000\210\000\000\000\000\006\149\000\000\006\149\006\149\011\249\000\000\023\162\006\149\006\149\023\166\001\026\000\000\006\149\006\149\006\149\006\149\000\000\000\000\000\000\006\149\006\149\006\149\023\170\000\000\000\000\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\000\000\006\149\000\000\000\000\023\194\006\149\000\000\023\198\000\000\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\006\149\006\149\000\000\000\000\006\149\023\202\000\000\000\000\001\194\000\000\023\206\023\210\011\249\000Z\000\000\000\000\006\149\006\149\000\000\000\000\002\n\005\138\000\000\000\000\006\149\000Z\000Z\000\000\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\006\149\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\006\149\006\149\000\000\006\149\000\000\000\000\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\006\149\006\149\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\000\000\006\149\006\149\006\149\000\000\006\149\006\149\000\000\000\000\000\000\006\149\006\149\006\149\000\000\000\000\006\149\006\149\004\205\004\205\004\205\004\205\000\000\004\205\000\000\004\205\004\205\004\205\004\205\000\000\004\205\004\205\000\000\004\205\000\000\004\205\000\000\004\205\004\205\004\205\004\205\000\000\000\000\002R\000\000\000\000\002j\000\000\000\000\002n\002\026\000\000\000\000\000\000\000\000\000\000\004\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\002f\000\000\000\000\004\205\000\000\000\000\002\130\006\226\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\000\000\000\000\000\000\000\000\004\205\000\000\000\000\006\246\002\146\000\000\004\205\006\250\002\154\002\158\000\000\000\000\006\254\007\002\004\205\000\000\007\006\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\004\186\004\205\000\000\006\149\006\149\006\149\005\014\007\n\000\000\006\149\006\149\006\149\007\014\006\149\000\000\000\n\006\149\006\149\006\149\000\000\005V\000\000\000\000\006\149\007\022\006\149\000\000\000\000\000\000\000\000\006\149\006\149\004\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\000\000\006\149\000\000\006\149\007\026\000\000\000\000\006\149\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\007&\000\000\006\149\000\000\006\149\000\000\002\214\000Z\005\202\000\000\006\149\000\000\000\000\000Z\004\205\000\000\006\149\000\000\006\149\000\000\000\000\000\000\006\149\006\149\006\149\000\000\000\000\000Z\006\149\006\149\006\149\000\000\000\000\000\000\006\149\000\000\000\000\000\000\006\149\000\000\006\149\000\000\006\149\006\149\000\000\006\149\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\006\149\006\149\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\006\149\000\178\000\186\000\194\001\006\006\149\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\006\149\000\000\000\000\006\149\006\149\000\000\006\149\006\149\000\000\006\149\006\149\000\000\006\149\006\149\001\234\000\000\000\000\006\149\006\149\006\149\006\149\000\000\000\000\006\149\006\149\000\000\000\000\006\149\000\000\001\242\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\002\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\002\018\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\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\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\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\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\005\254\000\000\000\000\002\181\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\006\002\006\006\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\006\149\0016\001\214\001\222\001\226\006\149\000\000\000\000\000\000\000\000\006\149\001\242\006\149\000\000\000\000\000\000\006\n\006\149\006\149\000\000\001\234\000\000\006\149\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\002\002\000\000\000\000\000\000\001\242\000\000\005\254\004\253\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\006\149\006\002\006\006\000\000\006\149\000\000\000\000\002\002\000\000\000\000\000\000\000\000\006\149\005\254\000\000\000\000\006\149\000\000\000\000\000\000\006\149\002\006\000\000\000\000\006\174\006\002\006\006\000\000\000\000\000Z\000\000\000\000\006\149\000\000\000\000\000\000\t6\000\000\000\000\000\000\006\149\000Z\000\000\000\000\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\n\000\000\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\006\149\000\000\000\000\006\149\t5\000\000\006\n\000\000\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\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\002\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\149\000\000\000\000\006\149\006\149\000\000\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\000\000\006\149\006\149\006\149\000\000\006\149\000\000\000\000\000\000\000\000\006\149\006\149\000\000\000\000\000\000\006\149\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\001\242\000\000\028\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\028\182\006\006\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\028\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\028\182\006\006\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\028\186\000\000\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\004\245\000\000\028\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\002\002\000\000\000\000\000\000\000\000\000\000\028\178\t\025\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\028\182\006\006\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\234\001&\000\000\001.\000\000\0016\001\214\001\222\001\226\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\000\000\000\000\000\028\186\000\000\000\000\000\000\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\001\242\000\000\002\014\002\145\000\000\002R\000\000\000\000\012\242\000\000\002\006\012\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\018\000\000\000\000\006\018\002b\000\000\000\000\000\000\000\000\000\000\000\000\002\006\000\000\r\n\r\022\006\002\006\006\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\002\138\002R\000\000\000\000\015\170\000\000\000\n\015\174\r*\002\146\000\000\000\000\r.\002\154\002\158\000\000\000\000\r2\r6\000\000\000\000\r:\000\000\002b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\026\016\006\000\000\000\000\000\000\r>\rB\000\000\000\000\000\000\002\134\rF\002\138\000\000\000\n\000\000\000\000\000\000\000\000\002\173\016\030\002\146\000\000\rN\016\"\002\154\002\158\000\000\000\000\016&\016*\t\221\000\000\016.\000\000\000\000\000\000\000\000\000\000\000\000\tE\000\000\000\000\t\221\000\000\000\000\000\000\rR\000\000\r>\0162\000\000\000\000\rZ\t\221\0166\t\221\000\000\000\n\000\000\000\000\000\000\r^\000\000\t\221\000\000\000\000\016>\002\214\000\000\t\221\000\000\000\000\t\221\000\000\b\157\000\000\t\221\024J\000\000\000\000\000\000\000\000\t\221\000\000\000\000\000\000\b\157\000\000\000\000\000\000\016B\000\000\000\000\000\000\000\000\000\000\016J\b\157\t\221\b\157\000\000\000\000\000\000\000\000\000\000\016N\000\000\b\157\000\000\000\000\000\000\002\214\000\000\b\157\000\000\000\000\b\157\000\000\000\000\000\000\b\157\000\000\000\000\000\000\000\000\t\221\b\157\000\000\t\221\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\221\b\157\026:\000\000\000\000\t\221\t\221\t\221\000\000\t\221\t\221\000\000\t\221\000\000\000\000\000\000\000\000\000\000\000\000\t\221\000\000\000\000\t\221\000\000\000\000\000\000\000\000\000\000\b\157\000\000\000\000\b\157\000\000\000\000\000\000\000\000\007e\t\221\000\000\000\000\000\000\000\000\t\221\t\221\b\157\000\000\000\000\000\000\007e\b\157\b\157\b\157\000\000\b\157\b\157\000\000\b\157\000\000\000\000\007e\000\000\007e\000\000\b\157\000\000\000\000\b\157\000\000\000\000\007e\000\000\000\000\000\000\000\000\000\000\007e\000\000\000\000\007e\000\000\000\000\b\157\007e\000\000\000\000\000\000\b\157\b\157\007e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027>\000\000\000\000\000\000\000\000\007e\000\000\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\024\210\0016\001\214\001\222\001\226\000\000\007e\000\000\000\000\007e\000\000\000\000\023z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\234\000\000\007e\023~\000\000\023\130\000\000\007e\007e\007e\000\000\007e\007e\023\134\007e\001\242\000\000\000\000\000\000\023\138\000\000\007e\023\146\000\000\007e\000\000\023\150\000\000\000\000\000\000\000\000\000\000\023\154\000\000\024\234\002\002\000\000\000\000\000\000\007e\000\000\028\194\000\000\000\000\007e\007e\023z\000\000\023\158\002\006\000\000\000\000\000\000\028\182\006\006\000\000\000\000\023~\000\000\023\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\134\000\000\000\000\000\000\000\000\000\000\023\138\000\000\023\162\023\146\000\000\023\166\000\000\023\150\000\000\000\000\000\000\000\000\000\000\023\154\000\000\000\000\000\000\000\000\023\170\000\000\000\000\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\023\158\023\190\000\000\000\000\000\000\000\000\000\000\000\000\023\194\000\000\000\000\023\198\000\000\000\000\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\202\023\162\000\000\000\000\023\166\023\206\023\210\t)\000\000\023v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\170\000\000\000\000\000\000\023z\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\023~\000\000\023\130\000\000\023\194\000\000\000\000\023\198\000\000\000\000\023\134\000\000\000\000\000\000\000\000\000\000\023\138\000\000\023v\023\146\000\000\000\000\023\202\023\150\000\000\000\000\000\000\023\206\023\210\023\154\023z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023~\000\000\023\130\000\000\025\150\000\000\000\000\000\000\000\000\000\000\023\134\000\000\000\000\000\000\000\000\000\000\023\138\000\000\000\000\023\146\000\000\000\000\000\000\023\150\000\000\000\225\000\000\000\000\000\225\023\154\000\000\023\162\000\000\000\000\023\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\n\000\000\023\170\000\000\000\225\000\225\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\000\000\000\000\000\000\000\000\003R\000\000\023\194\000\000\000\225\023\198\000\225\000\225\023\162\000\000\000\000\023\166\000\000\015\157\000\000\000\000\000\225\000\000\000\000\003Z\023\202\003j\000\000\000\000\023\170\023\206\023\210\000\000\000\000\023\174\000\n\023\178\000\000\023\182\023\186\000\000\023\190\015\157\015\157\000\000\000\000\000\000\000\000\023\194\000\225\rv\023\198\000\000\000\000\000\000\000\000\000\000\015\157\000\000\000\000\000\000\000\000\000\000\015\157\015\157\000\000\023\202\r~\000\000\000\000\r\138\023\206\023\210\015\157\000\000\000\000\015\157\000\000\015\157\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\000\000\221\000\000\000\225\000\000\000\000\000\225\000\000\000\000\000\000\003b\000\000\000\000\000\000\000\000\015\157\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\221\000\225\000\000\000\000\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\r\150\000\000\003R\000\000\000\225\000\225\000\221\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\213\015\157\003Z\000\213\003j\000\000\r\154\000\000\015\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\162\000\000\000\000\000\000\000\000\015\157\000\000\000\213\000\213\000\000\000\221\000\000\015\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\157\015\157\000\213\000\000\003\218\000\000\000\213\001\001\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\003Z\000\000\000\213\000\000\000\000\000\000\000\000\003J\003r\000\221\000\000\000\000\000\221\000\000\000\000\003\218\003b\000\000\000\245\000\000\000\000\000\000\003R\000\000\000\000\000\213\001\001\000\000\001\001\003\226\000\221\000\000\000\000\000\000\000\221\000\221\000\000\000\000\003z\003J\003r\003Z\000\000\003j\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\000\000\245\000\000\000\245\000\245\000\000\000\000\000\000\000\213\003\130\000\000\000\213\000\000\003z\000\000\003b\003Z\000\000\003j\000\000\000\000\000\000\000\237\000\000\000\000\000\237\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\003\130\000\000\000\000\000\213\000\213\003J\003r\000\000\003\138\000\000\000\000\001\001\000\000\000\217\000\000\003b\000\217\000\000\000\000\000\000\003R\000\000\000\000\000\000\000\237\000\000\000\237\000\237\000\000\001\001\000\000\000\000\000\000\001\001\001\001\000\000\000\237\000\217\000\217\003Z\003\138\003j\000\000\000\245\003\234\003\146\000\000\003b\000\000\000\000\000\000\000\000\000\217\000\000\000\229\000\000\000\217\000\229\000\217\000\217\000\000\000\245\000\000\000\000\003\130\000\245\000\245\000\000\000\217\000\000\000\000\003Z\000\000\000\217\000\000\000\000\000\245\003\146\003J\003r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\217\000\229\000\000\000\229\000\229\000\000\000\000\000\000\000\237\000\000\000\000\000\237\000\000\000\229\000\233\003b\003Z\000\233\003j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\000\000\000\000\000\000\237\000\237\000\000\000\000\000\000\003J\003r\000\217\000\229\000\000\000\217\000\237\000\237\000\000\003b\000\000\000\000\000\000\000\000\000\000\003R\000\000\003\218\000\000\000\233\000\253\000\233\000\233\000\217\000\000\000\000\000\000\000\217\000\217\000\000\000\000\000\233\000\000\000\000\003Z\000\000\003j\000\000\000\217\000\217\000\000\003J\003r\000\229\000\000\000\000\000\229\000\000\000\000\000\241\003b\000\000\000\241\000\000\000\000\000\000\003R\000\000\000\000\003\130\000\253\000\000\000\253\003\226\000\229\000\000\000\000\000\000\000\229\000\229\000\000\000\000\003z\003J\003r\003Z\000\000\003j\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003R\000\000\000\000\000\000\000\241\000\000\000\241\000\241\000\000\000\000\000\000\000\233\003\130\000\000\000\233\000\000\003z\000\000\003b\003Z\000\000\003j\000\000\000\000\000\000\014.\000\000\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\000\000\003\130\000\000\000\000\000\233\000\233\0146\014>\000\000\003\138\000\000\000\000\000\253\000\000\000\189\000\000\003b\000\000\000\000\000\000\000\000\014F\000\000\000\000\000\000\000\165\000\000\014N\014V\000\000\000\253\000\000\000\000\000\000\000\253\000\253\000\000\014^\003J\003r\014f\003\138\014n\000\000\000\241\000\253\003\146\000\000\003b\000\165\000\165\000\000\000\000\003R\000\000\000\000\000\000\000\000\000\000\000\189\000\189\000\000\000\241\000\000\003R\014v\000\241\000\241\000\000\003z\000\165\000\165\003Z\000\000\003j\000\000\000\161\000\241\000\241\000\000\000\165\000\000\000\000\003Z\000\000\003j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\130\000\000\000\000\000\161\000\161\000\000\000\000\000\000\014~\000\000\000\000\000\165\000\000\000\000\000\000\014\134\000\000\000\000\003R\000\000\000\000\000\000\000\000\000\000\000\161\000\161\000\000\000\000\000\000\006\029\000\000\000\000\000\000\000\000\000\161\000\153\006\029\003Z\000\000\003j\003\138\000\000\000\000\000\000\014\142\014\150\003\218\003b\000\000\000\000\000\000\000\165\000\000\000\000\000\000\000\000\000\000\000\000\003b\000\153\000\153\000\189\000\161\000\000\000\000\000\000\000\000\000\000\000\189\000\000\003J\003r\000\165\000\000\000\153\000\000\000\189\003\146\000\000\000\165\000\153\000\153\000\000\000\000\000\000\003R\000\000\000\165\000\165\003\218\000\153\000\197\003\226\003Z\000\000\000\153\000\000\000\000\000\000\000\000\000\000\003z\000\161\000\000\003Z\000\000\003j\000\000\000\000\003b\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\161\000\000\000\000\000\000\000\000\003R\003\130\000\161\000\000\000\000\000\000\000\185\000\185\000\000\000\000\000\161\000\161\000\000\000\000\000\000\000\177\003z\000\000\000\000\003Z\000\000\003j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\000\003b\000\000\003J\003r\003\138\000\000\000\000\003\130\000\000\000\000\000\000\003b\000\000\000\000\000\153\000\000\000\000\003R\000\000\000\157\000\000\000\153\000\000\000\177\000\177\000\197\000\000\000\000\000\000\000\153\000\153\000\000\000\197\000\177\000\000\000\000\003Z\000\000\003j\000\000\003\234\003\146\000\000\000\157\000\157\000\000\000\000\003\138\000\000\000\000\000\000\000\000\000\000\000\000\003b\000\000\000\000\000\000\000\157\000\000\000\000\003\130\000\000\000\000\000\157\000\157\000\000\000\000\000\185\000\000\000\169\000\000\000\000\000\000\000\157\000\185\000\000\003Z\000\000\000\157\000\000\000\173\000\000\000\185\003\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003J\003r\000\000\000\000\000\000\000\000\000\000\000\177\000\157\000\000\000\000\003J\003r\000\000\003b\003R\000\000\000\000\000\000\000\000\000\000\000\169\000\169\000\000\000\000\000\000\003R\000\000\000\177\000\000\000\000\000\169\000\173\000\173\003Z\000\177\003j\000\000\000\000\000\000\000\000\000\000\000\173\000\177\000\177\003Z\000\000\003j\000\157\003\218\000\000\000\000\000\000\000\000\000\000\003b\000\000\000\000\000\000\000\169\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\157\003\130\000\000\000\000\003J\003r\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\157\000\157\000\000\000\000\003R\000\000\003J\003r\000\000\000\000\000\193\003\226\000\000\000\000\000\000\000\169\000\000\000\000\000\000\000\000\003z\003R\003b\003Z\000\000\003j\000\173\000\181\000\181\000\000\000\000\000\000\000\000\003b\000\000\000\000\000\169\003z\000\000\000\000\003Z\000\000\003j\000\169\000\000\000\000\000\000\000\173\003\130\000\000\000\000\000\169\000\169\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\173\000\000\003\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\003\138\000\000\000\000\000\000\000\000\000\000\000\000\003b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\138\000\000\000\000\000\000\000\193\000\000\000\000\003b\000\000\000\000\000\000\000\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\193\003\146\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\181")) let lhs = - (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\027\001\027\001\027\001\026\001\026\001\026\001\026\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\022\001\021\001\021\001\021\001\021\001\020\001\019\001\019\001\019\001\018\001\018\001\018\001\017\001\017\001\017\001\016\001\016\001\016\001\015\001\014\001\r\001\012\001\012\001\011\001\011\001\n\001\n\001\t\001\t\001\b\001\b\001\007\001\006\001\005\001\004\001\003\001\002\001\001\001\000\000\255\000\254\000\253\000\252\000\251\000\250\000\249\000\248\000\248\000\247\000\247\000\246\000\246\000\245\000\245\000\244\000\244\000\244\000\244\000\243\000\243\000\243\000\243\000\242\000\242\000\242\000\242\000\241\000\241\000\241\000\241\000\240\000\240\000\240\000\240\000\239\000\239\000\239\000\239\000\238\000\238\000\238\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\236\000\235\000\235\000\235\000\235\000\234\000\234\000\233\000\232\000\231\000\231\000\231\000\231\000\230\000\230\000\230\000\230\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\229\000\228\000\227\000\227\000\226\000\226\000\226\000\225\000\225\000\224\000\224\000\224\000\223\000\222\000\221\000\221\000\220\000\219\000\219\000\218\000\218\000\217\000\217\000\216\000\216\000\215\000\214\000\213\000\213\000\212\000\212\000\211\000\211\000\210\000\210\000\209\000\209\000\208\000\207\000\207\000\206\000\206\000\206\000\206\000\206\000\205\000\205\000\205\000\204\000\203\000\202\000\202\000\202\000\202\000\201\000\201\000\200\000\199\000\199\000\199\000\199\000\199\000\198\000\198\000\198\000\198\000\197\000\197\000\197\000\197\000\196\000\196\000\196\000\196\000\195\000\194\000\194\000\193\000\193\000\193\000\192\000\191\000\191\000\191\000\191\000\190\000\189\000\189\000\188\000\188\000\187\000\187\000\186\000\186\000\186\000\186\000\185\000\185\000\184\000\184\000\184\000\184\000\184\000\183\000\183\000\183\000\182\000\182\000\182\000\182\000\181\000\180\000\179\000\179\000\178\000\178\000\177\000\177\000\176\000\176\000\175\000\175\000\174\000\174\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\172\000\171\000\170\000\170\000\169\000\169\000\168\000\168\000\167\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\143\000\142\000\142\000\141\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\139\000\138\000\137\000\136\000\135\000\134\000\133\000\132\000\131\000\130\000\130\000\130\000\129\000\129\000\129\000\128\000\128\000\128\000\128\000\127\000~\000}\000|\000{\000z\000y\000y\000x\000x\000x\000w\000w\000v\000v\000v\000u\000u\000t\000s\000s\000s\000r\000q\000q\000p\000p\000p\000p\000p\000p\000p\000o\000o\000o\000o\000o\000o\000o\000n\000n\000n\000n\000n\000n\000n\000m\000m\000m\000m\000m\000m\000m\000l\000l\000l\000l\000l\000l\000l\000k\000k\000k\000k\000k\000k\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000d\000d\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000c\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000]\000]\000\\\000\\\000\\\000\\\000\\\000[\000[\000Z\000Z\000Z\000Z\000Y\000X\000W\000W\000W\000V\000V\000V\000U\000U\000U\000U\000U\000U\000T\000T\000T\000T\000T\000S\000S\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\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\000J\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000I\000H\000H\000H\000G\000F\000E\000D\000D\000C\000C\000B\000A\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:\0009\0009\0009\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\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") + (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\029\001\029\001\029\001\028\001\028\001\028\001\028\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\027\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\026\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\025\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\024\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\023\001\022\001\022\001\022\001\022\001\021\001\020\001\020\001\020\001\019\001\019\001\019\001\018\001\018\001\018\001\017\001\017\001\017\001\016\001\015\001\014\001\r\001\r\001\012\001\012\001\011\001\011\001\n\001\n\001\t\001\t\001\b\001\007\001\006\001\005\001\004\001\003\001\002\001\001\001\000\000\255\000\254\000\253\000\252\000\251\000\250\000\249\000\249\000\248\000\248\000\247\000\247\000\246\000\246\000\245\000\245\000\245\000\245\000\244\000\244\000\244\000\244\000\243\000\243\000\243\000\243\000\242\000\242\000\242\000\242\000\241\000\241\000\241\000\241\000\240\000\240\000\240\000\240\000\239\000\239\000\239\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\238\000\237\000\236\000\236\000\236\000\236\000\235\000\235\000\234\000\233\000\232\000\232\000\232\000\232\000\231\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\229\000\228\000\228\000\227\000\227\000\227\000\226\000\226\000\225\000\225\000\225\000\224\000\223\000\222\000\222\000\221\000\220\000\220\000\219\000\219\000\218\000\218\000\217\000\217\000\216\000\215\000\214\000\214\000\213\000\213\000\212\000\212\000\211\000\211\000\210\000\210\000\209\000\208\000\208\000\207\000\207\000\207\000\207\000\207\000\206\000\206\000\206\000\205\000\204\000\203\000\203\000\203\000\203\000\202\000\202\000\201\000\200\000\200\000\200\000\200\000\200\000\199\000\199\000\199\000\199\000\198\000\198\000\198\000\198\000\197\000\197\000\197\000\197\000\196\000\195\000\195\000\194\000\194\000\194\000\193\000\192\000\192\000\192\000\192\000\191\000\190\000\190\000\189\000\189\000\188\000\188\000\187\000\187\000\187\000\187\000\186\000\186\000\185\000\185\000\185\000\185\000\185\000\185\000\184\000\184\000\184\000\183\000\183\000\183\000\183\000\182\000\181\000\180\000\180\000\179\000\179\000\178\000\178\000\177\000\177\000\176\000\176\000\175\000\175\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\173\000\172\000\171\000\171\000\170\000\170\000\169\000\169\000\168\000\168\000\167\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\144\000\143\000\143\000\142\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\140\000\139\000\138\000\137\000\136\000\135\000\134\000\133\000\132\000\131\000\131\000\131\000\130\000\130\000\130\000\129\000\129\000\129\000\129\000\128\000\127\000~\000}\000|\000{\000z\000z\000y\000y\000y\000x\000x\000w\000w\000w\000v\000v\000u\000t\000t\000t\000s\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\000m\000m\000m\000m\000m\000m\000m\000l\000l\000l\000l\000l\000l\000l\000k\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000d\000c\000c\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000]\000]\000]\000]\000]\000\\\000\\\000[\000[\000[\000[\000Z\000Y\000X\000X\000X\000W\000W\000W\000V\000V\000V\000V\000V\000V\000U\000U\000U\000U\000U\000T\000T\000T\000T\000T\000T\000T\000S\000S\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\000P\000P\000P\000P\000P\000P\000O\000O\000O\000O\000O\000O\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\000K\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000J\000I\000I\000I\000H\000G\000F\000E\000E\000D\000D\000C\000B\000B\000B\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:\0009\0009\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\030\000\029\000\029\000\029\000\029\000\028\000\028\000\028\000\027\000\027\000\026\000\026\000\026\000\025\000\025\000\025\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\022\000\022\000\021\000\021\000\021\000\021\000\021\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, "\003\152\003Z\000\000\000\000\000\000\000\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\143\000\000\0019\003\150\000\000\000\225\000O\000\000\000\000\000\000\001\020\000\000\0010\001v\000\000\000\000\001\174\000\000\001\226\000\000\000\000\000\000\002<\000\000\002\168\000\000\000\000\000\000\003\020\000\000\003(\000\000\000\000\003\152\000\000\004\022\005\030\000\000\000\000\005(\000\000\005\180\000\000\000\000\000\000\006\014\000\000\006@\000\000\006\220\000\000\006\254\000\000\007B\007D\000\000\000\000\007\168\000\000\007\186\000\000\002\000\000c\t\014\000\000\000\000\000\000\004T\000\000\000\000\003\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tD\000\000\000\000\000\145\n\222\000\000\000\000\011\"\000\000\000\000\000\000\000\000\b8\000\000\b\172\t\020\000\000\b\222\000\000\000\000\b\226\000\000\000\000\b\236\000\000\b\254\000\000\000\000\000\000\tB\000\000\002P\t\148\000\136\000\000\000\000\000\000\000\000\006\178\002>\004j\000\000\000\000\000\000\t\170\000\000\000B\000\000\003\206\000\251\007\174\000\000\000\000\003\170\000\000\000\r\000\000\000@\015\146$r\000\156$r\0202\b\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\162\000\156\000\000\000\000\021\226\000\000\030\198\000\000\018\016\000\000\000\000\000\000\000\000\003 \000\000\000\134$\144\000\000\005*\000\000\005\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000\000\r\160\000\000\015\220\000\000\017\012\000\000\018X\000\000\020\020\000\000\023(\000\000\0258\000\000\028\210\000\000\0296\000\000!\238\000\000\t$\000\000\020\\\000\000\000\000\000\000\000\000\000\000'\170\000\0007z\000\0007\232\000\000\r\250\000\000\000\000\014\b\000\000\000\000\000\000\000\000\000\000\000\197\016\020\000\000\000\189\000\000\000\000\000B\005\004\000\000\000\176\t\202\000\000\000\000\n\168\000\000\n\188\n\214\000\000\000\000\n\232\000\000\011\002\000\000\000\000\000\000\011\026\000\000\011 \000\000\0118\000\000\011Z\000\000\000\000\011\\\000\000\011d\011f\000\000\000\000\011x\000\000\011\130\000\000\000\000\000\000\011\134\000\000\011\138\000\000\011\142\000\000\011\168\000\000\011\182\011\194\000\000\000\000\011\200\000\000\011\202\000\000\0042\012x\000\000\011\210\000\000\011\212\014\n\000\000\011\226\000\000\000\000\011\246\000\000\012\012\000\000\012\016\000\000\000\000\000\000\012\018\000\000\012\020\bb\000\000\012\026\000\000\005\226\000n\000\000\006\022\000\000\007&\000\000\000\000\001\188\n.\000\000\000\000\000\000\006\"\015\158\000\000\018j\000\000\000\000\000\000\004p\000\000\004\144\000\000\006$\000\000\000\000\000\000\000\000\000\000\000\000\b\140\000\000\000\000\000\000\000\000\000\000\019X\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\176\005\190\b\168\000\000\012\028\000\000\012\030\n\198\000\000\012N\000\000\000\000\007L\000\000\000\000\000\000\000\000\000\170\000\000\000\000't\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\202\b\154\000\000\000\000\000\000\022t\000\000\023\184\006\160\000\000\000\000\000\000\005\216\000\000\011D\000\000\r\222(N\000\000\017V\000\000\026B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021z\000\000\021\166\000\000\026&\000\000\026`\000\000\026p\000\000 l\000\000!\018\000\000!B\000\000#\162\000\000%\190\000\000'\220\000\000*\174\000\000\002H\000\000)\246\000\000+d\000\000.D\000\000\000\000)\028\000\000\000\000\000\000)4\000\000\000\000\000\000\000\000\000\0002r\000\000\000\000\000\000\005\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\178\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\022\154\000\000\000\000\000\000\000\000\001*\000\000\000\0003.\000\000\000\000\000\000\000\230\001p\000\000\000\000\000\000\000\000\027(\000\000\028 \000\000\000\000\000\000\000\000\000\000)J\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\012R\012\n\000\000\012V\000\000\000\000\000\000\000\000\000\000\012\\\000\000\000\000\0015\007\194\000\000\b:\000\000\000\000\000\000\002\000\000\000\012:\000\029\012t\000\000\000\000\012~\000\000\012\132\012\136\000\000\000\000\012\138\000\000\012\160\000\000\000\000\000\000\012\164\000\000\012\192\000\000\012\202\000\000\012\206\000\000\000\000\012\216\000\000\012\220\012\250\000\000\000\000\012\252\000\000\012\254\000\000\000\000\000\000\r\004\000\000\r\b\000\000\r\016\000\000\r\030\000\000\r\"\r$\000\000\000\000\r(\000\000\r2\000\000\006\186\021\212\000\000\r4\000\000\r>\024\154\000\000\rB\000\000\000\000\r`\000\000\rz\000\000\r|\000\000\000\000\000\000\r\128\000\000\005\138\000\000\000\000\r\130\012\030\000\000\r\132\000\000\000\000\001\b\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000\000\006\196\012\162\000\000\r\166\000\000\r\168\rR\000\000\r\170\000\000\000\000\014\200\r\198\000\000\000\000\r\200\000\000\r\206\r\210\000\000\000\000\r\216\000\000\r\220\000\000\000\000\000\000\r\248\000\000\r\252\000\000\014\006\000\000\014\012\000\000\000\000\014\014\000\000\014\016\014\022\000\000\000\000\014\024\000\000\014\026\000\000\000\000\000\000\014\030\000\000\014 \000\000\014\"\000\000\014(\000\000\0146\0148\000\000\000\000\014B\000\000\014N\000\000\0076\028\186\000\000\014P\000\000\014R\028\196\000\000\014Z\000\000\000\000\014\\\000\000\014^\000\000\014j\000\000\000\000\000\000\014n\000\000\014r\016\180\000\000\014x\000\000\000\000\007\132\016\246\000\000\014|\000\000\014~\018P\000\000\014\130\000\000\000\000\000\000\000\000\000\000\000\000\000\00032\000\000\004\168\000\0003P\000\000\000\000\b,\000\000\000\000\000\000\007\202\001\170\000\000\000\000\022B\006\168\000\000\006\018*\248\000\000\000\000)\184\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 2)\184\000\000!l\000\000!\186\004\158*\002\000\000\023\002\000\000\000\000\000\000\007\190\000\000\026:\000\000\000\0003\220\000\000\000\000\000\000\007\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0003\224\000\0004&\000\000\000\000\000\000\019D+\146\000\000\000\000\000\000+\170\000\000\000\000\000\000\000\000\b\170\000\000\000\000\000\000\000\000$\202\000\000\000\000'R\000\000\001E\000\000\000\000\000\000\000l\000\000\011v\000\000\022\018\000\000\025p\000\000\028\138\000\000&\140\000\000*\226\000\000,p\000\000-|\000\0000H\000\0001v\000\0001\224\000\0005\012\000\0007\150\000\000\000\000+\228\000\000\000\000\024\132+\238\000\000\000\000,\170\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\001\000\000\000\b\166\000\000\000\000\021&\000\000\000\000\000\000,\142\000\000\000\000\000\000\000\000\000\000\027(\000\000\000\000\000\000\000\000,\204\000\000\000\000\000\000\000\000\003\028\007X\000\000-T\000\000\000\000\000\000\000\000\015\140\000\000-b\000\000\000\000\000\000\000\000\0019\000\000\007\b\000\000\t\232\002,*&\000\000\000\000\000\000\004n\000\000\000\000\000\000\000\000\000\000\000\000\014\024*&\000\000\016>\000\000\020\168\005.\000\000\000\000\000\000\b\174\000\000!\\\000\000\000\0004~\000\000\000\000\000\000\b\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\142\000\000\030\002\000\000\000\000\000\000\002\020\000\000\000\000\000\000\000\000\000\000\000\000\030\252\000\000#\170\000\000.\254\000\000/\202\000\0001\174\000\0002\020\000\0002\236\000\0007\\\000\0008V\000\0008p\000\0008\146\000\000-\178\000\000\nH\000\0008\152\000\0008\172\000\0008\192\000\000*H\000\000\000\000\000\0004\224\000\000\000\000\000\000\000\017\000\0005\000\000\000\000\000\000\0005\026\000\000\000\000\003\176\000\000\0252\000!\005p\000\000\b\154\000\000\012\240\002\006\007\144\000\000\000\000\000\000\000\000\000\000\000\000\000\0005\156\000\000%2\"\222\b\226\000\000\000\000\000\000.\004\000\000.b\000\000.\134\000\000%p%\216\000\194\0014\000\000\000C\005\186\000\000\000\000\000\000\005\238\000\000\000\000\006\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\0005\182\000\000\000\000\000\000\000\000#<\000\000&\178\000\000\000\000\000\000\000\000\000\000\000\000\r*\000\000\000\000\n\016\000\000\000\000\000\000\025\192\004@\000\000\025\254\000\000\000\000\015\140\000\000\004n\000\000\000\000\014\158\000\000\027p\000\000\000\000#\142\000\000\000\000\000\000\0128\000\000\000\000\b\248\000\000\000\000!\198\000\000\000\000\000\000.\208\000\000\000\000\000\000%\172\000\000\000\000\000\000\000\000/(\000\000\000\000\000\000\000\000\006\228\0230\000\000/\\\000\000\000\000\000\000\000\000\000\000\000\000\015\006\000\000\000\000\004\236\000\000\015D\000\000\0128\000\000\000\000\0028\023\130\000\000\003\180\000\000\000\000\000\000\000\000\002\020\000\000&\212\000\000\027\252\003\206\028:\000\000\003\248\000\000\016\002\000\000\017\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\222\028\248\002\152\029\250\000\000\000\000\000\000\004\210\000\000\017\148\000\000\004\246\000\000\000\000\012\190\005\180\030b\000\000\005\234\000\000\018\028\030\238\000\000\000\000\019\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007*\b\024\000\000\007H\000\000\000\000\000\000\000\000\005\194\000\000\019\144\000\000\000\000\000\000\"~5\188\000\000\000\000\000\000!\210\000\000\000\000\000\000\000\000\000\000\012X\t\000\000\000\000\000/\164\000\000\000\000\000m\000\000\t\134\000\000\000\000(n\000\000\000\000\000\000/\198\000\000\000\000\000\000\000\0000\128\000\000\000\000\b\006\0124\000\000\000\0000\154\000\000\000\000\007\234\"\146\000\000\012p\000\000\000\0000\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000#\238\000\000\000\000\000\000\001X\000\000\000\000\r\n\000\000\000\000(\250\000\000\000\000\000\0000\252\000\000\000\000\000\000\000\0001\026\000\000\000\000\b*\rh\000\000\000\0001x\000\000\000\000\b\220\000\000\000\000\000\000\000\000\002\020\002\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003|\000\000\019\248\000\000\000\000\000\0006\022\000\000\t&\000\000\000\000\000\000\005p\000\000\011\178\000\000\000\000\002<\021\004\000\000\021l\000\000\000\000\000\000\002d\000\0006\152\005\0246\178\000\0006\192\000\000\000\000\000\000\0050\000\0006\236\007\134\000\000\000\000'\018\007\214'\140\000\000(\020\000\000\000\000\000\000\t\002\000\0007n\n \000\000\000\000\026\172\n*\026\216\000\000\030v\000\000\000\000\000\000\np\000\0007\136\nv\000\000\000\000\000\000\000\220\000\000\000\000\000\000\007\254\000\000\000\000\000\000\000\000\000\000\000\000\001d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000K\000\000\000\000\006\144\000\000\000\000\015B\000\000\000\000\000\000\000\000\007f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015D\000\000\000\000\015\030\000\000\0009\000\000\000\000\000\016\000\000\b\186\014\198\001\014\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\190\br\000\000\000\000\017\132\000\000\000\000\000\000\011\014\000\000\000\000\012\238\024r\000\000\000\000\000\000\000\000\025\022\025b\003n\000\000\000\000\000\000\030\150\000\000\000\000\000\000\000\000\000\000\000\000\002\028\000\000\000\000\002\002\000\000\000\000\014\148\000\000\000\000\017\190\000\000\000\000\014|\000\000\002~\000\000\000\000\000\000\000\000\004\230\031\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\014 P\000\000\000\000\000\000\000\000\"\210\000\000\000\000\002\224\000\000\015T\000\000\000\000\000\000\012\176\000\000\003\164\000\000\000\000\000\000 \202\000\000\000\000\"\252\000\000\000\000\000\n\014\154\000\000\014\156\000\000$4\n\b\000\000&\132\000\000\000\000\000\000\000\000\014\162\000\000\015\028\000\000\000\000\000\000\030J\000\000\003\170\014\228\005\228\000\000\000\000\000\000\000{\001\006\000\000\000\000\000\000\000\000\001P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\186\000\000\000\000\018.\000\000\002\156\015t\004\218\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\002\000\000\000\000#H'&\000\000\000\000\000\000\000\000(\182\000\000\000\000\003\128\000\000\001d\r\128\000\000\000\000\000\000\b\190\000\000\000\000\000\000\000\000\000\000\000%\018\168\000\000\000\000\023x\000\000\000\000\000\000\000\000\019\210\000\000\000\000\007\136\000\000\000\000\000\000\000Y\000\000\000\000\003\246\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\184\000\000\000\000\000\000\003,\000\000\000\000\000\000\000\000\000\000\000\020\007<\r\148\r\162\000\000\004\134\005\146\006\190\t\158\000\000\000\000\000\000\000\000\000\000\000\000\n\186\022j\000\000\031~\007x\000\000\000\000\011\136\000\000\023\"\000\000\029\216\000\000\000\000\n\254\023`\000\000 T\000\000\011\142 \226\000\000\000\000\000\000\b2\004\134\000\000\000\000\000\000\000\000\b\238\000\000\017\208\002\030\000\000\000\000\003\004\006@\000\000\014j\000\000\000\000\004p\000\000\004\144\000\000\000\000\024\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\174\000\000\000\000\011\186\000\000\023\238\000\000\0128\015$\000\000\000\000\000\000\000\000\000\000\003\166\000\000\000\000\000\000\000\000\000\00022\000\000\000o\000\000\000\000\000\000\000\000\000\000\001v\000\000\n\022\n\158\n\164\000\000\003\b\011,\000\000\011>\000\000\003\152\000\000\004 \000\000\005\012\000\000\0128\000\000\000\000\000\000\000\000\000\000\005\148\000\000\011Z\000\000\006\028\000\000\0128\015\150\000\000\004\016\000\000\015\150\n\196\000\000\t\006\000\000\t\232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n2\000\000\nz\000\000\000\000\000\000\014l\000\000\000\000\000\000\000\000\000\000\015\158\014|\000\000\000\000\014\180\000\000\000\000\014\134\n\b\015\218\000\000\015\226\000\000\000\000\004\208\002*\000\000\014\188\000\000\000\000\014\242\000\000\000\000\000\000\000\000\000\000\000\000\015\200\014\160\000\000\000\000\000\000\014\216\014\196\n6\b\142\014\242\015(\000\000\000\000\014\208\n\136\011@\014\250\0156\000\000\000\000\011X\016\012\000\000\016\016\000\000\0166\000\000\000\000\016\028\000\000\000\000\016\"\000\000\000\000\000\000\000\000\0160\000\000\016T\000\000\000\000\000\000\016Z\000\000\000\000\000\000\016d\000\000\000\000\000\000"), (16, "\003\214\003\237\000U\003`\006\167\0041\0042\005\211\002\142\0026\001\160\005v\001\170\006w\002\151\005\237\000\137\005\176\002\151\002\144\003\164\003\r\004\202\004\178\0028\000U\003\214\003\237\000\249\006\132\005\209\0072\000\249\006\250\0073\005\212\005\223\005\224\005\238\006\251\002\146\000U\000\137\002 \005\241\005\223\005\224\006\252\001\160\004\131\002\023\005\240\006\133\006i\006\136\005\223\005\224\000\025\004\132\000\251\003\216\000l\003_\000\250\003\217\000\137\000\139\000\145\000\183\000\144\003*\001\162\002\147\003.\005\238\001\163\006j\006m\005\223\005\224\005\241\005\223\005\224\001\160\004\132\001\170\003\216\000\137\000\139\001P\003\217\000\144\0077\000\018\000\181\006\177\006\193\006\194\000\190\000\137\000\137\000\139\000\140\002-\000\144\005\225\000\183\000\146\002\002\001\162\000\137\001\176\005x\001\163\005\225\000\017\000V\006\167\006\130\004\249\001}\003\242\000\007\000\244\005\225\006\180\006}\002\151\000\183\000\146\000\024\001\160\003/\001\170\000\147\000h\0030\003\165\006\254\000V\006\132\000\183\000\146\005n\001\162\006\206\000\005\005\225\001\163\001\176\005\225\002!\000\183\002\144\004m\004T\006\255\000\184\000a\000m\001\141\000\185\001\136\006\133\003\230\006\136\005\223\005\224\004r\000d\000k\000U\004s\004\133\002\148\003\231\004\251\004\216\002\"\001\224\004m\003\015\005'\006v\001\176\001\177\005\244\004X\004\198\000\183\003\230\001\143\001\162\006\175\004r\000\194\001\163\002\024\004s\004\133\007\000\003\231\003\164\003\214\003\237\006w\002\147\006\131\004]\007\001\004[\004w\001\141\004\179\007\030\004\210\0078\002\005\004\141\000\137\006z\004\233\005\253\001\177\006\252\0079\004\131\002\162\000U\004\170\003\246\002\162\001\176\005\231\003=\005\225\006\183\004w\006\185\004\136\007 \001\180\006w\001\142\004\141\003>\003\164\007\"\003\247\001N\005\229\005\206\005\207\003\248\000\137\004\170\003\246\003\249\001\177\001\181\006\149\004\132\003\250\003\216\001\182\004\\\003\015\003\217\001\183\000\195\001Q\001N\007L\001\184\003\247\003\214\003\237\005\245\001|\003\248\001\225\001\240\005\230\003\249\001N\004T\002!\000U\003\250\000\137\001\178\000\137\001Q\001\252\003\214\003\237\003\r\004\202\004\178\000\196\001|\002\011\000\137\000\137\001\179\001Q\001\177\000\028\001\160\004^\001\161\006#\000\255\001|\001\180\002\017\000\147\004U\006x\003\165\003a\000 \001]\000\255\006 \004_\000\228\007\131\000\137\001g\000U\007M\001\181\004\132\003d\003\216\002\014\001\182\002\r\003\217\002\162\001\183\004T\001`\000\181\000\198\001\184\006\147\000\182\000\229\001\217\000\005\000\183\000\230\003\216\006x\000\031\004m\003\217\000\200\000\147\000U\001\180\004\159\003\170\006\142\000\183\003\230\002\012\001\162\004\222\004r\007\n\001\163\004U\004s\004\133\007N\003\231\007\022\001\181\002\149\0067\0068\000\"\001\182\007\001\005\231\003\174\001\183\006{\007P\000\249\005\248\001\184\004\217\003\242\006\143\000\244\006\144\003\164\000\147\000\183\002\012\003\214\003\237\004\193\000\184\005R\001\176\000$\000\185\0069\006J\004w\003\242\004\136\007R\000\137\0029\000\137\004\141\006:\003\245\007T\006\252\007>\004\178\006\145\004m\001}\001h\004\170\003\246\0028\000\244\006K\004\195\006\146\003\230\006N\005\223\005\224\004r\000p\000\194\005\130\004s\004\133\003\016\003\231\003\247\004\219\001\141\001w\000(\003\248\001a\003\230\001b\003\249\005\132\004\132\004\198\003\216\003\250\005\133\000\255\003\217\003\231\006\167\000U\003\177\003\149\000U\002%\003\214\003\237\007I\000\004\002\151\005\132\003\244\001\177\001\143\000\181\004w\007\018\004\179\002\029\004\210\000\137\000\137\004\141\006!\006\132\004\233\006\252\007>\004\178\006~\005m\000\255\000\005\004\170\003\246\007\r\006!\007\014\000*\005\225\006\022\005\223\005\224\000\147\000\255\000\255\004\159\006\133\000\195\006\136\005\223\005\224\003\247\003\246\004\204\004\224\005h\003\248\0067\0068\006$\003\249\000\252\004\132\006\208\003\216\003\250\006\209\001\210\003\217\000\255\003\247\000\183\003\214\003\237\004\204\003\248\000\184\000\196\007C\003\249\000\185\006\213\007*\007+\003\250\001\181\004m\006O\000\137\000U\005R\000.\006\127\006\252\007>\004\178\003\230\006:\004\128\001\184\004r\0000\006\128\006\129\004s\004\133\007D\003\231\007\146\005\225\004\129\003\214\003\215\000\\\000\194\007\001\000\187\006\023\005\225\006\170\004u\004\135\007\147\000\198\004\193\000\137\000\139\000\140\000\141\000\144\004\132\000]\003\216\004\129\006\206\003*\003\217\000\202\003.\000U\003\214\003\237\007/\004w\006\221\004\179\007E\007F\006P\007\r\004\141\007\014\000\r\007H\007\021\004\194\000U\0003\004m\000\255\003\015\004\170\003\246\004f\005|\006\198\006\199\000\146\003\230\000\183\000U\003\216\004r\000\016\000\017\003\217\004s\004\133\007D\003\231\003\247\003\164\006\203\004\222\004\184\003\248\000U\007\001\000\195\003\249\003\214\003\237\004u\000\183\003\250\006\206\004\129\003/\003W\000\004\003\216\0030\000\137\000\147\003\217\000\181\000\137\003\214\003\215\000\192\004\212\006\252\007>\004\178\000\b\004w\006\132\004\179\000\196\007F\0007\002\162\004\141\000\005\0021\007H\004m\0066\005\223\005\224\006\173\004\207\000\255\004\170\003\246\006\206\003\230\0041\0042\006\133\004r\006\136\005\223\005\224\004s\004\133\007D\003\231\004\132\007\155\003\216\002#\003\247\0019\003\217\007\001\005k\003\248\003\214\003\237\004u\003\249\005i\000\183\007G\000\183\003\250\003\216\000\184\000\137\000V\003\217\000\185\000\181\000\137\003\230\004\230\000\192\006\221\006\252\007>\004\178\005k\004w\001p\004\179\003\231\007F\004\230\000^\004\141\005\004\007\132\007H\004m\000\147\004\235\005\225\003\165\003=\001k\004\170\003\246\004\129\003\230\006\225\000\194\004\232\004r\001N\003>\005\225\004s\000\137\000\139\003\231\004\132\001O\003\216\004\231\003\247\003*\003\217\004\235\003D\003\248\003\214\003\237\004u\003\249\001Q\000\183\007O\005\244\003\250\000U\000\184\000U\001|\004\227\000\185\005\140\000\137\003\170\004m\000\137\000\137\006\252\007>\004\178\000U\004w\0006\005\143\003\230\000\146\005\142\0009\004r\003\236\000\137\000U\004s\004\133\007D\003\231\007\139\003\174\005\142\000U\003\246\003\230\004S\007\001\000\194\0044\002\134\004\245\004u\000\183\000\195\000U\003\231\003/\004\132\003@\003\216\0030\003\247\000U\003\217\005y\001\160\003\248\001\161\003\147\003*\003\249\004W\003.\007S\004w\003\250\004\179\004\238\007F\006\139\000\254\004\141\005\219\000\196\007H\004m\001r\001]\000\255\000U\000\137\002+\004\170\003\246\001g\003\230\006\152\005\245\005\220\004r\000;\006\221\007\n\004s\004\133\007D\003\231\001`\001`\007\017\000\197\003\247\006\224\000U\007\001\001}\003\248\003\214\003\237\004u\003\249\000\195\004T\000\183\001\130\003\250\001\162\003W\003\232\000\198\001\163\003/\000\146\000\137\000\239\0030\000U\001\165\003\r\004\202\004\178\000U\004w\000\200\004\179\000?\007F\000\252\004T\004\141\004Z\000\196\007H\004m\004U\000\255\001\233\004\171\003=\000\137\004\170\003\246\003\138\003\230\006\216\005x\001\176\004r\000\147\003>\000A\004s\004\133\007D\003\231\004\132\001\247\003\216\000\197\003\247\004U\003\217\007\001\006\233\003\248\003\214\003\237\004u\003\249\005\222\000U\001Q\001\139\003\250\003\015\004\129\001h\000\198\000U\001|\000\181\000\137\000\199\000\147\000\190\005\220\003\r\004\202\004\178\000U\004w\000\200\004\179\006p\007F\000U\001z\004\141\003Y\001i\007H\001a\001a\001b\001b\001u\000\137\004T\004\170\003\246\000\137\000\255\000\255\003=\003\142\003\127\007\r\000U\007\014\006\189\001\177\003\\\004\254\004\132\003>\003\216\000\255\003\247\000C\003\217\002u\003\148\003\248\003\214\003\237\002\156\003\249\004\254\000\183\004U\001}\003\250\006\223\000\184\003\141\000E\000U\000\185\005\208\000\137\003\130\004m\003\014\005\000\003\r\004\202\004\178\003_\001}\000\137\002\030\003\230\000\137\000U\003\r\004r\000\137\006\216\004\255\004s\004\133\005\209\003\231\005q\004\216\001Q\005\212\005\223\005\224\000I\000H\000\194\005-\001|\000\147\004u\000\137\000\139\000\140\001K\000\144\004\132\002\220\003\216\001\235\0041\0042\003\217\000\181\003a\005X\003\184\000\190\000\147\003\014\005\146\006\227\000\137\004w\000\147\004\179\006\003\004\210\003b\000\137\004\141\006\191\005^\004\146\004m\005\142\000\137\000\139\000\140\001\127\000\144\004\170\003\246\000\146\003\230\000K\002\247\001T\004r\006\004\005\223\005\224\004s\004\133\000M\003\231\004\214\004\216\005\154\006\218\003\247\005\225\006\132\005`\005\247\003\248\001\137\000\255\004u\003\249\000\195\000\183\003\178\005\156\003\250\0032\000\184\000U\000\146\000U\000\185\000U\000\181\003\214\003\237\006\133\000\190\006\136\005\223\005\224\001]\004w\003;\004\179\000\227\004\210\003\182\001g\004\141\000\137\000\196\004\146\004m\000U\003\r\004\202\004\178\000U\003\191\004\170\003\246\001`\003\230\000\183\000\194\005\251\004r\000o\000U\005\225\004s\004\133\000U\003\231\004\253\004\216\0023\000\228\003\247\000U\003\151\004\133\000U\003\248\000\255\007e\004u\003\249\003\176\007\151\000\183\004\132\003\250\003\216\006\217\000\184\000\198\003\217\0043\000\185\000\229\003\214\003\237\005^\000\230\005\245\000U\005\225\005\252\004w\000\200\004\179\000\224\004\210\006\221\000`\004\141\000\137\000l\004\146\005\226\005z\003\r\004\202\004\178\000u\004\141\004\170\003\246\004\146\003\214\004\030\006\253\000\194\005_\001N\0025\004\170\000\195\000U\003\176\000\147\000c\003V\000\255\003\219\003\247\0041\0042\001h\000t\003\248\000w\003\214\003\237\003\249\001Q\000z\005\157\004\132\003\250\003\216\001\154\007\139\001|\003\217\000|\003\228\000\196\000\137\001N\004C\001n\005\156\006\252\001a\004\131\001b\003\214\003\215\007\003\000\137\000\147\006\007\001\255\000\255\000\147\004m\000\183\003\154\003\216\001Q\000\255\000V\003\217\000\228\000V\003\230\007e\001|\000\128\004r\006\022\005\223\005\224\004s\004\133\000\195\003\231\005u\004\216\004\132\000a\003\216\000\198\000a\000r\003\217\000\229\006\171\000V\004u\000\230\000d\003\214\003\237\000d\007l\000\200\007K\004\150\000\227\0041\0042\005\022\007e\000\183\000\196\003\216\000a\000\137\0020\003\217\007;\004w\006\252\004\179\004\131\004\210\001]\000d\004\141\000\143\000\147\004\146\004m\001v\000\137\000\139\000\140\001\132\000\144\004\170\003\246\000\228\003\230\0041\0042\001\001\004r\001`\007e\005\225\004s\004\133\006\222\003\231\007\028\004\216\007\129\006_\003\247\004\132\000\198\003\216\004{\003\248\000\229\003\217\004u\003\249\000\230\003\214\003\237\003\230\003\250\007J\000\200\007m\000\146\007<\005\030\007\150\005\160\001\160\003\231\001\170\004m\000\137\005\168\006\003\000U\004w\006\252\004\179\004\131\004\210\003\230\005\142\004\141\000\137\004r\004\146\007;\005\170\004s\004\133\007=\003\231\003*\004\170\003\246\003.\006\004\005\223\005\224\007\001\007;\0041\0042\007f\007@\003\230\007\157\005\171\000U\005\174\000g\006\236\003\247\004\132\000\181\003\216\003\231\003\248\001\254\003\217\007\187\003\249\005\170\004\129\005\142\000\183\003\250\004w\001\162\004\136\007B\007?\001\163\006\229\004\141\007\188\007\031\007H\000\137\007A\007h\004m\001\004\003\r\000j\004\170\003\246\001a\004\129\001b\000\183\003\230\001\b\007Q\003/\004r\007\140\000\255\0030\004s\004\133\007=\003\231\001\224\003\247\001\007\005\225\006\243\001\176\003\248\007\001\004\020\000\183\003\249\001\n\007@\007j\000\184\003\250\007\140\003\184\000\185\000\137\000\139\000\140\002'\000\144\001\012\000V\003\247\003\214\003\237\000\137\000\139\000\140\002\138\000\144\007\158\004w\001\016\004\136\007B\001\018\003\250\001N\004\141\000\137\000a\007H\004m\006\221\003\r\007p\004\131\001\020\000\194\004\170\003\246\000d\003\230\007\140\000\137\000V\004r\000\146\001Q\003\015\004s\004\133\007=\003\231\001\022\001\025\001|\000\146\003\247\001\029\001\028\007\001\006\248\003\248\000a\001\177\007@\003\249\000U\001\031\003\164\004\132\003\250\003\216\001!\000d\001%\003\217\001'\003=\001)\000\137\000\139\000\140\002\153\000\144\005\021\001\225\001\226\004w\003>\004\136\007B\001+\007\139\005{\004\141\001\178\000U\007H\001/\006M\000U\006\n\003\214\003\237\001.\004\170\003\246\0011\0013\001\179\000\195\005}\0018\001>\003\015\004\248\004\133\000\255\000\137\001\180\001=\000\146\006K\003\r\003\247\004\131\006N\005\223\005\224\003\248\001@\003\214\003\237\003\249\006\003\003\164\000l\001\181\003\250\004|\000\196\001B\001\182\001D\001H\001\140\001\183\000\137\001M\001\129\001\135\001\184\003\r\004~\004\131\001\217\005z\006\004\005\223\005\224\004\132\004\141\003\216\003a\004\146\004m\003\217\000\137\000\139\000\140\002\158\000\144\004\170\000U\001\134\003\230\002*\003f\002)\004r\000\147\002/\000\147\004s\004\133\004\159\003\231\001N\001\141\004\132\000\181\003\216\006\225\002=\000\182\003\217\005\225\001N\002@\004\237\000\137\002D\004\246\002C\002F\006\216\004\248\000\137\001Q\000\146\000\147\001\160\006\216\001\238\000V\002H\001|\002L\001Q\001\143\000U\001\160\004w\001\170\004\136\004\239\001|\005\225\005.\004\141\004\164\002N\004\146\000a\0016\000\181\002P\000\137\002R\000\192\004\170\003\246\000\181\002U\000d\002Y\000\192\005\027\000\183\000\147\003\214\003\235\004\159\000\184\004\168\005,\004m\000\185\0057\003\247\002X\002[\002]\001N\003\248\002a\003\230\002c\003\249\000\183\004r\002e\001\162\003\250\004s\004\133\001\163\003\231\002g\000\183\002k\002j\001\162\002m\001Q\004m\001\163\000\147\002o\002t\004\237\000\194\001|\000\183\002z\003\230\002y\004\164\000\184\004r\000\183\000U\000\185\004s\004\133\000\184\003\231\000\137\000\183\000\185\003\216\002|\001\176\004w\003\217\004\136\004\239\003\214\003\237\004\183\004\141\004\168\001\176\004\146\002~\002\128\004\138\002\132\002\141\002\140\006,\004\170\003\246\000\137\000\147\005I\000\194\000l\003\r\004\139\004\178\006\016\004w\000\194\004\136\004\185\002\155\002\161\002\160\004\141\003\247\001N\004\187\006*\002\242\003\248\006-\005\223\005\224\003\249\004\170\003\246\002\164\002\167\003\250\000\195\002\171\006\226\002\170\003\214\003\237\002\173\001Q\002\175\006\217\004\132\007\n\003\216\004\181\003\247\001|\003\217\005Y\007\012\003\248\000\137\001\177\002\179\003\249\002\181\003\r\004\139\004\178\003\250\002\183\000\196\001\177\002\185\002\188\002\192\003\214\003\237\002\191\002\194\002\196\006\218\002\200\002\202\002\204\004\186\000\195\002\206\006\218\000\255\003\230\000V\000\137\000\195\002\210\002\209\000\255\003\r\004\139\004\178\002\212\003\231\005\225\004\132\001\178\003\216\002\214\002\219\002\225\003\217\000a\001;\002\224\002\227\002\229\000\181\000\196\000\198\001\179\000\190\002\231\000d\002\235\000\196\002\241\001\220\000\255\002\240\001\180\002\246\002\252\000\204\002\251\005\217\004\132\006\001\003\216\000\137\005\236\005\250\003\217\006&\006I\000\197\006Z\006\\\001\181\004m\006f\003\015\000\197\001\182\000\181\006h\006r\001\183\000\182\003\230\006\141\007(\001\184\004r\000\198\007V\001\221\004s\004\133\000\238\003\231\000\198\000U\003\214\003\237\000\183\000\241\007Z\000\200\007n\000\184\007t\000\181\004u\000\185\000\200\000\190\007u\007\r\000\137\007\014\007z\007{\007\128\003\r\004\202\004\178\007\127\000\255\007\135\007\137\004m\007\143\003\214\003\234\007\144\004w\001]\004\179\007\148\004\180\003\230\000\183\004\141\001q\004r\004\146\000\184\000\194\004s\004\133\000\185\003\231\007\149\004\170\003\246\007\152\007\153\001`\007\156\007\159\004\132\004m\003\216\007\160\004u\007\177\003\217\007\166\000\242\000\183\007\175\003\230\003\247\007\171\000\184\004r\007\174\003\248\000\185\004s\004\133\003\249\003\231\007\183\000\194\007\181\003\250\004w\007\185\004\179\000\183\004\180\003\216\007\190\004\141\004u\003\217\004\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\170\003\246\000\137\000\139\000\140\002\238\000\144\000\194\000\000\000\000\000\147\000\000\000\000\004w\000\000\004\179\000\195\004\180\000\000\003\247\004\141\000\000\000\000\004\146\003\248\000\000\003\214\003\237\003\249\000\000\000\181\004\170\003\246\003\250\000\182\000\137\000\139\000\140\002\244\000\144\000\246\000\000\000\137\000\000\000\146\000\000\000\196\003\r\004\202\004\178\003\247\004m\000\000\000\195\000\000\003\248\000\000\000\000\003\185\003\249\000\000\003\230\000\000\000\000\003\250\004r\001a\000\181\001b\004s\004\133\000\192\003\231\000\228\004\209\000\000\000\255\000\146\000\000\000\000\000\000\000\195\003\189\000\196\004\132\004u\003\216\000\000\000\183\000\000\003\217\003\230\000\198\000\184\000\000\000\000\000\229\000\185\003\214\003\237\000\230\000\000\003\231\000\000\000\000\000\248\000\200\000\000\004w\000\000\004\179\000\196\004\210\000\000\000\137\004\141\000\000\000\000\004\146\003\r\004\202\004\178\000\000\006\006\000\000\000\183\004\170\003\246\000\000\000\198\000\184\000\194\000\000\000\000\000\185\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\206\000\137\003\247\006\004\005\223\005\224\006)\003\248\000\000\000\000\000\000\003\249\000\000\004\132\000\198\003\216\003\250\000\181\000\229\003\217\000\000\000\182\000\230\003\214\003\237\000\194\000\000\000\000\000\200\006*\000\000\000\000\006-\005\223\005\224\000\000\000\000\004m\000\000\000\137\000\000\000\000\000\000\001N\003\r\004\240\004\178\003\230\000\000\000\000\000\000\004r\000\000\000\181\000\000\004s\004\133\000\182\003\231\000\000\004\211\000\000\000\195\006\135\001Q\000\137\000\139\000\140\002\249\000\144\007\n\004u\001|\005\225\000\000\000\183\001N\007\023\000\137\000\000\000\184\004\132\000\000\003\216\000\185\000\000\006\133\003\217\006\136\005\223\005\224\000\000\000\196\000\000\004w\000\000\004\179\001Q\004\210\000\195\000\000\004\141\005\225\000\000\004\146\001|\000\000\000\146\000\000\004m\000\000\000\183\004\170\003\246\000\000\000\000\000\184\000\000\000\194\003\230\000\185\000\000\000\000\004r\006\132\004\242\000\000\004s\004\133\000\196\003\231\003\247\004\229\000\000\000\000\000\000\003\248\000\000\000\198\000\000\003\249\003\214\003\237\004u\000\000\003\250\001]\006\133\000\000\006\136\005\223\005\224\000\208\001_\000\194\000\000\000\197\000\137\005\225\000\000\000\000\000\000\003\r\004\240\004\178\000\000\004w\001`\004\179\000\000\004\210\003*\000\000\004\141\003.\000\198\004\146\004m\000\000\007\024\001\172\000\000\000\000\000\000\004\170\003\246\000\000\003\230\000\000\000\200\000\000\004r\000\195\000\000\000\000\004s\004\133\000\137\003\231\004\132\000\000\003\216\007\025\003\247\007\r\003\217\007\014\000\000\003\248\003\214\003\237\004u\003\249\006;\000\255\000\000\000\000\003\250\005\006\005\225\000\000\000\000\000\196\000\000\000\000\000\137\000\000\000\000\000\195\003W\003\r\004\139\004\178\003/\004w\000\000\004\179\0030\004\243\000\000\000\000\004\141\000\000\004\244\004\146\000\000\000\000\000\000\000\000\001N\000\000\000\000\004\170\003\246\000\000\000\000\000\000\000\000\000\196\000\000\000\000\003\214\003\237\000\000\003\138\001]\000\000\004\132\001\249\003\216\001Q\003\247\001t\003\217\006i\000\181\003\248\000\137\001|\000\182\003\249\001a\003\r\001b\004\131\003\250\001`\000\000\000\000\000\000\001\160\000\255\001\170\000\000\000\000\004m\000\000\006j\006m\005\223\005\224\000\000\000\000\000\000\000\198\003\230\000\000\000\000\000\000\004r\000\000\000\181\000\000\004s\004\133\000\182\003\231\000\000\000\210\004\132\003Y\003\216\000\000\000\000\000\000\003\217\000\000\000\000\000\000\004u\000\000\006\178\000\000\000\183\000\000\003=\003\139\003\127\000\184\000\000\000\000\000\000\000\185\003\\\000\000\000\000\003>\000\000\000\183\003\214\003\233\001\162\004w\000\000\004\179\001\163\004\243\000\000\000\000\004\141\000\000\005o\004\146\004m\000\000\004\248\003\141\000\000\005\225\000\183\004\170\003\246\003\130\003\230\000\184\000\000\000\194\004r\000\185\003_\000\000\004s\004\133\000\000\003\231\000\000\000\000\000\000\002\002\003\247\000\000\001\176\000\000\000\000\003\248\003\214\003\237\004u\003\249\000\000\001a\000\000\001b\003\250\000\000\000\000\000\000\000\183\000\000\003\216\000\255\000\137\000\194\003\217\000\000\004m\003\r\000\000\004\131\000\000\004w\003a\004\179\000\000\004\180\003\230\000\000\004\141\000\137\004r\004\146\000\000\000\000\004s\004\133\003b\003\231\000\000\004\170\003\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\214\003\237\004\237\000\195\000\000\000\000\004\132\001\160\003\216\001\161\003\247\000\000\003\217\000\000\000\000\003\248\000\137\000\000\001\177\003\249\000\000\003\r\000\000\004\131\003\250\004w\000\000\004\136\004\239\001\160\002\003\001\161\004\141\000\196\006\186\004\146\000\000\000\000\000\000\000\195\000\000\000\000\000\000\004\170\003\246\000\000\000\000\000\000\005\127\001]\002\005\000\000\004\248\000\000\000\000\000\000\001g\000\000\004\132\000\181\003\216\000\000\003\247\001\251\003\217\000\183\003\230\003\248\001\162\000\196\001`\003\249\001\163\000\000\001\180\000\000\003\250\003\231\000\000\000\198\000\000\000\000\000\000\003*\000\000\000\000\003.\000\183\000\000\000\000\001\162\000\000\001\181\000\212\001\163\000\000\000\226\001\182\000\000\000\000\005\129\001\183\004m\000\000\004\248\000\000\001\184\000\181\001\176\000\000\000U\000\190\003\230\000\000\000\000\000\198\004r\000\183\000\000\000\000\004s\004\133\000\184\003\231\000\000\000\000\000\185\003\214\003\237\000\200\001\176\000\000\001\160\000\000\001\237\000\000\004\237\000\000\000\000\000\000\000\000\000\183\000\000\000\137\000\000\003/\000l\000\000\003\r\0030\004\131\001\160\000\000\001\161\004m\000\000\000\000\000\000\001h\004w\000\194\004\136\004\239\000\000\003\230\000\183\004\141\000\000\004r\004\146\000\184\000\000\004s\004\133\000\185\003\231\000\000\004\170\003\246\000\000\000\000\003\157\001\177\000\000\001a\004\132\001b\003\216\004\237\000\000\000\183\003\217\000\000\001\162\000\255\000\000\003\247\001\163\000\000\000\000\000\000\003\248\000\000\003*\001\177\003\249\003.\000\000\000\194\000\183\003\250\004w\001\162\004\136\004\239\000\000\001\163\000\000\004\141\003\214\003\237\004\146\000\181\000\000\000V\000\000\000\182\006\230\006\238\004\170\003\246\004\248\000\000\001\176\000\195\000\137\000\000\000\000\000\000\000\000\003\r\004\139\004\178\000a\002r\000\000\000\000\003=\003\247\000\000\003\214\003\237\001\176\003\248\000d\000\000\001\181\003\249\003>\000\000\000\000\000\183\003\250\003\015\000\196\003/\000\137\003\214\003\237\0030\001\186\003\r\000\000\004\131\003\144\000\000\000\000\004\132\001\181\003\216\000\183\004m\000\195\003\217\000U\000\184\000\000\000\000\000\000\000\185\004\192\003\230\001\188\006\132\001\160\004r\001\236\000\000\000\000\004s\004\133\000\000\003\231\000\000\000\000\000\000\003T\001\177\004\132\000\000\003\216\000\000\000\196\000\000\003\217\004\237\006\133\000\000\006\136\005\223\005\224\003\214\003\237\000\194\000\000\003W\001\177\003\216\000\000\000\000\007!\003\217\000\000\003a\000\000\000\000\000\000\000\137\004w\000\228\004\136\004\239\003\r\004\139\004\178\004\141\000\000\003h\004\146\000\000\006\244\000\000\000\183\000\000\004\248\001\162\004\170\003\246\000\198\001\163\000\000\000\000\000\229\000\000\000\000\000\000\000\230\003=\000\000\000\000\000\000\000\000\000\200\004m\000\000\003\247\000\000\000\000\003>\004\132\003\248\003\216\000\000\003\230\003\249\003\217\000\000\004r\005\225\003\250\000\000\004s\004\133\000\000\003\231\001\176\003*\000\195\000\147\003.\002\001\000\000\000\000\000\000\004m\000\000\000\000\004u\000\000\000\000\000\000\000\000\000\000\000\000\003\230\000\000\000\000\000\000\004r\000\000\006\003\004m\004s\004\133\000\000\003\231\000\000\000\196\000\000\000\000\004w\003\230\004\179\000\000\004\180\004r\000\000\004\141\004\237\004s\004\146\000\000\003\231\006\004\005\223\005\224\004\172\000\000\004\170\003\246\000\000\000\000\000\000\003?\003W\004u\000\000\000\000\003/\000\137\000\000\004w\0030\004\136\004\239\000U\000\000\003\247\004\141\001\177\004\176\004\146\003\248\000\198\000\000\004m\003\249\000\000\004w\004\170\003\246\003\250\005\001\003\214\003\237\003\230\000\181\000\214\000\000\004r\000\182\000\000\000\000\004s\004\133\006)\003\231\003\246\003\247\000\137\006\181\000l\006\003\003\248\003\r\000\000\004\178\003\249\000\000\004u\000\000\000\000\003\250\005\225\003*\003\247\000\000\003.\006*\000\000\003\248\006-\005\223\005\224\003\249\006\004\005\223\005\224\007\n\003\250\000\000\000\000\004w\000\000\004\179\007\020\004\180\000\000\000\000\004\141\006\003\004\132\004\146\003\216\000\183\003Y\000\000\003\217\000\000\000\184\004\170\003\246\000\000\000\185\003\214\003\237\000\000\000\000\000\000\000\000\003=\000\000\003\134\006\004\005\223\005\224\004\182\000\000\003\\\003\247\000\137\003>\000\183\000\000\003\248\003\r\003/\004\131\003\249\000V\0030\000\000\000\000\003\250\000\000\003\214\003\237\000\194\000\000\000\000\000\000\005\225\000\000\000\000\000\000\005\225\000\000\004\130\000a\002w\000\000\000\137\000\000\000\000\003_\001\160\003\r\001\161\004\131\000d\000\000\000\000\004\132\000\000\003\216\001\160\000\000\001\170\003\217\000\181\000\000\003\137\000\000\000\192\000\000\000\000\000\000\006\014\000\000\000\000\000\000\000\137\000\000\005\225\001\160\000\000\001\161\004m\000\000\000\000\000\000\000\000\001\160\004\132\001\161\003\216\003a\003\230\000\000\003\217\000\000\004r\000\000\000\000\000\000\004s\004\133\000\000\003\231\000\000\003b\000\195\007\r\000\183\007\014\000\000\001\162\000\000\000\000\000\000\001\163\005\003\000\255\000\183\000\000\000\000\001\162\000\183\003=\000\000\001\163\000\000\000\184\000\000\000\000\000\000\000\185\000\000\000\137\003>\000\000\000\196\000\183\003\r\004w\001\162\004\179\000\000\005\005\001\163\000\183\004\141\006A\001\162\004\146\000\000\001\176\001\163\004m\006\029\000\137\001\224\004\170\003\246\000\000\003\r\001\176\000\000\003\230\000\000\000\194\000\000\004r\000\000\000\000\000\000\004s\004\133\000\000\003\231\003\184\003\247\000\000\000\000\000\181\001\176\003\248\000\198\000\182\004m\003\249\000\000\004\134\001\176\000\000\003\250\000\000\006\027\000\000\003\230\000\137\000\216\003\184\004r\000\000\000\000\000\000\004s\004\133\000\000\003\231\000\000\000\000\000\000\003a\004w\000\000\004\136\004\137\000\000\003\214\003\237\004\141\004\134\000\000\004\146\000\000\000\000\003j\000\000\001\177\000\000\004\140\004\170\003\246\000\181\000\137\000\000\000\000\000\192\001\177\003\r\000\183\004\131\000\195\000\000\004w\000\184\004\136\004\137\000\000\000\185\003\247\004\141\000\000\000\000\004\146\003\248\000\000\001\177\000\000\003\249\001\225\0034\004\170\003\246\003\250\001\177\001]\000\000\000\000\000\000\001\178\000\000\000\196\001g\000\000\000\000\004\132\000\000\003\216\000\000\000\000\003\247\003\217\000\194\001\179\000\000\003\248\001`\003\214\003\237\003\249\000\183\000\255\004\133\001\180\003\250\000\184\000\000\000\000\000\197\000\185\000\000\001\181\000\000\000\137\000\000\000\181\000\000\000\000\003\r\000\190\004\131\001\181\000\000\000\000\004\133\001\190\001\182\000\198\003\214\003\237\001\183\000\137\001\174\000\000\000\000\001\184\000\000\000\000\000\000\001\217\001\181\000\200\005\163\000\194\000\137\000\000\000\000\004\141\001\181\003\r\004\146\004\131\000\000\000\000\001\192\004\132\000\000\003\216\004\170\000\000\000\000\003\217\001\194\000\000\005\165\000\000\000\195\000\000\003*\004\141\000\000\003.\004\146\000\183\000\000\000\000\000\000\000\000\000\184\000\000\004\170\004m\000\185\000\000\001h\000\000\004\132\000\000\003\216\000\000\000\000\003\230\003\217\000\000\000\000\004r\000\196\000\000\000\000\004s\004\133\000\000\003\231\000\000\000\181\000\000\000\000\003\167\000\182\000\000\001a\000\000\001b\000\000\000\000\004\134\000\194\000\195\000\000\000\000\000\255\000\000\000\000\003\214\003\237\000\000\000\183\000\000\000\000\000\000\003/\000\000\000\000\000\000\0030\000\000\000\000\000\000\004w\000\137\004\136\004\137\002\019\000\000\003\r\004\141\004\131\000\196\004\146\000\000\000U\004m\000\000\000\000\000\181\000U\004\170\003\246\000\182\000\000\000\000\003\230\000\183\000\000\000\000\004r\000\000\000\184\000\000\004s\004\133\000\185\003\231\000\000\000\197\003\247\000\000\000\000\004\213\000\000\003\248\004\132\004m\003\216\003\249\004\206\000l\003\217\000\000\003\250\000\195\000l\003\230\000\198\000\000\000\000\004r\000\000\003\239\000\000\004s\004\133\000\000\003\231\000\000\000\194\000\000\000\200\004w\004\205\004\136\004\208\000\183\000\000\001\154\004\141\004\206\000\184\004\146\000\000\000\196\000\185\000\000\000\000\000\000\000\000\004\170\003\246\000\000\000\000\000\000\000\000\003=\000\000\000\000\003*\002\021\000\000\003.\004w\000\000\004\136\004\208\003>\000\255\003\247\004\141\000\228\000\000\004\146\003\248\000\000\003\214\003\237\003\249\000\194\000\181\004\170\003\246\003\250\000\192\000\000\000\000\000\000\000V\000\000\000\198\000\000\000\137\000V\000\229\000\000\000\000\003\r\000\230\004\131\003\247\004m\000\000\000\195\000\200\003\248\000\000\000a\002\217\003\249\000\000\003\230\000a\002\222\003\250\004r\000\000\003W\000d\004s\004\133\003/\003\231\000d\000\000\0030\000\000\004\225\003\214\003\237\000\000\000\000\000\000\000\196\004\132\004\226\003\216\000\000\000\183\000\000\003\217\000\000\003a\000\184\000\137\000\000\000\000\000\185\006l\003\r\000\000\004\131\003\138\000\195\000\137\000\000\003l\000\000\004w\003\r\004\136\004\228\000\000\000\000\000\000\004\141\000\000\000\000\004\146\000\000\000\000\006j\006m\005\223\005\224\000\000\004\170\003\246\000\181\000\198\000\000\000\194\001\250\000\196\000\000\000\000\004\132\006\003\003\216\000\000\000\000\000\000\003\217\000\218\000\000\003\247\003\184\000\000\003\214\003\237\003\248\000\000\000\000\000\000\003\249\003\214\003\215\000\000\003Y\003\250\006\004\005\223\005\224\000\000\000\137\000\000\000\000\000\000\000\000\003\r\000\000\004\131\000\000\003=\006\240\003\127\000\000\000\000\000\000\000\198\004m\003\\\004\236\000\000\003>\000\000\000\183\000\000\000\000\000\000\003\230\000\184\005\225\000\220\004r\000\185\000\000\000\000\004s\004\133\006\003\003\231\000\000\000\000\003\141\000\195\004\132\004\223\003\216\000\000\003\130\000\000\003\217\000\183\004\206\003\216\000\000\003_\000\000\003\217\003\214\003\237\000\000\006\004\005\223\005\224\000\000\000\000\000\000\000\194\005\225\006\234\004m\000\000\000\000\000\196\000\137\004w\000\000\004\136\004\208\003\r\003\230\004\131\004\141\000\000\004r\004\146\000\000\000\000\004s\004\133\004\241\003\231\000\000\004\170\003\246\000\000\000\000\003a\000\000\004\133\000\197\000\000\000\000\000\000\004\237\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\247\000\000\000\000\000\000\004\132\003\248\003\216\000\198\000\000\003\249\003\217\000\000\003\241\000\000\003\250\004w\000\000\004\136\004\239\005\225\000\000\000\200\004\141\000\000\000\000\004\146\000\000\005\167\004m\000\195\000\000\000\000\004\141\004\170\003\246\004\146\003*\000\000\003\230\003C\000\000\000\000\004r\004\170\000\000\003\230\004s\004\133\000\000\003\231\000\000\000\000\003\247\003\214\003\237\000\000\003\231\003\248\000\000\000\196\000\000\003\249\004\237\000\000\006\246\001\160\003\250\001\161\000\000\000\137\006\025\000\000\000\000\000\000\003\r\000\000\004\131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\003\004w\000\000\004\136\004\239\000\000\000\000\000\000\004\141\000\000\000\183\004\146\000\000\000\000\003/\000\000\004m\000\000\0030\004\170\003\246\000\000\000\000\006\004\005\223\005\224\003\230\004\132\000\000\003\216\004r\000\000\000\000\003\217\004s\004\133\000\000\003\231\003\247\000\183\003\214\003\237\001\162\003\248\000\000\003\247\001\163\003\249\000\000\0064\006\235\006\249\003\250\000\000\000\000\000\000\000\137\000\000\006)\003\252\000\000\003\r\000\000\004\131\001\160\000\000\001\161\000\000\000\000\000\000\000\000\000\000\000\000\004w\000\000\004\136\006\237\000\000\000\000\000\000\004\141\006*\001\176\004\146\006-\005\223\005\224\000\000\001\160\000\000\001\161\004\170\003\246\005\225\000\000\000\000\000\000\000\000\004\132\000\000\003\216\001\160\000\000\001\170\003\217\000\000\000\000\000\000\000\000\003*\003\247\000\000\003B\000\000\000\000\003\248\003=\000\137\000\000\003\249\000\000\000\000\000\183\004m\003\250\001\162\000\000\003>\000\000\001\163\000\000\000\000\000\000\003\230\000\000\000\000\000\000\004r\000\000\000\000\000\000\004s\004\133\000\000\003\231\000\000\000\183\000\000\003*\001\162\000\000\003A\000\000\001\163\005\225\000\000\001\177\006\235\000\000\000\183\003\214\003\237\001\162\000\000\000\000\001\176\001\163\000\183\000\000\000\000\000\137\003/\000\000\000\000\000\181\0030\000\137\000\000\000\182\000\000\004w\005\020\004\136\006\237\000\000\000\000\000\000\004\141\000\000\001\176\004\146\000\000\000\000\000\000\004m\000\000\000\000\001\224\004\170\003\246\000\000\000\000\001\176\000\000\003\230\0053\000\183\006?\004r\000\000\003/\000\000\004s\004\133\0030\003\231\000\000\003\247\0056\000\000\003\216\000\000\003\248\000\000\003\217\000\000\003\249\000\000\006\235\000\000\001\181\003\250\000\183\000\000\000\000\000\000\000\000\000\184\001]\001\177\000\000\000\185\000\000\005<\001\196\001g\003\214\003\237\000\000\000\000\000\000\004w\000\000\004\136\006\237\000\000\003\214\003\237\004\141\001`\000\000\004\146\000\137\001\177\000\000\006S\000\000\005\020\000\000\004\170\003\246\000\000\000\137\003=\000\000\000\194\001\177\005\020\005a\000\000\000\000\003\242\000\000\000\244\003>\000\000\000\000\000\000\003\247\000\000\000\000\005e\000\000\003\248\003\214\003\237\000\000\003\249\001\225\003\221\000\000\0055\003\250\000\000\0056\000\000\003\216\000\000\001\178\000\000\003\217\000\000\003=\001\181\0056\000\000\003\216\004\190\000\000\000\000\003\217\006\003\001\179\003>\003\230\000\000\000\000\001\198\000\000\005<\000\255\000\000\001\180\005=\000\000\003\231\000\000\001\181\000\000\005<\000\000\001\160\006\003\001\170\006\004\005\223\005\224\001h\005c\000\195\001\181\001\200\003W\000\000\003\216\001\182\000\000\000\137\003\217\001\183\000\000\000\000\000\000\000\000\001\184\006\004\005\223\005\224\001\217\000\000\004\153\000\000\000\000\001a\000\000\001b\000\000\006)\005@\000\196\000\000\005d\001\160\000\255\001\170\000\000\000\000\000\000\000\000\005W\003\246\000\000\001\160\000\000\001\161\000\000\003\214\003\215\000\137\000\183\006*\000\000\001\162\006-\005\223\005\224\001\163\000\000\003\247\000\000\003\230\004\196\000\000\003\248\005\225\003\242\000\000\003\249\000\000\005=\003\230\003\231\003\250\000\000\000\000\000\198\000\000\000\000\000\000\005=\001\160\003\231\001\170\000\000\005>\005\225\000\000\001\224\000\000\000\222\000\183\000\000\001\176\001\162\005>\000\000\000\137\001\163\004m\000\000\000\183\000\000\000\000\001\162\000\183\000\000\003\216\001\163\003\230\000\000\003\217\000\000\004r\000\000\005@\000\000\004s\005E\000\000\003\231\000\000\000\000\000\000\005\225\005@\005W\003\246\005E\001\224\000\000\000\000\000\000\004\198\001\176\000\000\005W\003\246\000\000\000\183\000\000\000\000\001\162\000\000\001\176\003\247\001\163\000\181\000\000\006\003\003\248\000\190\000\000\000\000\003\249\003\247\004w\000\000\000\000\003\250\003\248\000\000\000\181\000\137\003\249\000\000\000\190\001\177\000\000\003\250\000\000\000\000\006\004\005\223\005\224\003\246\000\000\001\224\000\137\006D\000\000\000\000\001\176\000\000\000\000\000\000\000\000\000\000\000\000\001\225\004o\003*\000\000\003\247\003.\000\000\000\000\000\000\003\248\001\178\006V\000\000\003\249\000\000\000\000\000\183\000\000\003\250\001\177\000\000\000\184\003\230\000\000\001\179\000\185\000\000\000\000\000\000\001\177\000\000\000\183\000\255\003\231\001\180\000\000\000\184\000\000\000\000\000\000\000\185\001\225\004\143\000\000\000\000\000\000\006\158\000\000\000\000\000\000\000\000\001\178\001\181\005\225\003\214\003\237\000\000\001\182\000\000\000\194\003W\001\183\000\000\000\000\003/\001\179\001\184\001\177\0030\000\000\001\217\000\000\000\000\000\255\000\194\001\180\000\000\004f\004\199\000\000\002\015\000\244\000\000\000\000\000\000\003\214\003\237\000\000\000\000\001\225\005B\000\000\000\000\001\181\000\000\000\242\000\244\000\000\001\182\001\178\000\000\000\000\001\183\001\181\000\000\000\000\003\247\001\184\004f\004\189\000\000\001\217\003W\001\179\003\216\000\000\000\000\001\202\003\217\000\000\003\254\000\255\000\000\001\180\001\160\000\000\001\161\000\000\000\000\000\000\000\000\000\137\000\000\000\195\000\000\000\000\000\000\003\214\003\237\000\000\000\000\001\181\000\000\003W\000\000\003\216\001\182\000\000\000\195\003\217\001\183\003Y\000\000\000\000\000\000\001\184\000\000\000\246\000\000\001\217\004f\004g\000\000\000\196\000\000\000\000\003=\006c\003[\000\000\000\000\000\000\000\246\000\000\003\\\000\000\000\000\003>\000\196\000\252\000\000\000\000\000\183\000\000\000\000\001\162\000\000\000\255\000\000\001\163\000\228\000\000\000\000\000\000\000\252\003W\000\000\003\216\000\000\001]\000\000\003\217\000\255\000\000\000\000\000\228\001g\000\000\004m\000\198\003_\000\000\000\000\000\229\000\000\000\000\000\000\000\230\003\230\000\000\001`\000\000\004r\000\200\000\198\001\176\004s\003*\000\229\003\231\003.\000\000\000\230\000\000\000\000\000\000\000\000\000\000\000\200\004m\000\000\000\000\004u\000\000\000\000\000\000\003\214\003\237\000\000\003\230\000\000\000\000\003a\004r\000\000\000\000\006\003\004s\000\000\000\000\003\231\000\000\000\000\003\214\003\237\004w\003b\000\000\000\000\004f\004q\000\000\000\000\004u\000\000\000\000\000\000\000\000\000\000\006\004\005\223\005\224\000\000\000\000\003\246\000\183\004f\004\201\000\000\003/\000\000\004m\000\000\0030\003\214\003\237\004w\000\000\000\000\001\177\000\000\003\230\003\247\000\000\003W\004r\003\216\003\248\001h\004s\003\217\003\249\003\231\000\000\000\000\003\246\003\250\004f\005\149\000\000\000\000\003W\000\000\003\216\000\000\004u\003*\003\217\000\000\003.\000\000\004\161\000\000\003\247\001a\000\000\001b\006\003\003\248\000\000\000\000\000\000\003\249\001\160\000\255\001\170\000\000\003\250\004w\005\225\000\000\000\000\003W\000\000\003\216\003\214\003\237\000\000\003\217\000\137\006\004\005\223\005\224\000\000\000\000\000\000\000\000\003\246\000\000\000\000\000\181\000\000\000\000\001\181\000\182\000\000\000\000\000\000\004f\005\151\000\000\000\000\000\000\000\000\003W\003\247\000\000\001\204\003/\000\000\003\248\003=\0030\000\000\003\249\001\160\000\000\001\161\000\000\003\250\004m\000\183\003>\000\000\001\162\000\000\000\000\000\000\001\163\000\000\003\230\000\000\000\000\003W\004r\003\216\000\000\004m\004s\003\217\000\000\003\231\000\000\003\214\003\237\000\000\000\000\003\230\000\183\000\000\005\225\004r\000\000\000\184\004u\004s\000\000\000\185\003\231\001\239\000\000\000\000\000\000\000\000\001\176\000\000\004f\005\153\004m\000\000\000\000\004u\001\160\000\183\001\170\000\000\001\162\004w\003\230\000\000\001\163\000\000\004r\006a\000\000\000\000\004s\000\000\000\137\003\231\000\000\000\194\000\000\000\000\004w\003Y\003\246\003a\000\000\000\000\000\000\003W\004u\003\216\000\137\000\000\000\000\003\217\000\000\000\000\003=\003n\003^\003\246\003\247\000\000\001\176\000\000\003\\\003\248\000\000\003>\000\000\003\249\000\000\004w\000\000\000\000\003\250\004m\000\183\003\247\000\000\001\162\000\000\000\000\003\248\001\163\001\177\003\230\003\249\000\000\000\000\004r\003\246\003\250\000\000\004s\000\000\000\000\003\231\000\000\000\000\000\000\003_\000\000\000\000\006\003\000\000\000\000\000\000\000\000\003\247\004u\006\156\000\195\000\000\003\248\001\175\000\000\001\178\003\249\001]\001\176\000\137\001\160\003\250\001\170\000\000\001g\006\004\005\223\005\224\000\000\001\179\000\000\004w\001\160\000\000\001\170\001\177\000\137\000\255\001`\001\180\000\196\003a\004m\000\181\000\000\000\000\000\000\000\190\000\137\000\000\003\246\000\000\003\230\000\000\000\000\003b\004r\001\181\000\000\000\137\004s\000\000\001\182\003\231\000\000\000\000\001\183\000\000\003\247\000\000\000\000\001\184\000\000\003\248\000\000\001\217\004u\003\249\000\183\000\000\000\000\001\162\003\250\000\000\000\000\001\163\000\198\001]\000\000\000\000\000\183\000\000\001\177\001\162\001g\005\225\000\000\001\163\000\181\004w\000\232\000\183\000\190\000\000\000\000\000\000\000\184\000\000\001`\001\181\000\185\000\000\000\000\000\000\000\137\000\000\001\219\000\000\003\246\000\000\000\000\001\176\000\000\001\206\001\178\000\000\001h\000\000\001\223\001\160\000\000\001\161\000\000\001\176\000\000\000\181\003\247\000\000\001\179\000\190\000\000\003\248\000\000\000\000\000\194\003\249\000\255\000\000\001\180\005!\003\250\000\137\001a\000\181\001b\000\000\000\183\000\190\000\000\000\000\000\000\000\184\000\255\000\000\000\000\000\185\001\181\000\000\000\000\000\137\000\181\001\182\000\000\000\000\000\190\001\183\000\000\000\000\000\000\000\000\001\184\000\000\000\000\000\000\001\217\000\000\000\137\000\183\000\000\000\000\001\162\000\000\000\000\000\183\001\163\001\177\001h\000\000\000\184\000\194\000\000\000\000\000\185\000\000\000\000\000\000\000\000\001\177\000\000\006\161\000\000\000\183\000\000\000\000\000\000\000\000\000\184\000\000\000\195\005L\000\185\000\181\001a\000\000\001b\000\190\000\000\001\178\000\183\000\000\001\176\000\000\000\255\000\184\000\000\000\000\000\194\000\185\000\000\001\178\000\000\001\179\001\252\000\000\000\000\000\000\000\000\003*\000\196\000\255\003.\001\180\000\000\001\179\000\194\000\000\000\000\000\000\000\181\000\000\000\000\000\255\000\190\001\180\002\027\000\000\000\000\000\000\000\000\001\181\000\000\000\194\000\255\000\195\001\182\000\228\000\000\000\000\001\183\000\183\000\000\001\181\000\000\001\184\000\184\000\000\001\182\001\217\000\185\000\000\001\183\000\000\000\000\000\000\000\198\001\184\000\000\003\025\000\229\001\217\000\000\001\208\000\230\000\196\001\177\000\183\000\000\000\000\000\200\003/\000\195\000\000\001\160\0030\001\161\000\000\000\183\000\000\000\000\003\027\000\000\000\184\000\194\000\000\000\000\000\185\000\000\000\255\000\195\000\000\000\228\000\000\000\000\000\000\003\025\003*\000\000\000\000\003.\000\000\000\196\000\000\000\000\000\000\000\000\000\195\000\000\000\181\000\000\000\198\000\000\000\190\003\198\000\229\000\000\000\000\003,\000\230\000\196\000\194\000\000\000\000\000\000\000\200\000\255\000\000\000\000\000\228\000\000\003\198\000\183\000\000\000\000\001\162\003\200\000\196\003*\001\163\001\181\003.\003\022\003*\000\255\000\000\003.\000\228\000\198\000\000\000\000\000\000\000\229\004\028\001\212\003W\000\230\000\000\000\195\003/\000\000\000\255\000\200\0030\000\228\000\000\000\198\000\183\000\000\000\000\000\229\000\000\000\184\003=\000\230\001\176\000\185\000\000\000\000\000\000\000\200\000\000\000\227\000\198\003>\000\000\000\000\000\229\000\196\000\000\003X\000\230\000\000\000\000\000\000\000\195\003W\000\200\000\000\000\000\003/\003W\000\000\000\000\0030\003/\000\000\000\000\003*\0030\000\194\003.\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\246\000\000\000\000\000\000\000\181\000\000\000\196\000\000\000\190\000\000\000\000\000\000\003\129\000\000\000\000\000\198\000\000\003\133\003*\000\229\000\000\003.\000\000\000\230\000\000\000\000\000\000\003Y\000\000\000\200\001\177\000\000\000\000\000\228\000\000\000\181\000\000\000\000\000\000\000\190\003a\000\000\003=\000\000\003\127\000\000\000\000\000\183\000\000\000\000\003\\\003/\000\198\003>\003p\0030\000\229\003R\000\000\000\000\000\230\000\000\000\183\000\000\000\000\000\195\000\200\000\184\003Y\000\000\000\000\000\185\000\000\003Y\000\000\000\000\003W\000\000\000\000\003\130\003/\000\000\000\000\003=\0030\003\127\003_\000\000\003=\003T\003\127\003\\\000\000\000\183\003>\000\196\003\\\000\000\000\184\003>\000\000\000\000\000\185\000\181\001\181\000\194\000\000\000\190\000\000\000\000\000\181\003\136\000\000\000\000\000\190\000\000\000\000\000\000\001\214\000\000\003\130\000\000\000\228\003*\000\000\003\130\003.\003_\003a\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\194\000\000\000\000\000\000\000\000\000\198\003b\000\000\000\000\000\229\000\000\000\000\000\000\000\230\000\181\000\000\000\000\003=\000\190\000\200\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\000\003>\000\000\000\184\003Y\000\183\003a\000\185\003\161\000\000\000\184\003a\000\000\000\000\000\185\000\000\000\195\000\000\000\183\003=\003b\003\127\003/\000\000\000\000\003b\0030\003\\\000\181\000\000\003>\000\000\000\190\000\000\000\000\000\000\000\000\000\000\000\000\003\172\003T\000\194\000\000\000\000\000\000\000\183\000\196\000\195\000\194\000\000\000\184\000\000\000\000\000\000\000\185\000\000\003\130\000\000\000\000\000\000\001\160\000\000\001\161\003_\000\000\000\000\000\000\004\018\000\000\000\000\000\000\003T\000\000\000\228\000\000\000\181\003a\000\196\000\000\000\190\000\000\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\194\000\000\003r\000\184\000\198\000\181\000\000\000\185\000\229\000\190\000\000\000\000\000\230\000\000\000\000\000\000\000\228\003a\000\200\003\180\004G\000\000\000\000\000\000\000\000\000\000\003\187\000\195\000\000\000\000\000\183\003b\000\000\001\162\000\195\000\198\003=\001\163\000\000\000\229\000\000\000\194\000\181\000\230\000\000\000\183\000\190\003>\000\000\000\200\000\184\003T\000\000\000\000\000\185\000\000\000\000\000\196\003T\000\000\000\000\000\000\000\000\000\183\000\196\003\214\003\215\004I\000\184\000\000\000\000\000\000\000\185\001\176\000\195\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\228\004K\000\181\000\000\000\194\000\000\000\190\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\227\000\000\000\183\000\000\000\000\000\198\000\196\000\184\000\194\000\229\000\000\000\185\000\198\000\230\000\181\000\000\000\229\000\195\000\190\000\200\000\230\000\000\000\000\000\000\003a\000\183\000\200\003\216\000\000\000\000\000\000\003\217\000\000\000\228\000\000\000\000\000\000\000\000\003t\000\000\000\000\000\227\000\000\000\000\000\000\000\194\000\183\000\196\000\000\001\177\000\181\000\184\000\198\000\000\000\190\000\185\000\229\000\000\000\000\000\000\000\230\000\000\000\000\000\000\000\195\000\000\000\200\000\181\000\000\003\214\003\215\000\190\000\183\000\000\000\228\000\000\000\000\000\184\000\000\000\000\000\000\000\185\000\195\000\000\000\000\000\000\000\000\000\000\000\227\000\194\000\000\000\000\000\000\000\198\000\196\000\000\000\000\000\229\000\000\000\000\000\000\000\230\000\000\000\000\000\000\000\000\000\227\000\200\000\183\000\000\000\000\004\157\000\196\000\184\000\000\000\194\000\000\000\185\000\000\000\195\000\000\000\228\000\000\001\181\000\000\000\183\000\000\000\183\000\000\003\216\000\184\003\230\003*\003\217\000\185\003.\000\000\001\216\000\000\000\228\000\198\000\000\003\231\003T\000\229\000\000\000\000\000\000\000\230\000\196\000\000\000\194\000\000\000\000\000\200\004\166\000\000\000\000\000\198\000\000\000\181\000\000\000\229\000\195\000\190\000\000\000\230\000\000\000\194\000\000\000\000\000\000\000\200\000\181\000\000\000\000\000\228\000\190\000\000\000\000\000\000\004\174\000\000\000\000\000\000\000\000\000\000\003T\000\000\000\195\000\183\000\000\000\000\000\196\003/\000\198\000\000\000\000\0030\000\229\000\000\000\181\000\000\000\230\000\000\000\190\000\000\000\000\000\000\000\200\000\000\000\000\000\000\003T\000\000\003\247\000\000\005\025\000\183\000\196\000\228\000\000\000\181\000\184\000\000\000\195\000\190\000\185\000\000\004\000\000\000\000\183\000\000\003\230\005%\000\000\000\184\000\181\000\000\000\198\000\185\000\190\000\195\000\229\003\231\000\000\000\228\000\230\000\000\003T\000\000\000\000\000\000\000\200\000\000\000\196\000\000\000\000\000\000\000\183\000\000\000\194\000\000\000\000\000\184\000\198\003T\000\000\000\185\000\229\000\000\000\000\000\196\000\230\000\194\000\000\000\000\000\000\000\000\000\200\000\183\000\000\000\228\003*\000\181\000\184\003.\000\000\000\190\000\185\000\000\000\000\000\000\000\000\000\000\000\183\003=\000\000\000\000\000\228\000\184\000\198\000\194\000\000\000\185\000\229\000\000\003>\000\000\000\230\000\000\003\214\003\215\000\000\000\000\000\200\000\181\003\247\000\198\000\000\000\190\000\000\000\229\000\194\000\000\000\000\000\230\005*\000\000\000\000\006\204\004\002\000\200\000\000\000\000\000\195\003*\000\000\000\194\003.\0051\000\183\000\183\000\000\000\000\003/\000\000\000\184\000\195\0030\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003T\000\000\000\000\003\214\003\215\000\000\000\196\000\000\000\000\005:\000\183\000\000\003\216\003T\000\000\000\183\003\217\000\195\000\181\000\196\000\184\000\000\000\190\003a\000\185\000\000\000\194\000\000\000\000\000\000\005P\000\000\0070\000\228\000\000\000\183\000\000\003v\000\195\003/\000\000\003T\000\000\0030\000\000\005U\000\228\000\196\000\000\000\000\000\181\000\000\000\198\000\195\000\190\000\000\000\229\000\000\000\194\000\000\000\230\000\183\003T\003\216\000\000\000\198\000\200\003\217\000\196\000\229\000\000\000\000\000\000\000\230\000\228\000\000\000\183\003T\000\000\000\200\000\000\000\184\000\181\000\196\000\000\000\185\000\190\000\000\003=\000\000\000\000\000\000\005\\\000\198\000\000\000\228\000\000\000\229\000\000\003>\000\195\000\230\000\000\000\000\000\000\000\000\000\000\000\200\000\183\000\000\000\228\003\214\003\215\000\184\000\198\000\000\003\230\000\185\000\229\000\194\000\000\000\000\000\230\000\000\003T\000\000\000\000\003\231\000\200\000\198\000\196\000\000\000\195\000\229\000\000\000\000\000\000\000\230\000\000\000\000\000\183\003=\000\000\000\200\000\181\000\184\000\181\000\000\000\190\000\185\000\190\000\194\003>\000\000\000\000\000\000\006\205\000\228\000\000\000\000\000\000\000\181\000\196\000\000\000\000\000\190\000\000\003\230\000\000\000\183\000\000\003\216\000\000\000\000\003a\003\217\000\198\000\000\003\231\000\000\000\229\000\000\000\000\000\194\000\230\000\000\000\000\000\000\003x\000\228\000\200\000\000\000\000\000\195\000\000\000\000\000\000\000\000\000\000\000\000\003\247\000\000\000\183\000\000\000\183\000\000\000\000\000\184\000\198\000\184\000\000\000\185\000\229\000\185\004\004\000\000\000\230\006\205\000\000\000\183\000\000\000\000\000\200\000\196\000\184\000\195\000\000\003a\000\185\000\000\000\000\000\181\000\000\000\181\000\000\000\190\000\000\000\190\000\000\000\000\000\000\003z\000\000\000\000\000\000\000\194\000\000\000\194\000\000\001\229\000\228\003\247\000\000\000\000\000\000\000\196\000\000\000\195\000\000\000\000\000\000\000\000\000\194\000\000\000\000\004\006\000\000\000\000\000\181\000\198\000\000\000\000\000\190\000\229\000\000\003\230\000\000\000\230\000\000\000\000\000\000\001\243\000\228\000\200\000\000\000\000\003\231\000\196\000\000\000\183\000\000\000\183\000\000\000\000\000\184\000\000\000\184\000\000\000\185\000\000\000\185\000\198\000\000\000\000\000\000\000\229\000\000\000\000\000\000\000\230\000\000\000\000\000\181\000\000\000\228\000\200\000\190\000\000\000\000\000\195\000\000\000\195\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\000\000\184\000\194\000\198\000\194\000\185\000\195\000\229\000\000\000\000\000\000\000\230\000\000\002\t\000\000\003\003\000\000\000\200\000\000\000\196\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\247\003\007\000\181\000\000\000\000\000\000\000\190\000\196\000\000\000\000\000\194\000\183\000\000\000\000\004\b\000\000\000\184\000\228\000\181\000\228\000\185\000\000\000\190\000\000\003*\000\000\000\000\003.\000\000\000\000\000\000\000\181\000\000\000\000\000\228\000\190\000\198\000\000\000\198\000\000\000\229\000\000\000\229\000\000\000\230\000\000\000\230\000\195\000\000\000\195\000\200\000\000\000\200\000\198\000\194\000\000\000\000\000\229\000\000\000\000\000\183\000\230\000\000\000\000\000\000\000\184\000\000\000\200\000\000\000\185\000\000\0037\000\000\003F\000\000\000\000\000\183\000\196\000\000\000\196\000\000\000\184\000\183\000\000\000\195\000\185\003/\000\000\000\000\000\183\0030\000\000\000\000\000\000\000\184\000\000\000\181\000\000\000\185\000\000\000\190\000\000\000\000\000\194\000\228\000\000\000\228\000\000\003H\000\181\000\000\000\000\000\181\000\190\000\196\000\000\000\190\000\000\000\000\000\194\000\000\000\000\000\000\000\198\000\000\000\198\000\000\000\229\000\195\000\229\000\000\000\230\000\194\000\230\000\000\000\000\000\000\000\200\000\000\000\200\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\224\000\000\000\183\000\000\000\000\000\181\000\196\000\184\000\198\000\190\000\000\000\185\000\229\000\000\000\000\000\183\000\230\000\000\000\183\000\000\000\184\000\000\000\200\000\184\000\185\000\195\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\003=\000\000\000\000\000\000\000\000\000\195\000\000\000\000\000\000\000\194\000\000\003>\000\000\004!\000\000\000\000\000\198\000\000\000\195\000\196\000\229\000\000\000\194\000\000\000\230\000\194\000\000\000\183\000\000\004&\000\200\000\000\000\184\000\000\000\181\000\196\000\185\000\000\000\190\000\000\000\000\000\000\004*\000\000\000\000\000\000\000\228\000\181\000\196\000\000\000\000\000\190\000\000\000\000\000\181\000\000\000\000\000\000\000\190\000\000\000\000\000\000\000\228\000\000\000\000\000\198\000\000\000\000\000\000\000\229\000\194\000\000\000\000\000\230\000\000\000\228\000\181\000\000\000\000\000\200\000\190\000\198\000\000\000\195\000\000\000\229\003a\000\000\000\000\000\230\000\000\000\000\000\183\000\000\000\198\000\200\000\195\000\184\000\229\000\195\003|\000\185\000\230\000\000\000\000\000\183\000\000\004?\000\200\000\000\000\184\000\000\000\183\000\196\000\185\000\000\000\000\000\184\000\000\000\000\004j\000\185\000\000\005\012\000\000\000\000\000\196\000\000\000\000\000\196\000\000\000\000\003\214\003\215\000\183\000\194\000\000\000\000\000\000\000\184\000\228\000\181\000\000\000\185\000\195\000\190\000\000\000\181\000\194\000\000\000\000\000\182\000\000\000\228\000\181\000\194\000\228\000\000\000\190\000\198\000\000\003*\000\000\000\229\003.\000\000\000\000\000\230\005s\000\000\000\000\000\000\000\198\000\200\000\196\000\198\000\229\000\194\000\000\000\229\000\230\000\000\000\000\000\230\000\000\000\000\000\200\000\000\000\000\000\200\000\183\000\000\003\216\000\000\000\000\000\000\003\217\000\000\000\000\000\183\000\000\000\228\000\181\000\000\000\184\000\183\000\182\000\000\000\185\000\195\000\184\000\000\000\183\000\000\000\185\000\000\000\000\000\184\000\000\000\183\000\198\000\185\000\195\003/\000\229\000\000\000\000\0030\000\230\000\195\000\000\000\000\000\000\005\135\000\200\000\000\000\000\000\000\000\000\000\196\000\000\000\000\000\194\000\000\000\000\000\000\005\137\000\000\000\194\000\000\000\000\000\195\000\196\005\139\000\000\000\194\000\000\003\214\003\215\000\196\000\183\000\000\000\000\000\000\000\000\000\184\000\228\000\000\000\000\000\185\003\214\003\215\000\000\000\000\000\000\005\145\000\000\000\000\000\000\000\228\000\000\000\196\000\000\000\000\000\000\000\198\000\228\003\214\003\215\000\229\003\214\003\215\000\000\000\230\000\000\000\000\003\230\000\000\000\198\000\200\003\214\003\215\000\229\000\194\000\000\000\198\000\230\003\231\000\228\000\229\003\214\003\215\000\200\000\230\000\000\000\183\000\195\003\216\000\000\000\200\000\000\003\217\000\195\000\000\000\000\003=\000\000\000\198\000\183\000\195\003\216\000\229\000\000\000\000\003\217\000\230\003>\000\000\000\000\000\000\005\159\000\200\000\000\000\000\000\000\000\183\000\196\003\216\000\183\000\000\003\216\003\217\000\196\005\173\003\217\000\000\000\000\000\000\000\183\000\196\003\216\000\000\000\000\000\000\003\217\000\000\000\000\000\000\000\183\000\000\003\216\000\000\000\000\000\228\003\217\000\000\000\000\000\195\000\000\000\000\003\247\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\198\000\000\004\n\000\000\000\229\000\000\000\198\000\000\000\230\000\000\000\000\000\000\000\000\000\198\000\200\000\196\000\000\000\229\000\000\003a\000\234\000\230\000\000\000\000\000\000\000\000\000\000\000\200\000\000\003\230\000\000\000\000\000\000\003~\000\000\000\000\000\000\000\000\000\000\000\000\003\231\000\000\003\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\231\000\000\000\000\000\000\000\000\000\000\003\230\000\000\000\198\003\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\231\000\000\003\230\003\231\000\000\000\236\000\000\000\000\000\000\000\000\000\000\000\000\003\230\003\231\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\231\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\247\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\247\004\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\004\014\000\000\000\000\003\247\000\000\000\000\003\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\247\004\016\000\000\000\000\004\022\000\000\000\000\000\000\000\000\000\000\003\247\000\000\000\000\000\000\004\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\026")) + ((16, "\000\170\0001\000\000\000\000\000\000\0005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\137\000\000\001I\bV\000\000\001=\0015\000\000\000\000\000\000\001/\000\000\000\221\000\149\000\000\000\000\000\133\000\000\0007\000\000\000\000\000\000\000j\000\000\000\234\000\000\000\000\000\000\001\242\000\000\002\178\000\000\000\000\003:\000\000\003z\003\198\000\000\000\000\004\152\000\000\005\028\000\000\000\000\000\000\005\150\000\000\005\160\000\000\005\186\000\000\0060\000\000\006\148\006\246\000\000\000\000\007\004\000\000\007z\000\000\000{\000/\006d\000\000\000\000\000\000\002\218\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\b\024\000\000\000\000\001X\nt\000\000\000\000\n\190\000\000\000\000\000\000\000\000\007\130\000\000\007\168\002\154\000\000\007\238\000\000\000\000\b\130\000\000\000\000\b\132\000\000\t\"\000\000\000\000\000\000\t2\000\000\000\027\tF\000V\000\000\000\000\000\000\000\000\004\236\000+\000\152\000\000\000\000\000\000\tb\000\000\0056\000\000\004V\000f\b\206\000\000\000\000\019D\023*\000\000\011\204\000\000\024\248\000\027\002|\000\027\014\148\014&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\b\002|\000\000\000\000\026\022\"D$N\000\000)\b\000\000\000\030*\140\000\000\000\000\000\000\000\000\000\146\000\000\002\004\018\144\0042\000\000\000\0000\192\000\000\001\n\000\000\017H\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0034\000\000\000\000\n\210\000\000\r\204\000\000\017\b\000\000\027\242\000\000\031\218\000\000'\222\000\000(X\000\0003|\000\0008J\000\0008r\000\000\026H\000\0000\248\000\000\000\000\000\000\000\000\000\0008\128\000\0008\148\000\0008\162\000\0009&\000\00092\000\0009@\000\0009F\000\0009Z\000\0009h\000\0009\128\000\0009\250\000\000:<\000\000:J\000\000:d\000\000:~\000\000:\138\000\000\025\014\000\000\000\000\025\\\000\000\000\000\000\000\000\000\001d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\1711\024\000\000\000H\000\000\000\000\001N\b~\000\000\001H\tj\000\000\000\000\t\192\000\000\n0\nD\000\000\000\000\n\160\000\000\n\188\000\000\000\000\000\000\n\196\000\000\n\204\000\000\n\206\000\000\011\018\000\000\000\000\011H\000\000\011|\011\138\000\000\000\000\011\152\000\000\011\156\000\000\000\000\000\000\011\162\000\000\011\204\000\000\011\208\000\000\011\212\000\000\011\236\012\002\000\000\000\000\012\020\000\000\012\024\000\000\001\252\002\208\000\000\012\030\000\000\012$\005\024\000\000\012*\000\000\000\000\012D\000\000\012F\000\000\012J\000\000\000\000\000\000\012R\000\000\012V\004\240\000\000\012f\000\000\006\214\n\030\000\000\005t\000\000\006>\000\000\000\000\007b\016\184\000\000\000\000\000\000\000\140\018\202\000\000\022\132\000\000\000\000\000\000\002L\000\000\002\236\000\000\nd\000\000\000\000\000\000\000\000\000\000\000\000\n\240\000\000\000\000\000\000\000\000\000\000\023\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\003\172\006:\000\000\012t\000\000\012x\b\026\000\000\012z\000\000\000\000\006\146\000\000\000\000\000\000\000\000\001\214\000\000\000\000'\224\000\000\000\000\000\000\003\128\000\000\000\000\000\000\000\000\000\000\000\000*\160\000\000\000\000+P\000\000\000\000+\154\000\000\b4\000\000\000\000\000\000\004x\000\000\031\188%L\000\000\000\000%\212&x\000\0007\024\000\0007\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\164\000\000$\156\000\0001b\000\000;(\000\000;B\000\000;F\000\000;z\000\000;\200\000\000;\228\000\000<\006\000\000<\n\000\000<.\000\000\022\000\000>\026\000\000>6\000\000>8\000\000>\156\000\000>\160\000\000>\186\000\000>\210\000\000\000\000*V\000\000\000\000\018J*\248\000\000\000\000+4\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003|\000\000\000\000\000\000\000\000\006H\000\000\007\170\000\000\000\000\012`\000\000\000\000\000\000+\014\000\000\000\000\000\000\000\000\000\000\021\020\000\000\000\000\000\000\000\000+T\000\000\000\000\000\000\000\000\002x\005\220\000\000+\242\000\000\000\000\000\000\000\000\bx\000\000,&\000\000\000\000\000\000\000\000\001C\000\000\007$\000\0004\022)\166\000\000\000\000\000\0003V\000\000\000\000\000\000\b\\\000\0003\158\000\000\000\000\000\0003\182\000\000\000\000\000x\000\000\024\180\000!*2\000\000\000\000\000\000\004h\005\198\000\000\000\000\000\000\000\000\000\000\000\0004`\000\000\000\0005\186\000\000\000\0006\166\000\000\011\146\000\000\000\000\000\000\t\134\000\000!|\000\000\000\0004\000\000\000\000\000\000\000\t\146\000\000\000\000\000\000\000\000\000\000\000\0007\192\000\0008\024\000\000\000\000\000\000\004\228\000\000\000\000\000\000\000\000\000\000\000\000?\020\000\000,\184\000\0004\154\000\000?n\000\000?~\000\000?\130\000\000?\192\000\000?\232\000\000@ \000\000@P\000\000@r\000\000@x\000\000@~\000\000@\204\000\000A$\000\000A2\000\000\000\000\b\206\000\000\n*\000\000\rr\001\200\007\172\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\248\000\000\"\232\b\244\t\228\000\000\000\000\000\000,\188\000\000,\208\000\000-\n\000\000#\134#\240\007\162\0052\000\000\001\194\007h\000\000\000\000\000\000\b\254\000\000\000\000\n\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\0004\252\000\000\000\000\000\000\000\000!\148\000\000$R\000\000\000\000\000\000\000\000\000\000\000\000\0146\000\000\000\000\011\002\000\000\000\000\000\000\025@\003$\000\000\025\204\000\000\000\000\bx\000\000\005\136\000\000\000\000\014t\000\000\0262\000\000\000\000\"\030\000\000\000\000\000\000\001N\000\000\000\000\t\198\000\000\000\000\023p\000\000\000\000\000\000-\"\000\000\000\000\000\000\027\162\000\000\000\000\000\000\000\000-\220\000\000\000\000\000\000\000\000\003,\012\026\000\000.\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\005\228\000\000\015\230\000\000\001N\000\000\000\000\005\206&\224\000\000\005\224\000\000\000\000\000\000\000\000\004\228\000\000$\194\000\000\026\216\000\r\027>\000\000\003Z\000\000\016r\000\000\016\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\004\028:\002\\\028\194\000\000\000\000\000\000\003\190\000\000\017\194\000\000\t\\\000\000\000\000\001N\0000\028\252\000\000\000\156\000\000\018\\\030 \000\000\000\000\019 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\n.\007\230\000\000\np\000\000\000\000\000\000\000\000\007@\000\000\019\172\000\000\000\000\000\000\011\2385Z\000\000\000\000\000\000 `\000\000\000\000\000\000\000\000\000\000\011@\011l\000\000\000\000.n\000\000\000\000\003n\000\000\011\194\000\000\000\000\027\254\000\000\000\000\000\000.\150\000\000\000\000\000\000\000\000.\212\000\000\000\000\004\004\011\252\000\000\000\000.\252\000\000\000\000\011b \128\000\000\012>\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\002\128\000\000\000\000\012\240\000\000\000\000\029(\000\000\000\000\000\000/B\000\000\000\000\000\000\000\000/\182\000\000\000\000\005$\012\248\000\000\000\0000\020\000\000\000\000\011\188\000\000\000\000\000\000\000\000\004\228\002\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001,\000\000\0208\000\000\000\000\000\0005\154\000\000\b\188\000\000\000\000\000\000\002\000\000\000\004\186\000\000\000\000\004~\020\252\000\000\021\136\000\000\000\000\000\000\006R\000\0005\232\006\2185\234\000\0006<\000\000\000\000\000\000\0070\000\0006\190\b\182\000\000\000\000%(\tr%\\\000\000%\180\000\000\000\000\000\000\t\164\000\0006\216\t\214\000\000\000\000\bD\nP\bH\000\000\018\200\000\000\000\000\000\000\n`\000\0006\222\011\128\000\000\000\000\000\000\001b\000\000\000\000\000\000\000z\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\000I\000\000\000\000\005\016\000\000\000\000\015\002\000\000\000\000\000\000\000\000\007\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\006\000\000\000\000\014\232\000\000\007|\000\000\000\000\000\172\000\000\003r\014\144\0046\000\000\000\000\t\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\250\004\250\000\000\000\000\004\222\000\000\000\000\000\000\t\012\000\000\000\000\017\152\020r\000\000\000\000\000\000\000\000\020\202\0210\002\162\000\000\000\000\000\000\021\244\000\000\000\000\000\000\000\000\000\000\000\000\006\176\000\000\000\000\001,\000\000\000\000\014`\000\000\000\000\000&\000\000\000\000\005\n\000\000\004*\000\000\000\000\000\000\000\000\000\139\022\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\022\030\000\000\000\000\000\000\000\000\022(\000\000\000\000\003\204\000\000\015(\000\000\000\000\000\000\000\011\000\000\007\230\000\000\000\000\000\000\tN\000\000\000\000\0232\000\000\000\000\0009\014l\000\000\014r\000\000\023v\014\140\000\000\023\232\000\000\000\000\000\000\000\000\014t\000\000\014\232\000\000\000\000\000\000\n\014\000\000\0002\014\176\004\172\000\000\000\000\000\000\b\180\000\194\000\000\000\000\000\000\000\000\002\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0006\000\000\000\000\014\016\000\000\007J\015>\006\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012D\000\000\000\000\015F\025\200\000\000\000\000\000\000\000\000\027\158\000\000\000\000\016L\000\000\002\"\rX\000\000\000\000\000\000\016\232\000\000\000\000\000\000\000\000\000\000\001\236\019r\000\000\000\000\020J\000\000\000\000\000\000\000\000\000\018\000\000\000\000\006N\000\000\000\000\000\000\001@\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031&\000\000\000\000\000\000\004\252\000\000\000\000\000\000\000\000\000\000\000\020\003P\n\174\014\012\000\000\006H\t\014\t:\n\000\000\000\000\000\000\000\000\000\000\000\000\000\011\206\022\020\000\000\030Z\b\132\000\000\000\000\n\210\000\000\022\216\000\000\007\004\000\000\000\000\012\n\023d\000\000\030\226\000\000\012\164\031\028\000\000\000\000\000\000\000)\006H\000\000\000\000\000\000\000\000\004*\000\000\011\212\005\146\000\000\000\000\015D\t\224\000\000\016\138\000\000\000\000\002L\000\000\002\236\000\000\000\000\018J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tZ\000\000\000\000\011&\000\000\023\240\000\000\r\232\014\248\000\000\000\000\000\000\000\000\000\000\007B\000\000\000\000\000\000\000\000\000\0000\164\000\000\000E\000\000\000\000\000\000\000\000\000\000\000\214\000\000\n0\007r\011,\000\000\002\180\011\180\000\000\n\230\000\000\003<\000\000\004(\000\000\004\212\000\000\r\232\000\000\000\000\000\000\000\000\000\000\005\140\000\000\n\236\000\000\005\192\000\000\r\232\015l\000\000\000]\000\000\015V\006\230\000\000\nT\000\000\n\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011F\000\000\011\154\000\000\000\000\000\000\0142\000\000\000\000\000\000\000\000\000\000\015f\014<\000\000\000\000\014t\000\000\000\000\014R\n6\015\170\000\000\015\172\000\000\000\000\002P\006\018\000\000\014\132\000\000\000\000\014\190\000\000\000\000\000\000\000\000\000\000\000\000\015\152\014t\000\000\000\000\000\000\014\166\014~\011\162\006V\014\176\014\238\000\000\000\000\014\148\012\022\007\006\014\204\015\002\000\000\000\000\012\218\015\214\000\000\015\216\000\000\015\252\000\000\000\000\015\236\000\000\000\000\015\244\000\000\000\000\000\000\000\000\016\026\000\000\016@\000\000\000\000\000\000\016B\000\000\000\000\000\000\016N\000\000\000\000\000\000"), (16, "\004\022\002\182\004)\000\193\006^\006\007\006\b\005\158\000\197\005\251\005\216\002\191\000\025\000\137\000U\007\186\000\024\000\137\007\000\000\028\000\137\006\145\0037\004\242\004\218\000\007\004\022\000\004\004)\007\187\000\137\000\193\005\249\004\244\007\"\0037\000\194\005\252\006\007\006\b\007#\006u\001\"\000\137\006\146\006\149\006\007\006\b\007$\000\005\004\171\000\005\000U\007Z\000U\0038\007[\006\166\006\145\004\172\000 \004\024\000\186\005\019\006s\004\025\006Q\000\187\006v\006\007\006\b\000\195\003\225\001$\006\t\006\172\000\137\000\139\000\140\002U\000\144\006\146\006\149\006\007\006\b\004\172\006\170\004\024\000l\006R\000\186\004\025\006U\006\007\006\b\000\187\000\031\000\018\006\173\000\195\006\176\006\007\006\b\000\137\000\"\000\201\005\248\006\t\005\160\000\137\000\139\000\140\000\141\000\144\007_\006\t\005\144\005\019\000\146\000\017\005!\006\167\004.\004\022\001\029\004)\0023\001\029\000p\005\249\006\024\006\168\006\169\000\201\005\252\006\007\006\b\007`\006\t\007&\000\137\006\238\006\239\000$\005\029\007$\007a\004\171\000U\000\193\006\158\000\146\006\t\006\022\000\199\004\149\007\195\007'\006\243\006\025\006\007\006\b\006\t\001\"\003\232\004&\000V\006\246\002M\004\154\006\t\001\155\006\159\004\155\004\173\006\171\004'\005#\005\000\000\202\007\001\004\149\004\172\000\137\004\024\000a\000m\004\173\004\025\004\238\004\252\004&\001\137\007t\001#\004\154\000d\001\166\005\022\004\155\004\173\007(\004'\001\031\006\t\006K\005\149\000\202\000\186\000\203\007)\006\246\004\159\000\187\004\219\007F\004\250\000\195\007%\004\181\002H\0039\005\017\000(\002\202\001%\003\217\005\162\006\189\006\t\004\210\0042\004\181\001(\000\b\004\186\000\235\000\203\004\159\001\177\004\176\007H\003\205\004\210\004\022\004\181\004)\000U\007J\0043\000\r\000\201\007u\000U\0044\000\205\004\210\0042\0045\000\236\001w\000\137\000\190\000\237\0046\006\226\0037\004\242\004\218\006\207\000\207\000\016\000\017\006c\001\204\0043\006\207\001\216\004\149\002\191\0044\001z\006\187\002\030\0045\006\160\002\191\000*\004&\001\165\0046\000\137\004\154\001w\006\172\001\182\004\155\004\173\007v\004'\000U\006\233\006\234\004\172\006Q\004\024\001\138\007)\001\139\004\025\001\158\003Z\007x\006\n\001z\003[\001(\006\173\006\r\006\176\006\007\006\b\001\165\005\145\006\162\000\202\001\184\006R\002I\000U\006U\006\007\006\b\000\186\000\193\004\159\001\206\004\176\007z\000\197\001\207\005\006\004\181\002J\005\147\007|\006\159\005\246\005\247\001\166\006\014\000\137\006\215\004\210\0042\000\203\000\147\006\163\002^\004\199\006\217\000V\004\022\001\182\004)\005\001\004.\001\024\001\029\000U\003\128\002\015\0043\002`\003\\\002/\001\222\0044\003]\000\137\000h\0045\000\204\000\137\007$\007f\004\218\0046\006I\006\t\006\220\003\218\002a\000\186\001\183\003\205\001(\006\225\000\187\004\149\006\t\000\205\000\195\0022\004\204\003\179\001\017\002`\000U\004&\006>\006\007\006\b\004\154\004|\000k\000\207\004\155\004\173\000.\004'\004\172\005\003\004\024\005\161\0038\000\193\004\025\004\208\004\168\004\022\000\194\004)\004\238\005\147\000U\000\201\007q\006\015\001\166\000U\004\169\0020\001b\000l\007\172\004\128\000\137\001\182\000U\001\223\002I\007$\007f\004\218\006\015\004\159\000\137\004\219\006\160\004\250\003\130\007\000\004\181\001\204\0039\005\017\001\205\004\244\004\131\0020\000l\002\016\002\028\004\210\0042\003j\003\183\003\168\001\184\006\t\004\211\001\224\001\153\003\133\000\186\000U\003k\006?\004\172\000\187\004\024\002\202\0043\000\195\004\025\001\225\005\b\0044\002\202\003\188\006\223\0045\000\137\001(\007k\001\226\003\182\0046\000\147\000\202\006i\004\199\003\171\003\205\0000\003\137\004\149\005\006\007\179\003\136\000U\000V\000\186\001\227\005\160\001\206\004&\000\201\001\228\001\207\004\154\006r\001\229\002#\004\155\004\173\007l\004'\001\230\000\203\000a\000r\002\007\006#\000U\007)\001\166\004\022\000V\004)\004\157\000d\000\193\000V\006s\0025\005z\000\194\006v\006\007\006\b\003\138\001\148\001(\000\137\001\222\000\235\000a\001_\007$\007f\004\218\000^\004\159\003\136\004\219\003\139\007n\000d\004\022\004\181\004\023\0003\007p\004\149\000\205\006$\003\192\005U\000\236\006\028\004\210\0042\000\237\004&\003\217\006_\006`\004\154\000\147\000\207\000\202\004\155\004\173\007l\004'\004\172\000\186\004\024\002\174\0043\000\186\004\025\007)\0007\0044\000\187\003Z\004\157\0045\000\195\003[\007m\007\011\004\247\0046\006a\000\147\006\t\000U\003\206\000\203\002\184\004\022\000\147\004)\006b\000\137\000\186\001\223\004\024\004\159\0037\004\219\004\025\007n\000U\003:\004\181\006\028\000\137\007p\0006\002\186\000\201\007$\007f\004\218\001\171\004\210\0042\007\002\000\137\002S\000\137\000\139\000\140\001t\000\144\001(\003Z\003\190\006.\005\011\003[\005O\000\186\000\209\0043\003\225\003\\\006\029\003\189\0044\003]\002\187\006+\0045\000\210\006\003\001\166\006T\004\172\0046\004\024\006,\006\007\006\b\004\025\000\137\000\139\000\145\004\149\000\144\000\146\006\004\000\146\001%\007o\006,\006\007\006\b\004&\002\027\006R\001(\004\154\006U\006\007\006\b\004\155\004\173\007l\004'\007+\004\022\000U\004)\000\202\003\128\000U\007)\005\128\003\\\004\175\005\170\004\157\003]\006x\000U\006\029\000\146\000\137\000\147\004&\000\137\004\169\007$\007f\004\218\005\172\004\022\001\"\004)\004\022\004'\004)\0009\000\203\004\159\001\209\004\219\000l\007n\003\179\006\t\004\181\006\248\000\137\007p\006\249\005\163\000U\007$\007f\004\218\004\132\004\210\0042\006\t\004\224\000U\003j\0041\004\172\006\253\004\024\006\t\004\149\000U\004\025\002K\004\169\003k\004\173\003Z\0043\006 \004&\003[\007w\0044\004\154\0039\001\026\0045\004\155\004\173\007l\004'\004\172\0046\004\024\000\186\0072\004\024\004\025\007)\000U\004\025\003\130\007>\004\157\000;\000U\000l\007{\007\171\004W\000\137\000\139\000\140\001\168\000\144\005\162\003j\003\180\003\168\006\246\004\181\000V\007\005\004\186\003\133\002\024\004\159\003k\004\219\001w\007n\004\210\000\005\004\181\004|\003\128\007p\006\152\0039\003\\\000a\001d\000U\003]\004\210\0042\004\233\003\182\001z\003m\001z\000d\000\146\003\171\000U\004\233\001\165\004.\001\165\003\205\003\136\004\149\006\229\0043\001w\000?\004}\000\147\0044\000\137\000A\004&\0045\000U\006/\004\154\002\157\004\235\0046\004\155\004\173\007l\004'\000C\000V\001z\004\234\004\149\000\137\000\139\007)\006H\001x\001\165\003Z\004\157\000U\004&\003[\000\004\004&\004\154\003\138\000a\002\154\004\155\004\173\007l\004'\000`\004\022\004'\004)\002\196\000d\001\163\007)\003\139\004\159\000\147\004\219\004\157\007n\000\005\0040\004\181\003\130\000\137\007p\0075\000\146\0076\0037\004\242\004\218\005,\004\210\0042\007\149\001(\007\191\003j\000E\003\132\004\159\006\182\004\219\004\169\007n\003\133\005\173\004\181\003k\003\128\007p\0043\000\\\003\\\000\137\006\231\0044\003]\004\210\0042\0045\005\172\0042\003\219\000\147\004\172\0046\004\024\007c\000\147\000]\004\025\003\206\006\183\004\022\006\184\004)\0043\006\021\007\t\0043\003\136\0044\000V\003\179\0044\0045\003\223\000I\0045\001w\000\137\0046\007R\007S\0046\0037\004\242\004\218\000U\005\014\006\022\000a\004\022\006\185\004)\000\147\006\025\006\007\006\b\007\179\001z\001}\000d\006\186\005\180\000U\003\211\006\006\001\165\000\137\007r\001\134\003\138\007\198\0037\004\242\004\218\000U\001\144\005\182\005\016\000U\004\172\006\004\004\024\004{\000H\003\139\004\025\003\130\003\215\001\204\001\137\000K\001\205\000\137\000\139\000\140\001\173\000\144\006_\006`\007W\001\178\003j\007\024\003\168\005\183\004Y\004Z\004\149\004\172\003\133\004\024\004\133\003k\000\137\004\025\000\137\006I\004&\0037\005\182\0037\004\154\000\137\006\t\001(\004\155\004\173\006w\004'\005\153\005\000\007\152\003\182\000U\000\146\001z\001\180\006b\003\171\007\017\006L\004\157\000\137\001\165\007\179\003\136\002\184\000\186\006\179\000M\001\206\004\169\006\246\000o\001\207\003\225\004\022\003\225\004)\004|\0039\000U\004Y\004Z\004\159\000\193\004\219\002\188\004\250\000c\000\197\004\181\000u\000\137\004\186\004\149\003\004\001\145\0037\004\242\004\218\000U\004\210\0042\004\022\004&\004)\003\138\004|\004\154\001\222\004}\000\147\004\155\004\173\000U\004'\004\254\005\000\002\187\001\160\0043\003\139\001\138\004\149\001\139\0044\000t\004\230\004\157\0045\006\159\004\134\001(\004&\004\172\0046\004\024\004\154\007\005\004}\004\025\004\155\004\173\000\186\004'\005%\005\000\004\135\000\187\006+\006%\004\159\000\195\004\219\004\022\004\250\004)\004\157\004\181\003\195\007\005\004\186\003\128\005\150\004\024\002F\000V\000U\004\025\004\210\0042\000\137\006,\006\007\006\b\000\137\0037\004\242\004\218\006Q\004\159\000U\004\219\001\223\004\250\000a\000\201\004\181\0043\004\173\004\186\004\173\000\137\0044\003\031\001w\000d\0045\004\210\0042\000w\000z\006R\0046\004\127\006U\006\007\006\b\000\137\000\139\000\140\002O\000\144\004\172\000\147\004\024\001z\0043\005\186\004\025\004\\\004\236\0044\000U\001\165\004.\0045\006\031\003_\005\203\004\149\005\205\0046\005\182\004\181\000U\004\181\004\186\000\137\004\186\004&\000U\006\t\006\165\004\154\004\210\002Y\004\210\004\155\004\173\000\146\004'\005\157\005\000\001(\004Y\004Z\002\026\004\149\007\005\000\202\004\022\003\226\004)\004\157\005\014\001'\000U\004&\000\137\000\139\001y\004\154\000\144\001(\006\t\004\155\006\148\000\137\004'\000|\004|\000U\007$\000\238\004\171\003\230\004\159\000\128\004\219\000\203\004\250\004\238\002\189\004\181\003h\005\015\004\186\002X\007\b\006\146\006\149\006\007\006\b\000\137\004\210\0042\0072\000U\004\149\005\194\000\146\000\143\004}\0079\004\159\001*\000\235\006\029\004&\004\172\007\007\004\024\004\154\0043\005\196\004\025\004\155\004\173\0044\004'\007D\005\000\0045\0042\005\197\000\205\003\127\007s\0046\000\236\000\137\000\193\004\157\000\237\004\130\007\000\000\194\007\141\004\027\005\196\000\207\0043\007\020\000U\004$\0062\0044\004\022\001-\004)\0045\005\200\004Y\004Z\004\169\004\159\0046\004\219\005&\004\250\006\t\001\134\004\181\000\137\007c\004\186\005\182\007c\001\144\002[\000\147\004\142\005\164\004\210\0042\006{\004\022\001(\004)\000g\000U\001w\001\137\004[\007G\004k\002]\007\169\007\141\005(\000\186\005&\0043\000\137\001(\000\187\004\169\0044\007$\000\195\004\171\0045\001z\000\137\0011\004\149\003\128\0046\004\024\007\006\001\165\004|\004\025\005\208\0010\004&\000j\007i\004\190\004\154\007y\005\211\005'\004\155\004\173\007e\004'\004\022\005\210\004\023\0075\001\134\0076\000\201\007)\004\172\005\210\004\024\001\144\007h\001(\004\025\001w\004}\004\022\005=\004)\000\137\000\139\000\140\002\178\000\144\001\137\007d\004Y\004Z\001\204\000V\007\141\001\216\0013\000\137\004\159\001z\004\176\007j\007$\000U\004\171\004\181\001\145\001\165\007p\004\022\0015\004)\000a\000\137\0019\007\148\004\210\0042\001;\001=\004Y\004Z\000\186\000d\004\024\000\146\000\137\004\163\004\025\001\146\000V\005<\001\138\007\n\001\139\0043\007\141\007\180\004\149\004\172\0044\004\024\001(\000\202\0045\004\025\000U\005\134\004&\000a\0046\000\186\004\154\001?\001\206\005\141\004\155\007g\001\207\004'\000d\000\137\000\139\000\140\002\193\000\144\007\142\004\149\005^\0039\004\024\007\002\004\157\000\203\004\025\000U\001\145\004&\005\136\001(\001B\004\154\0072\000\137\006\172\004\155\004\173\007e\004'\007?\000U\002&\005\134\005d\001\222\004\159\007)\004Y\004Z\001\151\005\214\007h\001\138\000\146\001\139\007\190\001F\006\173\000U\006\176\006\007\006\b\001(\001E\0042\005\182\004\022\000\147\004)\000\209\001H\000U\001J\005\135\004\159\001N\004\176\007j\004&\007\r\000\212\004\181\0043\000\137\007p\004\149\007\144\0044\0037\004'\004\171\0045\004\210\0042\005C\004&\001P\0046\001R\004\154\001T\001\134\005T\004\155\004\173\007e\004'\000l\001\144\007\027\000\147\0043\001X\007\197\007)\005>\0044\001w\001\223\007h\0045\007\227\001\137\001W\004&\004\172\0046\004\024\007\146\006\t\002<\004\025\001Z\005e\001\\\004'\007\228\001a\001z\000\147\001g\007@\004\159\001f\004\176\007j\001\165\000U\005f\004\181\002)\000U\007p\004\022\000\147\004)\001i\001k\005F\001m\004\210\0042\004(\001q\007A\001\181\0075\005\165\0076\007\180\000\137\005 \000\147\001v\001\226\0037\001(\004\171\005h\0043\001\170\005m\001\176\001\175\0044\000V\007 \005V\0045\005\127\0042\002R\001\227\002Q\0046\001w\002W\001\228\000\193\002e\002h\001\229\004\212\000\194\000a\002\159\002l\001\230\0043\002k\001\145\002n\004\172\0044\004\024\000d\001z\0045\004\025\002p\005_\004\149\002t\0046\001\165\002v\004\216\007\180\002x\002z\002}\004&\002\129\003\198\007\005\004\154\001\138\002\128\001\139\004\155\004\173\006\192\004'\000\193\002\131\002\133\001(\000\137\000\197\002\137\0039\004\022\007\000\004)\005\030\005\021\002\139\000\186\005 \002\141\004\164\000\147\000\187\002\143\006\175\000\147\000\195\002\147\000\137\002\146\002\149\003\205\002\151\0037\004\166\004\171\002\156\002\162\004\159\002\161\004\176\005\023\004\022\002\164\004)\004\181\002\166\006\173\004\186\006\176\006\007\006\b\004\178\002\168\002\172\002\181\004\210\0042\001\204\000\137\000\201\001\216\000\186\002\180\0037\004\179\004\218\000\187\004\149\005q\004\172\000\195\004\024\005\129\002\195\0043\004\025\002\201\004&\002\200\0044\003\026\004\154\002\204\0045\002\207\004\155\004\173\002\211\004'\0046\002\210\002\213\002\215\002\219\002\221\000\137\000\139\000\140\002\198\000\144\004\172\005\021\004\024\002\223\000\201\003Z\004\025\002\225\002\228\003[\006>\006\007\006\b\002\232\002\231\002\234\000\186\002\236\006\t\001\206\002\240\002\242\002\244\001\207\004\159\001\027\004\176\005\023\004\022\002\246\004)\004\181\002\250\000\202\004\186\002\249\002\252\000\146\004\221\002\254\003\003\003\t\004\210\0042\000\147\000\137\003\b\004\199\003\011\003\r\0037\004\179\004\218\003\015\007\t\003\019\002&\003\025\003\024\001\222\003\030\0043\000\137\000\203\000\186\004\149\0044\003$\003\\\003#\0045\006\001\003]\007\001\006)\004&\0046\006Q\000\202\004\154\006\t\006\020\006\"\004\155\004\173\006N\004'\004\172\006\135\004\024\006q\006\130\004\204\004\025\006\132\006\142\004\149\006\144\006\154\004\223\006R\006\181\001\031\006U\006\007\006\b\004&\007P\000\203\000\209\004\154\007\002\007~\007\130\004\155\004\173\004\208\004'\007\150\001(\000\214\007\156\004\159\007\157\004\176\004\225\004\022\007\162\004)\004\181\004\157\007:\004\227\001\223\007\163\000\235\004\226\007\168\007\167\007\175\004\210\0042\007\177\000\137\001\204\002'\007\183\001\216\0037\004\179\004\218\007\184\007\188\004\159\000\205\004\219\007\189\004\220\000\236\0043\004\181\007\192\000\237\004\186\0044\002)\007\193\007\196\0045\000\207\003j\004\210\0042\006\t\0046\007\199\007\200\007\217\007\206\001w\007\215\003k\003Z\004\149\006\207\004\172\003[\004\024\007\211\001\226\0043\004\025\007\214\004&\002\191\0044\004\022\004\154\004)\0045\001z\004\155\004\173\000\186\004'\0046\001\206\001\227\001\165\006\172\001\207\007\223\001\228\000\137\007\221\007\225\001\229\004\157\0037\004\242\004\218\007\230\001\230\000\000\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\006\173\000\000\006\176\006\007\006\b\000\000\000\000\000\000\004\159\003\128\004\219\000\000\004\220\003\\\001\222\004\181\000\137\003]\004\186\000\000\000\000\000\000\000\000\004\172\003l\004\024\004\210\0042\000\000\004\025\000\000\000\000\000\000\0075\004\022\0076\004)\000\000\007=\000\193\000\000\000\000\000\000\001(\000\194\0043\000\000\000\000\000\000\004\149\0044\000\137\006\198\000\000\0045\006\172\0037\004\242\004\218\004&\0046\000\000\0072\004\154\000\000\000\000\000\000\004\155\004\173\0074\004'\000\193\006\t\006\210\000\000\000\000\000\199\000\000\006\173\000\000\006\176\006\007\006\b\004\157\001\134\000\000\000\000\000\000\001\223\000\000\000\000\001\159\000\000\004\172\000\000\004\024\000\000\000\000\000\186\004\025\003\130\000\000\000\000\000\187\000\000\001\137\004\159\000\195\004\219\000\000\004\220\000\000\000\000\004\181\000\000\003j\004\186\003\135\000\000\004\149\0021\000\000\000\000\003\133\004\210\0042\003k\000U\000\000\004&\000\186\000\000\004\022\004\154\004)\000\187\000\000\004\155\004\173\000\195\004'\000\201\004\249\0043\001\226\006+\000\000\000\000\0044\000\137\006\t\000\000\0045\004\157\0037\004\242\004\218\000\000\0046\003\136\000\000\000\000\001\227\000l\000\000\000\000\000\000\001\228\006,\006\007\006\b\001\229\000\000\000\201\000\000\002\202\004\159\001\230\004\219\000\000\004\250\000\000\000\000\004\181\006\213\000\000\004\186\000\000\000\000\004\149\000\000\004\172\000\000\004\024\004\210\0042\0075\004\025\0076\004&\003Z\003\138\000\000\004\154\003[\000\000\001(\004\155\004\173\004\022\004'\004)\004\251\0043\000\000\000\202\003\139\000\137\0044\001\138\000\000\001\139\0045\004\157\000\000\000\000\000\137\000\000\0046\001(\000\000\0037\005\024\004\218\000\000\000\193\000\000\000\000\006\t\000\000\000\197\000V\000\000\000\000\000\000\000\203\004\159\000\202\004\219\000\000\004\250\000\000\000\137\004\181\000\000\000\000\004\186\000\000\000\000\003\128\000a\003\001\006\211\003\\\004\210\0042\000\000\003]\004\172\000\000\004\024\000d\000\000\000\000\004\025\000\000\000\000\000\203\000\000\000\000\000\137\000\137\000\000\0043\000\000\0037\0072\004\149\0044\000\000\000\000\000\209\0045\007<\000\186\000\000\000\000\004&\0046\000\187\000U\004\154\000\216\000\195\000\204\004\155\004\173\004\022\004'\004)\005\r\000\000\005\026\000\000\000\000\000\137\000\139\000\140\003\022\000\144\000\000\004\157\003\225\000\205\000\137\000\183\002E\000\000\000\206\0037\005\024\004\218\000\000\000\000\000\000\000\000\000l\000\201\000\207\000\000\000\000\000\000\000\000\000\000\004\159\000\000\004\219\000\000\004\250\001\134\003\130\004\181\0068\000\000\004\186\000\000\001\154\000\146\001\027\001\029\000\000\000\000\004\210\0042\004\149\003j\004\172\003\175\004\024\000\000\001\137\000\000\004\025\003\133\004&\000\000\003k\004\022\004\154\004)\006\172\0043\004\155\004\173\000\186\004'\0044\005.\000\000\000\187\0045\000\000\000\000\000\188\000\137\000\000\0046\000\000\004\157\0037\004\179\004\218\000\000\006\173\000\000\006\176\006\007\006\b\000\000\003\136\005\028\000\202\000\000\000\000\000V\000\000\000\000\000\000\000\000\000\000\0075\004\159\0076\004\219\000\000\005\027\003\178\000\201\004\181\000\000\001(\004\186\000\000\000a\003\006\001\031\004\172\004\173\004\024\004\210\0042\000\203\004\025\000\000\000d\000\000\000\000\004\022\000\000\004)\000\000\003\138\000\000\000\000\000\000\000\000\000\000\001%\0043\000\000\000\000\000\000\004\149\0044\000\137\001(\003\139\0045\000\235\0037\000\000\004\171\004&\0046\000\000\006\t\004\154\005\207\000\000\000\000\004\155\004\173\004\181\004'\001\138\004\186\001\139\000\205\006\172\000\000\000\000\000\236\000\000\004\210\001(\000\237\004\157\000\000\000\000\001w\000\000\000\202\000\207\000\000\000\000\000\000\004\172\000\000\004\024\000\000\006+\006\173\004\025\006\176\006\007\006\b\000\000\000\193\000\000\004\159\001z\004\219\000\194\005\027\000\000\000\000\004\181\000\000\001\165\004\186\000\000\000\203\004\149\006,\006\007\006\b\000\000\004\210\0042\000\000\000\000\000\000\004&\000\000\000\000\004\022\004\154\004)\005\151\000\000\004\155\004\173\005 \004'\006+\000\000\0043\000\000\000\000\000\000\000\000\0044\000\137\000\000\000\000\0045\004\157\0037\000\000\004\171\000\000\0046\000\000\000\000\000\137\000\000\000\186\006,\006\007\006\b\000\000\000\187\000\000\006\t\000\000\000\195\000\000\006\218\000\000\004\159\000\000\004\219\000\000\004\220\000\000\000\000\004\181\000\000\000\000\004\186\000\000\000\000\004\149\006\t\004\172\006+\004\024\004\210\0042\000\000\004\025\000\000\004&\000\000\000\000\004\022\004\154\004)\000\000\000\201\004\155\004\173\000\000\004'\000\000\000\000\0043\000\000\006,\006\007\006\b\0044\000\137\000\000\000\000\0045\005\021\0037\000\000\004\171\000\000\0046\001\134\000\000\000\000\000\000\005\167\006\t\000\000\001\144\005 \000\000\000\137\000\139\000\140\003\028\000\144\000\000\000\000\004\159\000\000\004\176\005\023\001\137\000\000\000\000\004\181\000\000\000\000\004\186\000\000\000\000\000\000\000\000\004\172\000\000\004\024\004\210\0042\000\000\004\025\000\000\000\000\000\000\000\000\004\022\000\000\004)\000\137\000\139\000\140\003!\000\144\000\202\000\146\006\221\0043\000\000\006\t\000\000\004\149\0044\000\137\006+\000\000\0045\000\000\0037\000\000\004\171\004&\0046\000\000\000\000\004\154\006+\005\169\0066\004\155\004\173\005 \004'\000\000\000\203\006+\000\000\006,\006\007\006\b\006+\000\146\000\000\000\000\000\000\005\021\000\000\000\000\000\000\006,\006\007\006\b\000\000\000\000\000\000\004\172\000\000\004\024\006,\006\007\006\b\004\025\001\145\006,\006\007\006\b\000\000\000\000\004\159\000\137\004\176\005\023\006E\000\000\000\000\004\181\000\000\000\000\004\186\000\000\0027\004\149\000\000\000\000\000\000\003\208\004\210\0042\001\138\000\000\001\139\004&\000\000\000\000\004\022\004\154\004)\007\014\001(\004\155\004\173\005 \004'\000\193\007\022\0043\000\000\006\t\000\197\000\000\0044\000\137\000\000\000\000\0045\005\021\0037\004\179\004\218\006\t\0046\000\000\000\000\006C\000\000\000\000\000\000\000\000\006\t\000\000\000\000\000\000\000\000\006\t\000\000\000\183\002A\001\134\004\159\000\000\004\176\005\023\000\000\000\000\001\136\004\181\000\000\001w\004\186\000\000\000\000\004\149\000\000\004\172\000\000\004\024\004\210\0042\001\137\004\025\000\000\004&\000\186\000\000\004\022\004\154\004)\000\187\001z\004\155\004\173\000\195\004'\006+\000\000\0043\001\165\000\000\000\000\000\000\0044\000\137\000\000\001w\0045\005\021\0037\000\137\004\171\000\000\0046\000\000\000\000\000\000\000\186\000\000\006,\006\007\006\b\000\187\000\000\000\000\000\000\000\188\001z\000\201\000\000\006+\004\159\000\000\004\176\005\023\001\165\000\000\000\000\004\181\000\000\000\000\004\186\000\000\000\000\006A\000\000\004\172\000\000\004\024\004\210\0042\000\000\004\025\006,\006\007\006\b\006\\\004\022\000\000\004)\000\201\000\000\000\000\000\000\000\000\006g\000\000\007I\0043\000\137\006l\000\000\004\149\0044\000\137\000\000\000\000\0045\001\134\0037\004\179\004\218\004&\0046\000\000\001\144\004\154\006+\007\028\006\t\004\155\004\173\005 \004'\003\185\001\138\000\000\001\139\000\000\001\137\000\000\000\000\000\202\000\000\000\000\001(\004\157\000\000\000\000\000\000\006,\006\007\006\b\000\000\000\000\000\000\004\172\000\000\004\024\000\000\000\000\000\000\004\025\006\t\000\000\000\000\003}\000\000\000\000\004\159\000\000\004\219\000\203\004\220\000\202\000\000\004\181\001\134\000\000\004\186\000\000\000\000\004\149\000\000\001\157\000\000\000\000\004\210\0042\000\000\000\000\000\000\004&\000\000\005)\004\022\004\154\004)\001\137\000\235\004\155\004\173\000\000\004'\000\203\000\000\0043\000\000\000\000\000\000\000\000\0044\000\137\000\000\000\000\0045\005\021\0037\000\205\004\218\006\t\0046\000\236\000\000\000\000\000\000\000\237\001\145\000\000\000\183\002;\000\000\000\000\000\207\000\000\000\000\000\000\000\183\002%\004\159\000\193\004\176\005\023\006~\000\000\000\199\004\181\000\000\000\000\004\186\004\193\000\000\004\149\001\138\004\172\001\139\004\024\004\210\0042\000\000\004\025\000\000\004&\001(\000\000\004\022\004\154\004)\000\000\000\000\004\155\004\173\000\000\004'\000\000\000\000\0043\006\139\004\222\000\193\000\000\0044\000\137\000\000\000\199\0045\004\157\0037\000\186\004\171\000\000\0046\000\000\000\187\000\000\000\000\000\186\000\188\000\000\000\186\000\000\000\187\000\000\000\000\000\187\000\188\000\000\000\000\000\195\004\159\000\000\004\219\001\138\004\220\001\139\000\000\004\181\000\000\000\000\004\186\000\000\000\000\001(\000\000\004\172\000\000\004\024\004\210\0042\000\000\004\025\000\201\000\000\000\000\006\137\004\022\000\000\004)\000\186\000\201\000\000\000\000\000\201\000\187\000\000\000\000\0043\000\195\004\170\000\000\004\149\0044\000\137\000\000\000\000\0045\000\000\0037\000\000\004\171\004&\0046\000\000\000\000\004\154\000\000\000\000\006+\004\155\004\173\000\000\004'\000\183\002\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\201\000\000\000\000\005+\000\000\004\022\000\000\004)\000\000\006,\006\007\006\b\000\000\004\172\000\000\004\024\000\193\000\000\004\180\004\025\000\000\000\197\000\137\000\000\000\202\000\000\004\159\0037\004\219\004\171\005-\000\000\000\202\004\181\000\000\000\202\004\186\000\000\000\000\004\149\000\000\000\000\000\000\000\000\004\210\0042\000\000\000\000\000\000\004&\000\186\000\000\000\000\004\154\000\203\000\187\000\000\004\155\004\173\000\188\004'\000\000\000\203\0043\004\172\000\203\004\024\000\000\0044\000\000\004\025\000\000\0045\004\174\000\202\000\186\000\000\000\000\0046\006\t\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\000\004\022\000\000\004)\000\000\000\204\000\201\000\000\000\000\004\159\000\232\004\176\004\177\000\000\000\000\000\000\004\181\000\203\000\137\004\186\000\000\000\000\004\149\0037\000\205\004\171\000\000\004\210\0042\001\016\000\000\000\201\004&\000\000\000\000\000\000\004\154\000\000\000\000\000\207\004\155\004\173\000\000\004'\000\204\000\000\0043\000\000\000\000\000\000\000\000\0044\004\022\000\000\004)\0045\004\174\000\000\000\000\000\000\004\172\0046\004\024\000\205\000\000\000\000\004\025\000\000\001\019\000\137\000\000\000\000\000\000\004\149\0037\000\000\004\171\000\000\000\207\004\159\000\202\004\176\004\177\004&\000\000\000\000\004\181\004\154\000\000\004\186\000\000\004\155\004\173\000\000\004'\000\000\000\000\004\210\0042\000\000\000\000\000\000\000\000\000\000\000\000\000\202\006\196\004\174\000\000\000\000\000\203\004\172\000\000\004\024\000\000\000\000\0043\004\025\000\000\000\137\000\000\0044\000\000\000\000\000\000\0045\000\000\000\000\000\000\000\238\004\159\0046\004\176\004\177\006+\000\203\000\000\004\181\000\000\000\000\004\186\000\000\000\193\000\000\000\000\000\000\000\000\000\194\004\210\0042\000\193\000\000\000\000\000\000\000\000\000\197\004\149\006,\006\007\006\b\000\000\000\000\000\235\000\000\000\000\000\137\004&\0043\000\000\000\000\004\154\000\000\0044\000\000\004\155\004\173\0045\004'\004\022\000\000\004)\000\205\0046\004\253\000\000\000\236\000\000\001\134\000\000\000\237\004\246\000\000\000\000\000\000\001\144\000\137\000\207\000\000\000\000\000\000\0037\000\186\004\171\000\000\000\000\000\000\000\187\004\149\001\137\000\186\000\195\000\000\000\000\004\159\000\187\004\176\004\248\004&\000\195\000\000\004\181\004\154\000\000\004\186\000\000\004\155\004\173\006\t\004'\000\000\000\000\004\210\0042\001\134\004\245\000\000\000\000\004\172\000\000\004\024\001\144\004\246\000\000\004\025\000\201\000\000\004\022\000\000\004)\000\000\0043\000\000\000\201\000\000\001\137\0044\000\000\000\000\000\000\0045\000\000\000\000\000\000\000\137\004\159\0046\004\176\004\248\0037\000\000\004\171\004\181\000\000\003D\004\186\004\022\000\000\004)\000\000\000\000\000\000\000\000\004\210\0042\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\137\000\000\000\000\000\000\001\145\0037\000\000\004\171\000\000\0043\000\000\000\000\000\000\004\172\0044\004\024\000\000\000\000\0045\004\025\000\000\000\000\000\137\000\000\0046\000\000\000\202\004\201\000\000\000\000\001\138\000\000\001\139\000\000\000\202\000\000\000\000\000\000\000\000\000\000\001(\004\149\004\172\000\000\004\024\000\000\000\000\000\000\004\025\006\201\001\145\004&\000\000\000\000\000\000\004\154\000\203\000\000\001\031\004\155\004\173\000\000\004'\000\000\000\203\000\000\000\000\005\t\000\000\000\000\000\000\000\000\000\000\005I\000\000\005\n\001\138\000\000\001\139\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001(\000\000\005\020\000\000\001\134\000\235\000\000\000\000\000\000\000\000\000\000\001\144\004\159\000\000\004\176\005\012\000\209\000\000\000\000\004\181\000\000\000\000\004\186\004\149\000\205\001\137\000\000\000\218\000\236\000\000\004\210\0042\000\237\004&\000\000\000\000\000\000\004\154\000\000\000\207\000\000\004\155\004\173\004\022\004'\004)\000\000\000\000\000\000\0043\005\007\000\000\004\149\000\000\0044\000\000\000\000\004\246\0045\000\000\000\137\000\000\004&\000\000\0046\0037\004\154\004\171\000\000\000\000\004\155\004\173\004\022\004'\004)\000\000\000\000\000\000\000\000\000\000\004\159\000\000\004\176\004\248\007\018\000\000\005\021\004\181\000\000\000\137\004\186\000\000\000\000\000\000\0037\000\000\004\171\000\000\004\210\0042\000\000\000\000\004\172\000\000\004\024\000\000\000\000\000\000\004\025\004\159\000\000\004\176\005\023\001\145\000\000\000\000\004\181\0043\000\000\004\186\000\000\000\000\0044\000\000\000\000\000\000\0045\004\210\0042\000\000\000\000\004\172\0046\004\024\000\000\000\000\005t\004\025\000\000\001\138\004\022\001\139\004)\000\000\000\000\000\000\0043\000\000\005\025\001(\000\000\0044\007\030\000\000\000\000\0045\000\000\000\137\000\000\000\000\000\000\0046\0037\000\000\004\171\000\000\000\000\000\000\000\000\004\022\000\000\004)\000\000\000\000\000\193\000\000\000\000\000\000\000\000\000\197\000\000\007!\000\000\000\000\000\000\000\000\000\137\000\000\000\000\006\244\000\000\0037\000\000\004\171\000\000\000\000\000\000\000\000\004\149\004\172\000\000\004\024\000\000\000\000\000\000\004\025\000\000\000\000\004&\000\000\000\000\000\000\004\154\000\000\000\000\000\000\004\155\004\173\000\000\004'\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\149\004\172\000\000\004\024\000\000\005\021\000\186\004\025\000\000\000\000\004&\000\187\000\000\000\000\004\154\000\195\000\000\000\000\004\155\004\173\000\000\004'\001\204\000\000\000\000\001\216\000\000\000\000\004\159\000\000\004\176\005\023\000\000\000\000\007\019\004\181\000\000\000\193\004\186\000\137\000\000\000\000\000\194\000\000\000\000\000\000\004\210\0042\000\000\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\159\000\000\004\176\007\021\000\000\000\000\000\000\004\181\0043\000\000\004\186\004\149\000\000\0044\000\000\000\000\000\000\0045\004\210\0042\000\000\004&\000\000\0046\000\186\004\154\000\000\001\206\000\000\004\155\004\173\001\207\004'\000\000\000\000\000\000\000\000\0043\000\000\000\186\004\149\000\000\0044\000\000\000\187\007\019\0045\004\022\000\195\004)\004&\000\000\0046\000\000\004\154\000\000\000\000\000\000\004\155\004\173\000\000\004'\002\015\004\022\000\137\004)\000\202\001\222\004\159\005<\004\176\007\021\000\000\000\000\007\019\004\181\000\000\000\000\004\186\000\000\000\137\000\000\000\201\000\000\000\000\005<\004\210\0042\000\000\000\000\006\245\000\000\000\000\005[\000\000\000\000\000\203\004\159\000\000\004\176\007\021\000\000\000\000\000\000\004\181\0043\005^\004\186\004\024\005]\0044\000\000\004\025\000\000\0045\004\210\0042\000\000\000\000\000\000\0046\000\000\005^\000\235\004\024\000\000\000\000\000\000\004\025\000\000\000\000\005d\000\000\000\000\0043\000\000\000\000\000\000\000\000\0044\000\000\001\223\000\205\0045\000\000\000\000\000\236\005d\001\204\0046\000\237\001\216\000\000\000\000\000\000\000\000\000\202\000\207\000\000\000\000\000\000\000\000\000\000\002\016\002\017\000\137\005\137\000\000\000\000\004.\000\000\001\029\000\000\001\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\203\001\225\000\000\001\204\000\000\000\000\001\216\000\000\000\000\001(\000\000\001\226\000\000\000\000\000\000\001\204\000\000\000\000\001\216\000\000\000\137\000\186\000\000\000\000\001\206\000\000\004&\000\000\001\207\001\227\000\000\000\000\000\137\000\000\001\228\005e\000\000\004'\001\229\000\000\000\000\000\000\004&\000\000\001\230\000\000\000\209\000\000\002\007\000\000\005\139\005e\000\000\004'\000\000\000\000\000\000\000\220\000\000\002\015\000\000\000\000\000\186\000\000\001\222\001\206\005f\000\000\000\000\001\207\000\000\000\000\000\000\000\000\000\186\000\000\000\000\001\206\000\000\000\000\005h\001\207\000\000\005\140\001\204\000\000\000\000\001\216\000\000\000\000\000\000\005\127\0042\000\000\000\000\000\000\005h\000\000\000\000\005m\002\015\000\137\000\000\000\183\002!\001\222\000\000\005\127\0042\000\000\0043\000\000\002\015\000\000\000\000\0044\000\000\001\222\000\000\0045\000\000\000\000\000\000\000\000\000\000\0046\0043\000\000\000\000\000\000\000\000\0044\000\000\000\000\000\000\0045\000\000\001\204\001\223\000\000\001\216\0046\000\000\000\186\000\000\000\000\001\206\000\000\000\000\000\000\001\207\000\000\000\000\000\000\000\137\000\000\000\000\000\000\000\000\000\000\002\016\003a\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\000\001\224\000\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\223\000\000\002\015\000\000\000\000\001\225\004\022\001\222\004)\000\000\000\000\000\000\001\223\001(\000\000\001\226\000\000\000\186\000\000\000\000\001\206\000\000\002\016\004\029\001\207\000\000\000\201\000\000\000\000\000\000\004\142\004\239\001\224\001\227\002\016\004\151\000\000\000\000\001\228\000\000\000\000\000\000\001\229\000\000\001\224\000\000\001\225\000\000\001\230\000\000\000\000\000\000\002\007\000\000\001(\002\015\001\226\000\193\001\225\000\000\001\222\000\000\000\197\000\000\000\000\003\128\001(\004\024\001\226\000\000\000\000\004\025\000\000\000\000\001\227\000\000\000\000\000\000\000\000\001\228\000\000\001\223\000\000\001\229\000\000\004\022\001\227\004)\000\000\001\230\000\000\001\228\000\000\002\007\000\000\001\229\000\000\000\000\000\000\000\000\000\202\001\230\000\000\002\016\004\183\002\007\000\000\000\000\000\000\004\142\004\229\000\000\000\000\001\224\000\000\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\001\225\000\000\000\000\000\203\000\000\000\000\000\000\001\223\001(\000\000\001\226\004\022\000\000\004)\000\000\000\000\000\000\003\128\000\000\004\024\000\000\000\000\000\000\004\025\000\000\000\000\000\000\000\000\001\227\002\016\005j\000\000\000\201\001\228\004\149\004\142\004\143\001\229\000\000\001\224\000\000\000\000\000\000\001\230\004&\000\000\000\000\002\007\004\154\000\000\000\000\000\000\004\155\001\225\000\000\004'\000\000\000\000\000\183\002 \004\022\001(\004)\001\226\000\000\000\000\000\000\000\000\004\157\000\000\003\128\000\000\004\024\000\000\000\000\000\000\004\025\000\000\000\000\000\000\000\000\001\227\000\000\000\000\004\142\004\153\001\228\000\000\000\000\000\000\001\229\004\159\000\000\000\000\000\000\000\000\001\230\000\193\003{\000\000\002\007\000\000\000\197\000\000\000\000\000\000\000\202\000\000\000\000\000\000\0042\000\000\000\000\004\149\000\000\000\000\004\022\000\186\004)\003\128\000\000\004\024\000\187\004&\000\000\004\025\000\188\004\154\0043\000\000\003}\004\155\000\000\0044\004'\000\000\000\203\0045\000\000\000\000\004\142\004\241\000\000\0046\000\000\000\000\000\000\004\157\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\186\000\000\000\000\000\000\000\201\000\187\000\000\000\235\000\000\000\195\004\149\004\022\000\000\004)\004\159\000\000\000\000\000\000\000\000\003\128\004&\004\024\001\234\000\000\004\154\004\025\000\205\000\000\004\155\001\204\000\236\004'\001\216\0042\000\237\004\142\005\189\004\022\000\000\004)\000\000\000\207\000\000\000\201\004\157\000\000\000\137\000\000\000\000\000\000\000\000\0043\000\000\000\000\000\000\000\000\0044\000\000\000\000\004\149\0045\004\142\005\191\000\000\000\000\000\000\0046\004\159\000\000\004&\003\128\000\000\004\024\004\154\000\000\000\000\004\025\004\155\000\202\000\000\004'\004\022\000\000\004)\000\000\000\000\0042\000\000\000\186\000\000\000\000\001\206\000\000\004\157\000\000\001\207\003\128\001\204\004\024\000\000\001\216\000\000\004\025\000\000\0043\004\142\005\193\000\000\000\203\0044\000\000\000\000\000\000\0045\000\137\004\149\004\159\000\202\000\000\0046\000\000\000\000\000\000\000\000\000\000\004&\002\014\000\000\000\000\004\154\000\000\001\222\000\000\004\155\000\000\0042\004'\000\000\000\000\000\000\003\128\000\238\004\024\000\000\000\000\000\000\004\025\000\203\000\000\004\157\000\000\000\000\000\000\0043\000\000\000\000\000\186\000\000\0044\001\206\000\000\000\000\0045\001\207\000\000\000\000\004\149\000\000\0046\000\000\000\000\000\000\004\159\000\000\000\235\000\000\004&\000\000\000\000\001\204\004\154\000\000\001\216\000\000\004\155\000\000\000\000\004'\000\000\000\000\000\000\0042\004\149\000\205\000\000\000\000\000\137\000\236\000\000\001\222\004\157\000\237\004&\000\000\000\000\001\223\004\154\000\000\000\207\0043\004\155\000\000\000\000\004'\0044\000\000\000\000\000\000\0045\000\000\000\000\000\000\000\000\004\159\0046\000\000\004\157\000\000\000\000\000\000\000\000\004\022\000\000\004)\000\000\000\000\004\149\001\224\000\186\000\000\000\000\001\206\0042\000\000\000\000\001\207\004&\000\000\000\000\004\159\004\154\001\225\000\000\000\000\004\155\004\232\000\000\004'\000\000\001(\0043\001\226\000\000\000\000\000\000\0044\000\000\000\000\0042\0045\004\157\000\000\000\000\001\223\000\000\0046\001\221\000\000\000\000\001\227\000\000\001\222\001\204\000\000\001\228\001\216\0043\000\000\001\229\000\000\003\128\0044\004\024\004\159\001\230\0045\004\025\000\000\002\007\000\137\000\000\0046\000\000\000\000\000\000\001\224\000\000\000\000\001\204\000\000\000\000\001\216\0042\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\000\137\002\n\001(\000\000\001\226\0043\000\000\000\000\000\000\000\000\0044\000\000\000\000\000\000\0045\000\000\000\186\000\000\000\000\001\206\0046\000\000\001\227\001\207\000\000\000\000\000\000\001\228\000\000\000\000\001\223\001\229\000\000\000\193\000\193\000\000\000\000\001\230\000\194\000\197\000\000\002\011\000\186\000\000\000\000\001\206\000\000\000\193\000\000\001\207\000\000\000\137\000\197\000\000\002\t\000\000\000\000\000\000\000\000\001\222\000\000\004\149\001\224\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\004&\000\000\000\000\000\000\004\154\001\225\000\000\000\000\004\155\002\r\000\000\004'\000\193\001(\001\222\001\226\000\000\000\197\000\000\000\000\000\000\000\186\000\186\000\193\004\157\000\000\000\187\000\187\000\194\000\137\000\195\000\195\000\000\001\227\000\000\000\186\000\000\000\000\001\228\000\000\000\187\000\193\001\229\000\000\000\195\000\000\000\197\004\159\001\230\000\000\000\000\000\193\002\007\000\000\000\000\000\000\000\197\000\000\000\137\000\000\000\000\000\000\001\223\000\000\000\201\000\201\0042\000\000\000\137\000\000\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\201\000\000\000\195\000\000\000\186\000\000\0043\000\000\000\000\000\187\001\223\0044\000\193\000\195\000\000\0045\001\224\000\197\000\000\000\000\000\000\0046\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\137\001\225\000\195\000\186\000\183\002\031\000\000\000\201\000\187\001(\000\000\001\226\000\195\001\224\000\000\000\000\000\000\000\000\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\001\227\000\000\000\202\000\202\000\000\001\228\001(\000\201\001\226\001\229\000\000\000\000\000\000\000\186\000\000\001\230\000\202\000\201\000\187\002\007\000\000\000\000\000\195\000\000\000\000\000\000\001\227\001\186\000\000\000\000\000\000\001\228\000\203\000\203\000\186\001\229\000\000\000\000\000\000\000\187\002#\001\230\000\000\000\188\000\000\002\007\000\203\000\000\000\000\001\188\000\000\000\000\000\202\000\000\000\193\000\000\000\201\001(\000\000\000\197\000\235\000\000\0029\000\202\000\000\000\000\000\000\000\000\000\000\000\000\001(\000\137\000\000\000\235\000\000\000\000\002#\000\201\000\209\000\205\000\000\000\202\000\203\000\236\000\000\000\000\000\000\000\237\000\000\000\222\000\000\000\202\000\205\000\203\000\207\000\000\000\236\000\000\002?\003Z\000\237\000\000\000\000\003[\000\000\002#\001(\000\207\000\000\000\235\000\000\000\203\000\000\000\186\000\000\002#\000\000\000\000\000\187\000\000\000\000\000\203\000\195\000\000\000\193\000\000\000\000\002C\000\205\000\197\000\202\000\000\000\236\000\000\000\000\001(\000\237\003@\000\235\000\209\000\000\000\137\003Z\000\207\000\000\001(\003[\000\000\000\235\000\000\000\224\000\202\000\000\000\000\003G\000\000\000\201\000\205\003\128\000\000\000\203\000\236\003\\\000\000\000\000\000\237\003]\000\205\000\000\000\183\000\185\000\236\000\207\000\000\000\000\000\237\003I\000\000\000\000\000\183\001\197\000\203\000\207\000\186\001(\000\000\000\000\000\235\000\187\000\000\000\000\000\000\000\195\003\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\128\000\000\000\000\000\000\003\\\000\205\000\000\000\000\003]\000\236\000\000\000\000\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\003Z\000\000\000\000\000\201\003[\000\186\000\000\000\202\000\000\000\000\000\187\000\193\000\000\003\170\000\188\000\186\000\197\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\188\000\000\003\130\000\000\000\000\000\000\003Z\002#\000\000\000\000\003[\000\000\000\000\000\203\000\000\000\000\000\000\003j\000\000\003\168\000\183\001\200\000\193\000\000\000\201\003\133\000\000\000\197\003k\003\238\000\000\000\000\000\000\000\000\000\201\003\128\000\000\001(\000\000\003\\\000\235\000\000\000\000\003]\000\000\003\130\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\202\003\171\000\195\000\000\000\183\001\203\000\205\003j\003\136\003\168\000\236\000\000\003\128\000\000\000\237\003\133\003\\\003\174\003k\000\000\003]\000\207\000\000\000\000\004\003\000\000\000\186\000\000\000\186\000\000\000\203\000\187\000\000\000\187\000\000\000\188\000\201\000\195\000\000\000\000\000\000\000\000\000\000\000\000\003\171\000\202\004\005\003\177\000\193\000\000\003\138\003\136\000\000\000\197\001(\000\202\000\000\000\235\000\000\000\000\000\000\000\000\000\000\000\186\000\000\003\139\000\000\000\000\000\187\000\201\000\000\000\201\000\188\003\130\000\193\000\203\000\205\000\000\000\000\000\197\000\236\000\000\000\000\000\000\000\237\000\203\000\000\000\000\003j\000\000\003\168\000\207\000\000\003\138\000\000\000\000\003\133\000\183\003B\003k\000\000\000\000\003\202\003\130\000\000\000\000\000\201\000\186\003\139\000\000\000\202\000\000\000\187\000\000\000\000\000\000\000\195\000\000\003j\000\000\003\168\000\000\000\000\000\000\000\000\003\171\003\133\000\000\000\000\003k\000\000\000\000\003\136\000\186\003}\000\000\000\000\003\213\000\187\000\000\000\203\000\000\000\195\000\202\000\000\000\202\000\000\000\193\000\000\000\193\000\201\000\000\000\197\000\000\000\197\003\171\000\186\000\000\000\000\000\193\000\000\000\187\003\136\000\000\000\197\000\188\000\000\000\235\000\000\003}\000\000\000\000\000\000\000\203\003\138\000\203\000\201\000\000\000\000\000\000\000\202\000\000\000\000\000\000\000\000\000\000\000\205\000\000\000\193\003\139\000\236\000\000\000\000\000\197\000\237\000\000\000\000\000\000\000\000\000\201\000\193\000\207\000\235\000\000\003\138\000\197\000\186\000\000\000\186\000\000\000\203\000\187\000\000\000\187\000\000\000\195\003\221\000\195\000\186\003\139\000\000\000\205\000\000\000\187\000\202\000\236\000\000\000\195\004:\000\237\004o\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\000\004q\000\000\003\228\000\000\000\000\000\000\000\000\000\186\003}\000\201\000\202\000\201\000\187\000\000\000\203\000\000\000\195\000\000\000\000\000\186\000\000\000\201\000\000\000\000\000\187\000\183\003S\000\000\000\195\004s\000\000\000\000\000\000\000\202\003}\000\000\000\000\000\000\000\000\000\000\000\203\000\235\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\201\000\000\000\000\000\193\000\000\000\000\000\000\000\000\000\197\000\000\000\205\000\000\000\201\000\203\000\236\000\000\000\000\000\235\000\237\000\000\000\000\000\193\000\000\000\000\000\000\000\207\000\197\000\000\000\000\000\000\000\000\000\000\000\000\000\202\000\186\000\202\000\205\000\000\000\000\000\187\000\236\000\000\000\000\000\188\000\237\000\202\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\000\000\000\000\000\000\238\000\000\000\238\000\000\000\000\000\186\000\203\000\000\000\203\000\000\000\187\000\000\000\238\000\000\000\195\000\000\000\000\000\202\000\203\000\193\000\201\004\197\000\000\000\186\000\197\000\000\000\000\000\000\000\187\000\202\000\000\000\000\000\195\000\235\000\000\000\235\000\000\000\000\000\000\000\193\000\000\000\238\000\000\000\000\000\197\000\235\000\000\000\203\000\201\000\000\000\000\000\000\000\205\003}\000\205\000\000\000\236\000\000\000\236\000\203\000\237\000\000\000\237\000\000\000\205\000\000\000\201\000\207\000\236\000\207\000\193\000\000\000\237\000\000\000\235\000\197\000\000\000\000\000\186\000\207\000\000\000\000\000\000\000\187\000\000\000\000\000\235\000\195\000\000\000\000\000\193\000\000\000\000\000\205\000\202\000\197\000\000\000\236\000\186\000\000\000\000\000\237\000\000\000\187\000\000\000\205\000\000\000\195\000\207\000\236\000\000\000\000\000\193\000\237\004\206\000\000\000\000\000\197\000\000\000\000\000\207\000\201\000\202\000\000\000\203\000\193\000\000\000\000\000\000\000\186\000\197\000\000\004\214\000\000\000\187\000\183\003V\000\000\000\195\000\000\000\202\000\201\000\000\000\000\000\000\000\000\003}\000\000\000\000\000\186\000\000\000\000\000\203\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\000\000\000\000\000\003}\000\000\000\000\000\000\000\000\000\000\000\203\000\186\000\201\000\000\000\000\000\000\000\187\000\000\000\000\000\235\000\195\000\000\000\000\000\193\000\186\000\000\000\000\005A\000\197\000\187\000\000\000\000\000\201\000\195\000\186\000\202\000\000\000\235\000\205\000\187\000\000\000\000\000\236\000\188\000\000\000\000\000\237\005M\000\000\000\000\000\000\000\000\000\000\000\207\000\201\000\202\000\205\000\000\000\000\003}\000\236\000\000\000\000\000\000\000\237\000\203\000\000\000\201\000\000\000\000\000\193\000\207\000\000\000\000\000\000\000\197\000\000\000\201\005R\003}\000\000\000\000\000\186\000\000\000\000\000\203\000\202\000\187\000\000\000\000\000\000\000\195\000\235\000\000\000\000\000\000\000\000\000\000\005Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\202\000\000\000\000\000\000\003}\000\205\000\235\000\000\000\000\000\236\000\203\000\000\000\000\000\237\005b\000\000\000\000\000\000\000\000\000\201\000\207\000\000\000\202\000\186\003}\000\205\000\000\005x\000\187\000\236\000\203\000\000\000\195\000\237\000\000\000\202\000\193\000\235\000\000\000\000\000\207\000\197\000\000\000\000\000\000\000\202\003}\000\000\000\000\000\000\000\193\007X\000\203\000\000\000\000\000\197\000\205\000\235\000\000\003}\000\236\000\183\003Y\000\000\000\237\000\203\000\201\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\000\000\203\000\205\000\000\000\193\000\235\000\236\000\000\000\000\000\197\000\237\005}\000\000\000\000\000\000\000\000\000\000\000\207\000\235\000\202\000\193\000\186\000\000\000\000\000\205\000\197\000\187\000\000\000\236\000\000\000\195\000\000\000\237\000\000\000\000\000\186\000\000\000\205\000\000\000\207\000\187\000\236\000\000\003}\000\195\000\237\000\186\000\000\000\000\000\203\000\000\000\187\000\207\000\000\000\000\000\188\000\000\000\193\005\132\000\000\000\000\000\000\000\197\000\186\000\201\000\000\000\202\000\000\000\187\000\193\000\000\000\000\000\195\000\000\000\197\000\000\000\235\000\000\000\201\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\201\003}\000\000\000\000\000\000\000\000\000\205\000\203\000\193\000\000\000\236\000\000\000\000\000\197\000\237\000\000\000\000\000\201\000\000\000\000\000\000\000\207\000\000\000\000\000\000\000\000\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\201\000\235\000\000\000\195\000\000\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\202\000\193\000\000\000\000\000\205\000\000\000\197\000\000\000\236\000\000\000\000\000\000\000\237\000\000\000\202\000\000\000\000\000\000\000\186\000\207\000\000\000\201\000\000\000\187\006\245\000\202\000\000\000\195\000\000\000\000\000\203\000\000\000\000\000\201\000\000\000\000\000\000\000\000\001\020\000\000\000\000\000\000\000\202\000\000\000\203\000\193\000\000\000\000\000\000\000\000\000\197\000\000\000\000\000\000\000\000\000\203\000\000\000\235\000\202\000\000\000\186\000\201\000\000\000\000\000\000\000\187\000\234\000\000\000\000\000\195\000\000\000\235\000\203\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\236\000\000\001!\000\000\000\237\000\000\000\000\000\193\000\203\000\000\000\205\000\207\000\197\000\000\000\236\000\202\000\000\000\000\000\237\000\235\000\000\000\000\000\000\000\201\000\186\000\207\000\000\000\202\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\235\000\000\000\000\000\205\001\236\000\000\000\000\000\236\000\000\000\000\000\203\000\237\000\000\000\000\000\000\000\000\002\020\000\000\000\207\000\205\000\202\000\000\000\203\000\236\000\000\000\193\000\000\000\237\000\000\000\000\000\197\000\186\000\201\000\000\000\207\000\000\000\187\000\235\000\000\000\000\000\195\000\000\000\000\000\000\002-\000\000\000\000\000\000\000\000\000\235\000\203\000\000\000\000\000\193\000\193\000\000\000\205\000\000\000\197\000\197\000\236\000\000\000\202\000\000\000\237\000\000\000\000\000\000\000\205\000\000\000\000\000\207\000\236\000\193\000\201\000\000\000\237\000\235\000\194\000\000\000\000\000\000\000\000\000\207\000\186\000\000\003+\000\000\000\000\000\187\000\193\000\000\000\203\000\195\000\000\000\197\000\205\000\000\000\000\000\000\000\236\000\000\000\193\000\000\000\237\000\000\000\202\000\197\000\000\000\000\000\000\000\207\000\186\000\186\000\000\000\000\000\000\000\187\000\187\000\235\000\000\000\195\000\195\000\000\000\000\000\000\000\000\000\201\000\000\000\000\0031\000\000\000\186\000\000\000\000\000\000\000\203\000\187\000\205\000\193\000\000\000\195\000\236\000\000\000\197\000\000\000\237\000\000\000\202\000\186\000\183\003\240\000\000\000\207\000\187\000\201\000\201\000\000\000\195\000\000\000\000\000\186\000\000\000\235\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\003d\000\000\000\000\000\201\000\000\000\000\000\203\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\236\000\183\004\015\000\000\000\237\000\000\000\201\000\000\000\000\000\000\000\000\000\207\000\186\000\000\000\000\000\202\000\000\000\187\000\201\000\235\000\000\000\195\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\193\000\000\000\188\000\000\000\000\000\197\000\000\000\000\000\205\003o\000\000\000\000\000\236\000\202\000\202\000\203\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\201\000\000\000\000\000\000\000\000\000\186\000\000\000\000\000\202\000\000\000\187\000\201\003q\003\243\000\188\000\000\000\000\000\235\000\203\000\203\000\000\000\000\000\193\000\000\000\193\000\202\000\000\000\197\000\000\000\197\000\000\000\000\000\000\000\000\000\186\000\000\000\205\000\202\000\203\000\187\000\236\000\000\000\000\000\195\000\237\000\235\000\235\000\000\000\201\003\248\000\000\000\207\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\000\003\252\000\000\000\000\000\205\000\205\000\000\000\203\000\236\000\236\000\000\000\193\000\237\000\237\000\202\000\000\000\197\000\201\000\000\000\207\000\207\000\186\000\235\000\186\000\209\000\202\000\187\000\000\000\187\000\000\000\195\000\000\000\195\000\000\000\235\000\226\000\000\000\000\004 \000\000\000\000\000\205\000\000\000\193\000\203\000\236\000\000\000\000\000\197\000\237\000\000\000\000\000\000\000\205\000\000\000\203\000\207\000\236\000\000\000\183\004\018\000\237\000\202\000\000\000\201\000\000\000\201\000\000\000\207\000\000\000\186\000\235\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\193\000\193\000\000\000\000\000\000\000\197\000\197\000\000\000\205\000\202\000\203\000\000\000\236\000\000\000\000\000\000\000\237\000\000\000\000\000\000\000\186\000\000\000\000\000\207\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\201\000\000\004<\000\000\000\000\000\186\000\000\000\000\000\203\000\000\000\187\000\193\000\000\000\000\000\188\000\000\000\197\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\202\000\000\000\202\000\186\000\186\000\000\000\000\000\201\000\187\000\187\000\235\000\000\000\195\000\195\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\201\004g\000\000\004\146\000\000\000\000\000\205\000\203\000\000\000\203\000\236\000\000\000\000\000\000\000\237\000\000\000\183\004\021\000\000\000\000\000\000\000\207\000\186\000\201\000\201\000\000\000\202\000\187\000\193\000\000\000\000\000\195\000\000\000\197\000\235\000\000\000\235\000\000\000\000\000\000\000\000\000\193\000\000\000\000\000\193\000\000\000\197\000\000\000\000\000\197\0054\000\000\000\000\000\205\000\000\000\205\000\203\000\236\000\202\000\236\000\000\000\237\000\000\000\237\000\000\000\201\000\000\000\000\000\207\000\000\000\207\000\000\000\000\000\193\000\202\000\186\000\000\000\000\000\199\000\000\000\187\000\000\005\155\000\235\000\188\000\000\000\000\000\186\000\203\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\202\000\202\000\000\000\186\000\000\000\205\000\186\000\203\000\187\000\236\000\000\000\187\000\195\000\237\000\000\000\195\000\000\000\000\000\235\000\000\000\207\000\201\000\000\000\000\005\175\005\177\000\000\000\000\000\000\000\000\000\203\000\203\000\000\000\201\000\193\000\186\000\000\000\205\000\000\000\199\000\187\000\236\000\202\000\000\000\195\000\237\000\201\000\000\000\000\000\201\000\000\000\000\000\207\000\000\000\000\000\000\000\000\000\235\000\235\000\000\000\193\000\000\000\000\000\000\000\000\000\199\005\179\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\205\000\205\000\201\000\000\000\236\000\236\000\000\000\000\000\237\000\237\000\000\000\000\000\000\000\000\000\000\000\207\000\207\000\186\000\000\000\202\000\000\000\000\000\187\000\235\000\000\000\000\000\195\000\000\000\193\000\000\000\000\000\202\000\000\000\199\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\205\000\186\000\202\000\000\000\236\000\202\000\187\000\203\000\237\000\000\000\195\000\193\000\000\005\185\000\000\000\207\000\194\000\000\000\201\000\203\000\000\000\000\000\000\000\000\000\000\000\000\005\199\000\000\000\000\005\213\000\000\000\193\000\203\000\000\000\202\000\203\000\194\000\000\000\193\000\000\000\000\000\000\000\000\000\194\000\201\000\186\000\235\000\000\000\193\000\000\000\187\000\000\000\000\000\194\000\195\000\193\000\000\000\000\000\000\000\235\000\194\000\000\000\235\000\000\000\203\000\205\000\000\000\000\000\000\000\236\000\186\000\000\000\000\000\237\000\000\000\187\000\000\000\000\000\205\000\195\000\207\000\205\000\236\000\000\000\000\000\236\000\237\000\000\000\201\000\237\000\186\000\204\000\202\000\207\000\000\000\187\000\207\000\186\000\000\000\195\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\186\000\000\000\000\000\205\000\000\000\187\000\201\000\186\001\218\000\195\000\000\000\202\000\187\000\000\000\193\000\203\000\195\000\000\000\207\000\194\000\193\000\000\000\000\000\000\000\000\000\194\000\201\000\193\000\000\000\000\000\193\000\000\000\194\000\201\000\000\000\194\000\000\000\000\000\000\000\000\000\193\000\203\000\204\000\201\000\000\000\194\000\000\000\193\000\000\000\000\000\201\000\000\000\194\000\000\000\000\000\202\000\000\000\000\000\000\000\193\000\000\000\205\000\000\000\000\000\194\000\000\001\220\000\000\000\204\000\000\000\000\000\000\000\000\000\186\000\000\000\000\000\207\000\000\000\187\000\186\000\202\000\000\000\195\000\000\000\187\000\203\000\186\000\205\000\195\000\186\000\000\000\187\004+\000\000\000\187\000\195\000\000\000\000\000\195\000\186\000\202\000\000\000\207\000\000\000\187\000\000\000\186\000\202\000\195\000\000\000\203\000\187\000\204\000\000\000\000\000\195\000\201\000\202\000\186\000\000\000\193\000\000\000\201\000\187\000\202\000\194\000\000\000\195\000\000\000\201\000\203\000\205\000\201\000\000\000\000\000\000\004-\000\203\000\000\000\000\000\000\000\000\000\201\000\000\000\000\000\000\000\207\000\203\000\000\000\201\000\000\000\000\000\000\000\193\000\203\000\000\000\209\000\000\000\194\000\000\000\193\000\201\000\000\000\000\000\000\000\194\000\000\000\228\000\000\000\000\000\000\000\000\000\000\000\193\000\000\000\000\000\209\000\000\000\194\000\186\000\000\000\000\000\000\000\209\000\187\000\000\000\193\000\230\000\195\000\000\000\202\000\194\000\193\000\209\000\240\000\000\000\202\000\194\000\000\000\000\000\209\000\000\000\000\000\202\000\242\000\193\000\202\000\000\000\000\000\000\000\194\000\244\000\186\000\000\000\000\000\000\000\202\000\187\000\000\000\186\000\203\000\195\000\201\000\202\000\187\000\000\000\203\000\000\000\195\000\000\000\000\000\000\000\186\000\203\000\000\000\202\000\203\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\000\000\186\000\203\000\000\000\000\000\000\000\187\000\186\000\000\000\203\000\195\000\201\000\187\000\000\000\000\000\000\000\195\000\000\000\201\000\000\000\186\000\203\000\209\000\000\000\000\000\187\000\000\000\193\000\209\000\195\000\000\000\201\000\194\000\246\000\000\000\209\000\000\000\000\000\209\000\248\000\193\000\000\000\193\000\000\000\201\000\194\000\250\000\194\000\209\000\252\000\201\000\000\000\202\000\000\000\000\000\209\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\201\000\000\000\000\001\000\000\209\000\193\000\000\000\000\000\000\000\000\000\194\000\000\000\000\000\000\000\000\001\002\000\000\000\000\000\000\000\203\000\000\000\000\000\202\000\186\000\000\000\000\000\000\000\000\000\187\000\202\000\000\000\000\000\195\000\000\000\000\000\000\000\186\000\000\000\186\000\000\000\000\000\187\000\202\000\187\000\193\000\195\000\000\000\195\000\000\000\194\000\000\000\000\000\203\000\000\000\000\000\202\000\000\000\000\000\193\000\203\000\000\000\202\000\000\000\194\000\186\000\209\000\201\000\000\000\000\000\187\000\000\000\000\000\203\000\195\000\202\000\193\001\004\000\193\000\000\000\201\000\194\000\201\000\194\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\193\000\000\000\000\000\209\000\000\000\194\000\000\000\000\000\186\000\203\000\209\000\000\000\201\000\187\001\006\000\193\000\000\000\195\000\000\000\000\000\194\001\b\000\186\000\209\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\193\001\n\000\193\000\209\000\000\000\194\000\186\000\194\000\186\000\209\000\000\000\187\000\202\000\187\001\012\000\195\000\000\000\195\000\201\000\000\001\014\000\000\000\209\000\000\000\000\000\202\000\186\000\202\000\000\000\000\000\000\000\187\000\201\001\232\000\000\000\195\000\000\000\000\000\000\000\000\000\000\000\186\000\203\000\000\000\000\000\000\000\187\000\000\000\000\000\201\000\195\000\201\000\000\000\202\000\000\000\203\000\000\000\203\000\000\000\186\000\193\000\186\000\193\000\000\000\187\000\194\000\187\000\194\000\195\000\201\000\195\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\203\000\201\000\000\000\000\000\194\000\209\000\000\000\000\000\000\000\202\000\000\000\000\000\193\000\000\000\000\000\000\001\238\000\194\000\209\000\201\000\209\000\201\000\000\000\202\000\000\000\000\000\000\000\000\000\000\001\240\000\193\001\242\000\000\000\000\000\000\000\194\000\186\000\000\000\186\000\203\000\202\000\187\000\202\000\187\000\193\000\195\000\209\000\195\000\000\000\194\000\000\000\000\000\000\000\203\000\000\000\000\000\000\001\244\000\186\000\000\000\202\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\203\000\186\000\203\000\000\000\000\000\202\000\187\000\000\000\000\000\201\000\195\000\201\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\186\000\203\000\000\000\000\000\202\000\187\000\202\001\246\000\193\000\195\000\209\000\000\000\201\000\194\000\186\000\000\000\203\000\000\000\000\000\187\000\000\001\248\000\000\000\195\000\000\000\201\000\000\000\209\000\000\000\209\000\000\000\000\000\000\000\000\000\203\000\000\000\203\000\000\001\250\000\193\001\252\000\193\000\000\000\201\000\194\000\000\000\194\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\193\000\193\000\201\001\254\000\000\000\194\000\194\000\209\000\000\000\202\000\000\000\202\000\186\000\000\000\000\000\000\000\000\000\187\002\000\000\000\000\000\000\195\000\000\000\000\000\000\000\209\000\000\000\209\000\000\000\000\000\000\000\202\000\000\000\000\000\000\000\000\002\002\000\000\002\004\000\203\000\000\000\203\000\000\000\186\000\202\000\186\000\000\000\000\000\187\000\000\000\187\000\193\000\195\000\193\000\195\000\201\000\194\000\000\000\194\000\186\000\186\000\203\000\202\000\000\000\187\000\187\000\193\000\000\000\195\000\195\000\000\000\194\000\000\000\000\000\203\000\000\000\202\000\000\000\193\000\000\000\000\000\000\000\000\000\194\000\000\000\209\000\201\000\209\000\201\000\000\000\000\000\000\000\203\000\000\000\000\000\000\002\006\000\000\003\141\000\000\000\000\000\000\000\201\000\201\000\000\000\000\000\203\000\209\000\000\000\000\000\186\000\193\000\186\000\000\000\000\000\187\000\194\000\187\003\143\000\195\000\209\000\195\000\000\000\000\000\000\000\186\000\000\000\000\000\000\000\202\000\187\003\145\000\000\000\000\000\195\000\000\000\000\000\186\000\209\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\000\000\000\000\003\147\000\000\000\000\000\209\000\201\000\000\000\201\000\193\000\000\000\000\000\203\000\202\000\194\000\202\003\149\000\193\000\000\000\193\000\000\000\201\000\194\000\186\000\194\000\000\000\000\000\000\000\187\000\202\000\202\000\000\000\195\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\203\000\000\000\000\000\000\000\000\000\193\000\000\000\000\000\000\000\000\000\194\000\000\000\000\000\209\000\203\000\203\000\000\000\000\000\000\000\000\000\000\000\201\000\000\000\186\003\151\000\193\000\000\000\000\000\187\000\000\000\194\000\186\000\195\000\186\000\000\000\202\000\187\000\202\000\187\000\000\000\195\000\000\000\195\000\000\000\209\000\000\000\209\000\000\000\000\000\000\000\202\000\000\000\000\000\193\000\000\003\153\000\000\003\155\000\194\000\000\000\209\000\209\000\202\000\000\000\186\000\203\000\201\000\203\000\000\000\187\000\000\003\157\003\159\000\195\000\201\000\000\000\201\000\193\000\000\000\000\000\203\000\000\000\194\000\000\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\203\000\195\000\193\000\202\000\000\000\193\000\000\000\194\000\193\000\000\000\194\000\000\000\000\000\194\000\000\000\201\000\000\000\000\000\000\000\209\000\186\000\209\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\195\003\161\000\000\003\163\000\203\000\209\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\186\003\165\000\209\000\193\000\202\000\187\000\000\000\000\000\194\000\195\000\000\000\000\000\202\003\167\000\202\000\000\000\000\000\186\000\000\000\201\000\186\000\000\000\187\000\186\000\000\000\187\000\195\000\000\000\187\000\195\000\000\000\000\000\195\000\000\000\203\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\203\000\201\000\203\000\202\0048\000\193\000\000\000\000\000\000\000\000\000\194\000\000\000\193\000\000\000\000\000\000\000\000\000\194\000\201\000\000\000\186\000\201\000\000\000\202\000\201\000\187\000\000\000\000\000\000\000\195\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\209\004>\000\000\000\202\000\000\000\203\000\000\000\000\000\000\004@\000\000\004B\000\000\000\000\000\000\000\201\000\186\000\000\000\000\000\000\000\000\000\187\000\000\000\186\000\000\000\195\000\000\000\202\000\187\000\000\000\000\000\209\000\195\000\203\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004D\000\000\000\202\000\000\000\000\000\202\000\000\000\000\000\202\000\209\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\201\000\000\000\000\004F\000\000\000\000\000\000\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\203\000\000\000\209\000\203\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\202\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\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004J\000\000\000\000\000\000\000\000\000\203\000\209\000\000\000\000\000\209\000\000\000\000\000\209\000\000\000\000\000\000\000\000\004L\000\000\000\202\004N\000\000\000\000\004P\000\000\000\000\000\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\000\000\000\203\000\000\000\209\000\000\000\000\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\000\004R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\004T\000\000\000\000\000\000\000\000\000\000\000\000\004V")) let semantic_action = [| @@ -1635,9 +1644,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 1987 "parser_cocci_menhir.mly" +# 2067 "parser_cocci_menhir.mly" ( Ast0.set_arg_exp _1 ) -# 1641 "parser_cocci_menhir.ml" +# 1650 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1658,12 +1667,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 70 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 1662 "parser_cocci_menhir.ml" +# 1671 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 1989 "parser_cocci_menhir.mly" +# 2069 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -1672,7 +1681,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)) ) -# 1676 "parser_cocci_menhir.ml" +# 1685 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1694,9 +1703,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_aexpr = -# 1998 "parser_cocci_menhir.mly" +# 2078 "parser_cocci_menhir.mly" ( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) ) -# 1700 "parser_cocci_menhir.ml" +# 1709 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1716,9 +1725,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2034 "parser_cocci_menhir.mly" +# 2114 "parser_cocci_menhir.mly" ( Ast.WhenAny ) -# 1722 "parser_cocci_menhir.ml" +# 1731 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1738,9 +1747,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2035 "parser_cocci_menhir.mly" +# 2115 "parser_cocci_menhir.mly" ( Ast.WhenStrict ) -# 1744 "parser_cocci_menhir.ml" +# 1753 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1760,9 +1769,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2036 "parser_cocci_menhir.mly" +# 2116 "parser_cocci_menhir.mly" ( Ast.WhenForall ) -# 1766 "parser_cocci_menhir.ml" +# 1775 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1782,9 +1791,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_any_strict = -# 2037 "parser_cocci_menhir.mly" +# 2117 "parser_cocci_menhir.mly" ( Ast.WhenExists ) -# 1788 "parser_cocci_menhir.ml" +# 1797 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1806,9 +1815,289 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arith_expr_eexpr_dot_expressions_ = -# 1328 "parser_cocci_menhir.mly" +# 1349 "parser_cocci_menhir.mly" ( _1 ) -# 1812 "parser_cocci_menhir.ml" +# 1821 "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_bis = Obj.magic _3 in + let _2 : ( +# 103 "parser_cocci_menhir.mly" + (Data.clt) +# 1853 "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_ = +# 1351 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Mul _1 _2 _3 ) +# 1861 "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_bis = Obj.magic _3 in + let _2 : ( +# 101 "parser_cocci_menhir.mly" + (Ast_cocci.arithOp * Data.clt) +# 1893 "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_ = +# 1353 "parser_cocci_menhir.mly" + ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) +# 1901 "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_bis = Obj.magic _3 in + let _2 : ( +# 102 "parser_cocci_menhir.mly" + (Data.clt) +# 1933 "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_ = +# 1355 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Plus _1 _2 _3 ) +# 1941 "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_bis = Obj.magic _3 in + let _2 : ( +# 102 "parser_cocci_menhir.mly" + (Data.clt) +# 1973 "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_ = +# 1357 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Minus _1 _2 _3 ) +# 1981 "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_bis = Obj.magic _3 in + let _2 : ( +# 100 "parser_cocci_menhir.mly" + (Ast_cocci.arithOp * Data.clt) +# 2013 "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_ = +# 1359 "parser_cocci_menhir.mly" + ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) +# 2021 "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_bis = Obj.magic _3 in + let _2 : ( +# 100 "parser_cocci_menhir.mly" + (Ast_cocci.arithOp * Data.clt) +# 2053 "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_ = +# 1361 "parser_cocci_menhir.mly" + ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) +# 2061 "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_bis = Obj.magic _3 in + let _2 : ( +# 99 "parser_cocci_menhir.mly" + (Ast_cocci.logicalOp * Data.clt) +# 2093 "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_ = +# 1363 "parser_cocci_menhir.mly" + ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) +# 2101 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1836,19 +2125,323 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( -# 103 "parser_cocci_menhir.mly" +# 98 "parser_cocci_menhir.mly" + (Data.clt) +# 2133 "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_ = +# 1365 "parser_cocci_menhir.mly" + ( P.logic_op Ast.Eq _1 _2 _3 ) +# 2141 "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_bis = Obj.magic _3 in + let _2 : ( +# 98 "parser_cocci_menhir.mly" + (Data.clt) +# 2173 "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_ = +# 1367 "parser_cocci_menhir.mly" + ( P.logic_op Ast.NotEq _1 _2 _3 ) +# 2181 "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_bis = Obj.magic _3 in + let _2 : ( +# 97 "parser_cocci_menhir.mly" + (Data.clt) +# 2213 "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_ = +# 1369 "parser_cocci_menhir.mly" + ( P.arith_op Ast.And _1 _2 _3 ) +# 2221 "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_bis = Obj.magic _3 in + let _2 : ( +# 95 "parser_cocci_menhir.mly" + (Data.clt) +# 2253 "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_ = +# 1371 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Or _1 _2 _3 ) +# 2261 "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_bis = Obj.magic _3 in + let _2 : ( +# 96 "parser_cocci_menhir.mly" + (Data.clt) +# 2293 "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_ = +# 1373 "parser_cocci_menhir.mly" + ( P.arith_op Ast.Xor _1 _2 _3 ) +# 2301 "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_bis = Obj.magic _3 in + let _2 : ( +# 94 "parser_cocci_menhir.mly" + (Data.clt) +# 2333 "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_ = +# 1375 "parser_cocci_menhir.mly" + ( P.logic_op Ast.AndLog _1 _2 _3 ) +# 2341 "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_bis = Obj.magic _3 in + let _2 : ( +# 93 "parser_cocci_menhir.mly" (Data.clt) -# 1844 "parser_cocci_menhir.ml" +# 2373 "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_ = -# 1330 "parser_cocci_menhir.mly" +# 1377 "parser_cocci_menhir.mly" + ( P.logic_op Ast.OrLog _1 _2 _3 ) +# 2381 "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 : 'tv_cast_expr_eexpr_invalid_ = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__1_ in + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1349 "parser_cocci_menhir.mly" + ( _1 ) +# 2405 "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_bis = Obj.magic _3 in + let _2 : ( +# 103 "parser_cocci_menhir.mly" + (Data.clt) +# 2437 "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_ = +# 1351 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) -# 1852 "parser_cocci_menhir.ml" +# 2445 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1876,19 +2469,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 101 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 1884 "parser_cocci_menhir.ml" +# 2477 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1332 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1353 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 1892 "parser_cocci_menhir.ml" +# 2485 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1916,19 +2509,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 1924 "parser_cocci_menhir.ml" +# 2517 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1334 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1355 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) -# 1932 "parser_cocci_menhir.ml" +# 2525 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1956,19 +2549,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 1964 "parser_cocci_menhir.ml" +# 2557 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1336 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1357 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) -# 1972 "parser_cocci_menhir.ml" +# 2565 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -1996,19 +2589,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 2004 "parser_cocci_menhir.ml" +# 2597 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1338 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1359 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 2012 "parser_cocci_menhir.ml" +# 2605 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2036,19 +2629,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 2044 "parser_cocci_menhir.ml" +# 2637 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1340 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1361 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 2052 "parser_cocci_menhir.ml" +# 2645 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2076,19 +2669,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 99 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) -# 2084 "parser_cocci_menhir.ml" +# 2677 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1342 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1363 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) -# 2092 "parser_cocci_menhir.ml" +# 2685 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2116,19 +2709,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 2124 "parser_cocci_menhir.ml" +# 2717 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1344 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1365 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) -# 2132 "parser_cocci_menhir.ml" +# 2725 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2156,19 +2749,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 2164 "parser_cocci_menhir.ml" +# 2757 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1346 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1367 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) -# 2172 "parser_cocci_menhir.ml" +# 2765 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2196,19 +2789,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 2204 "parser_cocci_menhir.ml" +# 2797 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1348 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1369 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) -# 2212 "parser_cocci_menhir.ml" +# 2805 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2236,19 +2829,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 95 "parser_cocci_menhir.mly" (Data.clt) -# 2244 "parser_cocci_menhir.ml" +# 2837 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1350 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1371 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) -# 2252 "parser_cocci_menhir.ml" +# 2845 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2276,19 +2869,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 96 "parser_cocci_menhir.mly" (Data.clt) -# 2284 "parser_cocci_menhir.ml" +# 2877 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1352 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1373 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) -# 2292 "parser_cocci_menhir.ml" +# 2885 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2316,19 +2909,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 94 "parser_cocci_menhir.mly" (Data.clt) -# 2324 "parser_cocci_menhir.ml" +# 2917 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1354 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1375 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) -# 2332 "parser_cocci_menhir.ml" +# 2925 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2356,19 +2949,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 93 "parser_cocci_menhir.mly" (Data.clt) -# 2364 "parser_cocci_menhir.ml" +# 2957 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 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_dot_expressions_ = -# 1356 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_invalid_ = +# 1377 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) -# 2372 "parser_cocci_menhir.ml" +# 2965 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2386,13 +2979,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.endp = _endpos__1_; MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in - let _1 : 'tv_cast_expr_eexpr_invalid_ = Obj.magic _1 in + let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in - let _v : 'tv_arith_expr_eexpr_invalid_ = -# 1328 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1349 "parser_cocci_menhir.mly" ( _1 ) -# 2396 "parser_cocci_menhir.ml" +# 2989 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2420,19 +3013,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 2428 "parser_cocci_menhir.ml" +# 3021 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1330 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1351 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) -# 2436 "parser_cocci_menhir.ml" +# 3029 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2460,19 +3053,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 101 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 2468 "parser_cocci_menhir.ml" +# 3061 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1332 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1353 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 2476 "parser_cocci_menhir.ml" +# 3069 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2500,19 +3093,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 2508 "parser_cocci_menhir.ml" +# 3101 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1334 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1355 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) -# 2516 "parser_cocci_menhir.ml" +# 3109 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2540,19 +3133,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 2548 "parser_cocci_menhir.ml" +# 3141 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1336 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1357 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) -# 2556 "parser_cocci_menhir.ml" +# 3149 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2580,19 +3173,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 2588 "parser_cocci_menhir.ml" +# 3181 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1338 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1359 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 2596 "parser_cocci_menhir.ml" +# 3189 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2620,19 +3213,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 2628 "parser_cocci_menhir.ml" +# 3221 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1340 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1361 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 2636 "parser_cocci_menhir.ml" +# 3229 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2660,19 +3253,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 99 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) -# 2668 "parser_cocci_menhir.ml" +# 3261 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1342 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1363 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) -# 2676 "parser_cocci_menhir.ml" +# 3269 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2700,19 +3293,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 2708 "parser_cocci_menhir.ml" +# 3301 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1344 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1365 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) -# 2716 "parser_cocci_menhir.ml" +# 3309 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2740,19 +3333,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 2748 "parser_cocci_menhir.ml" +# 3341 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1346 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1367 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) -# 2756 "parser_cocci_menhir.ml" +# 3349 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2780,19 +3373,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 2788 "parser_cocci_menhir.ml" +# 3381 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1348 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1369 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) -# 2796 "parser_cocci_menhir.ml" +# 3389 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2820,19 +3413,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 95 "parser_cocci_menhir.mly" (Data.clt) -# 2828 "parser_cocci_menhir.ml" +# 3421 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1350 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1371 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) -# 2836 "parser_cocci_menhir.ml" +# 3429 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2860,19 +3453,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 96 "parser_cocci_menhir.mly" (Data.clt) -# 2868 "parser_cocci_menhir.ml" +# 3461 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1352 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1373 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) -# 2876 "parser_cocci_menhir.ml" +# 3469 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2900,19 +3493,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 94 "parser_cocci_menhir.mly" (Data.clt) -# 2908 "parser_cocci_menhir.ml" +# 3501 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1354 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1375 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) -# 2916 "parser_cocci_menhir.ml" +# 3509 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2940,19 +3533,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 93 "parser_cocci_menhir.mly" (Data.clt) -# 2948 "parser_cocci_menhir.ml" +# 3541 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 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_invalid_ = -# 1356 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_eexpr_nest_expressions_ = +# 1377 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) -# 2956 "parser_cocci_menhir.ml" +# 3549 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -2970,13 +3563,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.endp = _endpos__1_; MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in - let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in + let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in - let _v : 'tv_arith_expr_eexpr_nest_expressions_ = -# 1328 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1349 "parser_cocci_menhir.mly" ( _1 ) -# 2980 "parser_cocci_menhir.ml" +# 3573 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3004,19 +3597,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 3012 "parser_cocci_menhir.ml" +# 3605 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1330 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1351 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) -# 3020 "parser_cocci_menhir.ml" +# 3613 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3044,19 +3637,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 101 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3052 "parser_cocci_menhir.ml" +# 3645 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1332 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1353 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3060 "parser_cocci_menhir.ml" +# 3653 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3084,19 +3677,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 3092 "parser_cocci_menhir.ml" +# 3685 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1334 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1355 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) -# 3100 "parser_cocci_menhir.ml" +# 3693 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3124,19 +3717,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 3132 "parser_cocci_menhir.ml" +# 3725 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1336 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1357 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) -# 3140 "parser_cocci_menhir.ml" +# 3733 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3164,19 +3757,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3172 "parser_cocci_menhir.ml" +# 3765 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1338 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1359 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3180 "parser_cocci_menhir.ml" +# 3773 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3204,19 +3797,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3212 "parser_cocci_menhir.ml" +# 3805 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1340 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1361 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3220 "parser_cocci_menhir.ml" +# 3813 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3244,19 +3837,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 99 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) -# 3252 "parser_cocci_menhir.ml" +# 3845 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1342 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1363 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) -# 3260 "parser_cocci_menhir.ml" +# 3853 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3284,19 +3877,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 3292 "parser_cocci_menhir.ml" +# 3885 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1344 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1365 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) -# 3300 "parser_cocci_menhir.ml" +# 3893 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3324,19 +3917,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 3332 "parser_cocci_menhir.ml" +# 3925 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1346 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1367 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) -# 3340 "parser_cocci_menhir.ml" +# 3933 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3364,19 +3957,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 3372 "parser_cocci_menhir.ml" +# 3965 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1348 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1369 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) -# 3380 "parser_cocci_menhir.ml" +# 3973 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3404,19 +3997,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 95 "parser_cocci_menhir.mly" (Data.clt) -# 3412 "parser_cocci_menhir.ml" +# 4005 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1350 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1371 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) -# 3420 "parser_cocci_menhir.ml" +# 4013 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3444,19 +4037,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 96 "parser_cocci_menhir.mly" (Data.clt) -# 3452 "parser_cocci_menhir.ml" +# 4045 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1352 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1373 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) -# 3460 "parser_cocci_menhir.ml" +# 4053 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3484,19 +4077,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 94 "parser_cocci_menhir.mly" (Data.clt) -# 3492 "parser_cocci_menhir.ml" +# 4085 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1354 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1375 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) -# 3500 "parser_cocci_menhir.ml" +# 4093 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3524,19 +4117,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 93 "parser_cocci_menhir.mly" (Data.clt) -# 3532 "parser_cocci_menhir.ml" +# 4125 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 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_eexpr_nest_expressions_ = -# 1356 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_expr_invalid_ = +# 1377 "parser_cocci_menhir.mly" ( P.logic_op Ast.OrLog _1 _2 _3 ) -# 3540 "parser_cocci_menhir.ml" +# 4133 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3554,13 +4147,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.endp = _endpos__1_; MenhirLib.EngineTypes.next = _menhir_stack; } = _menhir_stack in - let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1328 "parser_cocci_menhir.mly" - ( _1 ) -# 3564 "parser_cocci_menhir.ml" + let _v : 'tv_arith_expr_bis = +# 1382 "parser_cocci_menhir.mly" + ( _1 ) +# 4157 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3588,19 +4181,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 3596 "parser_cocci_menhir.ml" +# 4189 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1330 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1384 "parser_cocci_menhir.mly" ( P.arith_op Ast.Mul _1 _2 _3 ) -# 3604 "parser_cocci_menhir.ml" +# 4197 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3628,19 +4221,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 101 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3636 "parser_cocci_menhir.ml" +# 4229 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1332 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1386 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3644 "parser_cocci_menhir.ml" +# 4237 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3668,19 +4261,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 3676 "parser_cocci_menhir.ml" +# 4269 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1334 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1388 "parser_cocci_menhir.mly" ( P.arith_op Ast.Plus _1 _2 _3 ) -# 3684 "parser_cocci_menhir.ml" +# 4277 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3708,19 +4301,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 3716 "parser_cocci_menhir.ml" +# 4309 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1336 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1390 "parser_cocci_menhir.mly" ( P.arith_op Ast.Minus _1 _2 _3 ) -# 3724 "parser_cocci_menhir.ml" +# 4317 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3748,19 +4341,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3756 "parser_cocci_menhir.ml" +# 4349 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1338 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1392 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3764 "parser_cocci_menhir.ml" +# 4357 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3788,19 +4381,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 100 "parser_cocci_menhir.mly" (Ast_cocci.arithOp * Data.clt) -# 3796 "parser_cocci_menhir.ml" +# 4389 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1340 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1394 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.arith_op op _1 clt _3 ) -# 3804 "parser_cocci_menhir.ml" +# 4397 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3828,19 +4421,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 99 "parser_cocci_menhir.mly" (Ast_cocci.logicalOp * Data.clt) -# 3836 "parser_cocci_menhir.ml" +# 4429 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1342 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1396 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in P.logic_op op _1 clt _3 ) -# 3844 "parser_cocci_menhir.ml" +# 4437 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3868,19 +4461,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 3876 "parser_cocci_menhir.ml" +# 4469 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1344 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1398 "parser_cocci_menhir.mly" ( P.logic_op Ast.Eq _1 _2 _3 ) -# 3884 "parser_cocci_menhir.ml" +# 4477 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3908,19 +4501,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 98 "parser_cocci_menhir.mly" (Data.clt) -# 3916 "parser_cocci_menhir.ml" +# 4509 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1346 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1400 "parser_cocci_menhir.mly" ( P.logic_op Ast.NotEq _1 _2 _3 ) -# 3924 "parser_cocci_menhir.ml" +# 4517 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3948,19 +4541,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 3956 "parser_cocci_menhir.ml" +# 4549 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1348 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1402 "parser_cocci_menhir.mly" ( P.arith_op Ast.And _1 _2 _3 ) -# 3964 "parser_cocci_menhir.ml" +# 4557 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -3988,19 +4581,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 95 "parser_cocci_menhir.mly" (Data.clt) -# 3996 "parser_cocci_menhir.ml" +# 4589 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1350 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1404 "parser_cocci_menhir.mly" ( P.arith_op Ast.Or _1 _2 _3 ) -# 4004 "parser_cocci_menhir.ml" +# 4597 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4028,19 +4621,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 96 "parser_cocci_menhir.mly" (Data.clt) -# 4036 "parser_cocci_menhir.ml" +# 4629 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1352 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1406 "parser_cocci_menhir.mly" ( P.arith_op Ast.Xor _1 _2 _3 ) -# 4044 "parser_cocci_menhir.ml" +# 4637 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4068,59 +4661,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in + let _3 : 'tv_arith_expr_bis = Obj.magic _3 in let _2 : ( # 94 "parser_cocci_menhir.mly" (Data.clt) -# 4076 "parser_cocci_menhir.ml" +# 4669 "parser_cocci_menhir.ml" ) = Obj.magic _2 in - let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in + let _1 : 'tv_arith_expr_bis = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in - let _v : 'tv_arith_expr_expr_invalid_ = -# 1354 "parser_cocci_menhir.mly" + let _v : 'tv_arith_expr_bis = +# 1408 "parser_cocci_menhir.mly" ( P.logic_op Ast.AndLog _1 _2 _3 ) -# 4084 "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 : ( -# 93 "parser_cocci_menhir.mly" - (Data.clt) -# 4116 "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_ = -# 1356 "parser_cocci_menhir.mly" - ( P.logic_op Ast.OrLog _1 _2 _3 ) -# 4124 "parser_cocci_menhir.ml" +# 4677 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4140,9 +4693,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 521 "parser_cocci_menhir.mly" +# 526 "parser_cocci_menhir.mly" ( Ast.UNIQUE ) -# 4146 "parser_cocci_menhir.ml" +# 4699 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4162,9 +4715,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 522 "parser_cocci_menhir.mly" +# 527 "parser_cocci_menhir.mly" ( Ast.OPT ) -# 4168 "parser_cocci_menhir.ml" +# 4721 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4184,9 +4737,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_arity = -# 523 "parser_cocci_menhir.mly" +# 528 "parser_cocci_menhir.mly" ( Ast.MULTI ) -# 4190 "parser_cocci_menhir.ml" +# 4743 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4201,9 +4754,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 = -# 524 "parser_cocci_menhir.mly" +# 529 "parser_cocci_menhir.mly" ( Ast.NONE ) -# 4207 "parser_cocci_menhir.ml" +# 4760 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4234,20 +4787,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 4238 "parser_cocci_menhir.ml" +# 4791 "parser_cocci_menhir.ml" ) = Obj.magic r in let i : 'tv_option_eexpr_ = Obj.magic i in let l : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 4244 "parser_cocci_menhir.ml" +# 4797 "parser_cocci_menhir.ml" ) = Obj.magic l in let _startpos = _startpos_l_ in let _endpos = _endpos_r_ in let _v : 'tv_array_dec = -# 1155 "parser_cocci_menhir.mly" +# 1174 "parser_cocci_menhir.mly" ( (l,i,r) ) -# 4251 "parser_cocci_menhir.ml" +# 4804 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4269,9 +4822,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_ = -# 1300 "parser_cocci_menhir.mly" +# 1321 "parser_cocci_menhir.mly" ( _1 ) -# 4275 "parser_cocci_menhir.ml" +# 4828 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4303,17 +4856,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) -# 4307 "parser_cocci_menhir.ml" +# 4860 "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_ = -# 1302 "parser_cocci_menhir.mly" +# 1323 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) -# 4317 "parser_cocci_menhir.ml" +# 4870 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4345,17 +4898,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 4349 "parser_cocci_menhir.ml" +# 4902 "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_ = -# 1306 "parser_cocci_menhir.mly" +# 1327 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) -# 4359 "parser_cocci_menhir.ml" +# 4912 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4377,9 +4930,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_ = -# 1300 "parser_cocci_menhir.mly" +# 1321 "parser_cocci_menhir.mly" ( _1 ) -# 4383 "parser_cocci_menhir.ml" +# 4936 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4411,17 +4964,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) -# 4415 "parser_cocci_menhir.ml" +# 4968 "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_ = -# 1302 "parser_cocci_menhir.mly" +# 1323 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) -# 4425 "parser_cocci_menhir.ml" +# 4978 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4453,17 +5006,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 4457 "parser_cocci_menhir.ml" +# 5010 "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_ = -# 1306 "parser_cocci_menhir.mly" +# 1327 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) -# 4467 "parser_cocci_menhir.ml" +# 5020 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4485,9 +5038,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_expr_invalid_ = -# 1300 "parser_cocci_menhir.mly" +# 1321 "parser_cocci_menhir.mly" ( _1 ) -# 4491 "parser_cocci_menhir.ml" +# 5044 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4519,17 +5072,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) -# 4523 "parser_cocci_menhir.ml" +# 5076 "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_ = -# 1302 "parser_cocci_menhir.mly" +# 1323 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) -# 4533 "parser_cocci_menhir.ml" +# 5086 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4561,17 +5114,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 4565 "parser_cocci_menhir.ml" +# 5118 "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_ = -# 1306 "parser_cocci_menhir.mly" +# 1327 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) -# 4575 "parser_cocci_menhir.ml" +# 5128 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4593,9 +5146,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_assign_expr_bis = -# 1311 "parser_cocci_menhir.mly" +# 1332 "parser_cocci_menhir.mly" ( _1 ) -# 4599 "parser_cocci_menhir.ml" +# 5152 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4627,17 +5180,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 112 "parser_cocci_menhir.mly" (Ast_cocci.assignOp * Data.clt) -# 4631 "parser_cocci_menhir.ml" +# 5184 "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 = -# 1313 "parser_cocci_menhir.mly" +# 1334 "parser_cocci_menhir.mly" ( let (op,clt) = _2 in Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt, Ast0.set_arg_exp _3,false)) ) -# 4641 "parser_cocci_menhir.ml" +# 5194 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4669,17 +5222,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 4673 "parser_cocci_menhir.ml" +# 5226 "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 = -# 1317 "parser_cocci_menhir.mly" +# 1338 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Assignment (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) ) -# 4683 "parser_cocci_menhir.ml" +# 5236 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4701,9 +5254,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_ = -# 1297 "parser_cocci_menhir.mly" +# 1318 "parser_cocci_menhir.mly" ( _1 ) -# 4707 "parser_cocci_menhir.ml" +# 5260 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4725,9 +5278,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_ = -# 1297 "parser_cocci_menhir.mly" +# 1318 "parser_cocci_menhir.mly" ( _1 ) -# 4731 "parser_cocci_menhir.ml" +# 5284 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4749,9 +5302,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_basic_expr_expr_invalid_ = -# 1297 "parser_cocci_menhir.mly" +# 1318 "parser_cocci_menhir.mly" ( _1 ) -# 4755 "parser_cocci_menhir.ml" +# 5308 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4783,20 +5336,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 4787 "parser_cocci_menhir.ml" +# 5340 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 4792 "parser_cocci_menhir.ml" +# 5345 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_case_line = -# 1017 "parser_cocci_menhir.mly" +# 1036 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) ) -# 4800 "parser_cocci_menhir.ml" +# 5353 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4833,20 +5386,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 4837 "parser_cocci_menhir.ml" +# 5390 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 4843 "parser_cocci_menhir.ml" +# 5396 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_case_line = -# 1020 "parser_cocci_menhir.mly" +# 1039 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) ) -# 4850 "parser_cocci_menhir.ml" +# 5403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4868,9 +5421,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_ = -# 1359 "parser_cocci_menhir.mly" +# 1413 "parser_cocci_menhir.mly" ( _1 ) -# 4874 "parser_cocci_menhir.ml" +# 5427 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4907,21 +5460,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 4911 "parser_cocci_menhir.ml" +# 5464 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 4917 "parser_cocci_menhir.ml" +# 5470 "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_ = -# 1361 "parser_cocci_menhir.mly" +# 1415 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) -# 4925 "parser_cocci_menhir.ml" +# 5478 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4943,9 +5496,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_eexpr_invalid_ = -# 1359 "parser_cocci_menhir.mly" +# 1413 "parser_cocci_menhir.mly" ( _1 ) -# 4949 "parser_cocci_menhir.ml" +# 5502 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -4982,21 +5535,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 4986 "parser_cocci_menhir.ml" +# 5539 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 4992 "parser_cocci_menhir.ml" +# 5545 "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_ = -# 1361 "parser_cocci_menhir.mly" +# 1415 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) -# 5000 "parser_cocci_menhir.ml" +# 5553 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5018,9 +5571,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_ = -# 1359 "parser_cocci_menhir.mly" +# 1413 "parser_cocci_menhir.mly" ( _1 ) -# 5024 "parser_cocci_menhir.ml" +# 5577 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5057,21 +5610,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 5061 "parser_cocci_menhir.ml" +# 5614 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5067 "parser_cocci_menhir.ml" +# 5620 "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_ = -# 1361 "parser_cocci_menhir.mly" +# 1415 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) -# 5075 "parser_cocci_menhir.ml" +# 5628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5093,9 +5646,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cast_expr_expr_invalid_ = -# 1359 "parser_cocci_menhir.mly" +# 1413 "parser_cocci_menhir.mly" ( _1 ) -# 5099 "parser_cocci_menhir.ml" +# 5652 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5132,21 +5685,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 5136 "parser_cocci_menhir.ml" +# 5689 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5142 "parser_cocci_menhir.ml" +# 5695 "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_ = -# 1361 "parser_cocci_menhir.mly" +# 1415 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t, P.clt2mcode ")" rp, e)) ) -# 5150 "parser_cocci_menhir.ml" +# 5703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5174,7 +5727,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_choose_iso = # 243 "parser_cocci_menhir.mly" ( List.map P.id2name _2 ) -# 5178 "parser_cocci_menhir.ml" +# 5731 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5196,9 +5749,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_any_strict_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5202 "parser_cocci_menhir.ml" +# 5755 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5220,9 +5773,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_ctype_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5226 "parser_cocci_menhir.ml" +# 5779 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5244,9 +5797,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_d_ident_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5250 "parser_cocci_menhir.ml" +# 5803 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5268,9 +5821,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_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5274 "parser_cocci_menhir.ml" +# 5827 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5292,9 +5845,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_meta_ident_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5298 "parser_cocci_menhir.ml" +# 5851 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5316,9 +5869,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_pure_ident_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5322 "parser_cocci_menhir.ml" +# 5875 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5340,9 +5893,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_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5346 "parser_cocci_menhir.ml" +# 5899 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5364,9 +5917,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__ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5370 "parser_cocci_menhir.ml" +# 5923 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5388,9 +5941,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__ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5394 "parser_cocci_menhir.ml" +# 5947 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5412,9 +5965,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__ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5418 "parser_cocci_menhir.ml" +# 5971 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5436,9 +5989,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__ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5442 "parser_cocci_menhir.ml" +# 5995 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5460,9 +6013,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_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5466 "parser_cocci_menhir.ml" +# 6019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5484,9 +6037,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__ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5490 "parser_cocci_menhir.ml" +# 6043 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5508,9 +6061,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_comma_list_typedef_ident_ = -# 2012 "parser_cocci_menhir.mly" +# 2092 "parser_cocci_menhir.mly" ( _1 ) -# 5514 "parser_cocci_menhir.ml" +# 6067 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5532,9 +6085,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_ = -# 1322 "parser_cocci_menhir.mly" +# 1343 "parser_cocci_menhir.mly" ( _1 ) -# 5538 "parser_cocci_menhir.ml" +# 6091 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5572,26 +6125,26 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let r : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic r in + let r : 'tv_eexpr = Obj.magic r in let dd : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5580 "parser_cocci_menhir.ml" +# 6133 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5586 "parser_cocci_menhir.ml" +# 6139 "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_ = -# 1324 "parser_cocci_menhir.mly" +# 1345 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) -# 5595 "parser_cocci_menhir.ml" +# 6148 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5613,9 +6166,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_ = -# 1322 "parser_cocci_menhir.mly" +# 1343 "parser_cocci_menhir.mly" ( _1 ) -# 5619 "parser_cocci_menhir.ml" +# 6172 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5653,26 +6206,26 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let r : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic r in + let r : 'tv_eexpr = Obj.magic r in let dd : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5661 "parser_cocci_menhir.ml" +# 6214 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5667 "parser_cocci_menhir.ml" +# 6220 "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_ = -# 1324 "parser_cocci_menhir.mly" +# 1345 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) -# 5676 "parser_cocci_menhir.ml" +# 6229 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5694,9 +6247,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_cond_expr_expr_invalid_ = -# 1322 "parser_cocci_menhir.mly" +# 1343 "parser_cocci_menhir.mly" ( _1 ) -# 5700 "parser_cocci_menhir.ml" +# 6253 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5734,26 +6287,26 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct }; }; } = _menhir_stack in - let r : 'tv_cond_expr_expr_invalid_ = Obj.magic r in + let r : 'tv_eexpr = Obj.magic r in let dd : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5742 "parser_cocci_menhir.ml" +# 6295 "parser_cocci_menhir.ml" ) = Obj.magic dd in let t : 'tv_option_eexpr_ = Obj.magic t in let w : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 5748 "parser_cocci_menhir.ml" +# 6301 "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_ = -# 1324 "parser_cocci_menhir.mly" +# 1345 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) ) -# 5757 "parser_cocci_menhir.ml" +# 6310 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5774,14 +6327,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 57 "parser_cocci_menhir.mly" (Data.clt) -# 5778 "parser_cocci_menhir.ml" +# 6331 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_const_vol = -# 926 "parser_cocci_menhir.mly" +# 945 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Const _1 ) -# 5785 "parser_cocci_menhir.ml" +# 6338 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5802,14 +6355,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 57 "parser_cocci_menhir.mly" (Data.clt) -# 5806 "parser_cocci_menhir.ml" +# 6359 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_const_vol = -# 927 "parser_cocci_menhir.mly" +# 946 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Volatile _1 ) -# 5813 "parser_cocci_menhir.ml" +# 6366 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5831,9 +6384,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 5837 "parser_cocci_menhir.ml" +# 6390 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5859,16 +6412,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 5863 "parser_cocci_menhir.ml" +# 6416 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_aexpr = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 5872 "parser_cocci_menhir.ml" +# 6425 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5900,17 +6453,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 5904 "parser_cocci_menhir.ml" +# 6457 "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_continue_list_aexpr_TEllipsis_ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 5914 "parser_cocci_menhir.ml" +# 6467 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5936,9 +6489,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_aexpr_TEllipsis_ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 5942 "parser_cocci_menhir.ml" +# 6495 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5960,9 +6513,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 5966 "parser_cocci_menhir.ml" +# 6519 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -5988,16 +6541,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 5992 "parser_cocci_menhir.ml" +# 6545 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_dparam = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 6001 "parser_cocci_menhir.ml" +# 6554 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6029,17 +6582,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6033 "parser_cocci_menhir.ml" +# 6586 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_dparam = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 6043 "parser_cocci_menhir.ml" +# 6596 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6065,9 +6618,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_dparam_TEllipsis_ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 6071 "parser_cocci_menhir.ml" +# 6624 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6089,9 +6642,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 6095 "parser_cocci_menhir.ml" +# 6648 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6117,16 +6670,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6121 "parser_cocci_menhir.ml" +# 6674 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_enum_decl_one = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 6130 "parser_cocci_menhir.ml" +# 6683 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6158,17 +6711,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6162 "parser_cocci_menhir.ml" +# 6715 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_enum_decl_one = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 6172 "parser_cocci_menhir.ml" +# 6725 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6194,9 +6747,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 6200 "parser_cocci_menhir.ml" +# 6753 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6218,9 +6771,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 6224 "parser_cocci_menhir.ml" +# 6777 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6246,16 +6799,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6250 "parser_cocci_menhir.ml" +# 6803 "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_continue_list_initialize2_edots_when_TEllipsis_initialize__ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 6259 "parser_cocci_menhir.ml" +# 6812 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6287,17 +6840,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6291 "parser_cocci_menhir.ml" +# 6844 "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_continue_list_initialize2_edots_when_TEllipsis_initialize__ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 6301 "parser_cocci_menhir.ml" +# 6854 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6323,9 +6876,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 6329 "parser_cocci_menhir.ml" +# 6882 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6347,9 +6900,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 6353 "parser_cocci_menhir.ml" +# 6906 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6375,16 +6928,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6379 "parser_cocci_menhir.ml" +# 6932 "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__2_ in let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 6388 "parser_cocci_menhir.ml" +# 6941 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6416,17 +6969,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6420 "parser_cocci_menhir.ml" +# 6973 "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_continue_list_one_dec_decl__TEllipsis_ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 6430 "parser_cocci_menhir.ml" +# 6983 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6452,9 +7005,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 6458 "parser_cocci_menhir.ml" +# 7011 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6476,9 +7029,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = -# 1788 "parser_cocci_menhir.mly" +# 1868 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 6482 "parser_cocci_menhir.ml" +# 7035 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6504,16 +7057,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6508 "parser_cocci_menhir.ml" +# 7061 "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__2_ in let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = -# 1790 "parser_cocci_menhir.mly" +# 1870 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 6517 "parser_cocci_menhir.ml" +# 7070 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6545,17 +7098,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 6549 "parser_cocci_menhir.ml" +# 7102 "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_continue_list_one_dec_name_opt_decl__TEllipsis_ = -# 1793 "parser_cocci_menhir.mly" +# 1873 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 6559 "parser_cocci_menhir.ml" +# 7112 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6581,9 +7134,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = -# 1796 "parser_cocci_menhir.mly" +# 1876 "parser_cocci_menhir.mly" ( _2 ) -# 6587 "parser_cocci_menhir.ml" +# 7140 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6598,9 +7151,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 = -# 660 "parser_cocci_menhir.mly" +# 665 "parser_cocci_menhir.mly" ( [] ) -# 6604 "parser_cocci_menhir.ml" +# 7157 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6628,9 +7181,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_continue_struct_decl_list = -# 661 "parser_cocci_menhir.mly" +# 666 "parser_cocci_menhir.mly" ( _1@_2 ) -# 6634 "parser_cocci_menhir.ml" +# 7187 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6652,9 +7205,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_continue_struct_decl_list = -# 662 "parser_cocci_menhir.mly" +# 667 "parser_cocci_menhir.mly" ( _1 ) -# 6658 "parser_cocci_menhir.ml" +# 7211 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6686,12 +7239,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 6690 "parser_cocci_menhir.ml" +# 7243 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 6695 "parser_cocci_menhir.ml" +# 7248 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -6701,28 +7254,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 6707 "parser_cocci_menhir.ml" +# 7260 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 6713 "parser_cocci_menhir.ml" +# 7266 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 6720 "parser_cocci_menhir.ml" +# 7273 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 6726 "parser_cocci_menhir.ml" +# 7279 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6754,12 +7307,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 6758 "parser_cocci_menhir.ml" +# 7311 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 6763 "parser_cocci_menhir.ml" +# 7316 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -6769,28 +7322,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 6775 "parser_cocci_menhir.ml" +# 7328 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 6781 "parser_cocci_menhir.ml" +# 7334 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 6788 "parser_cocci_menhir.ml" +# 7341 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 6794 "parser_cocci_menhir.ml" +# 7347 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6822,12 +7375,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 6826 "parser_cocci_menhir.ml" +# 7379 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 6831 "parser_cocci_menhir.ml" +# 7384 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -6837,28 +7390,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 6843 "parser_cocci_menhir.ml" +# 7396 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 6849 "parser_cocci_menhir.ml" +# 7402 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 6856 "parser_cocci_menhir.ml" +# 7409 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 6862 "parser_cocci_menhir.ml" +# 7415 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6890,12 +7443,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 6894 "parser_cocci_menhir.ml" +# 7447 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 6899 "parser_cocci_menhir.ml" +# 7452 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -6905,29 +7458,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 6912 "parser_cocci_menhir.ml" +# 7465 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 6918 "parser_cocci_menhir.ml" +# 7471 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 6925 "parser_cocci_menhir.ml" +# 7478 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 6931 "parser_cocci_menhir.ml" +# 7484 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -6968,17 +7521,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 6972 "parser_cocci_menhir.ml" +# 7525 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 6977 "parser_cocci_menhir.ml" +# 7530 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 6982 "parser_cocci_menhir.ml" +# 7535 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -6990,33 +7543,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 7001 "parser_cocci_menhir.ml" +# 7554 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 7007 "parser_cocci_menhir.ml" +# 7560 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7014 "parser_cocci_menhir.ml" +# 7567 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7020 "parser_cocci_menhir.ml" +# 7573 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7048,12 +7601,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7052 "parser_cocci_menhir.ml" +# 7605 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7057 "parser_cocci_menhir.ml" +# 7610 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7063,28 +7616,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 7069 "parser_cocci_menhir.ml" +# 7622 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 7075 "parser_cocci_menhir.ml" +# 7628 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7082 "parser_cocci_menhir.ml" +# 7635 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7088 "parser_cocci_menhir.ml" +# 7641 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7121,17 +7674,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7125 "parser_cocci_menhir.ml" +# 7678 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7130 "parser_cocci_menhir.ml" +# 7683 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7135 "parser_cocci_menhir.ml" +# 7688 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7143,31 +7696,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 7152 "parser_cocci_menhir.ml" +# 7705 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 7158 "parser_cocci_menhir.ml" +# 7711 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7165 "parser_cocci_menhir.ml" +# 7718 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7171 "parser_cocci_menhir.ml" +# 7724 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7199,12 +7752,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7203 "parser_cocci_menhir.ml" +# 7756 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7208 "parser_cocci_menhir.ml" +# 7761 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7214,28 +7767,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 7220 "parser_cocci_menhir.ml" +# 7773 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7226 "parser_cocci_menhir.ml" +# 7779 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7233 "parser_cocci_menhir.ml" +# 7786 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7239 "parser_cocci_menhir.ml" +# 7792 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7267,12 +7820,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7271 "parser_cocci_menhir.ml" +# 7824 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7276 "parser_cocci_menhir.ml" +# 7829 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7282,28 +7835,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 7288 "parser_cocci_menhir.ml" +# 7841 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7294 "parser_cocci_menhir.ml" +# 7847 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7301 "parser_cocci_menhir.ml" +# 7854 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7307 "parser_cocci_menhir.ml" +# 7860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7335,12 +7888,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7339 "parser_cocci_menhir.ml" +# 7892 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7344 "parser_cocci_menhir.ml" +# 7897 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7350,28 +7903,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 7356 "parser_cocci_menhir.ml" +# 7909 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7362 "parser_cocci_menhir.ml" +# 7915 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7369 "parser_cocci_menhir.ml" +# 7922 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7375 "parser_cocci_menhir.ml" +# 7928 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7403,12 +7956,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 7407 "parser_cocci_menhir.ml" +# 7960 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7412 "parser_cocci_menhir.ml" +# 7965 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7418,29 +7971,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 7425 "parser_cocci_menhir.ml" +# 7978 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7431 "parser_cocci_menhir.ml" +# 7984 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7438 "parser_cocci_menhir.ml" +# 7991 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7444 "parser_cocci_menhir.ml" +# 7997 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7481,17 +8034,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 7485 "parser_cocci_menhir.ml" +# 8038 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 7490 "parser_cocci_menhir.ml" +# 8043 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7495 "parser_cocci_menhir.ml" +# 8048 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -7503,33 +8056,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 7514 "parser_cocci_menhir.ml" +# 8067 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7520 "parser_cocci_menhir.ml" +# 8073 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7527 "parser_cocci_menhir.ml" +# 8080 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7533 "parser_cocci_menhir.ml" +# 8086 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7561,12 +8114,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7565 "parser_cocci_menhir.ml" +# 8118 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7570 "parser_cocci_menhir.ml" +# 8123 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7576,28 +8129,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 7582 "parser_cocci_menhir.ml" +# 8135 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7588 "parser_cocci_menhir.ml" +# 8141 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7595 "parser_cocci_menhir.ml" +# 8148 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7601 "parser_cocci_menhir.ml" +# 8154 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7634,17 +8187,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7638 "parser_cocci_menhir.ml" +# 8191 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7643 "parser_cocci_menhir.ml" +# 8196 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 7648 "parser_cocci_menhir.ml" +# 8201 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -7656,31 +8209,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 7665 "parser_cocci_menhir.ml" +# 8218 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 7671 "parser_cocci_menhir.ml" +# 8224 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7678 "parser_cocci_menhir.ml" +# 8231 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7684 "parser_cocci_menhir.ml" +# 8237 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7707,7 +8260,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7711 "parser_cocci_menhir.ml" +# 8264 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -7716,28 +8269,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 7722 "parser_cocci_menhir.ml" +# 8275 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 7728 "parser_cocci_menhir.ml" +# 8281 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7735 "parser_cocci_menhir.ml" +# 8288 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7741 "parser_cocci_menhir.ml" +# 8294 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7764,7 +8317,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7768 "parser_cocci_menhir.ml" +# 8321 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -7773,28 +8326,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 7779 "parser_cocci_menhir.ml" +# 8332 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 7785 "parser_cocci_menhir.ml" +# 8338 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7792 "parser_cocci_menhir.ml" +# 8345 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7798 "parser_cocci_menhir.ml" +# 8351 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7821,7 +8374,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 7825 "parser_cocci_menhir.ml" +# 8378 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -7830,28 +8383,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 7836 "parser_cocci_menhir.ml" +# 8389 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 7842 "parser_cocci_menhir.ml" +# 8395 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7849 "parser_cocci_menhir.ml" +# 8402 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7855 "parser_cocci_menhir.ml" +# 8408 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7878,7 +8431,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 7882 "parser_cocci_menhir.ml" +# 8435 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -7887,29 +8440,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 7894 "parser_cocci_menhir.ml" +# 8447 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 7900 "parser_cocci_menhir.ml" +# 8453 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7907 "parser_cocci_menhir.ml" +# 8460 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7913 "parser_cocci_menhir.ml" +# 8466 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -7945,12 +8498,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 7949 "parser_cocci_menhir.ml" +# 8502 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 7954 "parser_cocci_menhir.ml" +# 8507 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let _startpos = _startpos_r00_ in let _endpos = _endpos_m_ in @@ -7961,33 +8514,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 7972 "parser_cocci_menhir.ml" +# 8525 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 7978 "parser_cocci_menhir.ml" +# 8531 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 7985 "parser_cocci_menhir.ml" +# 8538 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 7991 "parser_cocci_menhir.ml" +# 8544 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8014,7 +8567,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 8018 "parser_cocci_menhir.ml" +# 8571 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8023,28 +8576,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 8029 "parser_cocci_menhir.ml" +# 8582 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 8035 "parser_cocci_menhir.ml" +# 8588 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8042 "parser_cocci_menhir.ml" +# 8595 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8048 "parser_cocci_menhir.ml" +# 8601 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8076,12 +8629,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 8080 "parser_cocci_menhir.ml" +# 8633 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 8085 "parser_cocci_menhir.ml" +# 8638 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let _startpos = _startpos_ty100_ in let _endpos = _endpos_m_ in @@ -8092,31 +8645,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 8101 "parser_cocci_menhir.ml" +# 8654 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 8107 "parser_cocci_menhir.ml" +# 8660 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8114 "parser_cocci_menhir.ml" +# 8667 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8120 "parser_cocci_menhir.ml" +# 8673 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8143,7 +8696,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 8147 "parser_cocci_menhir.ml" +# 8700 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8152,28 +8705,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 557 "parser_cocci_menhir.mly" +# 562 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 8158 "parser_cocci_menhir.ml" +# 8711 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8164 "parser_cocci_menhir.ml" +# 8717 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8171 "parser_cocci_menhir.ml" +# 8724 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8177 "parser_cocci_menhir.ml" +# 8730 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8200,7 +8753,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 8204 "parser_cocci_menhir.ml" +# 8757 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8209,28 +8762,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 559 "parser_cocci_menhir.mly" +# 564 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 8215 "parser_cocci_menhir.ml" +# 8768 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8221 "parser_cocci_menhir.ml" +# 8774 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8228 "parser_cocci_menhir.ml" +# 8781 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8234 "parser_cocci_menhir.ml" +# 8787 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8257,7 +8810,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 8261 "parser_cocci_menhir.ml" +# 8814 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8266,28 +8819,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 561 "parser_cocci_menhir.mly" +# 566 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 8272 "parser_cocci_menhir.ml" +# 8825 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8278 "parser_cocci_menhir.ml" +# 8831 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8285 "parser_cocci_menhir.ml" +# 8838 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8291 "parser_cocci_menhir.ml" +# 8844 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8314,7 +8867,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 8318 "parser_cocci_menhir.ml" +# 8871 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8323,28 +8876,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 563 "parser_cocci_menhir.mly" +# 568 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 8329 "parser_cocci_menhir.ml" +# 8882 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8335 "parser_cocci_menhir.ml" +# 8888 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8342 "parser_cocci_menhir.ml" +# 8895 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8348 "parser_cocci_menhir.ml" +# 8901 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8371,7 +8924,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 8375 "parser_cocci_menhir.ml" +# 8928 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8380,28 +8933,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 565 "parser_cocci_menhir.mly" +# 570 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 8386 "parser_cocci_menhir.ml" +# 8939 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8392 "parser_cocci_menhir.ml" +# 8945 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8399 "parser_cocci_menhir.ml" +# 8952 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8405 "parser_cocci_menhir.ml" +# 8958 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8428,7 +8981,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 8432 "parser_cocci_menhir.ml" +# 8985 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -8437,28 +8990,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 567 "parser_cocci_menhir.mly" +# 572 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 8443 "parser_cocci_menhir.ml" +# 8996 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8449 "parser_cocci_menhir.ml" +# 9002 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8456 "parser_cocci_menhir.ml" +# 9009 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8462 "parser_cocci_menhir.ml" +# 9015 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8491,7 +9044,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 8495 "parser_cocci_menhir.ml" +# 9048 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -8502,28 +9055,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 569 "parser_cocci_menhir.mly" +# 574 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 8508 "parser_cocci_menhir.ml" +# 9061 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8514 "parser_cocci_menhir.ml" +# 9067 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8521 "parser_cocci_menhir.ml" +# 9074 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8527 "parser_cocci_menhir.ml" +# 9080 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8565,18 +9118,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8569 "parser_cocci_menhir.ml" +# 9122 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8575 "parser_cocci_menhir.ml" +# 9128 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 8580 "parser_cocci_menhir.ml" +# 9133 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -8594,35 +9147,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 8598 "parser_cocci_menhir.ml" +# 9151 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 8607 "parser_cocci_menhir.ml" +# 9160 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8613 "parser_cocci_menhir.ml" +# 9166 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8620 "parser_cocci_menhir.ml" +# 9173 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8626 "parser_cocci_menhir.ml" +# 9179 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8669,19 +9222,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8673 "parser_cocci_menhir.ml" +# 9226 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8679 "parser_cocci_menhir.ml" +# 9232 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 8685 "parser_cocci_menhir.ml" +# 9238 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -8702,35 +9255,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 8706 "parser_cocci_menhir.ml" +# 9259 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 8715 "parser_cocci_menhir.ml" +# 9268 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8721 "parser_cocci_menhir.ml" +# 9274 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8728 "parser_cocci_menhir.ml" +# 9281 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8734 "parser_cocci_menhir.ml" +# 9287 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8770,28 +9323,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 576 "parser_cocci_menhir.mly" +# 581 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 8776 "parser_cocci_menhir.ml" +# 9329 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8782 "parser_cocci_menhir.ml" +# 9335 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8789 "parser_cocci_menhir.ml" +# 9342 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8795 "parser_cocci_menhir.ml" +# 9348 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8833,13 +9386,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8837 "parser_cocci_menhir.ml" +# 9390 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8843 "parser_cocci_menhir.ml" +# 9396 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : 'tv_struct_or_union = Obj.magic s00 in let _startpos = _startpos_s00_ in @@ -8858,36 +9411,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 8862 "parser_cocci_menhir.ml" +# 9415 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 8872 "parser_cocci_menhir.ml" +# 9425 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8878 "parser_cocci_menhir.ml" +# 9431 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8885 "parser_cocci_menhir.ml" +# 9438 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8891 "parser_cocci_menhir.ml" +# 9444 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -8934,13 +9487,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8938 "parser_cocci_menhir.ml" +# 9491 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 8944 "parser_cocci_menhir.ml" +# 9497 "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 @@ -8963,36 +9516,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 8967 "parser_cocci_menhir.ml" +# 9520 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 8977 "parser_cocci_menhir.ml" +# 9530 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 8983 "parser_cocci_menhir.ml" +# 9536 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 8990 "parser_cocci_menhir.ml" +# 9543 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 8996 "parser_cocci_menhir.ml" +# 9549 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9034,18 +9587,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 9038 "parser_cocci_menhir.ml" +# 9591 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 9044 "parser_cocci_menhir.ml" +# 9597 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 9049 "parser_cocci_menhir.ml" +# 9602 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -9060,30 +9613,30 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 585 "parser_cocci_menhir.mly" +# 590 "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)) ) -# 9068 "parser_cocci_menhir.ml" +# 9621 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 9074 "parser_cocci_menhir.ml" +# 9627 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 9081 "parser_cocci_menhir.ml" +# 9634 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9087 "parser_cocci_menhir.ml" +# 9640 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9110,7 +9663,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 9114 "parser_cocci_menhir.ml" +# 9667 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -9119,28 +9672,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 589 "parser_cocci_menhir.mly" +# 594 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 9125 "parser_cocci_menhir.ml" +# 9678 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 9131 "parser_cocci_menhir.ml" +# 9684 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 9138 "parser_cocci_menhir.ml" +# 9691 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9144 "parser_cocci_menhir.ml" +# 9697 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9177,12 +9730,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9181 "parser_cocci_menhir.ml" +# 9734 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9186 "parser_cocci_menhir.ml" +# 9739 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9193,15 +9746,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 9199 "parser_cocci_menhir.ml" +# 9752 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9205 "parser_cocci_menhir.ml" +# 9758 "parser_cocci_menhir.ml" in let cv = @@ -9209,13 +9762,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9213 "parser_cocci_menhir.ml" +# 9766 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9219 "parser_cocci_menhir.ml" +# 9772 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9252,12 +9805,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9256 "parser_cocci_menhir.ml" +# 9809 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9261 "parser_cocci_menhir.ml" +# 9814 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9268,15 +9821,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 9274 "parser_cocci_menhir.ml" +# 9827 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9280 "parser_cocci_menhir.ml" +# 9833 "parser_cocci_menhir.ml" in let cv = @@ -9284,13 +9837,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9288 "parser_cocci_menhir.ml" +# 9841 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9294 "parser_cocci_menhir.ml" +# 9847 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9327,12 +9880,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9331 "parser_cocci_menhir.ml" +# 9884 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9336 "parser_cocci_menhir.ml" +# 9889 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9343,15 +9896,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 9349 "parser_cocci_menhir.ml" +# 9902 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9355 "parser_cocci_menhir.ml" +# 9908 "parser_cocci_menhir.ml" in let cv = @@ -9359,13 +9912,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9363 "parser_cocci_menhir.ml" +# 9916 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9369 "parser_cocci_menhir.ml" +# 9922 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9402,12 +9955,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 9406 "parser_cocci_menhir.ml" +# 9959 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9411 "parser_cocci_menhir.ml" +# 9964 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9418,16 +9971,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 9425 "parser_cocci_menhir.ml" +# 9978 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9431 "parser_cocci_menhir.ml" +# 9984 "parser_cocci_menhir.ml" in let cv = @@ -9435,13 +9988,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9439 "parser_cocci_menhir.ml" +# 9992 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9445 "parser_cocci_menhir.ml" +# 9998 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9487,17 +10040,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 9491 "parser_cocci_menhir.ml" +# 10044 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 9496 "parser_cocci_menhir.ml" +# 10049 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9501 "parser_cocci_menhir.ml" +# 10054 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9510,20 +10063,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 9521 "parser_cocci_menhir.ml" +# 10074 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9527 "parser_cocci_menhir.ml" +# 10080 "parser_cocci_menhir.ml" in let cv = @@ -9531,13 +10084,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9535 "parser_cocci_menhir.ml" +# 10088 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9541 "parser_cocci_menhir.ml" +# 10094 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9574,12 +10127,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9578 "parser_cocci_menhir.ml" +# 10131 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9583 "parser_cocci_menhir.ml" +# 10136 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9590,15 +10143,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 9596 "parser_cocci_menhir.ml" +# 10149 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9602 "parser_cocci_menhir.ml" +# 10155 "parser_cocci_menhir.ml" in let cv = @@ -9606,13 +10159,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9610 "parser_cocci_menhir.ml" +# 10163 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9616 "parser_cocci_menhir.ml" +# 10169 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9654,17 +10207,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9658 "parser_cocci_menhir.ml" +# 10211 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9663 "parser_cocci_menhir.ml" +# 10216 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9668 "parser_cocci_menhir.ml" +# 10221 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9677,18 +10230,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 9686 "parser_cocci_menhir.ml" +# 10239 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 9692 "parser_cocci_menhir.ml" +# 10245 "parser_cocci_menhir.ml" in let cv = @@ -9696,13 +10249,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9700 "parser_cocci_menhir.ml" +# 10253 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9706 "parser_cocci_menhir.ml" +# 10259 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9739,12 +10292,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9743 "parser_cocci_menhir.ml" +# 10296 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9748 "parser_cocci_menhir.ml" +# 10301 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9755,15 +10308,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 9761 "parser_cocci_menhir.ml" +# 10314 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 9767 "parser_cocci_menhir.ml" +# 10320 "parser_cocci_menhir.ml" in let cv = @@ -9771,13 +10324,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9775 "parser_cocci_menhir.ml" +# 10328 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9781 "parser_cocci_menhir.ml" +# 10334 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9814,12 +10367,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9818 "parser_cocci_menhir.ml" +# 10371 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9823 "parser_cocci_menhir.ml" +# 10376 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9830,15 +10383,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 9836 "parser_cocci_menhir.ml" +# 10389 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 9842 "parser_cocci_menhir.ml" +# 10395 "parser_cocci_menhir.ml" in let cv = @@ -9846,13 +10399,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9850 "parser_cocci_menhir.ml" +# 10403 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9856 "parser_cocci_menhir.ml" +# 10409 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9889,12 +10442,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 9893 "parser_cocci_menhir.ml" +# 10446 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9898 "parser_cocci_menhir.ml" +# 10451 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9905,15 +10458,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 9911 "parser_cocci_menhir.ml" +# 10464 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 9917 "parser_cocci_menhir.ml" +# 10470 "parser_cocci_menhir.ml" in let cv = @@ -9921,13 +10474,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 9925 "parser_cocci_menhir.ml" +# 10478 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 9931 "parser_cocci_menhir.ml" +# 10484 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -9964,12 +10517,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 9968 "parser_cocci_menhir.ml" +# 10521 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 9973 "parser_cocci_menhir.ml" +# 10526 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -9980,16 +10533,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 9987 "parser_cocci_menhir.ml" +# 10540 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 9993 "parser_cocci_menhir.ml" +# 10546 "parser_cocci_menhir.ml" in let cv = @@ -9997,13 +10550,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10001 "parser_cocci_menhir.ml" +# 10554 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10007 "parser_cocci_menhir.ml" +# 10560 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10049,17 +10602,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 10053 "parser_cocci_menhir.ml" +# 10606 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 10058 "parser_cocci_menhir.ml" +# 10611 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 10063 "parser_cocci_menhir.ml" +# 10616 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10072,20 +10625,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 10083 "parser_cocci_menhir.ml" +# 10636 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 10089 "parser_cocci_menhir.ml" +# 10642 "parser_cocci_menhir.ml" in let cv = @@ -10093,13 +10646,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10097 "parser_cocci_menhir.ml" +# 10650 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10103 "parser_cocci_menhir.ml" +# 10656 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10136,12 +10689,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10140 "parser_cocci_menhir.ml" +# 10693 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 10145 "parser_cocci_menhir.ml" +# 10698 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10152,15 +10705,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 10158 "parser_cocci_menhir.ml" +# 10711 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 10164 "parser_cocci_menhir.ml" +# 10717 "parser_cocci_menhir.ml" in let cv = @@ -10168,13 +10721,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10172 "parser_cocci_menhir.ml" +# 10725 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10178 "parser_cocci_menhir.ml" +# 10731 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10216,17 +10769,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10220 "parser_cocci_menhir.ml" +# 10773 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10225 "parser_cocci_menhir.ml" +# 10778 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 10230 "parser_cocci_menhir.ml" +# 10783 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10239,18 +10792,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 10248 "parser_cocci_menhir.ml" +# 10801 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 10254 "parser_cocci_menhir.ml" +# 10807 "parser_cocci_menhir.ml" in let cv = @@ -10258,13 +10811,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10262 "parser_cocci_menhir.ml" +# 10815 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10268 "parser_cocci_menhir.ml" +# 10821 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10296,7 +10849,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10300 "parser_cocci_menhir.ml" +# 10853 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10306,15 +10859,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 10312 "parser_cocci_menhir.ml" +# 10865 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10318 "parser_cocci_menhir.ml" +# 10871 "parser_cocci_menhir.ml" in let cv = @@ -10322,13 +10875,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10326 "parser_cocci_menhir.ml" +# 10879 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10332 "parser_cocci_menhir.ml" +# 10885 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10360,7 +10913,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10364 "parser_cocci_menhir.ml" +# 10917 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10370,15 +10923,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 10376 "parser_cocci_menhir.ml" +# 10929 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10382 "parser_cocci_menhir.ml" +# 10935 "parser_cocci_menhir.ml" in let cv = @@ -10386,13 +10939,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10390 "parser_cocci_menhir.ml" +# 10943 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10396 "parser_cocci_menhir.ml" +# 10949 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10424,7 +10977,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10428 "parser_cocci_menhir.ml" +# 10981 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10434,15 +10987,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 10440 "parser_cocci_menhir.ml" +# 10993 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10446 "parser_cocci_menhir.ml" +# 10999 "parser_cocci_menhir.ml" in let cv = @@ -10450,13 +11003,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10454 "parser_cocci_menhir.ml" +# 11007 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10460 "parser_cocci_menhir.ml" +# 11013 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10488,7 +11041,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 10492 "parser_cocci_menhir.ml" +# 11045 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10498,16 +11051,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 10505 "parser_cocci_menhir.ml" +# 11058 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10511 "parser_cocci_menhir.ml" +# 11064 "parser_cocci_menhir.ml" in let cv = @@ -10515,13 +11068,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10519 "parser_cocci_menhir.ml" +# 11072 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10525 "parser_cocci_menhir.ml" +# 11078 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10562,12 +11115,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 10566 "parser_cocci_menhir.ml" +# 11119 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 10571 "parser_cocci_menhir.ml" +# 11124 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10579,20 +11132,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 10590 "parser_cocci_menhir.ml" +# 11143 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10596 "parser_cocci_menhir.ml" +# 11149 "parser_cocci_menhir.ml" in let cv = @@ -10600,13 +11153,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10604 "parser_cocci_menhir.ml" +# 11157 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10610 "parser_cocci_menhir.ml" +# 11163 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10638,7 +11191,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10642 "parser_cocci_menhir.ml" +# 11195 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10648,15 +11201,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 10654 "parser_cocci_menhir.ml" +# 11207 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10660 "parser_cocci_menhir.ml" +# 11213 "parser_cocci_menhir.ml" in let cv = @@ -10664,13 +11217,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10668 "parser_cocci_menhir.ml" +# 11221 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10674 "parser_cocci_menhir.ml" +# 11227 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10707,12 +11260,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10711 "parser_cocci_menhir.ml" +# 11264 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10716 "parser_cocci_menhir.ml" +# 11269 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10724,18 +11277,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 10733 "parser_cocci_menhir.ml" +# 11286 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 10739 "parser_cocci_menhir.ml" +# 11292 "parser_cocci_menhir.ml" in let cv = @@ -10743,13 +11296,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10747 "parser_cocci_menhir.ml" +# 11300 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10753 "parser_cocci_menhir.ml" +# 11306 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10781,7 +11334,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 10785 "parser_cocci_menhir.ml" +# 11338 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10791,15 +11344,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 557 "parser_cocci_menhir.mly" +# 562 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 10797 "parser_cocci_menhir.ml" +# 11350 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 10803 "parser_cocci_menhir.ml" +# 11356 "parser_cocci_menhir.ml" in let cv = @@ -10807,13 +11360,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10811 "parser_cocci_menhir.ml" +# 11364 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10817 "parser_cocci_menhir.ml" +# 11370 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10845,7 +11398,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10849 "parser_cocci_menhir.ml" +# 11402 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10855,15 +11408,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 559 "parser_cocci_menhir.mly" +# 564 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 10861 "parser_cocci_menhir.ml" +# 11414 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 10867 "parser_cocci_menhir.ml" +# 11420 "parser_cocci_menhir.ml" in let cv = @@ -10871,13 +11424,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10875 "parser_cocci_menhir.ml" +# 11428 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10881 "parser_cocci_menhir.ml" +# 11434 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10909,7 +11462,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 10913 "parser_cocci_menhir.ml" +# 11466 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10919,15 +11472,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 561 "parser_cocci_menhir.mly" +# 566 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 10925 "parser_cocci_menhir.ml" +# 11478 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 10931 "parser_cocci_menhir.ml" +# 11484 "parser_cocci_menhir.ml" in let cv = @@ -10935,13 +11488,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 10939 "parser_cocci_menhir.ml" +# 11492 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 10945 "parser_cocci_menhir.ml" +# 11498 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -10973,7 +11526,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 10977 "parser_cocci_menhir.ml" +# 11530 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -10983,15 +11536,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 563 "parser_cocci_menhir.mly" +# 568 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 10989 "parser_cocci_menhir.ml" +# 11542 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 10995 "parser_cocci_menhir.ml" +# 11548 "parser_cocci_menhir.ml" in let cv = @@ -10999,13 +11552,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11003 "parser_cocci_menhir.ml" +# 11556 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11009 "parser_cocci_menhir.ml" +# 11562 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11037,7 +11590,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 11041 "parser_cocci_menhir.ml" +# 11594 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11047,15 +11600,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 565 "parser_cocci_menhir.mly" +# 570 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 11053 "parser_cocci_menhir.ml" +# 11606 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11059 "parser_cocci_menhir.ml" +# 11612 "parser_cocci_menhir.ml" in let cv = @@ -11063,13 +11616,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11067 "parser_cocci_menhir.ml" +# 11620 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11073 "parser_cocci_menhir.ml" +# 11626 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11101,7 +11654,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 11105 "parser_cocci_menhir.ml" +# 11658 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11111,15 +11664,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 567 "parser_cocci_menhir.mly" +# 572 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 11117 "parser_cocci_menhir.ml" +# 11670 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11123 "parser_cocci_menhir.ml" +# 11676 "parser_cocci_menhir.ml" in let cv = @@ -11127,13 +11680,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11131 "parser_cocci_menhir.ml" +# 11684 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11137 "parser_cocci_menhir.ml" +# 11690 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11171,7 +11724,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 11175 "parser_cocci_menhir.ml" +# 11728 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11183,15 +11736,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 569 "parser_cocci_menhir.mly" +# 574 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 11189 "parser_cocci_menhir.ml" +# 11742 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11195 "parser_cocci_menhir.ml" +# 11748 "parser_cocci_menhir.ml" in let cv = @@ -11199,13 +11752,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11203 "parser_cocci_menhir.ml" +# 11756 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11209 "parser_cocci_menhir.ml" +# 11762 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11252,18 +11805,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11256 "parser_cocci_menhir.ml" +# 11809 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11262 "parser_cocci_menhir.ml" +# 11815 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 11267 "parser_cocci_menhir.ml" +# 11820 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11282,22 +11835,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 11286 "parser_cocci_menhir.ml" +# 11839 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 11295 "parser_cocci_menhir.ml" +# 11848 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11301 "parser_cocci_menhir.ml" +# 11854 "parser_cocci_menhir.ml" in let cv = @@ -11305,13 +11858,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11309 "parser_cocci_menhir.ml" +# 11862 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11315 "parser_cocci_menhir.ml" +# 11868 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11363,19 +11916,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11367 "parser_cocci_menhir.ml" +# 11920 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11373 "parser_cocci_menhir.ml" +# 11926 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 11379 "parser_cocci_menhir.ml" +# 11932 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11397,22 +11950,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11401 "parser_cocci_menhir.ml" +# 11954 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 11410 "parser_cocci_menhir.ml" +# 11963 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11416 "parser_cocci_menhir.ml" +# 11969 "parser_cocci_menhir.ml" in let cv = @@ -11420,13 +11973,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11424 "parser_cocci_menhir.ml" +# 11977 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11430 "parser_cocci_menhir.ml" +# 11983 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11472,15 +12025,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 576 "parser_cocci_menhir.mly" +# 581 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 11478 "parser_cocci_menhir.ml" +# 12031 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11484 "parser_cocci_menhir.ml" +# 12037 "parser_cocci_menhir.ml" in let cv = @@ -11488,13 +12041,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11492 "parser_cocci_menhir.ml" +# 12045 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11498 "parser_cocci_menhir.ml" +# 12051 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11541,13 +12094,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11545 "parser_cocci_menhir.ml" +# 12098 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11551 "parser_cocci_menhir.ml" +# 12104 "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 @@ -11567,23 +12120,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 11571 "parser_cocci_menhir.ml" +# 12124 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 11581 "parser_cocci_menhir.ml" +# 12134 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11587 "parser_cocci_menhir.ml" +# 12140 "parser_cocci_menhir.ml" in let cv = @@ -11591,13 +12144,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11595 "parser_cocci_menhir.ml" +# 12148 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11601 "parser_cocci_menhir.ml" +# 12154 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11649,13 +12202,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11653 "parser_cocci_menhir.ml" +# 12206 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11659 "parser_cocci_menhir.ml" +# 12212 "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 @@ -11679,23 +12232,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11683 "parser_cocci_menhir.ml" +# 12236 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 11693 "parser_cocci_menhir.ml" +# 12246 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11699 "parser_cocci_menhir.ml" +# 12252 "parser_cocci_menhir.ml" in let cv = @@ -11703,13 +12256,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11707 "parser_cocci_menhir.ml" +# 12260 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11713 "parser_cocci_menhir.ml" +# 12266 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11756,18 +12309,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11760 "parser_cocci_menhir.ml" +# 12313 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 11766 "parser_cocci_menhir.ml" +# 12319 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 11771 "parser_cocci_menhir.ml" +# 12324 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11783,17 +12336,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 585 "parser_cocci_menhir.mly" +# 590 "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)) ) -# 11791 "parser_cocci_menhir.ml" +# 12344 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11797 "parser_cocci_menhir.ml" +# 12350 "parser_cocci_menhir.ml" in let cv = @@ -11801,13 +12354,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11805 "parser_cocci_menhir.ml" +# 12358 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11811 "parser_cocci_menhir.ml" +# 12364 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11839,7 +12392,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 11843 "parser_cocci_menhir.ml" +# 12396 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -11849,15 +12402,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 589 "parser_cocci_menhir.mly" +# 594 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 11855 "parser_cocci_menhir.ml" +# 12408 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 11861 "parser_cocci_menhir.ml" +# 12414 "parser_cocci_menhir.ml" in let cv = @@ -11865,13 +12418,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 11869 "parser_cocci_menhir.ml" +# 12422 "parser_cocci_menhir.ml" in -# 602 "parser_cocci_menhir.mly" +# 607 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 11875 "parser_cocci_menhir.ml" +# 12428 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11892,14 +12445,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 11896 "parser_cocci_menhir.ml" +# 12449 "parser_cocci_menhir.ml" ) = Obj.magic r in let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_ctype = -# 604 "parser_cocci_menhir.mly" +# 609 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) ) -# 11903 "parser_cocci_menhir.ml" +# 12456 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11920,14 +12473,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 11924 "parser_cocci_menhir.ml" +# 12477 "parser_cocci_menhir.ml" ) = Obj.magic r in let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_ctype = -# 606 "parser_cocci_menhir.mly" +# 611 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) ) -# 11931 "parser_cocci_menhir.ml" +# 12484 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -11958,22 +12511,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 11962 "parser_cocci_menhir.ml" +# 12515 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 11968 "parser_cocci_menhir.ml" +# 12521 "parser_cocci_menhir.ml" ) = Obj.magic lp in let _startpos = _startpos_lp_ in let _endpos = _endpos_rp_ in let _v : 'tv_ctype = -# 608 "parser_cocci_menhir.mly" +# 613 "parser_cocci_menhir.mly" ( let (mids,code) = t in Ast0.wrap (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) ) -# 11977 "parser_cocci_menhir.ml" +# 12530 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12001,7 +12554,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_d_ident = -# 1146 "parser_cocci_menhir.mly" +# 1165 "parser_cocci_menhir.mly" ( (_1, function t -> List.fold_right @@ -12010,7 +12563,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Ast0.wrap (Ast0.Array(rest,P.clt2mcode "[" l,i,P.clt2mcode "]" r))) _2 t) ) -# 12014 "parser_cocci_menhir.ml" +# 12567 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12038,9 +12591,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_i_ in let _v : 'tv_decl = -# 900 "parser_cocci_menhir.mly" +# 919 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Param(t, Some i)) ) -# 12044 "parser_cocci_menhir.ml" +# 12597 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12062,9 +12615,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_t_ in let _v : 'tv_decl = -# 901 "parser_cocci_menhir.mly" +# 920 "parser_cocci_menhir.mly" ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) ) -# 12068 "parser_cocci_menhir.ml" +# 12621 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12120,42 +12673,42 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 12124 "parser_cocci_menhir.ml" +# 12677 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 12130 "parser_cocci_menhir.ml" +# 12683 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 12135 "parser_cocci_menhir.ml" +# 12688 "parser_cocci_menhir.ml" ) = Obj.magic rp in let i : 'tv_ident = Obj.magic i in let s : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 12141 "parser_cocci_menhir.ml" +# 12694 "parser_cocci_menhir.ml" ) = Obj.magic s in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 12146 "parser_cocci_menhir.ml" +# 12699 "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 = -# 904 "parser_cocci_menhir.mly" +# 923 "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)) ) -# 12159 "parser_cocci_menhir.ml" +# 12712 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12176,15 +12729,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 12180 "parser_cocci_menhir.ml" +# 12733 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl = -# 911 "parser_cocci_menhir.mly" +# 930 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) ) -# 12188 "parser_cocci_menhir.ml" +# 12741 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12205,14 +12758,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 12209 "parser_cocci_menhir.ml" +# 12762 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_ident = -# 1713 "parser_cocci_menhir.mly" +# 1793 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 12216 "parser_cocci_menhir.ml" +# 12769 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12233,15 +12786,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 66 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 12237 "parser_cocci_menhir.ml" +# 12790 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_ident = -# 1715 "parser_cocci_menhir.mly" +# 1795 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 12245 "parser_cocci_menhir.ml" +# 12798 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12263,13 +12816,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_list_decl_ = -# 1736 "parser_cocci_menhir.mly" +# 1816 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d))) (fun c -> Ast0.PComma c))) ) -# 12273 "parser_cocci_menhir.ml" +# 12826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12291,13 +12844,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_ = -# 1736 "parser_cocci_menhir.mly" +# 1816 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d))) (fun c -> Ast0.PComma c))) ) -# 12301 "parser_cocci_menhir.ml" +# 12854 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12318,15 +12871,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 12322 "parser_cocci_menhir.ml" +# 12875 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1204 "parser_cocci_menhir.mly" +# 1223 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] ) -# 12330 "parser_cocci_menhir.ml" +# 12883 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12348,13 +12901,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1207 "parser_cocci_menhir.mly" +# 1226 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x))) _1 ) -# 12358 "parser_cocci_menhir.ml" +# 12911 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12376,9 +12929,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement = -# 1212 "parser_cocci_menhir.mly" +# 1231 "parser_cocci_menhir.mly" ( [_1] ) -# 12382 "parser_cocci_menhir.ml" +# 12935 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12409,18 +12962,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 12413 "parser_cocci_menhir.ml" +# 12966 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 12419 "parser_cocci_menhir.ml" +# 12972 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_decl_statement = -# 1221 "parser_cocci_menhir.mly" +# 1240 "parser_cocci_menhir.mly" ( let (mids,code) = t in if List.for_all (function x -> @@ -12430,7 +12983,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct else [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3))] ) -# 12434 "parser_cocci_menhir.ml" +# 12987 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12451,15 +13004,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 12455 "parser_cocci_menhir.ml" +# 13008 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1234 "parser_cocci_menhir.mly" +# 1253 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] ) -# 12463 "parser_cocci_menhir.ml" +# 13016 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12481,13 +13034,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1237 "parser_cocci_menhir.mly" +# 1256 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x))) _1 ) -# 12491 "parser_cocci_menhir.ml" +# 13044 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12509,9 +13062,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_statement_expr = -# 1242 "parser_cocci_menhir.mly" +# 1261 "parser_cocci_menhir.mly" ( [_1] ) -# 12515 "parser_cocci_menhir.ml" +# 13068 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12542,18 +13095,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 12546 "parser_cocci_menhir.ml" +# 13099 "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 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 12552 "parser_cocci_menhir.ml" +# 13105 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_decl_statement_expr = -# 1251 "parser_cocci_menhir.mly" +# 1270 "parser_cocci_menhir.mly" ( let (mids,code) = t in if List.for_all (function [] -> true | _ -> false) code then [] @@ -12562,7 +13115,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))] ) -# 12566 "parser_cocci_menhir.ml" +# 13119 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12588,15 +13141,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12592 "parser_cocci_menhir.ml" +# 13145 "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 = -# 1032 "parser_cocci_menhir.mly" +# 1051 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] ) -# 12600 "parser_cocci_menhir.ml" +# 13153 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12617,14 +13170,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 12621 "parser_cocci_menhir.ml" +# 13174 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_decl_var = -# 1033 "parser_cocci_menhir.mly" +# 1052 "parser_cocci_menhir.mly" ( [P.meta_decl _1] ) -# 12628 "parser_cocci_menhir.ml" +# 13181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12655,7 +13208,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12659 "parser_cocci_menhir.ml" +# 13212 "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 @@ -12665,16 +13218,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 12669 "parser_cocci_menhir.ml" +# 13222 "parser_cocci_menhir.ml" in -# 1035 "parser_cocci_menhir.mly" +# 1054 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))) d ) -# 12678 "parser_cocci_menhir.ml" +# 13231 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12710,7 +13263,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12714 "parser_cocci_menhir.ml" +# 13267 "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 @@ -12722,16 +13275,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 12726 "parser_cocci_menhir.ml" +# 13279 "parser_cocci_menhir.ml" in -# 1035 "parser_cocci_menhir.mly" +# 1054 "parser_cocci_menhir.mly" ( List.map (function (id,fn) -> Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))) d ) -# 12735 "parser_cocci_menhir.ml" +# 13288 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12753,9 +13306,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : 'tv_decl_var = -# 1039 "parser_cocci_menhir.mly" +# 1058 "parser_cocci_menhir.mly" ( [f] ) -# 12759 "parser_cocci_menhir.ml" +# 13312 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12796,13 +13349,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12800 "parser_cocci_menhir.ml" +# 13353 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12806 "parser_cocci_menhir.ml" +# 13359 "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 @@ -12812,14 +13365,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 12816 "parser_cocci_menhir.ml" +# 13369 "parser_cocci_menhir.ml" in -# 1041 "parser_cocci_menhir.mly" +# 1060 "parser_cocci_menhir.mly" (let (id,fn) = d in [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))]) -# 12823 "parser_cocci_menhir.ml" +# 13376 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12865,13 +13418,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12869 "parser_cocci_menhir.ml" +# 13422 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12875 "parser_cocci_menhir.ml" +# 13428 "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 @@ -12883,14 +13436,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 12887 "parser_cocci_menhir.ml" +# 13440 "parser_cocci_menhir.ml" in -# 1041 "parser_cocci_menhir.mly" +# 1060 "parser_cocci_menhir.mly" (let (id,fn) = d in [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))]) -# 12894 "parser_cocci_menhir.ml" +# 13447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12921,7 +13474,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12925 "parser_cocci_menhir.ml" +# 13478 "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 @@ -12931,25 +13484,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 12935 "parser_cocci_menhir.ml" +# 13488 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 12942 "parser_cocci_menhir.ml" +# 13495 "parser_cocci_menhir.ml" in -# 1046 "parser_cocci_menhir.mly" +# 1065 "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 ) -# 12953 "parser_cocci_menhir.ml" +# 13506 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -12985,7 +13538,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 12989 "parser_cocci_menhir.ml" +# 13542 "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 @@ -12997,25 +13550,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13001 "parser_cocci_menhir.ml" +# 13554 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 13008 "parser_cocci_menhir.ml" +# 13561 "parser_cocci_menhir.ml" in -# 1046 "parser_cocci_menhir.mly" +# 1065 "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 ) -# 13019 "parser_cocci_menhir.ml" +# 13572 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13051,7 +13604,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13055 "parser_cocci_menhir.ml" +# 13608 "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 @@ -13062,7 +13615,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 13066 "parser_cocci_menhir.ml" +# 13619 "parser_cocci_menhir.ml" in let s = @@ -13070,18 +13623,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13074 "parser_cocci_menhir.ml" +# 13627 "parser_cocci_menhir.ml" in -# 1046 "parser_cocci_menhir.mly" +# 1065 "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 ) -# 13085 "parser_cocci_menhir.ml" +# 13638 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13122,7 +13675,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13126 "parser_cocci_menhir.ml" +# 13679 "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 @@ -13135,7 +13688,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13139 "parser_cocci_menhir.ml" +# 13692 "parser_cocci_menhir.ml" in let s = @@ -13143,18 +13696,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13147 "parser_cocci_menhir.ml" +# 13700 "parser_cocci_menhir.ml" in -# 1046 "parser_cocci_menhir.mly" +# 1065 "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 ) -# 13158 "parser_cocci_menhir.ml" +# 13711 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13195,13 +13748,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13199 "parser_cocci_menhir.ml" +# 13752 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13205 "parser_cocci_menhir.ml" +# 13758 "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 @@ -13211,24 +13764,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 13215 "parser_cocci_menhir.ml" +# 13768 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 13222 "parser_cocci_menhir.ml" +# 13775 "parser_cocci_menhir.ml" in -# 1054 "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))] ) -# 13232 "parser_cocci_menhir.ml" +# 13785 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13274,13 +13827,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13278 "parser_cocci_menhir.ml" +# 13831 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13284 "parser_cocci_menhir.ml" +# 13837 "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 @@ -13292,24 +13845,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13296 "parser_cocci_menhir.ml" +# 13849 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 13303 "parser_cocci_menhir.ml" +# 13856 "parser_cocci_menhir.ml" in -# 1054 "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))] ) -# 13313 "parser_cocci_menhir.ml" +# 13866 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13355,13 +13908,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13359 "parser_cocci_menhir.ml" +# 13912 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13365 "parser_cocci_menhir.ml" +# 13918 "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 @@ -13372,7 +13925,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 13376 "parser_cocci_menhir.ml" +# 13929 "parser_cocci_menhir.ml" in let s = @@ -13380,17 +13933,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13384 "parser_cocci_menhir.ml" +# 13937 "parser_cocci_menhir.ml" in -# 1054 "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))] ) -# 13394 "parser_cocci_menhir.ml" +# 13947 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13441,13 +13994,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13445 "parser_cocci_menhir.ml" +# 13998 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13451 "parser_cocci_menhir.ml" +# 14004 "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 @@ -13460,7 +14013,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13464 "parser_cocci_menhir.ml" +# 14017 "parser_cocci_menhir.ml" in let s = @@ -13468,17 +14021,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13472 "parser_cocci_menhir.ml" +# 14025 "parser_cocci_menhir.ml" in -# 1054 "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))] ) -# 13482 "parser_cocci_menhir.ml" +# 14035 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13539,34 +14092,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13543 "parser_cocci_menhir.ml" +# 14096 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13548 "parser_cocci_menhir.ml" +# 14101 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13554 "parser_cocci_menhir.ml" +# 14107 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13559 "parser_cocci_menhir.ml" +# 14112 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 13565 "parser_cocci_menhir.ml" +# 14118 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13570 "parser_cocci_menhir.ml" +# 14123 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -13575,11 +14128,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 13579 "parser_cocci_menhir.ml" +# 14132 "parser_cocci_menhir.ml" in -# 1064 "parser_cocci_menhir.mly" +# 1083 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -13587,7 +14140,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))] ) -# 13591 "parser_cocci_menhir.ml" +# 14144 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13653,34 +14206,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13657 "parser_cocci_menhir.ml" +# 14210 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13662 "parser_cocci_menhir.ml" +# 14215 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13668 "parser_cocci_menhir.ml" +# 14221 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13673 "parser_cocci_menhir.ml" +# 14226 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 13679 "parser_cocci_menhir.ml" +# 14232 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13684 "parser_cocci_menhir.ml" +# 14237 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -13691,11 +14244,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 13695 "parser_cocci_menhir.ml" +# 14248 "parser_cocci_menhir.ml" in -# 1064 "parser_cocci_menhir.mly" +# 1083 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -13703,7 +14256,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))] ) -# 13707 "parser_cocci_menhir.ml" +# 14260 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13744,27 +14297,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _5 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13748 "parser_cocci_menhir.ml" +# 14301 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13753 "parser_cocci_menhir.ml" +# 14306 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13759 "parser_cocci_menhir.ml" +# 14312 "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 = -# 1072 "parser_cocci_menhir.mly" +# 1091 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3, P.clt2mcode ")" _4,P.clt2mcode ";" _5))] ) -# 13768 "parser_cocci_menhir.ml" +# 14321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13835,40 +14388,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13839 "parser_cocci_menhir.ml" +# 14392 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13845 "parser_cocci_menhir.ml" +# 14398 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13850 "parser_cocci_menhir.ml" +# 14403 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13856 "parser_cocci_menhir.ml" +# 14409 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13861 "parser_cocci_menhir.ml" +# 14414 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 13867 "parser_cocci_menhir.ml" +# 14420 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13872 "parser_cocci_menhir.ml" +# 14425 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -13877,11 +14430,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 13881 "parser_cocci_menhir.ml" +# 14434 "parser_cocci_menhir.ml" in -# 1078 "parser_cocci_menhir.mly" +# 1097 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -13889,7 +14442,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))]) -# 13893 "parser_cocci_menhir.ml" +# 14446 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -13965,40 +14518,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13969 "parser_cocci_menhir.ml" +# 14522 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 13975 "parser_cocci_menhir.ml" +# 14528 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13980 "parser_cocci_menhir.ml" +# 14533 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 13986 "parser_cocci_menhir.ml" +# 14539 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 13991 "parser_cocci_menhir.ml" +# 14544 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 13997 "parser_cocci_menhir.ml" +# 14550 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 14002 "parser_cocci_menhir.ml" +# 14555 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -14009,11 +14562,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 14013 "parser_cocci_menhir.ml" +# 14566 "parser_cocci_menhir.ml" in -# 1078 "parser_cocci_menhir.mly" +# 1097 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -14021,7 +14574,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))]) -# 14025 "parser_cocci_menhir.ml" +# 14578 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14057,25 +14610,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 14061 "parser_cocci_menhir.ml" +# 14614 "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 : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 14068 "parser_cocci_menhir.ml" +# 14621 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_pv_ in let _v : 'tv_decl_var = -# 1086 "parser_cocci_menhir.mly" +# 1105 "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 ) -# 14079 "parser_cocci_menhir.ml" +# 14632 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14097,13 +14650,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_define_param_list_option = -# 823 "parser_cocci_menhir.mly" +# 842 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 (fun _ d -> Ast0.wrap(Ast0.DPdots(P.clt2mcode "," d))) (fun c -> Ast0.DPComma c))) ) -# 14107 "parser_cocci_menhir.ml" +# 14660 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14124,12 +14677,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 85 "parser_cocci_menhir.mly" (Data.clt * token) -# 14128 "parser_cocci_menhir.ml" +# 14681 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_defineop = -# 779 "parser_cocci_menhir.mly" +# 798 "parser_cocci_menhir.mly" ( let (clt,ident) = _1 in function body -> Ast0.wrap @@ -14146,7 +14699,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct "unexpected name for a #define")), Ast0.wrap Ast0.NoParams, body)) ) -# 14150 "parser_cocci_menhir.ml" +# 14703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14177,18 +14730,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 14181 "parser_cocci_menhir.ml" +# 14734 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_define_param_list_option = Obj.magic _2 in let _1 : ( # 86 "parser_cocci_menhir.mly" (Data.clt * token * int * int) -# 14187 "parser_cocci_menhir.ml" +# 14740 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_defineop = -# 796 "parser_cocci_menhir.mly" +# 815 "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 @@ -14209,7 +14762,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)) ) -# 14213 "parser_cocci_menhir.ml" +# 14766 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14233,7 +14786,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_dep = # 231 "parser_cocci_menhir.mly" ( _1 ) -# 14237 "parser_cocci_menhir.ml" +# 14790 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14267,7 +14820,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_dep = # 232 "parser_cocci_menhir.mly" ( Ast.AndDep(_1, _3) ) -# 14271 "parser_cocci_menhir.ml" +# 14824 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14301,7 +14854,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_dep = # 233 "parser_cocci_menhir.mly" ( Ast.OrDep (_1, _3) ) -# 14305 "parser_cocci_menhir.ml" +# 14858 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14318,7 +14871,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_depends = # 227 "parser_cocci_menhir.mly" ( Ast.NoDep ) -# 14322 "parser_cocci_menhir.ml" +# 14875 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14350,7 +14903,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_depends = # 228 "parser_cocci_menhir.mly" ( parents ) -# 14354 "parser_cocci_menhir.ml" +# 14907 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14377,14 +14930,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 14381 "parser_cocci_menhir.ml" +# 14934 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_designator = -# 1190 "parser_cocci_menhir.mly" +# 1209 "parser_cocci_menhir.mly" ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) ) -# 14388 "parser_cocci_menhir.ml" +# 14941 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14415,20 +14968,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 14419 "parser_cocci_menhir.ml" +# 14972 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 14425 "parser_cocci_menhir.ml" +# 14978 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_designator = -# 1192 "parser_cocci_menhir.mly" +# 1211 "parser_cocci_menhir.mly" ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) ) -# 14432 "parser_cocci_menhir.ml" +# 14985 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14469,27 +15022,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _5 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 14473 "parser_cocci_menhir.ml" +# 15026 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : 'tv_eexpr = Obj.magic _4 in let _3 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14479 "parser_cocci_menhir.ml" +# 15032 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 14485 "parser_cocci_menhir.ml" +# 15038 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_designator = -# 1194 "parser_cocci_menhir.mly" +# 1213 "parser_cocci_menhir.mly" ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3, _4,P.clt2mcode "]" _5) ) -# 14493 "parser_cocci_menhir.ml" +# 15046 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14511,9 +15064,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dexpr = -# 1271 "parser_cocci_menhir.mly" +# 1292 "parser_cocci_menhir.mly" ( _1 ) -# 14517 "parser_cocci_menhir.ml" +# 15070 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14541,7 +15094,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_disable = # 246 "parser_cocci_menhir.mly" ( List.map P.id2name _2 ) -# 14545 "parser_cocci_menhir.ml" +# 15098 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14562,14 +15115,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14566 "parser_cocci_menhir.ml" +# 15119 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dot_expressions = -# 1280 "parser_cocci_menhir.mly" +# 1301 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) ) -# 14573 "parser_cocci_menhir.ml" +# 15126 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14591,9 +15144,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dot_expressions = -# 1281 "parser_cocci_menhir.mly" +# 1302 "parser_cocci_menhir.mly" ( _1 ) -# 14597 "parser_cocci_menhir.ml" +# 15150 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14615,9 +15168,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_dparam = -# 819 "parser_cocci_menhir.mly" +# 838 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DParam _1) ) -# 14621 "parser_cocci_menhir.ml" +# 15174 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14638,14 +15191,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14642 "parser_cocci_menhir.ml" +# 15195 "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_ = -# 2022 "parser_cocci_menhir.mly" +# 2102 "parser_cocci_menhir.mly" ( (d,None) ) -# 14649 "parser_cocci_menhir.ml" +# 15202 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14684,14 +15237,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14688 "parser_cocci_menhir.ml" +# 15241 "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_ = -# 2023 "parser_cocci_menhir.mly" +# 2103 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 14695 "parser_cocci_menhir.ml" +# 15248 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14712,14 +15265,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14716 "parser_cocci_menhir.ml" +# 15269 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ = -# 2022 "parser_cocci_menhir.mly" +# 2102 "parser_cocci_menhir.mly" ( (d,None) ) -# 14723 "parser_cocci_menhir.ml" +# 15276 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14758,14 +15311,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14762 "parser_cocci_menhir.ml" +# 15315 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__5_ in let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ = -# 2023 "parser_cocci_menhir.mly" +# 2103 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 14769 "parser_cocci_menhir.ml" +# 15322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14786,14 +15339,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14790 "parser_cocci_menhir.ml" +# 15343 "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_ = -# 2022 "parser_cocci_menhir.mly" +# 2102 "parser_cocci_menhir.mly" ( (d,None) ) -# 14797 "parser_cocci_menhir.ml" +# 15350 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14832,14 +15385,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14836 "parser_cocci_menhir.ml" +# 15389 "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_ = -# 2023 "parser_cocci_menhir.mly" +# 2103 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 14843 "parser_cocci_menhir.ml" +# 15396 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14860,14 +15413,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14864 "parser_cocci_menhir.ml" +# 15417 "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_one_ = -# 2022 "parser_cocci_menhir.mly" +# 2102 "parser_cocci_menhir.mly" ( (d,None) ) -# 14871 "parser_cocci_menhir.ml" +# 15424 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14906,14 +15459,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 14910 "parser_cocci_menhir.ml" +# 15463 "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_one_ = -# 2023 "parser_cocci_menhir.mly" +# 2103 "parser_cocci_menhir.mly" ( (d,Some w) ) -# 14917 "parser_cocci_menhir.ml" +# 15470 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14935,9 +15488,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_eexpr = -# 1269 "parser_cocci_menhir.mly" +# 1290 "parser_cocci_menhir.mly" ( _1 ) -# 14941 "parser_cocci_menhir.ml" +# 15494 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14959,13 +15512,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_eexpr_list_option = -# 2002 "parser_cocci_menhir.mly" +# 2082 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.DOTS (_1 (fun _ d -> Ast0.wrap(Ast0.Edots(P.clt2mcode "..." d,None))) (fun c -> Ast0.EComma c))) ) -# 14969 "parser_cocci_menhir.ml" +# 15522 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -14980,9 +15533,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_empty_list_start_aexpr_TEllipsis_ = -# 1764 "parser_cocci_menhir.mly" +# 1844 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 14986 "parser_cocci_menhir.ml" +# 15539 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15004,9 +15557,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_empty_list_start_aexpr_TEllipsis_ = -# 1765 "parser_cocci_menhir.mly" +# 1845 "parser_cocci_menhir.mly" ( _1 ) -# 15010 "parser_cocci_menhir.ml" +# 15563 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15021,9 +15574,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_empty_list_start_dparam_TEllipsis_ = -# 1764 "parser_cocci_menhir.mly" +# 1844 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15027 "parser_cocci_menhir.ml" +# 15580 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15045,9 +15598,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_empty_list_start_dparam_TEllipsis_ = -# 1765 "parser_cocci_menhir.mly" +# 1845 "parser_cocci_menhir.mly" ( _1 ) -# 15051 "parser_cocci_menhir.ml" +# 15604 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15062,9 +15615,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_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1764 "parser_cocci_menhir.mly" +# 1844 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15068 "parser_cocci_menhir.ml" +# 15621 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15086,9 +15639,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1765 "parser_cocci_menhir.mly" +# 1845 "parser_cocci_menhir.mly" ( _1 ) -# 15092 "parser_cocci_menhir.ml" +# 15645 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15103,9 +15656,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_empty_list_start_one_dec_decl__TEllipsis_ = -# 1764 "parser_cocci_menhir.mly" +# 1844 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15109 "parser_cocci_menhir.ml" +# 15662 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15127,9 +15680,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_empty_list_start_one_dec_decl__TEllipsis_ = -# 1765 "parser_cocci_menhir.mly" +# 1845 "parser_cocci_menhir.mly" ( _1 ) -# 15133 "parser_cocci_menhir.ml" +# 15686 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15144,9 +15697,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_empty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1764 "parser_cocci_menhir.mly" +# 1844 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [] ) -# 15150 "parser_cocci_menhir.ml" +# 15703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15168,9 +15721,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1765 "parser_cocci_menhir.mly" +# 1845 "parser_cocci_menhir.mly" ( _1 ) -# 15174 "parser_cocci_menhir.ml" +# 15727 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15192,9 +15745,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_decl_list = -# 697 "parser_cocci_menhir.mly" +# 702 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1 P.mkedots (fun c -> Ast0.EComma c))) ) -# 15198 "parser_cocci_menhir.ml" +# 15751 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15216,9 +15769,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_decl_one = -# 669 "parser_cocci_menhir.mly" +# 674 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 15222 "parser_cocci_menhir.ml" +# 15775 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15250,19 +15803,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 15254 "parser_cocci_menhir.ml" +# 15807 "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_enum_decl_one = -# 671 "parser_cocci_menhir.mly" +# 676 "parser_cocci_menhir.mly" ( let id = Ast0.wrap(Ast0.Ident(_1)) in Ast0.wrap (Ast0.Assignment (id,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3, false)) ) -# 15266 "parser_cocci_menhir.ml" +# 15819 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15284,9 +15837,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 678 "parser_cocci_menhir.mly" +# 683 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 15290 "parser_cocci_menhir.ml" +# 15843 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15307,15 +15860,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 15311 "parser_cocci_menhir.ml" +# 15864 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 680 "parser_cocci_menhir.mly" +# 685 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 15319 "parser_cocci_menhir.ml" +# 15872 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15336,16 +15889,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 15340 "parser_cocci_menhir.ml" +# 15893 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 683 "parser_cocci_menhir.mly" +# 688 "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)) ) -# 15349 "parser_cocci_menhir.ml" +# 15902 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15366,16 +15919,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 15370 "parser_cocci_menhir.ml" +# 15923 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 687 "parser_cocci_menhir.mly" +# 692 "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)) ) -# 15379 "parser_cocci_menhir.ml" +# 15932 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15396,16 +15949,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 15400 "parser_cocci_menhir.ml" +# 15953 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_enum_val = -# 691 "parser_cocci_menhir.mly" +# 696 "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)) ) -# 15409 "parser_cocci_menhir.ml" +# 15962 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15427,7 +15980,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_exists = # 249 "parser_cocci_menhir.mly" ( Ast.Exists ) -# 15431 "parser_cocci_menhir.ml" +# 15984 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15449,7 +16002,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_exists = # 250 "parser_cocci_menhir.mly" ( Ast.Forall ) -# 15453 "parser_cocci_menhir.ml" +# 16006 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15466,7 +16019,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_exists = # 251 "parser_cocci_menhir.mly" ( Ast.Undetermined ) -# 15470 "parser_cocci_menhir.ml" +# 16023 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15488,9 +16041,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_expr = -# 1267 "parser_cocci_menhir.mly" +# 1288 "parser_cocci_menhir.mly" ( _1 ) -# 15494 "parser_cocci_menhir.ml" +# 16047 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15512,9 +16065,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_r_ in let _endpos = _endpos_r_ in let _v : 'tv_expr_dots_TEllipsis_ = -# 1451 "parser_cocci_menhir.mly" +# 1524 "parser_cocci_menhir.mly" ( r ) -# 15518 "parser_cocci_menhir.ml" +# 16071 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15536,9 +16089,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_m_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 470 "parser_cocci_menhir.mly" +# 475 "parser_cocci_menhir.mly" ( P.ty_pointerify Type_cocci.Unknown m ) -# 15542 "parser_cocci_menhir.ml" +# 16095 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15564,9 +16117,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 472 "parser_cocci_menhir.mly" +# 477 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.EnumName Type_cocci.NoName) m ) -# 15570 "parser_cocci_menhir.ml" +# 16123 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15592,10 +16145,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 474 "parser_cocci_menhir.mly" +# 479 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.StructUnionName (Type_cocci.Struct,Type_cocci.NoName)) m ) -# 15599 "parser_cocci_menhir.ml" +# 16152 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15621,10 +16174,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_expression_type = -# 477 "parser_cocci_menhir.mly" +# 482 "parser_cocci_menhir.mly" ( P.ty_pointerify (Type_cocci.StructUnionName (Type_cocci.Union,Type_cocci.NoName)) m ) -# 15628 "parser_cocci_menhir.ml" +# 16181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15641,7 +16194,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_extends = # 222 "parser_cocci_menhir.mly" ( () ) -# 15645 "parser_cocci_menhir.ml" +# 16198 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15666,14 +16219,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let parent : ( # 49 "parser_cocci_menhir.mly" (string) -# 15670 "parser_cocci_menhir.ml" +# 16223 "parser_cocci_menhir.ml" ) = Obj.magic parent in let _startpos = _startpos__1_ in let _endpos = _endpos_parent_ in let _v : 'tv_extends = # 224 "parser_cocci_menhir.mly" ( !Data.install_bindings (parent) ) -# 15677 "parser_cocci_menhir.ml" +# 16230 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15699,21 +16252,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 87 "parser_cocci_menhir.mly" (string * Data.clt) -# 15703 "parser_cocci_menhir.ml" +# 16256 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 87 "parser_cocci_menhir.mly" (string * Data.clt) -# 15708 "parser_cocci_menhir.ml" +# 16261 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_filespec = -# 734 "parser_cocci_menhir.mly" +# 739 "parser_cocci_menhir.mly" ( [Ast0.wrap (Ast0.FILEINFO(P.id2mcode _1, P.id2mcode _2))] ) -# 15717 "parser_cocci_menhir.ml" +# 16270 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15728,9 +16281,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 = -# 855 "parser_cocci_menhir.mly" +# 874 "parser_cocci_menhir.mly" ( [] ) -# 15734 "parser_cocci_menhir.ml" +# 16287 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15758,13 +16311,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 857 "parser_cocci_menhir.mly" +# 876 "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 ) -# 15768 "parser_cocci_menhir.ml" +# 16321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15792,9 +16345,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_r_ in let _v : 'tv_fninfo = -# 862 "parser_cocci_menhir.mly" +# 881 "parser_cocci_menhir.mly" ( (Ast0.FType(t))::r ) -# 15798 "parser_cocci_menhir.ml" +# 16351 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15821,17 +16374,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 15825 "parser_cocci_menhir.ml" +# 16378 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 864 "parser_cocci_menhir.mly" +# 883 "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 ) -# 15835 "parser_cocci_menhir.ml" +# 16388 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15858,17 +16411,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 58 "parser_cocci_menhir.mly" (string * Data.clt) -# 15862 "parser_cocci_menhir.ml" +# 16415 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo = -# 869 "parser_cocci_menhir.mly" +# 888 "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 ) -# 15872 "parser_cocci_menhir.ml" +# 16425 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15883,9 +16436,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 = -# 875 "parser_cocci_menhir.mly" +# 894 "parser_cocci_menhir.mly" ( [] ) -# 15889 "parser_cocci_menhir.ml" +# 16442 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15913,13 +16466,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 877 "parser_cocci_menhir.mly" +# 896 "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 ) -# 15923 "parser_cocci_menhir.ml" +# 16476 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15946,17 +16499,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 15950 "parser_cocci_menhir.ml" +# 16503 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 883 "parser_cocci_menhir.mly" +# 902 "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 ) -# 15960 "parser_cocci_menhir.ml" +# 16513 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -15983,17 +16536,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 58 "parser_cocci_menhir.mly" (string * Data.clt) -# 15987 "parser_cocci_menhir.ml" +# 16540 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fninfo_nt = -# 888 "parser_cocci_menhir.mly" +# 907 "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 ) -# 15997 "parser_cocci_menhir.ml" +# 16550 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16008,9 +16561,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 = -# 1935 "parser_cocci_menhir.mly" +# 2015 "parser_cocci_menhir.mly" ([]) -# 16014 "parser_cocci_menhir.ml" +# 16567 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16036,9 +16589,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 1936 "parser_cocci_menhir.mly" +# 2016 "parser_cocci_menhir.mly" (_2) -# 16042 "parser_cocci_menhir.ml" +# 16595 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16066,9 +16619,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 1937 "parser_cocci_menhir.mly" +# 2017 "parser_cocci_menhir.mly" (Ast0.wrap(Ast0.Exp(_1))::_2) -# 16072 "parser_cocci_menhir.ml" +# 16625 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16096,9 +16649,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots = -# 1938 "parser_cocci_menhir.mly" +# 2018 "parser_cocci_menhir.mly" (_1@_2) -# 16102 "parser_cocci_menhir.ml" +# 16655 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16113,9 +16666,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 = -# 1945 "parser_cocci_menhir.mly" +# 2025 "parser_cocci_menhir.mly" ([]) -# 16119 "parser_cocci_menhir.ml" +# 16672 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16141,9 +16694,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 1946 "parser_cocci_menhir.mly" +# 2026 "parser_cocci_menhir.mly" (_2) -# 16147 "parser_cocci_menhir.ml" +# 16700 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16171,9 +16724,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 1947 "parser_cocci_menhir.mly" +# 2027 "parser_cocci_menhir.mly" (Ast0.wrap(Ast0.Exp(_1))::_2) -# 16177 "parser_cocci_menhir.ml" +# 16730 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16201,9 +16754,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_dots_or = -# 1948 "parser_cocci_menhir.mly" +# 2028 "parser_cocci_menhir.mly" (_1@_2) -# 16207 "parser_cocci_menhir.ml" +# 16760 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16231,9 +16784,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_exp = -# 1941 "parser_cocci_menhir.mly" +# 2021 "parser_cocci_menhir.mly" (_1::_2) -# 16237 "parser_cocci_menhir.ml" +# 16790 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16248,9 +16801,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 = -# 1951 "parser_cocci_menhir.mly" +# 2031 "parser_cocci_menhir.mly" ([]) -# 16254 "parser_cocci_menhir.ml" +# 16807 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16278,9 +16831,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_exp_or = -# 1952 "parser_cocci_menhir.mly" +# 2032 "parser_cocci_menhir.mly" (_1::_2) -# 16284 "parser_cocci_menhir.ml" +# 16837 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16295,9 +16848,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 = -# 1930 "parser_cocci_menhir.mly" +# 2010 "parser_cocci_menhir.mly" ([]) -# 16301 "parser_cocci_menhir.ml" +# 16854 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16325,9 +16878,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_stm = -# 1931 "parser_cocci_menhir.mly" +# 2011 "parser_cocci_menhir.mly" (_1::_2) -# 16331 "parser_cocci_menhir.ml" +# 16884 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16355,9 +16908,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_fun_after_stm = -# 1932 "parser_cocci_menhir.mly" +# 2012 "parser_cocci_menhir.mly" (_1@_2) -# 16361 "parser_cocci_menhir.ml" +# 16914 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16379,9 +16932,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_fun_start = -# 1927 "parser_cocci_menhir.mly" +# 2007 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 16385 "parser_cocci_menhir.ml" +# 16938 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16403,9 +16956,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1693 "parser_cocci_menhir.mly" +# 1773 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 16409 "parser_cocci_menhir.ml" +# 16962 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16426,15 +16979,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16430 "parser_cocci_menhir.ml" +# 16983 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1695 "parser_cocci_menhir.mly" +# 1775 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 16438 "parser_cocci_menhir.ml" +# 16991 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16455,15 +17008,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16459 "parser_cocci_menhir.ml" +# 17012 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1698 "parser_cocci_menhir.mly" +# 1778 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 16467 "parser_cocci_menhir.ml" +# 17020 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16484,16 +17037,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16488 "parser_cocci_menhir.ml" +# 17041 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_func_ident = -# 1701 "parser_cocci_menhir.mly" +# 1781 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) ) -# 16497 "parser_cocci_menhir.ml" +# 17050 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16553,31 +17106,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rb : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 16557 "parser_cocci_menhir.ml" +# 17110 "parser_cocci_menhir.ml" ) = Obj.magic rb in let b : 'tv_fun_start = Obj.magic b in let lb : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 16563 "parser_cocci_menhir.ml" +# 17116 "parser_cocci_menhir.ml" ) = Obj.magic lb in let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 16568 "parser_cocci_menhir.ml" +# 17121 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_decl_ = Obj.magic d in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 16574 "parser_cocci_menhir.ml" +# 17127 "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 = -# 846 "parser_cocci_menhir.mly" +# 865 "parser_cocci_menhir.mly" ( P.verify_parameter_declarations (Ast0.undots d); Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()), f, i, @@ -16585,7 +17138,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode ")" rp, P.clt2mcode "{" lb, b, P.clt2mcode "}" rb)) ) -# 16589 "parser_cocci_menhir.ml" +# 17142 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16631,18 +17184,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pt : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 16635 "parser_cocci_menhir.ml" +# 17188 "parser_cocci_menhir.ml" ) = Obj.magic pt in let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 16640 "parser_cocci_menhir.ml" +# 17193 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 16646 "parser_cocci_menhir.ml" +# 17199 "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 @@ -16652,11 +17205,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 16656 "parser_cocci_menhir.ml" +# 17209 "parser_cocci_menhir.ml" in -# 834 "parser_cocci_menhir.mly" +# 853 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.UnInit (s, @@ -16664,7 +17217,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.FunctionType(Some t, P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)), id, P.clt2mcode ";" pt)) ) -# 16668 "parser_cocci_menhir.ml" +# 17221 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16715,18 +17268,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pt : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 16719 "parser_cocci_menhir.ml" +# 17272 "parser_cocci_menhir.ml" ) = Obj.magic pt in let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 16724 "parser_cocci_menhir.ml" +# 17277 "parser_cocci_menhir.ml" ) = Obj.magic rp in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 16730 "parser_cocci_menhir.ml" +# 17283 "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 @@ -16738,11 +17291,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 16742 "parser_cocci_menhir.ml" +# 17295 "parser_cocci_menhir.ml" in -# 834 "parser_cocci_menhir.mly" +# 853 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.UnInit (s, @@ -16750,7 +17303,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (Ast0.FunctionType(Some t, P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)), id, P.clt2mcode ";" pt)) ) -# 16754 "parser_cocci_menhir.ml" +# 17307 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16772,9 +17325,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident = -# 1706 "parser_cocci_menhir.mly" +# 1786 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 16778 "parser_cocci_menhir.ml" +# 17331 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16795,15 +17348,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 16799 "parser_cocci_menhir.ml" +# 17352 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident = -# 1708 "parser_cocci_menhir.mly" +# 1788 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 16807 "parser_cocci_menhir.ml" +# 17360 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16825,9 +17378,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_i_ in let _endpos = _endpos_i_ in let _v : 'tv_ident_or_const = -# 1666 "parser_cocci_menhir.mly" +# 1746 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) ) -# 16831 "parser_cocci_menhir.ml" +# 17384 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16848,15 +17401,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 16852 "parser_cocci_menhir.ml" +# 17405 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_ident_or_const = -# 1668 "parser_cocci_menhir.mly" +# 1748 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 16860 "parser_cocci_menhir.ml" +# 17413 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16877,14 +17430,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 84 "parser_cocci_menhir.mly" (string * Data.clt) -# 16881 "parser_cocci_menhir.ml" +# 17434 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_incl = # 262 "parser_cocci_menhir.mly" ( let (x,_) = _1 in Data.Include(x) ) -# 16888 "parser_cocci_menhir.ml" +# 17441 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16909,14 +17462,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 16913 "parser_cocci_menhir.ml" +# 17466 "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.Left(P.id2name _2)) ) -# 16920 "parser_cocci_menhir.ml" +# 17473 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16941,14 +17494,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 83 "parser_cocci_menhir.mly" (string) -# 16945 "parser_cocci_menhir.ml" +# 17498 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_incl = # 264 "parser_cocci_menhir.mly" ( Data.Iso(Common.Right _2) ) -# 16952 "parser_cocci_menhir.ml" +# 17505 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -16976,12 +17529,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_incl = # 266 "parser_cocci_menhir.mly" ( let names = List.map P.id2name _2 in + Iteration.parsed_virtual_rules := + Common.union_set names !Iteration.parsed_virtual_rules; (* ensure that the names of virtual and real rules don't overlap *) List.iter (function name -> Hashtbl.add Data.all_metadecls name []) names; Data.Virt(names) ) -# 16985 "parser_cocci_menhir.ml" +# 17540 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17009,11 +17564,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 152 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 17013 "parser_cocci_menhir.ml" +# 17568 "parser_cocci_menhir.ml" ) = # 258 "parser_cocci_menhir.mly" ( _1 ) -# 17017 "parser_cocci_menhir.ml" +# 17572 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17041,11 +17596,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 152 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 17045 "parser_cocci_menhir.ml" +# 17600 "parser_cocci_menhir.ml" ) = # 259 "parser_cocci_menhir.mly" ( _1 ) -# 17049 "parser_cocci_menhir.ml" +# 17604 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17066,12 +17621,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 84 "parser_cocci_menhir.mly" (string * Data.clt) -# 17070 "parser_cocci_menhir.ml" +# 17625 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_includes = -# 740 "parser_cocci_menhir.mly" +# 745 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Include(P.clt2mcode "#include" (P.drop_pos (P.drop_aft (P.id2clt _1))), @@ -17082,7 +17637,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode (Ast.Local (Parse_aux.str2inc (P.id2name _1))) (P.drop_bef clt))) ) -# 17086 "parser_cocci_menhir.ml" +# 17641 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17103,12 +17658,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 84 "parser_cocci_menhir.mly" (string * Data.clt) -# 17107 "parser_cocci_menhir.ml" +# 17662 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_includes = -# 751 "parser_cocci_menhir.mly" +# 756 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.Include(P.clt2mcode "#include" (P.drop_pos (P.drop_aft (P.id2clt _1))), @@ -17119,7 +17674,51 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.clt2mcode (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1))) (P.drop_bef clt))) ) -# 17123 "parser_cocci_menhir.ml" +# 17678 "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__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 _1 : ( +# 85 "parser_cocci_menhir.mly" + (Data.clt * token) +# 17703 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_includes = +# 767 "parser_cocci_menhir.mly" + ( let (clt,ident) = _1 in + Ast0.wrap + (Ast0.Undef + (P.clt2mcode "#undef" clt, + (match ident with + TMetaId((nm,constraints,pure,clt)) -> + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + | TIdent(nm_pure) -> + Ast0.wrap(Ast0.Id(P.id2mcode nm_pure)) + | _ -> + raise + (Semantic_cocci.Semantic + "unexpected name for a #define")))) ) +# 17722 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17145,9 +17744,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_includes = -# 762 "parser_cocci_menhir.mly" +# 781 "parser_cocci_menhir.mly" ( d (Ast0.wrap(Ast0.DOTS([]))) ) -# 17151 "parser_cocci_menhir.ml" +# 17750 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17179,10 +17778,10 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos__3_ in let _v : 'tv_includes = -# 764 "parser_cocci_menhir.mly" +# 783 "parser_cocci_menhir.mly" ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in d (Ast0.wrap(Ast0.DOTS([ty]))) ) -# 17186 "parser_cocci_menhir.ml" +# 17785 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17214,7 +17813,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_includes = -# 767 "parser_cocci_menhir.mly" +# 786 "parser_cocci_menhir.mly" ( let body = match b with [e] -> @@ -17224,7 +17823,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | _ -> b) | _ -> b in _1 (Ast0.wrap(Ast0.DOTS(body))) ) -# 17228 "parser_cocci_menhir.ml" +# 17827 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17246,9 +17845,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize = -# 1159 "parser_cocci_menhir.mly" +# 1178 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitExpr(_1)) ) -# 17252 "parser_cocci_menhir.ml" +# 17851 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17279,25 +17878,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 17283 "parser_cocci_menhir.ml" +# 17882 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 17289 "parser_cocci_menhir.ml" +# 17888 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_initialize = -# 1161 "parser_cocci_menhir.mly" +# 1180 "parser_cocci_menhir.mly" ( if P.struct_initializer _2 then let il = P.drop_dot_commas _2 in Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false)) else Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) ) -# 17301 "parser_cocci_menhir.ml" +# 17900 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17318,15 +17917,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 17322 "parser_cocci_menhir.ml" +# 17921 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize = -# 1168 "parser_cocci_menhir.mly" +# 1187 "parser_cocci_menhir.mly" (let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) ) -# 17330 "parser_cocci_menhir.ml" +# 17929 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17348,9 +17947,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize2 = -# 1174 "parser_cocci_menhir.mly" +# 1193 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitExpr(_1)) ) -# 17354 "parser_cocci_menhir.ml" +# 17953 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17381,25 +17980,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 17385 "parser_cocci_menhir.ml" +# 17984 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 17391 "parser_cocci_menhir.ml" +# 17990 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_initialize2 = -# 1176 "parser_cocci_menhir.mly" +# 1195 "parser_cocci_menhir.mly" ( if P.struct_initializer _2 then let il = P.drop_dot_commas _2 in Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false)) else Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) ) -# 17403 "parser_cocci_menhir.ml" +# 18002 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17431,15 +18030,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 17435 "parser_cocci_menhir.ml" +# 18034 "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 = -# 1184 "parser_cocci_menhir.mly" +# 1203 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) ) -# 17443 "parser_cocci_menhir.ml" +# 18042 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17471,15 +18070,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 17475 "parser_cocci_menhir.ml" +# 18074 "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 = -# 1186 "parser_cocci_menhir.mly" +# 1205 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) ) -# 17483 "parser_cocci_menhir.ml" +# 18082 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17501,9 +18100,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_initialize_list = -# 1199 "parser_cocci_menhir.mly" +# 1218 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1 P.mkidots (fun c -> Ast0.IComma c))) ) -# 17507 "parser_cocci_menhir.ml" +# 18106 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17523,9 +18122,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_invalid = -# 1277 "parser_cocci_menhir.mly" +# 1298 "parser_cocci_menhir.mly" ( raise (Semantic_cocci.Semantic "not matchable") ) -# 17529 "parser_cocci_menhir.ml" +# 18128 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17542,7 +18141,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_is_expression = # 254 "parser_cocci_menhir.mly" ( false ) -# 17546 "parser_cocci_menhir.ml" +# 18145 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17564,7 +18163,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_is_expression = # 255 "parser_cocci_menhir.mly" ( true ) -# 17568 "parser_cocci_menhir.ml" +# 18167 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17590,9 +18189,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_ctype_ = -# 2078 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( Common.Left t ) -# 17596 "parser_cocci_menhir.ml" +# 18195 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17618,9 +18217,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_ctype_ = -# 2079 "parser_cocci_menhir.mly" +# 2159 "parser_cocci_menhir.mly" ( Common.Right t ) -# 17624 "parser_cocci_menhir.ml" +# 18223 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17646,9 +18245,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_decl_var_ = -# 2078 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( Common.Left t ) -# 17652 "parser_cocci_menhir.ml" +# 18251 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17674,9 +18273,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_decl_var_ = -# 2079 "parser_cocci_menhir.mly" +# 2159 "parser_cocci_menhir.mly" ( Common.Right t ) -# 17680 "parser_cocci_menhir.ml" +# 18279 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17702,9 +18301,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_eexpr_ = -# 2078 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( Common.Left t ) -# 17708 "parser_cocci_menhir.ml" +# 18307 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17730,9 +18329,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_eexpr_ = -# 2079 "parser_cocci_menhir.mly" +# 2159 "parser_cocci_menhir.mly" ( Common.Right t ) -# 17736 "parser_cocci_menhir.ml" +# 18335 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17758,9 +18357,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_nest_start_ = -# 2078 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( Common.Left t ) -# 17764 "parser_cocci_menhir.ml" +# 18363 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17786,9 +18385,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_nest_start_ = -# 2079 "parser_cocci_menhir.mly" +# 2159 "parser_cocci_menhir.mly" ( Common.Right t ) -# 17792 "parser_cocci_menhir.ml" +# 18391 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17814,9 +18413,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_single_statement_ = -# 2078 "parser_cocci_menhir.mly" +# 2158 "parser_cocci_menhir.mly" ( Common.Left t ) -# 17820 "parser_cocci_menhir.ml" +# 18419 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17842,9 +18441,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_t_ in let _v : 'tv_iso_single_statement_ = -# 2079 "parser_cocci_menhir.mly" +# 2159 "parser_cocci_menhir.mly" ( Common.Right t ) -# 17848 "parser_cocci_menhir.ml" +# 18447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17882,11 +18481,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 17886 "parser_cocci_menhir.ml" +# 18485 "parser_cocci_menhir.ml" ) = -# 2046 "parser_cocci_menhir.mly" +# 2126 "parser_cocci_menhir.mly" ( let fn x = Ast0.ExprTag x in P.iso_adjust fn fn e1 el ) -# 17890 "parser_cocci_menhir.ml" +# 18489 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17924,11 +18523,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 17928 "parser_cocci_menhir.ml" +# 18527 "parser_cocci_menhir.ml" ) = -# 2048 "parser_cocci_menhir.mly" +# 2128 "parser_cocci_menhir.mly" ( let fn x = Ast0.ArgExprTag x in P.iso_adjust fn fn e1 el ) -# 17932 "parser_cocci_menhir.ml" +# 18531 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -17966,11 +18565,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 17970 "parser_cocci_menhir.ml" +# 18569 "parser_cocci_menhir.ml" ) = -# 2050 "parser_cocci_menhir.mly" +# 2130 "parser_cocci_menhir.mly" ( let fn x = Ast0.TestExprTag x in P.iso_adjust fn fn e1 el ) -# 17974 "parser_cocci_menhir.ml" +# 18573 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18008,13 +18607,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18012 "parser_cocci_menhir.ml" +# 18611 "parser_cocci_menhir.ml" ) = -# 2052 "parser_cocci_menhir.mly" +# 2132 "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 ) -# 18018 "parser_cocci_menhir.ml" +# 18617 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18052,11 +18651,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18056 "parser_cocci_menhir.ml" +# 18655 "parser_cocci_menhir.ml" ) = -# 2056 "parser_cocci_menhir.mly" +# 2136 "parser_cocci_menhir.mly" ( let fn x = Ast0.StmtTag x in P.iso_adjust fn fn s1 sl ) -# 18060 "parser_cocci_menhir.ml" +# 18659 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18094,11 +18693,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18098 "parser_cocci_menhir.ml" +# 18697 "parser_cocci_menhir.ml" ) = -# 2058 "parser_cocci_menhir.mly" +# 2138 "parser_cocci_menhir.mly" ( let fn x = Ast0.TypeCTag x in P.iso_adjust fn fn t1 tl ) -# 18102 "parser_cocci_menhir.ml" +# 18701 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18136,11 +18735,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18140 "parser_cocci_menhir.ml" +# 18739 "parser_cocci_menhir.ml" ) = -# 2060 "parser_cocci_menhir.mly" +# 2140 "parser_cocci_menhir.mly" ( let fn x = Ast0.DotsStmtTag x in P.iso_adjust fn fn e1 el ) -# 18144 "parser_cocci_menhir.ml" +# 18743 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18178,9 +18777,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 18182 "parser_cocci_menhir.ml" +# 18781 "parser_cocci_menhir.ml" ) = -# 2062 "parser_cocci_menhir.mly" +# 2142 "parser_cocci_menhir.mly" ( let check_one = function [x] -> x | _ -> @@ -18195,7 +18794,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 ) -# 18199 "parser_cocci_menhir.ml" +# 18798 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18219,11 +18818,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 171 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 18223 "parser_cocci_menhir.ml" +# 18822 "parser_cocci_menhir.ml" ) = # 188 "parser_cocci_menhir.mly" ( m "" ) -# 18227 "parser_cocci_menhir.ml" +# 18826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18251,11 +18850,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 155 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 18255 "parser_cocci_menhir.ml" +# 18854 "parser_cocci_menhir.ml" ) = # 203 "parser_cocci_menhir.mly" ( P.make_iso_rule_name_result (P.id2name nm) ) -# 18259 "parser_cocci_menhir.ml" +# 18858 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18276,14 +18875,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 18280 "parser_cocci_menhir.ml" +# 18879 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_iter_ident = -# 1720 "parser_cocci_menhir.mly" +# 1800 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) ) -# 18287 "parser_cocci_menhir.ml" +# 18886 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18304,15 +18903,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 66 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 18308 "parser_cocci_menhir.ml" +# 18907 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_iter_ident = -# 1722 "parser_cocci_menhir.mly" +# 1802 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) ) -# 18316 "parser_cocci_menhir.ml" +# 18915 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18329,7 +18928,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_TMul_ = # 114 "standard.mly" ( [] ) -# 18333 "parser_cocci_menhir.ml" +# 18932 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18356,14 +18955,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let x : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 18360 "parser_cocci_menhir.ml" +# 18959 "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 ) -# 18367 "parser_cocci_menhir.ml" +# 18966 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18380,7 +18979,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_array_dec_ = # 114 "standard.mly" ( [] ) -# 18384 "parser_cocci_menhir.ml" +# 18983 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18410,7 +19009,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_array_dec_ = # 116 "standard.mly" ( x :: xs ) -# 18414 "parser_cocci_menhir.ml" +# 19013 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18427,7 +19026,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_case_line_ = # 114 "standard.mly" ( [] ) -# 18431 "parser_cocci_menhir.ml" +# 19030 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18457,7 +19056,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_case_line_ = # 116 "standard.mly" ( x :: xs ) -# 18461 "parser_cocci_menhir.ml" +# 19060 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18474,7 +19073,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_decl_var_ = # 114 "standard.mly" ( [] ) -# 18478 "parser_cocci_menhir.ml" +# 19077 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18504,7 +19103,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_decl_var_ = # 116 "standard.mly" ( x :: xs ) -# 18508 "parser_cocci_menhir.ml" +# 19107 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18521,7 +19120,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_designator_ = # 114 "standard.mly" ( [] ) -# 18525 "parser_cocci_menhir.ml" +# 19124 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18551,7 +19150,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_designator_ = # 116 "standard.mly" ( x :: xs ) -# 18555 "parser_cocci_menhir.ml" +# 19154 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18568,7 +19167,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_incl_ = # 114 "standard.mly" ( [] ) -# 18572 "parser_cocci_menhir.ml" +# 19171 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18598,7 +19197,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_incl_ = # 116 "standard.mly" ( x :: xs ) -# 18602 "parser_cocci_menhir.ml" +# 19201 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18615,7 +19214,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_ctype__ = # 114 "standard.mly" ( [] ) -# 18619 "parser_cocci_menhir.ml" +# 19218 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18645,7 +19244,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_ctype__ = # 116 "standard.mly" ( x :: xs ) -# 18649 "parser_cocci_menhir.ml" +# 19248 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18662,7 +19261,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_decl_var__ = # 114 "standard.mly" ( [] ) -# 18666 "parser_cocci_menhir.ml" +# 19265 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18692,7 +19291,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_decl_var__ = # 116 "standard.mly" ( x :: xs ) -# 18696 "parser_cocci_menhir.ml" +# 19295 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18709,7 +19308,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_eexpr__ = # 114 "standard.mly" ( [] ) -# 18713 "parser_cocci_menhir.ml" +# 19312 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18739,7 +19338,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_eexpr__ = # 116 "standard.mly" ( x :: xs ) -# 18743 "parser_cocci_menhir.ml" +# 19342 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18756,7 +19355,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_nest_start__ = # 114 "standard.mly" ( [] ) -# 18760 "parser_cocci_menhir.ml" +# 19359 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18786,7 +19385,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_nest_start__ = # 116 "standard.mly" ( x :: xs ) -# 18790 "parser_cocci_menhir.ml" +# 19389 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18803,7 +19402,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_single_statement__ = # 114 "standard.mly" ( [] ) -# 18807 "parser_cocci_menhir.ml" +# 19406 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18833,7 +19432,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_iso_single_statement__ = # 116 "standard.mly" ( x :: xs ) -# 18837 "parser_cocci_menhir.ml" +# 19436 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18850,7 +19449,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_ctype__ = # 114 "standard.mly" ( [] ) -# 18854 "parser_cocci_menhir.ml" +# 19453 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18880,7 +19479,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_ctype__ = # 116 "standard.mly" ( x :: xs ) -# 18884 "parser_cocci_menhir.ml" +# 19483 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18897,7 +19496,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_eexpr__ = # 114 "standard.mly" ( [] ) -# 18901 "parser_cocci_menhir.ml" +# 19500 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18927,7 +19526,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_eexpr__ = # 116 "standard.mly" ( x :: xs ) -# 18931 "parser_cocci_menhir.ml" +# 19530 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18944,7 +19543,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_after_dots_or__ = # 114 "standard.mly" ( [] ) -# 18948 "parser_cocci_menhir.ml" +# 19547 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18974,7 +19573,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_after_dots_or__ = # 116 "standard.mly" ( x :: xs ) -# 18978 "parser_cocci_menhir.ml" +# 19577 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -18991,7 +19590,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_start__ = # 114 "standard.mly" ( [] ) -# 18995 "parser_cocci_menhir.ml" +# 19594 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19021,7 +19620,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_fun_start__ = # 116 "standard.mly" ( x :: xs ) -# 19025 "parser_cocci_menhir.ml" +# 19624 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19038,7 +19637,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_rule_elem_statement__ = # 114 "standard.mly" ( [] ) -# 19042 "parser_cocci_menhir.ml" +# 19641 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19068,7 +19667,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_rule_elem_statement__ = # 116 "standard.mly" ( x :: xs ) -# 19072 "parser_cocci_menhir.ml" +# 19671 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19085,7 +19684,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_statement__ = # 114 "standard.mly" ( [] ) -# 19089 "parser_cocci_menhir.ml" +# 19688 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19115,7 +19714,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_mzl_statement__ = # 116 "standard.mly" ( x :: xs ) -# 19119 "parser_cocci_menhir.ml" +# 19718 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19132,7 +19731,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = # 114 "standard.mly" ( [] ) -# 19136 "parser_cocci_menhir.ml" +# 19735 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19171,13 +19770,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 70 "standard.mly" ( (x, y) ) -# 19175 "parser_cocci_menhir.ml" +# 19774 "parser_cocci_menhir.ml" in # 116 "standard.mly" ( x :: xs ) -# 19181 "parser_cocci_menhir.ml" +# 19780 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19194,7 +19793,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_whenppdecs_ = # 114 "standard.mly" ( [] ) -# 19198 "parser_cocci_menhir.ml" +# 19797 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19224,7 +19823,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_list_whenppdecs_ = # 116 "standard.mly" ( x :: xs ) -# 19228 "parser_cocci_menhir.ml" +# 19827 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19246,9 +19845,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_list_len = -# 335 "parser_cocci_menhir.mly" +# 337 "parser_cocci_menhir.mly" ( Common.Left _1 ) -# 19252 "parser_cocci_menhir.ml" +# 19851 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19269,14 +19868,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 19273 "parser_cocci_menhir.ml" +# 19872 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_list_len = -# 336 "parser_cocci_menhir.mly" +# 338 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Common.Right (int_of_string x) ) -# 19280 "parser_cocci_menhir.ml" +# 19879 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19293,7 +19892,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_choose_iso_ = # 57 "standard.mly" ( [] ) -# 19297 "parser_cocci_menhir.ml" +# 19896 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19317,7 +19916,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_choose_iso_ = # 59 "standard.mly" ( x ) -# 19321 "parser_cocci_menhir.ml" +# 19920 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19334,7 +19933,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_disable_ = # 57 "standard.mly" ( [] ) -# 19338 "parser_cocci_menhir.ml" +# 19937 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19358,7 +19957,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_disable_ = # 59 "standard.mly" ( x ) -# 19362 "parser_cocci_menhir.ml" +# 19961 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19375,7 +19974,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_filespec_ = # 57 "standard.mly" ( [] ) -# 19379 "parser_cocci_menhir.ml" +# 19978 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19399,7 +19998,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_filespec_ = # 59 "standard.mly" ( x ) -# 19403 "parser_cocci_menhir.ml" +# 20002 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19416,7 +20015,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_minus_start_ = # 57 "standard.mly" ( [] ) -# 19420 "parser_cocci_menhir.ml" +# 20019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19440,7 +20039,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_minus_start_ = # 59 "standard.mly" ( x ) -# 19444 "parser_cocci_menhir.ml" +# 20043 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19457,7 +20056,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_not_pos_ = # 57 "standard.mly" ( [] ) -# 19461 "parser_cocci_menhir.ml" +# 20060 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19481,7 +20080,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_not_pos_ = # 59 "standard.mly" ( x ) -# 19485 "parser_cocci_menhir.ml" +# 20084 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19498,7 +20097,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_plus_start_ = # 57 "standard.mly" ( [] ) -# 19502 "parser_cocci_menhir.ml" +# 20101 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19522,7 +20121,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_loption_plus_start_ = # 59 "standard.mly" ( x ) -# 19526 "parser_cocci_menhir.ml" +# 20125 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19544,9 +20143,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos_t_ in let _v : 'tv_meta_exp_type = -# 513 "parser_cocci_menhir.mly" +# 518 "parser_cocci_menhir.mly" ( [Ast0_cocci.ast0_type_to_type t] ) -# 19550 "parser_cocci_menhir.ml" +# 20149 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19576,9 +20175,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_t_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_exp_type = -# 515 "parser_cocci_menhir.mly" +# 520 "parser_cocci_menhir.mly" ( [Type_cocci.Array (Ast0_cocci.ast0_type_to_type t)] ) -# 19582 "parser_cocci_menhir.ml" +# 20181 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19614,11 +20213,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_m_ in let _v : 'tv_meta_exp_type = -# 517 "parser_cocci_menhir.mly" +# 522 "parser_cocci_menhir.mly" ( List.map (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m) t ) -# 19622 "parser_cocci_menhir.ml" +# 20221 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19649,14 +20248,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 49 "parser_cocci_menhir.mly" (string) -# 19653 "parser_cocci_menhir.ml" +# 20252 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_ident = -# 1489 "parser_cocci_menhir.mly" +# 1562 "parser_cocci_menhir.mly" ( (Some _1,P.id2name _3) ) -# 19660 "parser_cocci_menhir.ml" +# 20259 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19687,14 +20286,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 49 "parser_cocci_menhir.mly" (string) -# 19691 "parser_cocci_menhir.ml" +# 20290 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_meta_ident = -# 1490 "parser_cocci_menhir.mly" +# 1563 "parser_cocci_menhir.mly" ( (Some _1,_3) ) -# 19698 "parser_cocci_menhir.ml" +# 20297 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19718,11 +20317,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 163 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 19722 "parser_cocci_menhir.ml" +# 20321 "parser_cocci_menhir.ml" ) = # 187 "parser_cocci_menhir.mly" ( m (!Ast0.rule_name) ) -# 19726 "parser_cocci_menhir.ml" +# 20325 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19765,17 +20364,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 347 "parser_cocci_menhir.mly" +# 349 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let tok = check_meta(Ast.MetaParamDecl(arity,name)) in !Data.add_param_meta name pure; tok) ) -# 19773 "parser_cocci_menhir.ml" +# 20372 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 19779 "parser_cocci_menhir.ml" +# 20378 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19822,18 +20421,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 351 "parser_cocci_menhir.mly" +# 353 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let len = Ast.AnyLen in let tok = check_meta(Ast.MetaParamListDecl(arity,name,len)) in !Data.add_paramlist_meta name len pure; tok) ) -# 19831 "parser_cocci_menhir.ml" +# 20430 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 19837 "parser_cocci_menhir.ml" +# 20436 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19880,18 +20479,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 356 "parser_cocci_menhir.mly" +# 358 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let len = Ast.AnyLen in let tok = check_meta(Ast.MetaExpListDecl(arity,name,len)) in !Data.add_explist_meta name len pure; tok) ) -# 19889 "parser_cocci_menhir.ml" +# 20488 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 19895 "parser_cocci_menhir.ml" +# 20494 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19934,17 +20533,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 361 "parser_cocci_menhir.mly" +# 363 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in !Data.add_type_meta name pure; tok) ) -# 19942 "parser_cocci_menhir.ml" +# 20541 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 19948 "parser_cocci_menhir.ml" +# 20547 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -19987,17 +20586,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 365 "parser_cocci_menhir.mly" +# 367 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let tok = check_meta(Ast.MetaInitDecl(arity,name)) in !Data.add_init_meta name pure; tok) ) -# 19995 "parser_cocci_menhir.ml" +# 20594 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20001 "parser_cocci_menhir.ml" +# 20600 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20040,17 +20639,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 369 "parser_cocci_menhir.mly" +# 371 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta -> let tok = check_meta(Ast.MetaStmDecl(arity,name)) in !Data.add_stm_meta name pure; tok) ) -# 20048 "parser_cocci_menhir.ml" +# 20647 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20054 "parser_cocci_menhir.ml" +# 20653 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20093,17 +20692,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 373 "parser_cocci_menhir.mly" +# 375 "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) ) -# 20101 "parser_cocci_menhir.ml" +# 20700 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20107 "parser_cocci_menhir.ml" +# 20706 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20146,17 +20745,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 377 "parser_cocci_menhir.mly" +# 379 "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) ) -# 20154 "parser_cocci_menhir.ml" +# 20753 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20160 "parser_cocci_menhir.ml" +# 20759 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20203,17 +20802,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 381 "parser_cocci_menhir.mly" +# 383 "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) ) -# 20211 "parser_cocci_menhir.ml" +# 20810 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20217 "parser_cocci_menhir.ml" +# 20816 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20256,18 +20855,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 385 "parser_cocci_menhir.mly" +# 387 "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")) ) -# 20265 "parser_cocci_menhir.ml" +# 20864 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20271 "parser_cocci_menhir.ml" +# 20870 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20314,18 +20913,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 390 "parser_cocci_menhir.mly" +# 392 "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")) ) -# 20323 "parser_cocci_menhir.ml" +# 20922 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20329 "parser_cocci_menhir.ml" +# 20928 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20372,18 +20971,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 395 "parser_cocci_menhir.mly" +# 397 "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")) ) -# 20381 "parser_cocci_menhir.ml" +# 20980 "parser_cocci_menhir.ml" in -# 276 "parser_cocci_menhir.mly" +# 278 "parser_cocci_menhir.mly" ( P.create_metadec ar ispure kindfn ids ) -# 20387 "parser_cocci_menhir.ml" +# 20986 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20418,17 +21017,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__4_ in let _v : 'tv_metadec = let kindfn = -# 340 "parser_cocci_menhir.mly" +# 342 "parser_cocci_menhir.mly" ( (fun name check_meta seed -> let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in !Data.add_fresh_id_meta name; tok) ) -# 20426 "parser_cocci_menhir.ml" +# 21025 "parser_cocci_menhir.ml" in -# 279 "parser_cocci_menhir.mly" +# 281 "parser_cocci_menhir.mly" ( P.create_fresh_metadec kindfn ids ) -# 20432 "parser_cocci_menhir.ml" +# 21031 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20471,7 +21070,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 402 "parser_cocci_menhir.mly" +# 404 "parser_cocci_menhir.mly" ( let idfn arity name pure check_meta constraints = let tok = check_meta(Ast.MetaIdDecl(arity,name)) in @@ -20481,21 +21080,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let vl = List.assoc name virtual_env in !Data.add_virt_id_meta_found name vl; [] with Not_found -> + Iteration.parsed_virtual_identifiers := + Common.union_set [name] + !Iteration.parsed_virtual_identifiers; let name = ("virtual",name) in let tok = check_meta(Ast.MetaIdDecl(arity,name)) in !Data.add_virt_id_meta_not_found name pure; tok in (idfn,virtfn) ) -# 20489 "parser_cocci_menhir.ml" +# 21091 "parser_cocci_menhir.ml" in -# 285 "parser_cocci_menhir.mly" +# 287 "parser_cocci_menhir.mly" ( let (normal,virt) = Common.partition_either (fun x -> x) ids in let (idfn,virtfn) = kindfn in function cr -> (P.create_metadec_with_constraints ar ispure idfn normal cr) @ (P.create_metadec_virt ar ispure virtfn virt cr) ) -# 20499 "parser_cocci_menhir.ml" +# 21101 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20538,17 +21140,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 418 "parser_cocci_menhir.mly" +# 423 "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) ) -# 20546 "parser_cocci_menhir.ml" +# 21148 "parser_cocci_menhir.ml" in -# 294 "parser_cocci_menhir.mly" +# 296 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20552 "parser_cocci_menhir.ml" +# 21154 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20595,18 +21197,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__6_ in let _v : 'tv_metadec = let kindfn = -# 422 "parser_cocci_menhir.mly" +# 427 "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) ) -# 20604 "parser_cocci_menhir.ml" +# 21206 "parser_cocci_menhir.ml" in -# 294 "parser_cocci_menhir.mly" +# 296 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20610 "parser_cocci_menhir.ml" +# 21212 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20649,17 +21251,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 427 "parser_cocci_menhir.mly" +# 432 "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) ) -# 20657 "parser_cocci_menhir.ml" +# 21259 "parser_cocci_menhir.ml" in -# 294 "parser_cocci_menhir.mly" +# 296 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20663 "parser_cocci_menhir.ml" +# 21265 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20702,17 +21304,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 431 "parser_cocci_menhir.mly" +# 436 "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) ) -# 20710 "parser_cocci_menhir.ml" +# 21312 "parser_cocci_menhir.ml" in -# 294 "parser_cocci_menhir.mly" +# 296 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20716 "parser_cocci_menhir.ml" +# 21318 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20755,17 +21357,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 437 "parser_cocci_menhir.mly" +# 442 "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) ) -# 20763 "parser_cocci_menhir.ml" +# 21365 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20769 "parser_cocci_menhir.ml" +# 21371 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20818,11 +21420,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 20822 "parser_cocci_menhir.ml" +# 21424 "parser_cocci_menhir.ml" in -# 441 "parser_cocci_menhir.mly" +# 446 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> match l with None -> @@ -20831,13 +21433,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 20835 "parser_cocci_menhir.ml" +# 21437 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20841 "parser_cocci_menhir.ml" +# 21443 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20898,11 +21500,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 20902 "parser_cocci_menhir.ml" +# 21504 "parser_cocci_menhir.ml" in -# 441 "parser_cocci_menhir.mly" +# 446 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> match l with None -> @@ -20911,13 +21513,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 20915 "parser_cocci_menhir.ml" +# 21517 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20921 "parser_cocci_menhir.ml" +# 21523 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -20974,7 +21576,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let m = m0 in let l = l0 in -# 450 "parser_cocci_menhir.mly" +# 455 "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 @@ -20984,13 +21586,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct | Some _ -> !Data.add_local_idexp_meta ty name constraints pure; check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) ) -# 20988 "parser_cocci_menhir.ml" +# 21590 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 20994 "parser_cocci_menhir.ml" +# 21596 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21040,18 +21642,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_metadec = let kindfn = let ty = ty0 in -# 460 "parser_cocci_menhir.mly" +# 465 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> let ty = Some [ty] in let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in !Data.add_exp_meta ty name constraints pure; tok) ) -# 21049 "parser_cocci_menhir.ml" +# 21651 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21055 "parser_cocci_menhir.ml" +# 21657 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21097,21 +21699,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 21101 "parser_cocci_menhir.ml" +# 21703 "parser_cocci_menhir.ml" in -# 465 "parser_cocci_menhir.mly" +# 470 "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) ) -# 21109 "parser_cocci_menhir.ml" +# 21711 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21115 "parser_cocci_menhir.ml" +# 21717 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21165,21 +21767,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 21169 "parser_cocci_menhir.ml" +# 21771 "parser_cocci_menhir.ml" in -# 465 "parser_cocci_menhir.mly" +# 470 "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) ) -# 21177 "parser_cocci_menhir.ml" +# 21779 "parser_cocci_menhir.ml" in -# 299 "parser_cocci_menhir.mly" +# 301 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21183 "parser_cocci_menhir.ml" +# 21785 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21222,17 +21824,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _endpos = _endpos__5_ in let _v : 'tv_metadec = let kindfn = -# 482 "parser_cocci_menhir.mly" +# 487 "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) ) -# 21230 "parser_cocci_menhir.ml" +# 21832 "parser_cocci_menhir.ml" in -# 304 "parser_cocci_menhir.mly" +# 306 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21236 "parser_cocci_menhir.ml" +# 21838 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21278,7 +21880,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_metadec = let kindfn = let vl = vl0 in -# 486 "parser_cocci_menhir.mly" +# 491 "parser_cocci_menhir.mly" ( (fun arity name pure check_meta constraints -> let ty = Some vl in (match constraints with @@ -21303,13 +21905,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) ) -# 21307 "parser_cocci_menhir.ml" +# 21909 "parser_cocci_menhir.ml" in -# 304 "parser_cocci_menhir.mly" +# 306 "parser_cocci_menhir.mly" ( P.create_metadec_with_constraints ar ispure kindfn ids ) -# 21313 "parser_cocci_menhir.ml" +# 21915 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21351,7 +21953,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__5_ in let _v : 'tv_metadec = -# 310 "parser_cocci_menhir.mly" +# 312 "parser_cocci_menhir.mly" ( (if !Data.in_generating then failwith "position variables not allowed in a generated rule file"); let kindfn arity name pure check_meta constraints = @@ -21359,7 +21961,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 ) -# 21363 "parser_cocci_menhir.ml" +# 21965 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21419,13 +22021,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 320 "parser_cocci_menhir.mly" +# 322 "parser_cocci_menhir.mly" ( P.create_len_metadec ar ispure (fun lenname arity name pure check_meta -> let tok = check_meta(Ast.MetaParamListDecl(arity,name,lenname)) in !Data.add_paramlist_meta name lenname pure; tok) len ids ) -# 21429 "parser_cocci_menhir.ml" +# 22031 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21485,13 +22087,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ar_ in let _endpos = _endpos__9_ in let _v : 'tv_metadec = -# 328 "parser_cocci_menhir.mly" +# 330 "parser_cocci_menhir.mly" ( P.create_len_metadec ar ispure (fun lenname arity name pure check_meta -> let tok = check_meta(Ast.MetaExpListDecl(arity,name,lenname)) in !Data.add_explist_meta name lenname pure; tok) len ids ) -# 21495 "parser_cocci_menhir.ml" +# 22097 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21519,9 +22121,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_ctype_ctype_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21525 "parser_cocci_menhir.ml" +# 22127 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21549,9 +22151,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_eexpr_eexpr_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21555 "parser_cocci_menhir.ml" +# 22157 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21579,9 +22181,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_expr_eexpr_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21585 "parser_cocci_menhir.ml" +# 22187 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21609,9 +22211,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_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21615 "parser_cocci_menhir.ml" +# 22217 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21639,9 +22241,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_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21645 "parser_cocci_menhir.ml" +# 22247 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21669,9 +22271,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_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21675 "parser_cocci_menhir.ml" +# 22277 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21699,9 +22301,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_midzero_list_statement_statement_ = -# 2016 "parser_cocci_menhir.mly" +# 2096 "parser_cocci_menhir.mly" ( let (mids,code) = List.split b in (mids,(a::code)) ) -# 21705 "parser_cocci_menhir.ml" +# 22307 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21729,11 +22331,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_minus_body = -# 708 "parser_cocci_menhir.mly" +# 713 "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 ) -# 21737 "parser_cocci_menhir.ml" +# 22339 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21761,11 +22363,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_minus_exp_body = -# 722 "parser_cocci_menhir.mly" +# 727 "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 ) -# 21769 "parser_cocci_menhir.ml" +# 22371 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21793,11 +22395,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 143 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21797 "parser_cocci_menhir.ml" +# 22399 "parser_cocci_menhir.ml" ) = # 183 "parser_cocci_menhir.mly" ( _1 ) -# 21801 "parser_cocci_menhir.ml" +# 22403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21825,11 +22427,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 143 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21829 "parser_cocci_menhir.ml" +# 22431 "parser_cocci_menhir.ml" ) = # 183 "parser_cocci_menhir.mly" ( m ) -# 21833 "parser_cocci_menhir.ml" +# 22435 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21857,11 +22459,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 143 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21861 "parser_cocci_menhir.ml" +# 22463 "parser_cocci_menhir.ml" ) = # 184 "parser_cocci_menhir.mly" ( m ) -# 21865 "parser_cocci_menhir.ml" +# 22467 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21889,11 +22491,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 140 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21893 "parser_cocci_menhir.ml" +# 22495 "parser_cocci_menhir.ml" ) = # 179 "parser_cocci_menhir.mly" ( _1 ) -# 21897 "parser_cocci_menhir.ml" +# 22499 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21921,11 +22523,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 140 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21925 "parser_cocci_menhir.ml" +# 22527 "parser_cocci_menhir.ml" ) = # 179 "parser_cocci_menhir.mly" ( m ) -# 21929 "parser_cocci_menhir.ml" +# 22531 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21953,11 +22555,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 140 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 21957 "parser_cocci_menhir.ml" +# 22559 "parser_cocci_menhir.ml" ) = # 180 "parser_cocci_menhir.mly" ( m ) -# 21961 "parser_cocci_menhir.ml" +# 22563 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -21979,9 +22581,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 1841 "parser_cocci_menhir.mly" +# 1921 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.DECL(_1))] ) -# 21985 "parser_cocci_menhir.ml" +# 22587 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22003,9 +22605,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 1842 "parser_cocci_menhir.mly" +# 1922 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] ) -# 22009 "parser_cocci_menhir.ml" +# 22611 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22027,9 +22629,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 1843 "parser_cocci_menhir.mly" +# 1923 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] ) -# 22033 "parser_cocci_menhir.ml" +# 22635 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22051,9 +22653,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_minus_start = -# 1845 "parser_cocci_menhir.mly" +# 1925 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 ) -# 22057 "parser_cocci_menhir.ml" +# 22659 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22080,14 +22682,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22084 "parser_cocci_menhir.ml" +# 22686 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_ctype_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22091 "parser_cocci_menhir.ml" +# 22693 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22114,14 +22716,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22118 "parser_cocci_menhir.ml" +# 22720 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_eexpr_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22125 "parser_cocci_menhir.ml" +# 22727 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22148,14 +22750,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22152 "parser_cocci_menhir.ml" +# 22754 "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_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22159 "parser_cocci_menhir.ml" +# 22761 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22182,14 +22784,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22186 "parser_cocci_menhir.ml" +# 22788 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_fun_start_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22193 "parser_cocci_menhir.ml" +# 22795 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22216,14 +22818,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22220 "parser_cocci_menhir.ml" +# 22822 "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_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22227 "parser_cocci_menhir.ml" +# 22829 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22250,14 +22852,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22254 "parser_cocci_menhir.ml" +# 22856 "parser_cocci_menhir.ml" ) = Obj.magic a in let _startpos = _startpos_a_ in let _endpos = _endpos_b_ in let _v : 'tv_mzl_statement_ = -# 2019 "parser_cocci_menhir.mly" +# 2099 "parser_cocci_menhir.mly" ( (P.clt2mcode "|" a, b) ) -# 22261 "parser_cocci_menhir.ml" +# 22863 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22279,9 +22881,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_name_opt_decl = -# 915 "parser_cocci_menhir.mly" +# 934 "parser_cocci_menhir.mly" ( _1 ) -# 22285 "parser_cocci_menhir.ml" +# 22887 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22332,41 +22934,41 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22336 "parser_cocci_menhir.ml" +# 22938 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 22342 "parser_cocci_menhir.ml" +# 22944 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 22347 "parser_cocci_menhir.ml" +# 22949 "parser_cocci_menhir.ml" ) = Obj.magic rp in let s : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 22352 "parser_cocci_menhir.ml" +# 22954 "parser_cocci_menhir.ml" ) = Obj.magic s in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 22357 "parser_cocci_menhir.ml" +# 22959 "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 = -# 918 "parser_cocci_menhir.mly" +# 937 "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)) ) -# 22370 "parser_cocci_menhir.ml" +# 22972 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22394,9 +22996,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 1961 "parser_cocci_menhir.mly" +# 2041 "parser_cocci_menhir.mly" (_1@_2) -# 22400 "parser_cocci_menhir.ml" +# 23002 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22422,9 +23024,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 1962 "parser_cocci_menhir.mly" +# 2042 "parser_cocci_menhir.mly" (_2) -# 22428 "parser_cocci_menhir.ml" +# 23030 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22452,9 +23054,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_dots = -# 1963 "parser_cocci_menhir.mly" +# 2043 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 22458 "parser_cocci_menhir.ml" +# 23060 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22469,9 +23071,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 = -# 1971 "parser_cocci_menhir.mly" +# 2051 "parser_cocci_menhir.mly" ([]) -# 22475 "parser_cocci_menhir.ml" +# 23077 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22499,9 +23101,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_exp = -# 1972 "parser_cocci_menhir.mly" +# 2052 "parser_cocci_menhir.mly" (_1::_2) -# 22505 "parser_cocci_menhir.ml" +# 23107 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22516,9 +23118,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 = -# 1966 "parser_cocci_menhir.mly" +# 2046 "parser_cocci_menhir.mly" ([]) -# 22522 "parser_cocci_menhir.ml" +# 23124 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22546,9 +23148,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_stm = -# 1967 "parser_cocci_menhir.mly" +# 2047 "parser_cocci_menhir.mly" (_1::_2) -# 22552 "parser_cocci_menhir.ml" +# 23154 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22576,9 +23178,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nest_after_stm = -# 1968 "parser_cocci_menhir.mly" +# 2048 "parser_cocci_menhir.mly" (_1@_2) -# 22582 "parser_cocci_menhir.ml" +# 23184 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22609,22 +23211,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 22613 "parser_cocci_menhir.ml" +# 23215 "parser_cocci_menhir.ml" ) = Obj.magic c in let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in let _1 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 22619 "parser_cocci_menhir.ml" +# 23221 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_nest_expressions = -# 1286 "parser_cocci_menhir.mly" +# 1307 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1, Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))), P.clt2mcode "...>" c, None, false)) ) -# 22628 "parser_cocci_menhir.ml" +# 23230 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22655,22 +23257,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 22659 "parser_cocci_menhir.ml" +# 23261 "parser_cocci_menhir.ml" ) = Obj.magic c in let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in let _1 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 22665 "parser_cocci_menhir.ml" +# 23267 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_nest_expressions = -# 1290 "parser_cocci_menhir.mly" +# 1311 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1, Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))), P.clt2mcode "...+>" c, None, true)) ) -# 22674 "parser_cocci_menhir.ml" +# 23276 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22692,9 +23294,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nest_start = -# 1958 "parser_cocci_menhir.mly" +# 2038 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 22698 "parser_cocci_menhir.ml" +# 23300 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22716,11 +23318,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 174 "parser_cocci_menhir.mly" (unit) -# 22720 "parser_cocci_menhir.ml" +# 23322 "parser_cocci_menhir.ml" ) = -# 2086 "parser_cocci_menhir.mly" +# 2166 "parser_cocci_menhir.mly" ( () ) -# 22724 "parser_cocci_menhir.ml" +# 23326 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22746,11 +23348,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 174 "parser_cocci_menhir.mly" (unit) -# 22750 "parser_cocci_menhir.ml" +# 23352 "parser_cocci_menhir.ml" ) = -# 2087 "parser_cocci_menhir.mly" +# 2167 "parser_cocci_menhir.mly" ( () ) -# 22754 "parser_cocci_menhir.ml" +# 23356 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22772,11 +23374,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 174 "parser_cocci_menhir.mly" (unit) -# 22776 "parser_cocci_menhir.ml" +# 23378 "parser_cocci_menhir.ml" ) = -# 2088 "parser_cocci_menhir.mly" +# 2168 "parser_cocci_menhir.mly" ( () ) -# 22780 "parser_cocci_menhir.ml" +# 23382 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22804,10 +23406,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__ = -# 1456 "parser_cocci_menhir.mly" +# 1529 "parser_cocci_menhir.mly" ( function dot_builder -> g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) ) -# 22811 "parser_cocci_menhir.ml" +# 23413 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22828,14 +23430,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let x : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 22832 "parser_cocci_menhir.ml" +# 23434 "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 ] ) -# 22839 "parser_cocci_menhir.ml" +# 23441 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22862,14 +23464,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let x : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 22866 "parser_cocci_menhir.ml" +# 23468 "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 ) -# 22873 "parser_cocci_menhir.ml" +# 23475 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22891,9 +23493,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 22897 "parser_cocci_menhir.ml" +# 23499 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22919,16 +23521,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 22923 "parser_cocci_menhir.ml" +# 23525 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_aexpr = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 22932 "parser_cocci_menhir.ml" +# 23534 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22960,17 +23562,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 22964 "parser_cocci_menhir.ml" +# 23566 "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_nonempty_list_start_aexpr_TEllipsis_ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 22974 "parser_cocci_menhir.ml" +# 23576 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -22996,9 +23598,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 23002 "parser_cocci_menhir.ml" +# 23604 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23019,14 +23621,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23023 "parser_cocci_menhir.ml" +# 23625 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 23030 "parser_cocci_menhir.ml" +# 23632 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23052,20 +23654,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23056 "parser_cocci_menhir.ml" +# 23658 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23061 "parser_cocci_menhir.ml" +# 23663 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23069 "parser_cocci_menhir.ml" +# 23671 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23097,22 +23699,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23101 "parser_cocci_menhir.ml" +# 23703 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23106 "parser_cocci_menhir.ml" +# 23708 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 23116 "parser_cocci_menhir.ml" +# 23718 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23134,9 +23736,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 23140 "parser_cocci_menhir.ml" +# 23742 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23162,16 +23764,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23166 "parser_cocci_menhir.ml" +# 23768 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_dparam = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23175 "parser_cocci_menhir.ml" +# 23777 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23203,17 +23805,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23207 "parser_cocci_menhir.ml" +# 23809 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_dparam = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 23217 "parser_cocci_menhir.ml" +# 23819 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23239,9 +23841,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 23245 "parser_cocci_menhir.ml" +# 23847 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23262,14 +23864,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23266 "parser_cocci_menhir.ml" +# 23868 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 23273 "parser_cocci_menhir.ml" +# 23875 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23295,20 +23897,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23299 "parser_cocci_menhir.ml" +# 23901 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23304 "parser_cocci_menhir.ml" +# 23906 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23312 "parser_cocci_menhir.ml" +# 23914 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23340,22 +23942,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23344 "parser_cocci_menhir.ml" +# 23946 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23349 "parser_cocci_menhir.ml" +# 23951 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 23359 "parser_cocci_menhir.ml" +# 23961 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23377,9 +23979,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 23383 "parser_cocci_menhir.ml" +# 23985 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23405,16 +24007,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23409 "parser_cocci_menhir.ml" +# 24011 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_enum_decl_one = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23418 "parser_cocci_menhir.ml" +# 24020 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23446,17 +24048,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23450 "parser_cocci_menhir.ml" +# 24052 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : 'tv_enum_decl_one = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 23460 "parser_cocci_menhir.ml" +# 24062 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23482,9 +24084,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 23488 "parser_cocci_menhir.ml" +# 24090 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23506,9 +24108,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 23512 "parser_cocci_menhir.ml" +# 24114 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23534,16 +24136,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23538 "parser_cocci_menhir.ml" +# 24140 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23547 "parser_cocci_menhir.ml" +# 24149 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23575,18 +24177,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23579 "parser_cocci_menhir.ml" +# 24181 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 23590 "parser_cocci_menhir.ml" +# 24192 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23608,9 +24210,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 23614 "parser_cocci_menhir.ml" +# 24216 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23636,16 +24238,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23640 "parser_cocci_menhir.ml" +# 24242 "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_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23649 "parser_cocci_menhir.ml" +# 24251 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23677,17 +24279,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23681 "parser_cocci_menhir.ml" +# 24283 "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_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 23691 "parser_cocci_menhir.ml" +# 24293 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23713,9 +24315,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 23719 "parser_cocci_menhir.ml" +# 24321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23737,9 +24339,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 23743 "parser_cocci_menhir.ml" +# 24345 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23765,16 +24367,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23769 "parser_cocci_menhir.ml" +# 24371 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23778 "parser_cocci_menhir.ml" +# 24380 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23806,18 +24408,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23810 "parser_cocci_menhir.ml" +# 24412 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 23821 "parser_cocci_menhir.ml" +# 24423 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23839,9 +24441,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 23845 "parser_cocci_menhir.ml" +# 24447 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23867,16 +24469,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23871 "parser_cocci_menhir.ml" +# 24473 "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__2_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 23880 "parser_cocci_menhir.ml" +# 24482 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23908,17 +24510,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 23912 "parser_cocci_menhir.ml" +# 24514 "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_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 23922 "parser_cocci_menhir.ml" +# 24524 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23944,9 +24546,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 23950 "parser_cocci_menhir.ml" +# 24552 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -23967,14 +24569,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 23971 "parser_cocci_menhir.ml" +# 24573 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 23978 "parser_cocci_menhir.ml" +# 24580 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24000,20 +24602,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24004 "parser_cocci_menhir.ml" +# 24606 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 24009 "parser_cocci_menhir.ml" +# 24611 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24017 "parser_cocci_menhir.ml" +# 24619 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24045,22 +24647,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24049 "parser_cocci_menhir.ml" +# 24651 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 24054 "parser_cocci_menhir.ml" +# 24656 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 24064 "parser_cocci_menhir.ml" +# 24666 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24082,9 +24684,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1768 "parser_cocci_menhir.mly" +# 1848 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [_1] ) -# 24088 "parser_cocci_menhir.ml" +# 24690 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24110,16 +24712,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24114 "parser_cocci_menhir.ml" +# 24716 "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__2_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1770 "parser_cocci_menhir.mly" +# 1850 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24123 "parser_cocci_menhir.ml" +# 24725 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24151,17 +24753,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24155 "parser_cocci_menhir.ml" +# 24757 "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_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1773 "parser_cocci_menhir.mly" +# 1853 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (_3 build_dots build_comma) ) -# 24165 "parser_cocci_menhir.ml" +# 24767 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24187,9 +24789,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1776 "parser_cocci_menhir.mly" +# 1856 "parser_cocci_menhir.mly" ( _2 ) -# 24193 "parser_cocci_menhir.ml" +# 24795 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24210,14 +24812,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 24214 "parser_cocci_menhir.ml" +# 24816 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_d_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1777 "parser_cocci_menhir.mly" +# 1857 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d)] ) -# 24221 "parser_cocci_menhir.ml" +# 24823 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24243,20 +24845,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24247 "parser_cocci_menhir.ml" +# 24849 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 24252 "parser_cocci_menhir.ml" +# 24854 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos__2_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1779 "parser_cocci_menhir.mly" +# 1859 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] ) -# 24260 "parser_cocci_menhir.ml" +# 24862 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24288,22 +24890,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24292 "parser_cocci_menhir.ml" +# 24894 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let d : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 24297 "parser_cocci_menhir.ml" +# 24899 "parser_cocci_menhir.ml" ) = Obj.magic d in let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = -# 1782 "parser_cocci_menhir.mly" +# 1862 "parser_cocci_menhir.mly" ( fun build_dots build_comma -> (build_dots "..." d):: (Ast0.wrap(build_comma(P.clt2mcode "," _2))):: (r build_dots build_comma) ) -# 24307 "parser_cocci_menhir.ml" +# 24909 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24329,13 +24931,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_ceq = -# 1629 "parser_cocci_menhir.mly" +# 1709 "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] ) -# 24339 "parser_cocci_menhir.ml" +# 24941 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24369,13 +24971,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_ceq = -# 1635 "parser_cocci_menhir.mly" +# 1715 "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 ) -# 24379 "parser_cocci_menhir.ml" +# 24981 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24397,9 +24999,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ceq_ in let _endpos = _endpos_ceq_ in let _v : 'tv_not_ceq_or_sub = -# 1605 "parser_cocci_menhir.mly" +# 1685 "parser_cocci_menhir.mly" (Ast0.NotExpCstrt ceq) -# 24403 "parser_cocci_menhir.ml" +# 25005 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24421,9 +25023,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_not_ceq_or_sub = -# 1606 "parser_cocci_menhir.mly" +# 1686 "parser_cocci_menhir.mly" (Ast0.SubExpCstrt s) -# 24427 "parser_cocci_menhir.ml" +# 25029 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24449,14 +25051,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_eqe = -# 1610 "parser_cocci_menhir.mly" +# 1690 "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))))] ) -# 24460 "parser_cocci_menhir.ml" +# 25062 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24490,7 +25092,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_eqe = -# 1617 "parser_cocci_menhir.mly" +# 1697 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -24500,7 +25102,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))) l ) -# 24504 "parser_cocci_menhir.ml" +# 25106 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24526,7 +25128,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_eqid = -# 1567 "parser_cocci_menhir.mly" +# 1647 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -24540,7 +25142,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in Ast.IdNegIdSet([],[i]) | (None,i) -> Ast.IdNegIdSet([i],[])) ) -# 24544 "parser_cocci_menhir.ml" +# 25146 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24574,7 +25176,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_eqid = -# 1581 "parser_cocci_menhir.mly" +# 1661 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -24592,7 +25194,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct ([],[]) l in Ast.IdNegIdSet(str,meta) ) -# 24596 "parser_cocci_menhir.ml" +# 25198 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24618,7 +25220,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_not_pos = -# 1673 "parser_cocci_menhir.mly" +# 1753 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -24627,7 +25229,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)) in [i] ) -# 24631 "parser_cocci_menhir.ml" +# 25233 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24661,7 +25263,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_not_pos = -# 1682 "parser_cocci_menhir.mly" +# 1762 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -24671,7 +25273,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaPosDecl(Ast.NONE,mv))) l ) -# 24675 "parser_cocci_menhir.ml" +# 25277 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24693,9 +25295,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_dec_decl_ = -# 1743 "parser_cocci_menhir.mly" +# 1823 "parser_cocci_menhir.mly" ( _1 ) -# 24699 "parser_cocci_menhir.ml" +# 25301 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24716,12 +25318,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 70 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 24720 "parser_cocci_menhir.ml" +# 25322 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_dec_decl_ = -# 1745 "parser_cocci_menhir.mly" +# 1825 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -24730,7 +25332,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)) ) -# 24734 "parser_cocci_menhir.ml" +# 25336 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24752,9 +25354,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_ = -# 1743 "parser_cocci_menhir.mly" +# 1823 "parser_cocci_menhir.mly" ( _1 ) -# 24758 "parser_cocci_menhir.ml" +# 25360 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24775,12 +25377,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 70 "parser_cocci_menhir.mly" (Parse_aux.list_info) -# 24779 "parser_cocci_menhir.ml" +# 25381 "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_ = -# 1745 "parser_cocci_menhir.mly" +# 1825 "parser_cocci_menhir.mly" ( let (nm,lenname,pure,clt) = _1 in let nm = P.clt2mcode nm clt in let lenname = @@ -24789,7 +25391,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)) ) -# 24793 "parser_cocci_menhir.ml" +# 25395 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24815,15 +25417,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24819 "parser_cocci_menhir.ml" +# 25421 "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 = -# 1094 "parser_cocci_menhir.mly" +# 1113 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) ) -# 24827 "parser_cocci_menhir.ml" +# 25429 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24844,14 +25446,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 24848 "parser_cocci_menhir.ml" +# 25450 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_one_decl_var = -# 1095 "parser_cocci_menhir.mly" +# 1114 "parser_cocci_menhir.mly" ( P.meta_decl _1 ) -# 24855 "parser_cocci_menhir.ml" +# 25457 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24882,7 +25484,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24886 "parser_cocci_menhir.ml" +# 25488 "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 @@ -24892,14 +25494,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 24896 "parser_cocci_menhir.ml" +# 25498 "parser_cocci_menhir.ml" in -# 1097 "parser_cocci_menhir.mly" +# 1116 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) ) -# 24903 "parser_cocci_menhir.ml" +# 25505 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24935,7 +25537,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 24939 "parser_cocci_menhir.ml" +# 25541 "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 @@ -24947,14 +25549,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 24951 "parser_cocci_menhir.ml" +# 25553 "parser_cocci_menhir.ml" in -# 1097 "parser_cocci_menhir.mly" +# 1116 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) ) -# 24958 "parser_cocci_menhir.ml" +# 25560 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -24976,9 +25578,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_f_ in let _v : 'tv_one_decl_var = -# 1099 "parser_cocci_menhir.mly" +# 1118 "parser_cocci_menhir.mly" ( f ) -# 24982 "parser_cocci_menhir.ml" +# 25584 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25019,13 +25621,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25023 "parser_cocci_menhir.ml" +# 25625 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25029 "parser_cocci_menhir.ml" +# 25631 "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 @@ -25035,14 +25637,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25039 "parser_cocci_menhir.ml" +# 25641 "parser_cocci_menhir.ml" in -# 1101 "parser_cocci_menhir.mly" +# 1120 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) ) -# 25046 "parser_cocci_menhir.ml" +# 25648 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25088,13 +25690,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25092 "parser_cocci_menhir.ml" +# 25694 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25098 "parser_cocci_menhir.ml" +# 25700 "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 @@ -25106,14 +25708,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25110 "parser_cocci_menhir.ml" +# 25712 "parser_cocci_menhir.ml" in -# 1101 "parser_cocci_menhir.mly" +# 1120 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) ) -# 25117 "parser_cocci_menhir.ml" +# 25719 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25144,7 +25746,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25148 "parser_cocci_menhir.ml" +# 25750 "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 @@ -25154,22 +25756,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25158 "parser_cocci_menhir.ml" +# 25760 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 25165 "parser_cocci_menhir.ml" +# 25767 "parser_cocci_menhir.ml" in -# 1106 "parser_cocci_menhir.mly" +# 1125 "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)) ) -# 25173 "parser_cocci_menhir.ml" +# 25775 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25205,7 +25807,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25209 "parser_cocci_menhir.ml" +# 25811 "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 @@ -25217,22 +25819,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25221 "parser_cocci_menhir.ml" +# 25823 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 25228 "parser_cocci_menhir.ml" +# 25830 "parser_cocci_menhir.ml" in -# 1106 "parser_cocci_menhir.mly" +# 1125 "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)) ) -# 25236 "parser_cocci_menhir.ml" +# 25838 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25268,7 +25870,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25272 "parser_cocci_menhir.ml" +# 25874 "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 @@ -25279,7 +25881,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25283 "parser_cocci_menhir.ml" +# 25885 "parser_cocci_menhir.ml" in let s = @@ -25287,15 +25889,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25291 "parser_cocci_menhir.ml" +# 25893 "parser_cocci_menhir.ml" in -# 1106 "parser_cocci_menhir.mly" +# 1125 "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)) ) -# 25299 "parser_cocci_menhir.ml" +# 25901 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25336,7 +25938,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25340 "parser_cocci_menhir.ml" +# 25942 "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 @@ -25349,7 +25951,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25353 "parser_cocci_menhir.ml" +# 25955 "parser_cocci_menhir.ml" in let s = @@ -25357,15 +25959,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25361 "parser_cocci_menhir.ml" +# 25963 "parser_cocci_menhir.ml" in -# 1106 "parser_cocci_menhir.mly" +# 1125 "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)) ) -# 25369 "parser_cocci_menhir.ml" +# 25971 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25406,13 +26008,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25410 "parser_cocci_menhir.ml" +# 26012 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25416 "parser_cocci_menhir.ml" +# 26018 "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 @@ -25422,24 +26024,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25426 "parser_cocci_menhir.ml" +# 26028 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 25433 "parser_cocci_menhir.ml" +# 26035 "parser_cocci_menhir.ml" in -# 1111 "parser_cocci_menhir.mly" +# 1130 "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)) ) -# 25443 "parser_cocci_menhir.ml" +# 26045 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25485,13 +26087,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25489 "parser_cocci_menhir.ml" +# 26091 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25495 "parser_cocci_menhir.ml" +# 26097 "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 @@ -25503,24 +26105,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25507 "parser_cocci_menhir.ml" +# 26109 "parser_cocci_menhir.ml" in let s = # 39 "standard.mly" ( None ) -# 25514 "parser_cocci_menhir.ml" +# 26116 "parser_cocci_menhir.ml" in -# 1111 "parser_cocci_menhir.mly" +# 1130 "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)) ) -# 25524 "parser_cocci_menhir.ml" +# 26126 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25566,13 +26168,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25570 "parser_cocci_menhir.ml" +# 26172 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25576 "parser_cocci_menhir.ml" +# 26178 "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 @@ -25583,7 +26185,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25587 "parser_cocci_menhir.ml" +# 26189 "parser_cocci_menhir.ml" in let s = @@ -25591,17 +26193,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25595 "parser_cocci_menhir.ml" +# 26197 "parser_cocci_menhir.ml" in -# 1111 "parser_cocci_menhir.mly" +# 1130 "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)) ) -# 25605 "parser_cocci_menhir.ml" +# 26207 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25652,13 +26254,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25656 "parser_cocci_menhir.ml" +# 26258 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25662 "parser_cocci_menhir.ml" +# 26264 "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 @@ -25671,7 +26273,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25675 "parser_cocci_menhir.ml" +# 26277 "parser_cocci_menhir.ml" in let s = @@ -25679,17 +26281,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25683 "parser_cocci_menhir.ml" +# 26285 "parser_cocci_menhir.ml" in -# 1111 "parser_cocci_menhir.mly" +# 1130 "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)) ) -# 25693 "parser_cocci_menhir.ml" +# 26295 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25750,34 +26352,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25754 "parser_cocci_menhir.ml" +# 26356 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 25759 "parser_cocci_menhir.ml" +# 26361 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 25765 "parser_cocci_menhir.ml" +# 26367 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 25770 "parser_cocci_menhir.ml" +# 26372 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 25776 "parser_cocci_menhir.ml" +# 26378 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 25781 "parser_cocci_menhir.ml" +# 26383 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -25786,11 +26388,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 25790 "parser_cocci_menhir.ml" +# 26392 "parser_cocci_menhir.ml" in -# 1121 "parser_cocci_menhir.mly" +# 1140 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -25798,7 +26400,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)) ) -# 25802 "parser_cocci_menhir.ml" +# 26404 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25864,34 +26466,34 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25868 "parser_cocci_menhir.ml" +# 26470 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 25873 "parser_cocci_menhir.ml" +# 26475 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 25879 "parser_cocci_menhir.ml" +# 26481 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 25884 "parser_cocci_menhir.ml" +# 26486 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 25890 "parser_cocci_menhir.ml" +# 26492 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 25895 "parser_cocci_menhir.ml" +# 26497 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -25902,11 +26504,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 25906 "parser_cocci_menhir.ml" +# 26508 "parser_cocci_menhir.ml" in -# 1121 "parser_cocci_menhir.mly" +# 1140 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -25914,7 +26516,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)) ) -# 25918 "parser_cocci_menhir.ml" +# 26520 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -25955,27 +26557,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _5 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 25959 "parser_cocci_menhir.ml" +# 26561 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 25964 "parser_cocci_menhir.ml" +# 26566 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 25970 "parser_cocci_menhir.ml" +# 26572 "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 = -# 1129 "parser_cocci_menhir.mly" +# 1148 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3, P.clt2mcode ")" _4,P.clt2mcode ";" _5)) ) -# 25979 "parser_cocci_menhir.ml" +# 26581 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26046,40 +26648,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 26050 "parser_cocci_menhir.ml" +# 26652 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 26056 "parser_cocci_menhir.ml" +# 26658 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 26061 "parser_cocci_menhir.ml" +# 26663 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 26067 "parser_cocci_menhir.ml" +# 26669 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 26072 "parser_cocci_menhir.ml" +# 26674 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 26078 "parser_cocci_menhir.ml" +# 26680 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 26083 "parser_cocci_menhir.ml" +# 26685 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let _startpos = _startpos_t_ in @@ -26088,11 +26690,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 26092 "parser_cocci_menhir.ml" +# 26694 "parser_cocci_menhir.ml" in -# 1135 "parser_cocci_menhir.mly" +# 1154 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -26100,7 +26702,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))) -# 26104 "parser_cocci_menhir.ml" +# 26706 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26176,40 +26778,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 26180 "parser_cocci_menhir.ml" +# 26782 "parser_cocci_menhir.ml" ) = Obj.magic pv in let e : 'tv_initialize = Obj.magic e in let q : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 26186 "parser_cocci_menhir.ml" +# 26788 "parser_cocci_menhir.ml" ) = Obj.magic q in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 26191 "parser_cocci_menhir.ml" +# 26793 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 26197 "parser_cocci_menhir.ml" +# 26799 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 26202 "parser_cocci_menhir.ml" +# 26804 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 26208 "parser_cocci_menhir.ml" +# 26810 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 26213 "parser_cocci_menhir.ml" +# 26815 "parser_cocci_menhir.ml" ) = Obj.magic lp1 in let t : 'tv_ctype = Obj.magic t in let x0 : 'tv_storage = Obj.magic x0 in @@ -26220,11 +26822,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 26224 "parser_cocci_menhir.ml" +# 26826 "parser_cocci_menhir.ml" in -# 1135 "parser_cocci_menhir.mly" +# 1154 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -26232,7 +26834,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))) -# 26236 "parser_cocci_menhir.ml" +# 26838 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26249,7 +26851,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TLocal_ = # 29 "standard.mly" ( None ) -# 26253 "parser_cocci_menhir.ml" +# 26855 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26273,7 +26875,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TLocal_ = # 31 "standard.mly" ( Some x ) -# 26277 "parser_cocci_menhir.ml" +# 26879 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26290,7 +26892,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TPosAny_ = # 29 "standard.mly" ( None ) -# 26294 "parser_cocci_menhir.ml" +# 26896 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26314,7 +26916,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_TPosAny_ = # 31 "standard.mly" ( Some x ) -# 26318 "parser_cocci_menhir.ml" +# 26920 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26331,7 +26933,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_eexpr_ = # 29 "standard.mly" ( None ) -# 26335 "parser_cocci_menhir.ml" +# 26937 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26355,7 +26957,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_eexpr_ = # 31 "standard.mly" ( Some x ) -# 26359 "parser_cocci_menhir.ml" +# 26961 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26372,7 +26974,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_not_ceq_or_sub_ = # 29 "standard.mly" ( None ) -# 26376 "parser_cocci_menhir.ml" +# 26978 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26396,7 +26998,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_not_ceq_or_sub_ = # 31 "standard.mly" ( Some x ) -# 26400 "parser_cocci_menhir.ml" +# 27002 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26413,7 +27015,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqe_or_sub_ = # 29 "standard.mly" ( None ) -# 26417 "parser_cocci_menhir.ml" +# 27019 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26437,7 +27039,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqe_or_sub_ = # 31 "standard.mly" ( Some x ) -# 26441 "parser_cocci_menhir.ml" +# 27043 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26454,7 +27056,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqid_ = # 29 "standard.mly" ( None ) -# 26458 "parser_cocci_menhir.ml" +# 27060 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26478,7 +27080,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_option_re_or_not_eqid_ = # 31 "standard.mly" ( Some x ) -# 26482 "parser_cocci_menhir.ml" +# 27084 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26493,9 +27095,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 = -# 1908 "parser_cocci_menhir.mly" +# 1988 "parser_cocci_menhir.mly" ([]) -# 26499 "parser_cocci_menhir.ml" +# 27101 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26521,9 +27123,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 1909 "parser_cocci_menhir.mly" +# 1989 "parser_cocci_menhir.mly" (_2) -# 26527 "parser_cocci_menhir.ml" +# 27129 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26551,9 +27153,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 1911 "parser_cocci_menhir.mly" +# 1991 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 ) -# 26557 "parser_cocci_menhir.ml" +# 27159 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26581,9 +27183,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 1912 "parser_cocci_menhir.mly" +# 1992 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 26587 "parser_cocci_menhir.ml" +# 27189 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26611,9 +27213,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_dots = -# 1914 "parser_cocci_menhir.mly" +# 1994 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 26617 "parser_cocci_menhir.ml" +# 27219 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26628,9 +27230,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 = -# 1904 "parser_cocci_menhir.mly" +# 1984 "parser_cocci_menhir.mly" ([]) -# 26634 "parser_cocci_menhir.ml" +# 27236 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26658,9 +27260,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_exp = -# 1905 "parser_cocci_menhir.mly" +# 1985 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 26664 "parser_cocci_menhir.ml" +# 27266 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26675,9 +27277,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 = -# 1917 "parser_cocci_menhir.mly" +# 1997 "parser_cocci_menhir.mly" ([]) -# 26681 "parser_cocci_menhir.ml" +# 27283 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26705,9 +27307,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 1918 "parser_cocci_menhir.mly" +# 1998 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 26711 "parser_cocci_menhir.ml" +# 27313 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26735,9 +27337,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 1919 "parser_cocci_menhir.mly" +# 1999 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 26741 "parser_cocci_menhir.ml" +# 27343 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26765,9 +27367,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_after_stm = -# 1921 "parser_cocci_menhir.mly" +# 2001 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 26771 "parser_cocci_menhir.ml" +# 27373 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26795,9 +27397,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_plus_body = -# 716 "parser_cocci_menhir.mly" +# 721 "parser_cocci_menhir.mly" ( Top_level.top_level (f@b(*@ew*)) ) -# 26801 "parser_cocci_menhir.ml" +# 27403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26825,9 +27427,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_f_ in let _endpos = _endpos_b_ in let _v : 'tv_plus_exp_body = -# 730 "parser_cocci_menhir.mly" +# 735 "parser_cocci_menhir.mly" ( Top_level.top_level (f@[b](*@ew*)) ) -# 26831 "parser_cocci_menhir.ml" +# 27433 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26855,11 +27457,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 149 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 26859 "parser_cocci_menhir.ml" +# 27461 "parser_cocci_menhir.ml" ) = # 185 "parser_cocci_menhir.mly" ( _1 ) -# 26863 "parser_cocci_menhir.ml" +# 27465 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26887,11 +27489,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 149 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 26891 "parser_cocci_menhir.ml" +# 27493 "parser_cocci_menhir.ml" ) = # 185 "parser_cocci_menhir.mly" ( p ) -# 26895 "parser_cocci_menhir.ml" +# 27497 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26919,11 +27521,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 149 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 26923 "parser_cocci_menhir.ml" +# 27525 "parser_cocci_menhir.ml" ) = # 186 "parser_cocci_menhir.mly" ( p ) -# 26927 "parser_cocci_menhir.ml" +# 27529 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26951,11 +27553,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 146 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 26955 "parser_cocci_menhir.ml" +# 27557 "parser_cocci_menhir.ml" ) = # 181 "parser_cocci_menhir.mly" ( _1 ) -# 26959 "parser_cocci_menhir.ml" +# 27561 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -26983,11 +27585,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 146 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 26987 "parser_cocci_menhir.ml" +# 27589 "parser_cocci_menhir.ml" ) = # 181 "parser_cocci_menhir.mly" ( p ) -# 26991 "parser_cocci_menhir.ml" +# 27593 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27015,11 +27617,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 146 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 27019 "parser_cocci_menhir.ml" +# 27621 "parser_cocci_menhir.ml" ) = # 182 "parser_cocci_menhir.mly" ( p ) -# 27023 "parser_cocci_menhir.ml" +# 27625 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27041,9 +27643,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_plus_start = -# 1893 "parser_cocci_menhir.mly" +# 1973 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] ) -# 27047 "parser_cocci_menhir.ml" +# 27649 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27065,9 +27667,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_plus_start = -# 1894 "parser_cocci_menhir.mly" +# 1974 "parser_cocci_menhir.mly" ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] ) -# 27071 "parser_cocci_menhir.ml" +# 27673 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27095,9 +27697,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 1896 "parser_cocci_menhir.mly" +# 1976 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 ) -# 27101 "parser_cocci_menhir.ml" +# 27703 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27125,9 +27727,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 1898 "parser_cocci_menhir.mly" +# 1978 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 ) -# 27131 "parser_cocci_menhir.ml" +# 27733 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27155,9 +27757,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 1899 "parser_cocci_menhir.mly" +# 1979 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DECL(_1))::_2 ) -# 27161 "parser_cocci_menhir.ml" +# 27763 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27185,9 +27787,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_plus_start = -# 1901 "parser_cocci_menhir.mly" +# 1981 "parser_cocci_menhir.mly" ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 ) -# 27191 "parser_cocci_menhir.ml" +# 27793 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27208,14 +27810,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 49 "parser_cocci_menhir.mly" (string) -# 27212 "parser_cocci_menhir.ml" +# 27814 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pnrule = # 236 "parser_cocci_menhir.mly" ( Ast.Dep _1 ) -# 27219 "parser_cocci_menhir.ml" +# 27821 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27240,14 +27842,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 49 "parser_cocci_menhir.mly" (string) -# 27244 "parser_cocci_menhir.ml" +# 27846 "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.AntiDep _2 ) -# 27251 "parser_cocci_menhir.ml" +# 27853 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27272,14 +27874,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 49 "parser_cocci_menhir.mly" (string) -# 27276 "parser_cocci_menhir.ml" +# 27878 "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.EverDep _2 ) -# 27283 "parser_cocci_menhir.ml" +# 27885 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27304,14 +27906,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 49 "parser_cocci_menhir.mly" (string) -# 27308 "parser_cocci_menhir.ml" +# 27910 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_pnrule = # 239 "parser_cocci_menhir.mly" ( Ast.NeverDep _2 ) -# 27315 "parser_cocci_menhir.ml" +# 27917 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27343,7 +27945,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pnrule = # 240 "parser_cocci_menhir.mly" ( _2 ) -# 27347 "parser_cocci_menhir.ml" +# 27949 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27365,9 +27967,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_ = -# 1389 "parser_cocci_menhir.mly" +# 1462 "parser_cocci_menhir.mly" ( _1 ) -# 27371 "parser_cocci_menhir.ml" +# 27973 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27403,22 +28005,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27407 "parser_cocci_menhir.ml" +# 28009 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27413 "parser_cocci_menhir.ml" +# 28015 "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_ = -# 1391 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 27422 "parser_cocci_menhir.ml" +# 28024 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27450,15 +28052,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 27454 "parser_cocci_menhir.ml" +# 28056 "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_ = -# 1394 "parser_cocci_menhir.mly" +# 1467 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 27462 "parser_cocci_menhir.ml" +# 28064 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27490,16 +28092,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 108 "parser_cocci_menhir.mly" (Data.clt) -# 27494 "parser_cocci_menhir.ml" +# 28096 "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_ = -# 1396 "parser_cocci_menhir.mly" +# 1469 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 27503 "parser_cocci_menhir.ml" +# 28105 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27525,15 +28127,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 27529 "parser_cocci_menhir.ml" +# 28131 "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_ = -# 1399 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 27537 "parser_cocci_menhir.ml" +# 28139 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27559,15 +28161,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 27563 "parser_cocci_menhir.ml" +# 28165 "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_ = -# 1401 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 27571 "parser_cocci_menhir.ml" +# 28173 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27603,23 +28205,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 27607 "parser_cocci_menhir.ml" +# 28209 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 27613 "parser_cocci_menhir.ml" +# 28215 "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_ = -# 1403 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 27623 "parser_cocci_menhir.ml" +# 28225 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27641,9 +28243,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_postfix_expr_eexpr_invalid_ = -# 1389 "parser_cocci_menhir.mly" +# 1462 "parser_cocci_menhir.mly" ( _1 ) -# 27647 "parser_cocci_menhir.ml" +# 28249 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27679,22 +28281,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27683 "parser_cocci_menhir.ml" +# 28285 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27689 "parser_cocci_menhir.ml" +# 28291 "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_ = -# 1391 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 27698 "parser_cocci_menhir.ml" +# 28300 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27726,15 +28328,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 27730 "parser_cocci_menhir.ml" +# 28332 "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_ = -# 1394 "parser_cocci_menhir.mly" +# 1467 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 27738 "parser_cocci_menhir.ml" +# 28340 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27766,16 +28368,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 108 "parser_cocci_menhir.mly" (Data.clt) -# 27770 "parser_cocci_menhir.ml" +# 28372 "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_ = -# 1396 "parser_cocci_menhir.mly" +# 1469 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 27779 "parser_cocci_menhir.ml" +# 28381 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27801,15 +28403,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 27805 "parser_cocci_menhir.ml" +# 28407 "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_ = -# 1399 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 27813 "parser_cocci_menhir.ml" +# 28415 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27835,15 +28437,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 27839 "parser_cocci_menhir.ml" +# 28441 "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_ = -# 1401 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 27847 "parser_cocci_menhir.ml" +# 28449 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27879,23 +28481,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 27883 "parser_cocci_menhir.ml" +# 28485 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 27889 "parser_cocci_menhir.ml" +# 28491 "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_ = -# 1403 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 27899 "parser_cocci_menhir.ml" +# 28501 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27917,9 +28519,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_ = -# 1389 "parser_cocci_menhir.mly" +# 1462 "parser_cocci_menhir.mly" ( _1 ) -# 27923 "parser_cocci_menhir.ml" +# 28525 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -27955,22 +28557,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27959 "parser_cocci_menhir.ml" +# 28561 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 27965 "parser_cocci_menhir.ml" +# 28567 "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_ = -# 1391 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 27974 "parser_cocci_menhir.ml" +# 28576 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28002,15 +28604,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 28006 "parser_cocci_menhir.ml" +# 28608 "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_ = -# 1394 "parser_cocci_menhir.mly" +# 1467 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 28014 "parser_cocci_menhir.ml" +# 28616 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28042,16 +28644,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 108 "parser_cocci_menhir.mly" (Data.clt) -# 28046 "parser_cocci_menhir.ml" +# 28648 "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_ = -# 1396 "parser_cocci_menhir.mly" +# 1469 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 28055 "parser_cocci_menhir.ml" +# 28657 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28077,15 +28679,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 28081 "parser_cocci_menhir.ml" +# 28683 "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_ = -# 1399 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 28089 "parser_cocci_menhir.ml" +# 28691 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28111,15 +28713,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 28115 "parser_cocci_menhir.ml" +# 28717 "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_ = -# 1401 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 28123 "parser_cocci_menhir.ml" +# 28725 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28155,23 +28757,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 28159 "parser_cocci_menhir.ml" +# 28761 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 28165 "parser_cocci_menhir.ml" +# 28767 "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_ = -# 1403 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 28175 "parser_cocci_menhir.ml" +# 28777 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28193,9 +28795,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_postfix_expr_expr_invalid_ = -# 1389 "parser_cocci_menhir.mly" +# 1462 "parser_cocci_menhir.mly" ( _1 ) -# 28199 "parser_cocci_menhir.ml" +# 28801 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28231,22 +28833,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 28235 "parser_cocci_menhir.ml" +# 28837 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 106 "parser_cocci_menhir.mly" (Data.clt) -# 28241 "parser_cocci_menhir.ml" +# 28843 "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_ = -# 1391 "parser_cocci_menhir.mly" +# 1464 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3, P.clt2mcode "]" _4)) ) -# 28250 "parser_cocci_menhir.ml" +# 28852 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28278,15 +28880,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 28282 "parser_cocci_menhir.ml" +# 28884 "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_ = -# 1394 "parser_cocci_menhir.mly" +# 1467 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) ) -# 28290 "parser_cocci_menhir.ml" +# 28892 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28318,16 +28920,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 108 "parser_cocci_menhir.mly" (Data.clt) -# 28322 "parser_cocci_menhir.ml" +# 28924 "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_ = -# 1396 "parser_cocci_menhir.mly" +# 1469 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2, _3)) ) -# 28331 "parser_cocci_menhir.ml" +# 28933 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28353,15 +28955,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 28357 "parser_cocci_menhir.ml" +# 28959 "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_ = -# 1399 "parser_cocci_menhir.mly" +# 1472 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) ) -# 28365 "parser_cocci_menhir.ml" +# 28967 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28387,15 +28989,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 28391 "parser_cocci_menhir.ml" +# 28993 "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_ = -# 1401 "parser_cocci_menhir.mly" +# 1474 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) ) -# 28399 "parser_cocci_menhir.ml" +# 29001 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28431,23 +29033,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 28435 "parser_cocci_menhir.ml" +# 29037 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 28441 "parser_cocci_menhir.ml" +# 29043 "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_ = -# 1403 "parser_cocci_menhir.mly" +# 1476 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2, _3, P.clt2mcode ")" _4)) ) -# 28451 "parser_cocci_menhir.ml" +# 29053 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28469,9 +29071,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_ = -# 1408 "parser_cocci_menhir.mly" +# 1481 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 28475 "parser_cocci_menhir.ml" +# 29077 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28492,15 +29094,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28496 "parser_cocci_menhir.ml" +# 29098 "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" +# 1483 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 28504 "parser_cocci_menhir.ml" +# 29106 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28521,15 +29123,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28525 "parser_cocci_menhir.ml" +# 29127 "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_ = -# 1413 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 28533 "parser_cocci_menhir.ml" +# 29135 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28550,15 +29152,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28554 "parser_cocci_menhir.ml" +# 29156 "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_ = -# 1416 "parser_cocci_menhir.mly" +# 1489 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 28562 "parser_cocci_menhir.ml" +# 29164 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28579,15 +29181,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28583 "parser_cocci_menhir.ml" +# 29185 "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_ = -# 1419 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 28591 "parser_cocci_menhir.ml" +# 29193 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28608,16 +29210,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 28612 "parser_cocci_menhir.ml" +# 29214 "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_ = -# 1422 "parser_cocci_menhir.mly" +# 1495 "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)) ) -# 28621 "parser_cocci_menhir.ml" +# 29223 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28638,15 +29240,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 67 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 28642 "parser_cocci_menhir.ml" +# 29244 "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_ = -# 1426 "parser_cocci_menhir.mly" +# 1499 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 28650 "parser_cocci_menhir.ml" +# 29252 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28667,16 +29269,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 28671 "parser_cocci_menhir.ml" +# 29273 "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_ = -# 1429 "parser_cocci_menhir.mly" +# 1502 "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)) ) -# 28680 "parser_cocci_menhir.ml" +# 29282 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28697,16 +29299,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 28701 "parser_cocci_menhir.ml" +# 29303 "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_ = -# 1433 "parser_cocci_menhir.mly" +# 1506 "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)) ) -# 28710 "parser_cocci_menhir.ml" +# 29312 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28727,16 +29329,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 28731 "parser_cocci_menhir.ml" +# 29333 "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_ = -# 1437 "parser_cocci_menhir.mly" +# 1510 "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)) ) -# 28740 "parser_cocci_menhir.ml" +# 29342 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28767,21 +29369,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 28771 "parser_cocci_menhir.ml" +# 29373 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 28777 "parser_cocci_menhir.ml" +# 29379 "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_ = -# 1441 "parser_cocci_menhir.mly" +# 1514 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 28785 "parser_cocci_menhir.ml" +# 29387 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28812,23 +29414,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 28816 "parser_cocci_menhir.ml" +# 29418 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 28822 "parser_cocci_menhir.ml" +# 29424 "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_ = -# 1444 "parser_cocci_menhir.mly" +# 1517 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 28832 "parser_cocci_menhir.ml" +# 29434 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28850,9 +29452,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_ = -# 1448 "parser_cocci_menhir.mly" +# 1521 "parser_cocci_menhir.mly" ( _1 ) -# 28856 "parser_cocci_menhir.ml" +# 29458 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28874,9 +29476,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_invalid_ = -# 1408 "parser_cocci_menhir.mly" +# 1481 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 28880 "parser_cocci_menhir.ml" +# 29482 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28897,15 +29499,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28901 "parser_cocci_menhir.ml" +# 29503 "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" +# 1483 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 28909 "parser_cocci_menhir.ml" +# 29511 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28926,15 +29528,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28930 "parser_cocci_menhir.ml" +# 29532 "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_ = -# 1413 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 28938 "parser_cocci_menhir.ml" +# 29540 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28955,15 +29557,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28959 "parser_cocci_menhir.ml" +# 29561 "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_ = -# 1416 "parser_cocci_menhir.mly" +# 1489 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 28967 "parser_cocci_menhir.ml" +# 29569 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -28984,15 +29586,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 28988 "parser_cocci_menhir.ml" +# 29590 "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_ = -# 1419 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 28996 "parser_cocci_menhir.ml" +# 29598 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29013,16 +29615,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29017 "parser_cocci_menhir.ml" +# 29619 "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_ = -# 1422 "parser_cocci_menhir.mly" +# 1495 "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)) ) -# 29026 "parser_cocci_menhir.ml" +# 29628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29043,15 +29645,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 67 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 29047 "parser_cocci_menhir.ml" +# 29649 "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_ = -# 1426 "parser_cocci_menhir.mly" +# 1499 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 29055 "parser_cocci_menhir.ml" +# 29657 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29072,16 +29674,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29076 "parser_cocci_menhir.ml" +# 29678 "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_ = -# 1429 "parser_cocci_menhir.mly" +# 1502 "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)) ) -# 29085 "parser_cocci_menhir.ml" +# 29687 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29102,16 +29704,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29106 "parser_cocci_menhir.ml" +# 29708 "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_ = -# 1433 "parser_cocci_menhir.mly" +# 1506 "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)) ) -# 29115 "parser_cocci_menhir.ml" +# 29717 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29132,16 +29734,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29136 "parser_cocci_menhir.ml" +# 29738 "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_ = -# 1437 "parser_cocci_menhir.mly" +# 1510 "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)) ) -# 29145 "parser_cocci_menhir.ml" +# 29747 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29172,21 +29774,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 29176 "parser_cocci_menhir.ml" +# 29778 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 29182 "parser_cocci_menhir.ml" +# 29784 "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_ = -# 1441 "parser_cocci_menhir.mly" +# 1514 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 29190 "parser_cocci_menhir.ml" +# 29792 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29217,23 +29819,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 29221 "parser_cocci_menhir.ml" +# 29823 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 29227 "parser_cocci_menhir.ml" +# 29829 "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_ = -# 1444 "parser_cocci_menhir.mly" +# 1517 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 29237 "parser_cocci_menhir.ml" +# 29839 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29255,9 +29857,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_eexpr_invalid_ = -# 1448 "parser_cocci_menhir.mly" +# 1521 "parser_cocci_menhir.mly" ( _1 ) -# 29261 "parser_cocci_menhir.ml" +# 29863 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29279,9 +29881,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_ = -# 1408 "parser_cocci_menhir.mly" +# 1481 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 29285 "parser_cocci_menhir.ml" +# 29887 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29302,15 +29904,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29306 "parser_cocci_menhir.ml" +# 29908 "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" +# 1483 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 29314 "parser_cocci_menhir.ml" +# 29916 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29331,15 +29933,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29335 "parser_cocci_menhir.ml" +# 29937 "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_ = -# 1413 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 29343 "parser_cocci_menhir.ml" +# 29945 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29360,15 +29962,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29364 "parser_cocci_menhir.ml" +# 29966 "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_ = -# 1416 "parser_cocci_menhir.mly" +# 1489 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 29372 "parser_cocci_menhir.ml" +# 29974 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29389,15 +29991,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29393 "parser_cocci_menhir.ml" +# 29995 "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_ = -# 1419 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 29401 "parser_cocci_menhir.ml" +# 30003 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29418,16 +30020,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29422 "parser_cocci_menhir.ml" +# 30024 "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_ = -# 1422 "parser_cocci_menhir.mly" +# 1495 "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)) ) -# 29431 "parser_cocci_menhir.ml" +# 30033 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29448,15 +30050,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 67 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 29452 "parser_cocci_menhir.ml" +# 30054 "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_ = -# 1426 "parser_cocci_menhir.mly" +# 1499 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 29460 "parser_cocci_menhir.ml" +# 30062 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29477,16 +30079,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29481 "parser_cocci_menhir.ml" +# 30083 "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_ = -# 1429 "parser_cocci_menhir.mly" +# 1502 "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)) ) -# 29490 "parser_cocci_menhir.ml" +# 30092 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29507,16 +30109,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29511 "parser_cocci_menhir.ml" +# 30113 "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_ = -# 1433 "parser_cocci_menhir.mly" +# 1506 "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)) ) -# 29520 "parser_cocci_menhir.ml" +# 30122 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29537,16 +30139,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29541 "parser_cocci_menhir.ml" +# 30143 "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_ = -# 1437 "parser_cocci_menhir.mly" +# 1510 "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)) ) -# 29550 "parser_cocci_menhir.ml" +# 30152 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29577,21 +30179,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 29581 "parser_cocci_menhir.ml" +# 30183 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 29587 "parser_cocci_menhir.ml" +# 30189 "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_ = -# 1441 "parser_cocci_menhir.mly" +# 1514 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 29595 "parser_cocci_menhir.ml" +# 30197 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29622,23 +30224,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 29626 "parser_cocci_menhir.ml" +# 30228 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 29632 "parser_cocci_menhir.ml" +# 30234 "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_ = -# 1444 "parser_cocci_menhir.mly" +# 1517 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 29642 "parser_cocci_menhir.ml" +# 30244 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29660,9 +30262,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_ = -# 1448 "parser_cocci_menhir.mly" +# 1521 "parser_cocci_menhir.mly" ( _1 ) -# 29666 "parser_cocci_menhir.ml" +# 30268 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29684,9 +30286,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_expr_invalid_ = -# 1408 "parser_cocci_menhir.mly" +# 1481 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Ident(_1)) ) -# 29690 "parser_cocci_menhir.ml" +# 30292 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29707,15 +30309,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29711 "parser_cocci_menhir.ml" +# 30313 "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" +# 1483 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) ) -# 29719 "parser_cocci_menhir.ml" +# 30321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29736,15 +30338,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29740 "parser_cocci_menhir.ml" +# 30342 "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_ = -# 1413 "parser_cocci_menhir.mly" +# 1486 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) ) -# 29748 "parser_cocci_menhir.ml" +# 30350 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29765,15 +30367,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29769 "parser_cocci_menhir.ml" +# 30371 "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_ = -# 1416 "parser_cocci_menhir.mly" +# 1489 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) ) -# 29777 "parser_cocci_menhir.ml" +# 30379 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29794,15 +30396,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 29798 "parser_cocci_menhir.ml" +# 30400 "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_ = -# 1419 "parser_cocci_menhir.mly" +# 1492 "parser_cocci_menhir.mly" ( let (x,clt) = _1 in Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) ) -# 29806 "parser_cocci_menhir.ml" +# 30408 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29823,16 +30425,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29827 "parser_cocci_menhir.ml" +# 30429 "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_ = -# 1422 "parser_cocci_menhir.mly" +# 1495 "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)) ) -# 29836 "parser_cocci_menhir.ml" +# 30438 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29853,15 +30455,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 67 "parser_cocci_menhir.mly" (Parse_aux.expinfo) -# 29857 "parser_cocci_menhir.ml" +# 30459 "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_ = -# 1426 "parser_cocci_menhir.mly" +# 1499 "parser_cocci_menhir.mly" ( let (nm,constraints,pure,clt) = _1 in Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) ) -# 29865 "parser_cocci_menhir.ml" +# 30467 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29882,16 +30484,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29886 "parser_cocci_menhir.ml" +# 30488 "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_ = -# 1429 "parser_cocci_menhir.mly" +# 1502 "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)) ) -# 29895 "parser_cocci_menhir.ml" +# 30497 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29912,16 +30514,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29916 "parser_cocci_menhir.ml" +# 30518 "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_ = -# 1433 "parser_cocci_menhir.mly" +# 1506 "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)) ) -# 29925 "parser_cocci_menhir.ml" +# 30527 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29942,16 +30544,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 71 "parser_cocci_menhir.mly" (Parse_aux.typed_expinfo) -# 29946 "parser_cocci_menhir.ml" +# 30548 "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_ = -# 1437 "parser_cocci_menhir.mly" +# 1510 "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)) ) -# 29955 "parser_cocci_menhir.ml" +# 30557 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -29982,21 +30584,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 29986 "parser_cocci_menhir.ml" +# 30588 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 29992 "parser_cocci_menhir.ml" +# 30594 "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_ = -# 1441 "parser_cocci_menhir.mly" +# 1514 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2, P.clt2mcode ")" _3)) ) -# 30000 "parser_cocci_menhir.ml" +# 30602 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30027,23 +30629,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 30031 "parser_cocci_menhir.ml" +# 30633 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 30037 "parser_cocci_menhir.ml" +# 30639 "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_ = -# 1444 "parser_cocci_menhir.mly" +# 1517 "parser_cocci_menhir.mly" ( let (mids,code) = _2 in Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1, code, mids, P.clt2mcode ")" _3)) ) -# 30047 "parser_cocci_menhir.ml" +# 30649 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30065,9 +30667,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_primary_expr_expr_invalid_ = -# 1448 "parser_cocci_menhir.mly" +# 1521 "parser_cocci_menhir.mly" ( _1 ) -# 30071 "parser_cocci_menhir.ml" +# 30673 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30089,7 +30691,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pure = # 196 "parser_cocci_menhir.mly" ( Ast0.Pure ) -# 30093 "parser_cocci_menhir.ml" +# 30695 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30111,7 +30713,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pure = # 197 "parser_cocci_menhir.mly" ( Ast0.Context ) -# 30115 "parser_cocci_menhir.ml" +# 30717 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30137,7 +30739,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pure = # 198 "parser_cocci_menhir.mly" ( Ast0.PureContext ) -# 30141 "parser_cocci_menhir.ml" +# 30743 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30163,7 +30765,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pure = # 199 "parser_cocci_menhir.mly" ( Ast0.PureContext ) -# 30167 "parser_cocci_menhir.ml" +# 30769 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30180,7 +30782,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_pure = # 200 "parser_cocci_menhir.mly" ( Ast0.Impure ) -# 30184 "parser_cocci_menhir.ml" +# 30786 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30201,14 +30803,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 30205 "parser_cocci_menhir.ml" +# 30807 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident = -# 1462 "parser_cocci_menhir.mly" +# 1535 "parser_cocci_menhir.mly" ( _1 ) -# 30212 "parser_cocci_menhir.ml" +# 30814 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30228,9 +30830,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1465 "parser_cocci_menhir.mly" +# 1538 "parser_cocci_menhir.mly" ( "identifier" ) -# 30234 "parser_cocci_menhir.ml" +# 30836 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30250,9 +30852,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1466 "parser_cocci_menhir.mly" +# 1539 "parser_cocci_menhir.mly" ( "expression" ) -# 30256 "parser_cocci_menhir.ml" +# 30858 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30272,9 +30874,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1467 "parser_cocci_menhir.mly" +# 1540 "parser_cocci_menhir.mly" ( "statement" ) -# 30278 "parser_cocci_menhir.ml" +# 30880 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30294,9 +30896,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1468 "parser_cocci_menhir.mly" +# 1541 "parser_cocci_menhir.mly" ( "function" ) -# 30300 "parser_cocci_menhir.ml" +# 30902 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30316,9 +30918,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1469 "parser_cocci_menhir.mly" +# 1542 "parser_cocci_menhir.mly" ( "local" ) -# 30322 "parser_cocci_menhir.ml" +# 30924 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30338,9 +30940,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1470 "parser_cocci_menhir.mly" +# 1543 "parser_cocci_menhir.mly" ( "type" ) -# 30344 "parser_cocci_menhir.ml" +# 30946 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30360,9 +30962,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1471 "parser_cocci_menhir.mly" +# 1544 "parser_cocci_menhir.mly" ( "parameter" ) -# 30366 "parser_cocci_menhir.ml" +# 30968 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30382,9 +30984,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1472 "parser_cocci_menhir.mly" +# 1545 "parser_cocci_menhir.mly" ( "idexpression" ) -# 30388 "parser_cocci_menhir.ml" +# 30990 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30404,9 +31006,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1473 "parser_cocci_menhir.mly" +# 1546 "parser_cocci_menhir.mly" ( "initialiser" ) -# 30410 "parser_cocci_menhir.ml" +# 31012 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30426,9 +31028,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1474 "parser_cocci_menhir.mly" +# 1547 "parser_cocci_menhir.mly" ( "list" ) -# 30432 "parser_cocci_menhir.ml" +# 31034 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30448,9 +31050,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1475 "parser_cocci_menhir.mly" +# 1548 "parser_cocci_menhir.mly" ( "fresh" ) -# 30454 "parser_cocci_menhir.ml" +# 31056 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30470,9 +31072,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1476 "parser_cocci_menhir.mly" +# 1549 "parser_cocci_menhir.mly" ( "constant" ) -# 30476 "parser_cocci_menhir.ml" +# 31078 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30492,9 +31094,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1477 "parser_cocci_menhir.mly" +# 1550 "parser_cocci_menhir.mly" ( "error" ) -# 30498 "parser_cocci_menhir.ml" +# 31100 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30514,9 +31116,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1478 "parser_cocci_menhir.mly" +# 1551 "parser_cocci_menhir.mly" ( "words" ) -# 30520 "parser_cocci_menhir.ml" +# 31122 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30536,9 +31138,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1479 "parser_cocci_menhir.mly" +# 1552 "parser_cocci_menhir.mly" ( "pure" ) -# 30542 "parser_cocci_menhir.ml" +# 31144 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30558,9 +31160,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1480 "parser_cocci_menhir.mly" +# 1553 "parser_cocci_menhir.mly" ( "context" ) -# 30564 "parser_cocci_menhir.ml" +# 31166 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30580,9 +31182,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1481 "parser_cocci_menhir.mly" +# 1554 "parser_cocci_menhir.mly" ( "generated" ) -# 30586 "parser_cocci_menhir.ml" +# 31188 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30602,9 +31204,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1482 "parser_cocci_menhir.mly" +# 1555 "parser_cocci_menhir.mly" ( "typedef" ) -# 30608 "parser_cocci_menhir.ml" +# 31210 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30624,9 +31226,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1483 "parser_cocci_menhir.mly" +# 1556 "parser_cocci_menhir.mly" ( "declarer" ) -# 30630 "parser_cocci_menhir.ml" +# 31232 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30646,9 +31248,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1484 "parser_cocci_menhir.mly" +# 1557 "parser_cocci_menhir.mly" ( "iterator" ) -# 30652 "parser_cocci_menhir.ml" +# 31254 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30668,9 +31270,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1485 "parser_cocci_menhir.mly" +# 1558 "parser_cocci_menhir.mly" ( "name" ) -# 30674 "parser_cocci_menhir.ml" +# 31276 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30690,9 +31292,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_pure_ident_kwd = -# 1486 "parser_cocci_menhir.mly" +# 1559 "parser_cocci_menhir.mly" ( "position" ) -# 30696 "parser_cocci_menhir.ml" +# 31298 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30714,9 +31316,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 = -# 1493 "parser_cocci_menhir.mly" +# 1566 "parser_cocci_menhir.mly" ( (None,P.id2name _1) ) -# 30720 "parser_cocci_menhir.ml" +# 31322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30738,9 +31340,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 = -# 1494 "parser_cocci_menhir.mly" +# 1567 "parser_cocci_menhir.mly" ( (None,_1) ) -# 30744 "parser_cocci_menhir.ml" +# 31346 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30762,9 +31364,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 = -# 1495 "parser_cocci_menhir.mly" +# 1568 "parser_cocci_menhir.mly" ( _1 ) -# 30768 "parser_cocci_menhir.ml" +# 31370 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30792,13 +31394,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_ = -# 1521 "parser_cocci_menhir.mly" +# 1594 "parser_cocci_menhir.mly" ( match optc with None -> (i, Ast0.NoConstraint) | Some c -> (i, c) ) -# 30802 "parser_cocci_menhir.ml" +# 31404 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30826,13 +31428,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_ = -# 1521 "parser_cocci_menhir.mly" +# 1594 "parser_cocci_menhir.mly" ( match optc with None -> (i, Ast0.NoConstraint) | Some c -> (i, c) ) -# 30836 "parser_cocci_menhir.ml" +# 31438 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30860,13 +31462,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_ = -# 1539 "parser_cocci_menhir.mly" +# 1619 "parser_cocci_menhir.mly" ( match c with None -> (i, Ast.IdNoConstraint) | Some constraint_ -> (i,constraint_) ) -# 30870 "parser_cocci_menhir.ml" +# 31472 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30894,14 +31496,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_ = -# 1529 "parser_cocci_menhir.mly" +# 1602 "parser_cocci_menhir.mly" ( Common.Left (match c with None -> (i, Ast.IdNoConstraint) | Some constraint_ -> (i,constraint_)) ) -# 30905 "parser_cocci_menhir.ml" +# 31507 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30931,9 +31533,15 @@ 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_ = -# 1535 "parser_cocci_menhir.mly" - ( Common.Right (P.id2name _3) ) -# 30937 "parser_cocci_menhir.ml" +# 1609 "parser_cocci_menhir.mly" + ( + let nm = P.id2name _3 in + Iteration.parsed_virtual_identifiers := + Common.union_set [nm] + !Iteration.parsed_virtual_identifiers; + Common.Right nm + ) +# 31545 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30955,9 +31563,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 = -# 1498 "parser_cocci_menhir.mly" +# 1571 "parser_cocci_menhir.mly" ( (_1,Ast.NoVal) ) -# 30961 "parser_cocci_menhir.ml" +# 31569 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -30989,11 +31597,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 = -# 1501 "parser_cocci_menhir.mly" +# 1574 "parser_cocci_menhir.mly" ( match _3 with [Ast.SeedString s] -> (_1,Ast.StringSeed s) | _ -> (_1,Ast.ListSeed _3) ) -# 30997 "parser_cocci_menhir.ml" +# 31605 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31021,11 +31629,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_ = -# 1515 "parser_cocci_menhir.mly" +# 1588 "parser_cocci_menhir.mly" ( (i, l) ) -# 31029 "parser_cocci_menhir.ml" +# 31637 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31047,9 +31655,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 = -# 1600 "parser_cocci_menhir.mly" +# 1680 "parser_cocci_menhir.mly" (Ast0.NotIdCstrt re) -# 31053 "parser_cocci_menhir.ml" +# 31661 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31071,9 +31679,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 = -# 1601 "parser_cocci_menhir.mly" +# 1681 "parser_cocci_menhir.mly" (Ast0.NotExpCstrt ne) -# 31077 "parser_cocci_menhir.ml" +# 31685 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31095,9 +31703,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 = -# 1602 "parser_cocci_menhir.mly" +# 1682 "parser_cocci_menhir.mly" (Ast0.SubExpCstrt s) -# 31101 "parser_cocci_menhir.ml" +# 31709 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31119,9 +31727,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_re_ in let _endpos = _endpos_re_ in let _v : 'tv_re_or_not_eqid = -# 1546 "parser_cocci_menhir.mly" +# 1626 "parser_cocci_menhir.mly" (Ast.IdRegExpConstraint re) -# 31125 "parser_cocci_menhir.ml" +# 31733 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31143,9 +31751,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_ne_ in let _endpos = _endpos_ne_ in let _v : 'tv_re_or_not_eqid = -# 1547 "parser_cocci_menhir.mly" +# 1627 "parser_cocci_menhir.mly" (ne) -# 31149 "parser_cocci_menhir.ml" +# 31757 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31170,19 +31778,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let re : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 31174 "parser_cocci_menhir.ml" +# 31782 "parser_cocci_menhir.ml" ) = Obj.magic re in let _startpos = _startpos__1_ in let _endpos = _endpos_re_ in let _v : 'tv_regexp_eqid = -# 1551 "parser_cocci_menhir.mly" +# 1631 "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) ) -# 31186 "parser_cocci_menhir.ml" +# 31794 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31207,19 +31815,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let re : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 31211 "parser_cocci_menhir.ml" +# 31819 "parser_cocci_menhir.ml" ) = Obj.magic re in let _startpos = _startpos__1_ in let _endpos = _endpos_re_ in let _v : 'tv_regexp_eqid = -# 1558 "parser_cocci_menhir.mly" +# 1638 "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) ) -# 31223 "parser_cocci_menhir.ml" +# 31831 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31236,11 +31844,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 137 "parser_cocci_menhir.mly" (unit) -# 31240 "parser_cocci_menhir.ml" +# 31848 "parser_cocci_menhir.ml" ) = # 178 "parser_cocci_menhir.mly" ( ) -# 31244 "parser_cocci_menhir.ml" +# 31852 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31262,9 +31870,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_rule_elem_statement = -# 990 "parser_cocci_menhir.mly" +# 1009 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) ) -# 31268 "parser_cocci_menhir.ml" +# 31876 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31290,15 +31898,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 31294 "parser_cocci_menhir.ml" +# 31902 "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 = -# 991 "parser_cocci_menhir.mly" +# 1010 "parser_cocci_menhir.mly" ( P.exp_stm _1 _2 ) -# 31302 "parser_cocci_menhir.ml" +# 31910 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31329,20 +31937,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 31333 "parser_cocci_menhir.ml" +# 31941 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 31339 "parser_cocci_menhir.ml" +# 31947 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_rule_elem_statement = -# 992 "parser_cocci_menhir.mly" +# 1011 "parser_cocci_menhir.mly" ( P.ret_exp _1 _2 _3 ) -# 31346 "parser_cocci_menhir.ml" +# 31954 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31368,19 +31976,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 31372 "parser_cocci_menhir.ml" +# 31980 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 31377 "parser_cocci_menhir.ml" +# 31985 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 993 "parser_cocci_menhir.mly" +# 1012 "parser_cocci_menhir.mly" ( P.ret _1 _2 ) -# 31384 "parser_cocci_menhir.ml" +# 31992 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31406,19 +32014,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 31410 "parser_cocci_menhir.ml" +# 32018 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 31415 "parser_cocci_menhir.ml" +# 32023 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 994 "parser_cocci_menhir.mly" +# 1013 "parser_cocci_menhir.mly" ( P.break _1 _2 ) -# 31422 "parser_cocci_menhir.ml" +# 32030 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31444,19 +32052,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 31448 "parser_cocci_menhir.ml" +# 32056 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 31453 "parser_cocci_menhir.ml" +# 32061 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_rule_elem_statement = -# 995 "parser_cocci_menhir.mly" +# 1014 "parser_cocci_menhir.mly" ( P.cont _1 _2 ) -# 31460 "parser_cocci_menhir.ml" +# 32068 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31487,24 +32095,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 31491 "parser_cocci_menhir.ml" +# 32099 "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 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 31497 "parser_cocci_menhir.ml" +# 32105 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_rule_elem_statement = -# 997 "parser_cocci_menhir.mly" +# 1016 "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)) ) -# 31508 "parser_cocci_menhir.ml" +# 32116 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31560,18 +32168,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31564 "parser_cocci_menhir.ml" +# 32172 "parser_cocci_menhir.ml" ) = let nm = # 39 "standard.mly" ( None ) -# 31569 "parser_cocci_menhir.ml" +# 32177 "parser_cocci_menhir.ml" in # 208 "parser_cocci_menhir.mly" ( P.make_cocci_rule_name_result nm d i a e ee ) -# 31575 "parser_cocci_menhir.ml" +# 32183 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31633,19 +32241,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31637 "parser_cocci_menhir.ml" +# 32245 "parser_cocci_menhir.ml" ) = let nm = let x = x0 in # 41 "standard.mly" ( Some x ) -# 31643 "parser_cocci_menhir.ml" +# 32251 "parser_cocci_menhir.ml" in # 208 "parser_cocci_menhir.mly" ( P.make_cocci_rule_name_result nm d i a e ee ) -# 31649 "parser_cocci_menhir.ml" +# 32257 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31705,11 +32313,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31709 "parser_cocci_menhir.ml" +# 32317 "parser_cocci_menhir.ml" ) = # 213 "parser_cocci_menhir.mly" ( P.make_generated_rule_name_result None d i a e ee ) -# 31713 "parser_cocci_menhir.ml" +# 32321 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31751,18 +32359,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31755 "parser_cocci_menhir.ml" +# 32363 "parser_cocci_menhir.ml" ) = let nm = # 39 "standard.mly" ( None ) -# 31760 "parser_cocci_menhir.ml" +# 32368 "parser_cocci_menhir.ml" in # 215 "parser_cocci_menhir.mly" ( P.make_script_rule_name_result lang nm d ) -# 31766 "parser_cocci_menhir.ml" +# 32374 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31810,19 +32418,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31814 "parser_cocci_menhir.ml" +# 32422 "parser_cocci_menhir.ml" ) = let nm = let x = x0 in # 41 "standard.mly" ( Some x ) -# 31820 "parser_cocci_menhir.ml" +# 32428 "parser_cocci_menhir.ml" in # 215 "parser_cocci_menhir.mly" ( P.make_script_rule_name_result lang nm d ) -# 31826 "parser_cocci_menhir.ml" +# 32434 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31864,11 +32472,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31868 "parser_cocci_menhir.ml" +# 32476 "parser_cocci_menhir.ml" ) = # 217 "parser_cocci_menhir.mly" ( P.make_initial_script_rule_name_result lang d ) -# 31872 "parser_cocci_menhir.ml" +# 32480 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31910,11 +32518,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 31914 "parser_cocci_menhir.ml" +# 32522 "parser_cocci_menhir.ml" ) = # 219 "parser_cocci_menhir.mly" ( P.make_final_script_rule_name_result lang d ) -# 31918 "parser_cocci_menhir.ml" +# 32526 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31942,11 +32550,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 31946 "parser_cocci_menhir.ml" +# 32554 "parser_cocci_menhir.ml" ) = -# 2092 "parser_cocci_menhir.mly" +# 2172 "parser_cocci_menhir.mly" ( ((Some (P.id2name py), None), None) ) -# 31950 "parser_cocci_menhir.ml" +# 32558 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -31980,11 +32588,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 31984 "parser_cocci_menhir.ml" +# 32592 "parser_cocci_menhir.ml" ) = -# 2094 "parser_cocci_menhir.mly" +# 2174 "parser_cocci_menhir.mly" ( ((Some (P.id2name py), None), Some _2) ) -# 31988 "parser_cocci_menhir.ml" +# 32596 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32034,11 +32642,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 32038 "parser_cocci_menhir.ml" +# 32646 "parser_cocci_menhir.ml" ) = -# 2096 "parser_cocci_menhir.mly" +# 2176 "parser_cocci_menhir.mly" ( ((None, Some (P.id2name ast)), Some _6) ) -# 32042 "parser_cocci_menhir.ml" +# 32650 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32088,11 +32696,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 32092 "parser_cocci_menhir.ml" +# 32700 "parser_cocci_menhir.ml" ) = -# 2098 "parser_cocci_menhir.mly" +# 2178 "parser_cocci_menhir.mly" ( ((Some (P.id2name str), None), Some _6) ) -# 32096 "parser_cocci_menhir.ml" +# 32704 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32144,11 +32752,11 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 32148 "parser_cocci_menhir.ml" +# 32756 "parser_cocci_menhir.ml" ) = -# 2100 "parser_cocci_menhir.mly" +# 2180 "parser_cocci_menhir.mly" ( ((Some (P.id2name str), Some (P.id2name ast)), Some _6) ) -# 32152 "parser_cocci_menhir.ml" +# 32760 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32183,16 +32791,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 49 "parser_cocci_menhir.mly" (string) -# 32187 "parser_cocci_menhir.ml" +# 32795 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _startpos = _startpos__1_ in let _endpos = _endpos_cocci_ in let _v : 'tv_script_name_decl = -# 2104 "parser_cocci_menhir.mly" +# 2184 "parser_cocci_menhir.mly" ( let nm = P.id2name cocci in let mv = Parse_aux.lookup _2 nm in ((_2, nm), mv) ) -# 32196 "parser_cocci_menhir.ml" +# 32804 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32226,12 +32834,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_cocci_ in let _v : 'tv_script_name_decl = -# 2108 "parser_cocci_menhir.mly" +# 2188 "parser_cocci_menhir.mly" ( let nm = P.id2name cocci in + Iteration.parsed_virtual_identifiers := + Common.union_set [nm] + !Iteration.parsed_virtual_identifiers; let name = ("virtual", nm) in let mv = Ast.MetaIdDecl(Ast.NONE,name) in (name,mv) ) -# 32235 "parser_cocci_menhir.ml" +# 32846 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32252,14 +32863,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 32256 "parser_cocci_menhir.ml" +# 32867 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_seed_elem = -# 1506 "parser_cocci_menhir.mly" +# 1579 "parser_cocci_menhir.mly" ( let (x,_) = _1 in Ast.SeedString x ) -# 32263 "parser_cocci_menhir.ml" +# 32874 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32280,14 +32891,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 65 "parser_cocci_menhir.mly" (Parse_aux.idinfo) -# 32284 "parser_cocci_menhir.ml" +# 32895 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_seed_elem = -# 1507 "parser_cocci_menhir.mly" +# 1580 "parser_cocci_menhir.mly" ( let (x,_,_,_) = _1 in Ast.SeedId x ) -# 32291 "parser_cocci_menhir.ml" +# 32902 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32318,16 +32929,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 49 "parser_cocci_menhir.mly" (string) -# 32322 "parser_cocci_menhir.ml" +# 32933 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_seed_elem = -# 1509 "parser_cocci_menhir.mly" +# 1582 "parser_cocci_menhir.mly" ( let nm = (_1,P.id2name _3) in P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm)); Ast.SeedId nm ) -# 32331 "parser_cocci_menhir.ml" +# 32942 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32348,14 +32959,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let x : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 32352 "parser_cocci_menhir.ml" +# 32963 "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 ] ) -# 32359 "parser_cocci_menhir.ml" +# 32970 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32386,14 +32997,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let x : ( # 91 "parser_cocci_menhir.mly" (string * Data.clt) -# 32390 "parser_cocci_menhir.ml" +# 33001 "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 ) -# 32397 "parser_cocci_menhir.ml" +# 33008 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32417,7 +33028,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = # 144 "standard.mly" ( [ x ] ) -# 32421 "parser_cocci_menhir.ml" +# 33032 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32451,7 +33062,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_any_strict_ = # 146 "standard.mly" ( x :: xs ) -# 32455 "parser_cocci_menhir.ml" +# 33066 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32475,7 +33086,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ctype_ = # 144 "standard.mly" ( [ x ] ) -# 32479 "parser_cocci_menhir.ml" +# 33090 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32509,7 +33120,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ctype_ = # 146 "standard.mly" ( x :: xs ) -# 32513 "parser_cocci_menhir.ml" +# 33124 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32533,7 +33144,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = # 144 "standard.mly" ( [ x ] ) -# 32537 "parser_cocci_menhir.ml" +# 33148 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32567,7 +33178,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_d_ident_ = # 146 "standard.mly" ( x :: xs ) -# 32571 "parser_cocci_menhir.ml" +# 33182 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32591,7 +33202,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = # 144 "standard.mly" ( [ x ] ) -# 32595 "parser_cocci_menhir.ml" +# 33206 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32625,7 +33236,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ = # 146 "standard.mly" ( x :: xs ) -# 32629 "parser_cocci_menhir.ml" +# 33240 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32649,7 +33260,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = # 144 "standard.mly" ( [ x ] ) -# 32653 "parser_cocci_menhir.ml" +# 33264 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32683,7 +33294,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ = # 146 "standard.mly" ( x :: xs ) -# 32687 "parser_cocci_menhir.ml" +# 33298 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32707,7 +33318,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = # 144 "standard.mly" ( [ x ] ) -# 32711 "parser_cocci_menhir.ml" +# 33322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32741,7 +33352,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ = # 146 "standard.mly" ( x :: xs ) -# 32745 "parser_cocci_menhir.ml" +# 33356 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32765,7 +33376,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = # 144 "standard.mly" ( [ x ] ) -# 32769 "parser_cocci_menhir.ml" +# 33380 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32799,7 +33410,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = # 146 "standard.mly" ( x :: xs ) -# 32803 "parser_cocci_menhir.ml" +# 33414 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32823,7 +33434,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 ] ) -# 32827 "parser_cocci_menhir.ml" +# 33438 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32857,7 +33468,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 ) -# 32861 "parser_cocci_menhir.ml" +# 33472 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32881,7 +33492,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 ] ) -# 32885 "parser_cocci_menhir.ml" +# 33496 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32915,7 +33526,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 ) -# 32919 "parser_cocci_menhir.ml" +# 33530 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32939,7 +33550,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 ] ) -# 32943 "parser_cocci_menhir.ml" +# 33554 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32973,7 +33584,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 ) -# 32977 "parser_cocci_menhir.ml" +# 33588 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -32997,7 +33608,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 ] ) -# 33001 "parser_cocci_menhir.ml" +# 33612 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33031,7 +33642,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 ) -# 33035 "parser_cocci_menhir.ml" +# 33646 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33055,7 +33666,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 ] ) -# 33059 "parser_cocci_menhir.ml" +# 33670 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33089,7 +33700,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 ) -# 33093 "parser_cocci_menhir.ml" +# 33704 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33113,7 +33724,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 ] ) -# 33117 "parser_cocci_menhir.ml" +# 33728 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33147,7 +33758,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 ) -# 33151 "parser_cocci_menhir.ml" +# 33762 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33171,7 +33782,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = # 144 "standard.mly" ( [ x ] ) -# 33175 "parser_cocci_menhir.ml" +# 33786 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33205,7 +33816,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ = # 146 "standard.mly" ( x :: xs ) -# 33209 "parser_cocci_menhir.ml" +# 33820 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33229,7 +33840,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = # 144 "standard.mly" ( [ x ] ) -# 33233 "parser_cocci_menhir.ml" +# 33844 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33263,7 +33874,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = # 146 "standard.mly" ( x :: xs ) -# 33267 "parser_cocci_menhir.ml" +# 33878 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33285,9 +33896,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_single_statement = -# 1005 "parser_cocci_menhir.mly" +# 1024 "parser_cocci_menhir.mly" ( _1 ) -# 33291 "parser_cocci_menhir.ml" +# 33902 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33318,24 +33929,24 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33322 "parser_cocci_menhir.ml" +# 33933 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33328 "parser_cocci_menhir.ml" +# 33939 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_single_statement = -# 1009 "parser_cocci_menhir.mly" +# 1028 "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)) ) -# 33339 "parser_cocci_menhir.ml" +# 33950 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33357,9 +33968,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_statement = -# 932 "parser_cocci_menhir.mly" +# 951 "parser_cocci_menhir.mly" ( _1 ) -# 33363 "parser_cocci_menhir.ml" +# 33974 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33380,14 +33991,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 33384 "parser_cocci_menhir.ml" +# 33995 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_statement = -# 934 "parser_cocci_menhir.mly" +# 953 "parser_cocci_menhir.mly" ( P.meta_stm _1 ) -# 33391 "parser_cocci_menhir.ml" +# 34002 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33413,15 +34024,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 33417 "parser_cocci_menhir.ml" +# 34028 "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 = -# 936 "parser_cocci_menhir.mly" +# 955 "parser_cocci_menhir.mly" ( P.exp_stm _1 _2 ) -# 33425 "parser_cocci_menhir.ml" +# 34036 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33463,25 +34074,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33467 "parser_cocci_menhir.ml" +# 34078 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33473 "parser_cocci_menhir.ml" +# 34084 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33478 "parser_cocci_menhir.ml" +# 34089 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_statement = -# 938 "parser_cocci_menhir.mly" +# 957 "parser_cocci_menhir.mly" ( P.ifthen _1 _2 _3 _4 _5 ) -# 33485 "parser_cocci_menhir.ml" +# 34096 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33533,31 +34144,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _6 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33537 "parser_cocci_menhir.ml" +# 34148 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_single_statement = Obj.magic _5 in let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33543 "parser_cocci_menhir.ml" +# 34154 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33549 "parser_cocci_menhir.ml" +# 34160 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33554 "parser_cocci_menhir.ml" +# 34165 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : 'tv_statement = -# 940 "parser_cocci_menhir.mly" +# 959 "parser_cocci_menhir.mly" ( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 ) -# 33561 "parser_cocci_menhir.ml" +# 34172 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33619,37 +34230,37 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _8 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33623 "parser_cocci_menhir.ml" +# 34234 "parser_cocci_menhir.ml" ) = Obj.magic _8 in let _7 : 'tv_option_eexpr_ = Obj.magic _7 in let _6 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 33629 "parser_cocci_menhir.ml" +# 34240 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_option_eexpr_ = Obj.magic _5 in let _4 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 33635 "parser_cocci_menhir.ml" +# 34246 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_option_eexpr_ = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33641 "parser_cocci_menhir.ml" +# 34252 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33646 "parser_cocci_menhir.ml" +# 34257 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__9_ in let _v : 'tv_statement = -# 943 "parser_cocci_menhir.mly" +# 962 "parser_cocci_menhir.mly" ( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 ) -# 33653 "parser_cocci_menhir.ml" +# 34264 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33691,25 +34302,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33695 "parser_cocci_menhir.ml" +# 34306 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33701 "parser_cocci_menhir.ml" +# 34312 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33706 "parser_cocci_menhir.ml" +# 34317 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__5_ in let _v : 'tv_statement = -# 945 "parser_cocci_menhir.mly" +# 964 "parser_cocci_menhir.mly" ( P.whileloop _1 _2 _3 _4 _5 ) -# 33713 "parser_cocci_menhir.ml" +# 34324 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33760,36 +34371,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _7 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 33764 "parser_cocci_menhir.ml" +# 34375 "parser_cocci_menhir.ml" ) = Obj.magic _7 in let _6 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33769 "parser_cocci_menhir.ml" +# 34380 "parser_cocci_menhir.ml" ) = Obj.magic _6 in let _5 : 'tv_eexpr = Obj.magic _5 in let _4 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33775 "parser_cocci_menhir.ml" +# 34386 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33780 "parser_cocci_menhir.ml" +# 34391 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_single_statement = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33786 "parser_cocci_menhir.ml" +# 34397 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__7_ in let _v : 'tv_statement = -# 947 "parser_cocci_menhir.mly" +# 966 "parser_cocci_menhir.mly" ( P.doloop _1 _2 _3 _4 _5 _6 _7 ) -# 33793 "parser_cocci_menhir.ml" +# 34404 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33831,21 +34442,21 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33835 "parser_cocci_menhir.ml" +# 34446 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr_list_option = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33841 "parser_cocci_menhir.ml" +# 34452 "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 = -# 949 "parser_cocci_menhir.mly" +# 968 "parser_cocci_menhir.mly" ( P.iterator _1 _2 _3 _4 _5 ) -# 33849 "parser_cocci_menhir.ml" +# 34460 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33901,37 +34512,37 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _8 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 33905 "parser_cocci_menhir.ml" +# 34516 "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 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 33912 "parser_cocci_menhir.ml" +# 34523 "parser_cocci_menhir.ml" ) = Obj.magic _5 in let _4 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 33917 "parser_cocci_menhir.ml" +# 34528 "parser_cocci_menhir.ml" ) = Obj.magic _4 in let _3 : 'tv_eexpr = Obj.magic _3 in let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 33923 "parser_cocci_menhir.ml" +# 34534 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33928 "parser_cocci_menhir.ml" +# 34539 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__8_ in let _v : 'tv_statement = -# 951 "parser_cocci_menhir.mly" +# 970 "parser_cocci_menhir.mly" ( P.switch _1 _2 _3 _4 _5 (List.concat _6) _7 _8 ) -# 33935 "parser_cocci_menhir.ml" +# 34546 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -33962,20 +34573,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 33966 "parser_cocci_menhir.ml" +# 34577 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_eexpr = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 33972 "parser_cocci_menhir.ml" +# 34583 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 952 "parser_cocci_menhir.mly" +# 971 "parser_cocci_menhir.mly" ( P.ret_exp _1 _2 _3 ) -# 33979 "parser_cocci_menhir.ml" +# 34590 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34001,19 +34612,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34005 "parser_cocci_menhir.ml" +# 34616 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 60 "parser_cocci_menhir.mly" (Data.clt) -# 34010 "parser_cocci_menhir.ml" +# 34621 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 953 "parser_cocci_menhir.mly" +# 972 "parser_cocci_menhir.mly" ( P.ret _1 _2 ) -# 34017 "parser_cocci_menhir.ml" +# 34628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34039,19 +34650,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34043 "parser_cocci_menhir.ml" +# 34654 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 34048 "parser_cocci_menhir.ml" +# 34659 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 954 "parser_cocci_menhir.mly" +# 973 "parser_cocci_menhir.mly" ( P.break _1 _2 ) -# 34055 "parser_cocci_menhir.ml" +# 34666 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34077,19 +34688,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34081 "parser_cocci_menhir.ml" +# 34692 "parser_cocci_menhir.ml" ) = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 34086 "parser_cocci_menhir.ml" +# 34697 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_statement = -# 955 "parser_cocci_menhir.mly" +# 974 "parser_cocci_menhir.mly" ( P.cont _1 _2 ) -# 34093 "parser_cocci_menhir.ml" +# 34704 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34115,15 +34726,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 34119 "parser_cocci_menhir.ml" +# 34730 "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 = -# 956 "parser_cocci_menhir.mly" +# 975 "parser_cocci_menhir.mly" ( P.label _1 _2 ) -# 34127 "parser_cocci_menhir.ml" +# 34738 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34154,20 +34765,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34158 "parser_cocci_menhir.ml" +# 34769 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_ident = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 34164 "parser_cocci_menhir.ml" +# 34775 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 957 "parser_cocci_menhir.mly" +# 976 "parser_cocci_menhir.mly" ( P.goto _1 _2 _3 ) -# 34171 "parser_cocci_menhir.ml" +# 34782 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34198,20 +34809,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 34202 "parser_cocci_menhir.ml" +# 34813 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_fun_start = Obj.magic _2 in let _1 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 34208 "parser_cocci_menhir.ml" +# 34819 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_statement = -# 959 "parser_cocci_menhir.mly" +# 978 "parser_cocci_menhir.mly" ( P.seq _1 _2 _3 ) -# 34215 "parser_cocci_menhir.ml" +# 34826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34238,14 +34849,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 34242 "parser_cocci_menhir.ml" +# 34853 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_w_ in let _v : 'tv_stm_dots = -# 963 "parser_cocci_menhir.mly" +# 982 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) ) -# 34249 "parser_cocci_menhir.ml" +# 34860 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34281,22 +34892,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 34285 "parser_cocci_menhir.ml" +# 34896 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 34292 "parser_cocci_menhir.ml" +# 34903 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_stm_dots = -# 965 "parser_cocci_menhir.mly" +# 984 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 34300 "parser_cocci_menhir.ml" +# 34911 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34332,22 +34943,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 34336 "parser_cocci_menhir.ml" +# 34947 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 34343 "parser_cocci_menhir.ml" +# 34954 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos_c_ in let _v : 'tv_stm_dots = -# 968 "parser_cocci_menhir.mly" +# 987 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 34351 "parser_cocci_menhir.ml" +# 34962 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34368,14 +34979,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 34372 "parser_cocci_menhir.ml" +# 34983 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 894 "parser_cocci_menhir.mly" +# 913 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Static s ) -# 34379 "parser_cocci_menhir.ml" +# 34990 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34396,14 +35007,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 34400 "parser_cocci_menhir.ml" +# 35011 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 895 "parser_cocci_menhir.mly" +# 914 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Auto s ) -# 34407 "parser_cocci_menhir.ml" +# 35018 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34424,14 +35035,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 34428 "parser_cocci_menhir.ml" +# 35039 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 896 "parser_cocci_menhir.mly" +# 915 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Register s ) -# 34435 "parser_cocci_menhir.ml" +# 35046 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34452,14 +35063,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 56 "parser_cocci_menhir.mly" (Data.clt) -# 34456 "parser_cocci_menhir.ml" +# 35067 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_storage = -# 897 "parser_cocci_menhir.mly" +# 916 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Extern s ) -# 34463 "parser_cocci_menhir.ml" +# 35074 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34479,9 +35090,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl = -# 628 "parser_cocci_menhir.mly" +# 633 "parser_cocci_menhir.mly" ( [] ) -# 34485 "parser_cocci_menhir.ml" +# 35096 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34503,9 +35114,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl = -# 629 "parser_cocci_menhir.mly" +# 634 "parser_cocci_menhir.mly" ( [_1] ) -# 34509 "parser_cocci_menhir.ml" +# 35120 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34527,9 +35138,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_list = -# 651 "parser_cocci_menhir.mly" +# 656 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1)) ) -# 34533 "parser_cocci_menhir.ml" +# 35144 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34551,9 +35162,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_list_start = -# 654 "parser_cocci_menhir.mly" +# 659 "parser_cocci_menhir.mly" ( _1 ) -# 34557 "parser_cocci_menhir.ml" +# 35168 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34581,9 +35192,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_struct_decl_list_start = -# 655 "parser_cocci_menhir.mly" +# 660 "parser_cocci_menhir.mly" ( _1@_2 ) -# 34587 "parser_cocci_menhir.ml" +# 35198 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34611,9 +35222,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_d_ in let _endpos = _endpos_r_ in let _v : 'tv_struct_decl_list_start = -# 657 "parser_cocci_menhir.mly" +# 662 "parser_cocci_menhir.mly" ( (P.mkddots_one "..." d)::r ) -# 34617 "parser_cocci_menhir.ml" +# 35228 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34634,14 +35245,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 69 "parser_cocci_menhir.mly" (Parse_aux.info) -# 34638 "parser_cocci_menhir.ml" +# 35249 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_struct_decl_one = -# 632 "parser_cocci_menhir.mly" +# 637 "parser_cocci_menhir.mly" ( P.meta_field _1 ) -# 34645 "parser_cocci_menhir.ml" +# 35256 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34672,17 +35283,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34676 "parser_cocci_menhir.ml" +# 35287 "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_one = -# 634 "parser_cocci_menhir.mly" +# 639 "parser_cocci_menhir.mly" ( let (id,fn) = d in Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) ) -# 34686 "parser_cocci_menhir.ml" +# 35297 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34743,40 +35354,40 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34747 "parser_cocci_menhir.ml" +# 35358 "parser_cocci_menhir.ml" ) = Obj.magic pv in let rp2 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 34752 "parser_cocci_menhir.ml" +# 35363 "parser_cocci_menhir.ml" ) = Obj.magic rp2 in let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in let lp2 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 34758 "parser_cocci_menhir.ml" +# 35369 "parser_cocci_menhir.ml" ) = Obj.magic lp2 in let rp1 : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 34763 "parser_cocci_menhir.ml" +# 35374 "parser_cocci_menhir.ml" ) = Obj.magic rp1 in let d : 'tv_d_ident = Obj.magic d in let st : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 34769 "parser_cocci_menhir.ml" +# 35380 "parser_cocci_menhir.ml" ) = Obj.magic st in let lp1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 34774 "parser_cocci_menhir.ml" +# 35385 "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_one = -# 638 "parser_cocci_menhir.mly" +# 643 "parser_cocci_menhir.mly" ( let (id,fn) = d in let t = Ast0.wrap @@ -34784,7 +35395,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)) ) -# 34788 "parser_cocci_menhir.ml" +# 35399 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34815,7 +35426,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34819 "parser_cocci_menhir.ml" +# 35430 "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 @@ -34825,15 +35436,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 34829 "parser_cocci_menhir.ml" +# 35440 "parser_cocci_menhir.ml" in -# 646 "parser_cocci_menhir.mly" +# 651 "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)) ) -# 34837 "parser_cocci_menhir.ml" +# 35448 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34869,7 +35480,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let pv : ( # 111 "parser_cocci_menhir.mly" (Data.clt) -# 34873 "parser_cocci_menhir.ml" +# 35484 "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 @@ -34881,15 +35492,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 34885 "parser_cocci_menhir.ml" +# 35496 "parser_cocci_menhir.ml" in -# 646 "parser_cocci_menhir.mly" +# 651 "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)) ) -# 34893 "parser_cocci_menhir.ml" +# 35504 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34910,14 +35521,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 34914 "parser_cocci_menhir.ml" +# 35525 "parser_cocci_menhir.ml" ) = Obj.magic s in let _startpos = _startpos_s_ in let _endpos = _endpos_s_ in let _v : 'tv_struct_or_union = -# 624 "parser_cocci_menhir.mly" +# 629 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Struct s ) -# 34921 "parser_cocci_menhir.ml" +# 35532 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34938,14 +35549,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let u : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 34942 "parser_cocci_menhir.ml" +# 35553 "parser_cocci_menhir.ml" ) = Obj.magic u in let _startpos = _startpos_u_ in let _endpos = _endpos_u_ in let _v : 'tv_struct_or_union = -# 625 "parser_cocci_menhir.mly" +# 630 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Union u ) -# 34949 "parser_cocci_menhir.ml" +# 35560 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -34971,7 +35582,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos_i_ in let _v : 'tv_sub = -# 1646 "parser_cocci_menhir.mly" +# 1726 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -34980,7 +35591,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)) in [i] ) -# 34984 "parser_cocci_menhir.ml" +# 35595 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35014,7 +35625,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__4_ in let _v : 'tv_sub = -# 1655 "parser_cocci_menhir.mly" +# 1735 "parser_cocci_menhir.mly" ( (if !Data.in_iso then failwith "constraints not allowed in iso file"); (if !Data.in_generating @@ -35024,7 +35635,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct P.check_inherited_constraint i (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None))) l) -# 35028 "parser_cocci_menhir.ml" +# 35639 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35046,9 +35657,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_top_eexpr = -# 1274 "parser_cocci_menhir.mly" +# 1295 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) ) -# 35052 "parser_cocci_menhir.ml" +# 35663 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35079,25 +35690,25 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _3 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 35083 "parser_cocci_menhir.ml" +# 35694 "parser_cocci_menhir.ml" ) = Obj.magic _3 in let _2 : 'tv_initialize_list = Obj.magic _2 in let _1 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 35089 "parser_cocci_menhir.ml" +# 35700 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__3_ in let _v : 'tv_top_init = -# 1881 "parser_cocci_menhir.mly" +# 1961 "parser_cocci_menhir.mly" ( if P.struct_initializer _2 then let il = P.drop_dot_commas _2 in Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false)) else Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) ) -# 35101 "parser_cocci_menhir.ml" +# 35712 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35112,9 +35723,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 = -# 1869 "parser_cocci_menhir.mly" +# 1949 "parser_cocci_menhir.mly" ([]) -# 35118 "parser_cocci_menhir.ml" +# 35729 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35140,9 +35751,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 1870 "parser_cocci_menhir.mly" +# 1950 "parser_cocci_menhir.mly" (_2) -# 35146 "parser_cocci_menhir.ml" +# 35757 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35170,9 +35781,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 1871 "parser_cocci_menhir.mly" +# 1951 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 35176 "parser_cocci_menhir.ml" +# 35787 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35200,9 +35811,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots = -# 1872 "parser_cocci_menhir.mly" +# 1952 "parser_cocci_menhir.mly" (_1@_2) -# 35206 "parser_cocci_menhir.ml" +# 35817 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35228,9 +35839,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 1860 "parser_cocci_menhir.mly" +# 1940 "parser_cocci_menhir.mly" (_2) -# 35234 "parser_cocci_menhir.ml" +# 35845 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35258,9 +35869,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 1861 "parser_cocci_menhir.mly" +# 1941 "parser_cocci_menhir.mly" ((Ast0.wrap(Ast0.Exp(_1)))::_2) -# 35264 "parser_cocci_menhir.ml" +# 35875 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35288,9 +35899,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_dots_init = -# 1862 "parser_cocci_menhir.mly" +# 1942 "parser_cocci_menhir.mly" (_1@_2) -# 35294 "parser_cocci_menhir.ml" +# 35905 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35305,9 +35916,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 = -# 1865 "parser_cocci_menhir.mly" +# 1945 "parser_cocci_menhir.mly" ([]) -# 35311 "parser_cocci_menhir.ml" +# 35922 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35335,9 +35946,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_exp = -# 1866 "parser_cocci_menhir.mly" +# 1946 "parser_cocci_menhir.mly" (_1::_2) -# 35341 "parser_cocci_menhir.ml" +# 35952 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35352,9 +35963,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 = -# 1875 "parser_cocci_menhir.mly" +# 1955 "parser_cocci_menhir.mly" ([]) -# 35358 "parser_cocci_menhir.ml" +# 35969 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35382,9 +35993,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_stm = -# 1876 "parser_cocci_menhir.mly" +# 1956 "parser_cocci_menhir.mly" (_1::_2) -# 35388 "parser_cocci_menhir.ml" +# 35999 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35412,9 +36023,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_toplevel_after_stm = -# 1877 "parser_cocci_menhir.mly" +# 1957 "parser_cocci_menhir.mly" (_1@_2) -# 35418 "parser_cocci_menhir.ml" +# 36029 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35442,9 +36053,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_ = -# 1855 "parser_cocci_menhir.mly" +# 1935 "parser_cocci_menhir.mly" ( _1::_2 ) -# 35448 "parser_cocci_menhir.ml" +# 36059 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35472,9 +36083,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_ = -# 1856 "parser_cocci_menhir.mly" +# 1936 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.Exp(_1)))::_2 ) -# 35478 "parser_cocci_menhir.ml" +# 36089 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35502,9 +36113,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_ = -# 1857 "parser_cocci_menhir.mly" +# 1937 "parser_cocci_menhir.mly" ( _1@_2 ) -# 35508 "parser_cocci_menhir.ml" +# 36119 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35537,7 +36148,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let a0 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35541 "parser_cocci_menhir.ml" +# 36152 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -35545,15 +36156,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 973 "parser_cocci_menhir.mly" +# 992 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." a, List.concat w)) ) -# 35551 "parser_cocci_menhir.ml" +# 36162 "parser_cocci_menhir.ml" in -# 1848 "parser_cocci_menhir.mly" +# 1928 "parser_cocci_menhir.mly" ( a::b ) -# 35557 "parser_cocci_menhir.ml" +# 36168 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35595,14 +36206,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c0 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35599 "parser_cocci_menhir.ml" +# 36210 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35606 "parser_cocci_menhir.ml" +# 36217 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -35612,16 +36223,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 977 "parser_cocci_menhir.mly" +# 996 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 35619 "parser_cocci_menhir.ml" +# 36230 "parser_cocci_menhir.ml" in -# 1849 "parser_cocci_menhir.mly" +# 1929 "parser_cocci_menhir.mly" ( a::b ) -# 35625 "parser_cocci_menhir.ml" +# 36236 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35663,14 +36274,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c0 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35667 "parser_cocci_menhir.ml" +# 36278 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35674 "parser_cocci_menhir.ml" +# 36285 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_b_ in @@ -35680,16 +36291,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 980 "parser_cocci_menhir.mly" +# 999 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 35687 "parser_cocci_menhir.ml" +# 36298 "parser_cocci_menhir.ml" in -# 1849 "parser_cocci_menhir.mly" +# 1929 "parser_cocci_menhir.mly" ( a::b ) -# 35693 "parser_cocci_menhir.ml" +# 36304 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35725,14 +36336,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c0 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35729 "parser_cocci_menhir.ml" +# 36340 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35736 "parser_cocci_menhir.ml" +# 36347 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_c0_ in @@ -35742,16 +36353,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 977 "parser_cocci_menhir.mly" +# 996 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b, P.clt2mcode "...>" c, List.concat w, false)) ) -# 35749 "parser_cocci_menhir.ml" +# 36360 "parser_cocci_menhir.ml" in -# 1850 "parser_cocci_menhir.mly" +# 1930 "parser_cocci_menhir.mly" ( [a] ) -# 35755 "parser_cocci_menhir.ml" +# 36366 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35787,14 +36398,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let c0 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35791 "parser_cocci_menhir.ml" +# 36402 "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 : ( # 77 "parser_cocci_menhir.mly" (Data.clt) -# 35798 "parser_cocci_menhir.ml" +# 36409 "parser_cocci_menhir.ml" ) = Obj.magic a0 in let _startpos = _startpos_a0_ in let _endpos = _endpos_c0_ in @@ -35804,16 +36415,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let w = w0 in let a = a0 in -# 980 "parser_cocci_menhir.mly" +# 999 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b, P.clt2mcode "...+>" c, List.concat w, true)) ) -# 35811 "parser_cocci_menhir.ml" +# 36422 "parser_cocci_menhir.ml" in -# 1850 "parser_cocci_menhir.mly" +# 1930 "parser_cocci_menhir.mly" ( [a] ) -# 35817 "parser_cocci_menhir.ml" +# 36428 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35841,9 +36452,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_ = -# 1851 "parser_cocci_menhir.mly" +# 1931 "parser_cocci_menhir.mly" ( (Ast0.wrap(Ast0.Exp(_1)))::_2 ) -# 35847 "parser_cocci_menhir.ml" +# 36458 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35871,9 +36482,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_ = -# 1852 "parser_cocci_menhir.mly" +# 1932 "parser_cocci_menhir.mly" ( _1@_2 ) -# 35877 "parser_cocci_menhir.ml" +# 36488 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35905,12 +36516,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 35909 "parser_cocci_menhir.ml" +# 36520 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 35914 "parser_cocci_menhir.ml" +# 36525 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -35920,28 +36531,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 35926 "parser_cocci_menhir.ml" +# 36537 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 35932 "parser_cocci_menhir.ml" +# 36543 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 35939 "parser_cocci_menhir.ml" +# 36550 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 35945 "parser_cocci_menhir.ml" +# 36556 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -35973,12 +36584,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 35977 "parser_cocci_menhir.ml" +# 36588 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 35982 "parser_cocci_menhir.ml" +# 36593 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -35988,28 +36599,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 35994 "parser_cocci_menhir.ml" +# 36605 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36000 "parser_cocci_menhir.ml" +# 36611 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36007 "parser_cocci_menhir.ml" +# 36618 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36013 "parser_cocci_menhir.ml" +# 36624 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36041,12 +36652,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36045 "parser_cocci_menhir.ml" +# 36656 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36050 "parser_cocci_menhir.ml" +# 36661 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36056,28 +36667,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 36062 "parser_cocci_menhir.ml" +# 36673 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36068 "parser_cocci_menhir.ml" +# 36679 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36075 "parser_cocci_menhir.ml" +# 36686 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36081 "parser_cocci_menhir.ml" +# 36692 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36109,12 +36720,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 36113 "parser_cocci_menhir.ml" +# 36724 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36118 "parser_cocci_menhir.ml" +# 36729 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36124,29 +36735,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 36131 "parser_cocci_menhir.ml" +# 36742 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36137 "parser_cocci_menhir.ml" +# 36748 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36144 "parser_cocci_menhir.ml" +# 36755 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36150 "parser_cocci_menhir.ml" +# 36761 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36187,17 +36798,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 36191 "parser_cocci_menhir.ml" +# 36802 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 36196 "parser_cocci_menhir.ml" +# 36807 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36201 "parser_cocci_menhir.ml" +# 36812 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -36209,33 +36820,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 36220 "parser_cocci_menhir.ml" +# 36831 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36226 "parser_cocci_menhir.ml" +# 36837 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36233 "parser_cocci_menhir.ml" +# 36844 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36239 "parser_cocci_menhir.ml" +# 36850 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36267,12 +36878,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36271 "parser_cocci_menhir.ml" +# 36882 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36276 "parser_cocci_menhir.ml" +# 36887 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36282,28 +36893,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 36288 "parser_cocci_menhir.ml" +# 36899 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36294 "parser_cocci_menhir.ml" +# 36905 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36301 "parser_cocci_menhir.ml" +# 36912 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36307 "parser_cocci_menhir.ml" +# 36918 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36340,17 +36951,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36344 "parser_cocci_menhir.ml" +# 36955 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36349 "parser_cocci_menhir.ml" +# 36960 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36354 "parser_cocci_menhir.ml" +# 36965 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36362,31 +36973,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 36371 "parser_cocci_menhir.ml" +# 36982 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 36377 "parser_cocci_menhir.ml" +# 36988 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36384 "parser_cocci_menhir.ml" +# 36995 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36390 "parser_cocci_menhir.ml" +# 37001 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36418,12 +37029,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36422 "parser_cocci_menhir.ml" +# 37033 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36427 "parser_cocci_menhir.ml" +# 37038 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36433,28 +37044,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 36439 "parser_cocci_menhir.ml" +# 37050 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36445 "parser_cocci_menhir.ml" +# 37056 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36452 "parser_cocci_menhir.ml" +# 37063 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36458 "parser_cocci_menhir.ml" +# 37069 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36486,12 +37097,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36490 "parser_cocci_menhir.ml" +# 37101 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36495 "parser_cocci_menhir.ml" +# 37106 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36501,28 +37112,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 36507 "parser_cocci_menhir.ml" +# 37118 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36513 "parser_cocci_menhir.ml" +# 37124 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36520 "parser_cocci_menhir.ml" +# 37131 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36526 "parser_cocci_menhir.ml" +# 37137 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36554,12 +37165,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36558 "parser_cocci_menhir.ml" +# 37169 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36563 "parser_cocci_menhir.ml" +# 37174 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36569,28 +37180,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 36575 "parser_cocci_menhir.ml" +# 37186 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36581 "parser_cocci_menhir.ml" +# 37192 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36588 "parser_cocci_menhir.ml" +# 37199 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36594 "parser_cocci_menhir.ml" +# 37205 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36622,12 +37233,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 36626 "parser_cocci_menhir.ml" +# 37237 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36631 "parser_cocci_menhir.ml" +# 37242 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36637,29 +37248,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 36644 "parser_cocci_menhir.ml" +# 37255 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36650 "parser_cocci_menhir.ml" +# 37261 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36657 "parser_cocci_menhir.ml" +# 37268 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36663 "parser_cocci_menhir.ml" +# 37274 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36700,17 +37311,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 36704 "parser_cocci_menhir.ml" +# 37315 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 36709 "parser_cocci_menhir.ml" +# 37320 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36714 "parser_cocci_menhir.ml" +# 37325 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let _startpos = _startpos_r1_ in let _endpos = _endpos_m_ in @@ -36722,33 +37333,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 36733 "parser_cocci_menhir.ml" +# 37344 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36739 "parser_cocci_menhir.ml" +# 37350 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36746 "parser_cocci_menhir.ml" +# 37357 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36752 "parser_cocci_menhir.ml" +# 37363 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36780,12 +37391,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36784 "parser_cocci_menhir.ml" +# 37395 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36789 "parser_cocci_menhir.ml" +# 37400 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36795,28 +37406,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 36801 "parser_cocci_menhir.ml" +# 37412 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36807 "parser_cocci_menhir.ml" +# 37418 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36814 "parser_cocci_menhir.ml" +# 37425 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36820 "parser_cocci_menhir.ml" +# 37431 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36853,17 +37464,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36857 "parser_cocci_menhir.ml" +# 37468 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36862 "parser_cocci_menhir.ml" +# 37473 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 36867 "parser_cocci_menhir.ml" +# 37478 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let _startpos = _startpos_r0_ in let _endpos = _endpos_m_ in @@ -36875,31 +37486,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 36884 "parser_cocci_menhir.ml" +# 37495 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 36890 "parser_cocci_menhir.ml" +# 37501 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36897 "parser_cocci_menhir.ml" +# 37508 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36903 "parser_cocci_menhir.ml" +# 37514 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36926,7 +37537,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36930 "parser_cocci_menhir.ml" +# 37541 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -36935,28 +37546,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 36941 "parser_cocci_menhir.ml" +# 37552 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 36947 "parser_cocci_menhir.ml" +# 37558 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 36954 "parser_cocci_menhir.ml" +# 37565 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 36960 "parser_cocci_menhir.ml" +# 37571 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -36983,7 +37594,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 36987 "parser_cocci_menhir.ml" +# 37598 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -36992,28 +37603,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 36998 "parser_cocci_menhir.ml" +# 37609 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37004 "parser_cocci_menhir.ml" +# 37615 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37011 "parser_cocci_menhir.ml" +# 37622 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37017 "parser_cocci_menhir.ml" +# 37628 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37040,7 +37651,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37044 "parser_cocci_menhir.ml" +# 37655 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37049,28 +37660,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 37055 "parser_cocci_menhir.ml" +# 37666 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37061 "parser_cocci_menhir.ml" +# 37672 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37068 "parser_cocci_menhir.ml" +# 37679 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37074 "parser_cocci_menhir.ml" +# 37685 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37097,7 +37708,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 37101 "parser_cocci_menhir.ml" +# 37712 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -37106,29 +37717,29 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 37113 "parser_cocci_menhir.ml" +# 37724 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37119 "parser_cocci_menhir.ml" +# 37730 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37126 "parser_cocci_menhir.ml" +# 37737 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37132 "parser_cocci_menhir.ml" +# 37743 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37164,12 +37775,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 37168 "parser_cocci_menhir.ml" +# 37779 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 37173 "parser_cocci_menhir.ml" +# 37784 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let _startpos = _startpos_r00_ in let _endpos = _endpos_m_ in @@ -37180,33 +37791,33 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 37191 "parser_cocci_menhir.ml" +# 37802 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37197 "parser_cocci_menhir.ml" +# 37808 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37204 "parser_cocci_menhir.ml" +# 37815 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37210 "parser_cocci_menhir.ml" +# 37821 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37233,7 +37844,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37237 "parser_cocci_menhir.ml" +# 37848 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37242,28 +37853,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 37248 "parser_cocci_menhir.ml" +# 37859 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37254 "parser_cocci_menhir.ml" +# 37865 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37261 "parser_cocci_menhir.ml" +# 37872 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37267 "parser_cocci_menhir.ml" +# 37878 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37295,12 +37906,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37299 "parser_cocci_menhir.ml" +# 37910 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37304 "parser_cocci_menhir.ml" +# 37915 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let _startpos = _startpos_ty100_ in let _endpos = _endpos_m_ in @@ -37311,31 +37922,31 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 37320 "parser_cocci_menhir.ml" +# 37931 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 37326 "parser_cocci_menhir.ml" +# 37937 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37333 "parser_cocci_menhir.ml" +# 37944 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37339 "parser_cocci_menhir.ml" +# 37950 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37362,7 +37973,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 37366 "parser_cocci_menhir.ml" +# 37977 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37371,28 +37982,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 557 "parser_cocci_menhir.mly" +# 562 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 37377 "parser_cocci_menhir.ml" +# 37988 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37383 "parser_cocci_menhir.ml" +# 37994 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37390 "parser_cocci_menhir.ml" +# 38001 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37396 "parser_cocci_menhir.ml" +# 38007 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37419,7 +38030,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37423 "parser_cocci_menhir.ml" +# 38034 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37428,28 +38039,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 559 "parser_cocci_menhir.mly" +# 564 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 37434 "parser_cocci_menhir.ml" +# 38045 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37440 "parser_cocci_menhir.ml" +# 38051 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37447 "parser_cocci_menhir.ml" +# 38058 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37453 "parser_cocci_menhir.ml" +# 38064 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37476,7 +38087,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 37480 "parser_cocci_menhir.ml" +# 38091 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37485,28 +38096,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 561 "parser_cocci_menhir.mly" +# 566 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 37491 "parser_cocci_menhir.ml" +# 38102 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37497 "parser_cocci_menhir.ml" +# 38108 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37504 "parser_cocci_menhir.ml" +# 38115 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37510 "parser_cocci_menhir.ml" +# 38121 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37533,7 +38144,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 37537 "parser_cocci_menhir.ml" +# 38148 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37542,28 +38153,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 563 "parser_cocci_menhir.mly" +# 568 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 37548 "parser_cocci_menhir.ml" +# 38159 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37554 "parser_cocci_menhir.ml" +# 38165 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37561 "parser_cocci_menhir.ml" +# 38172 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37567 "parser_cocci_menhir.ml" +# 38178 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37590,7 +38201,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 37594 "parser_cocci_menhir.ml" +# 38205 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37599,28 +38210,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 565 "parser_cocci_menhir.mly" +# 570 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 37605 "parser_cocci_menhir.ml" +# 38216 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37611 "parser_cocci_menhir.ml" +# 38222 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37618 "parser_cocci_menhir.ml" +# 38229 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37624 "parser_cocci_menhir.ml" +# 38235 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37647,7 +38258,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 37651 "parser_cocci_menhir.ml" +# 38262 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let _startpos = _startpos_ty00_ in let _endpos = _endpos_m_ in @@ -37656,28 +38267,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 567 "parser_cocci_menhir.mly" +# 572 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 37662 "parser_cocci_menhir.ml" +# 38273 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37668 "parser_cocci_menhir.ml" +# 38279 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37675 "parser_cocci_menhir.ml" +# 38286 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37681 "parser_cocci_menhir.ml" +# 38292 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37710,7 +38321,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 37714 "parser_cocci_menhir.ml" +# 38325 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -37721,28 +38332,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 569 "parser_cocci_menhir.mly" +# 574 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 37727 "parser_cocci_menhir.ml" +# 38338 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37733 "parser_cocci_menhir.ml" +# 38344 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37740 "parser_cocci_menhir.ml" +# 38351 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37746 "parser_cocci_menhir.ml" +# 38357 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37784,18 +38395,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 37788 "parser_cocci_menhir.ml" +# 38399 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 37794 "parser_cocci_menhir.ml" +# 38405 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 37799 "parser_cocci_menhir.ml" +# 38410 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -37813,35 +38424,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 37817 "parser_cocci_menhir.ml" +# 38428 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 37826 "parser_cocci_menhir.ml" +# 38437 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37832 "parser_cocci_menhir.ml" +# 38443 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37839 "parser_cocci_menhir.ml" +# 38450 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37845 "parser_cocci_menhir.ml" +# 38456 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37888,19 +38499,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 37892 "parser_cocci_menhir.ml" +# 38503 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 37898 "parser_cocci_menhir.ml" +# 38509 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 37904 "parser_cocci_menhir.ml" +# 38515 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -37921,35 +38532,35 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 37925 "parser_cocci_menhir.ml" +# 38536 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 37934 "parser_cocci_menhir.ml" +# 38545 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 37940 "parser_cocci_menhir.ml" +# 38551 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 37947 "parser_cocci_menhir.ml" +# 38558 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 37953 "parser_cocci_menhir.ml" +# 38564 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -37989,28 +38600,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 576 "parser_cocci_menhir.mly" +# 581 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 37995 "parser_cocci_menhir.ml" +# 38606 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 38001 "parser_cocci_menhir.ml" +# 38612 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38008 "parser_cocci_menhir.ml" +# 38619 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38014 "parser_cocci_menhir.ml" +# 38625 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38052,13 +38663,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38056 "parser_cocci_menhir.ml" +# 38667 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38062 "parser_cocci_menhir.ml" +# 38673 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : 'tv_struct_or_union = Obj.magic s00 in let _startpos = _startpos_s00_ in @@ -38077,36 +38688,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 38081 "parser_cocci_menhir.ml" +# 38692 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 38091 "parser_cocci_menhir.ml" +# 38702 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 38097 "parser_cocci_menhir.ml" +# 38708 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38104 "parser_cocci_menhir.ml" +# 38715 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38110 "parser_cocci_menhir.ml" +# 38721 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38153,13 +38764,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38157 "parser_cocci_menhir.ml" +# 38768 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38163 "parser_cocci_menhir.ml" +# 38774 "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 @@ -38182,36 +38793,36 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38186 "parser_cocci_menhir.ml" +# 38797 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 38196 "parser_cocci_menhir.ml" +# 38807 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 38202 "parser_cocci_menhir.ml" +# 38813 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38209 "parser_cocci_menhir.ml" +# 38820 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38215 "parser_cocci_menhir.ml" +# 38826 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38253,18 +38864,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38257 "parser_cocci_menhir.ml" +# 38868 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 38263 "parser_cocci_menhir.ml" +# 38874 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 38268 "parser_cocci_menhir.ml" +# 38879 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let _startpos = _startpos_s00_ in let _endpos = _endpos_m_ in @@ -38279,30 +38890,30 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 585 "parser_cocci_menhir.mly" +# 590 "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)) ) -# 38287 "parser_cocci_menhir.ml" +# 38898 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 38293 "parser_cocci_menhir.ml" +# 38904 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38300 "parser_cocci_menhir.ml" +# 38911 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38306 "parser_cocci_menhir.ml" +# 38917 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38329,7 +38940,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 38333 "parser_cocci_menhir.ml" +# 38944 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let _startpos = _startpos_p00_ in let _endpos = _endpos_m_ in @@ -38338,28 +38949,28 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 589 "parser_cocci_menhir.mly" +# 594 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 38344 "parser_cocci_menhir.ml" +# 38955 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 38350 "parser_cocci_menhir.ml" +# 38961 "parser_cocci_menhir.ml" in let cv = # 39 "standard.mly" ( None ) -# 38357 "parser_cocci_menhir.ml" +# 38968 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38363 "parser_cocci_menhir.ml" +# 38974 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38396,12 +39007,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38400 "parser_cocci_menhir.ml" +# 39011 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38405 "parser_cocci_menhir.ml" +# 39016 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38412,15 +39023,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 38418 "parser_cocci_menhir.ml" +# 39029 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38424 "parser_cocci_menhir.ml" +# 39035 "parser_cocci_menhir.ml" in let cv = @@ -38428,13 +39039,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38432 "parser_cocci_menhir.ml" +# 39043 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38438 "parser_cocci_menhir.ml" +# 39049 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38471,12 +39082,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38475 "parser_cocci_menhir.ml" +# 39086 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38480 "parser_cocci_menhir.ml" +# 39091 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38487,15 +39098,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 38493 "parser_cocci_menhir.ml" +# 39104 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38499 "parser_cocci_menhir.ml" +# 39110 "parser_cocci_menhir.ml" in let cv = @@ -38503,13 +39114,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38507 "parser_cocci_menhir.ml" +# 39118 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38513 "parser_cocci_menhir.ml" +# 39124 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38546,12 +39157,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38550 "parser_cocci_menhir.ml" +# 39161 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38555 "parser_cocci_menhir.ml" +# 39166 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38562,15 +39173,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 38568 "parser_cocci_menhir.ml" +# 39179 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38574 "parser_cocci_menhir.ml" +# 39185 "parser_cocci_menhir.ml" in let cv = @@ -38578,13 +39189,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38582 "parser_cocci_menhir.ml" +# 39193 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38588 "parser_cocci_menhir.ml" +# 39199 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38621,12 +39232,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 38625 "parser_cocci_menhir.ml" +# 39236 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38630 "parser_cocci_menhir.ml" +# 39241 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38637,16 +39248,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 38644 "parser_cocci_menhir.ml" +# 39255 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38650 "parser_cocci_menhir.ml" +# 39261 "parser_cocci_menhir.ml" in let cv = @@ -38654,13 +39265,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38658 "parser_cocci_menhir.ml" +# 39269 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38664 "parser_cocci_menhir.ml" +# 39275 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38706,17 +39317,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 38710 "parser_cocci_menhir.ml" +# 39321 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 38715 "parser_cocci_menhir.ml" +# 39326 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38720 "parser_cocci_menhir.ml" +# 39331 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38729,20 +39340,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 38740 "parser_cocci_menhir.ml" +# 39351 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38746 "parser_cocci_menhir.ml" +# 39357 "parser_cocci_menhir.ml" in let cv = @@ -38750,13 +39361,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38754 "parser_cocci_menhir.ml" +# 39365 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38760 "parser_cocci_menhir.ml" +# 39371 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38793,12 +39404,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38797 "parser_cocci_menhir.ml" +# 39408 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38802 "parser_cocci_menhir.ml" +# 39413 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38809,15 +39420,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 38815 "parser_cocci_menhir.ml" +# 39426 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38821 "parser_cocci_menhir.ml" +# 39432 "parser_cocci_menhir.ml" in let cv = @@ -38825,13 +39436,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38829 "parser_cocci_menhir.ml" +# 39440 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38835 "parser_cocci_menhir.ml" +# 39446 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38873,17 +39484,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38877 "parser_cocci_menhir.ml" +# 39488 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38882 "parser_cocci_menhir.ml" +# 39493 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38887 "parser_cocci_menhir.ml" +# 39498 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38896,18 +39507,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 38905 "parser_cocci_menhir.ml" +# 39516 "parser_cocci_menhir.ml" in -# 594 "parser_cocci_menhir.mly" +# 599 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) ) -# 38911 "parser_cocci_menhir.ml" +# 39522 "parser_cocci_menhir.ml" in let cv = @@ -38915,13 +39526,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38919 "parser_cocci_menhir.ml" +# 39530 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 38925 "parser_cocci_menhir.ml" +# 39536 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -38958,12 +39569,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 38962 "parser_cocci_menhir.ml" +# 39573 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 38967 "parser_cocci_menhir.ml" +# 39578 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -38974,15 +39585,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 38980 "parser_cocci_menhir.ml" +# 39591 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 38986 "parser_cocci_menhir.ml" +# 39597 "parser_cocci_menhir.ml" in let cv = @@ -38990,13 +39601,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 38994 "parser_cocci_menhir.ml" +# 39605 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39000 "parser_cocci_menhir.ml" +# 39611 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39033,12 +39644,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39037 "parser_cocci_menhir.ml" +# 39648 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39042 "parser_cocci_menhir.ml" +# 39653 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39049,15 +39660,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 39055 "parser_cocci_menhir.ml" +# 39666 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39061 "parser_cocci_menhir.ml" +# 39672 "parser_cocci_menhir.ml" in let cv = @@ -39065,13 +39676,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39069 "parser_cocci_menhir.ml" +# 39680 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39075 "parser_cocci_menhir.ml" +# 39686 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39108,12 +39719,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39112 "parser_cocci_menhir.ml" +# 39723 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39117 "parser_cocci_menhir.ml" +# 39728 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39124,15 +39735,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 39130 "parser_cocci_menhir.ml" +# 39741 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39136 "parser_cocci_menhir.ml" +# 39747 "parser_cocci_menhir.ml" in let cv = @@ -39140,13 +39751,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39144 "parser_cocci_menhir.ml" +# 39755 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39150 "parser_cocci_menhir.ml" +# 39761 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39183,12 +39794,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 39187 "parser_cocci_menhir.ml" +# 39798 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39192 "parser_cocci_menhir.ml" +# 39803 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39199,16 +39810,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 39206 "parser_cocci_menhir.ml" +# 39817 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39212 "parser_cocci_menhir.ml" +# 39823 "parser_cocci_menhir.ml" in let cv = @@ -39216,13 +39827,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39220 "parser_cocci_menhir.ml" +# 39831 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39226 "parser_cocci_menhir.ml" +# 39837 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39268,17 +39879,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 39272 "parser_cocci_menhir.ml" +# 39883 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 39277 "parser_cocci_menhir.ml" +# 39888 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let r1 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39282 "parser_cocci_menhir.ml" +# 39893 "parser_cocci_menhir.ml" ) = Obj.magic r1 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39291,20 +39902,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 39302 "parser_cocci_menhir.ml" +# 39913 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39308 "parser_cocci_menhir.ml" +# 39919 "parser_cocci_menhir.ml" in let cv = @@ -39312,13 +39923,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39316 "parser_cocci_menhir.ml" +# 39927 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39322 "parser_cocci_menhir.ml" +# 39933 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39355,12 +39966,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39359 "parser_cocci_menhir.ml" +# 39970 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39364 "parser_cocci_menhir.ml" +# 39975 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39371,15 +39982,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 39377 "parser_cocci_menhir.ml" +# 39988 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39383 "parser_cocci_menhir.ml" +# 39994 "parser_cocci_menhir.ml" in let cv = @@ -39387,13 +39998,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39391 "parser_cocci_menhir.ml" +# 40002 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39397 "parser_cocci_menhir.ml" +# 40008 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39435,17 +40046,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39439 "parser_cocci_menhir.ml" +# 40050 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39444 "parser_cocci_menhir.ml" +# 40055 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let r0 : ( # 54 "parser_cocci_menhir.mly" (Data.clt) -# 39449 "parser_cocci_menhir.ml" +# 40060 "parser_cocci_menhir.ml" ) = Obj.magic r0 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39458,18 +40069,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 39467 "parser_cocci_menhir.ml" +# 40078 "parser_cocci_menhir.ml" in -# 596 "parser_cocci_menhir.mly" +# 601 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) ) -# 39473 "parser_cocci_menhir.ml" +# 40084 "parser_cocci_menhir.ml" in let cv = @@ -39477,13 +40088,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39481 "parser_cocci_menhir.ml" +# 40092 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39487 "parser_cocci_menhir.ml" +# 40098 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39515,7 +40126,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39519 "parser_cocci_menhir.ml" +# 40130 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39525,15 +40136,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 531 "parser_cocci_menhir.mly" +# 536 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) ) -# 39531 "parser_cocci_menhir.ml" +# 40142 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39537 "parser_cocci_menhir.ml" +# 40148 "parser_cocci_menhir.ml" in let cv = @@ -39541,13 +40152,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39545 "parser_cocci_menhir.ml" +# 40156 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39551 "parser_cocci_menhir.ml" +# 40162 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39579,7 +40190,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39583 "parser_cocci_menhir.ml" +# 40194 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39589,15 +40200,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 533 "parser_cocci_menhir.mly" +# 538 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) ) -# 39595 "parser_cocci_menhir.ml" +# 40206 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39601 "parser_cocci_menhir.ml" +# 40212 "parser_cocci_menhir.ml" in let cv = @@ -39605,13 +40216,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39609 "parser_cocci_menhir.ml" +# 40220 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39615 "parser_cocci_menhir.ml" +# 40226 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39643,7 +40254,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39647 "parser_cocci_menhir.ml" +# 40258 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39653,15 +40264,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 535 "parser_cocci_menhir.mly" +# 540 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) ) -# 39659 "parser_cocci_menhir.ml" +# 40270 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39665 "parser_cocci_menhir.ml" +# 40276 "parser_cocci_menhir.ml" in let cv = @@ -39669,13 +40280,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39673 "parser_cocci_menhir.ml" +# 40284 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39679 "parser_cocci_menhir.ml" +# 40290 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39707,7 +40318,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 39711 "parser_cocci_menhir.ml" +# 40322 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39717,16 +40328,16 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 537 "parser_cocci_menhir.mly" +# 542 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = p in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 39724 "parser_cocci_menhir.ml" +# 40335 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39730 "parser_cocci_menhir.ml" +# 40341 "parser_cocci_menhir.ml" in let cv = @@ -39734,13 +40345,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39738 "parser_cocci_menhir.ml" +# 40349 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39744 "parser_cocci_menhir.ml" +# 40355 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39781,12 +40392,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 39785 "parser_cocci_menhir.ml" +# 40396 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let r00 : ( # 49 "parser_cocci_menhir.mly" (string) -# 39790 "parser_cocci_menhir.ml" +# 40401 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39798,20 +40409,20 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p = p0 in let r = r0 in -# 540 "parser_cocci_menhir.mly" +# 545 "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*))) ) -# 39809 "parser_cocci_menhir.ml" +# 40420 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39815 "parser_cocci_menhir.ml" +# 40426 "parser_cocci_menhir.ml" in let cv = @@ -39819,13 +40430,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39823 "parser_cocci_menhir.ml" +# 40434 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39829 "parser_cocci_menhir.ml" +# 40440 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39857,7 +40468,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39861 "parser_cocci_menhir.ml" +# 40472 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39867,15 +40478,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 547 "parser_cocci_menhir.mly" +# 552 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) ) -# 39873 "parser_cocci_menhir.ml" +# 40484 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39879 "parser_cocci_menhir.ml" +# 40490 "parser_cocci_menhir.ml" in let cv = @@ -39883,13 +40494,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39887 "parser_cocci_menhir.ml" +# 40498 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39893 "parser_cocci_menhir.ml" +# 40504 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -39926,12 +40537,12 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty200 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39930 "parser_cocci_menhir.ml" +# 40541 "parser_cocci_menhir.ml" ) = Obj.magic ty200 in let ty100 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 39935 "parser_cocci_menhir.ml" +# 40546 "parser_cocci_menhir.ml" ) = Obj.magic ty100 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -39943,18 +40554,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty2 = ty20 in let ty1 = ty10 in -# 549 "parser_cocci_menhir.mly" +# 554 "parser_cocci_menhir.mly" ( Ast0.wrap (Ast0.BaseType (Ast.LongLongType, [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) ) -# 39952 "parser_cocci_menhir.ml" +# 40563 "parser_cocci_menhir.ml" in -# 597 "parser_cocci_menhir.mly" +# 602 "parser_cocci_menhir.mly" ( ty ) -# 39958 "parser_cocci_menhir.ml" +# 40569 "parser_cocci_menhir.ml" in let cv = @@ -39962,13 +40573,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 39966 "parser_cocci_menhir.ml" +# 40577 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 39972 "parser_cocci_menhir.ml" +# 40583 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40000,7 +40611,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 40004 "parser_cocci_menhir.ml" +# 40615 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40010,15 +40621,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 557 "parser_cocci_menhir.mly" +# 562 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) ) -# 40016 "parser_cocci_menhir.ml" +# 40627 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40022 "parser_cocci_menhir.ml" +# 40633 "parser_cocci_menhir.ml" in let cv = @@ -40026,13 +40637,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40030 "parser_cocci_menhir.ml" +# 40641 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40036 "parser_cocci_menhir.ml" +# 40647 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40064,7 +40675,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 40068 "parser_cocci_menhir.ml" +# 40679 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40074,15 +40685,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 559 "parser_cocci_menhir.mly" +# 564 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) ) -# 40080 "parser_cocci_menhir.ml" +# 40691 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40086 "parser_cocci_menhir.ml" +# 40697 "parser_cocci_menhir.ml" in let cv = @@ -40090,13 +40701,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40094 "parser_cocci_menhir.ml" +# 40705 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40100 "parser_cocci_menhir.ml" +# 40711 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40128,7 +40739,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 51 "parser_cocci_menhir.mly" (Data.clt) -# 40132 "parser_cocci_menhir.ml" +# 40743 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40138,15 +40749,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 561 "parser_cocci_menhir.mly" +# 566 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) ) -# 40144 "parser_cocci_menhir.ml" +# 40755 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40150 "parser_cocci_menhir.ml" +# 40761 "parser_cocci_menhir.ml" in let cv = @@ -40154,13 +40765,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40158 "parser_cocci_menhir.ml" +# 40769 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40164 "parser_cocci_menhir.ml" +# 40775 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40192,7 +40803,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 40196 "parser_cocci_menhir.ml" +# 40807 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40202,15 +40813,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 563 "parser_cocci_menhir.mly" +# 568 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) ) -# 40208 "parser_cocci_menhir.ml" +# 40819 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40214 "parser_cocci_menhir.ml" +# 40825 "parser_cocci_menhir.ml" in let cv = @@ -40218,13 +40829,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40222 "parser_cocci_menhir.ml" +# 40833 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40228 "parser_cocci_menhir.ml" +# 40839 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40256,7 +40867,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 40260 "parser_cocci_menhir.ml" +# 40871 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40266,15 +40877,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 565 "parser_cocci_menhir.mly" +# 570 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) ) -# 40272 "parser_cocci_menhir.ml" +# 40883 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40278 "parser_cocci_menhir.ml" +# 40889 "parser_cocci_menhir.ml" in let cv = @@ -40282,13 +40893,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40286 "parser_cocci_menhir.ml" +# 40897 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40292 "parser_cocci_menhir.ml" +# 40903 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40320,7 +40931,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty00 : ( # 52 "parser_cocci_menhir.mly" (Data.clt) -# 40324 "parser_cocci_menhir.ml" +# 40935 "parser_cocci_menhir.ml" ) = Obj.magic ty00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40330,15 +40941,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let ty = ty0 in -# 567 "parser_cocci_menhir.mly" +# 572 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) ) -# 40336 "parser_cocci_menhir.ml" +# 40947 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40342 "parser_cocci_menhir.ml" +# 40953 "parser_cocci_menhir.ml" in let cv = @@ -40346,13 +40957,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40350 "parser_cocci_menhir.ml" +# 40961 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40356 "parser_cocci_menhir.ml" +# 40967 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40390,7 +41001,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 40394 "parser_cocci_menhir.ml" +# 41005 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40402,15 +41013,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 569 "parser_cocci_menhir.mly" +# 574 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) ) -# 40408 "parser_cocci_menhir.ml" +# 41019 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40414 "parser_cocci_menhir.ml" +# 41025 "parser_cocci_menhir.ml" in let cv = @@ -40418,13 +41029,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40422 "parser_cocci_menhir.ml" +# 41033 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40428 "parser_cocci_menhir.ml" +# 41039 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40471,18 +41082,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40475 "parser_cocci_menhir.ml" +# 41086 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40481 "parser_cocci_menhir.ml" +# 41092 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 40486 "parser_cocci_menhir.ml" +# 41097 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40501,22 +41112,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 40505 "parser_cocci_menhir.ml" +# 41116 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 40514 "parser_cocci_menhir.ml" +# 41125 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40520 "parser_cocci_menhir.ml" +# 41131 "parser_cocci_menhir.ml" in let cv = @@ -40524,13 +41135,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40528 "parser_cocci_menhir.ml" +# 41139 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40534 "parser_cocci_menhir.ml" +# 41145 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40582,19 +41193,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40586 "parser_cocci_menhir.ml" +# 41197 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40592 "parser_cocci_menhir.ml" +# 41203 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let x000 : 'tv_ident = Obj.magic x000 in let s00 : ( # 53 "parser_cocci_menhir.mly" (Data.clt) -# 40598 "parser_cocci_menhir.ml" +# 41209 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -40616,22 +41227,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40620 "parser_cocci_menhir.ml" +# 41231 "parser_cocci_menhir.ml" in -# 571 "parser_cocci_menhir.mly" +# 576 "parser_cocci_menhir.mly" ( (if i = None && !Data.in_iso then failwith "enums must be named in the iso file"); Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)), P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) ) -# 40629 "parser_cocci_menhir.ml" +# 41240 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40635 "parser_cocci_menhir.ml" +# 41246 "parser_cocci_menhir.ml" in let cv = @@ -40639,13 +41250,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40643 "parser_cocci_menhir.ml" +# 41254 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40649 "parser_cocci_menhir.ml" +# 41260 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40691,15 +41302,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let i = i0 in let s = s0 in -# 576 "parser_cocci_menhir.mly" +# 581 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) ) -# 40697 "parser_cocci_menhir.ml" +# 41308 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40703 "parser_cocci_menhir.ml" +# 41314 "parser_cocci_menhir.ml" in let cv = @@ -40707,13 +41318,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40711 "parser_cocci_menhir.ml" +# 41322 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40717 "parser_cocci_menhir.ml" +# 41328 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40760,13 +41371,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40764 "parser_cocci_menhir.ml" +# 41375 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40770 "parser_cocci_menhir.ml" +# 41381 "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 @@ -40786,23 +41397,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 39 "standard.mly" ( None ) -# 40790 "parser_cocci_menhir.ml" +# 41401 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 40800 "parser_cocci_menhir.ml" +# 41411 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40806 "parser_cocci_menhir.ml" +# 41417 "parser_cocci_menhir.ml" in let cv = @@ -40810,13 +41421,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40814 "parser_cocci_menhir.ml" +# 41425 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40820 "parser_cocci_menhir.ml" +# 41431 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40868,13 +41479,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40872 "parser_cocci_menhir.ml" +# 41483 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40878 "parser_cocci_menhir.ml" +# 41489 "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 @@ -40898,23 +41509,23 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40902 "parser_cocci_menhir.ml" +# 41513 "parser_cocci_menhir.ml" in -# 579 "parser_cocci_menhir.mly" +# 584 "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)) ) -# 40912 "parser_cocci_menhir.ml" +# 41523 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 40918 "parser_cocci_menhir.ml" +# 41529 "parser_cocci_menhir.ml" in let cv = @@ -40922,13 +41533,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 40926 "parser_cocci_menhir.ml" +# 41537 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 40932 "parser_cocci_menhir.ml" +# 41543 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -40975,18 +41586,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let r00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40979 "parser_cocci_menhir.ml" +# 41590 "parser_cocci_menhir.ml" ) = Obj.magic r00 in let d00 : 'tv_struct_decl_list = Obj.magic d00 in let l00 : ( # 105 "parser_cocci_menhir.mly" (Data.clt) -# 40985 "parser_cocci_menhir.ml" +# 41596 "parser_cocci_menhir.ml" ) = Obj.magic l00 in let s00 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 40990 "parser_cocci_menhir.ml" +# 41601 "parser_cocci_menhir.ml" ) = Obj.magic s00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41002,17 +41613,17 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let l = l0 in let s = s0 in -# 585 "parser_cocci_menhir.mly" +# 590 "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)) ) -# 41010 "parser_cocci_menhir.ml" +# 41621 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 41016 "parser_cocci_menhir.ml" +# 41627 "parser_cocci_menhir.ml" in let cv = @@ -41020,13 +41631,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41024 "parser_cocci_menhir.ml" +# 41635 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41030 "parser_cocci_menhir.ml" +# 41641 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41058,7 +41669,7 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let p00 : ( # 62 "parser_cocci_menhir.mly" (string * Data.clt) -# 41062 "parser_cocci_menhir.ml" +# 41673 "parser_cocci_menhir.ml" ) = Obj.magic p00 in let x0 : 'tv_const_vol = Obj.magic x0 in let _startpos = _startpos_x0_ in @@ -41068,15 +41679,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let ty = let p = p0 in -# 589 "parser_cocci_menhir.mly" +# 594 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) ) -# 41074 "parser_cocci_menhir.ml" +# 41685 "parser_cocci_menhir.ml" in -# 598 "parser_cocci_menhir.mly" +# 603 "parser_cocci_menhir.mly" ( ty ) -# 41080 "parser_cocci_menhir.ml" +# 41691 "parser_cocci_menhir.ml" in let cv = @@ -41084,13 +41695,13 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct # 41 "standard.mly" ( Some x ) -# 41088 "parser_cocci_menhir.ml" +# 41699 "parser_cocci_menhir.ml" in -# 615 "parser_cocci_menhir.mly" +# 620 "parser_cocci_menhir.mly" ( P.pointerify (P.make_cv cv ty) m ) -# 41094 "parser_cocci_menhir.ml" +# 41705 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41121,22 +41732,22 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 41125 "parser_cocci_menhir.ml" +# 41736 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41131 "parser_cocci_menhir.ml" +# 41742 "parser_cocci_menhir.ml" ) = Obj.magic lp in let _startpos = _startpos_lp_ in let _endpos = _endpos_rp_ in let _v : 'tv_typedef_ctype = -# 617 "parser_cocci_menhir.mly" +# 622 "parser_cocci_menhir.mly" ( let (mids,code) = t in Ast0.wrap (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) ) -# 41140 "parser_cocci_menhir.ml" +# 41751 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41158,9 +41769,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ident = -# 1727 "parser_cocci_menhir.mly" +# 1807 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) ) -# 41164 "parser_cocci_menhir.ml" +# 41775 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41181,15 +41792,15 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 68 "parser_cocci_menhir.mly" (Parse_aux.info) -# 41185 "parser_cocci_menhir.ml" +# 41796 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_typedef_ident = -# 1729 "parser_cocci_menhir.mly" +# 1809 "parser_cocci_menhir.mly" ( let (nm,pure,clt) = _1 in Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) ) -# 41193 "parser_cocci_menhir.ml" +# 41804 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41211,9 +41822,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_ = -# 1365 "parser_cocci_menhir.mly" +# 1419 "parser_cocci_menhir.mly" ( _1 ) -# 41217 "parser_cocci_menhir.ml" +# 41828 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41236,18 +41847,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41244 "parser_cocci_menhir.ml" +# 41855 "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_ = -# 1367 "parser_cocci_menhir.mly" +# 1421 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 41251 "parser_cocci_menhir.ml" +# 41862 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41270,18 +41881,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41278 "parser_cocci_menhir.ml" +# 41889 "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_ = -# 1369 "parser_cocci_menhir.mly" +# 1423 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 41285 "parser_cocci_menhir.ml" +# 41896 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41309,9 +41920,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_ = -# 1371 "parser_cocci_menhir.mly" +# 1425 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41315 "parser_cocci_menhir.ml" +# 41926 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41334,19 +41945,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41342 "parser_cocci_menhir.ml" +# 41953 "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_ = -# 1373 "parser_cocci_menhir.mly" +# 1427 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41350 "parser_cocci_menhir.ml" +# 41961 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41369,18 +41980,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41377 "parser_cocci_menhir.ml" +# 41988 "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_ = -# 1376 "parser_cocci_menhir.mly" +# 1430 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 41384 "parser_cocci_menhir.ml" +# 41995 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41416,27 +42027,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 41420 "parser_cocci_menhir.ml" +# 42031 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41426 "parser_cocci_menhir.ml" +# 42037 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41431 "parser_cocci_menhir.ml" +# 42042 "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_ = -# 1378 "parser_cocci_menhir.mly" +# 1432 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 41440 "parser_cocci_menhir.ml" +# 42051 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41458,9 +42069,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_expr_eexpr_invalid_ = -# 1365 "parser_cocci_menhir.mly" +# 1419 "parser_cocci_menhir.mly" ( _1 ) -# 41464 "parser_cocci_menhir.ml" +# 42075 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41483,18 +42094,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41491 "parser_cocci_menhir.ml" +# 42102 "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_ = -# 1367 "parser_cocci_menhir.mly" +# 1421 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 41498 "parser_cocci_menhir.ml" +# 42109 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41517,18 +42128,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41525 "parser_cocci_menhir.ml" +# 42136 "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_ = -# 1369 "parser_cocci_menhir.mly" +# 1423 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 41532 "parser_cocci_menhir.ml" +# 42143 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41556,9 +42167,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_eexpr_invalid_ = -# 1371 "parser_cocci_menhir.mly" +# 1425 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41562 "parser_cocci_menhir.ml" +# 42173 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41581,19 +42192,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41589 "parser_cocci_menhir.ml" +# 42200 "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_ = -# 1373 "parser_cocci_menhir.mly" +# 1427 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41597 "parser_cocci_menhir.ml" +# 42208 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41616,18 +42227,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41624 "parser_cocci_menhir.ml" +# 42235 "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_ = -# 1376 "parser_cocci_menhir.mly" +# 1430 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 41631 "parser_cocci_menhir.ml" +# 42242 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41663,27 +42274,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 41667 "parser_cocci_menhir.ml" +# 42278 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41673 "parser_cocci_menhir.ml" +# 42284 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41678 "parser_cocci_menhir.ml" +# 42289 "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_ = -# 1378 "parser_cocci_menhir.mly" +# 1432 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 41687 "parser_cocci_menhir.ml" +# 42298 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41705,9 +42316,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_ = -# 1365 "parser_cocci_menhir.mly" +# 1419 "parser_cocci_menhir.mly" ( _1 ) -# 41711 "parser_cocci_menhir.ml" +# 42322 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41730,18 +42341,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41738 "parser_cocci_menhir.ml" +# 42349 "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_ = -# 1367 "parser_cocci_menhir.mly" +# 1421 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 41745 "parser_cocci_menhir.ml" +# 42356 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41764,18 +42375,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41772 "parser_cocci_menhir.ml" +# 42383 "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_ = -# 1369 "parser_cocci_menhir.mly" +# 1423 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 41779 "parser_cocci_menhir.ml" +# 42390 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41803,9 +42414,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_ = -# 1371 "parser_cocci_menhir.mly" +# 1425 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41809 "parser_cocci_menhir.ml" +# 42420 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41828,19 +42439,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41836 "parser_cocci_menhir.ml" +# 42447 "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_ = -# 1373 "parser_cocci_menhir.mly" +# 1427 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 41844 "parser_cocci_menhir.ml" +# 42455 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41863,18 +42474,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41871 "parser_cocci_menhir.ml" +# 42482 "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_ = -# 1376 "parser_cocci_menhir.mly" +# 1430 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 41878 "parser_cocci_menhir.ml" +# 42489 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41910,27 +42521,27 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 41914 "parser_cocci_menhir.ml" +# 42525 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 41920 "parser_cocci_menhir.ml" +# 42531 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 41925 "parser_cocci_menhir.ml" +# 42536 "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_ = -# 1378 "parser_cocci_menhir.mly" +# 1432 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 41934 "parser_cocci_menhir.ml" +# 42545 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41952,9 +42563,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_expr_expr_invalid_ = -# 1365 "parser_cocci_menhir.mly" +# 1419 "parser_cocci_menhir.mly" ( _1 ) -# 41958 "parser_cocci_menhir.ml" +# 42569 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -41977,18 +42588,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 41985 "parser_cocci_menhir.ml" +# 42596 "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_ = -# 1367 "parser_cocci_menhir.mly" +# 1421 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) -# 41992 "parser_cocci_menhir.ml" +# 42603 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42011,18 +42622,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 89 "parser_cocci_menhir.mly" (Data.clt) -# 42019 "parser_cocci_menhir.ml" +# 42630 "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_ = -# 1369 "parser_cocci_menhir.mly" +# 1423 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) -# 42026 "parser_cocci_menhir.ml" +# 42637 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42050,9 +42661,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_unary_expr_expr_invalid_ = -# 1371 "parser_cocci_menhir.mly" +# 1425 "parser_cocci_menhir.mly" ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 42056 "parser_cocci_menhir.ml" +# 42667 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42075,19 +42686,19 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 42083 "parser_cocci_menhir.ml" +# 42694 "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_ = -# 1373 "parser_cocci_menhir.mly" +# 1427 "parser_cocci_menhir.mly" ( let mcode = P.clt2mcode Ast.Not _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) -# 42091 "parser_cocci_menhir.ml" +# 42702 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42110,18 +42721,18 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct MenhirLib.EngineTypes.next = _menhir_stack; }; } = _menhir_stack in - let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in + let _2 : 'tv_unary_expr_bis = Obj.magic _2 in let _1 : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 42118 "parser_cocci_menhir.ml" +# 42729 "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_ = -# 1376 "parser_cocci_menhir.mly" +# 1430 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) -# 42125 "parser_cocci_menhir.ml" +# 42736 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42157,27 +42768,274 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rp : ( # 81 "parser_cocci_menhir.mly" (Data.clt) -# 42161 "parser_cocci_menhir.ml" +# 42772 "parser_cocci_menhir.ml" ) = Obj.magic rp in let t : 'tv_ctype = Obj.magic t in let lp : ( # 80 "parser_cocci_menhir.mly" (Data.clt) -# 42167 "parser_cocci_menhir.ml" +# 42778 "parser_cocci_menhir.ml" ) = Obj.magic lp in let s : ( # 61 "parser_cocci_menhir.mly" (Data.clt) -# 42172 "parser_cocci_menhir.ml" +# 42783 "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_ = -# 1378 "parser_cocci_menhir.mly" +# 1432 "parser_cocci_menhir.mly" + ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, + P.clt2mcode "(" lp,t, + P.clt2mcode ")" rp)) ) +# 42792 "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 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__1_ in + let _v : 'tv_unary_expr_bis = +# 1438 "parser_cocci_menhir.mly" + ( _1 ) +# 42816 "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 = _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 _2 : 'tv_unary_expr_bis = Obj.magic _2 in + let _1 : ( +# 89 "parser_cocci_menhir.mly" + (Data.clt) +# 42843 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_unary_expr_bis = +# 1440 "parser_cocci_menhir.mly" + ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) ) +# 42850 "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 = _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 _2 : 'tv_unary_expr_bis = Obj.magic _2 in + let _1 : ( +# 89 "parser_cocci_menhir.mly" + (Data.clt) +# 42877 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_unary_expr_bis = +# 1442 "parser_cocci_menhir.mly" + ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) ) +# 42884 "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 = _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 _2 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _2 in + let _1 : 'tv_unary_op = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_unary_expr_bis = +# 1444 "parser_cocci_menhir.mly" + ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) ) +# 42914 "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 = _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 _2 : 'tv_unary_expr_bis = Obj.magic _2 in + let _1 : ( +# 80 "parser_cocci_menhir.mly" + (Data.clt) +# 42941 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_unary_expr_bis = +# 1446 "parser_cocci_menhir.mly" + ( let mcode = P.clt2mcode Ast.Not _1 in + Ast0.wrap(Ast0.Unary(_2, mcode)) ) +# 42949 "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 = _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 _2 : 'tv_unary_expr_bis = Obj.magic _2 in + let _1 : ( +# 61 "parser_cocci_menhir.mly" + (Data.clt) +# 42976 "parser_cocci_menhir.ml" + ) = Obj.magic _1 in + let _startpos = _startpos__1_ in + let _endpos = _endpos__2_ in + let _v : 'tv_unary_expr_bis = +# 1449 "parser_cocci_menhir.mly" + ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) ) +# 42983 "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 = rp; + MenhirLib.EngineTypes.startp = _startpos_rp_; + MenhirLib.EngineTypes.endp = _endpos_rp_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.semv = t; + MenhirLib.EngineTypes.startp = _startpos_t_; + MenhirLib.EngineTypes.endp = _endpos_t_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.semv = lp; + MenhirLib.EngineTypes.startp = _startpos_lp_; + MenhirLib.EngineTypes.endp = _endpos_lp_; + MenhirLib.EngineTypes.next = { + MenhirLib.EngineTypes.state = _menhir_s; + MenhirLib.EngineTypes.semv = s; + MenhirLib.EngineTypes.startp = _startpos_s_; + MenhirLib.EngineTypes.endp = _endpos_s_; + MenhirLib.EngineTypes.next = _menhir_stack; + }; + }; + }; + } = _menhir_stack in + let rp : ( +# 81 "parser_cocci_menhir.mly" + (Data.clt) +# 43019 "parser_cocci_menhir.ml" + ) = Obj.magic rp in + let t : 'tv_ctype = Obj.magic t in + let lp : ( +# 80 "parser_cocci_menhir.mly" + (Data.clt) +# 43025 "parser_cocci_menhir.ml" + ) = Obj.magic lp in + let s : ( +# 61 "parser_cocci_menhir.mly" + (Data.clt) +# 43030 "parser_cocci_menhir.ml" + ) = Obj.magic s in + let _startpos = _startpos_s_ in + let _endpos = _endpos_rp_ in + let _v : 'tv_unary_expr_bis = +# 1451 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, P.clt2mcode "(" lp,t, P.clt2mcode ")" rp)) ) -# 42181 "parser_cocci_menhir.ml" +# 43039 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42198,14 +43056,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 97 "parser_cocci_menhir.mly" (Data.clt) -# 42202 "parser_cocci_menhir.ml" +# 43060 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1382 "parser_cocci_menhir.mly" +# 1455 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.GetRef _1 ) -# 42209 "parser_cocci_menhir.ml" +# 43067 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42226,14 +43084,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 42230 "parser_cocci_menhir.ml" +# 43088 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1383 "parser_cocci_menhir.mly" +# 1456 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.DeRef _1 ) -# 42237 "parser_cocci_menhir.ml" +# 43095 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42254,14 +43112,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 42258 "parser_cocci_menhir.ml" +# 43116 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1384 "parser_cocci_menhir.mly" +# 1457 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.UnPlus _1 ) -# 42265 "parser_cocci_menhir.ml" +# 43123 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42282,14 +43140,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 102 "parser_cocci_menhir.mly" (Data.clt) -# 42286 "parser_cocci_menhir.ml" +# 43144 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1385 "parser_cocci_menhir.mly" +# 1458 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.UnMinus _1 ) -# 42293 "parser_cocci_menhir.ml" +# 43151 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42310,14 +43168,14 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _1 : ( # 103 "parser_cocci_menhir.mly" (Data.clt) -# 42314 "parser_cocci_menhir.ml" +# 43172 "parser_cocci_menhir.ml" ) = Obj.magic _1 in let _startpos = _startpos__1_ in let _endpos = _endpos__1_ in let _v : 'tv_unary_op = -# 1386 "parser_cocci_menhir.mly" +# 1459 "parser_cocci_menhir.mly" ( P.clt2mcode Ast.Tilde _1 ) -# 42321 "parser_cocci_menhir.ml" +# 43179 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42345,9 +43203,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_when_start = -# 1979 "parser_cocci_menhir.mly" +# 2059 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) ) -# 42351 "parser_cocci_menhir.ml" +# 43209 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42375,9 +43233,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos__1_ in let _endpos = _endpos__2_ in let _v : 'tv_when_start = -# 1981 "parser_cocci_menhir.mly" +# 2061 "parser_cocci_menhir.mly" ( Ast0.wrap(Ast0.DOTS(_1@_2)) ) -# 42381 "parser_cocci_menhir.ml" +# 43239 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42399,9 +43257,9 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let _startpos = _startpos_w_ in let _endpos = _endpos_w_ in let _v : 'tv_whenppdecs = -# 984 "parser_cocci_menhir.mly" +# 1003 "parser_cocci_menhir.mly" ( w ) -# 42405 "parser_cocci_menhir.ml" +# 43263 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42435,9 +43293,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_ = -# 2026 "parser_cocci_menhir.mly" +# 2106 "parser_cocci_menhir.mly" ( [Ast0.WhenNot w] ) -# 42441 "parser_cocci_menhir.ml" +# 43299 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42471,9 +43329,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_ = -# 2027 "parser_cocci_menhir.mly" +# 2107 "parser_cocci_menhir.mly" ( [Ast0.WhenAlways w] ) -# 42477 "parser_cocci_menhir.ml" +# 43335 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42503,9 +43361,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_ = -# 2029 "parser_cocci_menhir.mly" +# 2109 "parser_cocci_menhir.mly" ( List.map (function x -> Ast0.WhenModifier(x)) _2 ) -# 42509 "parser_cocci_menhir.ml" +# 43367 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42539,9 +43397,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_ = -# 2030 "parser_cocci_menhir.mly" +# 2110 "parser_cocci_menhir.mly" ( [Ast0.WhenNotTrue e] ) -# 42545 "parser_cocci_menhir.ml" +# 43403 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42575,9 +43433,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_ = -# 2031 "parser_cocci_menhir.mly" +# 2111 "parser_cocci_menhir.mly" ( [Ast0.WhenNotFalse e] ) -# 42581 "parser_cocci_menhir.ml" +# 43439 "parser_cocci_menhir.ml" in _menhir_env.MenhirLib.EngineTypes.stack <- { MenhirLib.EngineTypes.state = _menhir_s; @@ -42598,90 +43456,90 @@ module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct let rec script_meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1953 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1993 lexer lexbuf) : ( # 165 "parser_cocci_menhir.mly" ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option) -# 42605 "parser_cocci_menhir.ml" +# 43463 "parser_cocci_menhir.ml" )) and rule_name = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1878 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1918 lexer lexbuf) : ( # 159 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 42613 "parser_cocci_menhir.ml" +# 43471 "parser_cocci_menhir.ml" )) and reinit = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1876 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1916 lexer lexbuf) : ( # 137 "parser_cocci_menhir.mly" (unit) -# 42621 "parser_cocci_menhir.ml" +# 43479 "parser_cocci_menhir.ml" )) and plus_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1840 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1880 lexer lexbuf) : ( # 146 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 42629 "parser_cocci_menhir.ml" +# 43487 "parser_cocci_menhir.ml" )) and plus_exp_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1832 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1872 lexer lexbuf) : ( # 149 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 42637 "parser_cocci_menhir.ml" +# 43495 "parser_cocci_menhir.ml" )) and never_used = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1826 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1866 lexer lexbuf) : ( # 174 "parser_cocci_menhir.mly" (unit) -# 42645 "parser_cocci_menhir.ml" +# 43503 "parser_cocci_menhir.ml" )) and minus_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1742 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1782 lexer lexbuf) : ( # 140 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 42653 "parser_cocci_menhir.ml" +# 43511 "parser_cocci_menhir.ml" )) and minus_exp_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1730 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1770 lexer lexbuf) : ( # 143 "parser_cocci_menhir.mly" (Ast0_cocci.rule) -# 42661 "parser_cocci_menhir.ml" +# 43519 "parser_cocci_menhir.ml" )) and meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1727 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1767 lexer lexbuf) : ( # 163 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 42669 "parser_cocci_menhir.ml" +# 43527 "parser_cocci_menhir.ml" )) and iso_rule_name = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1723 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1763 lexer lexbuf) : ( # 155 "parser_cocci_menhir.mly" (Ast_cocci.rulename) -# 42677 "parser_cocci_menhir.ml" +# 43535 "parser_cocci_menhir.ml" )) and iso_meta_main = fun lexer lexbuf -> - (Obj.magic (MenhirInterpreter.entry 1456 lexer lexbuf) : ( + (Obj.magic (MenhirInterpreter.entry 1496 lexer lexbuf) : ( # 171 "parser_cocci_menhir.mly" ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list) -# 42685 "parser_cocci_menhir.ml" +# 43543 "parser_cocci_menhir.ml" )) and iso_main = @@ -42689,7 +43547,7 @@ and iso_main = (Obj.magic (MenhirInterpreter.entry 18 lexer lexbuf) : ( # 168 "parser_cocci_menhir.mly" (Ast0_cocci.anything list list) -# 42693 "parser_cocci_menhir.ml" +# 43551 "parser_cocci_menhir.ml" )) and include_main = @@ -42697,7 +43555,7 @@ and include_main = (Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : ( # 152 "parser_cocci_menhir.mly" (Data.incl_iso list) -# 42701 "parser_cocci_menhir.ml" +# 43559 "parser_cocci_menhir.ml" )) diff --git a/parsing_cocci/parser_cocci_menhir.mli b/parsing_cocci/parser_cocci_menhir.mli index c497adc..7b51e55 100644 --- a/parsing_cocci/parser_cocci_menhir.mli +++ b/parsing_cocci/parser_cocci_menhir.mli @@ -37,6 +37,7 @@ type token = | TVirtual | TUsing | TUnderscore + | TUndef of (Data.clt * token) | TTypedef | TTypeId of (string * Data.clt) | TType diff --git a/parsing_cocci/parser_cocci_menhir.mly b/parsing_cocci/parser_cocci_menhir.mly index 01a67f6..f0b6832 100644 --- a/parsing_cocci/parser_cocci_menhir.mly +++ b/parsing_cocci/parser_cocci_menhir.mly @@ -82,7 +82,7 @@ module P = Parse_aux %token TPathIsoFile %token TIncludeL TIncludeNL -%token TDefine +%token TDefine TUndef %token TDefineParam %token TMinusFile TPlusFile @@ -264,6 +264,8 @@ incl: | TUsing TPathIsoFile { Data.Iso(Common.Right $2) } | TVirtual comma_list(pure_ident) { let names = List.map P.id2name $2 in + Iteration.parsed_virtual_rules := + Common.union_set names !Iteration.parsed_virtual_rules; (* ensure that the names of virtual and real rules don't overlap *) List.iter (function name -> Hashtbl.add Data.all_metadecls name []) @@ -408,6 +410,9 @@ list_len: let vl = List.assoc name virtual_env in !Data.add_virt_id_meta_found name vl; [] with Not_found -> + Iteration.parsed_virtual_identifiers := + Common.union_set [name] + !Iteration.parsed_virtual_identifiers; let name = ("virtual",name) in let tok = check_meta(Ast.MetaIdDecl(arity,name)) in !Data.add_virt_id_meta_not_found name pure; tok in @@ -758,6 +763,20 @@ includes: P.clt2mcode (Ast.NonLocal (Parse_aux.str2inc (P.id2name $1))) (P.drop_bef clt))) } +| TUndef TLineEnd + { let (clt,ident) = $1 in + Ast0.wrap + (Ast0.Undef + (P.clt2mcode "#undef" clt, + (match ident with + TMetaId((nm,constraints,pure,clt)) -> + Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) + | TIdent(nm_pure) -> + Ast0.wrap(Ast0.Id(P.id2mcode nm_pure)) + | _ -> + raise + (Semantic_cocci.Semantic + "unexpected name for a #define")))) } | d=defineop TLineEnd { d (Ast0.wrap(Ast0.DOTS([]))) } | d=defineop t=ctype TLineEnd @@ -1259,11 +1278,13 @@ decl_statement_expr: /*****************************************************************************/ -/* The following cannot contain <... ...> at the top level. This can only -be allowed as an expression when the expression is delimited on both sides -by expression-specific markers. In that case, the rule eexpr is used, which +/* expr cannot contain <... ...> at the top level. This can only +be allowed as an expression when the expression is delimited on the left +by an expression-specific marker. In that case, the rule eexpr is used, which allows <... ...> anywhere. Hopefully, this will not be too much of a problem -in practice. */ +in practice. +dot_expressions is the most permissive. all three kinds of expressions use +this once an expression_specific token has been seen */ expr: basic_expr(expr,invalid) { $1 } /* allows ... and nests */ eexpr: basic_expr(eexpr,dot_expressions) { $1 } @@ -1320,41 +1341,74 @@ assign_expr_bis: cond_expr(r,pe): arith_expr(r,pe) { $1 } - | l=arith_expr(r,pe) w=TWhy t=option(eexpr) dd=TDotDot r=cond_expr(r,pe) + | l=arith_expr(r,pe) w=TWhy t=option(eexpr) dd=TDotDot r=eexpr/*see parser_c*/ { Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t, P.clt2mcode ":" dd, r)) } arith_expr(r,pe): cast_expr(r,pe) { $1 } - | arith_expr(r,pe) TMul arith_expr(r,pe) + | arith_expr(r,pe) TMul arith_expr_bis { P.arith_op Ast.Mul $1 $2 $3 } - | arith_expr(r,pe) TDmOp arith_expr(r,pe) + | arith_expr(r,pe) TDmOp arith_expr_bis { let (op,clt) = $2 in P.arith_op op $1 clt $3 } - | arith_expr(r,pe) TPlus arith_expr(r,pe) + | arith_expr(r,pe) TPlus arith_expr_bis { P.arith_op Ast.Plus $1 $2 $3 } - | arith_expr(r,pe) TMinus arith_expr(r,pe) + | arith_expr(r,pe) TMinus arith_expr_bis { P.arith_op Ast.Minus $1 $2 $3 } - | arith_expr(r,pe) TShLOp arith_expr(r,pe) + | arith_expr(r,pe) TShLOp arith_expr_bis { let (op,clt) = $2 in P.arith_op op $1 clt $3 } - | arith_expr(r,pe) TShROp arith_expr(r,pe) + | arith_expr(r,pe) TShROp arith_expr_bis { let (op,clt) = $2 in P.arith_op op $1 clt $3 } - | arith_expr(r,pe) TLogOp arith_expr(r,pe) + | arith_expr(r,pe) TLogOp arith_expr_bis { let (op,clt) = $2 in P.logic_op op $1 clt $3 } - | arith_expr(r,pe) TEqEq arith_expr(r,pe) + | arith_expr(r,pe) TEqEq arith_expr_bis { P.logic_op Ast.Eq $1 $2 $3 } - | arith_expr(r,pe) TNotEq arith_expr(r,pe) + | arith_expr(r,pe) TNotEq arith_expr_bis { P.logic_op Ast.NotEq $1 $2 $3 } - | arith_expr(r,pe) TAnd arith_expr(r,pe) + | arith_expr(r,pe) TAnd arith_expr_bis { P.arith_op Ast.And $1 $2 $3 } - | arith_expr(r,pe) TOr arith_expr(r,pe) + | arith_expr(r,pe) TOr arith_expr_bis { P.arith_op Ast.Or $1 $2 $3 } - | arith_expr(r,pe) TXor arith_expr(r,pe) + | arith_expr(r,pe) TXor arith_expr_bis { P.arith_op Ast.Xor $1 $2 $3 } - | arith_expr(r,pe) TAndLog arith_expr(r,pe) + | arith_expr(r,pe) TAndLog arith_expr_bis { P.logic_op Ast.AndLog $1 $2 $3 } - | arith_expr(r,pe) TOrLog arith_expr(r,pe) + | arith_expr(r,pe) TOrLog arith_expr_bis { P.logic_op Ast.OrLog $1 $2 $3 } +// allows dots now that an expression-specific token has been seen +// need an extra rule because of recursion restrictions +arith_expr_bis: + cast_expr(eexpr,dot_expressions) { $1 } + | arith_expr_bis TMul arith_expr_bis + { P.arith_op Ast.Mul $1 $2 $3 } + | arith_expr_bis TDmOp arith_expr_bis + { let (op,clt) = $2 in P.arith_op op $1 clt $3 } + | arith_expr_bis TPlus arith_expr_bis + { P.arith_op Ast.Plus $1 $2 $3 } + | arith_expr_bis TMinus arith_expr_bis + { P.arith_op Ast.Minus $1 $2 $3 } + | arith_expr_bis TShLOp arith_expr_bis + { let (op,clt) = $2 in P.arith_op op $1 clt $3 } + | arith_expr_bis TShROp arith_expr_bis + { let (op,clt) = $2 in P.arith_op op $1 clt $3 } + | arith_expr_bis TLogOp arith_expr_bis + { let (op,clt) = $2 in P.logic_op op $1 clt $3 } + | arith_expr_bis TEqEq arith_expr_bis + { P.logic_op Ast.Eq $1 $2 $3 } + | arith_expr_bis TNotEq arith_expr_bis + { P.logic_op Ast.NotEq $1 $2 $3 } + | arith_expr_bis TAnd arith_expr_bis + { P.arith_op Ast.And $1 $2 $3 } + | arith_expr_bis TOr arith_expr_bis + { P.arith_op Ast.Or $1 $2 $3 } + | arith_expr_bis TXor arith_expr_bis + { P.arith_op Ast.Xor $1 $2 $3 } + | arith_expr_bis TAndLog arith_expr_bis + { P.logic_op Ast.AndLog $1 $2 $3 } +// no OrLog because it is left associative and this is for +// a right argument, not sure why not the same problem for AndLog + cast_expr(r,pe): unary_expr(r,pe) { $1 } | lp=TOPar t=ctype rp=TCPar e=cast_expr(r,pe) @@ -1363,16 +1417,35 @@ cast_expr(r,pe): unary_expr(r,pe): postfix_expr(r,pe) { $1 } - | TInc unary_expr(r,pe) + | TInc unary_expr_bis { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Inc $1)) } - | TDec unary_expr(r,pe) + | TDec unary_expr_bis { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Dec $1)) } | unary_op cast_expr(r,pe) { let mcode = $1 in Ast0.wrap(Ast0.Unary($2, mcode)) } - | TBang unary_expr(r,pe) + | TBang unary_expr_bis + { let mcode = P.clt2mcode Ast.Not $1 in + Ast0.wrap(Ast0.Unary($2, mcode)) } + | TSizeof unary_expr_bis + { Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" $1, $2)) } + | s=TSizeof lp=TOPar t=ctype rp=TCPar + { Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, + P.clt2mcode "(" lp,t, + P.clt2mcode ")" rp)) } + +// version that allows dots +unary_expr_bis: + postfix_expr(eexpr,dot_expressions) { $1 } + | TInc unary_expr_bis + { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Inc $1)) } + | TDec unary_expr_bis + { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Dec $1)) } + | unary_op cast_expr(eexpr,dot_expressions) + { let mcode = $1 in Ast0.wrap(Ast0.Unary($2, mcode)) } + | TBang unary_expr_bis { let mcode = P.clt2mcode Ast.Not $1 in Ast0.wrap(Ast0.Unary($2, mcode)) } - | TSizeof unary_expr(r,pe) + | TSizeof unary_expr_bis { Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" $1, $2)) } | s=TSizeof lp=TOPar t=ctype rp=TCPar { Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s, @@ -1532,7 +1605,14 @@ pure_ident_or_meta_ident_with_idconstraint_virt(constraint_type): None -> (i, Ast.IdNoConstraint) | Some constraint_ -> (i,constraint_)) } -| TVirtual TDot pure_ident { Common.Right (P.id2name $3) } +| TVirtual TDot pure_ident + { + let nm = P.id2name $3 in + Iteration.parsed_virtual_identifiers := + Common.union_set [nm] + !Iteration.parsed_virtual_identifiers; + Common.Right nm + } pure_ident_or_meta_ident_with_idconstraint(constraint_type): i=pure_ident_or_meta_ident c=option(constraint_type) @@ -2106,6 +2186,9 @@ script_name_decl: (($2, nm), mv) } | TShLOp TVirtual TDot cocci=pure_ident { let nm = P.id2name cocci in + Iteration.parsed_virtual_identifiers := + Common.union_set [nm] + !Iteration.parsed_virtual_identifiers; let name = ("virtual", nm) in let mv = Ast.MetaIdDecl(Ast.NONE,name) in (name,mv) } diff --git a/parsing_cocci/pretty_print_cocci.ml b/parsing_cocci/pretty_print_cocci.ml index 237d56f..3775622 100644 --- a/parsing_cocci/pretty_print_cocci.ml +++ b/parsing_cocci/pretty_print_cocci.ml @@ -613,6 +613,8 @@ let rec rule_elem arity re = | Ast.TopInit(init) -> initialiser init | Ast.Include(inc,s) -> mcode print_string inc; print_string " "; mcode inc_file s + | Ast.Undef(def,id) -> + mcode print_string def; print_string " "; ident id | Ast.DefineHeader(def,id,params) -> mcode print_string def; print_string " "; ident id; print_define_parameters params diff --git a/parsing_cocci/single_statement.ml b/parsing_cocci/single_statement.ml index c00db6b..9a5bc11 100644 --- a/parsing_cocci/single_statement.ml +++ b/parsing_cocci/single_statement.ml @@ -120,6 +120,16 @@ let rec left_ident i = | Ast0.OptIdent(id) -> left_ident id | Ast0.UniqueIdent(id) -> left_ident id +let rec right_ident i = + modif_after i or + match Ast0.unwrap i with + Ast0.Id(name) -> modif_after_mcode name + | Ast0.MetaId(name,_,_) -> modif_after_mcode name + | Ast0.MetaFunc(name,_,_) -> modif_after_mcode name + | Ast0.MetaLocalFunc(name,_,_) -> modif_after_mcode name + | Ast0.OptIdent(id) -> right_ident id + | Ast0.UniqueIdent(id) -> right_ident id + (* --------------------------------------------------------------------- *) (* Expression *) @@ -253,6 +263,7 @@ and left_statement s = | Ast0.TopInit(init) -> false (* can only be replaced by an init *) | Ast0.Dots(d,whn) | Ast0.Circles(d,whn) | Ast0.Stars(d,whn) -> false | Ast0.Include(inc,s) -> modif_before_mcode inc + | Ast0.Undef(def,id) -> modif_before_mcode def | Ast0.Define(def,id,params,body) -> modif_before_mcode def | Ast0.OptStm(re) -> left_statement re | Ast0.UniqueStm(re) -> left_statement re @@ -293,6 +304,7 @@ and right_statement s = | Ast0.TopInit(init) -> false (* can only be replaced by an init *) | Ast0.Dots(d,whn) | Ast0.Circles(d,whn) | Ast0.Stars(d,whn) -> false | Ast0.Include(inc,s) -> modif_after_mcode s + | Ast0.Undef(def,id) -> right_ident id | Ast0.Define(def,id,params,body) -> right_dots right_statement body | Ast0.OptStm(re) -> right_statement re | Ast0.UniqueStm(re) -> right_statement re @@ -581,6 +593,7 @@ let rec statement dots_before dots_after s = | Ast0.TopInit(init) -> s | Ast0.Dots(d,whn) | Ast0.Circles(d,whn) | Ast0.Stars(d,whn) -> s | Ast0.Include(inc,string) -> s (* doesn't affect the need for braces *) + | Ast0.Undef(def,id) -> s (* same as include *) | Ast0.Define(def,id,params,body) -> s (* same as include *) | Ast0.OptStm(re) -> Ast0.rewrap s diff --git a/parsing_cocci/unify_ast.ml b/parsing_cocci/unify_ast.ml index 91ae480..c13c7a7 100644 --- a/parsing_cocci/unify_ast.ml +++ b/parsing_cocci/unify_ast.ml @@ -453,6 +453,7 @@ and unify_rule_elem re1 re2 = Ast.IteratorHeader(nm2,lp2,args2,rp2)) -> conjunct_bindings (unify_ident nm1 nm2) (unify_dots unify_expression edots args1 args2) + | (Ast.Undef(_,n1),Ast.Undef(_,n2)) -> unify_ident n1 n2 | (Ast.DefineHeader(_,n1,p1),Ast.DefineHeader(_,n2,p2)) -> conjunct_bindings (unify_ident n1 n2) (unify_define_parameters p1 p2) diff --git a/parsing_cocci/unparse_ast0.ml b/parsing_cocci/unparse_ast0.ml index 7e09e53..2f6417f 100644 --- a/parsing_cocci/unparse_ast0.ml +++ b/parsing_cocci/unparse_ast0.ml @@ -545,6 +545,8 @@ and statement arity s = whn | Ast0.Include(inc,s) -> mcode print_string inc; print_string " "; mcode U.inc_file s + | Ast0.Undef(def,id) -> + mcode print_string def; print_string " "; ident id | Ast0.Define(def,id,params,body) -> mcode print_string def; print_string " "; ident id; print_define_parameters params; diff --git a/parsing_cocci/visitor_ast.ml b/parsing_cocci/visitor_ast.ml index 1264919..00310f1 100644 --- a/parsing_cocci/visitor_ast.ml +++ b/parsing_cocci/visitor_ast.ml @@ -364,6 +364,8 @@ let combiner bind option_default | Ast.Ty(ty) -> fullType ty | Ast.TopInit(init) -> initialiser init | Ast.Include(inc,name) -> bind (string_mcode inc) (inc_file_mcode name) + | Ast.Undef(def,id) -> + multibind [string_mcode def; ident id] | Ast.DefineHeader(def,id,params) -> multibind [string_mcode def; ident id; define_parameters params] | Ast.Default(def,colon) -> bind (string_mcode def) (string_mcode colon) @@ -862,6 +864,8 @@ let rebuilder | Ast.TopInit(init) -> Ast.TopInit(initialiser init) | Ast.Include(inc,name) -> Ast.Include(string_mcode inc,inc_file_mcode name) + | Ast.Undef(def,id) -> + Ast.Undef(string_mcode def,ident id) | Ast.DefineHeader(def,id,params) -> Ast.DefineHeader(string_mcode def,ident id, define_parameters params) diff --git a/parsing_cocci/visitor_ast0.ml b/parsing_cocci/visitor_ast0.ml index 1949afd..1b9ccbd 100644 --- a/parsing_cocci/visitor_ast0.ml +++ b/parsing_cocci/visitor_ast0.ml @@ -735,6 +735,10 @@ let visitor mode bind option_default let (inc_n,inc) = string_mcode inc in let (name_n,name) = inc_mcode name in (bind inc_n name_n, Ast0.Include(inc,name)) + | Ast0.Undef(def,id) -> + let (def_n,def) = string_mcode def in + let (id_n,id) = ident id in + (multibind [def_n;id_n],Ast0.Undef(def,id)) | Ast0.Define(def,id,params,body) -> let (def_n,def) = string_mcode def in let (id_n,id) = ident id in diff --git a/popl09/.depend b/popl09/.depend index 9dc7024..c88af14 100644 --- a/popl09/.depend +++ b/popl09/.depend @@ -1,35 +1,35 @@ -asttopopl.cmi: ast_popl.cmo ../parsing_cocci/ast_cocci.cmi -insert_quantifiers.cmi: ast_popl.cmo +asttopopl.cmi: ast_popl.cmo ../parsing_cocci/ast_cocci.cmi +insert_quantifiers.cmi: ast_popl.cmo popl.cmi: ../ctl/wrapper_ctl.cmi ../engine/lib_engine.cmo ../ctl/ast_ctl.cmo \ - ../parsing_cocci/ast_cocci.cmi + ../parsing_cocci/ast_cocci.cmi popltoctl.cmi: ../ctl/wrapper_ctl.cmi ../engine/lib_engine.cmo ast_popl.cmo \ - ../ctl/ast_ctl.cmo ../parsing_cocci/ast_cocci.cmi -pretty_print_popl.cmi: ast_popl.cmo -ast_popl.cmo: ../parsing_cocci/ast_cocci.cmi -ast_popl.cmx: ../parsing_cocci/ast_cocci.cmx + ../ctl/ast_ctl.cmo ../parsing_cocci/ast_cocci.cmi +pretty_print_popl.cmi: ast_popl.cmo +ast_popl.cmo: ../parsing_cocci/ast_cocci.cmi +ast_popl.cmx: ../parsing_cocci/ast_cocci.cmx asttopopl.cmo: ../parsing_cocci/pretty_print_cocci.cmi ast_popl.cmo \ - ../parsing_cocci/ast_cocci.cmi asttopopl.cmi + ../parsing_cocci/ast_cocci.cmi asttopopl.cmi asttopopl.cmx: ../parsing_cocci/pretty_print_cocci.cmx ast_popl.cmx \ - ../parsing_cocci/ast_cocci.cmx asttopopl.cmi -flag_popl.cmo: -flag_popl.cmx: + ../parsing_cocci/ast_cocci.cmx asttopopl.cmi +flag_popl.cmo: +flag_popl.cmx: insert_quantifiers.cmo: ../commons/common.cmi ast_popl.cmo \ - ../parsing_cocci/ast_cocci.cmi insert_quantifiers.cmi + ../parsing_cocci/ast_cocci.cmi insert_quantifiers.cmi insert_quantifiers.cmx: ../commons/common.cmx ast_popl.cmx \ - ../parsing_cocci/ast_cocci.cmx insert_quantifiers.cmi + ../parsing_cocci/ast_cocci.cmx insert_quantifiers.cmi popl.cmo: ../ctl/wrapper_ctl.cmi popltoctl.cmi ../engine/lib_engine.cmo \ insert_quantifiers.cmi asttopopl.cmi ../ctl/ast_ctl.cmo \ - ../parsing_cocci/ast_cocci.cmi popl.cmi + ../parsing_cocci/ast_cocci.cmi popl.cmi popl.cmx: ../ctl/wrapper_ctl.cmx popltoctl.cmx ../engine/lib_engine.cmx \ insert_quantifiers.cmx asttopopl.cmx ../ctl/ast_ctl.cmx \ - ../parsing_cocci/ast_cocci.cmx popl.cmi + ../parsing_cocci/ast_cocci.cmx popl.cmi popltoctl.cmo: ../ctl/wrapper_ctl.cmi ../parsing_cocci/visitor_ast.cmi \ ../engine/lib_engine.cmo flag_popl.cmo ast_popl.cmo ../ctl/ast_ctl.cmo \ - ../parsing_cocci/ast_cocci.cmi popltoctl.cmi + ../parsing_cocci/ast_cocci.cmi popltoctl.cmi popltoctl.cmx: ../ctl/wrapper_ctl.cmx ../parsing_cocci/visitor_ast.cmx \ ../engine/lib_engine.cmx flag_popl.cmx ast_popl.cmx ../ctl/ast_ctl.cmx \ - ../parsing_cocci/ast_cocci.cmx popltoctl.cmi + ../parsing_cocci/ast_cocci.cmx popltoctl.cmi pretty_print_popl.cmo: ../parsing_cocci/pretty_print_cocci.cmi ast_popl.cmo \ - ../parsing_cocci/ast_cocci.cmi pretty_print_popl.cmi + ../parsing_cocci/ast_cocci.cmi pretty_print_popl.cmi pretty_print_popl.cmx: ../parsing_cocci/pretty_print_cocci.cmx ast_popl.cmx \ - ../parsing_cocci/ast_cocci.cmx pretty_print_popl.cmi + ../parsing_cocci/ast_cocci.cmx pretty_print_popl.cmi diff --git a/python/.depend b/python/.depend index db7c388..facc6d2 100644 --- a/python/.depend +++ b/python/.depend @@ -1,12 +1,12 @@ -pycocci.cmi: ../parsing_cocci/ast_cocci.cmi ../parsing_c/ast_c.cmo -pycocci_aux.cmi: ../parsing_c/ast_c.cmo -no_pycocci.cmo: pycocci_aux.cmi ../commons/common.cmi ../parsing_c/ast_c.cmo -no_pycocci.cmx: pycocci_aux.cmx ../commons/common.cmx ../parsing_c/ast_c.cmx +pycocci.cmi: ../parsing_cocci/ast_cocci.cmi ../parsing_c/ast_c.cmo +pycocci_aux.cmi: ../parsing_c/ast_c.cmo +no_pycocci.cmo: pycocci_aux.cmi ../commons/common.cmi ../parsing_c/ast_c.cmo +no_pycocci.cmx: pycocci_aux.cmx ../commons/common.cmx ../parsing_c/ast_c.cmx pycocci_aux.cmo: ../parsing_c/pretty_print_c.cmi ../commons/common.cmi \ - ../parsing_cocci/ast_cocci.cmi ../parsing_c/ast_c.cmo pycocci_aux.cmi + ../parsing_cocci/ast_cocci.cmi ../parsing_c/ast_c.cmo pycocci_aux.cmi pycocci_aux.cmx: ../parsing_c/pretty_print_c.cmx ../commons/common.cmx \ - ../parsing_cocci/ast_cocci.cmx ../parsing_c/ast_c.cmx pycocci_aux.cmi + ../parsing_cocci/ast_cocci.cmx ../parsing_c/ast_c.cmx pycocci_aux.cmi yes_pycocci.cmo: pycocci_aux.cmi ../globals/flag.cmo ../commons/common.cmi \ - ../parsing_c/ast_c.cmo + ../parsing_c/ast_c.cmo yes_pycocci.cmx: pycocci_aux.cmx ../globals/flag.cmx ../commons/common.cmx \ - ../parsing_c/ast_c.cmx + ../parsing_c/ast_c.cmx diff --git a/standard.h b/standard.h index 309bfeb..146b8f2 100644 --- a/standard.h +++ b/standard.h @@ -413,8 +413,8 @@ static const struct machine_desc __mach_desc_##_type \ // include/linux/types.h //#define BITS_TO_LONGS(bits) \ // (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) -#define DECLARE_BITMAP(name,bits) \ - /*unsigned*/ long name[BITS_TO_LONGS(bits)] +#define DECLARE_BITMAP(name,bits) +// /*unsigned*/ long name[BITS_TO_LONGS(bits)] // include/asm-i386/percpu.h diff --git a/testing.ml b/testing.ml index 4929934..0192b10 100644 --- a/testing.ml +++ b/testing.ml @@ -463,15 +463,15 @@ let test_parse_cocci file = Format.print_newline(); (* compile ocaml script code *) (match Prepare_ocamlcocci.prepare file xs with - None -> () - | Some ocaml_script_file -> - (* compile file *) - Prepare_ocamlcocci.load_file ocaml_script_file; - (* remove file *) - (if not !Common.save_tmp_files - then Prepare_ocamlcocci.clean_file ocaml_script_file); - (* Print the list of registered functions *) - Prepare_ocamlcocci.test ()); + None -> () + | Some ocaml_script_file -> + (* compile file *) + Prepare_ocamlcocci.load_file ocaml_script_file; + (* remove file *) + (if not !Common.save_tmp_files + then Prepare_ocamlcocci.clean_file ocaml_script_file); + (* Print the list of registered functions *) + Prepare_ocamlcocci.test ()); Printf.printf "grep tokens\n"; (match grep_tokens with None -> pr "No query" diff --git a/tests/undef.c b/tests/undef.c new file mode 100644 index 0000000..ed1eea6 --- /dev/null +++ b/tests/undef.c @@ -0,0 +1,17 @@ +#define foo 12 +#undef foo + +#define foo 12 +int main () { +#undef foo + return; +} + +int main () { +#define foo 12 + return; +} +#undef foo + + + diff --git a/tests/undef.cocci b/tests/undef.cocci new file mode 100644 index 0000000..9451c14 --- /dev/null +++ b/tests/undef.cocci @@ -0,0 +1,5 @@ +@@ +identifier x; +@@ + +- #undef x diff --git a/tests/undef1.c b/tests/undef1.c new file mode 100644 index 0000000..f270f58 --- /dev/null +++ b/tests/undef1.c @@ -0,0 +1,4 @@ +#define foo 12 +#define foo 12 +#undef foo +#undef foo diff --git a/tests/undef1.cocci b/tests/undef1.cocci new file mode 100644 index 0000000..9451c14 --- /dev/null +++ b/tests/undef1.cocci @@ -0,0 +1,5 @@ +@@ +identifier x; +@@ + +- #undef x diff --git a/tests/undef2.c b/tests/undef2.c new file mode 100644 index 0000000..f6d3ac3 --- /dev/null +++ b/tests/undef2.c @@ -0,0 +1,2 @@ +#define foo 12 +#undef foo diff --git a/tests/undef2.cocci b/tests/undef2.cocci new file mode 100644 index 0000000..aae9a18 --- /dev/null +++ b/tests/undef2.cocci @@ -0,0 +1,4 @@ +@@ +@@ + +- #define foo 12 -- 2.20.1